=========================
== Wilderness Downtown ==
=========================

Arch Linux - Surface Book 3

I have installed Arch Linux on a Microsoft Surface Book 3 to use as my “focus” machine. This page outlines some things I’ve had to install and tweak.

Most everything works out of the box except the cameras. Suspend (which works inconsistently) also eats up 20%+ of the battery life overnight.

This is not a recommended laptop for running Linux.

Visual Studio Code hangs on launch

Had this issue.

Work around add to ~/.vscode-oss/argv.json

        "password-store": "basic"

Toshy - Mac key bindings

Installed Toshy because apparently it works better with Wayland.

Install xremap-gnome for this to work on Wayland.

SSH Agent

Add this to ~/.bashrc

# ssh-agent modified from: https://wiki.archlinux.org/title/SSH_keys#ssh-agent
if ! pgrep -u "$USER" ssh-agent > /dev/null; then
    ssh-agent > "$XDG_RUNTIME_DIR/ssh-agent.env"
fi
if [[ ! -f "$SSH_AUTH_SOCK" ]]; then
    source "$XDG_RUNTIME_DIR/ssh-agent.env" >/dev/null
fi

Realized that the timeout is set to 1 hour with the “-t 1h” flag. I removed this since it was annoying.

Jetbrains Mono, Apple and Microsoft fonts

Arch has this

sudo pacman -S ttf-jetbrains-mono apple-fonts ttf-ms-win11-auto

Set the default for Visual Studio Code: https://stackoverflow.com/questions/59776906/how-do-i-change-vs-code-settings-to-use-jetbrains-mono-font

Avahi

Install

sudo pacman -S avahi nss-mdns

Enable and start

sudo systemctl enable avahi-daemon.service
sudo systemctl start avahi-daemon.service

Enable hostname resolution. Modify line in /etc/nsswitch.conf

hosts: mymachines mdns4_minimal [NOTFOUND=return] resolve [!UNAVAIL=return] files myhostname dns

Brother HL-3170CDW printer

Install CUPS

sudo pacman -S cups
systemctl enable cups.service
systemctl restart cups.service
systemctl status cups.service

Install driver

yay -S brother-hl3170cdw

Add printer via CUPS Administration http://localhost:631/admin

Other

chromium
code
freetube
git
go
hugo
jq
rust
sudo
vim

Unresolved issues

dmesg output:

[  861.301517] i915 0000:00:02.0: [drm] *ERROR* Link Training Unsuccessful

Similar to: https://github.com/NixOS/nixpkgs/issues/36392

Appears to be an issue with the dock and using a USBC to Display Port cable.

.. Switching from Gnome (Wayland) to Gnome Classic (X11) has resolved some annoying suspend issues.

Suspend is inconsistent

Tracking the issue: https://github.com/linux-surface/linux-surface/issues/1412