aws-lc: 1.39.0 -> 1.42.0 (#369942)
[NixPkgs.git] / pkgs / by-name / sw / swingsane / package.nix
blob7d52e49d5899fd01df604dc711c96fb1692838da
2   lib,
3   stdenv,
4   fetchurl,
5   makeDesktopItem,
6   unzip,
7   jre,
8   runtimeShell,
9 }:
11 stdenv.mkDerivation rec {
12   pname = "swingsane";
13   version = "0.2";
15   src = fetchurl {
16     sha256 = "15pgqgyw46yd2i367ax9940pfyvinyw2m8apmwhrn0ix5nywa7ni";
17     url = "mirror://sourceforge/swingsane/swingsane-${version}-bin.zip";
18   };
20   nativeBuildInputs = [ unzip ];
22   dontConfigure = true;
24   installPhase =
25     let
27       execWrapper = ''
28         #!${runtimeShell}
29         exec ${jre}/bin/java -jar $out/share/java/swingsane/swingsane-${version}.jar "$@"
30       '';
32       desktopItem = makeDesktopItem {
33         name = "swingsane";
34         exec = "swingsane";
35         icon = "swingsane";
36         desktopName = "SwingSane";
37         genericName = "Scan from local or remote SANE servers";
38         comment = meta.description;
39         categories = [ "Office" ];
40       };
42     in
43     ''
44       install -v -m 755    -d $out/share/java/swingsane/
45       install -v -m 644 *.jar $out/share/java/swingsane/
47       echo "${execWrapper}" > swingsane
48       install -v -D -m 755 swingsane $out/bin/swingsane
50       unzip -j swingsane-${version}.jar "com/swingsane/images/*.png"
51       install -v -D -m 644 swingsane_512x512.png $out/share/pixmaps/swingsane.png
53       cp -v -r ${desktopItem}/share/applications $out/share
54     '';
56   meta = with lib; {
57     description = "Java GUI for SANE scanner servers (saned)";
58     longDescription = ''
59       SwingSane is a powerful, cross platform, open source Java front-end for
60       using both local and remote Scanner Access Now Easy (SANE) servers.
61       The most powerful feature is its ability to query back-ends for scanner
62       specific options which can be set by the user as a scanner profile.
63       It also has support for authentication, mutlicast DNS discovery,
64       simultaneous scan jobs, image transformation jobs (deskew, binarize,
65       crop, etc), PDF and PNG output.
66     '';
67     homepage = "http://swingsane.com/";
68     sourceProvenance = with sourceTypes; [ binaryBytecode ];
69     license = licenses.asl20;
70     platforms = platforms.all;
71     mainProgram = "swingsane";
72   };