Installing elementary OS on the Asus X205TA
OK, here's what I've got so far for installing elementary OS! Working off KemyLand's guide, changing what doesn't work. Much of it I haven't figured out yet; will update as need be. If anyone else is installing an Ubuntu-based distro on this computer, feel free to chime in with what worked for you.
Prepping the USB
- If you're using Windows, use Rufus to create your bootable USB. Make sure you select
- GPT partition table for UEFI
- 64-bit elementary OS ISO
- write to USB in ISO mode, not dd
- If you're working on Linux, try using Gparted to format the USB with:
- GPT partition table
- FAT32 partition
- boot flag
- Then mount the ISO using sudo mkdir /mnt/whatever, sudo mount -o loop /path/to/elementary.iso /mnt/whatever. Browse to it in Files (just type /mnt/whatever in if it doesn't show up in the sidebar) and copy everything on it to the USB.
Now let's add our 32-bit EFI file and install elementary.
- Copy bootia32.efi (I used this one, click "View Raw" to download) into /mnt/whatever/EFI/boot/.
- Turn off the X205TA and plug in the USB.
- Turn on the X205TA. Start button-mashing F2 as soon as the power light comes on and you'll get into the BIOS.
- Press → till you get to the last tab and select the USB from the "Boot Override" list.
- Choose "Try elementary without installing". Open Terminal and enter "ubiquity -b". The installer will run without installing GRUB. When it finishes, don't try to boot into the new installation -- it won't work.
Installing grub for 32-bit EFI
So we never installed GRUB. Let's fix that. Restart the X205TA and once again boot from the USB. The following commands attach the important parts of the X205TA's Linux filesystem to the USB.
Code:
sudo mount /dev/yourrootpartition /mnt # Probably /dev/mmcblk0p[some number]. You can use Gparted to figure it out
sudo mount /dev/yourbootpartition /mnt/boot/efi # If this doesn't work, try /mnt/boot instead
sudo mount proc /mnt/proc -t proc
sudo mount sys /mnt/sys -t sysfs
sudo mount -o bind /dev /mnt/dev # the / is important
sudo mount -o bind /run /mnt/run # this enables Internet in chroot
sudo mount pts /dev/pts -t devpts
sudo modprobe efivarfs
sudo chroot /mnt # This "logs you in" to the filesystem we've just set up
For this you'll need Internet access, so tether an Android phone.
Code:
sudo apt-get update
sudo apt-get install efibootmgr # may already be installed
sudo apt-get install grub-efi-ia32 grub-efi-ia32-bin # this installs a 32-bit version of EFI instead of 64-bit
Now back to KemyLand's instructions:
Code:
mount -t efivarfs efivarfs /sys/firmware/efi/efivars
grub-install --target=i386-efi --efi-directory=/boot/efi --bootloader-id=grub_uefi --recheck # "efi-directory" ought to be the same as the one you mounted the boot partition to - either /boot or /boot/efi
sudo update-grub
Booting up
If everything has gone well, you'll be able to boot into your new Linux installation. However, things rarely go well on the first try. If you just end up at a GRUB prompt, here's how you can boot:
Code:
set root=(hdX,gptY) # use "ls" to figure out what drive to enter here; should be the one you installed Linux on. For example in my case it's (hd0,gpt5)
linux /vmlinuz root=/dev/mmcblk0pY # should be the same number as gpt
initrd /initrd.img
boot
If you are dual-booting, you will see the GRUB menu. If you have installed GRUB correctly you will notice that it's completely hideous, which goes against the entire freaking purpose of installing elementary to begin with, am I right?! So:
Compiling a new kernel
elementary OS 0.3.2 comes with kernel version 3.19. However, later versions have better hardware support. We are going to compile a newer version of the Linux kernel from its source code, which you can download at kernel.org. I can report that using harryharryharry's config (linked in KemyLand's guide) and kernel version 4.5.0-rc4 works.
Important! In order to compile the kernel you will need to install some extra things:
From here on out, following KemyLand's guide will work.
One snag I've noticed: elementary OS 0.3.2 uses a different touchpad driver by default, so two-finger scrolling and two-finger left-click doesn't work out of the box. I am working on figuring out a solution.
_____________
This is as far as I've gotten. Will add more as I continue.
Bookmarks