From 1452c1facc9bfc9d0e49b54f8e0108e8e52c10be Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Sun, 2 Mar 2008 14:56:15 +0000 Subject: [PATCH] Added helper for adding Debian packages svn path=/nixpkgs/trunk/; revision=10906 --- pkgs/build-support/deb-package/default.nix | 38 ++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 pkgs/build-support/deb-package/default.nix diff --git a/pkgs/build-support/deb-package/default.nix b/pkgs/build-support/deb-package/default.nix new file mode 100644 index 00000000000..eb49458a6f3 --- /dev/null +++ b/pkgs/build-support/deb-package/default.nix @@ -0,0 +1,38 @@ +args : with args; + let + localDefs = with (builderDefs {src="";} null); + builderDefs { + inherit src; + buildInputs = []; + configureFlags = []; + makeFlags = []; + patch = null; + meta = {}; + doInstall = if args ? Install then + (FullDepEntry + args.Install + (["doMake"] + ++ (lib.getAttr ["extraInstallDeps"] [] args)) + ) + else FullDepEntry "" ["doMakeInstall"]; + + debPatch = FullDepEntry ((if args ? patch then '' + gunzip < ${args.patch} | patch -Np1 + '' else "") + +'' + sed -e 's/-o root//' -i Makefile Makefile.in Makefile.new || true; + sed -e 's/-g root//' -i Makefile Makefile.in Makefile.new || true; + '' + + (if args ? extraReplacements then + args.extraReplacements + else ""))["minInit" "doUnpack"]; + } args null; /* null is a terminator for sumArgs */ + in with localDefs; +stdenv.mkDerivation rec { + name = localDefs.name + "deb"; + builder = writeScript (name + "-builder") + (textClosure localDefs ([debPatch] ++ + (lib.optional (! (args ? omitConfigure)) "doConfigure") + ++ [doInstall doForceShare])); + inherit meta; +}