ripasso-cursive: cosmetic changes (#361736)
[NixPkgs.git] / pkgs / by-name / po / portfolio-filemanager / package.nix
blob6b19d9564f6822c25618b95b5b1fed0c4a3dc5c9
1 { lib
2 , python3
3 , fetchFromGitHub
4 , appstream-glib
5 , desktop-file-utils
6 , gettext
7 , gobject-introspection
8 , gtk3
9 , gtk4
10 , libadwaita
11 , meson
12 , ninja
13 , pkg-config
14 , wrapGAppsHook4
15 , nix-update-script
18 python3.pkgs.buildPythonApplication rec {
19   pname = "portfolio";
20   version = "1.0.1";
22   format = "other";
24   src = fetchFromGitHub {
25     owner = "tchx84";
26     repo = "Portfolio";
27     rev = "v${version}";
28     hash = "sha256-IbzAkHlD6duXkPJRSyD9HJ/JHP8+IR7vIGFp2ESbBug=";
29   };
31   postPatch = ''
32     patchShebangs build-aux/meson
33   '';
35   nativeBuildInputs = [
36     appstream-glib
37     desktop-file-utils
38     gettext
39     gobject-introspection
40     gtk3 # For gtk-update-icon-cache
41     meson
42     ninja
43     pkg-config
44     wrapGAppsHook4
45   ];
47   buildInputs = [
48     gtk4
49     libadwaita
50   ];
52   propagatedBuildInputs = with python3.pkgs; [
53     pygobject3
54   ];
56   checkPhase = ''
57     meson test
58   '';
60   postInstall = ''
61     ln -s dev.tchx84.Portfolio "$out/bin/portfolio"
62   '';
64   # Prevent double wrapping
65   dontWrapGApps = true;
66   preFixup = ''
67     makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
68   '';
70   passthru = {
71     updateScript = nix-update-script { };
72   };
74   meta = with lib; {
75     description = "Minimalist file manager for those who want to use Linux mobile devices";
76     homepage = "https://github.com/tchx84/Portfolio";
77     changelog = "https://github.com/tchx84/Portfolio/blob/v${version}/CHANGELOG.md";
78     license = licenses.gpl3Plus;
79     platforms = platforms.linux;
80     mainProgram = "dev.tchx84.Portfolio";
81     maintainers = with maintainers; [ dotlambda chuangzhu ];
82   };