remove uvesafb and other fb modules, remove uvesafb and other fb support from setup, KMS is used by default for all major graphic cards

This commit is contained in:
Tobias Powalowski 2013-08-22 13:48:18 +02:00
parent 6929a845b4
commit a65b9ea361
12 changed files with 11 additions and 81 deletions

View file

@ -8,7 +8,7 @@ FILES=""
# SETUP
#
# Please change the hooks only if you know what you are doing.
HOOKS="arch_fb udev arch_base arch_core_install arch_installer arch_bootmessage_allinone arch_tz arch_keymap \
HOOKS="arch_kms udev arch_base arch_core_install arch_installer arch_bootmessage_allinone arch_tz arch_keymap \
arch_acpi arch_motd arch_memtest arch_linux_firmware arch_intel_wireless \
arch_hwdetect block memdisk arch_pcspkr arch_net arch_isdn pcmcia \
arch_sound keyboard dmraid arch_devicemapper arch_mdadm mdadm_udev lvm2 arch_lvm2 \

View file

@ -8,7 +8,7 @@ FILES=""
# SETUP
#
# Please change the hooks only if you know what you are doing.
HOOKS="arch_fb udev arch_base arch_network_install arch_installer arch_tz arch_keymap \
HOOKS="arch_kms udev arch_base arch_network_install arch_installer arch_tz arch_keymap \
arch_acpi arch_bootmessage arch_motd arch_memtest \
arch_linux_firmware arch_intel_wireless arch_hwdetect block memdisk \
arch_pcspkr arch_net arch_isdn pcmcia arch_sound keyboard \

View file

@ -8,7 +8,7 @@ FILES=""
# SETUP
#
# Please change the hooks only if you know what you are doing.
HOOKS="arch_fb udev arch_base arch_network_install arch_installer arch_tz arch_keymap \
HOOKS="arch_kms udev arch_base arch_network_install arch_installer arch_tz arch_keymap \
arch_acpi arch_bootmessage arch_motd arch_memtest \
arch_linux_firmware arch_intel_wireless arch_hwdetect block memdisk \
arch_pcspkr arch_net arch_isdn pcmcia arch_sound keyboard \

View file

@ -8,7 +8,7 @@ FILES=""
# SETUP
#
# Please change the hooks only if you know what you are doing.
HOOKS="arch_fb udev arch_base arch_core_install arch_installer arch_tz arch_keymap \
HOOKS="arch_kms udev arch_base arch_core_install arch_installer arch_tz arch_keymap \
arch_acpi arch_bootmessage arch_motd arch_memtest \
arch_linux_firmware arch_intel_wireless arch_hwdetect block memdisk \
arch_pcspkr arch_net arch_isdn pcmcia arch_sound keyboard \

View file

@ -8,7 +8,7 @@ FILES=""
# SETUP
#
# Please change the hooks only if you know what you are doing.
HOOKS="arch_fb udev arch_base arch_core_install arch_installer arch_tz arch_keymap \
HOOKS="arch_kms udev arch_base arch_core_install arch_installer arch_tz arch_keymap \
arch_acpi arch_bootmessage arch_motd arch_memtest \
arch_linux_firmware arch_intel_wireless arch_hwdetect block memdisk \
arch_pcspkr arch_net arch_isdn pcmcia arch_sound keyboard \

View file

@ -4,7 +4,7 @@ SVNSETUP="svn://svn.archlinux.org/packages/"
BASE=""
DEVEL=""
SUPPORT=""
SUPPORT_ADDITION="ntfs-3g_ntfsprogs fuse dhcp v86d f2fs-tools prebootloader lockdown-ms"
SUPPORT_ADDITION="ntfs-3g_ntfsprogs fuse dhcp f2fs-tools prebootloader lockdown-ms"
# generate base
for i in $(pacman -Sg base | sed -e "s/base//g"); do
BASE="$BASE $(echo $i)"

View file

@ -1,28 +0,0 @@
# Created by Tobias Powalowski <tpowa@archlinux.org>
run_hook ()
{
if [ "$fbmodule" = "" ]; then
# check for kms
for fb in i915 nouveau radeon; do
for pci in $(modinfo -F alias $fb | sed -e 's/\*/\.&/g'); do
if cat /sys/bus/pci/devices/*/modalias | grep -i $pci >/dev/null; then
msg ":: Switching to $fb kms mode..."
echo "options $fb modeset=1" >> /etc/modprobe.d/modprobe.conf
fbmodule="$fb"
fi
done
done
fi
# check for uvesafb
if [ "$(echo $uvesafb | grep "[0-9]*x[0-9]*-[0-9]*")" ]; then
msg ":: Switching to uvesafb mode..."
sed -i -e "s#options.*#options uvesafb mode_option=$uvesafb scroll=ywrap#g" /etc/modprobe.d/uvesafb.conf
fbmodule="uvesafb"
fi
# load correct module
if ! [ "$fbmodule" = "" ]; then
msg ":: Loading ${fbmodule}..."
modprobe -aq $fbmodule >/dev/null 2>&1
fi
}

View file

@ -45,7 +45,7 @@ build ()
DEVEL="$DEVEL $(echo $i)"
done
SUPPORT=""
SUPPORT="$(echo -n $(pacman -Ss | grep -e "^core" | grep -v '(' | sed -e 's/\ .*/ /g' -e 's#core/##g')) ntfs-3g_ntfsprogs fuse dhcp v86d f2fs-tools prebootloader lockdown-ms"
SUPPORT="$(echo -n $(pacman -Ss | grep -e "^core" | grep -v '(' | sed -e 's/\ .*/ /g' -e 's#core/##g')) ntfs-3g_ntfsprogs fuse dhcp f2fs-tools prebootloader lockdown-ms"
for i in base devel lib support; do
mkdir $i
svn co -N ${SVNSETUP} $i

View file

@ -1,17 +0,0 @@
#!/usr/bin/env bash
# Created by Tobias Powalowski <tpowa@archlinux.org>
build ()
{
add_checked_modules 'drivers/video/|drivers/char/agp|i915|radeon|nouveau'
add_binary "v86d"
add_file "/usr/lib/modprobe.d/uvesafb.conf" "/etc/modprobe.d/uvesafb.conf"
add_runscript
}
help ()
{
cat<<HELPEOF
This hook includes the framebuffer and kms subsystem on an arch boot image.
HELPEOF
}

View file

@ -15,7 +15,7 @@ build ()
wpa_supplicant gzip rsync libarchive device-mapper cracklib nfs-utils nfsidmap \
readline acl attr pcre cpio archboot fuse libusb-compat libusbx vim vim-runtime \
lzo2 libsasl libldap libevent gpm sdparm pptpclient licenses zd1211-firmware cifs-utils dmraid \
linux-atm netctl openresolv parted tzdata ntp v86d iw crda wireless-regdb libnl iproute2 dhclient \
linux-atm netctl openresolv parted tzdata ntp iw crda wireless-regdb libnl iproute2 dhclient \
syslinux mtools perl gmp krb5 sqlite db dbus libcap fsarchiver xz librpcsecgss \
libtirpc wipe ddrescue testdisk ifplugd libdaemon wpa_actiond rfkill libgssglue icu gptfdisk \
btrfs-progs nilfs-utils linux-firmware ipw2100-fw ipw2200-fw iana-etc chntpw \

View file

@ -132,9 +132,6 @@ install_packages() {
PACKAGES="$(pacman -Sg base | awk '{print $2}')"
fi
# Add packages which are not in core repository
if [[ "$(grep -w uvesafb /proc/cmdline)" ]]; then
! [[ "$(echo ${PACKAGES} | grep -w v86d)" ]] && PACKAGES="${PACKAGES} v86d"
fi
if [[ "$(lsblk -rnpo FSTYPE | grep ntfs)" ]]; then
! [[ "$(echo ${PACKAGES} | grep -w ntfs-3g)" ]] && PACKAGES="${PACKAGES} ntfs-3g"
fi

View file

@ -2795,9 +2795,6 @@ select_packages() {
PACKAGES="${ANSWER_CHECKLIST[@]}"
fi
# Add packages which are not in core repository
if [[ "$(grep -w uvesafb /proc/cmdline)" ]]; then
! [[ "$(echo ${PACKAGES} | grep -w v86d)" ]] && PACKAGES="${PACKAGES} v86d"
fi
if [[ -n "$(pgrep dhclient)" ]]; then
! [[ "$(echo ${PACKAGES} | grep -w dhclient)" ]] && PACKAGES="${PACKAGES} dhclient"
fi
@ -4844,21 +4841,15 @@ auto_hwdetect() {
HWPARAMETER=""
HWDETECTMODULES=""
HWDETECTHOOKS=""
HWDETECTFILES=""
HWKVER==
DIALOG --yesno "PRECONFIGURATION?\n-----------------\n\nDo you want to use 'hwdetect' for:\n'/etc/mkinitcpio.conf'?\n\nThis ensures consistent ordering of your storage disk / usb controllers.\n\nIt is recommended to say 'YES' here." 18 70 && HWDETECT="yes"
if [[ "${HWDETECT}" = "yes" ]]; then
# check on used keymap
! [[ "$(grep '^KEYMAP="us"' ${DESTDIR}/etc/vconsole.conf)" ]] && HWPARAMETER="${HWPARAMETER} --keymap"
# check on framebuffer modules and kms
if [[ -e ${DESTDIR}/lib/initcpio/hooks/v86d && "$(grep -w uvesafb /proc/cmdline)" ]]; then
FBPARAMETER="--uvesafb"
HWDETECTFILES="/etc/modprobe.d/uvesafb.conf"
fi
[[ "$(grep "radeon" /etc/modprobe.d/modprobe.conf)" ]] && (FBPARAMETER="--ati-kms";HWDETECTFILES="/etc/modprobe.d/modprobe.conf")
[[ "$(grep "i915" /etc/modprobe.d/modprobe.conf)" ]] && (FBPARAMETER="--intel-kms";HWDETECTFILES="/etc/modprobe.d/modprobe.conf")
[[ "$(grep "nouveau" /etc/modprobe.d/modprobe.conf)" ]] && (FBPARAMETER="--nvidia-kms";HWDETECTFILES="/etc/modprobe.d/modprobe.conf")
[[ "$(grep -w fbmodule /proc/cmdline)" ]] && FBPARAMETER="--fbmodule"
[[ "$(grep "^radeon" /proc/modules)" ]] && FBPARAMETER="--ati-kms"
[[ "$(grep "^i915" /proc/modules )" ]] && FBPARAMETER="--intel-kms"
[[ "$(grep "^nouveau" /proc/modules)" ]] && FBPARAMETER="--nvidia-kms"
if [[ "$(lsmod | grep ^pcmcia)" ]]; then
DIALOG --defaultno --yesno "Setup detected pcmcia hardware...\nDo you need support for booting from pcmcia devices?" 0 0 && HWPARAMETER="${HWPARAMETER} --pcmcia"
fi
@ -4879,18 +4870,6 @@ auto_hwdetect() {
HWDETECTHOOKS="$(hwdetect --kernel_directory=${DESTDIR} --kernel_version=${HWKVER} --rootdevice=${PART_ROOT} --hooks-dir=${DESTDIR}/usr/lib/initcpio/install ${FBPARAMETER} ${HWPARAMETER} --hooks)"
[[ -n "${HWDETECTMODULES}" ]] && sed -i -e "s/^MODULES=.*/${HWDETECTMODULES}/g" ${DESTDIR}/etc/mkinitcpio.conf
[[ -n "${HWDETECTHOOKS}" ]] && sed -i -e "s/^HOOKS=.*/${HWDETECTHOOKS}/g" ${DESTDIR}/etc/mkinitcpio.conf
[[ -n "${HWDETECTFILES}" ]] && sed -i -e "s#^FILES=.*#FILES=\"${HWDETECTFILES}\"#g" ${DESTDIR}/etc/mkinitcpio.conf
fi
}
auto_fb() {
UVESAFB=""
# clean modprobe.conf file from options first
sed -i -e '/options/d' ${DESTDIR}/etc/modprobe.d/modprobe.conf
grep ^[a-z] /etc/modprobe.d/modprobe.conf >> ${DESTDIR}/etc/modprobe.d/modprobe.conf
if [[ -e ${DESTDIR}/lib/initcpio/hooks/v86d && "$(grep -w uvesafb /proc/cmdline)" ]]; then
UVESAFB="$(grep ^[a-z] /etc/modprobe.d/uvesafb.conf)"
sed -i -e "s#options.*#${UVESAFB}#g" ${DESTDIR}/etc/modprobe.d/uvesafb.conf
fi
}
@ -4958,7 +4937,6 @@ configure_system() {
auto_pacman_mirror
auto_network
auto_parameters
auto_fb
auto_system_files
auto_hwdetect
fi