User:Gavlee/Draft:Acer Chromebook 13
The Acer Chromebook 13 model CB5-311 and also known as nyan-big, is an ARMv7 architecure notebook based on an Nvidia Tegra K1 system on chip (SOC). The same SOC can be found in the Nvidia Jetson development kit and the Nvidia Shield tablet. Like some devices the associated hardware components can (potentially) be difficult to configure properly but as the stock operating system Chrome is based upon Gentoo, there is a working configuration to build from. This article has been written as a configuration guide to help users work out some of the gritty details needed to get this notebook working as it should while using a vanilla Gentoo installation.
For each Acer Chromebook 13 do not expect to have exactly the same hardware listed in this guide. The hardware listed here is to be used as an example. Some of the components may be similar, but there are always variants in computers depending on when hardware was produced and where it was purchased. For example, the Acer Chromebook 13 has at least two different models with different screen and memory configurations.
Installation
Preparation
Things to be aware of when before installing Gentoo Linux on any machine:
- Backups - If the computer owner finds any value in being able to restore the factory existing operating system, make sure appropriate measures are taken to create a full system restoration. This is a nice fall back option in the case something goes wrong while installing Linux.
- Time - Allot enough time for installing Gentoo. The length of the install process varies. Experienced Gentoo users are mostly limited by the speed of their current hardware where beginners are limited by the Gentoo learning curve.
- Diligence - Dedication is required in order to configure all parts of the hardware to work properly. Unfortunately most manufacturers do not deliver open source drivers for their hardware. Linux users go through great lengths in order to build or find open source drivers that are compatible with their hardware.
Requirements
Hardware
As stated above, the hardware listed in the following commands might not match the hardware in each Acer Chromebook 13 verbatim. Use the following information as a hardware reference guide.
root #
lspci -nnk
root #
lsusb
Configuration
Kernel
For users new to Gentoo, configuring the kernel for a certain hardware platform can be among the trickiest tasks. Do not despair! There are many articles on the Wiki available to help with all kernel related things. The sections below provide information on the two main methods of kernel configuration. Currently no tool exists to automatically detect and configure hardware for all platforms, especially if experimental or new kernel features will be used.
Generally speaking for this platform, the following kernel options are needed.
(Output selected kernel features here.)
Device Drivers --->
Generic Driver Options --->
[*] Maintain a devtmpfs filesystem to mount at /dev
[ ] Automount devtmpfs at /dev, after the kernel mounted the rootfs
Manual
Use the make menuconfig command to manually configure kernel features:
root #
make menuconfig
After configuration run the following commands in this to build and install the system's kernel and modules:
root #
make
root #
make modules
root #
make install
root #
make modules_install
genkernel
The genkernel tool can also be used to help build the kernel and the initramfs.
After downloading a kernel sources packages, start the build process by running the following command:
root #
genkernel --install --menuconfig all
Additional help with kernel configuration
For additional help with kernel configuration see the configuration help section in the kernel article.
X11
More information on configuring X11 can be found in the Xorg configuration article.
USB
The Wiki's USB guide can be helpful for configuring anything USB related on the system.
Tips
Helpful tools
When used properly, these tools will help diagnose problems. They are included on the Gentoo-based SystemRescueCD, which is a good distribution when installing or troubleshooting Gentoo systems on x86/amd64 architectures. However as the Acer Chromebook 13 is based on an ARM architecture processor it is not possible to use SystemRescueCD images. It is possible to install some of these tools in Chrome OS via the crouton chroot tool. Be sure to emerge them on the system after the install is complete. This will help with future troubleshooting.
Software
Command(s) | Package | Description |
---|---|---|
eix | app-portage/eix | A faster and better way to search for packages (compared to emerge --search). |
eclean, equery, eread, euse, and more | app-portage/gentoolkit | A collection of administration scripts for Gentoo. |
powertop | sys-power/powertop | A tool to help extend battery life by controlling power usage. |
ufed | app-portage/ufed | A simple program designed to configure system USE flags. |
Hardware detection
Name | Package | Description |
---|---|---|
lspci | sys-apps/pciutils | Includes command-line tools for identifying PCI system hardware. This is only useful on a Jetson as the Acer Chromebook 13 does not have PCI |
lsusb | sys-apps/usbutils | Includes command-line tools for identifying USB system hardware. |
For more hardware detection tools see the hardware detection article.
Caching Portage in tmpfs
When using a SSD or HDD with a lot of RAM (16GB is more than enough) it is possible to both expand the life of the internal drive or SD card and speed up build time by caching the Portage tmp directory entirely in RAM. However, as the Acer Chromebook 13 has limited RAM 2-4 GB, there will not be enough storage to compile some of the large packages, including gcc. Be sure to adjust to the amount of allocated memory. The example below allows Portage to use maximum of 1GBs of RAM (tmpfs) during compiles. Read more about caching Portage in tmpfs by traveling over to this article.
tmpfs /var/tmp/portage tmpfs uid=portage,gid=portage,mode=0775,size=1G,noatime 0 0
After /etc/fstab has been modified, Portage's temp directory will be mounted in RAM on every boot. To mount Portage temp directory now simply run this command:
root #
mount /var/tmp/portage
See also
- Gentoo Cheat Sheet - A reference article for basic package management, USE flags, log file, and administration management.
External resources
- SystemRescueCD - A rescue CD that includes many helpful troubleshooting tools.