Framework on NixOS basic configuration.nix

Hey everyone,

I recently got my Framework 13 and installed a couple of distros on it.
I had the most success with NixOS and thought it would be a good idea to share my simple configuration.nix

It doesn’t use Homemanager or Flakes yet and is merely meant for people that want to quick start their NixOSxFramework journey.

Please remember to follow the short notes I left and register your finger, run the fwupd commands and make sure to change the desktop from Gnome to plasma or whatever u want to use etc.

Github link:



The best part of nixos is being able to see what my system will become before deploying it.

Is the experimental bluetooth required? I dont have my fw yet.

1 Like

Ah no, I had it in there due to some issues with my new LDAC compatible headphones.
You can leave it out if you don’t need LDAC :smiley:

From what I found out, it was only required to turn off multipoint pairing within the headphonesa (Edifier 980) app to use LDAC.

Let me remove that line, thanks for the heads up!

Suggestions to change the config:

services.fwupd.extraRemotes = [ "lvfs-testing" ];

Not required, 3.03 AMD bios is no longer beta

import framework 16 profile for drivers

Can then remove:

  services.fprintd.enable = true;
  services.fprintd.tod.driver = pkgs.libfprint-2-tod1-vfs0090;

as its enabled in the framework 16 7040 profile along with other things.

1 Like

Will give it a look and come back once done! Thx for notifying, I heard about Framework’s new Team for the Firmware.

Didn’t expect such rapid change!

Update: thx for the heads up added tarball for the repo and works like a charm.

1 Like

I just realized I am in the framework 13 part of the forum. I gave info on framework 16 stuff. So you might need lvfs-testing still.

Nope, seems to be running fine haha, even smoother than before tbh.


Update, changed alot of stuff around and had to fix a bunch of stuff.
I encountered alot of issues and decided to version control my nixos from now on.
Find the new repository here. I haven’t yet managed to properly add the hardware channel to imports due to issues with fetchurl. Will update in that config here:

(import “${hardwareFramework}/framework/13-inch/7040-amd”)
fixed said issues ^^