pulsar: 1.124.0 -> 1.125.0 (#376475)
[NixPkgs.git] / pkgs / by-name / st / styluslabs-write-bin / package.nix
blob3e5f19a5f05bf5ebde572e8ebcc76b0d223f9295
2   stdenv,
3   lib,
4   libsForQt5,
5   libglvnd,
6   libX11,
7   libXi,
8   fetchurl,
9   makeDesktopItem,
11 let
12   desktopItem = makeDesktopItem {
13     name = "Write";
14     exec = "Write";
15     comment = "A word processor for handwriting";
16     icon = "write_stylus";
17     desktopName = "Write";
18     genericName = "Write";
19     categories = [
20       "Office"
21       "Graphics"
22     ];
23   };
25 stdenv.mkDerivation rec {
26   pname = "styluslabs-write-bin";
27   version = "300";
29   src = fetchurl {
30     url = "http://www.styluslabs.com/write/write${version}.tar.gz";
31     sha256 = "0h1wf3af7jzp3f3l8mlnshi83d7a4v4y8nfqfai4lmskyicqlz7c";
32   };
34   sourceRoot = ".";
36   dontBuild = true;
38   installPhase = ''
39     mkdir -p $out/bin
40     cp -R Write $out/
41     # symlink the binary to bin/
42     ln -s $out/Write/Write $out/bin/Write
44     # Create desktop item
45     mkdir -p $out/share/applications
46     ln -s ${desktopItem}/share/applications/* $out/share/applications/
47     mkdir -p $out/share/icons
48     ln -s $out/Write/Write144x144.png $out/share/icons/write_stylus.png
49   '';
50   preFixup =
51     let
52       libPath = lib.makeLibraryPath [
53         libsForQt5.qtbase # libQt5PrintSupport.so.5
54         libsForQt5.qtsvg # libQt5Svg.so.5
55         (lib.getLib stdenv.cc.cc) # libstdc++.so.6
56         libglvnd # libGL.so.1
57         libX11 # libX11.so.6
58         libXi # libXi.so.6
59       ];
60     in
61     ''
62       patchelf \
63         --set-interpreter "$(cat $NIX_CC/nix-support/dynamic-linker)" \
64         --set-rpath "${libPath}" \
65         $out/Write/Write
66     '';
68   meta = with lib; {
69     homepage = "http://www.styluslabs.com/";
70     description = "Write is a word processor for handwriting";
71     sourceProvenance = with sourceTypes; [ binaryNativeCode ];
72     platforms = platforms.linux;
73     license = lib.licenses.unfree;
74     maintainers = with maintainers; [
75       oyren
76       lukts30
77       atemu
78     ];
79   };