python312Packages.types-aiobotocore: 2.15.2 -> 2.15.2.post3 (#361801)
[NixPkgs.git] / pkgs / by-name / ra / ratpoison / package.nix
blob6a2f63159f652913ae8f72cb4b0d98726c7625fe
1 { lib
2 , stdenv
3 , fetchurl
4 , autoreconfHook
5 , fontconfig
6 , freetype
7 , libX11
8 , libXft
9 , libXi
10 , libXpm
11 , libXrandr
12 , libXt
13 , libXtst
14 , perl
15 , pkg-config
16 , readline
17 , texinfo
18 , xorgproto
21 stdenv.mkDerivation (finalAttrs: {
22   pname = "ratpoison";
23   version = "1.4.9";
25   src = fetchurl {
26     url = "mirror://savannah/ratpoison/ratpoison-${finalAttrs.version}.tar.xz";
27     hash = "sha256-2Y+kvgJezKRTxAf/MRqzlJ8p8g1tir7fjwcWuF/I0fE=";
28   };
30   nativeBuildInputs = [
31     autoreconfHook
32     pkg-config
33     texinfo
34   ];
36   buildInputs = [
37     fontconfig
38     freetype
39     libX11
40     libXft
41     libXi
42     libXpm
43     libXrandr
44     libXt
45     libXtst
46     perl
47     readline
48     xorgproto
49   ];
51   outputs = [ "out" "contrib" "man" "doc" "info" ];
53   strictDeps = true;
55   configureFlags = [
56     # >=1.4.9 requires this even with readline in inputs
57     "--enable-history"
58   ];
60   postInstall = ''
61     mkdir -p $contrib/{bin,share}
62     mv $out/bin/rpws $contrib/bin
63     mv $out/share/ratpoison $contrib/share
64   '';
66   meta = {
67     homepage = "https://www.nongnu.org/ratpoison/";
68     description = "Simple mouse-free tiling window manager";
69     longDescription = ''
70        Ratpoison is a simple window manager with no fat library
71        dependencies, no fancy graphics, no window decorations, and no
72        rodent dependence.  It is largely modelled after GNU Screen which
73        has done wonders in the virtual terminal market.
75        The screen can be split into non-overlapping frames.  All windows
76        are kept maximized inside their frames to take full advantage of
77        your precious screen real estate.
79        All interaction with the window manager is done through keystrokes.
80        Ratpoison has a prefix map to minimize the key clobbering that
81        cripples Emacs and other quality pieces of software.
82     '';
83     license = lib.licenses.gpl2Plus;
84     mainProgram = "ratpoison";
85     maintainers = with lib.maintainers; [ AndersonTorres ];
86     inherit (libX11.meta) platforms;
87   };