From 58b29cd5655e0698464a8f92566f5f267b7a2f5b Mon Sep 17 00:00:00 2001 From: Michael Raskin <7c6f434c@mail.ru> Date: Sat, 23 Jun 2007 16:09:05 +0000 Subject: [PATCH] Added possibility to give configurations custom names. svn path=/nixos/trunk/; revision=8915 --- installer/grub-menu-builder.sh | 12 ++++++++++-- system/options.nix | 9 +++++++++ system/system.nix | 1 + system/system.sh | 1 + 4 files changed, 21 insertions(+), 2 deletions(-) diff --git a/installer/grub-menu-builder.sh b/installer/grub-menu-builder.sh index a1afcf63bf2..7e1e6b4cad1 100644 --- a/installer/grub-menu-builder.sh +++ b/installer/grub-menu-builder.sh @@ -24,6 +24,7 @@ GRUBEND addEntry() { local name="$1" local path="$2" + local shortSuffix="$3" if ! test -e $path/kernel -a -e $path/initrd; then return @@ -46,6 +47,13 @@ addEntry() { initrd=$initrd2 fi + local confName=$(if test -e $path/configuration-name; then + cat $path/configuration-name; + fi); + if test -n "$confName" ; then + name="$confName $3"; + fi; + cat >> $tmp << GRUBEND title $name kernel $kernel systemConfig=$(readlink -f $path) init=$(readlink -f $path/init) $(cat $path/kernel-params) @@ -61,7 +69,7 @@ fi if test -n "$tmp"; then - addEntry "NixOS - Default" $default + addEntry "NixOS - Default" $default "" fi @@ -82,7 +90,7 @@ for generation in $( echo $generation link=/nix/var/nix/profiles/system-$generation-link date=$(stat --printf="%y\n" $link | sed 's/\..*//') - addEntry "NixOS - Configuration $generation ($date)" $link + addEntry "NixOS - Configuration $generation ($date)" $link "$generation ($date)" done diff --git a/system/options.nix b/system/options.nix index 8c276ae24cf..2379fa0aaf0 100644 --- a/system/options.nix +++ b/system/options.nix @@ -66,6 +66,15 @@ "; } + { + name = ["boot" "configurationName"]; + default = ""; + example = "Stable 2.6.21"; + description = " + Grub entry name instead of default. + "; + } + { name = ["boot" "kernelParams"]; default = [ diff --git a/system/system.nix b/system/system.nix index 75630e44777..a5a44f04015 100644 --- a/system/system.nix +++ b/system/system.nix @@ -327,6 +327,7 @@ rec { pkgs.diffutils pkgs.upstart # for initctl ]; + configurationName = config.get ["boot" "configurationName"]; }; diff --git a/system/system.sh b/system/system.sh index 321260777e3..0df4273e5a2 100644 --- a/system/system.sh +++ b/system/system.sh @@ -11,6 +11,7 @@ ln -s $etc/etc $out/etc ln -s $systemPath $out/sw echo "$kernelParams" > $out/kernel-params +echo "$configurationName" > $out/configuration-name cat > $out/menu.lst << GRUBEND kernel $kernel init=$bootStage2 $kernelParams