Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at devShellTools-shell 91 lines 1.5 kB view raw
1{ 2 lib, 3 python3, 4 fetchFromGitHub, 5 wrapGAppsHook4, 6 appstream-glib, 7 desktop-file-utils, 8 gettext, 9 gtk4, 10 libadwaita, 11 meson, 12 ninja, 13 pkg-config, 14 gobject-introspection, 15 jpegoptim, 16 libwebp, 17 optipng, 18 pngquant, 19 oxipng, 20 nix-update-script, 21}: 22 23python3.pkgs.buildPythonApplication rec { 24 pname = "curtail"; 25 version = "1.13.0"; 26 format = "other"; 27 28 src = fetchFromGitHub { 29 owner = "Huluti"; 30 repo = "Curtail"; 31 tag = version; 32 sha256 = "sha256-JfioWtd0jGTyaD5uELAqH6J+h04MOrfEqdR7GWgXyMw="; 33 }; 34 35 nativeBuildInputs = [ 36 wrapGAppsHook4 37 appstream-glib 38 desktop-file-utils 39 gettext 40 gtk4 41 libadwaita 42 meson 43 ninja 44 pkg-config 45 gobject-introspection 46 ]; 47 48 buildInputs = [ 49 appstream-glib 50 gettext 51 gtk4 52 libadwaita 53 ]; 54 55 propagatedBuildInputs = [ 56 python3.pkgs.pygobject3 57 ]; 58 59 preInstall = '' 60 patchShebangs ../build-aux/meson/postinstall.py 61 ''; 62 63 dontWrapGApps = true; 64 65 preFixup = '' 66 makeWrapperArgs+=( 67 "''${gappsWrapperArgs[@]}" 68 "--prefix" "PATH" ":" "${ 69 lib.makeBinPath [ 70 jpegoptim 71 libwebp 72 optipng 73 pngquant 74 oxipng 75 ] 76 }" 77 ) 78 ''; 79 80 passthru = { 81 updateScript = nix-update-script { }; 82 }; 83 84 meta = with lib; { 85 description = "Simple & useful image compressor"; 86 mainProgram = "curtail"; 87 homepage = "https://github.com/Huluti/Curtail"; 88 license = licenses.gpl3Only; 89 teams = [ lib.teams.gnome-circle ]; 90 }; 91}