| #!/bin/bash | |
| PACKAGES_URL='http://dl.dropbox.com/u/1338581/Gma500/deb_lucid' | |
| PSB_PACKAGES=( | |
| 'libdrm-poulsbo1_2.3.0-1ubuntu0sarvatt4~psb_i386.deb' | |
| 'libdrm-poulsbo1-dbg_2.3.0-1ubuntu0sarvatt4~psb_i386.deb' | |
| 'libva1_0.31.0-1+sds9.1_i386.deb' | |
| 'libva1-dbg_0.31.0-1+sds9.1_i386.deb' | |
| 'poulsbo-config_0.2_all.deb' | |
| 'psb-firmware_0.31-0ubuntu1~910um1_all.deb' | |
| 'psb-kernel-source_4.42.0-0ubuntu2~1004um1_all.deb' | |
| 'xpsb-glx_0.18-0ubuntu1netbook1_i386.deb' | |
| 'xpsb-glx-dbg_0.18-0ubuntu1netbook1_i386.deb' | |
| 'xserver-xorg-video-psb_0.36.0-0ubuntu3~1004um2_i386.deb' | |
| 'xserver-xorg-video-psb-dbg_0.36.0-0ubuntu3~1004um2_i386.deb' | |
| ) | |
| # initialize sudo | |
| initialize_sudo () { | |
| sudo true | |
| } | |
| # Blacklist | |
| blacklist_modules () { | |
| echo -n "Blacklisting unneeded modules... " | |
| echo "blacklist i915 | |
| blacklist vga16fb" | sudo tee -a /etc/modprobe.d/poulsbo.conf > /dev/null | |
| echo "DONE" | |
| } | |
| # Fix framebuffer | |
| fix_fb () { | |
| echo -n "Applying framebuffer fix... " | |
| sudo sed -i 's/no_fb=1/no_fb=0/g' /etc/modprobe.d/poulsbo.conf | |
| echo "DONE" | |
| } | |
| # Fix battery | |
| fix_battery () { | |
| echo -n "Applying battery status fix... " | |
| test -d $HOME/.config/autostart || mkdir $HOME/.config/autostart | |
| echo "[Desktop Entry] | |
| Type=Application | |
| Name=Battery fix | |
| Exec=cat /proc/acpi/battery/BAT1/info | |
| Icon= | |
| Comment=" | tee /home/$USER/.config/autostart/batteryfix.desktop > /dev/null | |
| echo "DONE" | |
| } | |
| # Xorg | |
| fix_config () { | |
| BACKUP_FILE=/etc/X11/xorg.conf.$(date +%Y%m%d%H%M%S) | |
| echo -n "Updating xorg configuration file (a backup copy will be placed in ${BACKUP_FILE})... " | |
| sudo mv /etc/X11/xorg.conf $BACKUP_FILE | |
| echo 'Section "Device" | |
| Identifier "GMA500" | |
| Driver "psb" | |
| Option "ShadowFB" "true" | |
| #Option "DownScale" "false" | |
| #Option "ExaNoComposite" "false" | |
| #Option "ExaMem" "131072" | |
| #Option "ExaScratch" "4" | |
| #Option "ExaCached" "false" | |
| #Option "IgnoreACPI" "true" | |
| #Option "LidTimer" "false" | |
| #Option "MigrationHeuristic" "greedy" | |
| #Option "NoAccel" "false" | |
| #Option "NoFitting" "false" | |
| #Option "NoPanel" "false" | |
| #Option "SWcursor" "false" | |
| #Option "Vsync" "false" | |
| EndSection | |
| Section "DRI" | |
| Mode 0666 | |
| EndSection | |
| Section "Extensions" | |
| Option "Composite" "Disable" | |
| #Option "RENDER" "Disable" | |
| EndSection | |
| Section "ServerFlags" | |
| #Option "AIGLX" "off" | |
| #Option "IgnoreABI" "off" | |
| EndSection' | sudo tee /etc/X11/xorg.conf > /dev/null | |
| echo "DONE" | |
| } | |
| # Update Initramfs | |
| update_initram () { | |
| echo -n "Updating initram... " | |
| sudo update-initramfs -u &> /dev/null | |
| echo "DONE" | |
| } | |
| # prepare system | |
| prepare_system () { | |
| echo -n "Preparing your system... " | |
| sudo apt-get remove --purge -y --force-yes poulsbo-* psb-firmware psb-kernel-* xpsb-glx* xserver-xorg-video-psb* libdrm-poulsbo1* libva1 libva1-* > /dev/null | |
| sudo apt-get install -y --force-yes dkms fakeroot | |
| echo "DONE" | |
| } | |
| # Wget packages | |
| download_packages () { | |
| for pkg in ${PSB_PACKAGES[@]}; do | |
| echo -n "Downloading package ${pkg}... " | |
| if test -e /tmp/${pkg} ; then | |
| echo "DONE (cached)" | |
| continue | |
| fi | |
| if wget -q ${PACKAGES_URL}/${pkg} -O /tmp/${pkg}; then | |
| echo "DONE" | |
| else | |
| echo "FAIL" | |
| fi | |
| done | |
| } | |
| # Install packages | |
| install_packages () { | |
| for pkg in ${PSB_PACKAGES[@]}; do | |
| echo -n "Installing package ${pkg}... " | |
| if sudo dpkg -i /tmp/${pkg} >/dev/null; then | |
| echo "DONE" | |
| else | |
| echo "FAIL" | |
| fi | |
| done | |
| } | |
| setup_system () { | |
| blacklist_modules | |
| fix_fb | |
| fix_battery | |
| fix_config | |
| update_initram | |
| } | |
| ########################################################## | |
| echo "Lucid GMA500 Poulsbo drivers install script" | |
| initialize_sudo | |
| echo -e "\nSTEP 1" | |
| prepare_system | |
| echo -e "\nSTEP 2" | |
| download_packages | |
| echo -e "\nSTEP 3" | |
| install_packages | |
| echo -e "\nSTEP 4" | |
| setup_system | |
| echo -e "\nEnjoy Ubuntu!" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment