feat(claude): add caveman and oh-my-claudecode skills via flake inputs
Declaratively manage Claude Code skills through home-manager by fetching plugin repos as non-flake inputs and symlinking their skills directories.
This commit is contained in:
Generated
+38
-4
@@ -1,5 +1,21 @@
|
|||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
|
"caveman": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1776507098,
|
||||||
|
"narHash": "sha256-M+NoWXxrhtbkbe/lmq7P0/KpmqOZzJjhgeUVjY+7N2k=",
|
||||||
|
"owner": "JuliusBrussee",
|
||||||
|
"repo": "caveman",
|
||||||
|
"rev": "84cc3c14fa1e10182adaced856e003406ccd250d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "JuliusBrussee",
|
||||||
|
"repo": "caveman",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
@@ -76,11 +92,11 @@
|
|||||||
},
|
},
|
||||||
"nixpkgs-unstable": {
|
"nixpkgs-unstable": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1775126147,
|
"lastModified": 1776329215,
|
||||||
"narHash": "sha256-J0dZU4atgcfo4QvM9D92uQ0Oe1eLTxBVXjJzdEMQpD0=",
|
"narHash": "sha256-a8BYi3mzoJ/AcJP8UldOx8emoPRLeWqALZWu4ZvjPXw=",
|
||||||
"owner": "nixos",
|
"owner": "nixos",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "8d8c1fa5b412c223ffa47410867813290cdedfef",
|
"rev": "b86751bc4085f48661017fa226dee99fab6c651b",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
@@ -106,12 +122,30 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"oh-my-claudecode": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1776693787,
|
||||||
|
"narHash": "sha256-C/m8Vlt6MXy8nlgqtoey9A5JnVTHCPkGUjar9x5Y2uw=",
|
||||||
|
"owner": "Yeachan-Heo",
|
||||||
|
"repo": "oh-my-claudecode",
|
||||||
|
"rev": "084fc47266824b35f4c8cbe886c0990ae716c184",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "Yeachan-Heo",
|
||||||
|
"repo": "oh-my-claudecode",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
|
"caveman": "caveman",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"kickstart-nvim": "kickstart-nvim",
|
"kickstart-nvim": "kickstart-nvim",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs": "nixpkgs_2",
|
||||||
"nixpkgs-unstable": "nixpkgs-unstable"
|
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||||
|
"oh-my-claudecode": "oh-my-claudecode"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"systems": {
|
"systems": {
|
||||||
|
|||||||
@@ -9,9 +9,17 @@
|
|||||||
inputs.nixpkgs.follows = "nixpkgs";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
kickstart-nvim.url = "github:0xWheatyz/kickstart.nvim";
|
kickstart-nvim.url = "github:0xWheatyz/kickstart.nvim";
|
||||||
|
caveman = {
|
||||||
|
url = "github:JuliusBrussee/caveman";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
|
oh-my-claudecode = {
|
||||||
|
url = "github:Yeachan-Heo/oh-my-claudecode";
|
||||||
|
flake = false;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
outputs = { self, nixpkgs, nixpkgs-unstable, home-manager, kickstart-nvim, ... }:
|
outputs = { self, nixpkgs, nixpkgs-unstable, home-manager, kickstart-nvim, caveman, oh-my-claudecode, ... }:
|
||||||
let
|
let
|
||||||
system = "x86_64-linux";
|
system = "x86_64-linux";
|
||||||
pkgs-unstable = import nixpkgs-unstable {
|
pkgs-unstable = import nixpkgs-unstable {
|
||||||
@@ -31,7 +39,7 @@
|
|||||||
home-manager.useUserPackages = true;
|
home-manager.useUserPackages = true;
|
||||||
home-manager.users.l-wyatt = import ./home.nix;
|
home-manager.users.l-wyatt = import ./home.nix;
|
||||||
home-manager.extraSpecialArgs = {
|
home-manager.extraSpecialArgs = {
|
||||||
inherit kickstart-nvim;
|
inherit kickstart-nvim caveman oh-my-claudecode;
|
||||||
};
|
};
|
||||||
home-manager.sharedModules = [
|
home-manager.sharedModules = [
|
||||||
kickstart-nvim.homeManagerModules.default
|
kickstart-nvim.homeManagerModules.default
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{ config, pkgs, lib, ... }:
|
{ config, pkgs, lib, caveman, oh-my-claudecode, ... }:
|
||||||
|
|
||||||
{
|
{
|
||||||
home.username = "l-wyatt";
|
home.username = "l-wyatt";
|
||||||
@@ -207,6 +207,20 @@
|
|||||||
# Use kickstart.nvim configuration from flake
|
# Use kickstart.nvim configuration from flake
|
||||||
programs.neovim-kickstart.enable = true;
|
programs.neovim-kickstart.enable = true;
|
||||||
|
|
||||||
|
# Claude Code skills (managed declaratively via flake inputs)
|
||||||
|
home.file.".claude/skills/caveman" = {
|
||||||
|
source = "${caveman}/skills/caveman";
|
||||||
|
recursive = true;
|
||||||
|
};
|
||||||
|
home.file.".claude/skills/caveman-help" = {
|
||||||
|
source = "${caveman}/skills/caveman-help";
|
||||||
|
recursive = true;
|
||||||
|
};
|
||||||
|
home.file.".claude/skills/oh-my-claudecode" = {
|
||||||
|
source = "${oh-my-claudecode}/skills";
|
||||||
|
recursive = true;
|
||||||
|
};
|
||||||
|
|
||||||
# Claude Code configuration
|
# Claude Code configuration
|
||||||
home.file.".claude/CLAUDE.md" = {
|
home.file.".claude/CLAUDE.md" = {
|
||||||
text = ''
|
text = ''
|
||||||
|
|||||||
Reference in New Issue
Block a user