From 6ba3739830f04ce62816feb2c43c30315d6fe2b6 Mon Sep 17 00:00:00 2001 From: Aleksandr Lebedev Date: Sat, 26 Jul 2025 10:33:22 +0200 Subject: [PATCH] Framework 12 fixes + emacs update --- flake.lock | 6 ++-- flake.nix | 1 - nixos/hardware/framework12/default.nix | 30 +++++++++++++++++++ nixos/hosts/kylekrein-framework12/default.nix | 9 ++---- 4 files changed, 36 insertions(+), 10 deletions(-) create mode 100644 nixos/hardware/framework12/default.nix diff --git a/flake.lock b/flake.lock index 6df7d79..0e2552b 100644 --- a/flake.lock +++ b/flake.lock @@ -333,11 +333,11 @@ ] }, "locked": { - "lastModified": 1753479356, - "narHash": "sha256-fJZgp57I30SMZKwq2UQfGBkM4R7HqrZLde9YRUBe3dw=", + "lastModified": 1753518720, + "narHash": "sha256-C5UWpgvNOxGcHiAfNHPrbepydjVXYULiktkPmGOoGl8=", "owner": "kylekrein", "repo": "emacs-config", - "rev": "c256cbb11af63a3f5026ab4a9c427f51ef0d2dae", + "rev": "34035d410d01a95f623f3c38a20bbf11ff57ec63", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 2d78412..eaf2fc5 100644 --- a/flake.nix +++ b/flake.nix @@ -267,7 +267,6 @@ modules = [ (import ./disko/impermanence-tmpfs-luks.nix {device = "/dev/nvme0n1";}) ./nixos/configuration.nix - inputs.nixos-hardware.nixosModules.framework-12-13th-gen-intel ]; }; "kylekrein-mac" = nixpkgs.lib.nixosSystem { diff --git a/nixos/hardware/framework12/default.nix b/nixos/hardware/framework12/default.nix new file mode 100644 index 0000000..560c3a7 --- /dev/null +++ b/nixos/hardware/framework12/default.nix @@ -0,0 +1,30 @@ +{ + pkgs, + lib, + inputs, + ... +}: { + imports = [ + inputs.nixos-hardware.nixosModules.framework-12-13th-gen-intel + ]; + # Ensure that the `pinctrl_tigerlake` kernel module is loaded before `soc_button_array`. + # This is required for correcly switching to tablet mode when the display is folded back. + boot.extraModprobeConfig = '' + softdep soc_button_array pre: pinctrl_tigerlake + ''; + # Patch the `udev` rules shipping with `iio-sensor-proxy` according to: + # https://github.com/FrameworkComputer/linux-docs/blob/main/framework12/Ubuntu-25-04-accel-ubuntu25.04.md + nixpkgs.overlays = [ + (final: prev: { + iio-sensor-proxy = prev.iio-sensor-proxy.overrideAttrs (old: { + postInstall = '' + ${old.postInstall or ""} + sed -i 's/.*iio-buffer-accel/#&/' $out/lib/udev/rules.d/80-iio-sensor-proxy.rules + ''; + }); + }) + ]; + environment.systemPackages = [ + pkgs.frameworkTool + ]; +} diff --git a/nixos/hosts/kylekrein-framework12/default.nix b/nixos/hosts/kylekrein-framework12/default.nix index 44bda75..25df318 100644 --- a/nixos/hosts/kylekrein-framework12/default.nix +++ b/nixos/hosts/kylekrein-framework12/default.nix @@ -9,7 +9,7 @@ ... }: { imports = [ - ../../hardware/nvidia + ../../hardware/framework12 ../../modules/niri @@ -50,15 +50,13 @@ blender ladybird prismlauncher - - #inputs.nix-gaming.packages.${pkgs.system}.star-citizen ]; zramSwap = { enable = true; # Hopefully? helps with freezing when using swap }; services.zerotierone = { - enable = true; + enable = false; port = 9994; joinNetworks = [ "A84AC5C10AD269CA" @@ -69,13 +67,12 @@ services.ollama = { enable = true; loadModels = ["qwq" "llama3.1" "qwen2.5-coder:7b"]; - acceleration = "cuda"; home = "/persist/ollama"; user = "ollama"; group = "ollama"; }; - boot.binfmt.emulatedSystems = ["aarch64-linux" "riscv64-linux"]; + #boot.binfmt.emulatedSystems = ["aarch64-linux" "riscv64-linux"]; services.open-webui.enable = true; #services.open-webui.package = unstable-pkgs.open-webui;