From 00f1e2c2ef9d9a13081dcbd7979bcfbf3501ee62 Mon Sep 17 00:00:00 2001 From: Joey Hafner Date: Tue, 8 Oct 2024 17:03:13 -0700 Subject: [PATCH] Add k3s management tools, add binary for deploy-rs --- nix/dungeon-master/home-manager/flake.lock | 104 +++++++++++++++++++-- nix/dungeon-master/home-manager/flake.nix | 1 + nix/dungeon-master/home-manager/home.nix | 14 ++- nix/home-manager/app/kubectl/kubectl.nix | 7 ++ 4 files changed, 114 insertions(+), 12 deletions(-) create mode 100644 nix/home-manager/app/kubectl/kubectl.nix diff --git a/nix/dungeon-master/home-manager/flake.lock b/nix/dungeon-master/home-manager/flake.lock index 962a6925..57f006b8 100644 --- a/nix/dungeon-master/home-manager/flake.lock +++ b/nix/dungeon-master/home-manager/flake.lock @@ -66,7 +66,43 @@ "type": "github" } }, + "deploy-rs": { + "inputs": { + "flake-compat": "flake-compat", + "nixpkgs": "nixpkgs", + "utils": "utils" + }, + "locked": { + "lastModified": 1727447169, + "narHash": "sha256-3KyjMPUKHkiWhwR91J1YchF6zb6gvckCAY1jOE+ne0U=", + "owner": "serokell", + "repo": "deploy-rs", + "rev": "aa07eb05537d4cd025e2310397a6adcedfe72c76", + "type": "github" + }, + "original": { + "owner": "serokell", + "repo": "deploy-rs", + "type": "github" + } + }, "flake-compat": { + "flake": false, + "locked": { + "lastModified": 1696426674, + "narHash": "sha256-kvjfFW7WAETZlt09AgDn1MrtKzP7t90Vf7vypd3OL1U=", + "owner": "edolstra", + "repo": "flake-compat", + "rev": "0f9255e01c2351cc7d116c072cb317785dd33b33", + "type": "github" + }, + "original": { + "owner": "edolstra", + "repo": "flake-compat", + "type": "github" + } + }, + "flake-compat_2": { "flake": false, "locked": { "lastModified": 1673956053, @@ -210,7 +246,7 @@ "nixgl": { "inputs": { "flake-utils": "flake-utils", - "nixpkgs": "nixpkgs" + "nixpkgs": "nixpkgs_2" }, "locked": { "lastModified": 1713543440, @@ -228,15 +264,16 @@ }, "nixpkgs": { "locked": { - "lastModified": 1660551188, - "narHash": "sha256-a1LARMMYQ8DPx1BgoI/UN4bXe12hhZkCNqdxNi6uS0g=", - "owner": "nixos", + "lastModified": 1702272962, + "narHash": "sha256-D+zHwkwPc6oYQ4G3A1HuadopqRwUY/JkMwHz1YF7j4Q=", + "owner": "NixOS", "repo": "nixpkgs", - "rev": "441dc5d512153039f19ef198e662e4f3dbb9fd65", + "rev": "e97b3e4186bcadf0ef1b6be22b8558eab1cdeb5d", "type": "github" }, "original": { - "owner": "nixos", + "owner": "NixOS", + "ref": "nixpkgs-unstable", "repo": "nixpkgs", "type": "github" } @@ -274,6 +311,21 @@ } }, "nixpkgs_2": { + "locked": { + "lastModified": 1660551188, + "narHash": "sha256-a1LARMMYQ8DPx1BgoI/UN4bXe12hhZkCNqdxNi6uS0g=", + "owner": "nixos", + "repo": "nixpkgs", + "rev": "441dc5d512153039f19ef198e662e4f3dbb9fd65", + "type": "github" + }, + "original": { + "owner": "nixos", + "repo": "nixpkgs", + "type": "github" + } + }, + "nixpkgs_3": { "locked": { "lastModified": 1727264057, "narHash": "sha256-KQPI8CTTnB9CrJ7LrmLC4VWbKZfljEPBXOFGZFRpxao=", @@ -314,10 +366,11 @@ }, "root": { "inputs": { + "deploy-rs": "deploy-rs", "home-manager": "home-manager", "nix-flatpak": "nix-flatpak", "nixgl": "nixgl", - "nixpkgs": "nixpkgs_2", + "nixpkgs": "nixpkgs_3", "nixpkgs-unstable": "nixpkgs-unstable", "plasma-manager": "plasma-manager", "sops-nix": "sops-nix", @@ -351,14 +404,14 @@ "base16-fish": "base16-fish", "base16-helix": "base16-helix", "base16-vim": "base16-vim", - "flake-compat": "flake-compat", + "flake-compat": "flake-compat_2", "flake-utils": "flake-utils_2", "gnome-shell": "gnome-shell", "home-manager": "home-manager_2", "nixpkgs": [ "nixpkgs" ], - "systems": "systems", + "systems": "systems_2", "tinted-foot": "tinted-foot", "tinted-kitty": "tinted-kitty", "tinted-tmux": "tinted-tmux" @@ -392,6 +445,21 @@ "type": "github" } }, + "systems_2": { + "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": { @@ -439,6 +507,24 @@ "repo": "tinted-tmux", "type": "github" } + }, + "utils": { + "inputs": { + "systems": "systems" + }, + "locked": { + "lastModified": 1701680307, + "narHash": "sha256-kAuep2h5ajznlPMD9rnQyffWG8EM/C73lejGofXvdM8=", + "owner": "numtide", + "repo": "flake-utils", + "rev": "4022d587cbbfd70fe950c1e2083a02621806a725", + "type": "github" + }, + "original": { + "owner": "numtide", + "repo": "flake-utils", + "type": "github" + } } }, "root": "root", diff --git a/nix/dungeon-master/home-manager/flake.nix b/nix/dungeon-master/home-manager/flake.nix index 2618a6ad..a6cc120b 100644 --- a/nix/dungeon-master/home-manager/flake.nix +++ b/nix/dungeon-master/home-manager/flake.nix @@ -23,6 +23,7 @@ url = "github:Mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; }; + deploy-rs.url = "github:serokell/deploy-rs"; }; outputs = inputs@{ nixpkgs, nixpkgs-unstable, home-manager, nixgl, plasma-manager, ... }: diff --git a/nix/dungeon-master/home-manager/home.nix b/nix/dungeon-master/home-manager/home.nix index af9fea13..1afac255 100644 --- a/nix/dungeon-master/home-manager/home.nix +++ b/nix/dungeon-master/home-manager/home.nix @@ -1,4 +1,4 @@ -{ config, pkgs, pkgs-unstable, ... }: +{ config, pkgs, pkgs-unstable, inputs, ... }: { sops = { @@ -189,6 +189,7 @@ kitty = "nixGL kitty"; fzf-ssh = "ssh $(cat ~/.ssh/profiles | fzf --height 20%)"; fsh = "fzf-ssh"; + k = "kubectl"; }; history = { share = true; @@ -261,7 +262,6 @@ home.homeDirectory = "/home/joey"; home.stateVersion = "24.05"; home.packages = with pkgs; [ - deploy-rs flatpak fastfetch nixd @@ -273,9 +273,17 @@ wl-clipboard base16-schemes k3s - kubernetes-helm + (wrapHelm kubernetes-helm { + plugins = with pkgs.kubernetes-helmPlugins; [ + helm-diff + helm-secrets + helm-s3 + helm-git + ]; + }) helmfile-wrapped pkgs-unstable.fzf + inputs.deploy-rs.defaultPackage.x86_64-linux ]; home.file = { "continue-config.json" = { diff --git a/nix/home-manager/app/kubectl/kubectl.nix b/nix/home-manager/app/kubectl/kubectl.nix new file mode 100644 index 00000000..333ef0da --- /dev/null +++ b/nix/home-manager/app/kubectl/kubectl.nix @@ -0,0 +1,7 @@ +{ pkgs, ... }: +{ + home.packages = with pkgs; [ + k3s + kubernetes-helm + helmfile-wrapped ]; +} \ No newline at end of file