various improvements + stubs for later work, definitely not production ready
svn path=/nixu/trunk/; revision=3473
This commit is contained in:
parent
d623c357b5
commit
8f7215a779
38
fill-disk.sh
38
fill-disk.sh
@ -5,10 +5,10 @@ bootPath=@bootPath@
|
|||||||
|
|
||||||
if ! test -n "$1"
|
if ! test -n "$1"
|
||||||
then
|
then
|
||||||
echo "need URL for manifest!"
|
echo "need harddisk device for installing!"
|
||||||
exit
|
exit
|
||||||
else
|
else
|
||||||
manifest=$1
|
device=$1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
make_dir() {
|
make_dir() {
|
||||||
@ -27,6 +27,17 @@ touch_file() {
|
|||||||
}
|
}
|
||||||
root=/tmp/mnt
|
root=/tmp/mnt
|
||||||
|
|
||||||
|
mkdir -p /tmp/mnt
|
||||||
|
|
||||||
|
mount $device /tmp/mnt
|
||||||
|
|
||||||
|
mkdir -p /nix
|
||||||
|
mkdir -p /nixpkgs/trunk/pkgs
|
||||||
|
|
||||||
|
# temporary hack
|
||||||
|
mount --bind /mnt/cdrom1/nix /nix
|
||||||
|
mount --bind /mnt/cdrom1/pkgs /nixpkgs/trunk/pkgs
|
||||||
|
|
||||||
make_dir 00755 /bin
|
make_dir 00755 /bin
|
||||||
make_dir 00755 /dev
|
make_dir 00755 /dev
|
||||||
make_dir 00755 /proc
|
make_dir 00755 /proc
|
||||||
@ -77,8 +88,8 @@ cp -fa ../pkgs $root/nixpkgs/trunk
|
|||||||
make_dir 0755 /tmp/scripts
|
make_dir 0755 /tmp/scripts
|
||||||
cp -fa ../scripts $root/tmp
|
cp -fa ../scripts $root/tmp
|
||||||
|
|
||||||
echo adding manifest
|
#echo adding manifest
|
||||||
$NIX_CMD_PATH/nix-pull $manifest
|
#$NIX_CMD_PATH/nix-pull $manifest
|
||||||
|
|
||||||
echo adding packages
|
echo adding packages
|
||||||
export NIX_ROOT=$root
|
export NIX_ROOT=$root
|
||||||
@ -87,8 +98,21 @@ unset NIX_LOG_DIR
|
|||||||
unset NIX_STATE_DIR
|
unset NIX_STATE_DIR
|
||||||
unset NIX_CONF_DIR
|
unset NIX_CONF_DIR
|
||||||
|
|
||||||
storeExpr=$(echo '(import ./pkgs.nix).everything' | $NIX_CMD_PATH/nix-instantiate -v -v -)
|
#storeExpr=$(echo '(import /tmp/scripts/pkgs.nix).everything' | $NIX_CMD_PATH/nix-instantiate -v -v -)
|
||||||
$NIX_CMD_PATH/nix-store -r $storeExpr
|
#storeExpr=$(echo '(import ./pkgs.nix).everything' | $NIX_CMD_PATH/nix-instantiate -v -v -)
|
||||||
|
#$NIX_CMD_PATH/nix-store -r $storeExpr
|
||||||
|
#echo $storeExpr
|
||||||
|
#storeExpr2=$($NIX_CMD_PATH/nix-store -qR $($NIX_CMD_PATH/nix-store -r $storeExpr))
|
||||||
|
#echo storeExpr $storeExpr
|
||||||
|
#echo $($NIX_CMD_PATH/nix-store -qR --include-outputs $storeExpr)
|
||||||
|
|
||||||
|
echo copying store
|
||||||
|
|
||||||
|
(while read storepaths; do
|
||||||
|
cp -fa $storepaths $root/nix/store
|
||||||
|
done) < /mnt/cdrom1/mystorepaths
|
||||||
|
|
||||||
|
#cp -fa ../nix/store/* $root/nix/store
|
||||||
|
|
||||||
#echo registering valid paths...
|
#echo registering valid paths...
|
||||||
#(while read storepath; do
|
#(while read storepath; do
|
||||||
@ -105,6 +129,8 @@ $NIX_CMD_PATH/nix-store -r $storeExpr
|
|||||||
# $NIX_CMD_PATH/nix-store --successor $line
|
# $NIX_CMD_PATH/nix-store --successor $line
|
||||||
#done) < /tmp/mysuccessors
|
#done) < /tmp/mysuccessors
|
||||||
|
|
||||||
|
exit
|
||||||
|
|
||||||
echo setting init symlink...
|
echo setting init symlink...
|
||||||
rm -f $root/init
|
rm -f $root/init
|
||||||
ln -s $sysvinitPath/sbin/init $root/init
|
ln -s $sysvinitPath/sbin/init $root/init
|
||||||
|
33
make-disk.sh
33
make-disk.sh
@ -1,9 +1,13 @@
|
|||||||
#! /bin/sh -e
|
#! /bin/sh -e
|
||||||
|
|
||||||
|
declare -a deps
|
||||||
|
|
||||||
archivesDir=/tmp/arch
|
archivesDir=/tmp/arch
|
||||||
manifest=${archivesDir}/MANIFEST
|
manifest=${archivesDir}/MANIFEST
|
||||||
nixpkgs=/nixpkgs/trunk/pkgs
|
nixpkgs=/nixpkgs/trunk/pkgs
|
||||||
fill_disk=$archivesDir/scripts/fill-disk.sh
|
fill_disk=$archivesDir/scripts/fill-disk.sh
|
||||||
|
storePaths=$archivesDir/mystorepaths
|
||||||
|
validatePaths=$archivesDir/validatepaths
|
||||||
|
|
||||||
touch ${archivesDir}/blah
|
touch ${archivesDir}/blah
|
||||||
chmod -f -R +w ${archivesDir}/*
|
chmod -f -R +w ${archivesDir}/*
|
||||||
@ -12,8 +16,7 @@ rm -rf ${archivesDir}/*
|
|||||||
NIX_CMD_PATH=/nix/bin
|
NIX_CMD_PATH=/nix/bin
|
||||||
|
|
||||||
storeExpr=$(echo '(import ./pkgs.nix).everything' | $NIX_CMD_PATH/nix-instantiate -v -v -)
|
storeExpr=$(echo '(import ./pkgs.nix).everything' | $NIX_CMD_PATH/nix-instantiate -v -v -)
|
||||||
$NIX_CMD_PATH/nix-push --copy $archivesDir $manifest $(nix-store -r $storeExpr) $(nix-store -r $(echo '(import ./pkgs.nix).kernel' | $NIX_CMD_PATH/nix-instantiate -))
|
#$NIX_CMD_PATH/nix-push --copy $archivesDir $manifest $(nix-store -r $storeExpr) $(nix-store -r $(echo '(import ./pkgs.nix).kernel' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
#$NIX_CMD_PATH/nix-push --copy $archivesDir $manifest $storeExpr $(nix-store -r $(echo '(import ./pkgs.nix).kernel' | $NIX_CMD_PATH/nix-instantiate -))
|
|
||||||
|
|
||||||
# Location of sysvinit?
|
# Location of sysvinit?
|
||||||
sysvinitPath=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).sysvinit' | $NIX_CMD_PATH/nix-instantiate -))
|
sysvinitPath=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).sysvinit' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
@ -25,12 +28,32 @@ nix=$($NIX_CMD_PATH/nix-store -q $(echo '(import ./pkgs.nix).nix' | $NIX_CMD_PAT
|
|||||||
|
|
||||||
#nixDeps=$($NIX_CMD_PATH/nix-store -qR $(echo '(import ./pkgs.nix).nix' | $NIX_CMD_PATH/nix-instantiate -))
|
#nixDeps=$($NIX_CMD_PATH/nix-store -qR $(echo '(import ./pkgs.nix).nix' | $NIX_CMD_PATH/nix-instantiate -))
|
||||||
|
|
||||||
nixDeps=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).nix' | $NIX_CMD_PATH/nix-instantiate -)))
|
#nixDeps=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).nix' | $NIX_CMD_PATH/nix-instantiate -)))
|
||||||
|
echo $($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).nix' | $NIX_CMD_PATH/nix-instantiate -))) >> $storePaths
|
||||||
|
|
||||||
echo $nixDeps
|
#echo $nixDeps > $storePaths
|
||||||
|
|
||||||
|
utilLinux=$($NIX_CMD_PATH/nix-store -qR $(nix-store -r $(echo '(import ./pkgs.nix).utillinux' | $NIX_CMD_PATH/nix-instantiate -)))
|
||||||
|
|
||||||
|
(while read storepath; do
|
||||||
|
cp -fa --parents ${storepath} ${archivesDir}
|
||||||
|
done) < $storePaths
|
||||||
|
|
||||||
|
echo utillinux $utilLinux
|
||||||
|
|
||||||
|
for i in $utilLinux; do
|
||||||
|
echo i $i
|
||||||
|
deps=( $($NIX_CMD_PATH/nix-store -q --references $i) )
|
||||||
|
echo length ${#deps[@]}
|
||||||
|
if test "${#deps[@]}" = 0
|
||||||
|
then
|
||||||
|
echo zarro
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
cp -fa ${nixpkgs} ${archivesDir}
|
cp -fa ${nixpkgs} ${archivesDir}
|
||||||
cp -fa --parents ${nixDeps} ${archivesDir}
|
#cp -fa --parents ${nixDeps} ${archivesDir}
|
||||||
|
cp -fau --parents ${utilLinux} ${archivesDir}
|
||||||
mkdir ${archivesDir}/scripts
|
mkdir ${archivesDir}/scripts
|
||||||
cp -fa * ${archivesDir}/scripts
|
cp -fa * ${archivesDir}/scripts
|
||||||
sed -e "s^@sysvinitPath\@^$sysvinitPath^g" \
|
sed -e "s^@sysvinitPath\@^$sysvinitPath^g" \
|
||||||
|
Loading…
x
Reference in New Issue
Block a user