From 2ca863db60ffd0f636baa5ee9d74d55cc76c868e Mon Sep 17 00:00:00 2001 From: Lgmrszd Date: Sun, 11 May 2025 00:34:52 +0400 Subject: [PATCH 1/8] laptop: add floorp --- hosts/laptop/home/default.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/hosts/laptop/home/default.nix b/hosts/laptop/home/default.nix index 7af1f69..7c29602 100644 --- a/hosts/laptop/home/default.nix +++ b/hosts/laptop/home/default.nix @@ -200,6 +200,11 @@ }; + programs.floorp = { + enable = true; + + }; + # --------- programs.java = { From 060969555ab8f32b257dedf0dea22745e390708a Mon Sep 17 00:00:00 2001 From: Lgmrszd Date: Sun, 11 May 2025 00:35:12 +0400 Subject: [PATCH 2/8] laptop: edit locales --- hosts/laptop/configuration.nix | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) diff --git a/hosts/laptop/configuration.nix b/hosts/laptop/configuration.nix index eb59d82..29213dc 100644 --- a/hosts/laptop/configuration.nix +++ b/hosts/laptop/configuration.nix @@ -200,15 +200,8 @@ in i18n.defaultLocale = "en_US.UTF-8"; i18n.extraLocaleSettings = { -# LC_ADDRESS = "ru_RU.UTF-8"; -# LC_IDENTIFICATION = "ru_RU.UTF-8"; -# LC_MEASUREMENT = "ru_RU.UTF-8"; -# LC_MONETARY = "ru_RU.UTF-8"; -# LC_NAME = "ru_RU.UTF-8"; -# LC_NUMERIC = "ru_RU.UTF-8"; -# LC_PAPER = "ru_RU.UTF-8"; -# LC_TELEPHONE = "ru_RU.UTF-8"; - LC_TIME = "ru_RU.UTF-8"; + LC_MEASUREMENTS = "en_DK.UTF-8"; + LC_TIME = "en_DK.UTF-8"; }; # Enable the X11 windowing system. From cfdff1e2b6bb300c805a50c7fb51ffb30556777c Mon Sep 17 00:00:00 2001 From: Lgmrszd Date: Sun, 11 May 2025 00:35:36 +0400 Subject: [PATCH 3/8] laptop: add thinkfan --- hosts/laptop/configuration.nix | 98 ++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) diff --git a/hosts/laptop/configuration.nix b/hosts/laptop/configuration.nix index 29213dc..a75a63c 100644 --- a/hosts/laptop/configuration.nix +++ b/hosts/laptop/configuration.nix @@ -305,6 +305,104 @@ in services.thinkfan = { enable = true; + # https://wiki.archlinux.org/title/Lenovo_ThinkPad_P15_Gen_1 + sensors = [ + # # NVIDIA GPU + # { + # query = "01:00.0"; + # type = "nvml"; + # } + # acpitz + # crit = 128°C + { + query = "/sys/class/hwmon"; + type = "hwmon"; + name = "acpitz"; + indices = [1]; + correction = [0]; + } + # pch_cometlake + { + query = "/sys/devices/virtual/thermal"; + type = "hwmon"; + name = "pch_cometlake"; + indices = [1]; + correction = [0]; + } + # # nvme + # # high = 85°C + # { + # query = "/sys/devices/pci0000:00/0000:00:1d.0/0000:55:00.0/nvme/nvme1"; + # type = "hwmon"; + # name = "nvme"; + # indices = [2 3]; + # correction = [0 0]; + # } + # # nvme + # # high = 85°C + # { + # query = "/sys/devices/pci0000:00/0000:00:1b.0/0000:02:00.0/nvme/nvme0"; + # type = "hwmon"; + # name = "nvme"; + # indices = [2 3]; + # correction = [0 0]; + # } + # coretemp + # high = 100°C, crit = 100°C. + { + query = "/sys/devices/platform/coretemp.0/hwmon"; + type = "hwmon"; + name = "coretemp"; + indices = [1 2 3 4 5 6 7 8 9]; + correction = [0 0 0 0 0 0 0 0 0]; + } + # thinkpad + { + query = "/sys/devices/platform/thinkpad_hwmon/hwmon"; + type = "hwmon"; + indices = [1 2 3 4 5 6]; + correction = [0 0 0 0 0 0]; + } + # thinkpad + { + query = "/sys/devices/platform/thinkpad_hwmon/hwmon"; + type = "hwmon"; + indices = [7]; + correction = [0]; + } + # thinkpad + { + query = "/sys/devices/platform/thinkpad_hwmon/hwmon"; + type = "hwmon"; + optional = true; + indices = [8]; + correction = [0]; + } + # iwlwifi_1 + { + query = "/sys/class/hwmon"; + type = "hwmon"; + name = "iwlwifi_1"; + optional = true; + indices = [1]; + correction = [0]; + } + ]; + fans = [ + { + query = "/proc/acpi/ibm/fan"; + type = "tpacpi"; + } + ]; + levels = [ + [0 0 60] + [2 60 65] + [3 65 70] + [5 70 75] + [6 75 80] + [7 80 85] + ["level disengaged" 85 255] + ]; }; From c96b8201b599165eced8d98a4969a65648cd8cff Mon Sep 17 00:00:00 2001 From: Lgmrszd Date: Wed, 14 May 2025 06:24:47 +0400 Subject: [PATCH 4/8] laptop: move thinkfan options into separate file and adjust levels --- hosts/laptop/configuration.nix | 104 +-------------------------------- hosts/laptop/thinkfan.nix | 103 ++++++++++++++++++++++++++++++++ 2 files changed, 104 insertions(+), 103 deletions(-) create mode 100644 hosts/laptop/thinkfan.nix diff --git a/hosts/laptop/configuration.nix b/hosts/laptop/configuration.nix index a75a63c..b67e44b 100644 --- a/hosts/laptop/configuration.nix +++ b/hosts/laptop/configuration.nix @@ -10,6 +10,7 @@ in { imports = [ + ./thinkfan.nix ./mounts.nix ./akkotest.nix ]; @@ -303,109 +304,6 @@ in #media-session.enable = true; }; - services.thinkfan = { - enable = true; - # https://wiki.archlinux.org/title/Lenovo_ThinkPad_P15_Gen_1 - sensors = [ - # # NVIDIA GPU - # { - # query = "01:00.0"; - # type = "nvml"; - # } - # acpitz - # crit = 128°C - { - query = "/sys/class/hwmon"; - type = "hwmon"; - name = "acpitz"; - indices = [1]; - correction = [0]; - } - # pch_cometlake - { - query = "/sys/devices/virtual/thermal"; - type = "hwmon"; - name = "pch_cometlake"; - indices = [1]; - correction = [0]; - } - # # nvme - # # high = 85°C - # { - # query = "/sys/devices/pci0000:00/0000:00:1d.0/0000:55:00.0/nvme/nvme1"; - # type = "hwmon"; - # name = "nvme"; - # indices = [2 3]; - # correction = [0 0]; - # } - # # nvme - # # high = 85°C - # { - # query = "/sys/devices/pci0000:00/0000:00:1b.0/0000:02:00.0/nvme/nvme0"; - # type = "hwmon"; - # name = "nvme"; - # indices = [2 3]; - # correction = [0 0]; - # } - # coretemp - # high = 100°C, crit = 100°C. - { - query = "/sys/devices/platform/coretemp.0/hwmon"; - type = "hwmon"; - name = "coretemp"; - indices = [1 2 3 4 5 6 7 8 9]; - correction = [0 0 0 0 0 0 0 0 0]; - } - # thinkpad - { - query = "/sys/devices/platform/thinkpad_hwmon/hwmon"; - type = "hwmon"; - indices = [1 2 3 4 5 6]; - correction = [0 0 0 0 0 0]; - } - # thinkpad - { - query = "/sys/devices/platform/thinkpad_hwmon/hwmon"; - type = "hwmon"; - indices = [7]; - correction = [0]; - } - # thinkpad - { - query = "/sys/devices/platform/thinkpad_hwmon/hwmon"; - type = "hwmon"; - optional = true; - indices = [8]; - correction = [0]; - } - # iwlwifi_1 - { - query = "/sys/class/hwmon"; - type = "hwmon"; - name = "iwlwifi_1"; - optional = true; - indices = [1]; - correction = [0]; - } - ]; - fans = [ - { - query = "/proc/acpi/ibm/fan"; - type = "tpacpi"; - } - ]; - levels = [ - [0 0 60] - [2 60 65] - [3 65 70] - [5 70 75] - [6 75 80] - [7 80 85] - ["level disengaged" 85 255] - ]; - }; - - # Enable touchpad support (enabled default in most desktopManager). services.libinput.enable = true; diff --git a/hosts/laptop/thinkfan.nix b/hosts/laptop/thinkfan.nix new file mode 100644 index 0000000..472c073 --- /dev/null +++ b/hosts/laptop/thinkfan.nix @@ -0,0 +1,103 @@ +{ + services.thinkfan = { + enable = true; + # https://wiki.archlinux.org/title/Lenovo_ThinkPad_P15_Gen_1 + sensors = [ + # # NVIDIA GPU + # { + # query = "01:00.0"; + # type = "nvml"; + # } + # acpitz + # crit = 128°C + { + query = "/sys/class/hwmon"; + type = "hwmon"; + name = "acpitz"; + indices = [1]; + correction = [0]; + } + # pch_cometlake + { + query = "/sys/devices/virtual/thermal"; + type = "hwmon"; + name = "pch_cometlake"; + indices = [1]; + correction = [0]; + } + # # nvme + # # high = 85°C + # { + # query = "/sys/devices/pci0000:00/0000:00:1d.0/0000:55:00.0/nvme/nvme1"; + # type = "hwmon"; + # name = "nvme"; + # indices = [2 3]; + # correction = [0 0]; + # } + # # nvme + # # high = 85°C + # { + # query = "/sys/devices/pci0000:00/0000:00:1b.0/0000:02:00.0/nvme/nvme0"; + # type = "hwmon"; + # name = "nvme"; + # indices = [2 3]; + # correction = [0 0]; + # } + # coretemp + # high = 100°C, crit = 100°C. + { + query = "/sys/devices/platform/coretemp.0/hwmon"; + type = "hwmon"; + name = "coretemp"; + indices = [1 2 3 4 5 6 7 8 9]; + correction = [0 0 0 0 0 0 0 0 0]; + } + # thinkpad + { + query = "/sys/devices/platform/thinkpad_hwmon/hwmon"; + type = "hwmon"; + indices = [1 2 3 4 5 6]; + correction = [0 0 0 0 0 0]; + } + # thinkpad + { + query = "/sys/devices/platform/thinkpad_hwmon/hwmon"; + type = "hwmon"; + indices = [7]; + correction = [0]; + } + # thinkpad + { + query = "/sys/devices/platform/thinkpad_hwmon/hwmon"; + type = "hwmon"; + optional = true; + indices = [8]; + correction = [0]; + } + # iwlwifi_1 + { + query = "/sys/class/hwmon"; + type = "hwmon"; + name = "iwlwifi_1"; + optional = true; + indices = [1]; + correction = [0]; + } + ]; + fans = [ + { + query = "/proc/acpi/ibm/fan"; + type = "tpacpi"; + } + ]; + levels = [ + [0 0 60] + [2 58 67] + [3 63 72] + [5 68 77] + [6 73 82] + [7 78 83] + ["level disengaged" 80 255] + ]; + }; +} \ No newline at end of file From 093fe30a9ddc59afe30242e40e9a2ee1140cffe8 Mon Sep 17 00:00:00 2001 From: Lgmrszd Date: Sat, 17 May 2025 18:59:44 +0400 Subject: [PATCH 5/8] laptop: add frprint --- hosts/laptop/configuration.nix | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/hosts/laptop/configuration.nix b/hosts/laptop/configuration.nix index b67e44b..495b67b 100644 --- a/hosts/laptop/configuration.nix +++ b/hosts/laptop/configuration.nix @@ -95,7 +95,8 @@ in login.u2fAuth = true; sudo.u2fAuth = true; doas.u2fAuth = true; - }; + sddm.fprintAuth = lib.mkForce false; + } // lib.attrsets.genAttrs ["sudo" "doas" "kde" "polkit-1"] (service: { rules.auth.fprintd.order = config.security.pam.services.${service}.rules.auth.u2f.order - 100;}); security.pam.u2f = { enable = true; settings = { @@ -449,6 +450,13 @@ in services.tailscale = { enable = true; }; + + systemd.services.fprintd = { + wantedBy = [ "multi-user.target" ]; + serviceConfig.Type = "simple"; + }; + + services.fprintd.enable = true; hardware.bluetooth.enable = true; hardware.bluetooth.powerOnBoot = true; From a6418849129c18fad844052a8b7b3249f1bde22b Mon Sep 17 00:00:00 2001 From: Lgmrszd Date: Sat, 17 May 2025 19:02:33 +0400 Subject: [PATCH 6/8] laptop: config updates --- hosts/laptop/configuration.nix | 4 ++-- hosts/laptop/home/default.nix | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/hosts/laptop/configuration.nix b/hosts/laptop/configuration.nix index 495b67b..54b35fa 100644 --- a/hosts/laptop/configuration.nix +++ b/hosts/laptop/configuration.nix @@ -290,7 +290,7 @@ in # services.printing.enable = true; # Enable sound. - hardware.pulseaudio.enable = false; + services.pulseaudio.enable = false; security.rtkit.enable = true; services.pipewire = { enable = true; @@ -403,7 +403,7 @@ in ]; environment.variables.EDITOR = "vim"; - environment.variables.FLAKE = "/home/lgm/nixos-cfg?submodules=1"; + environment.variables.NH_FLAKE = "/home/lgm/nixos-cfg"; # Some programs need SUID wrappers, can be configured further or are # started in user sessions. diff --git a/hosts/laptop/home/default.nix b/hosts/laptop/home/default.nix index 7c29602..cb55740 100644 --- a/hosts/laptop/home/default.nix +++ b/hosts/laptop/home/default.nix @@ -242,7 +242,7 @@ programs.vscode = { enable = true; package = pkgs.vscodium; - extensions = with pkgs.vscode-extensions; [ + profiles.default.extensions = with pkgs.vscode-extensions; [ jnoortheen.nix-ide ]; }; From 71e761053e49b9e5e9fd1e97402ff6daf037acd7 Mon Sep 17 00:00:00 2001 From: Lgmrszd Date: Sat, 17 May 2025 19:10:07 +0400 Subject: [PATCH 7/8] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'authentik-nix': 'github:nix-community/authentik-nix/618330bee6b5e284499b5f85b74cbdfe6f873d6e?narHash=sha256-DHVRLCKoJYrysppygOZrmg6UngrlTN%2BM4t8HaOiQQfU%3D' (2025-04-28) → 'github:nix-community/authentik-nix/f20474660332903be6b47f3c1fdfc531f6f75f1d?narHash=sha256-%2B4pIDo56iXWUklX1U%2Bbiw/cfC8TiSXTMh2N6V/%2BJMUg%3D' (2025-05-16) • Updated input 'authentik-nix/authentik-src': 'github:goauthentik/authentik/74eab55c615b156e4191ee98dc789e2d58c016f9?narHash=sha256-7wvoCRhLipX4qzrb/ctsozG565yckx%2BmoxiF6vRo84I%3D' (2025-04-08) → 'github:goauthentik/authentik/ae47624761f05040149d856d5e55a90cd7492740?narHash=sha256-idShMSYIrf3ViG9VFNGNu6TSjBz3Q%2BGJMMeCzcJwfG4%3D' (2025-05-15) • Updated input 'authentik-nix/flake-compat': 'github:edolstra/flake-compat/ff81ac966bb2cae68946d5ed5fc4994f96d0ffec?narHash=sha256-NeCCThCEP3eCl2l/%2B27kNNK7QrwZB1IJCrXfrbv5oqU%3D' (2024-12-04) → 'github:edolstra/flake-compat/9100a0f413b0c601e0533d1d94ffd501ce2e7885?narHash=sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX%2BfjA8Xf8PUmqCY%3D' (2025-05-12) • Removed input 'authentik-nix/poetry2nix' • Removed input 'authentik-nix/poetry2nix/flake-utils' • Removed input 'authentik-nix/poetry2nix/nix-github-actions' • Removed input 'authentik-nix/poetry2nix/nix-github-actions/nixpkgs' • Removed input 'authentik-nix/poetry2nix/nixpkgs' • Removed input 'authentik-nix/poetry2nix/systems' • Removed input 'authentik-nix/poetry2nix/treefmt-nix' • Removed input 'authentik-nix/poetry2nix/treefmt-nix/nixpkgs' • Added input 'authentik-nix/pyproject-build-systems': 'github:pyproject-nix/build-system-pkgs/7dba6dbc73120e15b558754c26024f6c93015dd7?narHash=sha256-nysSwVVjG4hKoOjhjvE6U5lIKA8sEr1d1QzEfZsannU%3D' (2025-04-14) • Added input 'authentik-nix/pyproject-build-systems/nixpkgs': follows 'authentik-nix/nixpkgs' • Added input 'authentik-nix/pyproject-build-systems/pyproject-nix': follows 'authentik-nix/pyproject-nix' • Added input 'authentik-nix/pyproject-build-systems/uv2nix': follows 'authentik-nix/uv2nix' • Added input 'authentik-nix/pyproject-nix': 'github:pyproject-nix/pyproject.nix/e09c10c24ebb955125fda449939bfba664c467fd?narHash=sha256-QxdHGNpbicIrw5t6U3x%2BZxeY/7IEJ6lYbvsjXmcxFIM%3D' (2025-05-06) • Added input 'authentik-nix/pyproject-nix/nixpkgs': follows 'authentik-nix/nixpkgs' • Added input 'authentik-nix/uv2nix': 'github:pyproject-nix/uv2nix/fe540e91c26f378c62bf6da365a97e848434d0cd?narHash=sha256-gmv%2BZiY3pQnwgI0Gm3Z1tNSux1CnOJ0De%2BxeDOol1%2B0%3D' (2025-05-07) • Added input 'authentik-nix/uv2nix/nixpkgs': follows 'authentik-nix/nixpkgs' • Added input 'authentik-nix/uv2nix/pyproject-nix': follows 'authentik-nix/pyproject-nix' • Updated input 'flake-compat': 'github:edolstra/flake-compat/ff81ac966bb2cae68946d5ed5fc4994f96d0ffec?narHash=sha256-NeCCThCEP3eCl2l/%2B27kNNK7QrwZB1IJCrXfrbv5oqU%3D' (2024-12-04) → 'github:edolstra/flake-compat/9100a0f413b0c601e0533d1d94ffd501ce2e7885?narHash=sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX%2BfjA8Xf8PUmqCY%3D' (2025-05-12) • Updated input 'home-manager': 'github:nix-community/home-manager/d2b3e6c83d457aa0e7f9344c61c3fed32bad0f7e?narHash=sha256-8Up4QPuMZEJBU0eefAY%2BnUe7DYKQQzvaHnMpNdwRgKA%3D' (2025-04-30) → 'github:nix-community/home-manager/ae755329092c87369b9e9a1510a8cf1ce2b1c708?narHash=sha256-5rCGrnkglKKj4cav1U3HC%2BSIUNJh08pqOK4spQv9RjA%3D' (2025-05-16) • Updated input 'mailserver': 'gitlab:simple-nixos-mailserver/nixos-mailserver/ab52efd622a9f7dca269a49edbbea6b6b7294f57?narHash=sha256-jg725STLRgsIAgrvjbRJQEP0F0w%2BrmvDJ64EN65p6EI%3D' (2025-04-23) → 'gitlab:simple-nixos-mailserver/nixos-mailserver/433520257af7170824ab6e567d49b8e305e776e9?narHash=sha256-wOW99SCOovRlX5y8%2BW1cRrS3mEN1QA0XTHMRfr3NMB8%3D' (2025-05-15) • Added input 'mailserver/git-hooks': 'github:cachix/git-hooks.nix/dcf5072734cb576d2b0c59b2ac44f5050b5eac82?narHash=sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco%3D' (2025-03-22) • Added input 'mailserver/git-hooks/flake-compat': follows 'mailserver/flake-compat' • Added input 'mailserver/git-hooks/gitignore': 'github:hercules-ci/gitignore.nix/637db329424fd7e46cf4185293b9cc8c88c95394?narHash=sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs%3D' (2024-02-28) • Added input 'mailserver/git-hooks/gitignore/nixpkgs': follows 'mailserver/git-hooks/nixpkgs' • Added input 'mailserver/git-hooks/nixpkgs': follows 'mailserver/nixpkgs' • Updated input 'mailserver/nixpkgs-24_11': 'github:NixOS/nixpkgs/314e12ba369ccdb9b352a4db26ff419f7c49fa84?narHash=sha256-5fNndbndxSx5d%2BC/D0p/VF32xDiJCJzyOqorOYW4JEo%3D' (2024-12-13) → 'github:NixOS/nixpkgs/5d736263df906c5da72ab0f372427814de2f52f8?narHash=sha256-fLise%2Bys%2BbpyjuUUkbwqo5W/UyIELvRz9lPBPoB0fbM%3D' (2025-05-14) • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/46e634be05ce9dc6d4db8e664515ba10b78151ae?narHash=sha256-y3h3NLnzRSiUkYpnfvnS669zWZLoqqI6NprtLQ%2B5dck%3D' (2025-04-29) → 'github:NixOS/nixpkgs/e06158e58f3adee28b139e9c2bcfcc41f8625b46?narHash=sha256-LSmTbiq/nqZR9B2t4MRnWG7cb0KVNU70dB7RT4%2BwYK4%3D' (2025-05-15) • Updated input 'sops-nix': 'github:Mic92/sops-nix/5e3e92b16d6fdf9923425a8d4df7496b2434f39c?narHash=sha256-ePyTpKEJTgX0gvgNQWd7tQYQ3glIkbqcW778RpHlqgA%3D' (2025-04-22) → 'github:Mic92/sops-nix/e93ee1d900ad264d65e9701a5c6f895683433386?narHash=sha256-PxrrSFLaC7YuItShxmYbMgSuFFuwxBB%2Bqsl9BZUnRvg%3D' (2025-05-05) --- flake.lock | 210 +++++++++++++++++++++++++++++++++-------------------- 1 file changed, 131 insertions(+), 79 deletions(-) diff --git a/flake.lock b/flake.lock index 14bb96c..0eda1b7 100644 --- a/flake.lock +++ b/flake.lock @@ -12,15 +12,17 @@ "nixpkgs": [ "nixpkgs" ], - "poetry2nix": "poetry2nix", - "systems": "systems" + "pyproject-build-systems": "pyproject-build-systems", + "pyproject-nix": "pyproject-nix", + "systems": "systems", + "uv2nix": "uv2nix" }, "locked": { - "lastModified": 1745851830, - "narHash": "sha256-DHVRLCKoJYrysppygOZrmg6UngrlTN+M4t8HaOiQQfU=", + "lastModified": 1747386678, + "narHash": "sha256-+4pIDo56iXWUklX1U+biw/cfC8TiSXTMh2N6V/+JMUg=", "owner": "nix-community", "repo": "authentik-nix", - "rev": "618330bee6b5e284499b5f85b74cbdfe6f873d6e", + "rev": "f20474660332903be6b47f3c1fdfc531f6f75f1d", "type": "github" }, "original": { @@ -32,16 +34,16 @@ "authentik-src": { "flake": false, "locked": { - "lastModified": 1744135136, - "narHash": "sha256-7wvoCRhLipX4qzrb/ctsozG565yckx+moxiF6vRo84I=", + "lastModified": 1747329052, + "narHash": "sha256-idShMSYIrf3ViG9VFNGNu6TSjBz3Q+GJMMeCzcJwfG4=", "owner": "goauthentik", "repo": "authentik", - "rev": "74eab55c615b156e4191ee98dc789e2d58c016f9", + "rev": "ae47624761f05040149d856d5e55a90cd7492740", "type": "github" }, "original": { "owner": "goauthentik", - "ref": "version/2025.2.4", + "ref": "version/2025.4.1", "repo": "authentik", "type": "github" } @@ -65,11 +67,11 @@ "flake-compat": { "flake": false, "locked": { - "lastModified": 1733328505, - "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", + "lastModified": 1747046372, + "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", "owner": "edolstra", "repo": "flake-compat", - "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", + "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", "type": "github" }, "original": { @@ -80,11 +82,11 @@ }, "flake-compat_2": { "locked": { - "lastModified": 1733328505, - "narHash": "sha256-NeCCThCEP3eCl2l/+27kNNK7QrwZB1IJCrXfrbv5oqU=", + "lastModified": 1747046372, + "narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=", "owner": "edolstra", "repo": "flake-compat", - "rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec", + "rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885", "type": "github" }, "original": { @@ -152,6 +154,54 @@ "type": "github" } }, + "git-hooks": { + "inputs": { + "flake-compat": [ + "mailserver", + "flake-compat" + ], + "gitignore": "gitignore", + "nixpkgs": [ + "mailserver", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1742649964, + "narHash": "sha256-DwOTp7nvfi8mRfuL1escHDXabVXFGT1VlPD1JHrtrco=", + "owner": "cachix", + "repo": "git-hooks.nix", + "rev": "dcf5072734cb576d2b0c59b2ac44f5050b5eac82", + "type": "github" + }, + "original": { + "owner": "cachix", + "repo": "git-hooks.nix", + "type": "github" + } + }, + "gitignore": { + "inputs": { + "nixpkgs": [ + "mailserver", + "git-hooks", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1709087332, + "narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=", + "owner": "hercules-ci", + "repo": "gitignore.nix", + "rev": "637db329424fd7e46cf4185293b9cc8c88c95394", + "type": "github" + }, + "original": { + "owner": "hercules-ci", + "repo": "gitignore.nix", + "type": "github" + } + }, "home-manager": { "inputs": { "nixpkgs": [ @@ -159,11 +209,11 @@ ] }, "locked": { - "lastModified": 1745987135, - "narHash": "sha256-8Up4QPuMZEJBU0eefAY+nUe7DYKQQzvaHnMpNdwRgKA=", + "lastModified": 1747439237, + "narHash": "sha256-5rCGrnkglKKj4cav1U3HC+SIUNJh08pqOK4spQv9RjA=", "owner": "nix-community", "repo": "home-manager", - "rev": "d2b3e6c83d457aa0e7f9344c61c3fed32bad0f7e", + "rev": "ae755329092c87369b9e9a1510a8cf1ce2b1c708", "type": "github" }, "original": { @@ -179,17 +229,18 @@ "flake-compat": [ "flake-compat" ], + "git-hooks": "git-hooks", "nixpkgs": [ "nixpkgs" ], "nixpkgs-24_11": "nixpkgs-24_11" }, "locked": { - "lastModified": 1745416927, - "narHash": "sha256-jg725STLRgsIAgrvjbRJQEP0F0w+rmvDJ64EN65p6EI=", + "lastModified": 1747320434, + "narHash": "sha256-wOW99SCOovRlX5y8+W1cRrS3mEN1QA0XTHMRfr3NMB8=", "owner": "simple-nixos-mailserver", "repo": "nixos-mailserver", - "rev": "ab52efd622a9f7dca269a49edbbea6b6b7294f57", + "rev": "433520257af7170824ab6e567d49b8e305e776e9", "type": "gitlab" }, "original": { @@ -240,35 +291,13 @@ "url": "https://git.lgmrszd.xyz/lgmrszd/nix-cfg-extra-public.git" } }, - "nix-github-actions": { - "inputs": { - "nixpkgs": [ - "authentik-nix", - "poetry2nix", - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1729742964, - "narHash": "sha256-B4mzTcQ0FZHdpeWcpDYPERtyjJd/NIuaQ9+BV1h+MpA=", - "owner": "nix-community", - "repo": "nix-github-actions", - "rev": "e04df33f62cdcf93d73e9a04142464753a16db67", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nix-github-actions", - "type": "github" - } - }, "nixpkgs": { "locked": { - "lastModified": 1745930157, - "narHash": "sha256-y3h3NLnzRSiUkYpnfvnS669zWZLoqqI6NprtLQ+5dck=", + "lastModified": 1747327360, + "narHash": "sha256-LSmTbiq/nqZR9B2t4MRnWG7cb0KVNU70dB7RT4+wYK4=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "46e634be05ce9dc6d4db8e664515ba10b78151ae", + "rev": "e06158e58f3adee28b139e9c2bcfcc41f8625b46", "type": "github" }, "original": { @@ -280,17 +309,18 @@ }, "nixpkgs-24_11": { "locked": { - "lastModified": 1734083684, - "narHash": "sha256-5fNndbndxSx5d+C/D0p/VF32xDiJCJzyOqorOYW4JEo=", + "lastModified": 1747209494, + "narHash": "sha256-fLise+ys+bpyjuUUkbwqo5W/UyIELvRz9lPBPoB0fbM=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "314e12ba369ccdb9b352a4db26ff419f7c49fa84", + "rev": "5d736263df906c5da72ab0f372427814de2f52f8", "type": "github" }, "original": { - "id": "nixpkgs", + "owner": "NixOS", "ref": "nixos-24.11", - "type": "indirect" + "repo": "nixpkgs", + "type": "github" } }, "nixpkgs-lib": { @@ -324,34 +354,53 @@ "type": "github" } }, - "poetry2nix": { + "pyproject-build-systems": { "inputs": { - "flake-utils": [ - "authentik-nix", - "flake-utils" - ], - "nix-github-actions": "nix-github-actions", "nixpkgs": [ "authentik-nix", "nixpkgs" ], - "systems": [ + "pyproject-nix": [ "authentik-nix", - "systems" + "pyproject-nix" ], - "treefmt-nix": "treefmt-nix" + "uv2nix": [ + "authentik-nix", + "uv2nix" + ] }, "locked": { - "lastModified": 1743690424, - "narHash": "sha256-cX98bUuKuihOaRp8dNV1Mq7u6/CQZWTPth2IJPATBXc=", - "owner": "nix-community", - "repo": "poetry2nix", - "rev": "ce2369db77f45688172384bbeb962bc6c2ea6f94", + "lastModified": 1744599653, + "narHash": "sha256-nysSwVVjG4hKoOjhjvE6U5lIKA8sEr1d1QzEfZsannU=", + "owner": "pyproject-nix", + "repo": "build-system-pkgs", + "rev": "7dba6dbc73120e15b558754c26024f6c93015dd7", "type": "github" }, "original": { - "owner": "nix-community", - "repo": "poetry2nix", + "owner": "pyproject-nix", + "repo": "build-system-pkgs", + "type": "github" + } + }, + "pyproject-nix": { + "inputs": { + "nixpkgs": [ + "authentik-nix", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1746540146, + "narHash": "sha256-QxdHGNpbicIrw5t6U3x+ZxeY/7IEJ6lYbvsjXmcxFIM=", + "owner": "pyproject-nix", + "repo": "pyproject.nix", + "rev": "e09c10c24ebb955125fda449939bfba664c467fd", + "type": "github" + }, + "original": { + "owner": "pyproject-nix", + "repo": "pyproject.nix", "type": "github" } }, @@ -378,11 +427,11 @@ ] }, "locked": { - "lastModified": 1745310711, - "narHash": "sha256-ePyTpKEJTgX0gvgNQWd7tQYQ3glIkbqcW778RpHlqgA=", + "lastModified": 1746485181, + "narHash": "sha256-PxrrSFLaC7YuItShxmYbMgSuFFuwxBB+qsl9BZUnRvg=", "owner": "Mic92", "repo": "sops-nix", - "rev": "5e3e92b16d6fdf9923425a8d4df7496b2434f39c", + "rev": "e93ee1d900ad264d65e9701a5c6f895683433386", "type": "github" }, "original": { @@ -421,25 +470,28 @@ "type": "github" } }, - "treefmt-nix": { + "uv2nix": { "inputs": { "nixpkgs": [ "authentik-nix", - "poetry2nix", "nixpkgs" + ], + "pyproject-nix": [ + "authentik-nix", + "pyproject-nix" ] }, "locked": { - "lastModified": 1730120726, - "narHash": "sha256-LqHYIxMrl/1p3/kvm2ir925tZ8DkI0KA10djk8wecSk=", - "owner": "numtide", - "repo": "treefmt-nix", - "rev": "9ef337e492a5555d8e17a51c911ff1f02635be15", + "lastModified": 1746649034, + "narHash": "sha256-gmv+ZiY3pQnwgI0Gm3Z1tNSux1CnOJ0De+xeDOol1+0=", + "owner": "pyproject-nix", + "repo": "uv2nix", + "rev": "fe540e91c26f378c62bf6da365a97e848434d0cd", "type": "github" }, "original": { - "owner": "numtide", - "repo": "treefmt-nix", + "owner": "pyproject-nix", + "repo": "uv2nix", "type": "github" } }, From 5543cf819fa3a81eebeecc1048cd19677b9fb593 Mon Sep 17 00:00:00 2001 From: Lgmrszd Date: Sat, 17 May 2025 21:06:10 +0400 Subject: [PATCH 8/8] flake: switch to lix --- flake.lock | 86 +++++++++++++++++++++++++++++++++++++++++++++++++++++- flake.nix | 7 +++++ 2 files changed, 92 insertions(+), 1 deletion(-) diff --git a/flake.lock b/flake.lock index 0eda1b7..bb36dd5 100644 --- a/flake.lock +++ b/flake.lock @@ -154,6 +154,39 @@ "type": "github" } }, + "flake-utils_3": { + "inputs": { + "systems": "systems_2" + }, + "locked": { + "lastModified": 1731533236, + "narHash": "sha256-l0KFg5HjrsfsO/JpG+r7fRrqm12kzFHyUHqHCVpMMbI=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "11707dc2f618dd54ca8739b309ec4fc024de578b", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } + }, + "flakey-profile": { + "locked": { + "lastModified": 1712898590, + "narHash": "sha256-FhGIEU93VHAChKEXx905TSiPZKga69bWl1VB37FK//I=", + "owner": "lf-", + "repo": "flakey-profile", + "rev": "243c903fd8eadc0f63d205665a92d4df91d42d9d", + "type": "github" + }, + "original": { + "owner": "lf-", + "repo": "flakey-profile", + "type": "github" + } + }, "git-hooks": { "inputs": { "flake-compat": [ @@ -223,6 +256,41 @@ "type": "github" } }, + "lix": { + "flake": false, + "locked": { + "lastModified": 1746827285, + "narHash": "sha256-hsFe4Tsqqg4l+FfQWphDtjC79WzNCZbEFhHI8j2KJzw=", + "rev": "47aad376c87e2e65967f17099277428e4b3f8e5a", + "type": "tarball", + "url": "https://git.lix.systems/api/v1/repos/lix-project/lix/archive/47aad376c87e2e65967f17099277428e4b3f8e5a.tar.gz?rev=47aad376c87e2e65967f17099277428e4b3f8e5a" + }, + "original": { + "type": "tarball", + "url": "https://git.lix.systems/lix-project/lix/archive/2.93.0.tar.gz" + } + }, + "lix-module": { + "inputs": { + "flake-utils": "flake-utils_3", + "flakey-profile": "flakey-profile", + "lix": "lix", + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1746838955, + "narHash": "sha256-11R4K3iAx4tLXjUs+hQ5K90JwDABD/XHhsM9nkeS5N8=", + "rev": "cd2a9c028df820a83ca2807dc6c6e7abc3dfa7fc", + "type": "tarball", + "url": "https://git.lix.systems/api/v1/repos/lix-project/nixos-module/archive/cd2a9c028df820a83ca2807dc6c6e7abc3dfa7fc.tar.gz" + }, + "original": { + "type": "tarball", + "url": "https://git.lix.systems/lix-project/nixos-module/archive/2.93.0.tar.gz" + } + }, "mailserver": { "inputs": { "blobs": "blobs", @@ -411,12 +479,13 @@ "flake-parts": "flake-parts", "flake-utils": "flake-utils_2", "home-manager": "home-manager", + "lix-module": "lix-module", "mailserver": "mailserver", "nix-cfg-extra": "nix-cfg-extra", "nixpkgs": "nixpkgs", "nixpkgs-stable": "nixpkgs-stable", "sops-nix": "sops-nix", - "systems": "systems_2", + "systems": "systems_3", "vscode-server": "vscode-server" } }, @@ -470,6 +539,21 @@ "type": "github" } }, + "systems_3": { + "locked": { + "lastModified": 1681028828, + "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", + "owner": "nix-systems", + "repo": "default", + "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", + "type": "github" + }, + "original": { + "owner": "nix-systems", + "repo": "default", + "type": "github" + } + }, "uv2nix": { "inputs": { "nixpkgs": [ diff --git a/flake.nix b/flake.nix index 010b11b..2fe7f5b 100644 --- a/flake.nix +++ b/flake.nix @@ -36,12 +36,18 @@ inputs.nixpkgs.follows = "nixpkgs"; inputs.flake-utils.follows = "flake-utils"; }; + lix-module = { + url = "https://git.lix.systems/lix-project/nixos-module/archive/2.93.0.tar.gz"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + nix-cfg-extra.url = "git+https://git.lgmrszd.xyz/lgmrszd/nix-cfg-extra-public.git"; }; outputs = inputs@{ nixpkgs, + lix-module, nixpkgs-stable, home-manager, sops-nix, @@ -96,6 +102,7 @@ specialArgs = { inherit data; inherit mylib; }; modules = [ { nixpkgs.overlays = my-overlays; } + lix-module.nixosModules.default ./hosts/${host}/configuration.nix ./hosts/${host}/hardware-configuration.nix sops-nix.nixosModules.sops