diff --git a/flake.lock b/flake.lock index c38b8b9..3958d02 100644 --- a/flake.lock +++ b/flake.lock @@ -42,16 +42,37 @@ "type": "github" } }, + "agent-lib": { + "inputs": { + "nixpkgs": [ + "m3ta-home", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1780157040, + "narHash": "sha256-j2d3nj3FvOlxQ+Zlse+rMo3qHD3m4Gick5uiwtTaA2o=", + "ref": "refs/heads/master", + "rev": "f63712a9ba03da6e2f591766d0f055aa65e6d237", + "revCount": 24, + "type": "git", + "url": "ssh://gitea@code.m3ta.dev/m3tam3re/agent-lib" + }, + "original": { + "type": "git", + "url": "ssh://gitea@code.m3ta.dev/m3tam3re/agent-lib" + } + }, "agents": { "inputs": { "nixpkgs": "nixpkgs_2" }, "locked": { - "lastModified": 1778518220, - "narHash": "sha256-6AQs9VZ0/DuD4njPbYHRE4v+SgJc6SBrGwemTWxikVc=", + "lastModified": 1780133320, + "narHash": "sha256-8AiN9tV9PBb5xblJiPlhumBbKj61qLjzqXXFtkj3vvY=", "ref": "refs/heads/master", - "rev": "b6e1aaa6261c5056d024d8d4785659eaa4e675e6", - "revCount": 87, + "rev": "920c00313ae242bd93275c30131b9ab1e52ee2fb", + "revCount": 88, "type": "git", "url": "ssh://gitea@code.m3ta.dev/m3tam3re/AGENTS" }, @@ -61,13 +82,31 @@ } }, "agents_2": { + "inputs": { + "nixpkgs": "nixpkgs_5" + }, + "locked": { + "lastModified": 1780133320, + "narHash": "sha256-8AiN9tV9PBb5xblJiPlhumBbKj61qLjzqXXFtkj3vvY=", + "ref": "refs/heads/master", + "rev": "920c00313ae242bd93275c30131b9ab1e52ee2fb", + "revCount": 88, + "type": "git", + "url": "ssh://gitea@code.m3ta.dev/m3tam3re/AGENTS" + }, + "original": { + "type": "git", + "url": "ssh://gitea@code.m3ta.dev/m3tam3re/AGENTS" + } + }, + "agents_3": { "flake": false, "locked": { - "lastModified": 1777399938, - "narHash": "sha256-xXPqUQezDdDtF8MbpZnwD1HkybOYwF92evx8rJ6OXCU=", + "lastModified": 1778518220, + "narHash": "sha256-6AQs9VZ0/DuD4njPbYHRE4v+SgJc6SBrGwemTWxikVc=", "ref": "refs/heads/master", - "rev": "9a91f1ee0cf011a7eaf1f16a9e17610b0457e055", - "revCount": 85, + "rev": "b6e1aaa6261c5056d024d8d4785659eaa4e675e6", + "revCount": 87, "type": "git", "url": "https://code.m3ta.dev/m3tam3re/AGENTS" }, @@ -76,7 +115,7 @@ "url": "https://code.m3ta.dev/m3tam3re/AGENTS" } }, - "agents_3": { + "agents_4": { "flake": false, "locked": { "lastModified": 1778518220, @@ -279,11 +318,11 @@ ] }, "locked": { - "lastModified": 1779942106, - "narHash": "sha256-81sATQ+hMCcsqFCN5UyhCoXXf62yQfKtzKzuiFXtdxA=", + "lastModified": 1780290312, + "narHash": "sha256-eTAlX0CwgB84Ts3GaBd944A3DRXVMzgA0EqroZBISUo=", "owner": "nix-community", "repo": "disko", - "rev": "36c1d04e85fc70f7b94f7434b1ea0a1a13bda4cd", + "rev": "115e5211780054d8a890b41f0b7734cafad54dfe", "type": "github" }, "original": { @@ -314,6 +353,49 @@ "type": "github" } }, + "dms": { + "inputs": { + "nixpkgs": [ + "m3ta-home", + "nixpkgs" + ], + "quickshell": "quickshell" + }, + "locked": { + "lastModified": 1777431599, + "narHash": "sha256-g6r/Gx8PTDzO3jCNzzySA+Ff1lmLF9nDlMCNyyoQjoE=", + "owner": "AvengeMedia", + "repo": "DankMaterialShell", + "rev": "eb5afcdc40ea5446c27e18552ff4a19f9daf9484", + "type": "github" + }, + "original": { + "owner": "AvengeMedia", + "ref": "stable", + "repo": "DankMaterialShell", + "type": "github" + } + }, + "dms-plugin-registry": { + "inputs": { + "nixpkgs": [ + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1780281921, + "narHash": "sha256-ZDsDl7lTOfM+Le2l6gDyEP3o+KHR3TUCkuxd9hQaLro=", + "owner": "AvengeMedia", + "repo": "dms-plugin-registry", + "rev": "ee4eeacce5a7041ed39f8cd7fe64b6e0e888e73b", + "type": "github" + }, + "original": { + "owner": "AvengeMedia", + "repo": "dms-plugin-registry", + "type": "github" + } + }, "flake-parts": { "inputs": { "nixpkgs-lib": [ @@ -406,11 +488,11 @@ ] }, "locked": { - "lastModified": 1779969295, - "narHash": "sha256-HwIJ3tOcwSMiV75L7KqJXciXR9UfT+d7rwOZMX7cTnA=", + "lastModified": 1780099287, + "narHash": "sha256-efIPwVGtIWIjWcznhaop6XN6HxnOL8800hF6CBNvlqQ=", "owner": "nix-community", "repo": "home-manager", - "rev": "61e2c9659324181e0f0ed911958c536333b1d4f6", + "rev": "7d8127d308c3fb9664f7e643eec944be74ebb37d", "type": "github" }, "original": { @@ -449,11 +531,11 @@ ] }, "locked": { - "lastModified": 1778503501, - "narHash": "sha256-08L/X4/do7nET4rzidJ76eV/1r+mB7DchVpdPypsghc=", + "lastModified": 1780099287, + "narHash": "sha256-efIPwVGtIWIjWcznhaop6XN6HxnOL8800hF6CBNvlqQ=", "owner": "nix-community", "repo": "home-manager", - "rev": "85ba629c79449badf4338117c27f0ee92b4b9f1a", + "rev": "7d8127d308c3fb9664f7e643eec944be74ebb37d", "type": "github" }, "original": { @@ -472,11 +554,11 @@ "treefmt-nix": "treefmt-nix" }, "locked": { - "lastModified": 1780029018, - "narHash": "sha256-gUWibp2nKS+aLn9ijVN95RB8nSbkoXdT/jmNrY+ZqC4=", + "lastModified": 1780275889, + "narHash": "sha256-srcKWB7mBO+mNWsDUmODs5CDDdQ0XjP1NX4iUM45eZo=", "owner": "numtide", "repo": "llm-agents.nix", - "rev": "d1cf7ec4344f89f29b46aec8e116b5a85b5ea645", + "rev": "468bacd83af1b3bf36bceb0366967928b98c9e60", "type": "github" }, "original": { @@ -488,6 +570,9 @@ "m3ta-home": { "inputs": { "agenix": "agenix_2", + "agent-lib": "agent-lib", + "agents": "agents_2", + "dms": "dms", "home-manager": "home-manager_4", "m3ta-nixpkgs": "m3ta-nixpkgs", "nix-colors": "nix-colors", @@ -497,22 +582,19 @@ "nur": "nur" }, "locked": { - "lastModified": 1779128125, - "narHash": "sha256-Lt/n7O42uAZrgjoDttgVlfjauiyE91+X8XDlIKS0twM=", - "ref": "refs/heads/master", - "rev": "70562ceef2bf9508fbfcea13f96c073602530cf1", - "revCount": 33, - "type": "git", - "url": "ssh://gitea@code.m3ta.dev/m3tam3re/m3ta-home" + "lastModified": 1780332501, + "narHash": "sha256-Esn5LBzLcUU4dcWrMXjBo6VNi9XMzs356/8tuvPHwBE=", + "path": "/home/sascha.koenig/p/NIX/m3ta-home", + "type": "path" }, "original": { - "type": "git", - "url": "ssh://gitea@code.m3ta.dev/m3tam3re/m3ta-home" + "path": "/home/sascha.koenig/p/NIX/m3ta-home", + "type": "path" } }, "m3ta-nixpkgs": { "inputs": { - "agents": "agents_2", + "agents": "agents_3", "basecamp": "basecamp", "nixpkgs": [ "m3ta-home", @@ -522,11 +604,11 @@ "openspec": "openspec" }, "locked": { - "lastModified": 1778508052, - "narHash": "sha256-kxzZvJv757TGfHReR21aX6N/jkGMWzGSy9GQEclYD4Y=", + "lastModified": 1779944037, + "narHash": "sha256-jO6zAJjgc9n3SeDJW1EbV6CEqOa9DK+2AhTgWc+ImHQ=", "ref": "refs/heads/master", - "rev": "8113723a48c4afa016881ccd5bc4be3fad2c7d5f", - "revCount": 294, + "rev": "ae1fb97c21b311dc03a46e8d50867048e5568c88", + "revCount": 323, "type": "git", "url": "ssh://gitea@code.m3ta.dev/m3tam3re/nixpkgs" }, @@ -537,9 +619,9 @@ }, "m3ta-nixpkgs_2": { "inputs": { - "agents": "agents_3", + "agents": "agents_4", "basecamp": "basecamp_2", - "nixpkgs": "nixpkgs_6", + "nixpkgs": "nixpkgs_7", "nixpkgs-master": "nixpkgs-master_2", "openspec": "openspec_2" }, @@ -730,11 +812,11 @@ }, "nixpkgs-master": { "locked": { - "lastModified": 1778507606, - "narHash": "sha256-6Yc2dIhijc8G+dbMNocyclxF19dUrjaT+EeXGrXmXlg=", + "lastModified": 1779457550, + "narHash": "sha256-yALoy2CrvwvNfwMtGZDRdc+jqVNHulyuM5iVK12lUAI=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "39a7b8d815fcc8b689d56fc4a3fa8de4ef93d169", + "rev": "a9c18fd234dbe4fd8de4bac53760b785c47e94ff", "type": "github" }, "original": { @@ -794,16 +876,16 @@ }, "nixpkgs_3": { "locked": { - "lastModified": 1779955849, - "narHash": "sha256-31mhzm2HpzRr/rupWAFfWBmt9SUjzwr5+giv5Nmb/rA=", + "lastModified": 1780030872, + "narHash": "sha256-u6WU/yd/o8iYQrHX3RAwO1hYa3LkoSL+WNQD0rJfJZQ=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "a2c6938835fca96e4a10c8561d461efd2f91d04f", + "rev": "e9a7635a57597d9754eccebdfc7045e6c8600e6b", "type": "github" }, "original": { "owner": "NixOS", - "ref": "nixos-unstable-small", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } @@ -826,37 +908,21 @@ }, "nixpkgs_5": { "locked": { - "lastModified": 1777954456, - "narHash": "sha256-hGdgeU2Nk87RAuZyYjyDjFL6LK7dAZN5RE9+hrDTkDU=", - "owner": "nixos", + "lastModified": 1772479524, + "narHash": "sha256-u7nCaNiMjqvKpE+uZz9hE7pgXXTmm5yvdtFaqzSzUQI=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "549bd84d6279f9852cae6225e372cc67fb91a4c1", + "rev": "4215e62dc2cd3bc705b0a423b9719ff6be378a43", "type": "github" }, "original": { - "owner": "nixos", - "ref": "nixos-unstable", + "owner": "NixOS", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_6": { - "locked": { - "lastModified": 1778869304, - "narHash": "sha256-30sZNZoA1cqF5JNO9fVX+wgiQYjB7HJqqJ4ztCDeBZE=", - "owner": "NixOS", - "repo": "nixpkgs", - "rev": "d233902339c02a9c334e7e593de68855ad26c4cb", - "type": "github" - }, - "original": { - "owner": "NixOS", - "ref": "nixos-unstable", - "repo": "nixpkgs", - "type": "github" - } - }, - "nixpkgs_7": { "locked": { "lastModified": 1779560665, "narHash": "sha256-tpyBcxPpcQb8ukyNF7DoCwfSY3VPsxHoYwj00Cayv5o=", @@ -872,17 +938,49 @@ "type": "github" } }, + "nixpkgs_7": { + "locked": { + "lastModified": 1778869304, + "narHash": "sha256-30sZNZoA1cqF5JNO9fVX+wgiQYjB7HJqqJ4ztCDeBZE=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "d233902339c02a9c334e7e593de68855ad26c4cb", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_8": { + "locked": { + "lastModified": 1780030872, + "narHash": "sha256-u6WU/yd/o8iYQrHX3RAwO1hYa3LkoSL+WNQD0rJfJZQ=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "e9a7635a57597d9754eccebdfc7045e6c8600e6b", + "type": "github" + }, + "original": { + "owner": "nixos", + "ref": "nixpkgs-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, "nur": { "inputs": { "flake-parts": "flake-parts_2", - "nixpkgs": "nixpkgs_5" + "nixpkgs": "nixpkgs_6" }, "locked": { - "lastModified": 1778506944, - "narHash": "sha256-lU0Bleh0reE+WU7j8Uiqsu6ekPav50L8sXsgOvEQS+0=", + "lastModified": 1780290189, + "narHash": "sha256-2igu6l2/d4RikYmC/SsykZ1jF1e4+Df+2qWPYjq2xto=", "owner": "nix-community", "repo": "NUR", - "rev": "0166493cfe4e0e9927435c1cfbf5505cfb0d10d1", + "rev": "8b6210602dcbd4409ab1c3453ea0c292637c2799", "type": "github" }, "original": { @@ -899,11 +997,11 @@ ] }, "locked": { - "lastModified": 1780027629, - "narHash": "sha256-6BHrrvpbOq/MV9TYeRfpjFn+0JOlwGc0pKPBb5NILCI=", + "lastModified": 1780290189, + "narHash": "sha256-2igu6l2/d4RikYmC/SsykZ1jF1e4+Df+2qWPYjq2xto=", "owner": "nix-community", "repo": "NUR", - "rev": "65abce8b14b79374f381c5745f6c96cf186fb51b", + "rev": "8b6210602dcbd4409ab1c3453ea0c292637c2799", "type": "github" }, "original": { @@ -921,11 +1019,11 @@ ] }, "locked": { - "lastModified": 1778120451, - "narHash": "sha256-MUSPD16+hoFBfQWYahtNLN2BIFEAlFFo2KNofrc947g=", + "lastModified": 1779302169, + "narHash": "sha256-OOSPtUXC4F2umtsZPkyWlPQxhXBsxF2vqBXLeI/lqIw=", "owner": "Fission-AI", "repo": "OpenSpec", - "rev": "053d8a59d587f3c027a06ad80503a6b43d4f2a92", + "rev": "79303b521068c5f525ee61db06b915fc44b098f4", "type": "github" }, "original": { @@ -955,105 +1053,44 @@ "type": "github" } }, + "quickshell": { + "inputs": { + "nixpkgs": [ + "m3ta-home", + "dms", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1776854048, + "narHash": "sha256-lLbV66V3RMNp1l8/UelmR4YzoJ5ONtgvEtiUMJATH/o=", + "ref": "refs/heads/master", + "rev": "783c953987dc56ff0601abe6845ed96f1d00495a", + "revCount": 806, + "type": "git", + "url": "https://git.outfoxxed.me/quickshell/quickshell" + }, + "original": { + "rev": "783c953987dc56ff0601abe6845ed96f1d00495a", + "type": "git", + "url": "https://git.outfoxxed.me/quickshell/quickshell" + } + }, "root": { "inputs": { "agenix": "agenix", "agents": "agents", "disko": "disko", + "dms-plugin-registry": "dms-plugin-registry", "home-manager": "home-manager_2", "llm-agents": "llm-agents", "m3ta-home": "m3ta-home", "m3ta-nixpkgs": "m3ta-nixpkgs_2", "nix-colors": "nix-colors_2", "nixos-anywhere": "nixos-anywhere", - "nixpkgs": "nixpkgs_7", + "nixpkgs": "nixpkgs_8", "nixpkgs-stable": "nixpkgs-stable", - "nur": "nur_2", - "skills-anthropic": "skills-anthropic", - "skills-basecamp": "skills-basecamp", - "skills-kestra": "skills-kestra", - "skills-superpowers": "skills-superpowers", - "skills-vercel": "skills-vercel" - } - }, - "skills-anthropic": { - "flake": false, - "locked": { - "lastModified": 1780020146, - "narHash": "sha256-BiZvEV7VK1AwhiGg+pNMgTUQmt4exevLWwL0Brx4YyE=", - "owner": "anthropics", - "repo": "skills", - "rev": "da20c92503b2e8ff1cf28ca81a0df4673debdbf7", - "type": "github" - }, - "original": { - "owner": "anthropics", - "repo": "skills", - "type": "github" - } - }, - "skills-basecamp": { - "flake": false, - "locked": { - "lastModified": 1779728113, - "narHash": "sha256-zwyKQWSinvj37we/fRO78KJF6SJBZjfmyIL0wnJVjaw=", - "owner": "basecamp", - "repo": "basecamp-cli", - "rev": "b20051d4b66b85aed61e165fedad0837ea1a5a4c", - "type": "github" - }, - "original": { - "owner": "basecamp", - "repo": "basecamp-cli", - "type": "github" - } - }, - "skills-kestra": { - "flake": false, - "locked": { - "lastModified": 1778585472, - "narHash": "sha256-jtK4wwLE4y4vsnonSmIhlAIJ/g0zqPDt3TO+Frb6LEU=", - "owner": "kestra-io", - "repo": "agent-skills", - "rev": "cc9cd71fbada02f8ac22a1f3ae7ad5e7242bda45", - "type": "github" - }, - "original": { - "owner": "kestra-io", - "repo": "agent-skills", - "type": "github" - } - }, - "skills-superpowers": { - "flake": false, - "locked": { - "lastModified": 1777932301, - "narHash": "sha256-3E3rO6hR87JUfS3XV1Eaoz6SDWOftleWvN9UPNFEMjw=", - "owner": "obra", - "repo": "superpowers", - "rev": "f2cbfbefebbfef77321e4c9abc9e949826bea9d7", - "type": "github" - }, - "original": { - "owner": "obra", - "repo": "superpowers", - "type": "github" - } - }, - "skills-vercel": { - "flake": false, - "locked": { - "lastModified": 1779917840, - "narHash": "sha256-gFEfdT0h9VbC+I0WUcZ9SYSW2A1liCc2An6qkti7+5U=", - "owner": "vercel-labs", - "repo": "skills", - "rev": "b469d6954dd10be20d3e8d9bb59463584d42efbb", - "type": "github" - }, - "original": { - "owner": "vercel-labs", - "repo": "skills", - "type": "github" + "nur": "nur_2" } }, "systems": { @@ -1109,11 +1146,11 @@ ] }, "locked": { - "lastModified": 1775636079, - "narHash": "sha256-pc20NRoMdiar8oPQceQT47UUZMBTiMdUuWrYu2obUP0=", + "lastModified": 1780220602, + "narHash": "sha256-eynAfOmbmxJnkp7YewvCEbShNnnYJ9gLLqkzsYtBPeM=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "790751ff7fd3801feeaf96d7dc416a8d581265ba", + "rev": "db947814a175b7ca6ded66e21383d938df01c227", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 6834541..2fc05ab 100644 --- a/flake.nix +++ b/flake.nix @@ -16,12 +16,13 @@ inputs.nixpkgs.follows = "nixpkgs"; }; - nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; + nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable"; nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-25.11"; m3ta-nixpkgs.url = "git+https://code.m3ta.dev/m3tam3re/nixpkgs"; m3ta-home = { - url = "git+ssh://gitea@code.m3ta.dev/m3tam3re/m3ta-home"; + url = "path:/home/sascha.koenig/p/NIX/m3ta-home"; + # url = "git+ssh://gitea@code.m3ta.dev/m3tam3re/m3ta-home"; inputs.nixpkgs.follows = "nixpkgs"; }; @@ -43,43 +44,21 @@ url = "github:nix-community/nixos-anywhere"; inputs.nixpkgs.follows = "nixpkgs"; }; - - nix-colors.url = "github:misterio77/nix-colors"; - agents = { + # url = "path:/home/m3tam3re/p/AI/AGENTS"; url = "git+ssh://gitea@code.m3ta.dev/m3tam3re/AGENTS"; }; + nix-colors.url = "github:misterio77/nix-colors"; - skills-anthropic = { - url = "github:anthropics/skills"; - flake = false; - }; - - skills-kestra = { - url = "github:kestra-io/agent-skills"; - flake = false; - }; - - skills-superpowers = { - url = "github:obra/superpowers"; - flake = false; - }; - - skills-vercel = { - url = "github:vercel-labs/skills"; - flake = false; - }; - - skills-basecamp = { - url = "github:basecamp/basecamp-cli"; - flake = false; + dms-plugin-registry = { + url = "github:AvengeMedia/dms-plugin-registry"; + inputs.nixpkgs.follows = "nixpkgs"; }; }; outputs = { self, agenix, - agents, nixpkgs, m3ta-nixpkgs, ... @@ -107,48 +86,16 @@ inherit system; config.allowUnfree = true; # Allow unfree packages in devShell }; - m3taLib = m3ta-nixpkgs.lib.${system}; - rules = m3taLib.coding-rules.mkCodingRules { - inherit agents; - languages = ["nix"]; - }; in { default = pkgs.mkShell { buildInputs = with pkgs; [ alejandra nixd - opencode - pi-coding-agent - inputs.agenix.packages.${system}.default + openssh + agenix.packages.${system}.default + statix + deadnix ]; - - shellHook = '' - ${rules.shellHook} - echo "🚀 NixOS Infrastructure Development Shell with Opencode Rules" - echo "" - echo "Active rules:" - echo " - Nix language conventions" - echo " - Coding-style best practices" - echo " - Naming conventions" - echo " - Documentation standards" - echo " - Testing guidelines" - echo " - Git workflow patterns" - echo " - Project structure guidelines" - echo "" - echo "Generated files:" - echo " - .opencode-rules/ (symlink to AGENTS repo rules)" - echo " - coding-rules.json (configuration file)" - echo "" - echo "Useful commands:" - echo " - cat coding-rules.json View rules configuration" - echo " - ls .opencode-rules/ Browse available rules" - echo " - nix develop Re-enter this shell" - echo "" - echo "Remember to add to .gitignore:" - echo " .opencode-rules" - echo " coding-rules.json" - echo "======================================" - ''; }; }); diff --git a/hosts/AZ-LT-NIX/default.nix b/hosts/AZ-LT-NIX/default.nix index 66d41f0..7e283e3 100644 --- a/hosts/AZ-LT-NIX/default.nix +++ b/hosts/AZ-LT-NIX/default.nix @@ -32,8 +32,9 @@ # Please also change your hostname accordingly: #:w # networking.hostName = "nixos"; # Define your hostname. -{ +{inputs, ...}: { imports = [ + inputs.dms-plugin-registry.modules.default ../common ./configuration.nix ./hardware.nix @@ -55,4 +56,15 @@ }; # rocmOverrideGfx = "11.0.3"; }; + programs.dms-shell = { + enable = true; + enableDynamicTheming = true; + enableClipboardPaste = true; + plugins = { + dankBatteryAlerts.enable = true; + emojiLauncher.enable = true; + dankPomodoroTimer.enable = true; + dankVault.enable = true; + }; + }; } diff --git a/hosts/AZ-LT-NIX/home.nix b/hosts/AZ-LT-NIX/home.nix index 0b8b223..dd201f3 100644 --- a/hosts/AZ-LT-NIX/home.nix +++ b/hosts/AZ-LT-NIX/home.nix @@ -52,7 +52,6 @@ with lib; { wayland.windowManager.hyprland = { enable = true; settings = { - source = "~/.config/hypr/monitors.conf"; workspace = [ "1, monitor:eDP-1, default:true" "2, monitor:eDP-1" @@ -74,8 +73,12 @@ with lib; { ]; device = lib.mkForce [ { - name = "epic-mouse-v1"; - sensitivity = -0.5; + name = "keychron-keychron-k7"; + kb_layout = "us"; + } + { + name = "keychron-keychron-k7-1"; + kb_layout = "us"; } { name = "keychron-keychron-k7-2"; diff --git a/hosts/AZ-LT-NIX/services/default.nix b/hosts/AZ-LT-NIX/services/default.nix index fd6a04a..0c64c74 100644 --- a/hosts/AZ-LT-NIX/services/default.nix +++ b/hosts/AZ-LT-NIX/services/default.nix @@ -1,6 +1,7 @@ {pkgs, ...}: { imports = [ # ./ad.nix + ./greetd.nix ./mem0.nix ./n8n.nix ./netbird.nix @@ -39,6 +40,5 @@ enable = true; }; desktopManager.gnome.enable = true; - displayManager.gdm.enable = true; }; } diff --git a/hosts/AZ-LT-NIX/services/greetd.nix b/hosts/AZ-LT-NIX/services/greetd.nix new file mode 100644 index 0000000..b0e9727 --- /dev/null +++ b/hosts/AZ-LT-NIX/services/greetd.nix @@ -0,0 +1,36 @@ +{ + pkgs, + config, + lib, + ... +}: let + tuigreet = "${lib.getExe pkgs.tuigreet}"; + # Use start-hyprland wrapper to avoid Hyprland startup warnings + # withUWSM=true is set in programs.nix; start-hyprland handles this correctly + hyprlandCmd = "${config.programs.hyprland.package}/bin/start-hyprland"; +in { + services.greetd = { + enable = true; + + settings = { + default_session = { + user = "greeter"; + # Minimal config: verified supported flags only + # The --time and --remember are tested; power commands omitted + # to avoid potential quoting/parsing issues + command = builtins.concatStringsSep " " [ + tuigreet + "--time" + "--remember" + "--asterisks" + "--cmd ${hyprlandCmd}" + ]; + }; + }; + }; + + # Required for --remember to persist username between logins + systemd.tmpfiles.rules = [ + "d /var/cache/tuigreet 0755 greeter greeter - -" + ]; +}