Ratpoison: updated for 1.4.8

Also, adding the infamous service file

Closes #4192

Changed files
+43 -21
nixos
modules
services
x11
window-managers
pkgs
applications
window-managers
ratpoison
+28
nixos/modules/services/x11/window-managers/ratpoison.nix
···
+
{ config, lib, pkgs, ... }:
+
+
with lib;
+
+
let
+
cfg = config.services.xserver.windowManager.ratpoison;
+
in
+
{
+
###### interface
+
options = {
+
services.xserver.windowManager.ratpoison.enable = mkOption {
+
default = false;
+
description = "Enable the Ratpoison window manager.";
+
};
+
};
+
+
###### implementation
+
config = mkIf cfg.enable {
+
services.xserver.windowManager.session = singleton {
+
name = "ratpoison";
+
start = ''
+
${pkgs.ratpoison}/bin/ratpoison &
+
waitPID=$!
+
'';
+
};
+
environment.systemPackages = [ pkgs.ratpoison ];
+
};
+
}
+15 -21
pkgs/applications/window-managers/ratpoison/default.nix
···
-
{ stdenv, fetchurl, libX11, inputproto, libXt, libXpm, libXft, fontconfig, freetype
-
, libXtst, xextproto, readline, libXi, pkgconfig, perl, autoconf, automake }:
+
{ stdenv, fetchurl, pkgconfig, perl, autoconf, automake
+
, libX11, inputproto, libXt, libXpm, libXft, libXtst, xextproto, libXi
+
, fontconfig, freetype, readline
+
}:
stdenv.mkDerivation rec {
-
name = "ratpoison-1.4.6";
+
name = "ratpoison-${version}";
+
version = "1.4.8";
src = fetchurl {
-
url = "mirror://savannah/ratpoison/${name}.tar.gz";
-
sha256 = "1y1b38bng0naxfy50asshzg5xr1b2rn88mcgbds42y72d7y9d0za";
+
url = "mirror://savannah/ratpoison/${name}.tar.xz";
+
sha256 = "1w502z55vv7zs45l80nsllqh9fvfwjfdfi11xy1qikhzdmirains";
};
buildInputs =
-
[ libX11 inputproto libXt libXpm libXft fontconfig freetype libXtst
-
xextproto readline libXi pkgconfig perl autoconf automake
-
];
-
-
NIX_CFLAGS_COMPILE = "-I${freetype}/include/freetype2"; # urgh
-
-
preConfigure = "autoreconf -vf"; # needed because of the patch above
-
-
postInstall = ''
-
mkdir -p $out/share/emacs/site-lisp
-
mv "$out/share/ratpoison/"*.el $out/share/emacs/site-lisp/
-
'';
+
[ pkgconfig perl autoconf automake
+
libX11 inputproto libXt libXpm libXft libXtst xextproto libXi
+
fontconfig freetype readline ];
-
meta = {
+
meta = with stdenv.lib; {
homepage = "http://www.nongnu.org/ratpoison/";
description = "Simple mouse-free tiling window manager";
-
license = stdenv.lib.licenses.gpl2Plus;
+
license = licenses.gpl2Plus;
longDescription = ''
Ratpoison is a simple window manager with no fat library
···
cripples Emacs and other quality pieces of software.
'';
-
hydraPlatforms = stdenv.lib.platforms.linux;
-
maintainers = [ ];
+
platforms = platforms.linux;
+
maintainers = [ maintainers.AndersonTorres ];
};
}