System76 Galago Pro galp3
Hardware | PCI/USB ID | Working? |
---|---|---|
GPU (Intel) |
|
Yes |
GPU (NVIDIA) |
|
No |
Audio |
|
Yes |
Microphone | Yes | |
Speakers | Yes | |
Webcam | Yes | |
Bluetooth | Yes | |
Ethernet |
|
Yes |
Wireless |
|
Yes |
SD-card reader |
|
Yes |
Fingerprint reader | No |
OEM software
System76 develops a special distribution (Pop!_OS) for their computers, and it comes with many tweaks and tools to ensure a seamless end-user experience. Arch does not have these out of the box; and unfortunately, sometimes their computers do not work right without them. Thankfully, it is possible to get the same first-class hardware support in Arch Linux that you have in Pop!_OS -- it just takes a little elbow grease.
Packages
All necessary packages can be found in the AUR. It is recommended to install everything in the list below.
- Modules
- Daemons
- system76-driverAUR
- system76-powerAUR (needed for System76 switchable graphics)
- system76-firmware-daemonAUR (seems to be needed for things like audio to work right)
- Other
- system76-firmwareAUR (required if you want to update your BIOS)
- firmware-managerAUR (required if you want to know when there is a BIOS update available)
(There are also "-git" versions of many of these packages, if you wish to stay bleeding edge.)
Settings
Once you have installed the above, you will need to tell your computer to use them.
Services
Enable system76.service
, system76-firmware-daemon.service
and system76-power.service
: (source)
Drivers
To make sure all drivers are being loaded correctly, run system76-driver-cli
; this will automatically add necessary rules to /etc/modprobe.d
, and execute mkinitcpio
.
s76-i915-mkinitcpio.conf
file, and a redundant (if you have system76-power.conf
) system76-driver_i2c-nvidia-gpu.conf
file. As such, this step may be skippable, for the time-being.BIOS updates
To check your current BIOS version and whether there is a new version available, run firmware-manager
as root. Keep in-mind that this is a GTK application, so you need to be running X or Wayland for it to run. (It has no CLI -- it does not even respond to --help
.)
To update your system to the latest firmware on the next boot, run system76-firmware-cli schedule
.
Suspend/hibernate
Out of the box, Arch Linux does not resume a previously suspended or hibernated session. To support hibernation, ensure that you have swap space equal to or greater than your system memory (RAM), and add "resume" to your /etc/mkinitcpio.conf
file, per the instructions here.
- NOTE: hibernation has yet to be tested on this device; but suspension seems to work... sometimes.
Function keys
- Only keys with known functions are shown.
|
Troubleshooting
system76-firmware: EFI mount point not found
If using the new (replacement) EFI mount point /efi
, ensure you have the mount present in etc/fstab
. You may find the appropriate device to mount by using a combination of lsblk and fdisk -l.
# fdisk -l # List disks (one device will be designated as "EFI System") # lsblk # List devices and mount points, you should see the EFI system device, and confirm whether it is mounted/unmounted # mount device /efi # # genfstab -U / # (optional) print fstab configuration for inclusion/merging into /etc/fstab
After doing the above, it might be a good idea to schedule a firmware update:
# system76-firmware-cli schedule
With grub
After scheduling a firmware update, ensure that GRUB is set to use the EFI partition like so:
# grub-install --target=x86_64-efi --efi-directory=/efi --bootloader-id=grub # cp /boot/grub/grub.cfg /boot/grub/grub.cfg.bak # grub-mkconfig -o /boot/grub/grub.cfg
Restart to trigger the firmware update.