112 lines
2 KiB
Nix
112 lines
2 KiB
Nix
|
{ lib
|
||
|
, stdenv
|
||
|
, fetchFromGitHub
|
||
|
, perlPackages
|
||
|
, wrapGAppsHook3
|
||
|
, imagemagick
|
||
|
, gdk-pixbuf
|
||
|
, librsvg
|
||
|
, hicolor-icon-theme
|
||
|
, procps
|
||
|
, libwnck
|
||
|
, libappindicator-gtk3
|
||
|
, xdg-utils
|
||
|
}:
|
||
|
|
||
|
let
|
||
|
perlModules = with perlPackages; [
|
||
|
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 rec {
|
||
|
pname = "shutter";
|
||
|
version = "0.99.2";
|
||
|
|
||
|
src = fetchFromGitHub {
|
||
|
owner = "shutter-project";
|
||
|
repo = "shutter";
|
||
|
rev = "v${version}";
|
||
|
sha256 = "sha256-o95skSr6rszh0wsHQTpu1GjqCDmde7aygIP+i4XQW9A=";
|
||
|
};
|
||
|
|
||
|
nativeBuildInputs = [ wrapGAppsHook3 ];
|
||
|
buildInputs = [
|
||
|
perlPackages.perl
|
||
|
procps
|
||
|
gdk-pixbuf
|
||
|
librsvg
|
||
|
libwnck
|
||
|
libappindicator-gtk3
|
||
|
hicolor-icon-theme
|
||
|
] ++ perlModules;
|
||
|
|
||
|
makeFlags = [
|
||
|
"prefix=${placeholder "out"}"
|
||
|
];
|
||
|
|
||
|
postPatch = ''
|
||
|
patchShebangs po2mo.sh
|
||
|
'';
|
||
|
|
||
|
preFixup = ''
|
||
|
# make xdg-open overrideable at runtime
|
||
|
gappsWrapperArgs+=(
|
||
|
--set PERL5LIB ${perlPackages.makePerlPath perlModules} \
|
||
|
--prefix PATH : ${lib.makeBinPath [ imagemagick ] }
|
||
|
--suffix PATH : ${lib.makeBinPath [ xdg-utils ] }
|
||
|
)
|
||
|
'';
|
||
|
|
||
|
meta = with lib; {
|
||
|
description = "Screenshot and annotation tool";
|
||
|
mainProgram = "shutter";
|
||
|
homepage = "https://shutter-project.org/";
|
||
|
license = licenses.gpl3Plus;
|
||
|
platforms = platforms.all;
|
||
|
maintainers = [ maintainers.bjornfor ];
|
||
|
};
|
||
|
}
|