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