diff --git a/flake.lock b/flake.lock
index 6b68155..51d7eb9 100644
--- a/flake.lock
+++ b/flake.lock
@@ -57,11 +57,11 @@
]
},
"locked": {
- "lastModified": 1767024902,
- "narHash": "sha256-sMdk6QkMDhIOnvULXKUM8WW8iyi551SWw2i6KQHbrrU=",
+ "lastModified": 1769428758,
+ "narHash": "sha256-0G/GzF7lkWs/yl82bXuisSqPn6sf8YGTnbEdFOXvOfU=",
"owner": "hyprwm",
"repo": "aquamarine",
- "rev": "b8a0c5ba5a9fbd2c660be7dd98bdde0ff3798556",
+ "rev": "def5e74c97370f15949a67c62e61f1459fcb0e15",
"type": "github"
},
"original": {
@@ -104,16 +104,33 @@
"url": "https://git.madhouse-project.org/algernon/avalanche.git"
}
},
+ "brew-src": {
+ "flake": false,
+ "locked": {
+ "lastModified": 1769363988,
+ "narHash": "sha256-BiGPeulrDVetXP+tjxhMcGLUROZAtZIhU5m4MqawCfM=",
+ "owner": "Homebrew",
+ "repo": "brew",
+ "rev": "d01011cac6d72032c75fd2cd9489909e95d9faf2",
+ "type": "github"
+ },
+ "original": {
+ "owner": "Homebrew",
+ "ref": "5.0.12",
+ "repo": "brew",
+ "type": "github"
+ }
+ },
"disko": {
"inputs": {
"nixpkgs": "nixpkgs_2"
},
"locked": {
- "lastModified": 1746728054,
- "narHash": "sha256-eDoSOhxGEm2PykZFa/x9QG5eTH0MJdiJ9aR00VAofXE=",
+ "lastModified": 1768920986,
+ "narHash": "sha256-CNzzBsRhq7gg4BMBuTDObiWDH/rFYHEuDRVOwCcwXw4=",
"owner": "nix-community",
"repo": "disko",
- "rev": "ff442f5d1425feb86344c028298548024f21256d",
+ "rev": "de5708739256238fb912c62f03988815db89ec9a",
"type": "github"
},
"original": {
@@ -323,11 +340,11 @@
]
},
"locked": {
- "lastModified": 1768018810,
- "narHash": "sha256-WREj1ZQ2wSGtyPAhQJ3SX/7PJ29PNKv04h/7NgqUS+M=",
+ "lastModified": 1769776025,
+ "narHash": "sha256-70a1kVC08AMTvPc7iqQsJbbD4Y1fukakMVudz4oY9SM=",
"owner": "nix-community",
"repo": "home-manager",
- "rev": "7c5d9345ad7cc38832cd4007f5cd03daad64d75b",
+ "rev": "0fba737f8d5571d41467f3d99a878e11b8c0f0f0",
"type": "github"
},
"original": {
@@ -336,16 +353,48 @@
"type": "github"
}
},
+ "homebrew-cask": {
+ "flake": false,
+ "locked": {
+ "lastModified": 1770245750,
+ "narHash": "sha256-hWGcDAhwloJK0MGvu9v1aIY3tUphAYMYkbc3whaCHTY=",
+ "owner": "homebrew",
+ "repo": "homebrew-cask",
+ "rev": "e4f2be7badec7ede6128614daaa7a0ca8155d183",
+ "type": "github"
+ },
+ "original": {
+ "owner": "homebrew",
+ "repo": "homebrew-cask",
+ "type": "github"
+ }
+ },
+ "homebrew-core": {
+ "flake": false,
+ "locked": {
+ "lastModified": 1770252071,
+ "narHash": "sha256-d3ci+aTB1k5HyCTIoX/JmrhKgbXZVjE/aggVl6xYdFE=",
+ "owner": "homebrew",
+ "repo": "homebrew-core",
+ "rev": "520f413dc530506af8e624f9cbbedbb3b5e01677",
+ "type": "github"
+ },
+ "original": {
+ "owner": "homebrew",
+ "repo": "homebrew-core",
+ "type": "github"
+ }
+ },
"hypr-contrib": {
"inputs": {
"nixpkgs": "nixpkgs_3"
},
"locked": {
- "lastModified": 1766066098,
- "narHash": "sha256-d3HmUbmfTDIt9mXEHszqyo2byqQMoyJtUJCZ9U1IqHQ=",
+ "lastModified": 1768426687,
+ "narHash": "sha256-CopNx3j//gZ2mE0ggEK9dZ474UcbDhpTw+KMor8mSxI=",
"owner": "hyprwm",
"repo": "contrib",
- "rev": "41dbcac8183bb1b3a4ade0d8276b2f2df6ae4690",
+ "rev": "541628cebe42792ddf5063c4abd6402c2f1bd68f",
"type": "github"
},
"original": {
@@ -399,11 +448,11 @@
]
},
"locked": {
- "lastModified": 1766946335,
- "narHash": "sha256-MRD+Jr2bY11MzNDfenENhiK6pvN+nHygxdHoHbZ1HtE=",
+ "lastModified": 1769284023,
+ "narHash": "sha256-xG34vwYJ79rA2wVC8KFuM8r36urJTG6/csXx7LiiSYU=",
"owner": "hyprwm",
"repo": "hyprgraphics",
- "rev": "4af02a3925b454deb1c36603843da528b67ded6c",
+ "rev": "13c536659d46893596412d180449353a900a1d31",
"type": "github"
},
"original": {
@@ -431,19 +480,17 @@
"xdph": "xdph"
},
"locked": {
- "lastModified": 1768000181,
- "narHash": "sha256-7p4kVQGlhlt6em/yDV787uSKs9C8WzkvtjwXHWZ34Ok=",
- "ref": "refs/heads/main",
- "rev": "81e7498ec27156ee97aabba6fe4993412d98d1ab",
- "revCount": 6803,
- "submodules": true,
- "type": "git",
- "url": "https://github.com/hyprwm/Hyprland"
+ "lastModified": 1769694617,
+ "narHash": "sha256-h8+Wqc4x68mN2qOLX45HsO6Z4eQOfrdtSKiSzcBrCVg=",
+ "owner": "hyprwm",
+ "repo": "Hyprland",
+ "rev": "c92fb5e85f4a5fd3a0f5ffb5892f6a61cfe1be2b",
+ "type": "github"
},
"original": {
- "submodules": true,
- "type": "git",
- "url": "https://github.com/hyprwm/Hyprland"
+ "owner": "hyprwm",
+ "repo": "Hyprland",
+ "type": "github"
}
},
"hyprland-guiutils": {
@@ -509,11 +556,11 @@
]
},
"locked": {
- "lastModified": 1767723101,
- "narHash": "sha256-jObY8O7OI+91hoE137APsDxm0235/Yx+HhFIip187zM=",
+ "lastModified": 1769285097,
+ "narHash": "sha256-eVD4U3Oqzz0VU9ylJ5wo76xDcYKv2CpiiRXq4Is4QdA=",
"owner": "hyprwm",
"repo": "hyprland-plugins",
- "rev": "fef398ed5e4faf59bc43b915e46a75cfe8b16697",
+ "rev": "06c0749a0dac978d89b1a76ae6adc76a3c15dbfa",
"type": "github"
},
"original": {
@@ -563,11 +610,11 @@
]
},
"locked": {
- "lastModified": 1764612430,
- "narHash": "sha256-54ltTSbI6W+qYGMchAgCR6QnC1kOdKXN6X6pJhOWxFg=",
+ "lastModified": 1767983607,
+ "narHash": "sha256-8C2co8NYfR4oMOUEsPROOJ9JHrv9/ktbJJ6X1WsTbXc=",
"owner": "hyprwm",
"repo": "hyprlang",
- "rev": "0d00dc118981531aa731150b6ea551ef037acddd",
+ "rev": "d4037379e6057246b408bbcf796cf3e9838af5b2",
"type": "github"
},
"original": {
@@ -694,11 +741,11 @@
]
},
"locked": {
- "lastModified": 1767473322,
- "narHash": "sha256-RGOeG+wQHeJ6BKcsSB8r0ZU77g9mDvoQzoTKj2dFHwA=",
+ "lastModified": 1769202094,
+ "narHash": "sha256-gdJr/vWWLRW85ucatSjoBULPB2dqBJd/53CZmQ9t91Q=",
"owner": "hyprwm",
"repo": "hyprwire",
- "rev": "d5e7d6b49fe780353c1cf9a1cf39fa8970bd9d11",
+ "rev": "a45ca05050d22629b3c7969a926d37870d7dd75c",
"type": "github"
},
"original": {
@@ -786,17 +833,56 @@
]
},
"locked": {
- "lastModified": 1766487857,
- "narHash": "sha256-Inkx0g6Dvn/lAC2bQh/rNKvoP8NGpm/YqPDiagfAdKQ=",
- "rev": "9e333811b45c7245b8744c0d9f292912513459b0",
+ "lastModified": 1769188530,
+ "narHash": "sha256-7IbDO2kdQ203SrMFrmitaClED16TJeB+T+f7dXqIZo0=",
+ "rev": "72b01b4b39e9a54bcf75003d07a6f2bb3104737a",
"type": "tarball",
- "url": "https://git.madhouse-project.org/api/v1/repos/iocaine/nam-shub-of-enki/archive/9e333811b45c7245b8744c0d9f292912513459b0.tar.gz?rev=9e333811b45c7245b8744c0d9f292912513459b0"
+ "url": "https://git.madhouse-project.org/api/v1/repos/iocaine/nam-shub-of-enki/archive/72b01b4b39e9a54bcf75003d07a6f2bb3104737a.tar.gz?rev=72b01b4b39e9a54bcf75003d07a6f2bb3104737a"
},
"original": {
"type": "tarball",
"url": "https://git.madhouse-project.org/iocaine/nam-shub-of-enki/archive/iocaine-3.x.tar.gz"
}
},
+ "nix-darwin": {
+ "inputs": {
+ "nixpkgs": [
+ "nixpkgs"
+ ]
+ },
+ "locked": {
+ "lastModified": 1767634391,
+ "narHash": "sha256-owcSz2ICqTSvhBbhPP+1eWzi88e54rRZtfCNE5E/wwg=",
+ "owner": "nix-darwin",
+ "repo": "nix-darwin",
+ "rev": "08585aacc3d6d6c280a02da195fdbd4b9cf083c2",
+ "type": "github"
+ },
+ "original": {
+ "owner": "nix-darwin",
+ "ref": "nix-darwin-25.11",
+ "repo": "nix-darwin",
+ "type": "github"
+ }
+ },
+ "nix-homebrew": {
+ "inputs": {
+ "brew-src": "brew-src"
+ },
+ "locked": {
+ "lastModified": 1769437432,
+ "narHash": "sha256-8d7KnCpT2LweRvSzZYEGd9IM3eFX+A78opcnDM0+ndk=",
+ "owner": "zhaofengli",
+ "repo": "nix-homebrew",
+ "rev": "a5409abd0d5013d79775d3419bcac10eacb9d8c5",
+ "type": "github"
+ },
+ "original": {
+ "owner": "zhaofengli",
+ "repo": "nix-homebrew",
+ "type": "github"
+ }
+ },
"nixocaine": {
"inputs": {
"iocaine-stable": "iocaine-stable",
@@ -807,11 +893,11 @@
"treefmt-nix": "treefmt-nix"
},
"locked": {
- "lastModified": 1766487985,
- "narHash": "sha256-1lf9iyBmFrDdoH1r5h56FvximUHs+PQktU/S5EFGlrI=",
- "rev": "1e607be339fd1864328708dc80ec9b266a2bd7f5",
+ "lastModified": 1769188713,
+ "narHash": "sha256-Amw9yroFzMRaaZa5bjMZHXtWNVrdbidx1c7JqscfkVg=",
+ "rev": "528a816e0b4b5e3999b4d0c8ace7fd488a4366d8",
"type": "tarball",
- "url": "https://git.madhouse-project.org/api/v1/repos/iocaine/nixocaine/archive/1e607be339fd1864328708dc80ec9b266a2bd7f5.tar.gz"
+ "url": "https://git.madhouse-project.org/api/v1/repos/iocaine/nixocaine/archive/528a816e0b4b5e3999b4d0c8ace7fd488a4366d8.tar.gz"
},
"original": {
"type": "tarball",
@@ -820,11 +906,11 @@
},
"nixos-hardware": {
"locked": {
- "lastModified": 1767185284,
- "narHash": "sha256-ljDBUDpD1Cg5n3mJI81Hz5qeZAwCGxon4kQW3Ho3+6Q=",
+ "lastModified": 1769302137,
+ "narHash": "sha256-QEDtctEkOsbx8nlFh4yqPEOtr4tif6KTqWwJ37IM2ds=",
"owner": "nixos",
"repo": "nixos-hardware",
- "rev": "40b1a28dce561bea34858287fbb23052c3ee63fe",
+ "rev": "a351494b0e35fd7c0b7a1aae82f0afddf4907aa8",
"type": "github"
},
"original": {
@@ -882,11 +968,11 @@
},
"nixpkgs_10": {
"locked": {
- "lastModified": 1767379071,
- "narHash": "sha256-EgE0pxsrW9jp9YFMkHL9JMXxcqi/OoumPJYwf+Okucw=",
+ "lastModified": 1769018530,
+ "narHash": "sha256-MJ27Cy2NtBEV5tsK+YraYr2g851f3Fl1LpNHDzDX15c=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "fb7944c166a3b630f177938e478f0378e64ce108",
+ "rev": "88d3861acdd3d2f0e361767018218e51810df8a1",
"type": "github"
},
"original": {
@@ -898,11 +984,11 @@
},
"nixpkgs_2": {
"locked": {
- "lastModified": 1746576598,
- "narHash": "sha256-FshoQvr6Aor5SnORVvh/ZdJ1Sa2U4ZrIMwKBX5k2wu0=",
+ "lastModified": 1768661221,
+ "narHash": "sha256-MJwOjrIISfOpdI9x4C+5WFQXvHtOuj5mqLZ4TMEtk1M=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "b3582c75c7f21ce0b429898980eddbbf05c68e55",
+ "rev": "3327b113f2ef698d380df83fbccefad7e83d7769",
"type": "github"
},
"original": {
@@ -946,11 +1032,11 @@
},
"nixpkgs_5": {
"locked": {
- "lastModified": 1767799921,
- "narHash": "sha256-r4GVX+FToWVE2My8VVZH4V0pTIpnu2ZE8/Z4uxGEMBE=",
+ "lastModified": 1769598131,
+ "narHash": "sha256-e7VO/kGLgRMbWtpBqdWl0uFg8Y2XWFMdz0uUJvlML8o=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "d351d0653aeb7877273920cd3e823994e7579b0b",
+ "rev": "fa83fd837f3098e3e678e6cf017b2b36102c7211",
"type": "github"
},
"original": {
@@ -994,11 +1080,11 @@
},
"nixpkgs_8": {
"locked": {
- "lastModified": 1767892417,
- "narHash": "sha256-dhhvQY67aboBk8b0/u0XB6vwHdgbROZT3fJAjyNh5Ww=",
+ "lastModified": 1769461804,
+ "narHash": "sha256-msG8SU5WsBUfVVa/9RPLaymvi5bI8edTavbIq3vRlhI=",
"owner": "nixos",
"repo": "nixpkgs",
- "rev": "3497aa5c9457a9d88d71fa93a4a8368816fbeeba",
+ "rev": "bfc1b8a4574108ceef22f02bafcf6611380c100d",
"type": "github"
},
"original": {
@@ -1010,11 +1096,11 @@
},
"nixpkgs_9": {
"locked": {
- "lastModified": 1767364772,
- "narHash": "sha256-fFUnEYMla8b7UKjijLnMe+oVFOz6HjijGGNS1l7dYaQ=",
+ "lastModified": 1769268028,
+ "narHash": "sha256-mAdJpV0e5IGZjnE4f/8uf0E4hQR7ptRP00gnZKUOdMo=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "16c7794d0a28b5a37904d55bcca36003b9109aaa",
+ "rev": "ab9fbbcf4858bd6d40ba2bbec37ceb4ab6e1f562",
"type": "github"
},
"original": {
@@ -1031,11 +1117,11 @@
"nixvim": "nixvim_2"
},
"locked": {
- "lastModified": 1767307820,
- "narHash": "sha256-5L9VbYzjeaq1npMXyAFFak9G/+c9akZoFummW7Een9c=",
+ "lastModified": 1770252550,
+ "narHash": "sha256-Yl6KsoJNONPQ4Q838wfF8wiNpppjaD1OrGnWwRxTrXU=",
"owner": "ahwxorg",
"repo": "nixvim-config",
- "rev": "a0ff3802e67a281acc7ab957d716a994660bb3f9",
+ "rev": "de02f4a71a460e21fbfdf2e76b5cebe38635dfff",
"type": "github"
},
"original": {
@@ -1070,11 +1156,11 @@
"nixpkgs": "nixpkgs_8"
},
"locked": {
- "lastModified": 1768038731,
- "narHash": "sha256-1M1EhmredaBSkT/IsHWEVDXJjNyvsM6slDBiNfDj+HA=",
+ "lastModified": 1769768855,
+ "narHash": "sha256-OuUk+skANEQBNDKLiXvZOcdv2vfWsrbxvwNPSw0iKjE=",
"owner": "nix-community",
"repo": "NUR",
- "rev": "3cb7022a0e5b669bc765dcb9c280b6653730362c",
+ "rev": "cf3ece1c8c4108d7e5940ba7f1b01048407fff10",
"type": "github"
},
"original": {
@@ -1110,7 +1196,7 @@
"oisd": {
"flake": false,
"locked": {
- "narHash": "sha256-wEkqluvwxLyfwqhKKn0d4NohXzenTZjX3gJGxtDes74=",
+ "narHash": "sha256-vW0GHUShUrTXa6qwEcJNhD/m5kbSlpzOIMj1/Kv77uk=",
"type": "file",
"url": "https://big.oisd.nl/domainswild"
},
@@ -1129,11 +1215,11 @@
]
},
"locked": {
- "lastModified": 1767281941,
- "narHash": "sha256-6MkqajPICgugsuZ92OMoQcgSHnD6sJHwk8AxvMcIgTE=",
+ "lastModified": 1769069492,
+ "narHash": "sha256-Efs3VUPelRduf3PpfPP2ovEB4CXT7vHf8W+xc49RL/U=",
"owner": "cachix",
"repo": "git-hooks.nix",
- "rev": "f0927703b7b1c8d97511c4116eb9b4ec6645a0fa",
+ "rev": "a1ef738813b15cf8ec759bdff5761b027e3e1d23",
"type": "github"
},
"original": {
@@ -1171,9 +1257,13 @@
"alejandra": "alejandra",
"disko": "disko",
"home-manager": "home-manager",
+ "homebrew-cask": "homebrew-cask",
+ "homebrew-core": "homebrew-core",
"hypr-contrib": "hypr-contrib",
"hyprland": "hyprland",
"hyprland-plugins": "hyprland-plugins",
+ "nix-darwin": "nix-darwin",
+ "nix-homebrew": "nix-homebrew",
"nixocaine": "nixocaine",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs_5",
@@ -1206,11 +1296,11 @@
"nixpkgs": "nixpkgs_9"
},
"locked": {
- "lastModified": 1768032389,
- "narHash": "sha256-BVpTd93G0XmAK1iXiBdhUA5Uvt+WmM1YL0mA4REcT68=",
+ "lastModified": 1769469829,
+ "narHash": "sha256-wFcr32ZqspCxk4+FvIxIL0AZktRs6DuF8oOsLt59YBU=",
"owner": "Mic92",
"repo": "sops-nix",
- "rev": "a8cfe238b93166f9f96c0df67a94e572554ee624",
+ "rev": "c5eebd4eb2e3372fe12a8d70a248a6ee9dd02eff",
"type": "github"
},
"original": {
@@ -1225,11 +1315,11 @@
"systems": "systems_6"
},
"locked": {
- "lastModified": 1767502559,
- "narHash": "sha256-om0IPjW850vhhIrNZ5tiXjsYuqyoI44IdE+I9AwZ96I=",
+ "lastModified": 1769316930,
+ "narHash": "sha256-4EOGHYLpIscwr+6drHE28Qj7NDjjowp2Vd8QkXjdBBE=",
"owner": "Gerg-L",
"repo": "spicetify-nix",
- "rev": "806c1fdeb7af3e013215d14f5d9f06685fa6650f",
+ "rev": "b2ce438f386943ef611e196a178af2d79042903b",
"type": "github"
},
"original": {
diff --git a/flake.nix b/flake.nix
index caffa19..69dea20 100644
--- a/flake.nix
+++ b/flake.nix
@@ -1,11 +1,11 @@
{
- description = "liv's NixOS configuration";
+ description = "liv's Nix configuration";
inputs = {
alejandra.url = "github:kamadorueda/alejandra/3.0.0";
home-manager.url = "github:nix-community/home-manager";
home-manager.inputs.nixpkgs.follows = "nixpkgs";
- hyprland.url = "git+https://github.com/hyprwm/Hyprland?submodules=1";
+ hyprland.url = "github:hyprwm/Hyprland";
hyprland.inputs.nixpkgs.follows = "nixpkgs";
hyprland-plugins.url = "github:hyprwm/hyprland-plugins";
hyprland-plugins.inputs.hyprland.follows = "hyprland";
@@ -22,15 +22,26 @@
nixocaine.url = "https://git.madhouse-project.org/iocaine/nixocaine/archive/stable.tar.gz";
ai-robots-txt.url = "github:ai-robots-txt/ai.robots.txt";
ai-robots-txt.flake = false;
+ nix-darwin.url = "github:nix-darwin/nix-darwin/nix-darwin-25.11";
+ nix-darwin.inputs.nixpkgs.follows = "nixpkgs";
+ nix-homebrew.url = "github:zhaofengli/nix-homebrew";
+
+ homebrew-core = {
+ url = "github:homebrew/homebrew-core";
+ flake = false;
+ };
+
+ homebrew-cask = {
+ url = "github:homebrew/homebrew-cask";
+ flake = false;
+ };
};
outputs =
{
self,
nixpkgs,
- sops-nix,
- disko,
- oisd,
+ nix-darwin,
...
}@inputs:
let
@@ -44,6 +55,18 @@
in
{
overlays.default = overlays.addition;
+ darwinConfigurations = {
+ "azalea" = nix-darwin.lib.darwinSystem {
+ system = "aarch64-darwin";
+ modules = [
+ (import ./hosts/azalea)
+ ];
+ specialArgs = {
+ host = "sakura";
+ inherit self inputs username;
+ };
+ };
+ };
nixosConfigurations = {
sakura = nixpkgs.lib.nixosSystem {
inherit system;
diff --git a/hosts/azalea/default.nix b/hosts/azalea/default.nix
new file mode 100644
index 0000000..5517758
--- /dev/null
+++ b/hosts/azalea/default.nix
@@ -0,0 +1,54 @@
+{ username, ... }:
+{
+ imports = [
+ #./hardware-configuration.nix
+ #./../../modules/core
+ #./../../modules/core/virtualization.nix
+ #./../../modules/services/tailscale.nix
+ #./../../modules/services/mpd.nix
+ #./../../modules/services/smart-monitoring.nix
+ #./../../modules/services/mullvad.nix
+ #./../../modules/home/steam.nix
+ #./../../modules/services/ollama.nix
+ #./../../modules/services/automount.nix
+ ];
+
+ environment.systemPackages = [
+ pkgs.vim
+ ];
+
+ security.pam.enableSudoTouchIdAuth = true;
+ system.primaryUser = username;
+
+ nix.settings.experimental-features = "nix-command flakes";
+
+ system.configurationRevision = self.rev or self.dirtyRev or null;
+
+ system.stateVersion = 6;
+
+ nixpkgs.hostPlatform = "aarch64-darwin";
+
+ homebrew = {
+ enable = true;
+ onActivation = {
+ autoUpdate = true;
+ cleanup = "uninstall";
+ upgrade = true;
+ };
+ brewPrefix = "/opt/homebrew/bin";
+ caskArgs = {
+ no_quarantine = true;
+ };
+ casks = [
+ "libreoffice"
+ "signal"
+ "handbrake"
+ "tailscale"
+ "ungoogled-chromium"
+ # "orca-slicer"
+ "element"
+ "raycast"
+ "anki"
+ ];
+ };
+}
diff --git a/modules/core/sshd.nix b/modules/core/sshd.nix
index 27b9c17..aa50bb7 100644
--- a/modules/core/sshd.nix
+++ b/modules/core/sshd.nix
@@ -16,7 +16,7 @@
users.users.liv.openssh.authorizedKeys.keys = [
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGXi00z/rxVrWLKgYr+tWIsbHsSQO75hUMSTThNm5wUw liv@sakura" # sakura
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHv2zxCy22KU1tZOH2hA1p8fWVpOSrTYF68+3E5r330O liv@ichiyo" # ichiyo
- "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEDltZ7vfyrLrl32TIWCC3iUx40TrCtIz6Ssi/SZvikg liv@zinnia" # zinnia
+ # "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEDltZ7vfyrLrl32TIWCC3iUx40TrCtIz6Ssi/SZvikg liv@zinnia" # zinnia; retired
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKQtG69zrMFsoHForwZEi66y1tPvctqg1OgjQFrF3OI+ liv@iris" # iris
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINKI2KQn97mykFLIaMUWMftA1txJec9qW56hAMj5/MhE liv@dandelion" # dandelion
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILwDS8tXjGjUtk3eQAaPf0S0f9JgwEGPlNYQ7OvACX1Z liv@imilia" # imilia
diff --git a/modules/home/hyprland/config.nix b/modules/home/hyprland/config.nix
index 94ce71a..f91dedb 100644
--- a/modules/home/hyprland/config.nix
+++ b/modules/home/hyprland/config.nix
@@ -89,6 +89,8 @@
}
'';
+ services.swayosd.enable = true;
+
wayland.windowManager.hyprland = {
settings = {
@@ -143,7 +145,7 @@
# "f[1], gapsout:0, gapsin:0"
#];
general = {
- "$mainMod" = "ALT";
+ # "ALT" = "ALT";
layout = "dwindle";
gaps_in = 0;
gaps_out = "0,0,68,0";
@@ -198,6 +200,13 @@
inactive_opacity = 0.75;
# fullscreen_opacity = 1.0;
+ shadow = {
+ enabled = true;
+ render_power = 4;
+ ignore_window = true;
+ # offset = [ ];
+ };
+
blur = {
enabled = true;
size = 7;
@@ -257,95 +266,95 @@
bind = [
# keybindings
- "$mainMod, Return, exec, footclient"
- "$mainMod SHIFT, Return, exec, [float; center; size 950 650] footclient --title 'float_foot'"
- "$mainMod, Q, killactive,"
- "$mainMod, F, fullscreen, 0" # set 1 to 0 to set full screen without waybar
- "$mainMod, Space, togglefloating,"
- # "$mainMod, D, exec, bemenu-run -l 5 --ignorecase"
- "$mainMod, D, exec, vicinae toggle"
+ "ALT, Return, exec, footclient"
+ "ALT SHIFT, Return, exec, [float; center; size 950 650] footclient --title 'float_foot'"
+ "ALT, Q, killactive,"
+ "ALT, F, fullscreen, 0" # set 1 to 0 to set full screen without waybar
+ "ALT, Space, togglefloating,"
+ # "ALT, D, exec, bemenu-run -l 5 --ignorecase"
+ "ALT, D, exec, vicinae toggle"
"SUPER SHIFT, L, exec, swaylock --image /home/${username}/.local/share/bg.png"
"SUPER, L, exec, swaylock --image /home/${username}/.local/share/bg.png"
- "$mainMod, E, exec, nautilus"
- "$mainMod SHIFT, B, exec, pkill -SIGUSR1 .waybar-wrapped"
- "$mainMod, C,exec, hyprpicker -a"
- "$mainMod, W,exec, wallpaper-picker"
- "$mainMod, G, togglegroup,"
+ "ALT, E, exec, nautilus"
+ "ALT SHIFT, B, exec, pkill -SIGUSR1 .waybar-wrapped"
+ "ALT, C,exec, hyprpicker -a"
+ "ALT, W,exec, wallpaper-picker"
+ "ALT, G, togglegroup,"
"SUPER, N, changegroupactive, f"
"SUPER, P, changegroupactive, b"
- "$mainMod, Tab, changegroupactive, f"
- "$mainMod SHIFT, Tab, changegroupactive, b"
+ "ALT, Tab, changegroupactive, f"
+ "ALT SHIFT, Tab, changegroupactive, b"
# password manager
- "$mainMod SHIFT, X, exec, footclient --title 'float_foot' zsh -c 'bash ~/.local/src/bw-fzf/bw-fzf.sh"
+ "ALT SHIFT, X, exec, footclient --title 'float_foot' zsh -c 'bash ~/.local/src/bw-fzf/bw-fzf.sh"
# clipboard manager
- # "$mainMod SHIFT, V, exec, cliphist list | bemenu -l 5 --ignorecase | cliphist decode | wl-copy"
- "$mainMod SHIFT, V, exec, vicinae vicinae://extensions/vicinae/clipboard/history"
+ # "ALT SHIFT, V, exec, cliphist list | bemenu -l 5 --ignorecase | cliphist decode | wl-copy"
+ "ALT SHIFT, V, exec, vicinae vicinae://extensions/vicinae/clipboard/history"
- "$mainMod SHIFT, F, exec, librewolf"
- "$mainMod SHIFT, C, exec, chromium"
- "$mainMod SHIFT, Q, exec, qutebrowser"
- "$mainMod SHIFT, W, exec, wdisplays"
- "$mainMod SHIFT, T, exec, thunderbird"
- "$mainMod SHIFT, E, exec, element-desktop"
- "$mainMod SHIFT, P, exec, pavucontrol-qt"
- "$mainMod SHIFT, N, exec, notes"
- "$mainMod , N, exec, swaync-client -t"
+ "ALT SHIFT, F, exec, librewolf"
+ "ALT SHIFT, C, exec, chromium"
+ "ALT SHIFT, Q, exec, qutebrowser"
+ "ALT SHIFT, W, exec, wdisplays"
+ "ALT SHIFT, T, exec, thunderbird"
+ "ALT SHIFT, E, exec, element-desktop"
+ "ALT SHIFT, P, exec, pavucontrol-qt"
+ "ALT SHIFT, N, exec, notes"
+ "ALT , N, exec, swaync-client -t"
# screenshot
"SUPER SHIFT, S, exec, grimblast save area ~/Pictures/$(date +'%Y-%m-%d-At-%Ih%Mm%Ss').png"
- "$mainMod SHIFT, S, exec, grimblast copy area"
- "$mainMod SHIFT, G, exec, grabtext"
+ "ALT SHIFT, S, exec, grimblast copy area"
+ "ALT SHIFT, G, exec, grabtext"
# switch focus
- "$mainMod, H, movefocus, l"
- "$mainMod, L, movefocus, r"
- "$mainMod, K, movefocus, u"
- "$mainMod, J, movefocus, d"
+ "ALT, H, movefocus, l"
+ "ALT, L, movefocus, r"
+ "ALT, K, movefocus, u"
+ "ALT, J, movefocus, d"
- "$mainMod SHIFT, H, movewindow, l"
- "$mainMod SHIFT, L, movewindow, r"
- "$mainMod SHIFT, K, movewindow, u"
- "$mainMod SHIFT, J, movewindow, d"
+ "ALT SHIFT, H, movewindow, l"
+ "ALT SHIFT, L, movewindow, r"
+ "ALT SHIFT, K, movewindow, u"
+ "ALT SHIFT, J, movewindow, d"
# switch to workspace
- "$mainMod, 1, workspace, 1"
- "$mainMod, 2, workspace, 2"
- "$mainMod, 3, workspace, 3"
- "$mainMod, 4, workspace, 4"
- "$mainMod, 5, workspace, 5"
- "$mainMod, 6, workspace, 6"
- "$mainMod, 7, workspace, 7"
- "$mainMod, 8, workspace, 8"
- "$mainMod, 9, workspace, 9"
- "$mainMod, 0, workspace, 10"
+ "ALT, 1, workspace, 1"
+ "ALT, 2, workspace, 2"
+ "ALT, 3, workspace, 3"
+ "ALT, 4, workspace, 4"
+ "ALT, 5, workspace, 5"
+ "ALT, 6, workspace, 6"
+ "ALT, 7, workspace, 7"
+ "ALT, 8, workspace, 8"
+ "ALT, 9, workspace, 9"
+ "ALT, 0, workspace, 10"
# move to workspace
- "$mainMod SHIFT, 1, movetoworkspacesilent, 1"
- "$mainMod SHIFT, 2, movetoworkspacesilent, 2"
- "$mainMod SHIFT, 3, movetoworkspacesilent, 3"
- "$mainMod SHIFT, 4, movetoworkspacesilent, 4"
- "$mainMod SHIFT, 5, movetoworkspacesilent, 5"
- "$mainMod SHIFT, 6, movetoworkspacesilent, 6"
- "$mainMod SHIFT, 7, movetoworkspacesilent, 7"
- "$mainMod SHIFT, 8, movetoworkspacesilent, 8"
- "$mainMod SHIFT, 9, movetoworkspacesilent, 9"
- "$mainMod SHIFT, 0, movetoworkspacesilent, 10"
+ "ALT SHIFT, 1, movetoworkspacesilent, 1"
+ "ALT SHIFT, 2, movetoworkspacesilent, 2"
+ "ALT SHIFT, 3, movetoworkspacesilent, 3"
+ "ALT SHIFT, 4, movetoworkspacesilent, 4"
+ "ALT SHIFT, 5, movetoworkspacesilent, 5"
+ "ALT SHIFT, 6, movetoworkspacesilent, 6"
+ "ALT SHIFT, 7, movetoworkspacesilent, 7"
+ "ALT SHIFT, 8, movetoworkspacesilent, 8"
+ "ALT SHIFT, 9, movetoworkspacesilent, 9"
+ "ALT SHIFT, 0, movetoworkspacesilent, 10"
# window control
- # "$mainMod SHIFT, left, movewindow, l"
- # "$mainMod SHIFT, right, movewindow, r"
- # "$mainMod SHIFT, up, movewindow, u"
- # "$mainMod SHIFT, down, movewindow, d"
- # "$mainMod CTRL, left, resizeactive, -80 0"
- # "$mainMod CTRL, right, resizeactive, 80 0"
- # "$mainMod CTRL, up, resizeactive, 0 -80"
- # "$mainMod CTRL, down, resizeactive, 0 80"
- # "$mainMod ALT, left, moveactive, -80 0"
- # "$mainMod ALT, right, moveactive, 80 0"
- # "$mainMod ALT, up, moveactive, 0 -80"
- # "$mainMod ALT, down, moveactive, 0 80"
+ # "ALT SHIFT, left, movewindow, l"
+ # "ALT SHIFT, right, movewindow, r"
+ # "ALT SHIFT, up, movewindow, u"
+ # "ALT SHIFT, down, movewindow, d"
+ # "ALT CTRL, left, resizeactive, -80 0"
+ # "ALT CTRL, right, resizeactive, 80 0"
+ # "ALT CTRL, up, resizeactive, 0 -80"
+ # "ALT CTRL, down, resizeactive, 0 80"
+ # "ALT ALT, left, moveactive, -80 0"
+ # "ALT ALT, right, moveactive, 80 0"
+ # "ALT ALT, up, moveactive, 0 -80"
+ # "ALT ALT, down, moveactive, 0 80"
# media and volume controls
",XF86AudioRaiseVolume,exec, pamixer -i 2"
@@ -355,14 +364,14 @@
",XF86AudioNext,exec, playerctl next"
",XF86AudioPrev,exec, playerctl previous"
",XF86AudioStop, exec, playerctl stop"
- "$mainMod, mouse_down, workspace, e-1"
- "$mainMod, mouse_up, workspace, e+1"
+ "ALT, mouse_down, workspace, e-1"
+ "ALT, mouse_up, workspace, e+1"
# laptop brigthness
",XF86MonBrightnessUp, exec, brightnessctl set 5%+"
",XF86MonBrightnessDown, exec, brightnessctl set 5%-"
- "$mainMod, XF86MonBrightnessUp, exec, brightnessctl set 100%+"
- "$mainMod, XF86MonBrightnessDown, exec, brightnessctl set 100%-"
+ "ALT, XF86MonBrightnessUp, exec, brightnessctl set 100%+"
+ "ALT, XF86MonBrightnessDown, exec, brightnessctl set 100%-"
];
bindl = [
@@ -371,8 +380,8 @@
# mouse binding
bindm = [
- "$mainMod, mouse:272, movewindow"
- "$mainMod, mouse:273, resizewindow"
+ "ALT, mouse:272, movewindow"
+ "ALT, mouse:273, resizewindow"
];
# windowrule
diff --git a/modules/home/waybar/default.nix b/modules/home/waybar/default.nix
index 8dfb270..e1e507c 100644
--- a/modules/home/waybar/default.nix
+++ b/modules/home/waybar/default.nix
@@ -311,8 +311,8 @@
"format-discharging-warning": "BATT: {capacity}%",
"format-discharging-critical": "BATT: {capacity}%",
"format-charging": "BATT: {capacity}% @ {power:2.0f}W",
- "format-full": "BATT: {capacity}%",
- "format-not-charging": "BATT: {capacity}%",
+ "format-full": "BATT: {capacity}%",
+ "format-not-charging": "BATT: !!! {capacity}%",
// "format-icons": [" ", " ", " ", " ", " "], // use {icon}
},
diff --git a/modules/services/mpd.nix b/modules/services/mpd.nix
index e43b7fa..f0051b3 100644
--- a/modules/services/mpd.nix
+++ b/modules/services/mpd.nix
@@ -14,19 +14,17 @@
services.mpd = {
enable = true;
- settings = {
- playlist_directory = "/home/${username}/Music/.playlists";
- music_directory = "/home/${username}/Music";
- restore_paused = "yes";
- auto_update = "yes";
+ playlistDirectory = "/home/${username}/Music/.playlists";
+ musicDirectory = "/home/${username}/Music";
+ extraConfig = ''
+ restore_paused "yes"
+ auto_update "yes"
- audio_output = [
- {
- type = "pipewire";
- name = "pipewire";
- }
- ];
- };
+ audio_output {
+ type "pipewire"
+ name "pipewire"
+ }
+ '';
user = "${username}"; # PipeWire requires this as it runs as the normal user and mpd normally runs as a system user.
# Optional:
diff --git a/roles/gui.nix b/roles/gui.nix
index 5e323a8..43eebda 100644
--- a/roles/gui.nix
+++ b/roles/gui.nix
@@ -81,6 +81,7 @@ in
lxqt.pavucontrol-qt
mpv
kdePackages.kdeconnect-kde
+ libgnome-keyring
# Gaming
lunar-client