feat: add build tools, nugets, and persistent claude-vm home dir
This commit was merged in pull request #5.
This commit is contained in:
+40
-4
@@ -39,6 +39,16 @@ let
|
||||
target = "/mnt/claude-vm-config";
|
||||
securityModel = "none";
|
||||
};
|
||||
claude = {
|
||||
source = ''"$CLAUDE_HOME_DIR"'';
|
||||
target = "/home/claude";
|
||||
securityModel = "none";
|
||||
};
|
||||
nuget = {
|
||||
source = ''"$NUGET_DIR"'';
|
||||
target = "/home/claude/.nuget";
|
||||
securityModel = "none";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
@@ -62,11 +72,19 @@ let
|
||||
programs.command-not-found.enable = false;
|
||||
|
||||
# packages
|
||||
environment.systemPackages = [
|
||||
environment.systemPackages = with pkgs; [
|
||||
claudeCode
|
||||
pkgs.git
|
||||
pkgs.curl
|
||||
pkgs.vim
|
||||
git
|
||||
curl
|
||||
vim
|
||||
dotnetCorePackages.sdk_10_0
|
||||
dapr-cli
|
||||
bun
|
||||
just
|
||||
yaml-language-server
|
||||
nodePackages.typescript-language-server
|
||||
# fsautocomplete
|
||||
# sqlfluff
|
||||
];
|
||||
|
||||
# login shell launches claude
|
||||
@@ -81,6 +99,10 @@ let
|
||||
done < /mnt/claude-vm-config/claude-args
|
||||
fi
|
||||
|
||||
# if [ -f /mnt/claude-vm-config/gitconfig ]; then
|
||||
# cp /mnt/claude-vm-config/gitconfig ~/.gitconfig
|
||||
# fi
|
||||
|
||||
cd /workspace 2>/dev/null || true
|
||||
exec claude "''${args[@]}"
|
||||
'';
|
||||
@@ -106,7 +128,21 @@ in
|
||||
touch "$CONFIG_DIR/claude-args"
|
||||
fi
|
||||
|
||||
if [ -e ~/.config/git/config ]; then
|
||||
cp ~/.config/git/config $CONFIG_DIR/gitconfig
|
||||
fi
|
||||
|
||||
[ ! -d ~/.claude-vm ] && mkdir -p ~/.claude-vm
|
||||
|
||||
if [ -e ~/.nuget ]; then
|
||||
export NUGET_DIR=~/.nuget
|
||||
else
|
||||
mkdir -p $CONFIG_DIR/nuget
|
||||
export NUGET_DIR=$CONFIG_DIR/nuget
|
||||
fi
|
||||
|
||||
export CLAUDE_VM_CONFIG_DIR="$CONFIG_DIR"
|
||||
export CLAUDE_HOME_DIR=~/.claude-vm
|
||||
export WORKSPACE_DIR="$(pwd)"
|
||||
${vmBuild}/bin/run-claude-vm-vm
|
||||
'';
|
||||
|
||||
Reference in New Issue
Block a user