summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Meyer <james.meyer@operamail.com>2012-11-09 15:45:41 (GMT)
committerJames Meyer <james.meyer@operamail.com>2012-11-09 15:45:41 (GMT)
commit77e44fe619a659bad9faa3a06845f66df9e4527b (patch)
tree7169b446bb8a0bddd6b2034f022019f749f148e5
parentb9dbc7dc206b595e44a67f93892d55b6638b8da4 (diff)
downloadlinhes_pkgbuild-77e44fe619a659bad9faa3a06845f66df9e4527b.zip
linhes_pkgbuild-77e44fe619a659bad9faa3a06845f66df9e4527b.tar.gz
linhes_pkgbuild-77e44fe619a659bad9faa3a06845f66df9e4527b.tar.bz2
LinHES-config: transfer grub line modules to post install grub.
This is in addition to blacklisting them in modules.conf. This is needed because blacklisting a module doesn't work if it's in the initrd. refs #726 closes #726
-rw-r--r--abs/core/LinHES-config/09_mythvantge_runit_grub11
-rwxr-xr-xabs/core/LinHES-config/PKGBUILD6
-rwxr-xr-xabs/core/LinHES-config/mv_install.py27
3 files changed, 36 insertions, 8 deletions
diff --git a/abs/core/LinHES-config/09_mythvantge_runit_grub b/abs/core/LinHES-config/09_mythvantge_runit_grub
index 1d7774e..8bf7396 100644
--- a/abs/core/LinHES-config/09_mythvantge_runit_grub
+++ b/abs/core/LinHES-config/09_mythvantge_runit_grub
@@ -7,6 +7,13 @@ if [ -z "$boot_device_id" ]; then
boot_device_id="$(grub_get_device_id "${GRUB_DEVICE}")"
fi
+if [ -f "/etc/grub.d/install_modules" ]
+then
+ . /etc/grub.d/install_modules
+else
+ install_modules=''
+fi
+
gettext_printf "Found LinHES runit: \n" >&2
echo "
menuentry 'LinHES' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-core repo kernel-true-$boot_device_id' {
@@ -22,7 +29,7 @@ menuentry 'LinHES' --class arch --class gnu-linux --class gnu --class os $menuen
search --no-floppy --fs-uuid --set=root $boot_device_id
fi
echo 'Loading Linux core repo kernel ...'
- linux /boot/vmlinuz-linux root=UUID=$boot_device_id ro quiet splash=silent init=/sbin/runit
+ linux /boot/vmlinuz-linux root=UUID=$boot_device_id ro quiet splash=silent init=/sbin/runit $install_modules
echo 'Loading initial ramdisk ...'
initrd /boot/initramfs-linux.img
}
@@ -39,7 +46,7 @@ menuentry 'LinHES --no-splash' --class arch --class gnu-linux --class gnu --clas
search --no-floppy --fs-uuid --set=root $boot_device_id
fi
echo 'Loading Linux core repo kernel ...'
- linux /boot/vmlinuz-linux root=UUID=$boot_device_id ro init=/sbin/runit
+ linux /boot/vmlinuz-linux root=UUID=$boot_device_id ro init=/sbin/runit $install_modules
echo 'Loading initial ramdisk ...'
initrd /boot/initramfs-linux.img
}
diff --git a/abs/core/LinHES-config/PKGBUILD b/abs/core/LinHES-config/PKGBUILD
index 1134402..f35c42f 100755
--- a/abs/core/LinHES-config/PKGBUILD
+++ b/abs/core/LinHES-config/PKGBUILD
@@ -1,6 +1,6 @@
pkgname=LinHES-config
pkgver=2.3
-pkgrel=184
+pkgrel=189
conflicts=(MythVantage-config MythVantage-config-dev LinHES-config-dev LinHes-config )
pkgdesc="Install and configure your system"
depends=('bc' 'libstatgrab' 'mysql-python' 'expect' 'curl' 'dnsutils' 'parted'
@@ -127,8 +127,8 @@ build() {
install -o root -g root -D -m 0755 blacklist_pcspkr.conf $startdir/pkg/etc/modprobe.d/blacklist_pcspkr.conf
install -o root -g root -D -m 0755 blacklist_nouveau.conf $startdir/pkg/etc/modprobe.d/blacklist_nouveau.conf
}
-md5sums=('ecd120a453dd185fc2b345086bfd62f5'
- 'f33e1a6f7985091b8d47cbaf7433f90f'
+md5sums=('0bde52e0cc7708f3c208d4b424da49cc'
+ '48478aa0c2cfda6f6943c320b576d6f4'
'17677b9e25b8fe3511ad3a139ed91eea'
'2596460462cf6c889cf8f95485537b20'
'985891a43f7c4c983eb2a362162f1a0f'
diff --git a/abs/core/LinHES-config/mv_install.py b/abs/core/LinHES-config/mv_install.py
index 877ca67..cb19f2b 100755
--- a/abs/core/LinHES-config/mv_install.py
+++ b/abs/core/LinHES-config/mv_install.py
@@ -1308,12 +1308,13 @@ def add_to_modulelist(module):
#return
try:
- f = open(rcfile, '1')
+ f = open(rcfile, 'a+')
except:
logging.critical(" *Couldn't open %s for writing",rcfile)
return
line = "%s" %module
f.write(line)
+ f.write("\n")
f.close()
#for line in conflines:
#newline = line
@@ -1333,6 +1334,7 @@ def add_to_modulelist(module):
def special_hardware_check():
+ outlist = []
logging.info("_____Applying special boot parameters_______")
try:
f = open('/proc/cmdline', 'r')
@@ -1347,12 +1349,14 @@ def special_hardware_check():
logging.debug(item)
if (re.match("disablemodules",item) != None) or (re.match("modprobe.blacklist",item) != None ):
logging.debug(" Found disabledmodules")
+ outlist.append(item)
modulelist = item.split("=")[1]
for module in modulelist.split(','):
add_to_blacklist(module)
if re.match("modules",item) != None :
logging.debug(" Found modules")
+ outlist.append(item)
modulelist = item.split("=")[1]
for module in modulelist.split(','):
add_to_modulelist(module)
@@ -1372,6 +1376,19 @@ def special_hardware_check():
if re.match("no_meth",item) != None :
cmd = " touch %s%s/.no_meth" %(data_config.MOUNTPOINT, data_config.MYTHHOME)
runcmd(cmd)
+ if len(outlist) != 0:
+ outfile = data_config.MOUNTPOINT + "/etc/grub.d/install_modules"
+ logging.debug(" Writing out %s" %outfile)
+ try:
+ f = open(outfile, 'w')
+ templine = ' '.join(outlist)
+ outline = '''install_modules='%s' \n''' %templine
+ f.write(outline)
+ f.write("\n")
+ f.close()
+ except:
+ logging.critical(" *Couldn't write %s" %outfile)
+ return
def swapsearch():
#currently unused!
@@ -1549,12 +1566,14 @@ def full_install(hostoptions):
update_status(msg)
progress(98)
+ special_hardware_check()
+
mount_bind_chroot()
grub_it()
umount_bind_chroot()
genlocale() #currently does nothing
- special_hardware_check()
+
logging.info("______Configuring system________")
cp_and_log("/etc/systemconfig", data_config.MOUNTPOINT+"/etc/systemconfig")
@@ -1872,6 +1891,8 @@ def upgrade(hostoptions):
fstab_it("upgrade")
time.sleep(1)
+ special_hardware_check()
+
mount_bind_chroot()
grub_it()
umount_bind_chroot()
@@ -1879,7 +1900,7 @@ def upgrade(hostoptions):
genlocale()
time.sleep(1)
- special_hardware_check()
+
cp_and_log("/root/xorg.conf.install", data_config.MOUNTPOINT+"/etc/X11/xorg.conf.install")
#this was needed to get around a pacman bug
cp_and_log("/etc/mtab", data_config.MOUNTPOINT+"/etc/mtab")