about summary refs log tree commit diff
path: root/pkgs/applications/graphics/shutter
diff options
context:
space:
mode:
authorArtturin <Artturin@artturin.com>2021-08-03 19:03:31 +0300
committerArtturin <Artturin@artturin.com>2021-08-04 00:01:00 +0300
commitac72256745ee5d483dc166af7a6a6d4fd18eb2be (patch)
tree5265571f8ca56756f8f6ff069c7b0114d91e49a8 /pkgs/applications/graphics/shutter
parent73a54fec429f655eb2f3817d6c75dd77afbd012b (diff)
shutter: 0.94.3 -> 0.97
Diffstat (limited to 'pkgs/applications/graphics/shutter')
-rw-r--r--pkgs/applications/graphics/shutter/default.nix116
1 files changed, 90 insertions, 26 deletions
diff --git a/pkgs/applications/graphics/shutter/default.nix b/pkgs/applications/graphics/shutter/default.nix
index bbcfcf03900d6..a561b6f0d7ccd 100644
--- a/pkgs/applications/graphics/shutter/default.nix
+++ b/pkgs/applications/graphics/shutter/default.nix
@@ -1,39 +1,103 @@
-{ lib, stdenv, fetchurl, perlPackages, makeWrapper, imagemagick, gdk-pixbuf, librsvg
-, hicolor-icon-theme, procps
+{ lib
+, stdenv
+, fetchFromGitHub
+, perlPackages
+, wrapGAppsHook
+, imagemagick
+, gdk-pixbuf
+, librsvg
+, hicolor-icon-theme
+, procps
+, libwnck
+, libappindicator-gtk3
 }:
 
 let
-  perlModules = with perlPackages;
-    [ Gnome2 Gnome2Canvas Gtk2 Glib Pango Gnome2VFS Gnome2Wnck Gtk2ImageView
-      Gtk2Unique FileBaseDir FileWhich FileCopyRecursive XMLSimple NetDBus XMLTwig
-      XMLParser HTTPMessage ProcSimple SortNaturally LocaleGettext
-      ProcProcessTable URI ImageExifTool Gtk2AppIndicator LWP JSON
-      ImageMagick WWWMechanize HTTPDate HTMLForm HTMLParser HTMLTagset JSONMaybeXS
-      commonsense HTTPCookies NetOAuth PathClass GooCanvas X11Protocol Cairo
-      EncodeLocale TryTiny TypesSerialiser LWPMediaTypes
+  perlModules = with perlPackages; [
+      # Not sure if these are needed
+      # Gnome2 Gnome2Canvas Gnome2VFS Gtk2AppIndicator Gtk2Unique
+      ImageMagick
+      Cairo
+      FileBaseDir
+      FileWhich
+      FileCopyRecursive
+      XMLSimple
+      XMLTwig
+      XMLParser
+      SortNaturally
+      LocaleGettext
+      ProcProcessTable
+      X11Protocol
+      ProcSimple
+      ImageExifTool
+      JSON
+      JSONMaybeXS
+      NetOAuth
+      PathClass
+      LWP
+      LWPProtocolHttps
+      NetDBus
+      TryTiny
+      WWWMechanize
+      HTTPMessage
+      HTTPDate
+      HTMLForm
+      HTMLParser
+      HTMLTagset
+      HTTPCookies
+      EncodeLocale
+      URI
+      CarpAlways
+      GlibObjectIntrospection
+      NumberBytesHuman
+      CairoGObject
+      Readonly
+      Gtk3ImageView
+      Gtk3
+      Glib
+      Pango
+      GooCanvas2
+      GooCanvas2CairoTypes
+      commonsense
+      TypesSerialiser
     ];
 in
-stdenv.mkDerivation {
-  name = "shutter-0.94.3";
+stdenv.mkDerivation rec {
+  pname = "shutter";
+  version = "0.97";
 
-  src = fetchurl {
-    url = "https://launchpad.net/shutter/0.9x/0.94.3/+download/shutter-0.94.3.tar.gz";
-    sha256 = "01wv5k6zqfqa2rss461lpdpjxpfk4awzfdc6j2qk6bh4g4zgmgl5";
+  src = fetchFromGitHub {
+    owner = "shutter-project";
+    repo = "shutter";
+    rev = "v${version}";
+    sha256 = "sha256-/2eQLJJZP0ArQUrxcFdogv/4wy+O021hODkJYLQmLY8=";
   };
 
-  nativeBuildInputs = [ makeWrapper ];
-  buildInputs = [ perlPackages.perl procps gdk-pixbuf librsvg ] ++ perlModules;
+  nativeBuildInputs = [ wrapGAppsHook ];
+  buildInputs = [
+    perlPackages.perl
+    procps
+    gdk-pixbuf
+    librsvg
+    libwnck
+    libappindicator-gtk3
+  ] ++ perlModules;
 
-  installPhase = ''
-    mkdir -p "$out"
-    cp -a . "$out"
-    (cd "$out" && mv CHANGES README COPYING "$out/share/doc/shutter")
+  makeFlags = [
+    "prefix=${placeholder "out"}"
+  ];
 
-    wrapProgram $out/bin/shutter \
-      --set PERL5LIB "${perlPackages.makePerlPath perlModules}" \
-      --prefix PATH : "${imagemagick.out}/bin" \
-      --suffix XDG_DATA_DIRS : "${hicolor-icon-theme}/share" \
-      --set GDK_PIXBUF_MODULE_FILE "$GDK_PIXBUF_MODULE_FILE"
+  postPatch = ''
+    patchShebangs po2mo.sh
+  '';
+
+  preFixup = ''
+    gappsWrapperArgs+=(
+      --set PERL5LIB ${perlPackages.makePerlPath perlModules} \
+      --prefix PATH : ${lib.makeBinPath [ imagemagick ] } \
+      --suffix XDG_DATA_DIRS : ${hicolor-icon-theme}/share \
+      --set GDK_PIXBUF_MODULE_FILE $GDK_PIXBUF_MODULE_FILE
+    )
   '';
 
   meta = with lib; {