diff options
Diffstat (limited to 'bin/bump_kernel_video_drivers')
-rwxr-xr-x | bin/bump_kernel_video_drivers | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/bin/bump_kernel_video_drivers b/bin/bump_kernel_video_drivers new file mode 100755 index 0000000..4fc6d97 --- /dev/null +++ b/bin/bump_kernel_video_drivers @@ -0,0 +1,33 @@ +#!/bin/sh + +# PLEASE READ: +# This script recompiles all the kernel-dependent video drivers for +# every currently supported kernel. You can use this script when +# you bump kernels or xorg-server. + +. /kogaion/bin/kernels.inc + +packages="=x11-drivers/nvidia-drivers-173* =x11-drivers/nvidia-drivers-304* =x11-drivers/nvidia-drivers-313*" +non_injected_packages="x11-drivers/nvidia-drivers x11-drivers/ati-drivers x11-drivers/xf86-video-virtualbox" +general_purpose_packages="media-video/amdcccle" +ETP_REPO="${ETP_REPO:-kogaion-testing}" + +for kernel in $kernels; do + mypackages="${packages}" + if [ "${kernel}" != "${running_kernel}" ]; then + mypackages="${mypackages} ${non_injected_packages}" + fi + # build for latest kernel + rm -rf /usr/portage/packages/x11-drivers/* + KERNEL_DIR="/usr/src/linux-${kernel}" emerge -B ${mypackages} || exit 1 + eit inject --to ${ETP_REPO} /usr/portage/packages/x11-drivers/* + echo +done + +# Workout drivers for the running kernel, those non injected +eselect kernel set "linux-${running_kernel}" || exit 1 +emerge ${non_injected_packages} ${general_purpose_packages} || exit 1 +echo -5 | etc-update +eit add ${non_injected_packages} ${general_purpose_packages} || exit 1 + +echo "Now you should remove old packages, if you want of course" |