btrbk: add mainProgram (#356350)
[NixPkgs.git] / pkgs / by-name / we / wealthfolio / package.nix
bloba218e528506431f563aee4e8e5b92d3bc820a82a
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   cargo-tauri_1,
6   libsoup,
7   nodejs,
8   openssl,
9   pkg-config,
10   pnpm,
11   rustPlatform,
12   webkitgtk_4_0,
13   wrapGAppsHook3,
16 stdenv.mkDerivation (finalAttrs: {
17   pname = "wealthfolio";
18   version = "1.0.18";
20   src = fetchFromGitHub {
21     owner = "afadil";
22     repo = "wealthfolio";
23     rev = "v${finalAttrs.version}";
24     hash = "sha256-AH0bwzsnGaGE82Ds1pDeZkVY2GXEB7RqHYw+WAt69/4=";
25   };
27   pnpmDeps = pnpm.fetchDeps {
28     inherit (finalAttrs) src pname version;
29     hash = "sha256-OpQg/ZZ4M2vszMZeCJAKzqGduxexZfIVe3Jy/hG3Yu0=";
30   };
32   cargoRoot = "src-tauri";
33   buildAndTestSubdir = finalAttrs.cargoRoot;
35   cargoDeps = rustPlatform.fetchCargoTarball {
36     inherit (finalAttrs) pname version src;
37     sourceRoot = "${finalAttrs.src.name}/${finalAttrs.cargoRoot}";
38     hash = "sha256-jbdshb+Kjnh/yKQlCVaYT3/RQ6Zyo2dm72EToLsbqxc=";
39   };
41   nativeBuildInputs = [
42     cargo-tauri_1.hook
43     nodejs
44     pkg-config
45     pnpm.configHook
46     rustPlatform.cargoSetupHook
47     wrapGAppsHook3
48   ];
50   buildInputs = [
51     libsoup
52     openssl
53     webkitgtk_4_0
54   ];
56   meta = {
57     description = "A Beautiful Private and Secure Desktop Investment Tracking Application";
58     homepage = "https://wealthfolio.app/";
59     license = lib.licenses.agpl3Only;
60     mainProgram = "wealthfolio";
61     maintainers = with lib.maintainers; [ kilianar ];
62     platforms = lib.platforms.linux;
63   };