biome: 1.9.2 -> 1.9.3
[NixPkgs.git] / pkgs / by-name / sa / sawfish / package.nix
blobc5bd29d2589fefa15344f80022f0870d323632f6
1 { lib
2 , stdenv
3 , fetchurl
4 , autoreconfHook
5 , gdk-pixbuf-xlib
6 , gettext
7 , gtk2-x11
8 , libICE
9 , libSM
10 , libxcrypt
11 , libXinerama
12 , libXrandr
13 , libXtst
14 , librep
15 , makeWrapper
16 , pango
17 , pkg-config
18 , rep-gtk
19 , texinfo
20 , which
23 stdenv.mkDerivation (finalAttrs: {
24   pname = "sawfish";
25   version = "1.13.0";
27   src = fetchurl {
28     url = "https://download.tuxfamily.org/sawfish/sawfish_${finalAttrs.version}.tar.xz";
29     hash = "sha256-gWs8W/pMtQjbH8FEifzNAj3siZzxPd6xm8PmXXhyr10=";
30   };
32   nativeBuildInputs = [
33     autoreconfHook
34     gettext
35     librep
36     makeWrapper
37     pkg-config
38     texinfo
39     which
40   ];
42   buildInputs = [
43     gdk-pixbuf-xlib
44     gtk2-x11
45     libICE
46     libSM
47     libxcrypt
48     libXinerama
49     libXrandr
50     libXtst
51     librep
52     pango
53     rep-gtk
54   ];
56   postPatch = ''
57     sed -e 's|REP_DL_LOAD_PATH=|REP_DL_LOAD_PATH=$(REP_DL_LOAD_PATH):|g' -i Makedefs.in
58     sed -e 's|$(repexecdir)|$(libdir)/rep|g' -i src/Makefile.in
59   '';
61   strictDeps = true;
63   postInstall = ''
64     for file in $out/lib/sawfish/sawfish-menu \
65              $out/bin/sawfish-about \
66              $out/bin/sawfish-client \
67              $out/bin/sawfish-config \
68              $out/bin/sawfish; do
69       wrapProgram $file \
70         --prefix REP_DL_LOAD_PATH : "$out/lib/rep" \
71         --set REP_LOAD_PATH "$out/share/sawfish/lisp"
72     done
73   '';
75   meta = {
76     homepage = "http://sawfish.tuxfamily.org/";
77     description = "Extensible, Lisp-based window manager";
78     longDescription = ''
79       Sawfish is an extensible window manager using a Lisp-based scripting
80       language. Its policy is very minimal compared to most window managers. Its
81       aim is simply to manage windows in the most flexible and attractive manner
82       possible. All high-level WM functions are implemented in Lisp for future
83       extensibility or redefinition.
84     '';
85     license = lib.licenses.gpl2Plus;
86     maintainers = with lib.maintainers; [ AndersonTorres ];
87     platforms = lib.platforms.unix;
88   };