Arch Linux on X1 Carbon 6th Gen¶
This is a bunch of random notes on installing Arch Linux on a ThinkPad X1 Carbon 6th Gen.
The linux desktop experience has come a long way, after a few months I find the experience very good overall. This setup is designed to be low power for long battery life on the road.
No more blue screens after suspend or undocking with lid closed. Also under Arch the laptop correctly goes into power save mode when you close the lid 100% of the time.
Arch Linux Live disk filesystem out of space¶
Increase the live cd filesystem /dev/loop0 or the cowspace:
# mount -o remount,size=2G /run/archiso/cowspace
PXE boot Arch Linux¶
To PXE boot an X1 Carbon Thinkpad 6gen using the lenovo USB-C travel dongle need to disable the UEFI implementation and switch to legacy mode in BIOS
Desktop setup¶
Display Manager: DM sddm
Desktop: KDE Plasma
Sound: pipwire-pulse (Bluetooth / Zoom / Airpod Pro / Bose QC35 is a headache)
RDP clients¶
Since I hate activating the fan on the laptop and I love long battery life I use the X1 as a thin client and spend most time on RDP or Citrix to a more power hungry machine.
For RDP I like the remmina RDP client the best, but I occasionally encounter an issue where logging in to a Windows 10 machine gets stuck at a blank blue screen. KRDC does not have this problem when logging into the same machine so it is more reliable however I find the performance in terms of screen rendering on Remmina better 😦
Enable middle mouse click on Citrix¶
Edit
~/.ICAClient/wfclient.ini
Change this setting to False:
MouseSendsControlV=False
Persistent USB Installation¶
I installed it on a tiny 0781:5583 SanDisk Corp. Ultra Fit USB drive and it works fine.
KRDC Citrix not eating keyboard events¶
Many applications do not eat keyboard events especially in RDP, KRDC, Remmina or Citrix. When I am full screen in Remmina, KRDC or Citrix and I press the windows key I do not want the KDE start menu to show ontop of my session.
There is a native KDE solution to disable all keyboard shortcuts for a given window:
<alt><f3> to open the window menu for any application
More Actions -> special rules for this window
“Appearance & Corrections” tab
“Ignore Global shortcuts” -> “Force” -> “Yes”
After this no keyboard shortcuts will be sent to KDE.
If you want to make exception for certain key combinations, say to switch virtual desktops see here:
Slow WiFi on Arch Linux with Intel Wireless¶
Terrible WiFi performance (similar to 128K dial up) on Network controller:
Intel Corporation Wireless 8265 / 8275 (rev 78)
The WiFi speed on the X1 Carbon 6th Gen under Arch linux was very poor. After some investigation the easy fix was to enable antenna aggregation.
Edit: /etc/modprobe.d/iwlwifi.conf
And add this line then reboot, it works perfect after that.
options iwlwifi 11n_disable=8
Control HDMI monitor and built in display brightness¶
There is a small amount of setup to control the brightness.
To set the internal display:
echo 5 > /sys/class/backlight/intel_backlight/brightness
To configure the external HDMI display low:
ddcutil setvcp 10 1
Pacman packages¶
This is a list of all explicitly installed packages:
[brent@x1 ~]$ pacman -Qqe
amd-ucode
autoconf
automake
base
binutils
bison
bluedevil
broadcom-wl
dhcpcd
efibootmgr
f1viewer
fakeroot
file
findutils
firefox
flex
freerdp
gawk
gcc
gettext
git
go
grep
groff
grub
gzip
htop
icaclient
intel-ucode
krdc
krecorder
kscreen
kwallet-pam
kwalletmanager
libtool
linux
linux-firmware
m4
make
mpv
net-tools
networkmanager
networkmanager-l2tp
nordvpn-bin
nss-mdns
openssh
pacman
patch
pavucontrol
pipewire-pulse
pkgconf
plasma-desktop
plasma-nm
plasma-pa
plasma-thunderbolt
powerdevil
powertop
pycharm-professional
python-pip
remmina-git
s-tui
screen
sddm
sed
shim-signed
sof-firmware
spotify
strongswan
sudo
texinfo
thinkfan-ui
tlp
vi
vim
visual-studio-code-bin
which
xf86-video-intel
xsel
yakuake
yay-bin
zoom
This is a list of things installed via yay from AUR:
[brent@x1 ~]$ pacman -Qqm
f1viewer
icaclient
krecorder
nordvpn-bin
pycharm-professional
remmina-git
shim-signed
spotify
thinkfan-ui
visual-studio-code-bin
yay-bin
zoom
Static IP¶
/etc/systemd/network/10-static-eno1.network
[Match]
Name=eno1
[Network]
Address=192.168.1.5/24
Gateway=192.168.1.1
DNS=8.8.8.8
sudo systemctl restart systemd-networkd
For installs that were done with pacstrap I found that the
systemd-networkd.service
was not starting on boot. To fix this I had to enable
the service:
# Check if its enabled
systemctl is-enabled systemd-networkd.service
# Enable it
systemctl enable systemd-networkd.service
Need to configure ntp for pac strapped machine
pacman -Sy ntp
# Sync hardware clock to ntp (ntp must be stopped for this to work)
ntpd -gq
# enable it
sudo systemctl enable ntpd
# start it
sudo systemctl start ntpd
Checking network status when working with systemd-networkd
brent@nuc2 ~]$ sudo systemctl status systemd-networkd
[sudo] password for brent:
● systemd-networkd.service - Network Configuration
Loaded: loaded (/usr/lib/systemd/system/systemd-networkd.service; enabled; preset: enabled)
Active: active (running) since Thu 2024-05-23 15:02:40 +08; 2 weeks 4 days ago
TriggeredBy: ● systemd-networkd.socket
Docs: man:systemd-networkd.service(8)
man:org.freedesktop.network1(5)
Main PID: 4403 (systemd-network)
Status: "Processing requests..."
Tasks: 1 (limit: 38361)
FD Store: 0 (limit: 512)
Memory: 4.0M (peak: 4.7M)
CPU: 18.399s
CGroup: /system.slice/systemd-networkd.service
└─4403 /usr/lib/systemd/systemd-networkd
Jun 10 12:31:59 nuc2 systemd-networkd[4403]: wlp3s0: Gained carrier
Jun 10 12:37:03 nuc2 systemd-networkd[4403]: wlp3s0: Lost carrier
Jun 10 12:37:03 nuc2 systemd-networkd[4403]: wlp3s0: DHCPv6 lease lost
Jun 10 12:37:03 nuc2 systemd-networkd[4403]: wlp3s0: Connected WiFi access point: Luna (60:32:b1:e4:61:57)
Jun 10 12:37:03 nuc2 systemd-networkd[4403]: wlp3s0: Gained carrier
Jun 10 15:03:31 nuc2 systemd-networkd[4403]: cali393b7df007f: Link UP
Jun 10 15:03:31 nuc2 systemd-networkd[4403]: cali393b7df007f: Gained carrier
Jun 10 15:03:33 nuc2 systemd-networkd[4403]: cali393b7df007f: Gained IPv6LL
Jun 10 15:07:06 nuc2 systemd-networkd[4403]: cali393b7df007f: Link DOWN
Jun 10 15:07:06 nuc2 systemd-networkd[4403]: cali393b7df007f: Lost carrier
[brent@nuc2 ~]$
Listing interfaces:
[brent@nuc2 ~]$ networkctl list
IDX LINK TYPE
OPERATIONAL SETUP
1 lo loopback carrier unmanaged
2 eno1 ether routable configured
3 wlp3s0 wlan routable configured
4 tailscale0 none routable unmanaged
5 nodelocaldns ether off unmanaged
6 kube-ipvs0 ether off unmanaged
10 cali64a8ea3744f ether degraded unmanaged
12 calie3e3b8c618b ether degraded unmanaged
29 cali8c5e61286f6 ether degraded unmanaged
31 cali3f2712e415a ether degraded unmanaged
32 cali20a52c215e7 ether degraded unmanaged
33 cali03d27e0a1f2 ether degraded unmanaged
117 cali5bbec10622f ether degraded unmanaged
120 vxlan.calico vxlan routable unmanaged
Comments
comments powered by Disqus