Debian based Linux on the Framework Laptop

@Anita_Lewis Thank you for the instructions! I just followed them from a Mint Xfce 20.2 stick directly and can confirm functional Wifi (the kernel upgrade did have to be done with a USB-ethernet dongle in my hands), trackpad (had to toggle a setting in “Mouse and Trackpad” for tap-to-click but otherwise A-OK), display, and sound. I have not yet tried anything fancy with the libfprint package for the fingerprint sensor, but so far at least the power button has not become a mini-furnace and I’m not particularly set on having fingerprint login anyway.

Figuring Mint is a decently popular distribution, perhaps a stickied howto/experiences thread/wiki would be helpful for discoverability in the future?

====
Will add one quality-of-life improvement if anybody else is using xfce: there is a “Brightness step count” accessible from the taskbar battery icon → left click → settings that you can increase to make the keyboard brightness adjustment more fine-grained. The screen is so bright that having the extra resolution at the low end is quite convenient

Anyone with any luck on Debian based so far?

Interesting. I installed Debian 10 on my Framework laptop last week. I’d tried to install KDE but it wasn’t working. Apparently the kernel installed didn’t have the graphics driver built in. It also didn’t have the Wifi driver built in. I’d been trying to figure out how to build a custom kernel to get those driver this weekend.

Then I saw that Debian 11 had just been release on Friday. So I upgraded to that version and voila, KDE started working. I’ll have to figure out now if Wifi is working…

@Moronpalindromenorom - Debian 11 comes with many package upgrades that should fill some of the gaps from a hardware perspective.
I do suspect, however, that the wireless failure is due to installing the standard Debian packages. I’d wager that the firmware for the wireless card requires firmware that is not ‘open’.
This installer is what I typically use in cases like this:
https://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/11.0.0+nonfree/amd64/iso-cd/
use the ’ firmware-11.0.0-amd64-netinst.iso’ link to download the netinstaller (small download, selected packages are downloaded during the installation process). This will ensure that Debian has a chance to detect any hardware that requries non-free firmware and will install it for you.

I just used this to install Debian 11 on a MacBook Pro 15", and reinstall on my X1 - worked a treat and I didn’t have to fiddle with anything to get them working (except install TPM for power management).

This post scares me a bit - I am a full Linux user… I mainly use Ubuntu, and my preference is KDE - Kubuntu.

Does anyone know what distro(s) will fully work with the Frame.work? Ubuntu? Kubuntu? With fingerprint - and EVERYTHING?

Paulie420

@Paulie420 - Debian is a special breed because, unlike Ubuntu (which is a commercial product) and Arch (which is a rolling release), It has a strict validation and becomes stabilized at release.
Debian 11 JUST came out of its ‘Testing’ phase and is now ‘stable’. That means that included packages will get maintenance updates but not necessarily major feature updates.
This means that it takes a bit more work to get this distro on bleeding-edge hardware (which, arguably, the Framework is).
Ubuntu is in a similar boat, but the upcoming release, 21.10 in October, should ease the remaining issues.

Have a look at this post for information on the current (non-LTS) version: Ubuntu 21.04 on the Framework Laptop

1 Like

@Paulie420 I’m not speaking from personal experience (I’m in Batch 2 so my machine hasn’t shipped yet), but my understanding is that as long as you install Fedora from the Respin disk images, everything just works, including the stuff other users / distros have issues with (fingerprint reader, WiFi, Bluetooth, etc). If you’re used to Kubuntu, Fedora has a Respin that uses KDE.

Mirroring what has been said before re: Debian - the ‘stable’ version (currently Debian 11) lags behind other distributions that update more frequently (such as Ubuntu and derivatives, or rolling release distros like Arch or Fedora. That said, the current kernel for Debian 11 is 5.10.0-8, and libfprint (included in the biometric-driver-community-multidevice metapackage) is 1.90.7-2. I set up my Framework for my partner to use so I can’t verify Debian 11 works out of the box with the network card but 5.10 has support for ax210 so it should.
@Paulie420 If you are a KDE user and you want to stick w/ Kubuntu, all you really need is linux kernel 5.10 to support the WiFi card, and libfprint 1.92.0 or newer for the fingerprint reader. If whatever release you’re using has both of those, you’re all set. If not, you’ll need to install a 5.10 kernel, and build libfprint 1.92 from source.

If you don’t want to build the current version of libfprint from source and/or don’t want to install a custom kernel, you’ll probably have to wait for 21.09 if you’re not using LTS. 21.04 has 5.10 so it should support the WiFi straight away. If you want to use an older Kubuntu version (20.04, for example) a compatible kernel should be available in the backports repository. You’ll still have to build the fingerprint software, as I think all of the Ubuntu distributions are running libfprint 1.90.7-2.

1 Like

Thanks a lot, Gary S… as much as I think I know about Linux, I’m still a new sysOp. :stuck_out_tongue: RIGHT NOW, I’m on 5.11.0-25-generic, so I guess I don’t have a ton to worry about… I don’t mind building [any] software from source, but it sounds like I might not even have to. I’m using Kubuntu 21.04.

Thanks for your reply.

Paulie420

1 Like

I installed stock Ubuntu 21.04 w/ Gnome on mine. I haven’t tried doing the fingerprint stuff yet. I’m currently on 5.11.0-31-generic.

Sadly, I haven’t yet been able to get the wifi module working on Debian 11 yet. It looks like there’s been a regression of the Intel AX210 driver in the kernel in the latest release: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=966218. It’s exactly what I’ve been seeing…

1 Like

For those of who who want to install Linux Mint, consider the edge installation. You can see the documentation here: Edge ISO Images — Linux Mint User Guide documentation

The current Edge ISO image is for Mint version 20.2 and already contains the 5.11 kernel. This will prevent the user from having to connect via Ethernet to upgrade the kernel version after the standard installation process.

2 Likes

In case anyone’s interested, I’ve written up a (somewhat lengthy) post on getting Debian Bullseye up and running. Probably the most interesting bit is I’ve included instructions on how to build actual Debian packages for libfprint 1.92.1 and fprintd 1.92.0, which results in a cleaner install and makes removing or upgrading them later a heck of a lot easier:

5 Likes

As an FYI for folks, Debian Testing has now migrated to Linux 5.14.0, which means PSR should work out of the box now!

In addition, the AX210 should work, though on my own laptop Bluetooth still doesn’t work for reasons I have yet to figure out. It’s especially weird because when I stick the AX210 in my old X1 Carbon with the 5.14.0 testing kernel it works just fine. It’s only when the card is in my Framework that it doesn’t. Hopefully other folks have better luck!

2 Likes

Got my FW today and installed debian stable.

  1. NetInstall from the /current/ branch (dated 09/25/2021)
  2. Obtain and move linux-image-5.14*.deb and firmware-linux-nonfree (and dependencies) onto the laptop
  3. Install the new kernel image and firmware and reboot

Works great - running kernel 5.14 on Debian Stable.

Now to go through the power management/battery life threads to get it tuned for daily use.

1 Like

Eh, yeah. I am on Debian Bookworm/kernel 5.14 with the Intel firmware-iwlwifi package - looks like there’s some regression with how the bluetooth firmware interacts with the machine. I was able to get the bluetooth working by replacing the firmware included in the sid/bookworm release (20210818-1, Intel release 28502) with one that was recently updated on the linux firmware git repo (Intel release 31586, checked into the repo on Sep 19th).

https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/commit/?id=087753f61e17ac978c97bc9e838bd64837675c44

Copy the sfi file into /lib/firmware/intel, then power cycle your machine (shutdown, wait about 10 seconds, power it on again). The issue here is that while the bluetooth works just fine right after the power-on, any reboot will make it disappear. Resuming from sleep (not hibernation) is just fine, though.

1 Like

Yup, confirmed here as well. TBH, this firmware is the first time I’ve seen the AX210 work with Linux 5.14 at all. But I agree, a reboot or resume from hibernation leads to Bluetooth no longer functioning.

1 Like

A quick update - I tried using bluetooth on kernel 5.14 and, surprise surprise, I ran into the ‘warm boot’ issue with Bluetooth.

So I compiled and installed 5.12.15 from kernel.org and all of my problems have evaporated. I just used the same kernel configuration from my initial install with 5.10 and it built in about 45 minutes (I wasn’t timing and I was sleepy as it was finishing up).

1 Like

some notes from my install of Debian testing with i3 over an LXDE base installation:

  • xbacklight doesn’t work as expected, you need to use light instead. You’ll also need to chmod +s $(which light) after installing.
  • to get the touchpad working as expected, I added this to a file (as root) in /etc/X11/xorg.conf.d:
Section "InputClass"
	Identifier "touchpad"
	Driver "libinput"
	MatchIsTouchpad "on"
	Option "Tapping" "on"
EndSection
  • the DPI is … interesting (see xdpyinfo | grep -B2 resolution for more info). To start with, I added this to a file in the same xorg.conf.d folder, again owned by root:
Section "Monitor"
	Identifier "eDP-1"
	DisplaySize 285 190
EndSection

and then added a file in /etc/X11/Xresources/ (201 is actually correct, but 144 looked better to me):

Xft.dpi: 144
  • I also added this to the bottom of ~/.config/i3/config:
# EDITS
# needed for pkexec stuff
exec_always --no-startup-id lxpolkit
# ... no
focus_follows_mouse no
# backlight keys
bindsym XF86MonBrightnessDown exec --no-startup-id light -U 1
bindsym XF86MonBrightnessUp exec --no-startup-id light -A 1

edit: if you’re using steam, you’ll also want to run: echo "GDK_SCALE=2 steam" | sudo tee /usr/local/bin/steam && sudo chmod +x /usr/local/bin/steam to fix its DPI - it doesn’t respect X’s font DPI, just the toolkit’s scaling factor

3 Likes

Thank you! This was the only way I was able to get bluetooth working on my FW running Debian 11. It sucks that a soft reboot borks it, but at least it’s an easy fix.