{ lib, stdenv, fetchFromGitHub, cargo-tauri, jq, libsoup_3, moreutils, nodejs, openssl, pkg-config, pnpm_9, fetchPnpmDeps, pnpmConfigHook, rustPlatform, webkitgtk_4_1, wrapGAppsHook3, nix-update-script, }: stdenv.mkDerivation (finalAttrs: { pname = "wealthfolio"; version = "2.1.0"; src = fetchFromGitHub { owner = "afadil"; repo = "wealthfolio"; rev = "v${finalAttrs.version}"; hash = "sha256-pLiSidcuRTcykHDgW2pw+h0t/42g6u3LlioSEDA0lIo="; }; pnpmDeps = fetchPnpmDeps { inherit (finalAttrs) src pname version; pnpm = pnpm_9; fetcherVersion = 1; hash = "sha256-TcoyNIVb/aDgXIsNDvzTMfsewmefU9ck+uSHv/tbH/k="; }; cargoRoot = "src-tauri"; buildAndTestSubdir = finalAttrs.cargoRoot; cargoDeps = rustPlatform.fetchCargoVendor { inherit (finalAttrs) pname version src cargoRoot ; hash = "sha256-R6lU4BPFlFxQqxmP5EWQsYwe1QGIlKVhp/iNiD9pKQo="; }; nativeBuildInputs = [ cargo-tauri.hook jq moreutils nodejs pkg-config pnpmConfigHook pnpm_9 rustPlatform.cargoSetupHook wrapGAppsHook3 ]; buildInputs = [ libsoup_3 openssl webkitgtk_4_1 ]; postPatch = '' jq \ '.plugins.updater.endpoints = [ ] | .bundle.createUpdaterArtifacts = false' \ src-tauri/tauri.conf.json \ | sponge src-tauri/tauri.conf.json ''; passthru.updateScript = nix-update-script { }; meta = { description = "Beautiful Private and Secure Desktop Investment Tracking Application"; homepage = "https://wealthfolio.app/"; license = lib.licenses.agpl3Only; mainProgram = "wealthfolio"; maintainers = with lib.maintainers; [ kilianar ]; platforms = lib.platforms.linux; }; })