diff --git a/flake.lock b/flake.lock index b381ea7..2a6ee84 100644 --- a/flake.lock +++ b/flake.lock @@ -1,73 +1,5 @@ { "nodes": { - "base16": { - "inputs": { - "fromYaml": "fromYaml" - }, - "locked": { - "lastModified": 1746562888, - "narHash": "sha256-YgNJQyB5dQiwavdDFBMNKk1wyS77AtdgDk/VtU6wEaI=", - "owner": "SenchoPens", - "repo": "base16.nix", - "rev": "806a1777a5db2a1ef9d5d6f493ef2381047f2b89", - "type": "github" - }, - "original": { - "owner": "SenchoPens", - "repo": "base16.nix", - "type": "github" - } - }, - "base16-fish": { - "flake": false, - "locked": { - "lastModified": 1754405784, - "narHash": "sha256-l9xHIy+85FN+bEo6yquq2IjD1rSg9fjfjpyGP1W8YXo=", - "owner": "tomyun", - "repo": "base16-fish", - "rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561", - "type": "github" - }, - "original": { - "owner": "tomyun", - "repo": "base16-fish", - "rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561", - "type": "github" - } - }, - "base16-helix": { - "flake": false, - "locked": { - "lastModified": 1748408240, - "narHash": "sha256-9M2b1rMyMzJK0eusea0x3lyh3mu5nMeEDSc4RZkGm+g=", - "owner": "tinted-theming", - "repo": "base16-helix", - "rev": "6c711ab1a9db6f51e2f6887cc3345530b33e152e", - "type": "github" - }, - "original": { - "owner": "tinted-theming", - "repo": "base16-helix", - "type": "github" - } - }, - "base16-vim": { - "flake": false, - "locked": { - "lastModified": 1732806396, - "narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=", - "owner": "tinted-theming", - "repo": "base16-vim", - "rev": "577fe8125d74ff456cf942c733a85d769afe58b7", - "type": "github" - }, - "original": { - "owner": "tinted-theming", - "repo": "base16-vim", - "rev": "577fe8125d74ff456cf942c733a85d769afe58b7", - "type": "github" - } - }, "binding": { "inputs": { "binding": "binding_2", @@ -115,6 +47,7 @@ "fenix": { "inputs": { "nixpkgs": [ + "servicepoint-cli", "naersk", "nixpkgs" ], @@ -134,70 +67,26 @@ "type": "github" } }, - "firefox-gnome-theme": { - "flake": false, - "locked": { - "lastModified": 1748383148, - "narHash": "sha256-pGvD/RGuuPf/4oogsfeRaeMm6ipUIznI2QSILKjKzeA=", - "owner": "rafaelmardojai", - "repo": "firefox-gnome-theme", - "rev": "4eb2714fbed2b80e234312611a947d6cb7d70caf", - "type": "github" - }, - "original": { - "owner": "rafaelmardojai", - "repo": "firefox-gnome-theme", - "type": "github" - } - }, - "flake-parts": { + "fenix_2": { "inputs": { - "nixpkgs-lib": "nixpkgs-lib" + "nixpkgs": [ + "servicepoint-simulator", + "naersk", + "nixpkgs" + ], + "rust-analyzer-src": "rust-analyzer-src_2" }, "locked": { - "lastModified": 1762810396, - "narHash": "sha256-dxFVgQPG+R72dkhXTtqUm7KpxElw3u6E+YlQ2WaDgt8=", - "owner": "hercules-ci", - "repo": "flake-parts", - "rev": "0bdadb1b265fb4143a75bd1ec7d8c915898a9923", + "lastModified": 1752475459, + "narHash": "sha256-z6QEu4ZFuHiqdOPbYss4/Q8B0BFhacR8ts6jO/F/aOU=", + "owner": "nix-community", + "repo": "fenix", + "rev": "bf0d6f70f4c9a9cf8845f992105652173f4b617f", "type": "github" }, "original": { - "owner": "hercules-ci", - "repo": "flake-parts", - "type": "github" - } - }, - "fromYaml": { - "flake": false, - "locked": { - "lastModified": 1731966426, - "narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=", - "owner": "SenchoPens", - "repo": "fromYaml", - "rev": "106af9e2f715e2d828df706c386a685698f3223b", - "type": "github" - }, - "original": { - "owner": "SenchoPens", - "repo": "fromYaml", - "type": "github" - } - }, - "gnome-shell": { - "flake": false, - "locked": { - "lastModified": 1744584021, - "narHash": "sha256-0RJ4mJzf+klKF4Fuoc8VN8dpQQtZnKksFmR2jhWE1Ew=", - "owner": "GNOME", - "repo": "gnome-shell", - "rev": "52c517c8f6c199a1d6f5118fae500ef69ea845ae", - "type": "github" - }, - "original": { - "owner": "GNOME", - "ref": "48.1", - "repo": "gnome-shell", + "owner": "nix-community", + "repo": "fenix", "type": "github" } }, @@ -226,6 +115,29 @@ "inputs": { "fenix": "fenix", "nixpkgs": [ + "servicepoint-cli", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1752689277, + "narHash": "sha256-uldUBFkZe/E7qbvxa3mH1ItrWZyT6w1dBKJQF/3ZSsc=", + "owner": "nix-community", + "repo": "naersk", + "rev": "0e72363d0938b0208d6c646d10649164c43f4d64", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "naersk", + "type": "github" + } + }, + "naersk_2": { + "inputs": { + "fenix": "fenix_2", + "nixpkgs": [ + "servicepoint-simulator", "nixpkgs" ] }, @@ -257,11 +169,11 @@ "xwayland-satellite-unstable": "xwayland-satellite-unstable" }, "locked": { - "lastModified": 1762857797, - "narHash": "sha256-puoFJGlbL6khrQKozCO6Wgpq/IhA2Sfnz+ui/87lbQQ=", + "lastModified": 1762026425, + "narHash": "sha256-7eDtQrr+CRZ1pLjJ6Bx7Ab9pUIowXJ7ooqEh6p3jIn8=", "owner": "sodiboo", "repo": "niri-flake", - "rev": "2ff3443b4226f6721a43b75e76b6ca59caa34fec", + "rev": "342730d4f8e109f3506932d2be1c8f9ab19a7039", "type": "github" }, "original": { @@ -290,11 +202,11 @@ "niri-unstable": { "flake": false, "locked": { - "lastModified": 1762854265, - "narHash": "sha256-iykTzCzU8hI7b8LvAquYY4Asl2xj3AcLzWZv6rm8MGY=", + "lastModified": 1761888958, + "narHash": "sha256-YgArUHI81Esn6fOCwVSrMI2G4RI3f3BPbRbPWsJubAc=", "owner": "YaLTeR", "repo": "niri", - "rev": "fb2f67c8a036f674e9101e15a7bb1cf61524ebde", + "rev": "e2576879216a39e5c45b9d2906531bc2065e724c", "type": "github" }, "original": { @@ -305,11 +217,26 @@ }, "nix-filter": { "locked": { - "lastModified": 1757882181, - "narHash": "sha256-+cCxYIh2UNalTz364p+QYmWHs0P+6wDhiWR4jDIKQIU=", + "lastModified": 1731533336, + "narHash": "sha256-oRam5PS1vcrr5UPgALW0eo1m/5/pls27Z/pabHNy2Ms=", "owner": "numtide", "repo": "nix-filter", - "rev": "59c44d1909c72441144b93cf0f054be7fe764de5", + "rev": "f7653272fd234696ae94229839a99b73c9ab7de0", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "nix-filter", + "type": "github" + } + }, + "nix-filter_2": { + "locked": { + "lastModified": 1731533336, + "narHash": "sha256-oRam5PS1vcrr5UPgALW0eo1m/5/pls27Z/pabHNy2Ms=", + "owner": "numtide", + "repo": "nix-filter", + "rev": "f7653272fd234696ae94229839a99b73c9ab7de0", "type": "github" }, "original": { @@ -325,11 +252,11 @@ ] }, "locked": { - "lastModified": 1762826252, - "narHash": "sha256-7VqX6Z8Pq5DzVV5YM7o92vC6goNGtucCv71dXwpy01Q=", + "lastModified": 1762048816, + "narHash": "sha256-gAGed5eYA6WTVQSMELyi+168A9N2UNEjwXn5xm0czsk=", "owner": "nix-community", "repo": "nix-vscode-extensions", - "rev": "f10a42469c4db9b4ae7b3cd3a5c0d8bffb4a8b98", + "rev": "c8261cd60b0623635b4b88ae0f75ac3bfeddf260", "type": "github" }, "original": { @@ -340,11 +267,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1762756533, - "narHash": "sha256-HiRDeUOD1VLklHeOmaKDzf+8Hb7vSWPVFcWwaTrpm+U=", + "lastModified": 1761999846, + "narHash": "sha256-IYlYnp4O4dzEpL77BD/lj5NnJy2J8qbHkNSFiPBCbqo=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "c2448301fb856e351aab33e64c33a3fc8bcf637d", + "rev": "3de8f8d73e35724bf9abef41f1bdbedda1e14a31", "type": "github" }, "original": { @@ -354,28 +281,13 @@ "type": "github" } }, - "nixpkgs-lib": { - "locked": { - "lastModified": 1761765539, - "narHash": "sha256-b0yj6kfvO8ApcSE+QmA6mUfu8IYG6/uU28OFn4PaC8M=", - "owner": "nix-community", - "repo": "nixpkgs.lib", - "rev": "719359f4562934ae99f5443f20aa06c2ffff91fc", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "nixpkgs.lib", - "type": "github" - } - }, "nixpkgs-unstable": { "locked": { - "lastModified": 1762482733, - "narHash": "sha256-g/da4FzvckvbiZT075Sb1/YDNDr+tGQgh4N8i5ceYMg=", + "lastModified": 1761880412, + "narHash": "sha256-QoJjGd4NstnyOG4mm4KXF+weBzA2AH/7gn1Pmpfcb0A=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "e1ebeec86b771e9d387dd02d82ffdc77ac753abc", + "rev": "a7fc11be66bdfb5cdde611ee5ce381c183da8386", "type": "github" }, "original": { @@ -385,45 +297,16 @@ "type": "github" } }, - "nur": { - "inputs": { - "flake-parts": [ - "flake-parts" - ], - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1762858278, - "narHash": "sha256-BYeYJFonJRt9xg6UYXpvVGK5j4NEOXHETRffPQT7drM=", - "owner": "nix-community", - "repo": "NUR", - "rev": "a053db755b35970d6a0ebd97aaceb8f629faa8e7", - "type": "github" - }, - "original": { - "owner": "nix-community", - "repo": "NUR", - "type": "github" - } - }, "root": { "inputs": { - "flake-parts": "flake-parts", "home-manager": "home-manager", - "naersk": "naersk", "niri": "niri", - "nix-filter": "nix-filter", "nix-vscode-extensions": "nix-vscode-extensions", "nixpkgs": "nixpkgs", "nixpkgs-unstable": "nixpkgs-unstable", - "nur": "nur", "servicepoint-cli": "servicepoint-cli", "servicepoint-simulator": "servicepoint-simulator", "servicepoint-tanks": "servicepoint-tanks", - "stylix": "stylix", - "treefmt-nix": "treefmt-nix", "zerforschen-plus": "zerforschen-plus" } }, @@ -444,14 +327,27 @@ "type": "github" } }, + "rust-analyzer-src_2": { + "flake": false, + "locked": { + "lastModified": 1752428706, + "narHash": "sha256-EJcdxw3aXfP8Ex1Nm3s0awyH9egQvB2Gu+QEnJn2Sfg=", + "owner": "rust-lang", + "repo": "rust-analyzer", + "rev": "591e3b7624be97e4443ea7b5542c191311aa141d", + "type": "github" + }, + "original": { + "owner": "rust-lang", + "ref": "nightly", + "repo": "rust-analyzer", + "type": "github" + } + }, "servicepoint-cli": { "inputs": { - "naersk": [ - "naersk" - ], - "nix-filter": [ - "nix-filter" - ], + "naersk": "naersk", + "nix-filter": "nix-filter", "nixpkgs": [ "nixpkgs" ] @@ -472,12 +368,8 @@ }, "servicepoint-simulator": { "inputs": { - "naersk": [ - "naersk" - ], - "nix-filter": [ - "nix-filter" - ], + "naersk": "naersk_2", + "nix-filter": "nix-filter_2", "nixpkgs": [ "nixpkgs" ] @@ -518,161 +410,6 @@ "url": "https://git.berlin.ccc.de/vinzenz/servicepoint-tanks.git" } }, - "stylix": { - "inputs": { - "base16": "base16", - "base16-fish": "base16-fish", - "base16-helix": "base16-helix", - "base16-vim": "base16-vim", - "firefox-gnome-theme": "firefox-gnome-theme", - "flake-parts": [ - "flake-parts" - ], - "gnome-shell": "gnome-shell", - "nixpkgs": [ - "nixpkgs" - ], - "nur": [ - "nur" - ], - "systems": "systems", - "tinted-foot": "tinted-foot", - "tinted-kitty": "tinted-kitty", - "tinted-schemes": "tinted-schemes", - "tinted-tmux": "tinted-tmux", - "tinted-zed": "tinted-zed" - }, - "locked": { - "lastModified": 1762295027, - "narHash": "sha256-5z5cGrp9F8g8iyQrM8WkB6pAwP4AaicljKZ15gx+X9Y=", - "owner": "nix-community", - "repo": "stylix", - "rev": "91b9a270523361268ba6a8772152fde31103869f", - "type": "github" - }, - "original": { - "owner": "nix-community", - "ref": "release-25.05", - "repo": "stylix", - "type": "github" - } - }, - "systems": { - "locked": { - "lastModified": 1681028828, - "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", - "owner": "nix-systems", - "repo": "default", - "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", - "type": "github" - }, - "original": { - "owner": "nix-systems", - "repo": "default", - "type": "github" - } - }, - "tinted-foot": { - "flake": false, - "locked": { - "lastModified": 1726913040, - "narHash": "sha256-+eDZPkw7efMNUf3/Pv0EmsidqdwNJ1TaOum6k7lngDQ=", - "owner": "tinted-theming", - "repo": "tinted-foot", - "rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4", - "type": "github" - }, - "original": { - "owner": "tinted-theming", - "repo": "tinted-foot", - "rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4", - "type": "github" - } - }, - "tinted-kitty": { - "flake": false, - "locked": { - "lastModified": 1735730497, - "narHash": "sha256-4KtB+FiUzIeK/4aHCKce3V9HwRvYaxX+F1edUrfgzb8=", - "owner": "tinted-theming", - "repo": "tinted-kitty", - "rev": "de6f888497f2c6b2279361bfc790f164bfd0f3fa", - "type": "github" - }, - "original": { - "owner": "tinted-theming", - "repo": "tinted-kitty", - "type": "github" - } - }, - "tinted-schemes": { - "flake": false, - "locked": { - "lastModified": 1750770351, - "narHash": "sha256-LI+BnRoFNRa2ffbe3dcuIRYAUcGklBx0+EcFxlHj0SY=", - "owner": "tinted-theming", - "repo": "schemes", - "rev": "5a775c6ffd6e6125947b393872cde95867d85a2a", - "type": "github" - }, - "original": { - "owner": "tinted-theming", - "repo": "schemes", - "type": "github" - } - }, - "tinted-tmux": { - "flake": false, - "locked": { - "lastModified": 1751159871, - "narHash": "sha256-UOHBN1fgHIEzvPmdNMHaDvdRMgLmEJh2hNmDrp3d3LE=", - "owner": "tinted-theming", - "repo": "tinted-tmux", - "rev": "bded5e24407cec9d01bd47a317d15b9223a1546c", - "type": "github" - }, - "original": { - "owner": "tinted-theming", - "repo": "tinted-tmux", - "type": "github" - } - }, - "tinted-zed": { - "flake": false, - "locked": { - "lastModified": 1751158968, - "narHash": "sha256-ksOyv7D3SRRtebpXxgpG4TK8gZSKFc4TIZpR+C98jX8=", - "owner": "tinted-theming", - "repo": "base16-zed", - "rev": "86a470d94204f7652b906ab0d378e4231a5b3384", - "type": "github" - }, - "original": { - "owner": "tinted-theming", - "repo": "base16-zed", - "type": "github" - } - }, - "treefmt-nix": { - "inputs": { - "nixpkgs": [ - "nixpkgs" - ] - }, - "locked": { - "lastModified": 1762410071, - "narHash": "sha256-aF5fvoZeoXNPxT0bejFUBXeUjXfHLSL7g+mjR/p5TEg=", - "owner": "numtide", - "repo": "treefmt-nix", - "rev": "97a30861b13c3731a84e09405414398fbf3e109f", - "type": "github" - }, - "original": { - "owner": "numtide", - "repo": "treefmt-nix", - "type": "github" - } - }, "xwayland-satellite-stable": { "flake": false, "locked": { @@ -693,11 +430,11 @@ "xwayland-satellite-unstable": { "flake": false, "locked": { - "lastModified": 1762747449, - "narHash": "sha256-Z1TKiux8K09a93w4PFDFsj8HFugXNy3iCC3Z8MpR5Rk=", + "lastModified": 1761622056, + "narHash": "sha256-fBrUszJXmB4MY+wf3QsCnqWHcz7u7fLq0QMAWCltIQg=", "owner": "Supreeeme", "repo": "xwayland-satellite", - "rev": "6338574bc5c036487486acde264f38f39ea15fad", + "rev": "0728d59ff6463a502e001fb090f6eb92dbc04756", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 9d1a457..140b27e 100644 --- a/flake.nix +++ b/flake.nix @@ -8,69 +8,36 @@ inputs.nixpkgs.follows = "nixpkgs"; }; - #keep-sorted start block=yes - flake-parts = { - url = "github:hercules-ci/flake-parts"; - #inputs.nixpkgs.follows = "nixpkgs"; - }; - naersk = { - url = "github:nix-community/naersk"; - inputs.nixpkgs.follows = "nixpkgs"; - }; niri = { url = "github:sodiboo/niri-flake"; inputs.nixpkgs.follows = "nixpkgs"; inputs.nixpkgs-stable.follows = "nixpkgs"; }; - nix-filter.url = "github:numtide/nix-filter"; + nix-vscode-extensions = { url = "github:nix-community/nix-vscode-extensions"; inputs.nixpkgs.follows = "nixpkgs"; }; - nur = { - url = "github:nix-community/NUR"; - inputs = { - nixpkgs.follows = "nixpkgs"; - flake-parts.follows = "flake-parts"; - }; - }; - servicepoint-cli = { - url = "git+https://git.berlin.ccc.de/servicepoint/servicepoint-cli.git"; - inputs = { - nixpkgs.follows = "nixpkgs"; - naersk.follows = "naersk"; - nix-filter.follows = "nix-filter"; - }; - }; - servicepoint-simulator = { - url = "git+https://git.berlin.ccc.de/servicepoint/servicepoint-simulator.git"; - inputs = { - nixpkgs.follows = "nixpkgs"; - naersk.follows = "naersk"; - nix-filter.follows = "nix-filter"; - }; - }; - servicepoint-tanks = { - url = "git+https://git.berlin.ccc.de/vinzenz/servicepoint-tanks.git?ref=service-improvements"; - inputs.nixpkgs.follows = "nixpkgs"; - }; - stylix = { - url = "github:nix-community/stylix/release-25.05"; - inputs = { - nixpkgs.follows = "nixpkgs"; - nur.follows = "nur"; - flake-parts.follows = "flake-parts"; - }; - }; - treefmt-nix = { - url = "github:numtide/treefmt-nix"; - inputs.nixpkgs.follows = "nixpkgs"; - }; + zerforschen-plus = { url = "git+https://git.berlin.ccc.de/vinzenz/zerforschen.plus"; inputs.nixpkgs.follows = "nixpkgs"; }; - #keep-sorted end + + servicepoint-cli = { + url = "git+https://git.berlin.ccc.de/servicepoint/servicepoint-cli.git"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + + servicepoint-simulator = { + url = "git+https://git.berlin.ccc.de/servicepoint/servicepoint-simulator.git"; + inputs.nixpkgs.follows = "nixpkgs"; + }; + + servicepoint-tanks = { + url = "git+https://git.berlin.ccc.de/vinzenz/servicepoint-tanks.git?ref=service-improvements"; + inputs.nixpkgs.follows = "nixpkgs"; + }; }; outputs = @@ -78,18 +45,13 @@ self, nixpkgs, home-manager, - # keep-sorted start niri, - nix-vscode-extensions, + zerforschen-plus, nixpkgs-unstable, + nix-vscode-extensions, servicepoint-cli, servicepoint-simulator, servicepoint-tanks, - stylix, - treefmt-nix, - zerforschen-plus, - # keep-sorted end - ... }: let devices = { @@ -151,15 +113,6 @@ inherit (nixpkgs) lib; forDevice = f: lib.mapAttrs (device: value: f (value // { inherit device; })) devices; supported-systems = lib.attrsets.mapAttrsToList (k: v: v.system) devices; - treefmt-config = { - projectRootFile = "flake.nix"; - programs = { - nixfmt.enable = true; - jsonfmt.enable = true; - prettier.enable = true; - keep-sorted.enable = true; - }; - }; forAllSystems = f: lib.genAttrs supported-systems ( @@ -167,7 +120,6 @@ f rec { inherit system; pkgs = nixpkgs.legacyPackages.${system}; - treefmt-eval = treefmt-nix.lib.evalModule pkgs treefmt-config; } ); importModuleDir = @@ -216,6 +168,8 @@ ronja = ./homeConfigurations/ronja; }; + formatter = forAllSystems ({ pkgs, ... }: pkgs.nixfmt-tree); + nixosConfigurations = forDevice ( { device, @@ -259,18 +213,17 @@ ./nixosConfigurations/${device} - # keep-sorted start - self.nixosModules.allowed-unfree-list - self.nixosModules.autoupdate self.nixosModules.default - self.nixosModules.extra-caches - self.nixosModules.globalinstalls self.nixosModules.lix-is-nix + self.nixosModules.globalinstalls + self.nixosModules.autoupdate self.nixosModules.openssh - self.nixosModules.systemd-boot self.nixosModules.tailscale + self.nixosModules.allowed-unfree-list + self.nixosModules.extra-caches + self.nixosModules.systemd-boot + zerforschen-plus.nixosModules.default - # keep-sorted end ] ++ (nixpkgs.lib.optionals (home-manager-users != { }) [ { @@ -284,49 +237,36 @@ home-manager.sharedModules = [ { home.stateVersion = "22.11"; } - # keep-sorted start + self.homeModules.adwaita self.homeModules.git - self.homeModules.gnome-extensions - self.homeModules.nano self.homeModules.templates self.homeModules.zsh-basics + self.homeModules.nano + self.homeModules.gnome-extensions self.homeModules.zsh-powerlevel10k - # keep-sorted end ]; home-manager.users = home-manager-users; } - # keep-sorted start - home-manager.nixosModules.home-manager - self.nixosModules.en-de - self.nixosModules.firmware-updates - self.nixosModules.gnome - self.nixosModules.kdeconnect - self.nixosModules.modern-desktop - self.nixosModules.niri - self.nixosModules.nix-ld self.nixosModules.pkgs-unstable self.nixosModules.pkgs-vscode-extensions + self.nixosModules.niri + self.nixosModules.kdeconnect + self.nixosModules.en-de + self.nixosModules.gnome + self.nixosModules.modern-desktop + self.nixosModules.nix-ld self.nixosModules.quiet-boot - self.nixosModules.stylix - servicepoint-cli.nixosModules.default + self.nixosModules.firmware-updates + + home-manager.nixosModules.home-manager servicepoint-simulator.nixosModules.default + servicepoint-cli.nixosModules.default servicepoint-tanks.nixosModules.default - stylix.nixosModules.stylix - # keep-sorted end ]) ++ additional-modules; } ); - - formatter = forAllSystems ({ treefmt-eval, ... }: treefmt-eval.config.build.wrapper); - - checks = forAllSystems ( - { treefmt-eval, ... }: - { - formatting = treefmt-eval.config.build.check self; - } - ); }; } diff --git a/homeConfigurations/ronja/vscode.nix b/homeConfigurations/ronja/vscode.nix index 5226411..5a4ac7f 100644 --- a/homeConfigurations/ronja/vscode.nix +++ b/homeConfigurations/ronja/vscode.nix @@ -27,6 +27,7 @@ "files.autoSaveWhenNoErrors" = true; "files.autoSaveWorkspaceFilesOnly" = true; + "editor.fontFamily" = "'Fira Code', 'Droid Sans Mono', 'monospace', monospace"; "editor.fontLigatures" = true; "editor.formatOnSave" = true; "editor.formatOnSaveMode" = "modificationsIfAvailable"; diff --git a/homeConfigurations/vinzenz/.config/containers/policy.json b/homeConfigurations/vinzenz/.config/containers/policy.json index 245b3df..d1f9b60 100644 --- a/homeConfigurations/vinzenz/.config/containers/policy.json +++ b/homeConfigurations/vinzenz/.config/containers/policy.json @@ -1,23 +1,23 @@ { - "default": [ - { - "type": "reject" - } - ], - "transports": { - "docker-daemon": { - "": [ + "default": [ { - "type": "insecureAcceptAnything" + "type": "reject" } - ] - }, - "docker": { - "docker.io/library/debian": [ - { - "type": "insecureAcceptAnything" + ], + "transports": { + "docker-daemon": { + "": [ + { + "type": "insecureAcceptAnything" + } + ] + }, + "docker": { + "docker.io/library/debian": [ + { + "type": "insecureAcceptAnything" + } + ] } - ] } - } } diff --git a/homeConfigurations/vinzenz/default.nix b/homeConfigurations/vinzenz/default.nix index 4a2ff59..50287b7 100644 --- a/homeConfigurations/vinzenz/default.nix +++ b/homeConfigurations/vinzenz/default.nix @@ -1,21 +1,18 @@ { pkgs, ... }: { imports = [ - # keep-sorted start ./editorconfig.nix - ./fonts.nix ./fuzzel.nix ./git.nix ./gnome.nix - ./mako.nix - ./niri.nix ./ssh.nix - ./starship.nix - ./swaylock.nix ./vscode.nix - ./waybar.nix ./zsh.nix - # keep-sorted end + ./starship.nix + ./fonts.nix + ./niri.nix + ./swaylock.nix + ./waybar.nix ]; config = { @@ -59,7 +56,6 @@ wireguard-tools wirelesstools - tailscale kdiff3 jetbrains-toolbox diff --git a/homeConfigurations/vinzenz/fonts.nix b/homeConfigurations/vinzenz/fonts.nix index ebda673..6553c2a 100644 --- a/homeConfigurations/vinzenz/fonts.nix +++ b/homeConfigurations/vinzenz/fonts.nix @@ -1,9 +1,12 @@ { pkgs, ... }: { - fonts.fontconfig.enable = true; + fonts.fontconfig = { + enable = true; + defaultFonts.monospace = [ "FiraCode Nerd Font Mono" ]; + }; home.packages = with pkgs; [ + nerd-fonts.fira-code roboto-mono recursive - font-awesome ]; } diff --git a/homeConfigurations/vinzenz/fuzzel.nix b/homeConfigurations/vinzenz/fuzzel.nix index bf33708..faf3814 100644 --- a/homeConfigurations/vinzenz/fuzzel.nix +++ b/homeConfigurations/vinzenz/fuzzel.nix @@ -7,8 +7,22 @@ terminal = "${lib.getBin pkgs.gnome-console}/bin/kgx"; icon-theme = "Adwaita"; counter = true; + font = "sans:size=11"; launch-prefix = "niri msg action spawn --"; }; + colors = { + border = "0003B3FF"; + background = "0F0F0FFF"; + text = "657b83ff"; + prompt = "586e75ff"; + placeholder = "93a1a1ff"; + input = "657b83ff"; + match = "cb4b16ff"; + selection = "eee8d5ff"; + selection-text = "586e75ff"; + selection-match = "cb4b16ff"; + counter = "93a1a1ff"; + }; border = { radius = 30; width = 3; diff --git a/homeConfigurations/vinzenz/mako.nix b/homeConfigurations/vinzenz/mako.nix deleted file mode 100644 index b8052a4..0000000 --- a/homeConfigurations/vinzenz/mako.nix +++ /dev/null @@ -1,3 +0,0 @@ -{ - services.mako.enable = true; -} diff --git a/homeConfigurations/vinzenz/niri.nix b/homeConfigurations/vinzenz/niri.nix index ba835c9..a6f0125 100644 --- a/homeConfigurations/vinzenz/niri.nix +++ b/homeConfigurations/vinzenz/niri.nix @@ -9,6 +9,7 @@ home.sessionVariables.NIXOS_OZONE_WL = "1"; home.packages = with pkgs; [ xwayland-satellite + alacritty ]; qt.style = { @@ -16,6 +17,8 @@ name = "adwaita-dark"; }; + services.mako.enable = true; + programs.niri.settings = { outputs = { "BOE 0x0A3B Unknown" = { @@ -58,6 +61,7 @@ { background-color = "#000000"; gaps = gap-size; + #default-column-display = "tabbed"; border = { enable = true; width = gap-size / 2; @@ -168,10 +172,10 @@ # Suggested binds for running programs: terminal, app launcher, screen locker. "Mod+T".action.spawn = "${lib.getBin pkgs.gnome-console}/bin/kgx"; - "Mod+D".action.spawn = "${lib.getBin config.programs.fuzzel.package}/bin/fuzzel"; + "Mod+D".action.spawn = "fuzzel"; "Super+Alt+L" = { action.spawn = "${lib.getBin config.programs.swaylock.package}/bin/swaylock"; - allow-when-locked = true; + allow-when-locked=true; }; # You can also use a shell. Do this if you need pipes, multiple commands, etc. @@ -402,7 +406,7 @@ "Mod+Shift+P".action.power-off-monitors = { }; "Mod+W".action.toggle-column-tabbed-display = { }; - "Mod+O".action.toggle-overview = { }; + "Mod+O".action.toggle-overview = {}; }; }; }; diff --git a/homeConfigurations/vinzenz/starship.nix b/homeConfigurations/vinzenz/starship.nix index 458058d..003e022 100644 --- a/homeConfigurations/vinzenz/starship.nix +++ b/homeConfigurations/vinzenz/starship.nix @@ -1,4 +1,4 @@ -{ lib, ... }: +{ ... }: { config.programs.starship = { enable = true; @@ -15,8 +15,7 @@ + "([ $cmd_duration$status](bg:color_y fg:text_y))[](fg:color_y)" + "$line_break$character "; - # TODO: replace with base16 theme - palette = lib.mkForce "color_me_surprised"; + palette = "color_me_surprised"; palettes.color_me_surprised = { "color_r" = "#a30262"; "color_g" = "#d162a4"; @@ -211,6 +210,121 @@ swift.symbol = ""; zig.symbol = ""; gradle.symbol = ""; + + palettes = { + catppuccin_mocha = { + rosewater = "#f5e0dc"; + flamingo = "#f2cdcd"; + pink = "#f5c2e7"; + mauve = "#cba6f7"; + red = "#f38ba8"; + maroon = "#eba0ac"; + peach = "#fab387"; + yellow = "#f9e2af"; + green = "#a6e3a1"; + teal = "#94e2d5"; + sky = "#89dceb"; + sapphire = "#74c7ec"; + blue = "#89b4fa"; + lavender = "#b4befe"; + text = "#cdd6f4"; + subtext1 = "#bac2de"; + subtext0 = "#a6adc8"; + overlay2 = "#9399b2"; + overlay1 = "#7f849c"; + overlay0 = "#6c7086"; + surface2 = "#585b70"; + surface1 = "#45475a"; + surface0 = "#313244"; + base = "#1e1e2e"; + mantle = "#181825"; + crust = "#11111b"; + }; + catppuccin_frappe = { + rosewater = "#f2d5cf"; + flamingo = "#eebebe"; + pink = "#f4b8e4"; + mauve = "#ca9ee6"; + red = "#e78284"; + maroon = "#ea999c"; + peach = "#ef9f76"; + yellow = "#e5c890"; + green = "#a6d189"; + teal = "#81c8be"; + sky = "#99d1db"; + sapphire = "#85c1dc"; + blue = "#8caaee"; + lavender = "#babbf1"; + text = "#c6d0f5"; + subtext1 = "#b5bfe2"; + subtext0 = "#a5adce"; + overlay2 = "#949cbb"; + overlay1 = "#838ba7"; + overlay0 = "#737994"; + surface2 = "#626880"; + surface1 = "#51576d"; + surface0 = "#414559"; + base = "#303446"; + mantle = "#292c3c"; + crust = "#232634"; + }; + catppuccin_latte = { + rosewater = "#dc8a78"; + flamingo = "#dd7878"; + pink = "#ea76cb"; + mauve = "#8839ef"; + red = "#d20f39"; + maroon = "#e64553"; + peach = "#fe640b"; + yellow = "#df8e1d"; + green = "#40a02b"; + teal = "#179299"; + sky = "#04a5e5"; + sapphire = "#209fb5"; + blue = "#1e66f5"; + lavender = "#7287fd"; + text = "#4c4f69"; + subtext1 = "#5c5f77"; + subtext0 = "#6c6f85"; + overlay2 = "#7c7f93"; + overlay1 = "#8c8fa1"; + overlay0 = "#9ca0b0"; + surface2 = "#acb0be"; + surface1 = "#bcc0cc"; + surface0 = "#ccd0da"; + base = "#eff1f5"; + mantle = "#e6e9ef"; + crust = "#dce0e8"; + }; + catppuccin_macchiato = { + rosewater = "#f4dbd6"; + flamingo = "#f0c6c6"; + pink = "#f5bde6"; + mauve = "#c6a0f6"; + red = "#ed8796"; + maroon = "#ee99a0"; + peach = "#f5a97f"; + yellow = "#eed49f"; + green = "#a6da95"; + teal = "#8bd5ca"; + sky = "#91d7e3"; + sapphire = "#7dc4e4"; + blue = "#8aadf4"; + lavender = "#b7bdf8"; + text = "#cad3f5"; + subtext1 = "#b8c0e0"; + subtext0 = "#a5adcb"; + overlay2 = "#939ab7"; + overlay1 = "#8087a2"; + overlay0 = "#6e738d"; + surface2 = "#5b6078"; + surface1 = "#494d64"; + surface0 = "#363a4f"; + base = "#24273a"; + mantle = "#1e2030"; + crust = "#181926"; + }; + }; }; }; } diff --git a/homeConfigurations/vinzenz/vscode.nix b/homeConfigurations/vinzenz/vscode.nix index 80bb967..3ddfa78 100644 --- a/homeConfigurations/vinzenz/vscode.nix +++ b/homeConfigurations/vinzenz/vscode.nix @@ -37,6 +37,7 @@ "files.autoSaveWhenNoErrors" = true; "files.autoSaveWorkspaceFilesOnly" = true; + "editor.fontFamily" = "'Fira Code', 'Droid Sans Mono', 'monospace', monospace"; "editor.fontLigatures" = true; "editor.formatOnSave" = true; "editor.formatOnSaveMode" = "modificationsIfAvailable"; @@ -86,10 +87,6 @@ "\[nix\]" = { "editor.formatOnSave" = false; }; - - "\[css\]" = { - "editor.formatOnSave" = false; - }; }; }; }; diff --git a/homeConfigurations/vinzenz/waybar.css b/homeConfigurations/vinzenz/waybar.css index 2a33940..39b0038 100644 --- a/homeConfigurations/vinzenz/waybar.css +++ b/homeConfigurations/vinzenz/waybar.css @@ -1,98 +1,92 @@ * { - /* `otf-font-awesome` is required to be installed for icons */ - font-family: FontAwesome, sans-serif; - font-size: 13px; - color: #dcdfe1; + /* `otf-font-awesome` is required to be installed for icons */ + font-family: FontAwesome, sans-serif; + font-size: 13px; + border: none; + border-radius: 0; + color: #dcdfe1; +} + +#waybar { + background-color: rgba(0, 0, 0, 0); + border: none; + box-shadow: none; } window#waybar { - background: black; - /* border: none; */ - box-shadow: none; - - color: #ffffff; - transition-property: background-color; - transition-duration: 0.5s; + color: #ffffff; + transition-property: background-color; + transition-duration: .5s; } window#waybar.hidden { - opacity: 0.2; + opacity: 0.2; } window#waybar.termite { - background-color: #3f3f3f; + background-color: #3F3F3F; } window#waybar.chromium { - background-color: #000000; - border: none; -} -/* -window#waybar .modules-left, -window#waybar .modules-center, -window#waybar .modules-right { - border: 1px solid; - border-radius: 15px; - border-image-source: linear-gradient(90deg, #d162a4, #5BCEFA); -} - */ -box.horizontal { - padding: 4px 4px 0px 4px; + background-color: #000000; + border: none; } #workspaces, #window, #tray { - background-color: rgba(15, 27, 53, 0.9); - padding: 4px 6px; - margin-left: 6px; - margin-right: 6px; - border-radius: 15px; - border-width: 0px; + background-color: rgba(15, 27, 53, 0.9); + padding: 4px 6px; + margin-top: 6px; + margin-left: 6px; + margin-right: 6px; + border-radius: 15px; + border-width: 0px; } + button { - /* Use box-shadow instead of border so the text isn't offset */ - box-shadow: inset 0 -3px transparent; - /* Avoid rounded borders under each button name */ - border: none; - border-radius: 0; + /* Use box-shadow instead of border so the text isn't offset */ + box-shadow: inset 0 -3px transparent; + /* Avoid rounded borders under each button name */ + border: none; + border-radius: 0; } /* https://github.com/Alexays/Waybar/wiki/FAQ#the-workspace-buttons-have-a-strange-hover-effect */ button:hover { - background: inherit; - box-shadow: inset 0 -3px #ffffff; + background: inherit; + box-shadow: inset 0 -3px #ffffff; } /* you can set a style on hover for any module like this */ #pulseaudio:hover { - background-color: #a37800; + background-color: #a37800; } #workspaces button { - padding: 0 5px; - background-color: transparent; - color: #ffffff; - border-radius: 15px; + padding: 0 5px; + background-color: transparent; + color: #ffffff; } #workspaces button:hover { - background: rgba(0, 0, 0, 0.2); + background: rgba(0, 0, 0, 0.2); } #workspaces button.focused, #workspaces button.active { - background-color: #64727d; + background-color: #64727D; + box-shadow: inset 0 -3px #ffffff; } #workspaces button.urgent { - background-color: #eb4d4b; + background-color: #eb4d4b; } #mode { - background-color: #64727d; - box-shadow: inset 0 -3px #ffffff; + background-color: #64727D; + box-shadow: inset 0 -3px #ffffff; } #clock, @@ -106,30 +100,31 @@ button:hover { #pulseaudio, #wireplumber, #custom-media, +#tray, #mode, #idle_inhibitor, #scratchpad, #power-profiles-daemon, #mpd { - padding: 0 10px; - color: #ffffff; + padding: 0 10px; + color: #ffffff; } #window, #workspaces { - margin: 0 4px; + margin: 0 4px; } /* If workspaces is the leftmost module, omit left margin */ -.modules-left > widget:first-child > #workspaces { - margin-left: 0; +.modules-left>widget:first-child>#workspaces { + margin-left: 0; } /* If workspaces is the rightmost module, omit right margin */ -.modules-right > widget:last-child > #workspaces { - margin-right: 0; +.modules-right>widget:last-child>#workspaces { + margin-right: 0; } -/* + #clock { background-color: #64727D; } @@ -144,41 +139,44 @@ button:hover { color: #ffffff; background-color: #26A65B; } - */ + @keyframes blink { - to { - background-color: #ffffff; - color: #000000; - } + to { + background-color: #ffffff; + color: #000000; + } } /* Using steps() instead of linear as a timing function to limit cpu usage */ #battery.critical:not(.charging) { - background-color: #f53c3c; - color: #ffffff; - animation-name: blink; - animation-duration: 0.5s; - animation-timing-function: steps(12); - animation-iteration-count: infinite; - animation-direction: alternate; + background-color: #f53c3c; + color: #ffffff; + animation-name: blink; + animation-duration: 0.5s; + animation-timing-function: steps(12); + animation-iteration-count: infinite; + animation-direction: alternate; } #power-profiles-daemon { - padding-right: 15px; + padding-right: 15px; } #power-profiles-daemon.performance { - color: #f53c3c; + background-color: #f53c3c; + color: #ffffff; } #power-profiles-daemon.balanced { - color: #2980b9; + background-color: #2980b9; + color: #ffffff; } #power-profiles-daemon.power-saver { - color: #2ecc71; + background-color: #2ecc71; + color: #000000; } -/* + label:focus { background-color: #000000; } @@ -226,6 +224,7 @@ label:focus { #wireplumber.muted { background-color: #f53c3c; } + #custom-media { background-color: #66cc99; color: #2a5c45; @@ -252,16 +251,15 @@ label:focus { background-color: #2980b9; } - */ -#tray > .passive { - -gtk-icon-effect: dim; +#tray>.passive { + -gtk-icon-effect: dim; } -#tray > .needs-attention { - -gtk-icon-effect: highlight; - background-color: #eb4d4b; +#tray>.needs-attention { + -gtk-icon-effect: highlight; + background-color: #eb4d4b; } -/* + #idle_inhibitor { background-color: #2d3436; } @@ -287,59 +285,56 @@ label:focus { #mpd.paused { background-color: #51a37a; } -*/ #language { - /* background: #00b093; - color: #740864; */ - padding: 0 5px; - margin: 0 5px; - min-width: 16px; + color: #740864; + padding: 0 5px; + margin: 0 5px; + min-width: 16px; } #keyboard-state { - /* background: #97e1ad; - color: #000000; */ - padding: 0 0px; - margin: 0 5px; - min-width: 16px; + color: #000000; + padding: 0 0px; + margin: 0 5px; + min-width: 16px; } -#keyboard-state > label { - padding: 0 5px; +#keyboard-state>label { + padding: 0 5px; } -#keyboard-state > label.locked { - background: rgba(0, 0, 0, 0.2); +#keyboard-state>label.locked { + background: rgba(0, 0, 0, 0.2); } #scratchpad { - background: rgba(0, 0, 0, 0.2); + background: rgba(0, 0, 0, 0.2); } #scratchpad.empty { - background-color: transparent; + background-color: transparent; } #privacy { - padding: 0; + padding: 0; } #privacy-item { - padding: 0 5px; - color: white; + padding: 0 5px; + color: white; } #privacy-item.screenshare { - background-color: #cf5700; + background-color: #cf5700; } #privacy-item.audio-in { - background-color: #1ca000; + background-color: #1ca000; } #privacy-item.audio-out { - background-color: #0069d4; + background-color: #0069d4; } diff --git a/homeConfigurations/vinzenz/waybar.nix b/homeConfigurations/vinzenz/waybar.nix index 44d7099..ded0540 100644 --- a/homeConfigurations/vinzenz/waybar.nix +++ b/homeConfigurations/vinzenz/waybar.nix @@ -1,7 +1,6 @@ { pkgs, - lib, - config, + device, ... }: { @@ -13,7 +12,7 @@ enable = true; systemd.enable = true; systemd.target = "graphical-session.target"; - style = lib.mkAfter (builtins.readFile ./waybar.css); + style = ./waybar.css; settings = { mainBar = { layer = "top"; @@ -35,7 +34,7 @@ ]; modules-right = [ "mpris" - #"image" + "image" "gamemode" "temperature" @@ -49,7 +48,7 @@ "power-profiles-daemon" "battery" "idle_inhibitor" - "group/group-power" + #"group/group-power" ]; "niri/workspaces" = { format = "{icon}"; @@ -115,7 +114,25 @@ }; cpu = { interval = 1; - format = "{usage:3}%@{avg_frequency:4}"; + format = + "{usage:3}%@{avg_frequency:4} " + + (builtins.getAttr device { + "vinzenz-lpt2" = + "{icon0}{icon1}{icon2}{icon3}{icon4}{icon5}{icon6}{icon7}{icon8}{icon9}{icon10}{icon11}{icon12}{icon13}{icon14}{icon15}{icon16}{icon17}{icon18}{icon19}"; + "vinzenz-pc2" = + "{icon0}{icon1}{icon2}{icon3}{icon4}{icon5}{icon6}{icon7}{icon8}{icon9}{icon10}{icon11}{icon12}{icon13}{icon14}{icon15}"; + }) + + " "; + format-icons = [ + "" + "" + "" + "" + "" + "" + "" + "" + ]; }; disk = { format = "{free}/{total}"; @@ -135,28 +152,25 @@ ]; }; "custom/quit" = { - "format" = "󰗼 "; + "format" = "󰗼"; "tooltip" = false; - "on-click" = "niri msg action quit"; + "on-click" = "hyprctl dispatch exit"; min-width = 20; }; "custom/lock" = { - "format" = "󰍁 "; + "format" = "󰍁"; "tooltip" = false; - "on-click" = "${lib.getBin config.programs.swaylock.package}/bin/swaylock"; - min-width = 20; + "on-click" = "swaylock"; }; "custom/reboot" = { - "format" = "󰜉 "; + "format" = "󰜉"; "tooltip" = false; - "on-click" = "systemctl reboot"; - min-width = 20; + "on-click" = "reboot"; }; "custom/power" = { - "format" = " "; + "format" = ""; "tooltip" = false; - "on-click" = "systemctl shutdown"; - min-width = 20; + "on-click" = "shutdown now"; }; idle_inhibitor = { format = "{icon}"; @@ -165,24 +179,24 @@ deactivated = ""; }; }; - #image = - # let - # albumArtScript = pkgs.writeShellScriptBin "album-art.sh" '' - # #!${pkgs.bash}/bin/bash - # album_art=$(playerctl metadata mpris:artUrl) - # if [[ -z $album_art ]] - # then - # exit - # fi - # curl -s "''${album_art}" --output "/tmp/cover.jpeg" - # echo "/tmp/cover.jpeg" - # ''; - # in - # { - # exec = "${albumArtScript}/bin/album-art.sh"; - # interval = 15; - # on-click = "playerctl play-pause"; - # }; + image = + let + albumArtScript = pkgs.writeShellScriptBin "album-art.sh" '' + #!${pkgs.bash}/bin/bash + album_art=$(playerctl metadata mpris:artUrl) + if [[ -z $album_art ]] + then + exit + fi + curl -s "''${album_art}" --output "/tmp/cover.jpeg" + echo "/tmp/cover.jpeg" + ''; + in + { + exec = "${albumArtScript}/bin/album-art.sh"; + interval = 15; + on-click = "playerctl play-pause"; + }; mpris = { format = "{title} "; tooltip-format = "{player} ({status}) {dynamic}"; diff --git a/homeModules/adwaita.nix b/homeModules/adwaita.nix new file mode 100644 index 0000000..96d24c7 --- /dev/null +++ b/homeModules/adwaita.nix @@ -0,0 +1,12 @@ +{ pkgs, ... }: +{ + gtk = { + enable = true; + iconTheme.name = "Adwaita"; + cursorTheme.name = "Adwaita"; + theme = { + name = "adw-gtk3-dark"; + package = pkgs.adw-gtk3; + }; + }; +} diff --git a/nixosModules/stylix.nix b/nixosModules/stylix.nix deleted file mode 100644 index fe10652..0000000 --- a/nixosModules/stylix.nix +++ /dev/null @@ -1,35 +0,0 @@ -{ pkgs, ... }: -{ - stylix = { - enable = true; - base16Scheme = "${pkgs.base16-schemes}/share/themes/catppuccin-mocha.yaml"; - polarity = "dark"; - targets = { - gnome.enable = false; - gtk.enable = false; - gtksourceview.enable = false; - fontconfig.enable = true; - }; - fonts = { - sansSerif = { - name = "Inter"; - package = pkgs.inter; - }; - monospace = { - name = "FiraCode Nerd Font Mono"; - package = pkgs.nerd-fonts.fira-code; - }; - }; - icons = { - enable = true; - dark = "Adwaita"; - light = "Adwaita"; - package = pkgs.adwaita-icon-theme; - }; - cursor = { - name = "Adwaita"; - size = 16; - package = pkgs.adwaita-icon-theme; - }; - }; -}