https://wiki.archlinux.org/api.php?action=feedcontributions&user=Mzanetti&feedformat=atomArchWiki - User contributions [en]2024-03-28T11:59:18ZUser contributionsMediaWiki 1.41.0https://wiki.archlinux.org/index.php?title=MacBookPro10,x&diff=244917MacBookPro10,x2013-01-23T18:07:52Z<p>Mzanetti: /* Overview */</p>
<hr />
<div>[[Category:Apple]]<br />
{{Article summary start}}<br />
{{Article summary text|This wiki page should help you in getting your [[Wikipedia:MacBook_Pro#Third_generation_.28Retina.29|MacBook Pro with Retina Display]] to work with Arch Linux.}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|Official Arch Linux Install Guide}}<br />
{{Article summary wiki|Beginners Guide}}<br />
{{Article summary wiki|General Recommendations}}<br />
{{Article summary wiki|MacBook}}<br />
{{Article summary end}}<br />
<br />
== Overview ==<br />
This page should help you setting up ArchLinux on a MacBook Pro 10,1 with Retina display. Most of the steps are the same or very similar to the regular ArchLinux installation. However, because this is very new hardware, the setup requires a few different steps. <br />
The general installation guidelines are descibed in [[MacBook]].<br />
<br />
{{Note| To have all hardware supported, you should run this Notebook with Kernel 3.7 or newer. }}<br />
<br />
== Preparing for the Installation ==<br />
=== Preparing the Hard drive ===<br />
Assuming you want to dual boot with OS X, you have to shrink its partition with the Disk Utility. You can either create your Linux partition directly here, or do that later in Linux during the installation (using {{ic|parted}} and {{ic|mkfs}}).<br />
<br />
=== Using the Thunderbolt to Ethernet adapter ===<br />
The adapter should work out of the box if connected before booting. Thunderbolt hotplugging is not supported (yet?).<br />
<br />
=== Getting wireless firmware ===<br />
In order for the WiFi chip to work, you need to get the firmware for it. You can just copy it from another b43 enabled Arch, extract it from Broadcom's driver using {{Pkg|b43-fwcutter}} or get them through the {{AUR|b43-firmware}} available in the [[AUR]]. In the end you should have a folder called {{ic|b43}} with lots of {{ic|.fw}} files in it.<br />
<br />
== Installation ==<br />
<br />
=== Booting the live image ===<br />
Now, download the latest [[Archboot]] iso, write it to USB and boot from it by selecting it in the Apple boot loader. When it comes to the syslinux boot loader, press {{Keypress|Tab}} to edit the entry and append {{ic|noapic}} or {{ic|nointremap}} to the end to prevent a kernel panic during bootup. Currently (Aug 4, 2012), you also have to add {{ic|nomodeset}}.<br />
<br />
=== Connecting WiFi ===<br />
{{Note| You can skip this if you use the Thunderbolt to ethernet adapter for the installation.}}<br />
After it has finished booting, enter a command line. Copy the entire folder with the firmware for your wireless card to {{ic|(/usr)/lib/firmware/}}. Now you should be able to use {{Pkg|wpa_supplicant}} to connect to your WiFi network.<br />
<br />
=== The installation ===<br />
{{Note|Refer to the [[MacBook]] page if you don't want to have a separate partition for GRUB but rather prefer to use [http://www.rodsbooks.com/refind/ rEFInd] (or [[MacBook#rEFIt|rEFIt]]).}}<br />
Run the installation wizard. When asked to partition your hard drive, create a small HFS partition. This is where you put the standalone GRUB package after the installation.<br />
The rest of the installation is pretty much the same as usual. When choosing the bootloader, select GRUB and install it. Don't worry about any errors, we will create the bootable efi image on our own afterwards.<br />
<br />
After the installation has completed, directly copy the WiFi firmware to the installed system to {{ic|/tmp/install/usr/lib/firmware/}}.<br />
<br />
=== Bootloader ===<br />
<br />
==== Direct EFI booting ====<br />
''See: [[UEFI_Bootloaders]]''<br />
<br />
==== GRUB ====<br />
<br />
Another solution is to install [[GRUB]]. Edit {{ic|/tmp/install/boot/grub/grub.cfg}} and edit the boot entry to load linux-mainline instead of the normal one. Also append {{ic|noapic}} to the kernel line again.<br />
<br />
Now cd into {{ic|/tmp/install/}} and create the GRUB image by calling:<br />
grub-mkstandalone -o grub-standalone-x86_64.efi -d usr/lib/grub/x86_64-efi -O x86_64-efi -C xz boot/grub/grub.cfg<br />
This will create file called {{ic|grub-standalone-x86_64.efi}} which contains GRUB and the config file. It is important to {{ic|cd}} into the right directory to make it pick up the config file and put it into the right place within the image.<br />
Copy this file to the HFS partition you have created earlier. Downside of this method is that you need to repeat this step whenever you want to change the GRUB config.<br />
<br />
Reboot the machine and boot into OS X. The HFS partition should be mounted and the GRUB standalone image in there. Follow the steps on this page to create the files needed to make the Apple boot loader pick up GRUB: http://mjg59.dreamwidth.org/7468.html.<br />
After creating the files, use {{ic|bless}} on the GRUB image on the partition, if you want to boot automatically to Arch, append {{ic|--setBoot}}.<br />
<br />
After another reboot, you should be able to select your installed Arch Linux by keeping the alt button pressed while booting in case you haven't used{{ic| --setBoot}} while blessing.<br />
<br />
== Post installation ==<br />
=== Graphics ===<br />
The Laptop comes with an nVidia and an Intel chip. The Nouveau, the i915 (from 3.6-rc5) and proprietary nvidia (from 302.17) drivers work.<br />
You can install the nvidia driver through {{Pkg|nvidia}} or the AUR package {{AUR|nvidia-beta-all}}.<br />
<br />
Since this device comes with a Retina (HiDPI) display, things are really small with native resolution. There are different ways to work around this "issue":<br />
# Increase the DPI value to get larger fonts (other things like icons may not look great that way) OR<br />
# Lower the screen resolution to 1680x1050 (works fine at least with nouveau drivers), but things look a little bit blurry, of course<br />
<br />
=== Touchpad ===<br />
Because of the integrated button, the synaptics touchpad driver can cause some issues. Adjusting {{AUR|xf86-input-mtrack-git}} should lead to a better end result.<br />
<br />
The following config uses a single touch for left, two for middle, three for right:<br />
Section "InputClass"<br />
MatchIsTouchpad "on"<br />
Identifier "Touchpads"<br />
Driver "mtrack"<br />
Option "Sensitivity" "0.65"<br />
Option "IgnoreThumb" "true"<br />
Option "IgnorePalm" "true"<br />
Option "TapButton1" "1" <br />
Option "TapButton2" "2"<br />
Option "TapButton3" "3"<br />
Option "ClickFinger1" "1"<br />
Option "ClickFinger2" "3"<br />
Option "ClickFinger3" "2"<br />
Option "BottomEdge" "25"<br />
EndSection<br />
<br />
== What doesn't work (early September 2012, 3.6-rc6) ==<br />
<br />
* Suspend mode on lid close with nouveau <s>and i915</s> (does not come out of suspend; blank screen).<br />
<br />
== Discussions ==<br />
<br />
Here are a couple of interesting threads:<br />
* http://ubuntuforums.org/showthread.php?t=2006475<br />
* https://bbs.archlinux.org/viewtopic.php?id=144255&p=1</div>Mzanettihttps://wiki.archlinux.org/index.php?title=MacBookPro10,x&diff=244916MacBookPro10,x2013-01-23T18:07:31Z<p>Mzanetti: /* Overview */</p>
<hr />
<div>[[Category:Apple]]<br />
{{Article summary start}}<br />
{{Article summary text|This wiki page should help you in getting your [[Wikipedia:MacBook_Pro#Third_generation_.28Retina.29|MacBook Pro with Retina Display]] to work with Arch Linux.}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|Official Arch Linux Install Guide}}<br />
{{Article summary wiki|Beginners Guide}}<br />
{{Article summary wiki|General Recommendations}}<br />
{{Article summary wiki|MacBook}}<br />
{{Article summary end}}<br />
<br />
== Overview ==<br />
This page should help you setting up ArchLinux on a MacBook Pro 10,1 with Retina display. Most of the steps are the same or very similar to the regular ArchLinux installation. However, because this is very new hardware, the setup requires a few different steps. <br />
The general installation guidelines are descibed in [[MacBook]].<br />
<br />
{{Note| To have all hardware supported, you should run this Notebook with Kernel >= 3.7. }}<br />
<br />
== Preparing for the Installation ==<br />
=== Preparing the Hard drive ===<br />
Assuming you want to dual boot with OS X, you have to shrink its partition with the Disk Utility. You can either create your Linux partition directly here, or do that later in Linux during the installation (using {{ic|parted}} and {{ic|mkfs}}).<br />
<br />
=== Using the Thunderbolt to Ethernet adapter ===<br />
The adapter should work out of the box if connected before booting. Thunderbolt hotplugging is not supported (yet?).<br />
<br />
=== Getting wireless firmware ===<br />
In order for the WiFi chip to work, you need to get the firmware for it. You can just copy it from another b43 enabled Arch, extract it from Broadcom's driver using {{Pkg|b43-fwcutter}} or get them through the {{AUR|b43-firmware}} available in the [[AUR]]. In the end you should have a folder called {{ic|b43}} with lots of {{ic|.fw}} files in it.<br />
<br />
== Installation ==<br />
<br />
=== Booting the live image ===<br />
Now, download the latest [[Archboot]] iso, write it to USB and boot from it by selecting it in the Apple boot loader. When it comes to the syslinux boot loader, press {{Keypress|Tab}} to edit the entry and append {{ic|noapic}} or {{ic|nointremap}} to the end to prevent a kernel panic during bootup. Currently (Aug 4, 2012), you also have to add {{ic|nomodeset}}.<br />
<br />
=== Connecting WiFi ===<br />
{{Note| You can skip this if you use the Thunderbolt to ethernet adapter for the installation.}}<br />
After it has finished booting, enter a command line. Copy the entire folder with the firmware for your wireless card to {{ic|(/usr)/lib/firmware/}}. Now you should be able to use {{Pkg|wpa_supplicant}} to connect to your WiFi network.<br />
<br />
=== The installation ===<br />
{{Note|Refer to the [[MacBook]] page if you don't want to have a separate partition for GRUB but rather prefer to use [http://www.rodsbooks.com/refind/ rEFInd] (or [[MacBook#rEFIt|rEFIt]]).}}<br />
Run the installation wizard. When asked to partition your hard drive, create a small HFS partition. This is where you put the standalone GRUB package after the installation.<br />
The rest of the installation is pretty much the same as usual. When choosing the bootloader, select GRUB and install it. Don't worry about any errors, we will create the bootable efi image on our own afterwards.<br />
<br />
After the installation has completed, directly copy the WiFi firmware to the installed system to {{ic|/tmp/install/usr/lib/firmware/}}.<br />
<br />
=== Bootloader ===<br />
<br />
==== Direct EFI booting ====<br />
''See: [[UEFI_Bootloaders]]''<br />
<br />
==== GRUB ====<br />
<br />
Another solution is to install [[GRUB]]. Edit {{ic|/tmp/install/boot/grub/grub.cfg}} and edit the boot entry to load linux-mainline instead of the normal one. Also append {{ic|noapic}} to the kernel line again.<br />
<br />
Now cd into {{ic|/tmp/install/}} and create the GRUB image by calling:<br />
grub-mkstandalone -o grub-standalone-x86_64.efi -d usr/lib/grub/x86_64-efi -O x86_64-efi -C xz boot/grub/grub.cfg<br />
This will create file called {{ic|grub-standalone-x86_64.efi}} which contains GRUB and the config file. It is important to {{ic|cd}} into the right directory to make it pick up the config file and put it into the right place within the image.<br />
Copy this file to the HFS partition you have created earlier. Downside of this method is that you need to repeat this step whenever you want to change the GRUB config.<br />
<br />
Reboot the machine and boot into OS X. The HFS partition should be mounted and the GRUB standalone image in there. Follow the steps on this page to create the files needed to make the Apple boot loader pick up GRUB: http://mjg59.dreamwidth.org/7468.html.<br />
After creating the files, use {{ic|bless}} on the GRUB image on the partition, if you want to boot automatically to Arch, append {{ic|--setBoot}}.<br />
<br />
After another reboot, you should be able to select your installed Arch Linux by keeping the alt button pressed while booting in case you haven't used{{ic| --setBoot}} while blessing.<br />
<br />
== Post installation ==<br />
=== Graphics ===<br />
The Laptop comes with an nVidia and an Intel chip. The Nouveau, the i915 (from 3.6-rc5) and proprietary nvidia (from 302.17) drivers work.<br />
You can install the nvidia driver through {{Pkg|nvidia}} or the AUR package {{AUR|nvidia-beta-all}}.<br />
<br />
Since this device comes with a Retina (HiDPI) display, things are really small with native resolution. There are different ways to work around this "issue":<br />
# Increase the DPI value to get larger fonts (other things like icons may not look great that way) OR<br />
# Lower the screen resolution to 1680x1050 (works fine at least with nouveau drivers), but things look a little bit blurry, of course<br />
<br />
=== Touchpad ===<br />
Because of the integrated button, the synaptics touchpad driver can cause some issues. Adjusting {{AUR|xf86-input-mtrack-git}} should lead to a better end result.<br />
<br />
The following config uses a single touch for left, two for middle, three for right:<br />
Section "InputClass"<br />
MatchIsTouchpad "on"<br />
Identifier "Touchpads"<br />
Driver "mtrack"<br />
Option "Sensitivity" "0.65"<br />
Option "IgnoreThumb" "true"<br />
Option "IgnorePalm" "true"<br />
Option "TapButton1" "1" <br />
Option "TapButton2" "2"<br />
Option "TapButton3" "3"<br />
Option "ClickFinger1" "1"<br />
Option "ClickFinger2" "3"<br />
Option "ClickFinger3" "2"<br />
Option "BottomEdge" "25"<br />
EndSection<br />
<br />
== What doesn't work (early September 2012, 3.6-rc6) ==<br />
<br />
* Suspend mode on lid close with nouveau <s>and i915</s> (does not come out of suspend; blank screen).<br />
<br />
== Discussions ==<br />
<br />
Here are a couple of interesting threads:<br />
* http://ubuntuforums.org/showthread.php?t=2006475<br />
* https://bbs.archlinux.org/viewtopic.php?id=144255&p=1</div>Mzanettihttps://wiki.archlinux.org/index.php?title=MacBookPro10,x&diff=244915MacBookPro10,x2013-01-23T18:05:06Z<p>Mzanetti: /* Overview */</p>
<hr />
<div>[[Category:Apple]]<br />
{{Article summary start}}<br />
{{Article summary text|This wiki page should help you in getting your [[Wikipedia:MacBook_Pro#Third_generation_.28Retina.29|MacBook Pro with Retina Display]] to work with Arch Linux.}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|Official Arch Linux Install Guide}}<br />
{{Article summary wiki|Beginners Guide}}<br />
{{Article summary wiki|General Recommendations}}<br />
{{Article summary wiki|MacBook}}<br />
{{Article summary end}}<br />
<br />
== Overview ==<br />
This page should help you setting up ArchLinux on a MacBook Pro 10,1 with Retina display. Most of the steps are the same or very similar to the regular ArchLinux installation. However, because this is very new hardware, the setup requires a few different steps. <br />
The general installation guidelines are descibed in [[MacBook]].<br />
<br />
NOTE: To have all hardware supported, you should run this Notebook with Kernel >= 3.7.<br />
<br />
== Preparing for the Installation ==<br />
=== Preparing the Hard drive ===<br />
Assuming you want to dual boot with OS X, you have to shrink its partition with the Disk Utility. You can either create your Linux partition directly here, or do that later in Linux during the installation (using {{ic|parted}} and {{ic|mkfs}}).<br />
<br />
=== Using the Thunderbolt to Ethernet adapter ===<br />
The adapter should work out of the box if connected before booting. Thunderbolt hotplugging is not supported (yet?).<br />
<br />
=== Getting wireless firmware ===<br />
In order for the WiFi chip to work, you need to get the firmware for it. You can just copy it from another b43 enabled Arch, extract it from Broadcom's driver using {{Pkg|b43-fwcutter}} or get them through the {{AUR|b43-firmware}} available in the [[AUR]]. In the end you should have a folder called {{ic|b43}} with lots of {{ic|.fw}} files in it.<br />
<br />
== Installation ==<br />
<br />
=== Booting the live image ===<br />
Now, download the latest [[Archboot]] iso, write it to USB and boot from it by selecting it in the Apple boot loader. When it comes to the syslinux boot loader, press {{Keypress|Tab}} to edit the entry and append {{ic|noapic}} or {{ic|nointremap}} to the end to prevent a kernel panic during bootup. Currently (Aug 4, 2012), you also have to add {{ic|nomodeset}}.<br />
<br />
=== Connecting WiFi ===<br />
{{Note| You can skip this if you use the Thunderbolt to ethernet adapter for the installation.}}<br />
After it has finished booting, enter a command line. Copy the entire folder with the firmware for your wireless card to {{ic|(/usr)/lib/firmware/}}. Now you should be able to use {{Pkg|wpa_supplicant}} to connect to your WiFi network.<br />
<br />
=== The installation ===<br />
{{Note|Refer to the [[MacBook]] page if you don't want to have a separate partition for GRUB but rather prefer to use [http://www.rodsbooks.com/refind/ rEFInd] (or [[MacBook#rEFIt|rEFIt]]).}}<br />
Run the installation wizard. When asked to partition your hard drive, create a small HFS partition. This is where you put the standalone GRUB package after the installation.<br />
The rest of the installation is pretty much the same as usual. When choosing the bootloader, select GRUB and install it. Don't worry about any errors, we will create the bootable efi image on our own afterwards.<br />
<br />
After the installation has completed, directly copy the WiFi firmware to the installed system to {{ic|/tmp/install/usr/lib/firmware/}}.<br />
<br />
=== Bootloader ===<br />
<br />
==== Direct EFI booting ====<br />
''See: [[UEFI_Bootloaders]]''<br />
<br />
==== GRUB ====<br />
<br />
Another solution is to install [[GRUB]]. Edit {{ic|/tmp/install/boot/grub/grub.cfg}} and edit the boot entry to load linux-mainline instead of the normal one. Also append {{ic|noapic}} to the kernel line again.<br />
<br />
Now cd into {{ic|/tmp/install/}} and create the GRUB image by calling:<br />
grub-mkstandalone -o grub-standalone-x86_64.efi -d usr/lib/grub/x86_64-efi -O x86_64-efi -C xz boot/grub/grub.cfg<br />
This will create file called {{ic|grub-standalone-x86_64.efi}} which contains GRUB and the config file. It is important to {{ic|cd}} into the right directory to make it pick up the config file and put it into the right place within the image.<br />
Copy this file to the HFS partition you have created earlier. Downside of this method is that you need to repeat this step whenever you want to change the GRUB config.<br />
<br />
Reboot the machine and boot into OS X. The HFS partition should be mounted and the GRUB standalone image in there. Follow the steps on this page to create the files needed to make the Apple boot loader pick up GRUB: http://mjg59.dreamwidth.org/7468.html.<br />
After creating the files, use {{ic|bless}} on the GRUB image on the partition, if you want to boot automatically to Arch, append {{ic|--setBoot}}.<br />
<br />
After another reboot, you should be able to select your installed Arch Linux by keeping the alt button pressed while booting in case you haven't used{{ic| --setBoot}} while blessing.<br />
<br />
== Post installation ==<br />
=== Graphics ===<br />
The Laptop comes with an nVidia and an Intel chip. The Nouveau, the i915 (from 3.6-rc5) and proprietary nvidia (from 302.17) drivers work.<br />
You can install the nvidia driver through {{Pkg|nvidia}} or the AUR package {{AUR|nvidia-beta-all}}.<br />
<br />
Since this device comes with a Retina (HiDPI) display, things are really small with native resolution. There are different ways to work around this "issue":<br />
# Increase the DPI value to get larger fonts (other things like icons may not look great that way) OR<br />
# Lower the screen resolution to 1680x1050 (works fine at least with nouveau drivers), but things look a little bit blurry, of course<br />
<br />
=== Touchpad ===<br />
Because of the integrated button, the synaptics touchpad driver can cause some issues. Adjusting {{AUR|xf86-input-mtrack-git}} should lead to a better end result.<br />
<br />
The following config uses a single touch for left, two for middle, three for right:<br />
Section "InputClass"<br />
MatchIsTouchpad "on"<br />
Identifier "Touchpads"<br />
Driver "mtrack"<br />
Option "Sensitivity" "0.65"<br />
Option "IgnoreThumb" "true"<br />
Option "IgnorePalm" "true"<br />
Option "TapButton1" "1" <br />
Option "TapButton2" "2"<br />
Option "TapButton3" "3"<br />
Option "ClickFinger1" "1"<br />
Option "ClickFinger2" "3"<br />
Option "ClickFinger3" "2"<br />
Option "BottomEdge" "25"<br />
EndSection<br />
<br />
== What doesn't work (early September 2012, 3.6-rc6) ==<br />
<br />
* Suspend mode on lid close with nouveau <s>and i915</s> (does not come out of suspend; blank screen).<br />
<br />
== Discussions ==<br />
<br />
Here are a couple of interesting threads:<br />
* http://ubuntuforums.org/showthread.php?t=2006475<br />
* https://bbs.archlinux.org/viewtopic.php?id=144255&p=1</div>Mzanettihttps://wiki.archlinux.org/index.php?title=MacBookPro10,x&diff=244914MacBookPro10,x2013-01-23T18:02:35Z<p>Mzanetti: /* What doesn't work (early September 2012, 3.6-rc6) */</p>
<hr />
<div>[[Category:Apple]]<br />
{{Article summary start}}<br />
{{Article summary text|This wiki page should help you in getting your [[Wikipedia:MacBook_Pro#Third_generation_.28Retina.29|MacBook Pro with Retina Display]] to work with Arch Linux.}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|Official Arch Linux Install Guide}}<br />
{{Article summary wiki|Beginners Guide}}<br />
{{Article summary wiki|General Recommendations}}<br />
{{Article summary wiki|MacBook}}<br />
{{Article summary end}}<br />
<br />
== Overview ==<br />
This page should help you setting up ArchLinux on a MacBook Pro 10,1 with Retina display. Most of the steps are the same or very similar to the regular ArchLinux installation. However, because this is very new hardware, the setup requires a few different steps. <br />
The general installation guidelines are descibed in [[MacBook]].<br />
<br />
== Preparing for the Installation ==<br />
=== Preparing the Hard drive ===<br />
Assuming you want to dual boot with OS X, you have to shrink its partition with the Disk Utility. You can either create your Linux partition directly here, or do that later in Linux during the installation (using {{ic|parted}} and {{ic|mkfs}}).<br />
<br />
=== Using the Thunderbolt to Ethernet adapter ===<br />
The adapter should work out of the box if connected before booting. Thunderbolt hotplugging is not supported (yet?).<br />
<br />
=== Getting wireless firmware ===<br />
In order for the WiFi chip to work, you need to get the firmware for it. You can just copy it from another b43 enabled Arch, extract it from Broadcom's driver using {{Pkg|b43-fwcutter}} or get them through the {{AUR|b43-firmware}} available in the [[AUR]]. In the end you should have a folder called {{ic|b43}} with lots of {{ic|.fw}} files in it.<br />
<br />
== Installation ==<br />
<br />
=== Booting the live image ===<br />
Now, download the latest [[Archboot]] iso, write it to USB and boot from it by selecting it in the Apple boot loader. When it comes to the syslinux boot loader, press {{Keypress|Tab}} to edit the entry and append {{ic|noapic}} or {{ic|nointremap}} to the end to prevent a kernel panic during bootup. Currently (Aug 4, 2012), you also have to add {{ic|nomodeset}}.<br />
<br />
=== Connecting WiFi ===<br />
{{Note| You can skip this if you use the Thunderbolt to ethernet adapter for the installation.}}<br />
After it has finished booting, enter a command line. Copy the entire folder with the firmware for your wireless card to {{ic|(/usr)/lib/firmware/}}. Now you should be able to use {{Pkg|wpa_supplicant}} to connect to your WiFi network.<br />
<br />
=== The installation ===<br />
{{Note|Refer to the [[MacBook]] page if you don't want to have a separate partition for GRUB but rather prefer to use [http://www.rodsbooks.com/refind/ rEFInd] (or [[MacBook#rEFIt|rEFIt]]).}}<br />
Run the installation wizard. When asked to partition your hard drive, create a small HFS partition. This is where you put the standalone GRUB package after the installation.<br />
The rest of the installation is pretty much the same as usual. When choosing the bootloader, select GRUB and install it. Don't worry about any errors, we will create the bootable efi image on our own afterwards.<br />
<br />
After the installation has completed, directly copy the WiFi firmware to the installed system to {{ic|/tmp/install/usr/lib/firmware/}}.<br />
<br />
=== Bootloader ===<br />
<br />
==== Direct EFI booting ====<br />
''See: [[UEFI_Bootloaders]]''<br />
<br />
==== GRUB ====<br />
<br />
Another solution is to install [[GRUB]]. Edit {{ic|/tmp/install/boot/grub/grub.cfg}} and edit the boot entry to load linux-mainline instead of the normal one. Also append {{ic|noapic}} to the kernel line again.<br />
<br />
Now cd into {{ic|/tmp/install/}} and create the GRUB image by calling:<br />
grub-mkstandalone -o grub-standalone-x86_64.efi -d usr/lib/grub/x86_64-efi -O x86_64-efi -C xz boot/grub/grub.cfg<br />
This will create file called {{ic|grub-standalone-x86_64.efi}} which contains GRUB and the config file. It is important to {{ic|cd}} into the right directory to make it pick up the config file and put it into the right place within the image.<br />
Copy this file to the HFS partition you have created earlier. Downside of this method is that you need to repeat this step whenever you want to change the GRUB config.<br />
<br />
Reboot the machine and boot into OS X. The HFS partition should be mounted and the GRUB standalone image in there. Follow the steps on this page to create the files needed to make the Apple boot loader pick up GRUB: http://mjg59.dreamwidth.org/7468.html.<br />
After creating the files, use {{ic|bless}} on the GRUB image on the partition, if you want to boot automatically to Arch, append {{ic|--setBoot}}.<br />
<br />
After another reboot, you should be able to select your installed Arch Linux by keeping the alt button pressed while booting in case you haven't used{{ic| --setBoot}} while blessing.<br />
<br />
== Post installation ==<br />
=== Graphics ===<br />
The Laptop comes with an nVidia and an Intel chip. The Nouveau, the i915 (from 3.6-rc5) and proprietary nvidia (from 302.17) drivers work.<br />
You can install the nvidia driver through {{Pkg|nvidia}} or the AUR package {{AUR|nvidia-beta-all}}.<br />
<br />
Since this device comes with a Retina (HiDPI) display, things are really small with native resolution. There are different ways to work around this "issue":<br />
# Increase the DPI value to get larger fonts (other things like icons may not look great that way) OR<br />
# Lower the screen resolution to 1680x1050 (works fine at least with nouveau drivers), but things look a little bit blurry, of course<br />
<br />
=== Touchpad ===<br />
Because of the integrated button, the synaptics touchpad driver can cause some issues. Adjusting {{AUR|xf86-input-mtrack-git}} should lead to a better end result.<br />
<br />
The following config uses a single touch for left, two for middle, three for right:<br />
Section "InputClass"<br />
MatchIsTouchpad "on"<br />
Identifier "Touchpads"<br />
Driver "mtrack"<br />
Option "Sensitivity" "0.65"<br />
Option "IgnoreThumb" "true"<br />
Option "IgnorePalm" "true"<br />
Option "TapButton1" "1" <br />
Option "TapButton2" "2"<br />
Option "TapButton3" "3"<br />
Option "ClickFinger1" "1"<br />
Option "ClickFinger2" "3"<br />
Option "ClickFinger3" "2"<br />
Option "BottomEdge" "25"<br />
EndSection<br />
<br />
== What doesn't work (early September 2012, 3.6-rc6) ==<br />
<br />
* Suspend mode on lid close with nouveau <s>and i915</s> (does not come out of suspend; blank screen).<br />
<br />
== Discussions ==<br />
<br />
Here are a couple of interesting threads:<br />
* http://ubuntuforums.org/showthread.php?t=2006475<br />
* https://bbs.archlinux.org/viewtopic.php?id=144255&p=1</div>Mzanettihttps://wiki.archlinux.org/index.php?title=MacBookPro10,x&diff=233754MacBookPro10,x2012-11-04T22:56:36Z<p>Mzanetti: /* Preparing for the Installation */</p>
<hr />
<div>[[Category:Apple]]<br />
{{Article summary start}}<br />
{{Article summary text|This wiki page should help you in getting your MacBook Pro with Retina Display to work with ArchLinux}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|Official Arch Linux Install Guide}}<br />
{{Article summary wiki|Beginners Guide}}<br />
{{Article summary wiki|General Recommendations}}<br />
{{Article summary wiki|MacBook}}<br />
{{Article summary end}}<br />
<br />
== Overview ==<br />
This page should help you setting up ArchLinux on a MacBook Pro 10,1 with Retina display. Most of the steps are the same or very similar to the regular ArchLinux installation. However, because this is very new hardware, the setup requires a few different steps. <br />
The general installation guidelines are descibed in [[MacBook]].<br />
<br />
== Preparing for the Installation ==<br />
=== Preparing the Hard drive ===<br />
Assuming you want to have a dual boot with Mac OS X, boot into Mac OS and shrink it's partition with the Disk Utility. You can either create your Linux partition directly here, or do that later in Linux during the installation (using parted and mkfs).<br />
<br />
=== Using the Thunderbolt to Ethernet adapter ===<br />
The adapter should work out of the box if connected before booting. Thunderbolt hotplug is not supported (yet?).<br />
<br />
=== Getting wireless firmware ===<br />
In order for the WiFi chip to work, you need to get the firmware for it. There are various ways to do so. You can juts copy it from another b43 enabled archlinux box, extract it from Broadcoms driver using b43-fwcutter or get them through the b43-firmware package[https://aur.archlinux.org/packages.php?ID=21690] in AUR. In the end you should have a folder "b43" with lots of .fw files in it.<br />
<br />
== Installation ==<br />
<br />
=== Booting the live image ===<br />
Now, download the latest [[Archboot]] iso, write it to USB and boot from it by selecting it in the Apple boot loader. When it comes to the syslinux boot loader, press [tab] to edit the entry and append "noapic" or "nointremap" to the end to prevent a kernel panic during bootup. Currently (august 4, 2012), you also have to add "nomodeset".<br />
<br />
=== Connecting WiFi ===<br />
{{Note| You can skip this if you use the Thunderbolt to ethernet adapter for the installation.}}<br />
After it has finished booting, enter a command line. Copy the entire folder with the firmware for your wireless card to /lib/firmware/ (with folder, but not only the included files). Now you should be able to use wpa_supplicant to connect to your WiFi network.<br />
<br />
=== The installation ===<br />
{{Note| There are also other ways of booting the kernel. Refer to the [[MacBook]] page if you don't want to have a separate partition for grub but rather prefer to use refind (or refit). It works very well with refind without hacks and problems. You can ignore the following lines if you go the refind-way.}}<br />
Run the installation wizard. When asked to partition your hard drive, create a small HFS partition. This is where you put the standalone grub package after the installation.<br />
The rest of the installation is pretty much the same as usual. When choosing the bootloader, select grub2 and install it. Don't worry about any errors, we will create the bootable efi image on our own afterwards.<br />
<br />
After the installation has completed, directly copy the WiFi firmware to the installed system to /tmp/install/usr/lib/firmware.<br />
<br />
=== Bootloader ===<br />
<br />
==== Direct EFI booting ====<br />
<br />
You can directly boot from the kernel, in which case there is no bootloader per se (the kernel is its own bootloader). This is described elsewhere in [[UEFI_Bootloaders]] section EFISTUB. In a nutshell, you have to put kernel and initramfs in a linux directory of your EFI partition (sda1), together with a file containing the kernel boot parameters. If you use refind, you can follow the section "Setting up EFISTUB", but create the refind_linux.conf instead of the linux.conf file. If you have installed in OSX refind with the install.sh script, a nice arch-icon should show up when you reboot the next time. You can ignore the next section of this page (GRUB-setup).<br />
<br />
==== Grub2 ====<br />
<br />
Another solution is to install GRUB2. Edit /tmp/install/boot/grub/grub.cfg and edit the boot entry to load linux-mainline instead of the normal one. Also append "noapic" to the kernel line again.<br />
<br />
Now cd into /tmp/install and create the grub image by calling:<br />
grub-mkstandalone -o grub-standalone-x86_64.efi -d usr/lib/grub/x86_64-efi -O x86_64-efi -C xz boot/grub/grub.cfg<br />
This will create file called grub-standalone-x86_64.efi which contains grub and the config file. It is important to do cd into the right directory to make it pick up the config file and put it into the right place within the image.<br />
Copy this file to the HFS partition you have created earlier. Downside of this method is that you need to repeat this step whenever you want to change the grub config.<br />
<br />
Reboot the machine and boot into Mac OS. The HFS partition should be mounted and the grub standalone image in there. Follow the steps on this page to create the files needed to make the Apple boot loader pick up grub: http://mjg59.dreamwidth.org/7468.html.<br />
After creating the files, use "bless" on the grub image on the partition, if you want to boot automatically to Arch, append --setBoot.<br />
<br />
After another reboot, you should be able to select your installed Arch Linux by keeping the alt button pressed while booting in case you haven't used --setBoot while blessing.<br />
<br />
== Post installation ==<br />
=== Graphics ===<br />
The Laptop comes with an nVidia and a Intel chip. The noveuau, the i915 (from 3.6-rc5) and proprietary nvidia (from 302.17) drivers work.<br />
You can install the proprietary nvidia driver from [testing] (recommended) or from the AUR nvidia-beta-all (not recommended to download it from nvidia website; always install things through pacman to avoid file conflicts).<br />
<br />
Since this device comes with a Retina (HiDPI) display, things are really small with native resolution. There are different ways to work around this "issue":<br />
* increase the DPI value to get larger fonts, but other things like icons may not look great that way<br />
* lower the screen resolution to 1680x1050 (works fine at least with noveau drivers), but things look a little bit blurry of course that way<br />
* (Have you found any other good solution for that? Please add or improve it above.)<br />
<br />
=== Touchpad ===<br />
Because of the integrated button, the synaptics touchpad driver caused issues for me. Installing [https://aur.archlinux.org/packages.php?ID=48505 xf86-input-mtrack] and adjusting its config produced way better results.<br />
<br />
The following config works pretty good for me (one touch for left, two for middle, three for right (make sure that you spread your fingers a little bit)):<br />
Section "InputClass"<br />
MatchIsTouchpad "on"<br />
Identifier "Touchpads"<br />
Driver "mtrack"<br />
Option "Sensitivity" "0.65"<br />
Option "IgnoreThumb" "true"<br />
Option "IgnorePalm" "true"<br />
Option "TapButton1" "1" <br />
Option "TapButton2" "2"<br />
Option "TapButton3" "3"<br />
Option "ClickFinger1" "1"<br />
Option "ClickFinger2" "3"<br />
Option "ClickFinger3" "2"<br />
Option "BottomEdge" "25"<br />
EndSection<br />
<br />
=== Suspend ===<br />
Suspend should work fine.<br />
<br />
== What doesn't work (early September 2012, 3.6-rc6) ==<br />
<br />
* Microphone (white noise at all times); should be fixed with kernel 3.7 (http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=commitdiff;h=ef596a57b4d7d8b258beb570ed309ef85bf24dd1)<br />
* Suspend mode on lid close with nouveau <s>and i915</s> (does not come out of suspend; blank screen).<br />
<s><br />
* Nouveau driver (screen corruption; mode is correct) < solved ~ august 12, 2012.<br />
* i915 driver (screen corruption; mode is correct) < Solved august 13, 2012 (http://lists.freedesktop.org/archives/intel-gfx/2012-August/019522.html)<br />
* Backlight with nouveau and nvidia drivers<br />
* GMUX (not recognized by GMUX driver) < Solved august 13, 2012. Also makes suspend/resume w/ intel driver work (http://luna.vmars.tuwien.ac.at/~froe...p/apple-gmux.c)</s><br />
<br />
== Discussions ==<br />
<br />
Here are a couple of interesting threads:<br />
* http://ubuntuforums.org/showthread.php?t=2006475 page 8 and beyond<br />
* https://bbs.archlinux.org/viewtopic.php?id=144255&p=1</div>Mzanettihttps://wiki.archlinux.org/index.php?title=MacBookPro10,x&diff=233752MacBookPro10,x2012-11-04T22:54:38Z<p>Mzanetti: /* Connecting WiFi */</p>
<hr />
<div>[[Category:Apple]]<br />
{{Article summary start}}<br />
{{Article summary text|This wiki page should help you in getting your MacBook Pro with Retina Display to work with ArchLinux}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|Official Arch Linux Install Guide}}<br />
{{Article summary wiki|Beginners Guide}}<br />
{{Article summary wiki|General Recommendations}}<br />
{{Article summary wiki|MacBook}}<br />
{{Article summary end}}<br />
<br />
== Overview ==<br />
This page should help you setting up ArchLinux on a MacBook Pro 10,1 with Retina display. Most of the steps are the same or very similar to the regular ArchLinux installation. However, because this is very new hardware, the setup requires a few different steps. <br />
The general installation guidelines are descibed in [[MacBook]].<br />
<br />
== Preparing for the Installation ==<br />
=== Preparing the Hard drive ===<br />
Assuming you want to have a dual boot with Mac OS X, boot into Mac OS and shrink it's partition with the Disk Utility. You can either create your Linux partition directly here, or do that later in Linux during the installation (using parted and mkfs).<br />
<br />
=== Getting wireless firmware ===<br />
In order for the WiFi chip to work, you need to get the firmware for it. There are various ways to do so. You can juts copy it from another b43 enabled archlinux box, extract it from Broadcoms driver using b43-fwcutter or get them through the b43-firmware package[https://aur.archlinux.org/packages.php?ID=21690] in AUR. In the end you should have a folder "b43" with lots of .fw files in it.<br />
<br />
== Installation ==<br />
<br />
=== Booting the live image ===<br />
Now, download the latest [[Archboot]] iso, write it to USB and boot from it by selecting it in the Apple boot loader. When it comes to the syslinux boot loader, press [tab] to edit the entry and append "noapic" or "nointremap" to the end to prevent a kernel panic during bootup. Currently (august 4, 2012), you also have to add "nomodeset".<br />
<br />
=== Connecting WiFi ===<br />
{{Note| You can skip this if you use the Thunderbolt to ethernet adapter for the installation.}}<br />
After it has finished booting, enter a command line. Copy the entire folder with the firmware for your wireless card to /lib/firmware/ (with folder, but not only the included files). Now you should be able to use wpa_supplicant to connect to your WiFi network.<br />
<br />
=== The installation ===<br />
{{Note| There are also other ways of booting the kernel. Refer to the [[MacBook]] page if you don't want to have a separate partition for grub but rather prefer to use refind (or refit). It works very well with refind without hacks and problems. You can ignore the following lines if you go the refind-way.}}<br />
Run the installation wizard. When asked to partition your hard drive, create a small HFS partition. This is where you put the standalone grub package after the installation.<br />
The rest of the installation is pretty much the same as usual. When choosing the bootloader, select grub2 and install it. Don't worry about any errors, we will create the bootable efi image on our own afterwards.<br />
<br />
After the installation has completed, directly copy the WiFi firmware to the installed system to /tmp/install/usr/lib/firmware.<br />
<br />
=== Bootloader ===<br />
<br />
==== Direct EFI booting ====<br />
<br />
You can directly boot from the kernel, in which case there is no bootloader per se (the kernel is its own bootloader). This is described elsewhere in [[UEFI_Bootloaders]] section EFISTUB. In a nutshell, you have to put kernel and initramfs in a linux directory of your EFI partition (sda1), together with a file containing the kernel boot parameters. If you use refind, you can follow the section "Setting up EFISTUB", but create the refind_linux.conf instead of the linux.conf file. If you have installed in OSX refind with the install.sh script, a nice arch-icon should show up when you reboot the next time. You can ignore the next section of this page (GRUB-setup).<br />
<br />
==== Grub2 ====<br />
<br />
Another solution is to install GRUB2. Edit /tmp/install/boot/grub/grub.cfg and edit the boot entry to load linux-mainline instead of the normal one. Also append "noapic" to the kernel line again.<br />
<br />
Now cd into /tmp/install and create the grub image by calling:<br />
grub-mkstandalone -o grub-standalone-x86_64.efi -d usr/lib/grub/x86_64-efi -O x86_64-efi -C xz boot/grub/grub.cfg<br />
This will create file called grub-standalone-x86_64.efi which contains grub and the config file. It is important to do cd into the right directory to make it pick up the config file and put it into the right place within the image.<br />
Copy this file to the HFS partition you have created earlier. Downside of this method is that you need to repeat this step whenever you want to change the grub config.<br />
<br />
Reboot the machine and boot into Mac OS. The HFS partition should be mounted and the grub standalone image in there. Follow the steps on this page to create the files needed to make the Apple boot loader pick up grub: http://mjg59.dreamwidth.org/7468.html.<br />
After creating the files, use "bless" on the grub image on the partition, if you want to boot automatically to Arch, append --setBoot.<br />
<br />
After another reboot, you should be able to select your installed Arch Linux by keeping the alt button pressed while booting in case you haven't used --setBoot while blessing.<br />
<br />
== Post installation ==<br />
=== Graphics ===<br />
The Laptop comes with an nVidia and a Intel chip. The noveuau, the i915 (from 3.6-rc5) and proprietary nvidia (from 302.17) drivers work.<br />
You can install the proprietary nvidia driver from [testing] (recommended) or from the AUR nvidia-beta-all (not recommended to download it from nvidia website; always install things through pacman to avoid file conflicts).<br />
<br />
Since this device comes with a Retina (HiDPI) display, things are really small with native resolution. There are different ways to work around this "issue":<br />
* increase the DPI value to get larger fonts, but other things like icons may not look great that way<br />
* lower the screen resolution to 1680x1050 (works fine at least with noveau drivers), but things look a little bit blurry of course that way<br />
* (Have you found any other good solution for that? Please add or improve it above.)<br />
<br />
=== Touchpad ===<br />
Because of the integrated button, the synaptics touchpad driver caused issues for me. Installing [https://aur.archlinux.org/packages.php?ID=48505 xf86-input-mtrack] and adjusting its config produced way better results.<br />
<br />
The following config works pretty good for me (one touch for left, two for middle, three for right (make sure that you spread your fingers a little bit)):<br />
Section "InputClass"<br />
MatchIsTouchpad "on"<br />
Identifier "Touchpads"<br />
Driver "mtrack"<br />
Option "Sensitivity" "0.65"<br />
Option "IgnoreThumb" "true"<br />
Option "IgnorePalm" "true"<br />
Option "TapButton1" "1" <br />
Option "TapButton2" "2"<br />
Option "TapButton3" "3"<br />
Option "ClickFinger1" "1"<br />
Option "ClickFinger2" "3"<br />
Option "ClickFinger3" "2"<br />
Option "BottomEdge" "25"<br />
EndSection<br />
<br />
=== Suspend ===<br />
Suspend should work fine.<br />
<br />
== What doesn't work (early September 2012, 3.6-rc6) ==<br />
<br />
* Microphone (white noise at all times); should be fixed with kernel 3.7 (http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=commitdiff;h=ef596a57b4d7d8b258beb570ed309ef85bf24dd1)<br />
* Suspend mode on lid close with nouveau <s>and i915</s> (does not come out of suspend; blank screen).<br />
<s><br />
* Nouveau driver (screen corruption; mode is correct) < solved ~ august 12, 2012.<br />
* i915 driver (screen corruption; mode is correct) < Solved august 13, 2012 (http://lists.freedesktop.org/archives/intel-gfx/2012-August/019522.html)<br />
* Backlight with nouveau and nvidia drivers<br />
* GMUX (not recognized by GMUX driver) < Solved august 13, 2012. Also makes suspend/resume w/ intel driver work (http://luna.vmars.tuwien.ac.at/~froe...p/apple-gmux.c)</s><br />
<br />
== Discussions ==<br />
<br />
Here are a couple of interesting threads:<br />
* http://ubuntuforums.org/showthread.php?t=2006475 page 8 and beyond<br />
* https://bbs.archlinux.org/viewtopic.php?id=144255&p=1</div>Mzanettihttps://wiki.archlinux.org/index.php?title=MacBookPro10,x&diff=217885MacBookPro10,x2012-08-15T00:07:41Z<p>Mzanetti: /* Suspend */</p>
<hr />
<div>[[Category:Apple]]<br />
{{Article summary start}}<br />
{{Article summary text|This wiki page should help you in getting your MacBook Pro with Retina Display to work with ArchLinux}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|Official Arch Linux Install Guide}}<br />
{{Article summary wiki|Beginners Guide}}<br />
{{Article summary wiki|General Recommendations}}<br />
{{Article summary wiki|MacBook}}<br />
{{Article summary end}}<br />
<br />
== Overview ==<br />
This page should help you setting up ArchLinux on a MacBook Pro 10,1 with Retina display. Most of the steps are the same or very similar to the regular ArchLinux installation. However, because this is very new hardware, the setup requires a few different steps. <br />
The general installation guidelines are descibed in [[MacBook]].<br />
<br />
== Preparing for the Installation ==<br />
=== Preparing the Hard drive ===<br />
Assuming you want to have a dual boot with Mac OS X, boot into Mac OS and shrink it's partition with the Disk Utility. You can either create your Linux partition directly here, or do that later in Linux during the installation (using parted and mkfs).<br />
<br />
=== Getting wireless firmware ===<br />
In order for the WiFi chip to work, you need to get the firmware for it. There are various ways to do so. You can juts copy it from another b43 enabled archlinux box, extract it from Broadcoms driver using b43-fwcutter or get them through the b43-firmware package[https://aur.archlinux.org/packages.php?ID=21690] in AUR. In the end you should have a folder "b43" with lots of .fw files in it.<br />
<br />
== Installation ==<br />
<br />
=== Booting the live image ===<br />
Now, download the latest [[Archboot]] iso, write it to USB and boot from it by selecting it in the Apple boot loader. When it comes to the syslinux boot loader, press [tab] to edit the entry and append "noapic" or "nointremap" to the end to prevent a kernel panic during bootup. Currently (august 4, 2012), you also have to add "nomodeset".<br />
<br />
=== Connecting WiFi ===<br />
{{Note| You can skip this if you use the Thunderbold to Ethernet or USB to ethernet adapter for the installation.}}<br />
After it has finished booting, enter a command line. Copy the entire folder with the firmware for your wireless card to /lib/firmware/. Now you should be able to use wpa_supplicant to connect to your WiFi network.<br />
<br />
=== The installation ===<br />
Run the installation wizard. When asked to partition your hard drive, create a small HFS partition. This is where you put the standalone grub package after the installation.<br />
{{Note| There are also other ways of booting the kernel. Refer to the [[MacBook]] page if you don't want to have a separate partition for grub but rather prefer to use refit/refind}}<br />
The rest of the installation is pretty much the same as usual. When choosing the bootloader, select grub2 and install it. Don't worry about any errors, we will create the bootable efi image on our own afterwards.<br />
<br />
After the installation has completed, directly copy the WiFi firmware to the installed system to /tmp/install/usr/lib/firmware.<br />
<br />
=== update the kernel ===<br />
Best results are obtained with the 3.5 kernel. To date, you can install it from [testing] or from the AUR linux-mainline. To get keyboard backlight and Bluetooth working, apply [http://follefuder.org/mbp10-3.5.patch this patch].<br />
<br />
=== Bootloader ===<br />
<br />
==== Direct EFI booting ====<br />
<br />
You can directly boot from the kernel, in which case there is no bootloader per se (the kernel is its own bootloader). This is described elsewhere in [[UEFI_Bootloaders]] section EFISTUB. In a nutshell, you have to put kernel and initramfs in a linux directory of your EFI partition (sda1), together with a file containing the kernel boot parameters.<br />
<br />
==== Grub2 ====<br />
<br />
Another solution is to install GRUB2. Edit /tmp/install/boot/grub/grub.cfg and edit the boot entry to load linux-mainline instead of the normal one. Also append "noapic" to the kernel line again.<br />
<br />
Now cd into /tmp/install and create the grub image by calling:<br />
grub-mkstandalone -o grub-standalone-x86_64.efi -d usr/lib/grub/x86_64-efi -O x86_64-efi -C xz boot/grub/grub.cfg<br />
This will create file called grub-standalone-x86_64.efi which contains grub and the config file. It is important to do cd into the right directory to make it pick up the config file and put it into the right place within the image.<br />
Copy this file to the HFS partition you have created earlier. Downside of this method is that you need to repeat this step whenever you want to change the grub config.<br />
<br />
Reboot the machine and boot into Mac OS. The HFS partition should be mounted and the grub standalone image in there. Follow the steps on this page to create the files needed to make the Apple boot loader pick up grub: http://mjg59.dreamwidth.org/7468.html.<br />
After creating the files, use "bless" on the grub image on the partition, if you want to boot automatically to Arch, append --setBoot.<br />
<br />
After another reboot, you should be able to select your installed Arch Linux by keeping the alt button pressed while booting in case you haven't used --setBoot while blessing.<br />
<br />
== Post installation ==<br />
=== Graphics ===<br />
The Laptop comes with an nVidia and a Intel chip. To date (august 4, 2012), the nouveau and intel drivers result in corrupted graphics. The nvidia proprietary driver works though (>=302-17). You can install it from [testing] (recommended) or from the AUR nvidia-beta-all, or download the nVidia installer from their website (not recommended, always install things through pacman to avoid file conflicts).<br />
<br />
=== Touchpad ===<br />
Because of the integrated button, the synaptics touchpad driver caused issues for me. Installing xf86-input-mtrack and adjusting its config produced way better results.<br />
<br />
=== Suspend ===<br />
Suspend should work fine with the nvidia drivers. In case you encounter problems with resuming, try the --quirk-dpms-on quirk. You can add a "99local" file in /etc/pm/config.d/ with the following content:<br />
<nowiki>DISPLAY_QUIRK_DPMS_ON="true"<br />
QUIRKOPTS="true"</nowiki><br />
<br />
== What doesn't work (early August 2012) ==<br />
<br />
* Nouveau driver (screen corruption; mode is correct) < solved ~ august 12, 2012.<br />
* i915 driver (screen corruption; mode is correct) < Solved august 13, 2012 (http://lists.freedesktop.org/archives/intel-gfx/2012-August/019522.html)<br />
* Backlight with nouveau and nvidia drivers<br />
* GMUX (not recognized by GMUX driver) < Solved august 13, 2012. Also makes suspend/resume w/ intel driver work (http://luna.vmars.tuwien.ac.at/~froe...p/apple-gmux.c)<br />
* Microphone (white noise at all times)<br />
* Suspend mode on lid close with nouveau and i915 (does not come out of suspend; blank screen). Solved on i915, see above.<br />
<br />
== Discussions ==<br />
<br />
Here are a couple of interesting threads:<br />
* http://ubuntuforums.org/showthread.php?t=2006475 page 8 and beyond<br />
* https://bbs.archlinux.org/viewtopic.php?id=144255&p=1</div>Mzanettihttps://wiki.archlinux.org/index.php?title=MacBookPro10,x&diff=216380MacBookPro10,x2012-08-03T21:58:04Z<p>Mzanetti: /* Touchpad */</p>
<hr />
<div>[[Category:Apple]]<br />
{{Article summary start}}<br />
{{Article summary text|This wiki page should help you in getting your MacBook Pro with Retina Display to work with ArchLinux}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|Official Arch Linux Install Guide}}<br />
{{Article summary wiki|Beginners Guide}}<br />
{{Article summary wiki|General Recommendations}}<br />
{{Article summary wiki|MacBook}}<br />
{{Article summary end}}<br />
<br />
== Overview ==<br />
This page should help you setting up ArchLinux on a MacBook Pro 10,1 with Retina display. Most of the steps are the same or very similar to the regular ArchLinux installation. However, because this is very new hardware, the setup requires a few different steps. In general it is also helpful to check out also other wiki pages like the [[MacBook]] one.<br />
<br />
== Preparing for the Installation ==<br />
=== Preparing the Hard drive ===<br />
Assuming you want to have a dual boot with Mac OS X, boot into Mac OS and shrink it's partition with the Disk Utility. You can either create your Linux partition directly here, or do that later through Linux.<br />
<br />
=== Getting wireless firmware ===<br />
In order for the WiFi chip to work, you need to get the firmware for it. There are various ways to do so. You can juts copy it from another b43 enabled archlinux box, extract it from Broadcoms driver using b43-fwcutter or get them through the b43-firmware package[https://aur.archlinux.org/packages.php?ID=21690] in AUR. In the end you should have a folder "b43" with lots of .fw files in it.<br />
<br />
== Installation ==<br />
<br />
=== Booting the live image ===<br />
Now, download the latest [[Archboot]] iso, write it to USB and boot from it by selecting it in the Apple boot loader. When it comes to the syslinux boot loader, press [tab] to edit the entry and append "noapic" to the end to prevent a kernel panic during bootup.<br />
<br />
=== Connecting WiFi ===<br />
{{Note| You can skip this if you use the Thunderbold to Ethernet adapter for the installation.}}<br />
After it has finished booting, enter a command line. Copy the entire folder with the firmware for your wireless card to /lib/firmware/. Now you should be able to use wpa_supplicant to connect to your WiFi network.<br />
<br />
=== The installation ===<br />
Run the installation wizard. When asked to partition your hard drive, create a small HFS partition. This is where you put the standalone grub package after the installation.<br />
{{Note| There are also other ways of booting the kernel. Refer to the [[MacBook]] page if you don't want to have a separate partition for grub but rather prefer to use refit/refind}}<br />
The rest of the installation is pretty much the same as usual. When choosing the bootloader, select grub2 and install it. Don't worry about any errors, we will create the bootable efi image on our own afterwards.<br />
<br />
After the installation has completed, directly copy the WiFi firmware to the installed system to /tmp/install/usr/lib/firmware.<br />
<br />
=== update the kernel ===<br />
For me, the current kernel did not succeed with booting so I had to install the latest mainline kernel. This step can probably be skipped once linux 3.5 is in the core repository. Until then, install linux-mainline from AUR. To get keyboard backlight and Bluetooth working, apply [http://follefuder.org/mbp10-3.5.patch this patch].<br />
<br />
=== Install the bootloader ===<br />
Edit /tmp/install/boot/grub/grub.cfg and edit the boot entry to load linux-mainline instead of the normal one. Also append "noapic" to the kernel line again.<br />
<br />
Now cd into /tmp/install and create the grub image by calling:<br />
grub-mkstandalone -o grub-standalone-x86_64.efi -d usr/lib/grub/x86_64-efi -O x86_64-efi -C xz boot/grub/grub.cfg<br />
This will create file called grub-standalone-x86_64.efi which contains grub and the config file. It is important to do cd into the right directory to make it pick up the config file and put it into the right place within the image.<br />
Copy this file to the HFS partition you have created earlier. Downside of this method is that you need to repeat this step whenever you want to change the grub config.<br />
<br />
Reboot the machine and boot into Mac OS. The HFS partition should be mounted and the grub standalone image in there. Follow the steps on this page to create the files needed to make the Apple boot loader pick up grub: http://mjg59.dreamwidth.org/7468.html.<br />
After creating the files, use "bless" on the grub image on the partition, if you want to boot automatically to Arch, append --setBoot.<br />
<br />
After another reboot, you should be able to select your installed Arch Linux by keeping the alt button pressed while booting in case you haven't used --setBoot while blessing.<br />
<br />
== Post installation ==<br />
=== Graphics ===<br />
The Laptop comes with an nVidia and a Intel chip. So far I had best results with the latest beta of the nVidia driver. You can try to install nvidia-beta-all from AUR, or download the nVidia installer from their website.<br />
=== Touchpad ===<br />
Because of the integrated button, the synaptics touchpad driver caused issues for me. Installing xf86-input-mtrack and adjusting its config produced way better results.</div>Mzanettihttps://wiki.archlinux.org/index.php?title=MacBookPro10,x&diff=216345MacBookPro10,x2012-08-03T15:26:29Z<p>Mzanetti: /* Install the bootloader */</p>
<hr />
<div>[[Category:Apple]]<br />
{{Article summary start}}<br />
{{Article summary text|This wiki page should help you in getting your MacBook Pro with Retina Display to work with ArchLinux}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|Official Arch Linux Install Guide}}<br />
{{Article summary wiki|Beginners Guide}}<br />
{{Article summary wiki|General Recommendations}}<br />
{{Article summary wiki|MacBook}}<br />
{{Article summary end}}<br />
<br />
== Overview ==<br />
This page should help you setting up ArchLinux on a MacBook Pro 10,1 with Retina display. Most of the steps are the same or very similar to the regular ArchLinux installation. However, because this is very new hardware, the setup requires a few different steps. In general it is also helpful to check out also other wiki pages like the [[MacBook]] one.<br />
<br />
== Preparing for the Installation ==<br />
=== Preparing the Hard drive ===<br />
Assuming you want to have a dual boot with Mac OS X, boot into Mac OS and shrink it's partition with the Disk Utility. You can either create your Linux partition directly here, or do that later through Linux.<br />
<br />
=== Getting wireless firmware ===<br />
In order for the WiFi chip to work, you need to get the firmware for it. There are various ways to do so. You can juts copy it from another b43 enabled archlinux box, extract it from Broadcoms driver using b43-fwcutter or get them through the b43-firmware package[https://aur.archlinux.org/packages.php?ID=21690] in AUR. In the end you should have a folder "b43" with lots of .fw files in it.<br />
<br />
== Installation ==<br />
<br />
=== Booting the live image ===<br />
Now, download the latest [[Archboot]] iso, write it to USB and boot from it by selecting it in the Apple boot loader. When it comes to the syslinux boot loader, press [tab] to edit the entry and append "noapic" to the end to prevent a kernel panic during bootup.<br />
<br />
=== Connecting WiFi ===<br />
{{Note| You can skip this if you use the Thunderbold to Ethernet adapter for the installation.}}<br />
After it has finished booting, enter a command line. Copy the entire folder with the firmware for your wireless card to /lib/firmware/. Now you should be able to use wpa_supplicant to connect to your WiFi network.<br />
<br />
=== The installation ===<br />
Run the installation wizard. When asked to partition your hard drive, create a small HFS partition. This is where you put the standalone grub package after the installation.<br />
{{Note| There are also other ways of booting the kernel. Refer to the [[MacBook]] page if you don't want to have a separate partition for grub but rather prefer to use refit/refind}}<br />
The rest of the installation is pretty much the same as usual. When choosing the bootloader, select grub2 and install it. Don't worry about any errors, we will create the bootable efi image on our own afterwards.<br />
<br />
After the installation has completed, directly copy the WiFi firmware to the installed system to /tmp/install/usr/lib/firmware.<br />
<br />
=== update the kernel ===<br />
For me, the current kernel did not succeed with booting so I had to install the latest mainline kernel. This step can probably be skipped once linux 3.5 is in the core repository. Until then, install linux-mainline from AUR. To get keyboard backlight and Bluetooth working, apply [http://follefuder.org/mbp10-3.5.patch this patch].<br />
<br />
=== Install the bootloader ===<br />
Edit /tmp/install/boot/grub/grub.cfg and edit the boot entry to load linux-mainline instead of the normal one. Also append "noapic" to the kernel line again.<br />
<br />
Now cd into /tmp/install and create the grub image by calling:<br />
grub-mkstandalone -o grub-standalone-x86_64.efi -d usr/lib/grub/x86_64-efi -O x86_64-efi -C xz boot/grub/grub.cfg<br />
This will create file called grub-standalone-x86_64.efi which contains grub and the config file. It is important to do cd into the right directory to make it pick up the config file and put it into the right place within the image.<br />
Copy this file to the HFS partition you have created earlier. Downside of this method is that you need to repeat this step whenever you want to change the grub config.<br />
<br />
Reboot the machine and boot into Mac OS. The HFS partition should be mounted and the grub standalone image in there. Follow the steps on this page to create the files needed to make the Apple boot loader pick up grub: http://mjg59.dreamwidth.org/7468.html.<br />
After creating the files, use "bless" on the grub image on the partition, if you want to boot automatically to Arch, append --setBoot.<br />
<br />
After another reboot, you should be able to select your installed Arch Linux by keeping the alt button pressed while booting in case you haven't used --setBoot while blessing.<br />
<br />
== Post installation ==<br />
=== Graphics ===<br />
The Laptop comes with an nVidia and a Intel chip. So far I had best results with the latest beta of the nVidia driver. You can try to install nvidia-beta-all from AUR, or download the nVidia installer from their website.<br />
=== Touchpad ===<br />
Because of the integrated button, the synaptics touchpad driver caused issues for me. Installing xf86-input-mtouch and adjusting its config produced way better results.</div>Mzanettihttps://wiki.archlinux.org/index.php?title=MacBookPro10,x&diff=216344MacBookPro10,x2012-08-03T15:25:39Z<p>Mzanetti: /* The installation */</p>
<hr />
<div>[[Category:Apple]]<br />
{{Article summary start}}<br />
{{Article summary text|This wiki page should help you in getting your MacBook Pro with Retina Display to work with ArchLinux}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|Official Arch Linux Install Guide}}<br />
{{Article summary wiki|Beginners Guide}}<br />
{{Article summary wiki|General Recommendations}}<br />
{{Article summary wiki|MacBook}}<br />
{{Article summary end}}<br />
<br />
== Overview ==<br />
This page should help you setting up ArchLinux on a MacBook Pro 10,1 with Retina display. Most of the steps are the same or very similar to the regular ArchLinux installation. However, because this is very new hardware, the setup requires a few different steps. In general it is also helpful to check out also other wiki pages like the [[MacBook]] one.<br />
<br />
== Preparing for the Installation ==<br />
=== Preparing the Hard drive ===<br />
Assuming you want to have a dual boot with Mac OS X, boot into Mac OS and shrink it's partition with the Disk Utility. You can either create your Linux partition directly here, or do that later through Linux.<br />
<br />
=== Getting wireless firmware ===<br />
In order for the WiFi chip to work, you need to get the firmware for it. There are various ways to do so. You can juts copy it from another b43 enabled archlinux box, extract it from Broadcoms driver using b43-fwcutter or get them through the b43-firmware package[https://aur.archlinux.org/packages.php?ID=21690] in AUR. In the end you should have a folder "b43" with lots of .fw files in it.<br />
<br />
== Installation ==<br />
<br />
=== Booting the live image ===<br />
Now, download the latest [[Archboot]] iso, write it to USB and boot from it by selecting it in the Apple boot loader. When it comes to the syslinux boot loader, press [tab] to edit the entry and append "noapic" to the end to prevent a kernel panic during bootup.<br />
<br />
=== Connecting WiFi ===<br />
{{Note| You can skip this if you use the Thunderbold to Ethernet adapter for the installation.}}<br />
After it has finished booting, enter a command line. Copy the entire folder with the firmware for your wireless card to /lib/firmware/. Now you should be able to use wpa_supplicant to connect to your WiFi network.<br />
<br />
=== The installation ===<br />
Run the installation wizard. When asked to partition your hard drive, create a small HFS partition. This is where you put the standalone grub package after the installation.<br />
{{Note| There are also other ways of booting the kernel. Refer to the [[MacBook]] page if you don't want to have a separate partition for grub but rather prefer to use refit/refind}}<br />
The rest of the installation is pretty much the same as usual. When choosing the bootloader, select grub2 and install it. Don't worry about any errors, we will create the bootable efi image on our own afterwards.<br />
<br />
After the installation has completed, directly copy the WiFi firmware to the installed system to /tmp/install/usr/lib/firmware.<br />
<br />
=== update the kernel ===<br />
For me, the current kernel did not succeed with booting so I had to install the latest mainline kernel. This step can probably be skipped once linux 3.5 is in the core repository. Until then, install linux-mainline from AUR. To get keyboard backlight and Bluetooth working, apply [http://follefuder.org/mbp10-3.5.patch this patch].<br />
<br />
=== Install the bootloader ===<br />
After the installation is completed, don't reboot so that your hard drive stays mounted to /tmp/install/.<br />
<br />
Edit /tmp/install/boot/grub/grub.cfg and edit the boot entry to load linux-mainline instead of the normal one. Also append "noapic" to the kernel line again.<br />
<br />
Now cd into /tmp/install and create the grub image by calling:<br />
grub-mkstandalone -o grub-standalone-x86_64.efi -d usr/lib/grub/x86_64-efi -O x86_64-efi -C xz boot/grub/grub.cfg<br />
This will create file called grub-standalone-x86_64.efi which contains grub and the config file. It is important to do cd into the right directory to make it pick up the config file and put it into the right place within the image.<br />
Copy this file to the HFS partition you have created earlier. Downside of this method is that you need to repeat this step whenever you want to change the grub config.<br />
<br />
Reboot the machine and boot into Mac OS. The HFS partition should be mounted and the grub standalone image in there. Follow the steps on this page to create the files needed to make the Apple boot loader pick up grub: http://mjg59.dreamwidth.org/7468.html.<br />
After creating the files, use "bless" on the grub image on the partition, if you want to boot automatically to Arch, append --setBoot.<br />
<br />
After another reboot, you should be able to select your installed Arch Linux by keeping the alt button pressed while booting in case you haven't used --setBoot while blessing.<br />
<br />
== Post installation ==<br />
=== Graphics ===<br />
The Laptop comes with an nVidia and a Intel chip. So far I had best results with the latest beta of the nVidia driver. You can try to install nvidia-beta-all from AUR, or download the nVidia installer from their website.<br />
=== Touchpad ===<br />
Because of the integrated button, the synaptics touchpad driver caused issues for me. Installing xf86-input-mtouch and adjusting its config produced way better results.</div>Mzanettihttps://wiki.archlinux.org/index.php?title=MacBookPro10,x&diff=216343MacBookPro10,x2012-08-03T15:20:01Z<p>Mzanetti: Created page with "Category:Apple {{Article summary start}} {{Article summary text|This wiki page should help you in getting your MacBook Pro with Retina Display to work with ArchLinux}} {{A..."</p>
<hr />
<div>[[Category:Apple]]<br />
{{Article summary start}}<br />
{{Article summary text|This wiki page should help you in getting your MacBook Pro with Retina Display to work with ArchLinux}}<br />
{{Article summary heading|Related}}<br />
{{Article summary wiki|Official Arch Linux Install Guide}}<br />
{{Article summary wiki|Beginners Guide}}<br />
{{Article summary wiki|General Recommendations}}<br />
{{Article summary wiki|MacBook}}<br />
{{Article summary end}}<br />
<br />
== Overview ==<br />
This page should help you setting up ArchLinux on a MacBook Pro 10,1 with Retina display. Most of the steps are the same or very similar to the regular ArchLinux installation. However, because this is very new hardware, the setup requires a few different steps. In general it is also helpful to check out also other wiki pages like the [[MacBook]] one.<br />
<br />
== Preparing for the Installation ==<br />
=== Preparing the Hard drive ===<br />
Assuming you want to have a dual boot with Mac OS X, boot into Mac OS and shrink it's partition with the Disk Utility. You can either create your Linux partition directly here, or do that later through Linux.<br />
<br />
=== Getting wireless firmware ===<br />
In order for the WiFi chip to work, you need to get the firmware for it. There are various ways to do so. You can juts copy it from another b43 enabled archlinux box, extract it from Broadcoms driver using b43-fwcutter or get them through the b43-firmware package[https://aur.archlinux.org/packages.php?ID=21690] in AUR. In the end you should have a folder "b43" with lots of .fw files in it.<br />
<br />
== Installation ==<br />
<br />
=== Booting the live image ===<br />
Now, download the latest [[Archboot]] iso, write it to USB and boot from it by selecting it in the Apple boot loader. When it comes to the syslinux boot loader, press [tab] to edit the entry and append "noapic" to the end to prevent a kernel panic during bootup.<br />
<br />
=== Connecting WiFi ===<br />
{{Note| You can skip this if you use the Thunderbold to Ethernet adapter for the installation.}}<br />
After it has finished booting, enter a command line. Copy the entire folder with the firmware for your wireless card to /lib/firmware/. Now you should be able to use wpa_supplicant to connect to your WiFi network.<br />
<br />
=== The installation ===<br />
Run the installation wizard. When asked to partition your hard drive, create a small HFS partition. This is where you put the standalone grub package after the installation.<br />
{{Note| There are also other ways of booting the kernel. Refer to the [[MacBook]] page if you don't want to have a separate partition for grub but rather prefer to use refit/refind}}<br />
The rest of the installation is pretty much the same as usual. When coosing the bootloader, select grub2 and install it. Don't worry about any errors, we will create the bootable efi image on our own afterwards.<br />
<br />
After the installation has completed, directly copy the WiFi firmware to the installed system to /tmp/install/usr/lib/firmware.<br />
<br />
=== update the kernel ===<br />
For me, the current kernel did not succeed with booting so I had to install the latest mainline kernel. This step can probably be skipped once linux 3.5 is in the core repository. Until then, install linux-mainline from AUR. To get keyboard backlight and Bluetooth working, apply [http://follefuder.org/mbp10-3.5.patch this patch].<br />
<br />
=== Install the bootloader ===<br />
After the installation is completed, don't reboot so that your hard drive stays mounted to /tmp/install/.<br />
<br />
Edit /tmp/install/boot/grub/grub.cfg and edit the boot entry to load linux-mainline instead of the normal one. Also append "noapic" to the kernel line again.<br />
<br />
Now cd into /tmp/install and create the grub image by calling:<br />
grub-mkstandalone -o grub-standalone-x86_64.efi -d usr/lib/grub/x86_64-efi -O x86_64-efi -C xz boot/grub/grub.cfg<br />
This will create file called grub-standalone-x86_64.efi which contains grub and the config file. It is important to do cd into the right directory to make it pick up the config file and put it into the right place within the image.<br />
Copy this file to the HFS partition you have created earlier. Downside of this method is that you need to repeat this step whenever you want to change the grub config.<br />
<br />
Reboot the machine and boot into Mac OS. The HFS partition should be mounted and the grub standalone image in there. Follow the steps on this page to create the files needed to make the Apple boot loader pick up grub: http://mjg59.dreamwidth.org/7468.html.<br />
After creating the files, use "bless" on the grub image on the partition, if you want to boot automatically to Arch, append --setBoot.<br />
<br />
After another reboot, you should be able to select your installed Arch Linux by keeping the alt button pressed while booting in case you haven't used --setBoot while blessing.<br />
<br />
== Post installation ==<br />
=== Graphics ===<br />
The Laptop comes with an nVidia and a Intel chip. So far I had best results with the latest beta of the nVidia driver. You can try to install nvidia-beta-all from AUR, or download the nVidia installer from their website.<br />
=== Touchpad ===<br />
Because of the integrated button, the synaptics touchpad driver caused issues for me. Installing xf86-input-mtouch and adjusting its config produced way better results.</div>Mzanettihttps://wiki.archlinux.org/index.php?title=Xorg_Input_Hotplugging&diff=48788Xorg Input Hotplugging2008-09-04T16:05:36Z<p>Mzanetti: /* FAQ/Troubleshooting */</p>
<hr />
<div>[[Category:X Server (English)]]<br />
[[Category:HOWTOs (English)]]<br />
<br />
{{i18n_links_start}}<br />
{{i18n_entry|English|Xorg_input_hotplugging}}<br />
{{i18n_links_end}}<br />
<br />
<br />
== Rationale ==<br />
<br />
Historically, the X server would be used on terminals, and later on, on desktop computers. On those machines the X server would start once, upon when it would configure itself with regards to its rarely changing input and output peripherals: monitors, video cards, keyboards, mice, tablets, touchscreens...<br />
<br />
Following the advent of mobile computing, a given computer often see its peripherals changing, while it is running. Obviously, restarting the whole OS is not an option, so the kernel guys accomodated for this in implementing device hotplugging. Since devices are exposed to userspace as device nodes in /dev, the highly configurable udev was born in lieu of devfs (or manually maintained /dev).<br />
<br />
Still, the X server is having issues with this, as it probes devices and opens device files on startup. If the device was absent on X startup, it will remain unknown to X. If the device file was present at X startup, and the file disappears (e.g the device is disconnected), the file handle is lost, thus the device will remain unknown, even if replugged and the same device node is recreated (which is easy to do with udev). This is also true for gpm, a mouse daemon for VTs.<br />
<br />
To overcome this issue, notably with the most widely encountered case that is a laptop user with a touchpad and an external mouse, the kernel emulates a PS/2 mouse with all events coming from any mouse connected to the system. The device file is always present, and resides at /dev/input/mice (or /dev/psaux). This has a number of issues. First, being an emulated PS/2 mouse, the protocol is predefined, and has inherent limitations, overcome by various proprietary extensions, like ImPS/2 and ExplorerPS/2. What's more, events coming from all the mice have to be translated to this protocol, and thus non-understood or translatable events are lost or misunderstood. What's more, it is impossible to have such an emulated device work in absolute coordinates since it would make no sense (as events can come from many devices). Also, relative button events (like for a wheel, where there's no press/release events) have to be a wheel axis in the PS/2 protocol, and you can't have much of them. Furthermore, all mice will have the same settings with regards to speed or button orders as set via e.g xset of xmodmap. This is an issue when you have a laser mouse which just flies across the screen when another one moves like a turtle.<br />
<br />
In the end, it doesn't matter for many users out there who just want a mouse with a wheel and three buttons. Yet there is an increasing market of keyboards, mice and other special input devices with various extra buttons. While hardcore users will argue that this is useless and that everybody should use tiling WMs and screw the mouse, it is increasingly useful to perform many common tasks with '''either''' the keyboard '''or''' the mouse, depending on what you're '''currently''' doing.<br />
<br />
The solution to enable all those extra buttons is to use the X input event driver (or evdev). Trouble is, this driver must have access to the exact event node matching your device, which resides in /dev/input/event*, and not some funky workaround device emulator sink. So evdev will work, but only if the device is plugged in at X startup, and never unplugged afterwards. <br />
<br />
Instead of writing a routine monitoring /dev or listening to kernel events, which would have the additional nasty effect of tieing X hotplugging to linux, the X devs decided to leverage the power of the HAL daemon. hald essentially builds a uniform database of the current hardware available on the system (together with any information it can deduce like device type and so on), and updates it live according to kernel events, while recensing device files. Now, thanks to the hard work of hald and dbus devs, all that X has to do is connect to hald (this is done via dbus), monitor device (dis)appearance, and take action if the device is relevant to X.<br />
<br />
<br />
== Current XInput status upstream ==<br />
<br />
There's no other way to have '''real''' hotplugging. This is indeed what one might relate to XRandR for its display hotplugging ability, and it's called XInput. It is in the process of a huge revamp, first with this hotplug support, and next with MPX (multi-pointer X) in the near future.<br />
It is posing a number of problems, because many pieces of software (xmodmap, GTK...) are unaware of how to handle multiple devices, and them disappearing or reappearing.<br />
<br />
<br />
== Current status in Arch==<br />
<br />
As of currently, Arch's xorg-server 1.4.0.90-9, Xorg server hald support is disabled. This is unlikely to change soon. See the [http://archlinux.org/pipermail/arch-dev-public/2008-March/005248.html mailing list].<br />
If you seek help or details, take a look at this [http://bbs.archlinux.org/viewtopic.php?pid=348585 forum thread].<br />
<br />
<br />
== Building and installing a HAL-enabled Xorg server ==<br />
<br />
Get the xorg-xserver PKGBUILD+other files from abs the usual way (see [[ABS]] howto if necessary), and alter ./configure options in the PKGBUILD:<br />
* check that you have --disable-dmx (dmx is not yet compatible with new device system)<br />
* check that you have --disable-xprint (it should be so already, compile will currently fail with xprint enabled)<br />
* remove --disable-config-hal (obviously)<br />
<br />
then build and install the resulting package (pacman -U).<br />
<br />
We have to allow the xorg server to listen to hald via dbus. So, create this file (or copy it from the xorg-server source):<br />
<br />
<br />
$ cat /etc/dbus-1/system.d/xorg-server.conf <br />
<!DOCTYPE busconfig PUBLIC<br />
"-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"<br />
"http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd"><br />
<busconfig><br />
<policy context="default"><br />
<allow own="org.x.config.display0"/><br />
<allow send_destination="org.x.config.display0"/><br />
<allow send_interface="org.x.config.display0"/><br />
<allow own="org.x.config.display1"/><br />
<allow send_destination="org.x.config.display1"/><br />
<allow send_interface="org.x.config.display1"/><br />
</policy><br />
</busconfig><br />
<br />
evdev devices not only include mice but also keyboards, and for some reason once the server queries hal it will unfortunately discard any xorg.conf keyboard configuration you may have (I suppose it does not know what to do with the xorg.conf info, so it prioritizes the hal one instead of merging. what's more it maintains a consistent state with hal, in the event another app queries hal for the same info). So let's inform hal of the real layout:<br />
Code:<br />
<br />
$ cat /etc/hal/fdi/policy/11-kb.fdi <br />
<?xml version="1.0" encoding="UTF-8"?><br />
<deviceinfo version="0.2"><br />
<device><br />
<match key="info.product" string="AT Translated Set 2 keyboard"><br />
<merge key="input.xkb.layout" type="string">fr</merge><br />
</match><br />
</device><br />
</deviceinfo><br />
<br />
Of course, change the match key to something relevant for you (use gnome-device-manager with view->device properties enabled to easily browse the hal tree, or grep lshal output), change 'fr' to your layout. You may also want to merge other keys like input.kxb.variant or input.kxb.model.<br />
<br />
Now for the last bit. Historically, the Xorg server needs an always connected and unique CoreKeyboard and CorePointer, other extra devices merely sending so called Core events (it just looks so much like the /dev/input/mice trick to have multiple devices act like one). Usually you set them in xorg.conf. If there's none in the config, some recent Xorg server version allows for automatic finding of those Core devices by looking into /dev/input. Notably, it will always find /dev/input/mice and create a default ExplorerPS/2 mouse with it (which is bad for us as we want evdev), as it's a sink device where all mice send events in a restricted way (that's why input-evdev can't use it, and if you use it with input-mouse driver it'll lack many buttons, because of the PS/2 fallback). So let's get rid of it as its purpose was precisely to be a workaround for hotplugging, which we now have properly implemented.<br />
<br />
Add this in your xorg.conf:<br />
<br />
Section "ServerFlags"<br />
Option "AllowEmptyInput"<br />
EndSection<br />
<br />
Also, you will want to remove any input device from xorg.conf, except e.g your Synaptics touchpad (and other special drivers I may not be aware of), so that's any device whose driver should be 'mouse', or 'evdev', or 'keyboard'. Don't forget to remove both the input device section and the entry in server layout section. Be aware that those devices should thus be present at X startup to be taken into account.<br />
It should be possible to inform X about your devices via hal configuration, like for the keyboard, but since my Synaptics device is always attached, I left the config there.<br />
<br />
Now, restart X, plug and unplug your mouse at will, and observe /var/log/Xorg.0.log output as it loses and sets your input devices up.<br />
<br />
In hope this helps someone, as I had a hard time gathering all this information. Documentation is really lacking and/or outdated...<br />
<br />
== FAQ/Troubleshooting ==<br />
<br />
* My mouse is jerky/uncontrollable in SDL apps/games! WTF?<br />
<br />
This was a long time since I started a game. It seems that with evdev, DGA gets broken in SDL: mouse jumps and moves down-right all the time.<br />
<br />
To fix this you have to either set a var:<br />
<br />
export SDL_VIDEO_X11_DGAMOUSE=0<br />
<br />
which is sufficient for Neverball, or add this to your xorg.conf:<br />
<br />
Section "Module"<br />
...<br />
SubSection "extmod"<br />
Option "omit xfree86-dga" # don't initialise the DGA extension<br />
EndSubSection<br />
...<br />
EndSection<br />
<br />
which is mandatory for e.g Doom III<br />
<br />
* What did the .fdi look like when xorg-server had hal enabled in testing repo?<br />
<br />
Here it is. This is a good sample as how hal key matching works, and how you can set some keys:<br />
<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<deviceinfo version="0.2"><br />
<device><br />
<!-- FIXME: Support tablets too. --><br />
<match key="info.capabilities" contains="input.mouse"><br />
<merge key="input.x11_driver" type="string">mouse</merge><br />
<match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"<br />
string="Linux"><br />
<merge key="input.x11_driver" type="string">evdev</merge><br />
</match><br />
</match><br />
<br />
<match key="info.capabilities" contains="input.keys"><br />
<merge key="input.xkb.rules" type="string">base</merge><br />
<br />
<!-- If we're using Linux, we use evdev by default (falling back to<br />
keyboard otherwise). --><br />
<merge key="input.x11_driver" type="string">keyboard</merge><br />
<merge key="input.xkb.model" type="string">pc105</merge><br />
<match key="/org/freedesktop/Hal/devices/computer:system.kernel.name"<br />
string="Linux"><br />
<merge key="input.x11_driver" type="string">evdev</merge><br />
<merge key="input.xkb.model" type="string">evdev</merge><br />
</match><br />
<br />
<merge key="input.xkb.layout" type="string">fr</merge><br />
<br />
<merge key="input.xkb.variant" type="string" /><br />
</match><br />
</device><br />
</deviceinfo><br />
<br />
* How can I make mouse button XYZ do FOO?<br />
Well, currently it has to be implemented in the application (like e.g firefox next/previous) or in the WM. Configurable WM like compiz can do something with mouse buttons too. The sad thing is that this is per-button number and not per-device. <br />
There are also some interesting apps like [http://www.bedroomlan.org/~alexios/coding_evrouter.html EvRouter] but the kernel event design makes it so that events are not 'consumed' by applications reading /dev/input/event0, thus catching an event won't prevent the event to be passed to X (which will produce a ButtonXYZ event, which results in a LeftClick if not handled specially by the application). Or I missed something somewhere.<br />
<br />
* The .fdi files above don't work for me. X loads the wrong keymap / It changes the Multimedia keys for my keyboard.<br />
When switching the keyboard driver from "kbd" to "evdev" some keys (especially multimedia keys) get new keycodes. This can break some programs like pommed that listen for keypresses. I also had problems switching the layout from "en" to "de" when using the evdev driver. <br />
If the above example fdi's do not work for you or you do not want to use evdev for your keyboard, try to create the file according to your current keyboard section in your xorg.conf.<br />
<br />
This is an example how to create your own fdi file:<br />
<br />
xorg.conf keyboard section:<br />
Section "InputDevice"<br />
Identifier "Keyboard0"<br />
Driver "kbd"<br />
Option "XkbdModel" "pc105"<br />
Option "XkbLayout" "de"<br />
EndSection<br />
<br />
Resulting fdi file:<br />
<?xml version="1.0" encoding="UTF-8"?><br />
<deviceinfo version="0.2"><br />
<!-- ignore Windows drive --><br />
<device><br />
<match key="info.capabilities" contains="input.keys"><br />
<merge key="input.x11_driver" type="string">kbd</merge><br />
<merge key="input.xkb.model" type="string">pc105</merge><br />
<merge key="input.xkb.layout" type="string">de</merge><br />
</match><br />
</device><br />
</deviceinfo></div>Mzanetti