diff options
author | Armijn Hemel <armijn@gpl-violations.org> | 2006-01-16 17:12:42 +0000 |
---|---|---|
committer | Armijn Hemel <armijn@gpl-violations.org> | 2006-01-16 17:12:42 +0000 |
commit | 488dc364284084f138d00eeb5dca462aa6bda2e9 (patch) | |
tree | c066cc3f273614840f22c61550676e321a43babb | |
parent | 43a679bab72a9fa7d4e591b457e4828a034c2f6f (diff) | |
download | nixpkgs-488dc364284084f138d00eeb5dca462aa6bda2e9.tar nixpkgs-488dc364284084f138d00eeb5dca462aa6bda2e9.tar.gz nixpkgs-488dc364284084f138d00eeb5dca462aa6bda2e9.tar.bz2 nixpkgs-488dc364284084f138d00eeb5dca462aa6bda2e9.tar.lz nixpkgs-488dc364284084f138d00eeb5dca462aa6bda2e9.tar.xz nixpkgs-488dc364284084f138d00eeb5dca462aa6bda2e9.tar.zst nixpkgs-488dc364284084f138d00eeb5dca462aa6bda2e9.zip |
move kernelscripts to nixpkgs
svn path=/nixpkgs/trunk/; revision=4564
-rwxr-xr-x | pkgs/os-specific/linux/kernelscripts/builder.sh | 15 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernelscripts/default.nix | 9 | ||||
-rw-r--r-- | pkgs/os-specific/linux/kernelscripts/kernel.nix | 6 | ||||
-rwxr-xr-x | pkgs/os-specific/linux/kernelscripts/make-kernel.sh | 49 |
4 files changed, 79 insertions, 0 deletions
diff --git a/pkgs/os-specific/linux/kernelscripts/builder.sh b/pkgs/os-specific/linux/kernelscripts/builder.sh new file mode 100755 index 00000000000..54106d65b85 --- /dev/null +++ b/pkgs/os-specific/linux/kernelscripts/builder.sh @@ -0,0 +1,15 @@ +#! /bin/sh -e + +. $stdenv/setup + +mkdir $out +mkdir $out/bin + +for i in $createModules; do + dst=$out/bin/$(basename $i | cut -c34-) + sed \ + -e "s^@coreutils\@^$coreutils^g" \ + -e "s^@nix\@^$nix^g" \ + < $i > $dst + chmod +x $dst +done diff --git a/pkgs/os-specific/linux/kernelscripts/default.nix b/pkgs/os-specific/linux/kernelscripts/default.nix new file mode 100644 index 00000000000..69d9f4e56de --- /dev/null +++ b/pkgs/os-specific/linux/kernelscripts/default.nix @@ -0,0 +1,9 @@ +{ stdenv, coreutils, nix}: + +derivation { + name = "kernelscripts"; + system = stdenv.system; + builder = ./builder.sh; + createModules = ./create-modules.sh; + inherit stdenv coreutils nix; +} diff --git a/pkgs/os-specific/linux/kernelscripts/kernel.nix b/pkgs/os-specific/linux/kernelscripts/kernel.nix new file mode 100644 index 00000000000..3a799a5ea4d --- /dev/null +++ b/pkgs/os-specific/linux/kernelscripts/kernel.nix @@ -0,0 +1,6 @@ +rec { + inherit (import /nixpkgs/trunk/pkgs/system/i686-linux.nix) + stdenv kernel ov511; + + everything = [kernel ov511]; +} diff --git a/pkgs/os-specific/linux/kernelscripts/make-kernel.sh b/pkgs/os-specific/linux/kernelscripts/make-kernel.sh new file mode 100755 index 00000000000..14f006a0553 --- /dev/null +++ b/pkgs/os-specific/linux/kernelscripts/make-kernel.sh @@ -0,0 +1,49 @@ +#! /bin/sh -e + +archivesDir=$(mktemp -d) +manifest=${archivesDir}/MANIFEST +nixpkgs=/nixpkgs/trunk/pkgs +fill_disk=$archivesDir/scripts/fill-disk.sh +ramdisk_login=$archivesDir/scripts/ramdisk-login.sh +storePaths=$archivesDir/mystorepaths +validatePaths=$archivesDir/validatepaths +bootiso=/tmp/nixos.iso +initrd=/tmp/initram.img +initdir=${archivesDir}/initdir +initscript=$archivesDir/scripts/init.sh + +NIX_CMD_PATH=$(dirname $(which nix-store)) +cpwd=`pwd` + +storeExpr=$($NIX_CMD_PATH/nix-store -qR $($NIX_CMD_PATH/nix-store -r $(echo '(import ./kernel.nix).everything' | $NIX_CMD_PATH/nix-instantiate -))) + +kernel=$($NIX_CMD_PATH/nix-store -r $(echo '(import ./kernel.nix).kernel' | $NIX_CMD_PATH/nix-instantiate -)) + +ov511=$($NIX_CMD_PATH/nix-store -r $(echo '(import ./kernel.nix).ov511' | $NIX_CMD_PATH/nix-instantiate -)) + +echo $kernel +echo $ov511 + +echo making kernel stuff + +kernelVersion=$(cd $kernel/lib/modules/; ls -d *) +mkdir -p $archivesDir/lib/modules/$kernelVersion + +echo $kernelVersion + +cd $kernel + +# make directories + +find . -not -path "./lib/modules/$kernelVersion/build*" -type d | xargs -n 1 -i% mkdir -p $archivesDir/% + +# link all files +find . -not -path "./lib/modules/$kernelVersion/build*" -type f | xargs -n 1 -i% ln -s $kernel/% $archivesDir/% + +# make directories + +cd $ov511 +find . -not -path "./lib/modules/$kernelVersion/build*" -type d | xargs -n 1 -i% mkdir -p $archivesDir/% + +# link all files +find . -not -path "./lib/modules/$kernelVersion/build*" -type f | xargs -n 1 -i% ln -s $ov511/% $archivesDir/% |