Few other notes, not necessarily all Framework 16 specific, but that I've jotted down over some time running Debian (mostly unstable, couple things pulled from experimental; on kernel 6.11 right now):

###

On top of disabling the wake sources, systemd >= 256 made some changes that broke sleep. (Relating to trying to freeze user.slice when you have NFS mounted or anything running in KVM.) If you're finding the machine takes a long time to sleep and refuses to wake up (frozen on unlock screen), reboot and check `journalctl -b-1` for messages about failing to freeze user.slice. If found, add:

# In /etc/systemd/system/systemd-suspend.service.d/disable_freeze_user_session.conf
[Service]
Environment="SYSTEMD_SLEEP_FREEZE_USER_SESSIONS=false"

Tracked here: https://github.com/systemd/systemd/issues/33083

###

People said the speakers were bad. I don't really care about audio quality but... they're bad. If you're willing to use Pipewire (default with Gnome on Debian 12, easy to install for KDE/etc; see https://wiki.debian.org/PipeWire) there's an Easy Effects profile that cleans it up _a lot_.

Install Easy Effects (I'd recommend the flatpak as it has rnnoise included whereas the apt package doesn't; which is useful for mic filtering if you do calls) and load one of the profiles people have posted. I think I use this one: https://community.frame.work/t/guide-yet-another-easyeffects...

Makes the audio _way_ better.

(Potential gotcha: If you install Easy Effects from one source, start it, then try another source... It's still running in the background and the new instance you start will just bring it forward. Make sure you _fully_ exit before wasting hours trying to compile it because for some reason RNNoise isn't working in your flatpak.)

###

Had some issues with some apps starting to a black screen when the dGPU was installed. In KDE you can change the shortcut properties, under "Advanced Options" to uncheck "run using dedicated graphics card". Otherwise find some way to set `DRI_PRIME=0`.

You can force apps onto the dGPU by setting `DRI_PRIME=1` before running. This can be included on, e.g., Steam game launch options if desired.

###

Fingerprint scanner works but is kinda poorly supported in sddm/kde.

Install `fprintd libpam-fprintd`. Enroll with `fprintd-enroll yourusername`.
Run `fprintd-verify` to validate it works.

From there you can run `sudo pam-auth-update` and enable the fingerprint scanner. The weirdness is "in sddm, you need to hit enter to attempt the login then when it seems to freeze put your finger on the scanner" type stuff. You'll figure it out.

###

The colour profile for the screen's been extracted from the Windows drivers and is available at: https://gitlab.com/samokosik/framework-icm-profile

Put it in `/usr/share/color/icc/colord/`. Run `colormgr get-profiles` to get the profile id (something like icc-bighexstring). Run `colormgr get-devices` to get the laptop screen's id (something like eDP-1).

Add the profile to the screen with `colormgr device-add-profile <device> <profile>`.

(For KDE can also install colord-kde to get this in your system settings.)

###

For hardware monitoring, Framework has a lm sensors config available.

Install lm-sensors. Then download https://raw.githubusercontent.com/FrameworkComputer/lm-senso... and place it in /etc/sensors.d/.

Run `sudo sensors-detect` to pick up all the sensors, then `sensors` should display all your temps/voltages/etc.

###

There's some USB PD weirdness. If you're trying to run docks/external displays/etc and getting flickering, disconnects, or other weirdness try giving them their own power supply rather than powering through the laptop.

###

LibreOffice has some nasty scaling issues with mixed-DPI displays (with the F16's internal display being fairly high res, you may run into this).

If you start it with `WAYLAND_DISPLAY=` set, it will force it into X11 mode where the server handles the scaling rather than the client (or the other way around?) and it's functional again.