summaryrefslogtreecommitdiff
path: root/cdroot/boot/grub/grub.cfg
blob: 8aab10a5a06b1a629f6e3c4c3926a2acff8f24fe (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
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
# Here we define distro and other voodoo specific for our iso

iso_distro=Kogaion
export iso_distro

iso_flavour=XFCE
export iso_flavour

iso_version=3_alpha0
export iso_version

iso_theme=kogaion
export iso_theme

iso_label=KOGAION
export iso_label

# General stuff

set timeout=10
set default=0
#set fallback=2
set pager=1

function load_video {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

# Loading theme fonts, here may be improved with an 'if'
loadfont /boot/grub/themes/$iso_theme/dejavu_10.pf2
loadfont /boot/grub/themes/$iso_theme/dejavu_12.pf2

# Loading unicode last b'coz we want it for terminal and grub-env is 'tarded
loadfont /boot/grub/fonts/unicode.pf2

load_video
insmod png
insmod gfxterm
insmod gettext
terminal_output gfxterm

# Enable our theme, will be included in x11-themes/distro-artwork-grub
set theme="/boot/grub/themes/$iso_theme/theme.txt"

# Use our image for terminal background, belongs to x11-themes/distro-artwork-grub
if [ -f /boot/grub/default-splash.png ]; then
   background_image -m stretch /boot/grub/default-splash.png
fi

if [ x$bootlang = x ]; then
   bootlang=en_US.utf8
   export bootlang
fi

if [ x$bootkeymap = x ]; then
   bootkeymap=us
   export bootkeymap
fi

if [ x$vesa_opt = x]; then
   vesa_opt=''
   export vesa_opt
fi

if [ x$acpi_opt = x ]; then
   acpi_opt=''
   export acpi_opt
fi

if [ x$modeset_opt = x ]; then
   modeset_opt=''
   export modeset_opt
fi

insmod part_gpt

menuentry "Start $iso_distro $iso_flavour $iso_version" {
   set gfxpayload=keep
   echo "Language: ${bootlang}"
   echo "Keyboard: ${bootkeymap}"
   echo "Please wait..."
   linux /boot/vmlinuz rd.live.image root=CDLABEL=$iso_label rootfstype=auto console=tty0 rd.luks=0 rd.lvm=0 rd.md=0 rd.dm=0 splash quiet vconsole.keymap=${bootkeymap} rd.locale.LANG=${bootlang} ${vesa_opt} ${modeset_opt} ${acpi_opt} -- 
   initrd /boot/initrd
}

submenu "Advanced Options" {

   menuentry "Disable Kernel Mode Settings (safe graphic)" {
      echo "Disabling Kernel Mode Setting..."
      set modeset_opt="nomodeset vga=791"
      export modeset_opt
      configfile /boot/grub/grub.cfg
   }

   menuentry "Disable ACPI" {
      echo "Disabling ACPI..."
      set acpi_opt="noacpi acpi=off"
      export acpi_opt
      configfile /boot/grub/grub.cfg
   }

}

submenu "Language Selection" {

   menuentry "English" {
      echo "Switching to: $chosen"
#we keep this for later, when grub will learn romanian
#      set lang=en_US
      set bootlang=en_US.utf8
      export bootlang
      export lang
      configfile /boot/grub/grub.cfg
   }

   menuentry "Română" {
      echo "Switching to: $chosen"
#we keep this for later, when grub will learn romanian
#      set lang=ro_RO
      set bootlang=ro_RO.utf8
      export bootlang
      export lang
      configfile /boot/grub/grub.cfg
   }

}

submenu "Keyboard Selection" {

   menuentry "Romania" {
      echo "Switching to: $chosen"
      set bootkeymap=ro
      export bootkeymap
      configfile /boot/grub/grub.cfg
   }

   menuentry "English UK" {
      echo "Switching to: $chosen"
      set bootkeymap=uk
      export bootkeymap
      configfile /boot/grub/grub.cfg
   }

   menuentry "USA" {
      echo "Switching to: $chosen"
      set bootkeymap=us
      export bootkeymap
      configfile /boot/grub/grub.cfg
   }

}