2008-08-09 21:21:33 +01:00
|
|
|
args :
|
|
|
|
let
|
|
|
|
lib = args.lib;
|
|
|
|
fetchurl = args.fetchurl;
|
|
|
|
noDepEntry = args.noDepEntry;
|
2009-05-20 00:25:58 +01:00
|
|
|
fullDepEntry = args.fullDepEntry;
|
2008-08-09 21:21:33 +01:00
|
|
|
|
|
|
|
buildInputs = lib.attrVals ["clisp" "texinfo"] args;
|
2010-08-23 20:31:28 +01:00
|
|
|
version = lib.attrByPath ["version"] "0.9.7" args;
|
2008-08-09 21:21:33 +01:00
|
|
|
|
|
|
|
pkgName = "stumpwm";
|
|
|
|
in
|
|
|
|
rec {
|
|
|
|
src = fetchurl {
|
2013-07-14 03:23:06 +01:00
|
|
|
url = "mirror://savannah/stumpwm/${pkgName}-${version}.tgz";
|
2010-08-23 20:31:28 +01:00
|
|
|
sha256 = "a0793d22ef90731d34f84e51deafb4bc2095a357c70b9505dc57516f481cdf78";
|
2008-08-09 21:21:33 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
inherit buildInputs;
|
|
|
|
configureFlags = ["--with-lisp=clisp"];
|
|
|
|
envVars = noDepEntry (''
|
|
|
|
export HOME="$NIX_BUILD_TOP";
|
|
|
|
'');
|
|
|
|
|
2009-05-20 00:25:58 +01:00
|
|
|
installation = fullDepEntry (''
|
2012-01-18 20:16:00 +00:00
|
|
|
mkdir -p $out/bin
|
|
|
|
mkdir -p $out/share/stumpwm/doc
|
|
|
|
mkdir -p $out/share/info
|
|
|
|
mkdir -p $out/share/stumpwm/lisp
|
2008-08-09 21:21:33 +01:00
|
|
|
|
|
|
|
cp stumpwm $out/bin
|
2008-08-25 18:55:09 +01:00
|
|
|
cp contrib/stumpish $out/bin || true
|
2008-08-09 21:21:33 +01:00
|
|
|
cp sample-stumpwmrc.lisp $out/share/stumpwm/doc
|
|
|
|
cp stumpwm.info $out/share/info
|
2008-08-09 23:10:46 +01:00
|
|
|
|
|
|
|
cp -r {.,cl-ppcre}/*.{lisp,fas,lib,asd} contrib $out/share/stumpwm/lisp
|
|
|
|
cd $out/share/stumpwm/lisp
|
|
|
|
cat << EOF >init-stumpwm.lisp
|
|
|
|
(require "asdf")
|
|
|
|
(asdf:operate 'asdf:load-op :cl-ppcre)
|
|
|
|
(asdf:operate 'asdf:load-op :stumpwm)
|
|
|
|
EOF
|
|
|
|
clisp -K full -i init-stumpwm.lisp
|
|
|
|
cat << EOF >init-stumpwm.lisp
|
|
|
|
(require "asdf")
|
|
|
|
(asdf:operate 'asdf:load-source-op :cl-ppcre)
|
|
|
|
(asdf:operate 'asdf:load-source-op :stumpwm)
|
|
|
|
EOF
|
|
|
|
'') ["minInit" "defEnsureDir" "addInputs" "doMake"];
|
2008-08-09 21:21:33 +01:00
|
|
|
|
|
|
|
/* doConfigure should be specified separately */
|
|
|
|
phaseNames = ["envVars" "doConfigure" "doMake" "installation"];
|
|
|
|
|
|
|
|
name = "${pkgName}-" + version;
|
|
|
|
meta = {
|
2013-10-06 10:49:53 +01:00
|
|
|
description = "Common Lisp-based ratpoison-like window manager";
|
2009-07-07 16:05:15 +01:00
|
|
|
maintainers = [args.lib.maintainers.raskin];
|
2009-09-17 06:21:49 +01:00
|
|
|
platforms = with args.lib.platforms;
|
|
|
|
linux ++ freebsd;
|
2008-08-09 21:21:33 +01:00
|
|
|
};
|
|
|
|
}
|