summary refs log tree commit diff
path: root/pkgs/os-specific/linux/module-init-tools/aggregator.nix
diff options
context:
space:
mode:
authorMichael Raskin <7c6f434c@mail.ru>2008-01-04 17:02:12 +0000
committerMichael Raskin <7c6f434c@mail.ru>2008-01-04 17:02:12 +0000
commit498d47b5833ae4748b6274a2e0a710fb59e315eb (patch)
treed06f4fc7d23452ad5521736ef920c9c4ad03c83c /pkgs/os-specific/linux/module-init-tools/aggregator.nix
parent8c615616c7b045abf7a12055f41b75f0af0303d5 (diff)
downloadnixpkgs-498d47b5833ae4748b6274a2e0a710fb59e315eb.tar
nixpkgs-498d47b5833ae4748b6274a2e0a710fb59e315eb.tar.gz
nixpkgs-498d47b5833ae4748b6274a2e0a710fb59e315eb.tar.bz2
nixpkgs-498d47b5833ae4748b6274a2e0a710fb59e315eb.tar.lz
nixpkgs-498d47b5833ae4748b6274a2e0a710fb59e315eb.tar.xz
nixpkgs-498d47b5833ae4748b6274a2e0a710fb59e315eb.tar.zst
nixpkgs-498d47b5833ae4748b6274a2e0a710fb59e315eb.zip
Added module_aggregator. Pass some directories with modules to it, and it will give you a directory to use instead of pkgs.kernel . addSbinPath in builderDefs to use sbin/ in addToEnv . Some catching up in xlaunch.
svn path=/nixpkgs/trunk/; revision=10075
Diffstat (limited to 'pkgs/os-specific/linux/module-init-tools/aggregator.nix')
-rw-r--r--pkgs/os-specific/linux/module-init-tools/aggregator.nix33
1 files changed, 33 insertions, 0 deletions
diff --git a/pkgs/os-specific/linux/module-init-tools/aggregator.nix b/pkgs/os-specific/linux/module-init-tools/aggregator.nix
new file mode 100644
index 00000000000..b0a518cd216
--- /dev/null
+++ b/pkgs/os-specific/linux/module-init-tools/aggregator.nix
@@ -0,0 +1,33 @@
+args : with args;
+	with builderDefs {
+		addSbinPath = true;
+		src = "";
+		buildInputs = [lndir module_init_tools];
+		configureFlags = [];
+	} null; /* null is a terminator for sumArgs */
+let 
+
+doCollect = FullDepEntry (''
+ensureDir $out/
+cd $out/
+for i in $moduleSources; do 
+	lndir $i/
+done
+cd lib/modules/
+rm */modules.*
+MODULE_DIR=$PWD/ depmod -a 
+'') [minInit addInputs defEnsureDir];
+in
+stdenv.mkDerivation rec {
+	name = "module-aggregator";
+	inherit moduleSources;
+	builder = writeScript (name + "-builder")
+		(textClosure [doCollect doForceShare doPropagate]);
+	meta = {
+		description = "
+		A directory to hold all  the modules, including those 
+		built separately from kernel. Earlier directories in 
+		moduleSources have higher priority.
+";
+	};
+}