summaryrefslogtreecommitdiff
path: root/config/binary_grub/grub.cfg
blob: e9b2d69dc17707aed7bdeb7040af85ec6ebc1348 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
echo Loading...
set default=0
set timeout=8

set boot_en='boot=live config utc=yes locales=us'
set boot_de='boot=live config utc=no timezone=Europe/Berlin locales=de_DE.UTF-8,en_US.UTF-8 keyboard-layouts=de keyboard-variants=nodeadkeys'

if loadfont /boot/grub/unicode.pf2 ; then
  set gfxmode=800x600
  if [ $efi != 1 ] ; then
    insmod vbe
    insmod vga
  else
    insmod efi_gop
    insmod efi_uga
  fi
  insmod video_bochs
  insmod video_cirrus
  insmod gfxterm
  terminal_output gfxterm
  echo Loading...
fi

insmod png
if background_image /boot/grub/kanotix-logo.png; then
  set color_normal=white/black
  set color_highlight=white/light-blue
else
  set menu_color_normal=cyan/blue
  set menu_color_highlight=white/blue
fi

insmod part_msdos
insmod btrfs
set persistence=0
if test -e ($root,msdos3) ; then
  if search --label --set persistence --no-floppy persistence ($root,msdos3) ; then
    if test -e (${persistence})/grub.cmdline ; then
      source (${persistence})/grub.cmdline
      insmod regexp
      set lmp=live
      regexp --set=lmp 'live-media-path=\([^ ]*\)' "${persistence_cmdline}"
      if test -d /$lmp ; then
        menuentry 'Start Kanotix (persistent)' {
    	echo    'Loading Linux ...'
    	linux   /$lmp/vmlinuz ${persistence_cmdline}
    	echo    'Loading initial ramdisk ...'
    	initrd  /$lmp/initrd.img
        }
      fi
    fi
  fi
fi

#####
menuentry 'Start Kanotix DE' {
        echo    'Loading Linux ...'
        linux   /live/vmlinuz ${boot_de} quiet splash
        echo    'Loading initial ramdisk ...'
        initrd  /live/initrd.img
}

if test -d /gfxoverlay ; then
  menuentry 'Start Kanotix DE (gfxoverlay)' {
        echo    'Loading Linux ...'
        linux   /live/vmlinuz ${boot_de} gfx=auto quiet splash
        echo    'Loading initial ramdisk ...'
        initrd  /live/initrd.img
  }
fi

menuentry 'Start Kanotix EN' {
        echo    'Loading Linux ...'
        linux   /live/vmlinuz ${boot_en} quiet splash
        echo    'Loading initial ramdisk ...'
        initrd  /live/initrd.img
}

if test -d /gfxoverlay ; then
  menuentry 'Start Kanotix EN (gfxoverlay)' {
        echo    'Loading Linux ...'
        linux   /live/vmlinuz ${boot_en} gfx=auto quiet splash
        echo    'Loading initial ramdisk ...'
        initrd  /live/initrd.img
  }
fi

menuentry 'Start Kanotix DE (failsafe)' {
        echo    'Loading Linux ...'
        linux   /live/vmlinuz ${boot_de} quiet splash noapic noapm nodma nomce nolapic nomodeset nosmp vga=normal
        echo    'Loading initial ramdisk ...'
        initrd  /live/initrd.img
}


menuentry 'Start Kanotix EN (failsafe)' {
        echo    'Loading Linux ...'
        linux   /live/vmlinuz ${boot_en} quiet splash noapic noapm nodma nomce nolapic nomodeset nosmp vga=normal
        echo    'Loading initial ramdisk ...'
        initrd  /live/initrd.img
}

#####

if [ $efi != 1 ] ; then
  menuentry 'Memtest86+' {
        linux16 /live/memtest
  }
else
  if test -f /efi/boot/shellx64.efi ; then
    menuentry 'EFI Shell x64' {
          chainloader /efi/boot/shellx64.efi
    }
  fi
  if test -f /efi/boot/shellx86.efi ; then
    menuentry 'EFI Shell x86' {
          chainloader /efi/boot/shellx86.efi
    }
  fi
  insmod regexp
  for bootmgfw in (*)/EFI/Microsoft/Boot/bootmgfw.efi; do 
   if [ -e "$bootmgfw" ]; then
    regexp --set=device '(\(.*\))' "$bootmgfw"
    menuentry "Boot Windows UEFI from device $device" "$device" "$bootmgfw" {
     root="$2"
     chainloader "$3" 
    }
   fi
  done
fi