add krewfile to manage krew and its plugins
Some checks failed
Build / nix-build (native-aarch64, varda) (push) Successful in 7m3s
Build / nix-build (native-x86_64, gandalf) (push) Has been cancelled
Build / nix-build (native-x86_64, telchar) (push) Has been cancelled
Build / nix-build (native-x86_64, telperion) (push) Has been cancelled
Build / Nix Build Successful (push) Has been cancelled

This commit is contained in:
Joseph Hanson 2024-09-08 18:20:14 -05:00
parent d865c71e4e
commit 8af6904499
Signed by: jahanson
SSH key fingerprint: SHA256:vy6dKBECV522aPAwklFM3ReKAVB086rT3oWwiuiFG7o
3 changed files with 80 additions and 5 deletions

View file

@ -153,6 +153,24 @@
"inputs": { "inputs": {
"systems": "systems_4" "systems": "systems_4"
}, },
"locked": {
"lastModified": 1710146030,
"narHash": "sha256-SZ5L6eA7HJ/nmkzGG7/ISclqe6oZdOZTNoesiInkXPQ=",
"owner": "numtide",
"repo": "flake-utils",
"rev": "b1d9ab70662946ef0850d488da1c9019f3a9752a",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "flake-utils",
"type": "github"
}
},
"flake-utils_5": {
"inputs": {
"systems": "systems_5"
},
"locked": { "locked": {
"lastModified": 1681202837, "lastModified": 1681202837,
"narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=", "narHash": "sha256-H+Rh19JDwRtpVPAWp64F+rlEtxUWBAQW28eAi3SRSzg=",
@ -238,6 +256,28 @@
"type": "github" "type": "github"
} }
}, },
"krewfile": {
"inputs": {
"flake-utils": "flake-utils_2",
"nixpkgs": [
"nixpkgs"
]
},
"locked": {
"lastModified": 1725822077,
"narHash": "sha256-N+1mHVZoFwiuDUBqhWVWSINmAGpKTdH9jYPIkXNcqj4=",
"owner": "ajgon",
"repo": "krewfile",
"rev": "d4db6ad2cc1c23513d691f63ac4aae6d8c9b1b8b",
"type": "github"
},
"original": {
"owner": "ajgon",
"ref": "feat/fix-deps",
"repo": "krewfile",
"type": "github"
}
},
"lix": { "lix": {
"flake": false, "flake": false,
"locked": { "locked": {
@ -254,7 +294,7 @@
}, },
"lix-module": { "lix-module": {
"inputs": { "inputs": {
"flake-utils": "flake-utils_2", "flake-utils": "flake-utils_3",
"flakey-profile": "flakey-profile", "flakey-profile": "flakey-profile",
"lix": "lix", "lix": "lix",
"nixpkgs": [ "nixpkgs": [
@ -361,7 +401,7 @@
"nix-vscode-extensions": { "nix-vscode-extensions": {
"inputs": { "inputs": {
"flake-compat": "flake-compat", "flake-compat": "flake-compat",
"flake-utils": "flake-utils_3", "flake-utils": "flake-utils_4",
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
] ]
@ -645,6 +685,7 @@
"ghostty": "ghostty", "ghostty": "ghostty",
"home-manager": "home-manager", "home-manager": "home-manager",
"impermanence": "impermanence", "impermanence": "impermanence",
"krewfile": "krewfile",
"lix-module": "lix-module", "lix-module": "lix-module",
"nix-index-database": "nix-index-database", "nix-index-database": "nix-index-database",
"nix-inspect": "nix-inspect", "nix-inspect": "nix-inspect",
@ -780,6 +821,21 @@
"type": "github" "type": "github"
} }
}, },
"systems_5": {
"locked": {
"lastModified": 1681028828,
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
"owner": "nix-systems",
"repo": "default",
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
"type": "github"
},
"original": {
"owner": "nix-systems",
"repo": "default",
"type": "github"
}
},
"talhelper": { "talhelper": {
"inputs": { "inputs": {
"flake-parts": "flake-parts", "flake-parts": "flake-parts",
@ -825,7 +881,7 @@
}, },
"vscode-server": { "vscode-server": {
"inputs": { "inputs": {
"flake-utils": "flake-utils_4", "flake-utils": "flake-utils_5",
"nixpkgs": "nixpkgs_2" "nixpkgs": "nixpkgs_2"
}, },
"locked": { "locked": {

View file

@ -85,10 +85,17 @@
}; };
vscode-server.url = "github:nix-community/nixos-vscode-server"; vscode-server.url = "github:nix-community/nixos-vscode-server";
# krewfile - Declarative krew plugin management
krewfile = {
url = "github:ajgon/krewfile?ref=feat/fix-deps";
inputs.nixpkgs.follows = "nixpkgs";
};
}; };
outputs = outputs =
{ self, nixpkgs, sops-nix, home-manager, nix-vscode-extensions, impermanence, disko, talhelper, lix-module, ghostty, vscode-server, ... } @ inputs: { self, nixpkgs, sops-nix, home-manager, nix-vscode-extensions, impermanence, disko, talhelper, lix-module, ghostty, vscode-server, krewfile, ... } @ inputs:
let let
forAllSystems = nixpkgs.lib.genAttrs [ forAllSystems = nixpkgs.lib.genAttrs [
"aarch64-linux" "aarch64-linux"

View file

@ -1,8 +1,9 @@
{ pkgs, config, ... }: { pkgs, config, inputs, ... }:
with config; with config;
{ {
imports = [ imports = [
../modules ../modules
inputs.krewfile.homeManagerModules.krewfile
]; ];
config = { config = {
@ -20,7 +21,17 @@ with config;
EDITOR = "vim"; EDITOR = "vim";
}; };
programs.krewfile = {
enable = true;
krewPackage = pkgs.krew;
plugins = [
"resource-capacity"
"rook-ceph"
];
};
home = { home = {
# Install these packages for my user # Install these packages for my user
packages = with pkgs; [ packages = with pkgs; [
# misc # misc
@ -92,6 +103,7 @@ with config;
# nix tools # nix tools
nvd nvd
# charmbracelet tools # charmbracelet tools
gum gum
]; ];