https://wiki.archlinux.org/api.php?action=feedcontributions&user=Mdkelsh&feedformat=atomArchWiki - User contributions [en]2024-03-28T17:46:40ZUser contributionsMediaWiki 1.41.0https://wiki.archlinux.org/index.php?title=ASUS_ROG_G55VW&diff=215618ASUS ROG G55VW2012-07-30T11:57:04Z<p>Mdkelsh: Asus G55VW</p>
<hr />
<div>[[Category:ASUS]]<br />
This page contains instructions, tips, pointers, and links for installing and configuring Arch Linux on the ASUS G55VW ROG Laptop<br />
<br />
<br />
== Bootloader ==<br />
=== Boot on usb ===<br />
Press {{keypress|Escape}} to get the boot menu. If usb bootable device is not listed, enter configuration menu and directly press {{keypress|F10}} to save. Press {{keypress|Escape}} again on reboot : this time USB bootable device should appears in the menu.<br />
<br />
<br />
=== Set up UEFI boot ===<br />
{{Note|It is recommended to read the [[UEFI]], [[GPT]] and [[UEFI_Bootloaders]] pages before following those instructions.}}<br />
<br />
<br />
It is possible to use [[UEFI_Bootloaders#Setting_up_EFISTUB|UEFISTUB]] in-kernel bootloader, if you wish. We present here the [[GRUB2]] way. We assume {{ic|x86_64}} version of Arch Linux.<br />
{{warning| UX31A firmware is {{ic|x86_64}}, so it makes it compulsory to use {{ic|x86_64}} kernel to be able to dual boot with Windows in UEFI mode }}<br />
<br />
In the original partition setup:<br />
<br />
first partition: UEFI boot fat32 partition, should be mounted on {{ic|/boot/efi}} in Arch.<br />
<br />
second partition: [[GUID Partition Table]]<br />
<br />
<br />
Step 0 (optional): install [https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2/ShellBinPkg/UefiShell/X64/Shell.efi x86_64 UEFI Shell 2.0 (Beta)]:<br />
<br />
See [[UEFI#UEFI_Shell]]. Can be useful during install, especially it allows to manually boot using [[UEFI_Bootloaders#Setting_up_EFISTUB|UEFISTUB]].<br />
<br />
Step 1: granted you can boot into your install through install disk, grub1 or via a liveusb and a chroot:<br />
# pacman -S grub-efi-x86_64<br />
Follow [[GRUB2#UEFI_systems_2]].<br />
<br />
Optional: add some power optimisation kernel parameters. In {{ic|/etc/default/grub}} file:<br />
GRUB_CMDLINE_LINUX_DEFAULT="quiet add_efi_memmap i915.i915_enable_rc6=1 drm.vblankoffdelay=1 i915.semaphores=1"<br />
{{Note| concerning kernel parameter {{ic| pcie_aspm&#61;force}}, I'm unsure: Ubuntu wiki recommends it, but UX31E Arch wiki says it should not be used.}}<br />
<br />
Reinstall grub2 :<br />
grub-mkconfig -o /path/to/grub.cfg<br />
<br />
Step 2: it is not yet possible to finish install by [[UEFI#Create_GRUB2_entry_in_the_Firmware_Boot_Manager| creating GRUB2 entry in the Firmware Boot Manager]] since it is required to boot in UEFI mode to be able to use [[Unified_Extensible_Firmware_Interface#efibootmgr|efibootmgr]]. The tricks is to do:<br />
<br />
# cp /boot/efi/EFI/arch_grub/grubx64.efi /boot/efi/shellx64.efi<br />
<br />
{{Note| temporary move {{ic|shellx64.efi}} if necessary }}<br />
<br />
# reboot<br />
<br />
Press {{keypress|F2}} on reboot and choose "Launch EFI shell from filesystem device". It should trigger grub2 and boot into arch if grub2 is correctly set up. You should now be able to [[Unified_Extensible_Firmware_Interface#efibootmgr|use efibootmgr to add grub entry to firmware]].<br />
<br />
== Graphics Drivers ==<br />
<br />
The proprietary nvidia drivers can be installed by enabling the "extra" repository in the "/etc/pacman.conf" file, and the executing:<br />
<br />
# pacman -S nvidia<br />
<br />
== Screen Backlight ==<br />
<br />
Using the nvidia drivers provided in the extra repo screen the backlight-adjust keys({{keypress|Fn+F5}}, {{keypress|Fn+F6}}) do not work. To get around this, you need to grab ({aur|nvidiabl-git}). Once you have installed that package, you can map your keys to the script.<br />
<br />
== Other Keys ==<br />
<br />
It is also possible to use [[Dynamic Kernel Module Support]] (DKMS) (package in community), to avoid compiling the whole kernel:<br />
<br />
1 get the archive at http://ubuntuforums.org/showthread.php?p=12054636#post12054636 (ubuntu forums account + minimum of 50 posts required) or http://markmail.org/message/idvl6s27r26xzorb (no account required)<br />
{{note | there is perhaps more suitable place to get the asus-wmi kernel module sources, the patch and the dkms conf file}}<br />
2 extract the archive, and then extract the .deb and get the sources inside (asus-wmi.c is already patched with above patch):<br />
# cp -a usr/src/asus-wmi-0.2 /usr/src/<br />
# cd /usr/src/<br />
# dkms add -m asus-wmi -v 0.2<br />
# dkms built -m asus-wmi -v 0.2 -k 3.4.6-1-ARCH<br />
# dkms status<br />
# dkms install -m asus-wmi -v 0.2 -k 3.4.6-1-ARCH<br />
# dkms status<br />
<br />
replace {{ic|3.4.6-1-ARCH}} by your output for {{ic|uname -r}}<br />
<br />
3 There is still a problem since dkms doesn't gzip the kernel module and archlinux does (see {{ic|$ modinfo asus-wmi}}):<br />
# cd /lib/modules/3.4.6-1-ARCH/kernel/drivers/platform/x86/<br />
# mv asus-wmi.ko.gz asus-wmi.ko.gz.save<br />
# gzip asus-wmi.ko<br />
{{note | there is probably a cleaner way to do that with dkms}}<br />
4 After reboot, {{ic|xev}} should display events for {{keypress|Fn}} keys. And keyboard backlight can be trigger by:<br />
# echo 0 >> /sys/class/leds/asus\:\:kbd_backlight/brightness<br />
# echo 3 >> /sys/class/leds/asus\:\:kbd_backlight/brightness<br />
<br />
=== keyboard backlight script ===<br />
In the same style that for screen backlight. As root, create the file {{ic|/usr/local/share/kbd_backlight}}:<br />
#!/bin/bash<br />
<br />
path="/sys/class/leds/asus::kbd_backlight"<br />
#path="/sys/class/leds/asus\:\:kbd_backlight"<br />
<br />
# max should be 3<br />
max=$(cat ${path}/max_brightness)<br />
# step: represent the difference between previous and next brightness<br />
step=1<br />
previous=$(cat ${path}/brightness)<br />
<br />
function commit {<br />
if [[ $1 = [0-9]* ]]<br />
then <br />
if <nowiki>[[ $1 -gt $max ]]</nowiki><br />
then <br />
next=$max<br />
elif <nowiki>[[ $1 -lt 0 ]]</nowiki><br />
then <br />
next=0<br />
else <br />
next=$1<br />
fi<br />
echo $next >> ${path}/brightness<br />
exit 0<br />
else <br />
exit 1<br />
fi<br />
}<br />
<br />
case "$1" in<br />
up)<br />
commit $(($previous + $step))<br />
;;<br />
down)<br />
commit $(($previous - $step))<br />
;;<br />
max)<br />
commit $max<br />
;;<br />
on)<br />
$0 max<br />
;;<br />
off)<br />
commit 0<br />
;;<br />
show)<br />
echo $previous<br />
;;<br />
night)<br />
commit 1 <br />
;;<br />
allowusers)<br />
# Allow members of users group to change brightness<br />
sudo chgrp users ${path}/brightness<br />
sudo chmod g+w ${path}/brightness<br />
;;<br />
disallowusers)<br />
# Allow members of users group to change brightness<br />
sudo chgrp root ${path}/brightness<br />
sudo chmod g-w ${path}/brightness<br />
;;<br />
*)<br />
commit $1<br />
esac<br />
<br />
exit 0<br />
<br />
Allow file to be executed :<br />
# chmod +x /usr/local/share/kbd_backlight<br />
<br />
Allow users to change brightness at each boot :<br />
# echo "/bin/bash /usr/local/share/kbd_backlight allowusers" >> /etc/rc.local<br />
<br />
Adding to {{ic|.zshrc}} or {{ic|.bashrc}} :<br />
alias -g "kbd_backlight"="/bin/bash /usr/local/share/kbd_backlight"<br />
allows to easy toggle backlight in terminal :<br />
$ kbd_backlight up<br />
$ kbd_backlight down<br />
$ kbd_backlight max<br />
$ kbd_backlight off<br />
$ kbd_backlight night<br />
$ kbd_backlight 2<br />
$ kbd_backlight show<br />
<br />
And finally, add some convenient keyboard shortcuts [[Extra_Keyboard_Keys_in_Xorg|by the method of your choice]].</div>Mdkelsh