From 4624c8bc3f5b3aba4cdc048b755e11aba75f574c Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Fri, 14 Mar 2008 13:46:47 +0000 Subject: [PATCH] * klibShrunk: just the klibc binaries without header files etc; useful for installation in initrds. svn path=/nixpkgs/trunk/; revision=11125 --- pkgs/os-specific/linux/klibc/shrunk.nix | 20 ++++++++++++++++++++ pkgs/top-level/all-packages.nix | 6 +++++- 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 pkgs/os-specific/linux/klibc/shrunk.nix diff --git a/pkgs/os-specific/linux/klibc/shrunk.nix b/pkgs/os-specific/linux/klibc/shrunk.nix new file mode 100644 index 00000000000..828e4691623 --- /dev/null +++ b/pkgs/os-specific/linux/klibc/shrunk.nix @@ -0,0 +1,20 @@ +{stdenv, klibc}: + +stdenv.mkDerivation { + name = "${klibc.name}"; + buildCommand = '' + ensureDir $out/lib + cp -prd ${klibc}/lib/klibc/bin $out/ + cp -p ${klibc}/lib/*.so $out/lib/ + chmod +w $out/* + old=$(echo ${klibc}/lib/klibc-*.so) + new=$(echo $out/lib/klibc-*.so) + for i in $out/bin/*; do + echo $i + sed "s^$old^$new^" -i $i + # !!! use patchelf + #patchelf --set-rpath /foo/bar $i + done + ''; # */ + allowedReferences = ["out"]; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index f3c63624c01..c20225bbee1 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4165,7 +4165,11 @@ rec { klibc = import ../os-specific/linux/klibc { inherit fetchurl stdenv perl bison mktemp; - kernel = systemKernel; + kernel = systemKernel; + }; + + klibcShrunk = import ../os-specific/linux/klibc/shrunk.nix { + inherit stdenv klibc; }; kvm = kvm57;