[remaster,scripts] enable KMS for spins not shipping with proprietary fglrx, disable gallium on others (for r600).

This commit is contained in:
Fabio Erculiani 2011-01-22 20:46:13 +01:00
parent b31c65d6a4
commit a8fc0070a9
4 changed files with 65 additions and 43 deletions

View File

@ -1,32 +1,32 @@
DEFAULT /boot/sabayon DEFAULT /boot/sabayon
GFXBOOT bootlogo GFXBOOT bootlogo
GFXBOOT-BACKGROUND 0xAAAAAA GFXBOOT-BACKGROUND 0xAAAAAA
APPEND root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon vga=791 console=tty1 quiet -- APPEND root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon __KMS__ vga=791 console=tty1 quiet --
LABEL sabayon LABEL sabayon
menu label ^Start Sabayon __VERSION__ __FLAVOUR__ menu label ^Start Sabayon __VERSION__ __FLAVOUR__
kernel /boot/sabayon kernel /boot/sabayon
append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon vga=791 console=tty1 quiet -- append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon __KMS__ vga=791 console=tty1 quiet --
LABEL install LABEL install
menu label Graphical ^Installation menu label Graphical ^Installation
kernel /boot/sabayon kernel /boot/sabayon
append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon vga=791 console=tty1 quiet installer-gui -- append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon __KMS__ vga=791 console=tty1 quiet installer-gui --
LABEL text-install LABEL text-install
menu label Text ^Installation menu label Text ^Installation
kernel /boot/sabayon kernel /boot/sabayon
append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=verbose,theme:sabayon vga=791 console=tty1 quiet installer-text gentoo=nox nox -- append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=verbose,theme:sabayon __KMS__ vga=791 console=tty1 quiet installer-text gentoo=nox nox --
LABEL genuine LABEL genuine
menu label Safe ^Mode menu label Safe ^Mode
kernel /boot/sabayon kernel /boot/sabayon
append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon vga=788 noproprietary genuine res=1024x768 refresh=60 hsync=43-51 pci=routeirq irqpoll noddc console=tty1 quiet nokvm -- append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon __KMS__ vga=788 noproprietary genuine res=1024x768 refresh=60 hsync=43-51 pci=routeirq irqpoll noddc console=tty1 quiet nokvm --
LABEL console LABEL console
menu label ^Console mode menu label ^Console mode
kernel /boot/sabayon kernel /boot/sabayon
append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=verbose,theme:sabayon vga=791 gentoo=nox nox console=tty1 quiet -- append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=verbose,theme:sabayon __KMS__ vga=791 gentoo=nox nox console=tty1 quiet --
LABEL debug LABEL debug
menu label Deb^ug mode menu label Deb^ug mode

View File

@ -1,54 +1,54 @@
DEFAULT /boot/sabayon DEFAULT /boot/sabayon
GFXBOOT bootlogo GFXBOOT bootlogo
GFXBOOT-BACKGROUND 0xAAAAAA GFXBOOT-BACKGROUND 0xAAAAAA
APPEND root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon vga=791 console=tty1 quiet -- APPEND root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon __KMS__ vga=791 console=tty1 quiet --
LABEL sabayon LABEL sabayon
menu label ^Start Sabayon __VERSION__ __FLAVOUR__ menu label ^Start Sabayon __VERSION__ __FLAVOUR__
kernel /boot/sabayon kernel /boot/sabayon
append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon vga=791 console=tty1 quiet music -- append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon __KMS__ vga=791 console=tty1 quiet music --
LABEL sabayonnomusic LABEL sabayonnomusic
menu label ^Start Sabayon w/o boot music menu label ^Start Sabayon w/o boot music
kernel /boot/sabayon kernel /boot/sabayon
append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon vga=791 console=tty1 quiet -- append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon __KMS__ vga=791 console=tty1 quiet --
LABEL sabayonmce LABEL sabayonmce
menu label ^Start Sabayon Media Center menu label ^Start Sabayon Media Center
kernel /boot/sabayon kernel /boot/sabayon
append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon vga=791 console=tty1 quiet sabayonmce -- append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon __KMS__ vga=791 console=tty1 quiet sabayonmce --
LABEL eeepc LABEL eeepc
menu label Sabayon Netbook menu label Sabayon Netbook
kernel /boot/sabayon kernel /boot/sabayon
append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon vga=0x312 console=tty1 quiet eeepc -- append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon __KMS__ vga=0x312 console=tty1 quiet eeepc --
LABEL eeepcmce LABEL eeepcmce
menu label Sabayon Media Center Netbook menu label Sabayon Media Center Netbook
kernel /boot/sabayon kernel /boot/sabayon
append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon vga=0x312 console=tty1 quiet eeepc sabayonmce -- append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon __KMS__ vga=0x312 console=tty1 quiet eeepc sabayonmce --
LABEL install LABEL install
menu label Graphical ^Installation menu label Graphical ^Installation
kernel /boot/sabayon kernel /boot/sabayon
append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon vga=791 console=tty1 quiet installer-gui -- append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon __KMS__ vga=791 console=tty1 quiet installer-gui --
LABEL mceinstall LABEL mceinstall
menu label Graphical ^Installation (Media Center) menu label Graphical ^Installation (Media Center)
kernel /boot/sabayon kernel /boot/sabayon
append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon vga=791 console=tty1 quiet installer-gui mceinstall -- append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon __KMS__ vga=791 console=tty1 quiet installer-gui mceinstall --
LABEL text-install LABEL text-install
menu label Text ^Installation menu label Text ^Installation
kernel /boot/sabayon kernel /boot/sabayon
append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=verbose,theme:sabayon vga=791 console=tty1 quiet installer-text gentoo=nox nox -- append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=verbose,theme:sabayon __KMS__ vga=791 console=tty1 quiet installer-text gentoo=nox nox --
LABEL genuine LABEL genuine
menu label Safe ^Mode menu label Safe ^Mode
kernel /boot/sabayon kernel /boot/sabayon
append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon vga=788 noproprietary genuine res=1024x768 refresh=60 hsync=43-51 pci=routeirq irqpoll noddc console=tty1 quiet nokvm -- append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=silent,theme:sabayon __KMS__ vga=788 noproprietary genuine res=1024x768 refresh=60 hsync=43-51 pci=routeirq irqpoll noddc console=tty1 quiet nokvm --
LABEL console LABEL console
menu label ^Console mode menu label ^Console mode
kernel /boot/sabayon kernel /boot/sabayon
append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=verbose,theme:sabayon vga=791 gentoo=nox nox console=tty1 quiet -- append root=/dev/ram0 initrd=/boot/sabayon.igz aufs init=/linuxrc cdroot cdroot_type=udf looptype=squashfs max_loop=64 loop=/livecd.squashfs splash=verbose,theme:sabayon __KMS__ vga=791 gentoo=nox nox console=tty1 quiet --
LABEL debug LABEL debug
menu label Deb^ug mode menu label Deb^ug mode

View File

@ -25,11 +25,19 @@ ver=${RELEASE_VERSION}
sed -i "s/__VERSION__/${ver}/g" "${isolinux_destination}" sed -i "s/__VERSION__/${ver}/g" "${isolinux_destination}"
sed -i "s/__FLAVOUR__/${remaster_type}/g" "${isolinux_destination}" sed -i "s/__FLAVOUR__/${remaster_type}/g" "${isolinux_destination}"
kms_string=""
# should KMS be enabled?
if [ -f "${CHROOT_DIR}/.enable_kms" ]; then
rm "${CHROOT_DIR}/.enable_kms"
kms_string="radeon.modeset=1"
fi
sed -i "s/__KMS__/${kms_string}/g" "${isolinux_destination}"
sabayon_pkgs_file="${CHROOT_DIR}/etc/sabayon-pkglist" sabayon_pkgs_file="${CHROOT_DIR}/etc/sabayon-pkglist"
if [ -f "${sabayon_pkgs_file}" ]; then if [ -f "${sabayon_pkgs_file}" ]; then
cp "${sabayon_pkgs_file}" "${CDROOT_DIR}/pkglist" cp "${sabayon_pkgs_file}" "${CDROOT_DIR}/pkglist"
if [ -n "${ISO_PATH}" ]; then # molecule 0.9.6 required if [ -n "${ISO_PATH}" ]; then # molecule 0.9.6 required
# copy pkglist over to ISO path + pkglist # copy pkglist over to ISO path + pkglist
cp "${sabayon_pkgs_file}" "${ISO_PATH}".pkglist cp "${sabayon_pkgs_file}" "${ISO_PATH}".pkglist
fi fi
fi fi

View File

@ -104,6 +104,38 @@ gforensic_remove_skel_stuff() {
rm /etc/skel/.kderc rm /etc/skel/.kderc
} }
setup_oss_gfx_drivers() {
# do not tweak eselect mesa, keep defaults
# This file is polled by the isolinux.cfg setup script
touch /.enable_kms
}
setup_proprietary_gfx_drivers() {
# Prepare NVIDIA legacy drivers infrastructure
if [ ! -d "/install-data/drivers" ]; then
mkdir -p /install-data/drivers
fi
myuname=$(uname -m)
mydir="x86"
if [ "$myuname" == "x86_64" ]; then
mydir="amd64"
fi
kernel_tag="#$(equo match --installed -qv sys-kernel/linux-sabayon | sort | head -n 1 | cut -d"-" -f 4 | sed 's/ //g')-sabayon"
rm -rf /var/lib/entropy/client/packages/packages*/${mydir}/*/x11-drivers*
ACCEPT_LICENSE="NVIDIA" equo install --fetch --nodeps =x11-drivers/nvidia-drivers-173*$kernel_tag
ACCEPT_LICENSE="NVIDIA" equo install --fetch --nodeps =x11-drivers/nvidia-drivers-96*$kernel_tag
# not working with >=xorg-server-1.5
# ACCEPT_LICENSE="NVIDIA" equo install --fetch --nodeps ~x11-drivers/nvidia-drivers-71.86.*$kernel_tag
mv /var/lib/entropy/client/packages/packages-nonfree/${mydir}/*/x11-drivers\:nvidia-drivers*.tbz2 /install-data/drivers/
# if we ship with ati-drivers, we have KMS disabled by default.
# and better set driver arch to classic
eselect mesa set r600 classic
}
if [ "$1" = "lxde" ]; then if [ "$1" = "lxde" ]; then
setup_networkmanager setup_networkmanager
# Fix ~/.dmrc to have it load LXDE # Fix ~/.dmrc to have it load LXDE
@ -114,6 +146,7 @@ if [ "$1" = "lxde" ]; then
# properly tweak lxde autostart tweak, adding --desktop option # properly tweak lxde autostart tweak, adding --desktop option
sed -i 's/pcmanfm -d/pcmanfm -d --desktop/g' /etc/xdg/lxsession/LXDE/autostart sed -i 's/pcmanfm -d/pcmanfm -d --desktop/g' /etc/xdg/lxsession/LXDE/autostart
setup_cpufrequtils setup_cpufrequtils
setup_oss_gfx_drivers
elif [ "$1" = "e17" ]; then elif [ "$1" = "e17" ]; then
setup_networkmanager setup_networkmanager
# Fix ~/.dmrc to have it load E17 # Fix ~/.dmrc to have it load E17
@ -129,6 +162,7 @@ elif [ "$1" = "e17" ]; then
# Fix ~/.gtkrc-2.0 for some nice icons in gtk # Fix ~/.gtkrc-2.0 for some nice icons in gtk
echo 'gtk-icon-theme-name="Tango" gtk-theme-name="Xfce"' | tr " " "\n" > /etc/skel/.gtkrc-2.0 echo 'gtk-icon-theme-name="Tango" gtk-theme-name="Xfce"' | tr " " "\n" > /etc/skel/.gtkrc-2.0
setup_cpufrequtils setup_cpufrequtils
setup_oss_gfx_drivers
elif [ "$1" = "xfce" ]; then elif [ "$1" = "xfce" ]; then
setup_networkmanager setup_networkmanager
# Fix ~/.dmrc to have it load XFCE # Fix ~/.dmrc to have it load XFCE
@ -137,6 +171,7 @@ elif [ "$1" = "xfce" ]; then
remove_desktop_files remove_desktop_files
setup_cpufrequtils setup_cpufrequtils
setup_displaymanager setup_displaymanager
setup_oss_gfx_drivers
elif [ "$1" = "fluxbox" ]; then elif [ "$1" = "fluxbox" ]; then
setup_networkmanager setup_networkmanager
# Fix ~/.dmrc to have it load Fluxbox # Fix ~/.dmrc to have it load Fluxbox
@ -145,57 +180,36 @@ elif [ "$1" = "fluxbox" ]; then
remove_desktop_files remove_desktop_files
setup_displaymanager setup_displaymanager
setup_cpufrequtils setup_cpufrequtils
setup_oss_gfx_drivers
elif [ "$1" = "gnome" ]; then elif [ "$1" = "gnome" ]; then
setup_networkmanager setup_networkmanager
# Fix ~/.dmrc to have it load GNOME # Fix ~/.dmrc to have it load GNOME
echo "[Desktop]" > /etc/skel/.dmrc echo "[Desktop]" > /etc/skel/.dmrc
echo "Session=gnome" >> /etc/skel/.dmrc echo "Session=gnome" >> /etc/skel/.dmrc
SHIP_NVIDIA_LEGACY="1"
rc-update del system-tools-backends boot rc-update del system-tools-backends boot
rc-update add system-tools-backends default rc-update add system-tools-backends default
setup_displaymanager setup_displaymanager
setup_sabayon_mce setup_sabayon_mce
setup_proprietary_gfx_drivers
elif [ "$1" = "gforensic" ]; then elif [ "$1" = "gforensic" ]; then
setup_networkmanager setup_networkmanager
# Fix ~/.dmrc to have it load GNOME # Fix ~/.dmrc to have it load GNOME
echo "[Desktop]" > /etc/skel/.dmrc echo "[Desktop]" > /etc/skel/.dmrc
echo "Session=gnome" >> /etc/skel/.dmrc echo "Session=gnome" >> /etc/skel/.dmrc
SHIP_NVIDIA_LEGACY="1"
rc-update del system-tools-backends boot rc-update del system-tools-backends boot
rc-update add system-tools-backends default rc-update add system-tools-backends default
setup_displaymanager setup_displaymanager
setup_sabayon_mce setup_sabayon_mce
gforensic_remove_skel_stuff gforensic_remove_skel_stuff
setup_proprietary_gfx_drivers
elif [ "$1" = "kde" ]; then elif [ "$1" = "kde" ]; then
setup_networkmanager setup_networkmanager
# Fix ~/.dmrc to have it load KDE # Fix ~/.dmrc to have it load KDE
echo "[Desktop]" > /etc/skel/.dmrc echo "[Desktop]" > /etc/skel/.dmrc
echo "Session=KDE-4" >> /etc/skel/.dmrc echo "Session=KDE-4" >> /etc/skel/.dmrc
SHIP_NVIDIA_LEGACY="1"
setup_displaymanager setup_displaymanager
setup_sabayon_mce setup_sabayon_mce
fi setup_proprietary_gfx_drivers
if [ -n "${SHIP_NVIDIA_LEGACY}" ]; then
# Prepare NVIDIA legacy drivers infrastructure
if [ ! -d "/install-data/drivers" ]; then
mkdir -p /install-data/drivers
fi
myuname=$(uname -m)
mydir="x86"
if [ "$myuname" == "x86_64" ]; then
mydir="amd64"
fi
kernel_tag="#$(equo match --installed -qv sys-kernel/linux-sabayon | sort | head -n 1 | cut -d"-" -f 4 | sed 's/ //g')-sabayon"
rm -rf /var/lib/entropy/client/packages/packages*/${mydir}/*/x11-drivers*
ACCEPT_LICENSE="NVIDIA" equo install --fetch --nodeps =x11-drivers/nvidia-drivers-173*$kernel_tag
ACCEPT_LICENSE="NVIDIA" equo install --fetch --nodeps =x11-drivers/nvidia-drivers-96*$kernel_tag
# not working with >=xorg-server-1.5
# ACCEPT_LICENSE="NVIDIA" equo install --fetch --nodeps ~x11-drivers/nvidia-drivers-71.86.*$kernel_tag
mv /var/lib/entropy/client/packages/packages-nonfree/${mydir}/*/x11-drivers\:nvidia-drivers*.tbz2 /install-data/drivers/
fi fi
# !!! THERE IS A BUG IN THE CLAMAV EBUILD !!! # !!! THERE IS A BUG IN THE CLAMAV EBUILD !!!