From 4ccca75473fee2f6ee2d90d2b34350b8841cffe8 Mon Sep 17 00:00:00 2001 From: mjallen18 Date: Thu, 5 Jun 2025 11:19:40 -0500 Subject: [PATCH] stuffs --- flake.lock | 224 +++++++++++++++++++++++++++++++++--- flake.nix | 17 ++- hosts/nas/apps.nix | 2 +- hosts/nas/configuration.nix | 3 + hosts/nas/home.nix | 11 ++ hosts/nas/nix-serve.nix | 6 +- hosts/nas/services.nix | 9 ++ share/home/vscode.nix | 51 +++++--- 8 files changed, 287 insertions(+), 36 deletions(-) diff --git a/flake.lock b/flake.lock index 327247f..227c14c 100755 --- a/flake.lock +++ b/flake.lock @@ -253,6 +253,25 @@ "type": "github" } }, + "edit": { + "inputs": { + "nixpkgs": "nixpkgs_2", + "rust-overlay": "rust-overlay_2" + }, + "locked": { + "lastModified": 1749050246, + "narHash": "sha256-1C6r6XTZTKOjdrJNDNPQvUW6Kh3TEBFuFs18uQn+d/Q=", + "ref": "refs/heads/master", + "rev": "b47344a028809b471f6106780fef6e8cd690d1ab", + "revCount": 2, + "type": "git", + "url": "https://gitea.mjallen.dev/mjallen/ms-edit-nix" + }, + "original": { + "type": "git", + "url": "https://gitea.mjallen.dev/mjallen/ms-edit-nix" + } + }, "fenix": { "inputs": { "nixpkgs": [ @@ -524,6 +543,42 @@ "type": "indirect" } }, + "flake-utils_3": { + "inputs": { + "systems": "systems_3" + }, + "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" + } + }, + "flake-utils_4": { + "inputs": { + "systems": "systems_4" + }, + "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" + } + }, "gitignore": { "inputs": { "nixpkgs": [ @@ -738,7 +793,7 @@ "nas-nixpkgs-stable" ], "nixpkgs-stable": "nixpkgs-stable_2", - "rust-overlay": "rust-overlay_2" + "rust-overlay": "rust-overlay_3" }, "locked": { "lastModified": 1747308097, @@ -819,7 +874,7 @@ "nas-nixpkgs" ], "pre-commit-hooks-nix": "pre-commit-hooks-nix_2", - "rust-overlay": "rust-overlay_3" + "rust-overlay": "rust-overlay_4" }, "locked": { "lastModified": 1737639419, @@ -836,6 +891,44 @@ "type": "github" } }, + "nas-nix-vscode-extensions": { + "inputs": { + "flake-utils": "flake-utils_3", + "nixpkgs": "nixpkgs_3" + }, + "locked": { + "lastModified": 1749002682, + "narHash": "sha256-v9K6RyPF/+4r/YJhjEH8y07VWE6Vj7Vl88E/K5m/uJ0=", + "owner": "nix-community", + "repo": "nix-vscode-extensions", + "rev": "46eb9c16d8ccfedf8bc648be03f9b2993fe3c994", + "type": "github" + }, + "original": { + "owner": "nix-community", + "repo": "nix-vscode-extensions", + "type": "github" + } + }, + "nas-nixai": { + "inputs": { + "flake-utils": "flake-utils_4", + "nixpkgs": "nixpkgs_4" + }, + "locked": { + "lastModified": 1749000216, + "narHash": "sha256-Y2nbTdmPkTL+ni2hNzU8l/xZqDIFygkkDnTCf3xansU=", + "owner": "olafkfreund", + "repo": "nix-ai-help", + "rev": "3b4b6db6a4ebf1348c62c1ec44c453d9948c4ba8", + "type": "github" + }, + "original": { + "owner": "olafkfreund", + "repo": "nix-ai-help", + "type": "github" + } + }, "nas-nixos-hardware": { "locked": { "lastModified": 1747129300, @@ -1048,7 +1141,7 @@ "inputs": { "argononed": "argononed", "nixos-images": "nixos-images", - "nixpkgs": "nixpkgs_2" + "nixpkgs": "nixpkgs_5" }, "locked": { "lastModified": 1747754643, @@ -1193,21 +1286,52 @@ }, "nixpkgs_2": { "locked": { - "lastModified": 1746408827, - "narHash": "sha256-tqjFTkIm8xhHk36KSk3mCieEvWmFl7SWCVESGlcUFew=", - "owner": "nvmd", + "lastModified": 1749048037, + "narHash": "sha256-bcugmD6yaFBzlmq7XmYJmQ/IpsJkIL/HBo7moDkTGQc=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "1473ad1795a4a4ea14fe636c464649b9b27d8cc8", + "rev": "7569eca88e82f75c4ddb1ed2def9b2975844179a", "type": "github" }, "original": { - "owner": "nvmd", - "ref": "modules-with-keys-unstable", + "owner": "NixOS", "repo": "nixpkgs", "type": "github" } }, "nixpkgs_3": { + "locked": { + "lastModified": 1744868846, + "narHash": "sha256-5RJTdUHDmj12Qsv7XOhuospjAjATNiTMElplWnJE9Hs=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "ebe4301cbd8f81c4f8d3244b3632338bbeb6d49c", + "type": "github" + }, + "original": { + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "ebe4301cbd8f81c4f8d3244b3632338bbeb6d49c", + "type": "github" + } + }, + "nixpkgs_4": { + "locked": { + "lastModified": 1748693115, + "narHash": "sha256-StSrWhklmDuXT93yc3GrTlb0cKSS0agTAxMGjLKAsY8=", + "owner": "NixOS", + "repo": "nixpkgs", + "rev": "910796cabe436259a29a72e8d3f5e180fc6dfacc", + "type": "github" + }, + "original": { + "owner": "NixOS", + "ref": "nixos-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_5": { "locked": { "lastModified": 1746408827, "narHash": "sha256-tqjFTkIm8xhHk36KSk3mCieEvWmFl7SWCVESGlcUFew=", @@ -1223,7 +1347,23 @@ "type": "github" } }, - "nixpkgs_4": { + "nixpkgs_6": { + "locked": { + "lastModified": 1746408827, + "narHash": "sha256-tqjFTkIm8xhHk36KSk3mCieEvWmFl7SWCVESGlcUFew=", + "owner": "nvmd", + "repo": "nixpkgs", + "rev": "1473ad1795a4a4ea14fe636c464649b9b27d8cc8", + "type": "github" + }, + "original": { + "owner": "nvmd", + "ref": "modules-with-keys-unstable", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_7": { "locked": { "lastModified": 1748693115, "narHash": "sha256-StSrWhklmDuXT93yc3GrTlb0cKSS0agTAxMGjLKAsY8=", @@ -1315,7 +1455,7 @@ "inputs": { "argononed": "argononed_2", "nixos-images": "nixos-images_2", - "nixpkgs": "nixpkgs_3" + "nixpkgs": "nixpkgs_6" }, "locked": { "lastModified": 1747754643, @@ -1595,12 +1735,15 @@ "desktop-nixpkgs": "desktop-nixpkgs", "desktop-sops-nix": "desktop-sops-nix", "desktop-steam-rom-manager": "desktop-steam-rom-manager", + "edit": "edit", "nas-authentik-nix": "nas-authentik-nix", "nas-cosmic": "nas-cosmic", "nas-crowdsec": "nas-crowdsec", "nas-home-manager": "nas-home-manager", "nas-impermanence": "nas-impermanence", "nas-lanzaboote": "nas-lanzaboote", + "nas-nix-vscode-extensions": "nas-nix-vscode-extensions", + "nas-nixai": "nas-nixai", "nas-nixos-hardware": "nas-nixos-hardware", "nas-nixpkgs": "nas-nixpkgs", "nas-nixpkgs-stable": "nas-nixpkgs-stable", @@ -1689,6 +1832,27 @@ } }, "rust-overlay_2": { + "inputs": { + "nixpkgs": [ + "edit", + "nixpkgs" + ] + }, + "locked": { + "lastModified": 1749004659, + "narHash": "sha256-zaZrcC5UwHPGkgfnhTPx5sZfSSnUJdvYHhgex10RadQ=", + "owner": "oxalica", + "repo": "rust-overlay", + "rev": "c52e346aedfa745564599558a096e88f9a5557f9", + "type": "github" + }, + "original": { + "owner": "oxalica", + "repo": "rust-overlay", + "type": "github" + } + }, + "rust-overlay_3": { "inputs": { "nixpkgs": [ "nas-cosmic", @@ -1709,7 +1873,7 @@ "type": "github" } }, - "rust-overlay_3": { + "rust-overlay_4": { "inputs": { "nixpkgs": [ "nas-lanzaboote", @@ -1730,7 +1894,7 @@ "type": "github" } }, - "rust-overlay_4": { + "rust-overlay_5": { "inputs": { "nixpkgs": [ "steamdeck-lanzaboote", @@ -1757,7 +1921,7 @@ "flake-schemas": "flake-schemas_2", "home-manager": "home-manager_2", "jovian": "jovian_2", - "nixpkgs": "nixpkgs_4" + "nixpkgs": "nixpkgs_7" }, "locked": { "lastModified": 1748859390, @@ -1860,7 +2024,7 @@ "steamdeck-nixpkgs" ], "pre-commit-hooks-nix": "pre-commit-hooks-nix_3", - "rust-overlay": "rust-overlay_4" + "rust-overlay": "rust-overlay_5" }, "locked": { "lastModified": 1737639419, @@ -1982,6 +2146,36 @@ "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" + } + }, + "systems_4": { + "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 c840a5c..9442ad4 100755 --- a/flake.nix +++ b/flake.nix @@ -113,6 +113,8 @@ inputs.nixpkgs.follows = "nas-nixpkgs"; }; + nas-nixai.url = "github:olafkfreund/nix-ai-help"; + ##################################################### # pi5 # ##################################################### @@ -146,6 +148,8 @@ nixos-raspberrypi.url = "github:nvmd/nixos-raspberrypi"; + nas-nix-vscode-extensions.url = "github:nix-community/nix-vscode-extensions"; + ##################################################### # pi4 # ##################################################### @@ -262,6 +266,8 @@ # Common # ##################################################### + edit.url = "git+https://gitea.mjallen.dev/mjallen/ms-edit-nix"; + nixpkgs-unstable = { url = "github:NixOS/nixpkgs/nixos-unstable"; }; @@ -296,6 +302,8 @@ nas-lanzaboote, nas-nixos-hardware, nas-sops-nix, + nas-nixai, + nas-nix-vscode-extensions, # pi5 pi5-nixpkgs, @@ -330,6 +338,7 @@ nix-darwin, # Common + edit, nixpkgs-unstable, nixpkgs-stable, }@inputs: @@ -484,6 +493,8 @@ nas-cosmic.nixosModules.default + # nas-nixai.nixosModules.x86_64-linux.default + nas-home-manager.nixosModules.home-manager { home-manager.useGlobalPkgs = false; @@ -499,6 +510,7 @@ ./share/home/shell.nix ./share/home/vscode.nix nas-sops-nix.homeManagerModules.sops + # nas-nixai.homeManagerModules.x86_64-linux.default ]; }; home-manager.users.root = @@ -522,7 +534,10 @@ ( { ... }: { - nixpkgs.overlays = [ nas-crowdsec.overlays.default ]; + nixpkgs.overlays = [ + nas-crowdsec.overlays.default + nas-nix-vscode-extensions.overlays.default + ]; } ) diff --git a/hosts/nas/apps.nix b/hosts/nas/apps.nix index 0c5594c..c07a2a1 100755 --- a/hosts/nas/apps.nix +++ b/hosts/nas/apps.nix @@ -1,4 +1,4 @@ -{ ... }: +{ pkgs, lib, ... }: { imports = [ ./apps/actual diff --git a/hosts/nas/configuration.nix b/hosts/nas/configuration.nix index 81a26cd..ffca6b0 100755 --- a/hosts/nas/configuration.nix +++ b/hosts/nas/configuration.nix @@ -6,6 +6,7 @@ config, pkgs, lib, + inputs, ... }: { @@ -69,6 +70,8 @@ jq llama-cpp ninja + inputs.nas-nixai.packages.x86_64-linux.nixai + inputs.edit.packages.${pkgs.system}.edit networkmanagerapplet nmon nut diff --git a/hosts/nas/home.nix b/hosts/nas/home.nix index 0a26e7e..a60f201 100755 --- a/hosts/nas/home.nix +++ b/hosts/nas/home.nix @@ -61,4 +61,15 @@ in zsh.shellAliases = shellAliases; }; + + # services.nixai = { + # enable = true; + # mcp = { + # enable = true; + # # Optional: custom socket path (uses `$HOME` expansion) + # socketPath = "$HOME/.local/share/nixai/mcp.sock"; + # }; + # # Optional: integrate with VS Code + # vscodeIntegration = true; + # }; } diff --git a/hosts/nas/nix-serve.nix b/hosts/nas/nix-serve.nix index f6aab38..a36898f 100755 --- a/hosts/nas/nix-serve.nix +++ b/hosts/nas/nix-serve.nix @@ -35,7 +35,7 @@ in gnugrep gnused openssh - nix-build-mail +# nix-build-mail ]; script = '' #!/usr/bin/env bash @@ -122,7 +122,7 @@ in git reset --hard fi ''; - onSuccess = [ "git push" ]; + # onSuccess = [ "git push" ]; # Send an email on failure # onFailure = [ "nix-build-mail" ]; }; @@ -148,4 +148,4 @@ in supportedFeatures = [ "nixos-test" "benchmark" "big-parallel" "kvm" ]; } ]; -} \ No newline at end of file +} diff --git a/hosts/nas/services.nix b/hosts/nas/services.nix index 14ffca6..acbbaf7 100755 --- a/hosts/nas/services.nix +++ b/hosts/nas/services.nix @@ -132,6 +132,15 @@ in environmentFile = config.sops.secrets."jallen-nas/authentik-env".path; }; + # nixai = { + # enable = true; + # mcp = { + # enable = true; + # # Optional: custom socket path + # socketPath = "/run/nixai/mcp.sock"; + # }; + # }; + postgresql = { enable = true; package = pkgs.postgresql_16; diff --git a/share/home/vscode.nix b/share/home/vscode.nix index f82039c..72dcf09 100644 --- a/share/home/vscode.nix +++ b/share/home/vscode.nix @@ -1,4 +1,4 @@ -{ config, pkgs, ... }: +{ config, pkgs, ... }: { programs.vscode = { enable = true; @@ -8,21 +8,40 @@ default = { enableUpdateCheck = false; enableExtensionUpdateCheck = false; - extensions = with pkgs.vscode-extensions; [ - bbenoist.nix - brettm12345.nixfmt-vscode - cweijan.vscode-database-client2 - dendron.dendron-markdown-preview-enhanced - github.copilot - github.copilot-chat - jnoortheen.nix-ide - ms-python.debugpy - ms-python.pylint - ms-python.python - ms-python.vscode-pylance - redhat.vscode-xml - redhat.vscode-yaml - yy0931.vscode-sqlite3-editor + extensions = with pkgs; [ + vscode-extensions.bbenoist.nix + vscode-extensions.brettm12345.nixfmt-vscode + vscode-extensions.cweijan.vscode-database-client2 + vscode-extensions.dendron.dendron-markdown-preview-enhanced + vscode-extensions.jnoortheen.nix-ide + vscode-extensions.ms-python.debugpy + vscode-extensions.ms-python.pylint + vscode-extensions.ms-python.python + vscode-extensions.ms-python.vscode-pylance + vscode-extensions.redhat.vscode-xml + vscode-extensions.redhat.vscode-yaml + vscode-extensions.yy0931.vscode-sqlite3-editor + + # nas-nix-vscode-extensions.vscode-marketplace.automatalabs.copilot-mcp + ] ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [ + { + name = "copilot-mcp"; + publisher = "automatalabs"; + version = "0.0.49"; + sha256 = "sha256-+G2OQl5SCN7bh7MzGdYiRclIZefBE7lWnGg1kNpCvnA="; + } + { + name = "mcp-server-runner"; + publisher = "zebradev"; + version = "0.1.0"; + sha256 = "sha256-StydVt3VzQUSS/pYp76jnIwtZlEj8gWAGzOARs93J+E="; + } + { + name = "claude-dev"; + publisher = "saoudrizwan"; + version = "3.17.9"; + sha256 = "sha256-y3bFtMe5vZrO3DFb31KDvkzjD2jM76wK89mKhgJXC70="; + } ]; userSettings = {