Security key support
This commit is contained in:
parent
62c054bae4
commit
63f906cecd
10 changed files with 121 additions and 19 deletions
5
.claw.json
Normal file
5
.claw.json
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
{
|
||||||
|
"permissions": {
|
||||||
|
"defaultMode": "dontAsk"
|
||||||
|
}
|
||||||
|
}
|
||||||
4
.gitignore
vendored
Normal file
4
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
# Claw Code local artifacts
|
||||||
|
.claw/settings.local.json
|
||||||
|
.claw/sessions/
|
||||||
|
.clawhip/
|
||||||
12
CLAUDE.md
Normal file
12
CLAUDE.md
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
# CLAUDE.md
|
||||||
|
|
||||||
|
This file provides shared guidance to both Claude Code and Claw Code when working with this repository.
|
||||||
|
|
||||||
|
## Detected stack
|
||||||
|
- No specific language markers were detected yet; document the primary language and verification commands once the project structure settles.
|
||||||
|
- Frameworks: none detected from the supported starter markers.
|
||||||
|
|
||||||
|
## Working agreement
|
||||||
|
- Prefer small, reviewable changes and keep generated bootstrap files aligned with actual repo workflows.
|
||||||
|
- Keep shared defaults in `.claw.json`; reserve `.claw/settings.local.json` for machine-local overrides.
|
||||||
|
- Do not overwrite existing `CLAUDE.md` content automatically; update it intentionally when repo workflows change.
|
||||||
|
|
@ -42,6 +42,8 @@
|
||||||
|
|
||||||
programs.zsh.enable = true;
|
programs.zsh.enable = true;
|
||||||
|
|
||||||
|
programs.nix-ld.enable = true;
|
||||||
|
|
||||||
programs.thunar.enable = true;
|
programs.thunar.enable = true;
|
||||||
|
|
||||||
programs.dconf.enable = true;
|
programs.dconf.enable = true;
|
||||||
|
|
@ -82,11 +84,12 @@
|
||||||
|
|
||||||
services.openssh = {
|
services.openssh = {
|
||||||
enable = true;
|
enable = true;
|
||||||
listenAddresses = [{ addr = "192.168.1.67"; port = 2200; }];
|
|
||||||
};
|
};
|
||||||
|
|
||||||
services.gvfs.enable = true;
|
services.gvfs.enable = true;
|
||||||
|
|
||||||
|
services.input-remapper.enable = true;
|
||||||
|
|
||||||
system.stateVersion = "25.11";
|
system.stateVersion = "25.11";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -117,6 +117,23 @@
|
||||||
|
|
||||||
home.sessionVariables = {
|
home.sessionVariables = {
|
||||||
EDITOR = "nvim";
|
EDITOR = "nvim";
|
||||||
|
# claw-code: route to local Ollama instead of Anthropic/OpenAI
|
||||||
|
OPENAI_BASE_URL = "http://127.0.0.1:11434/v1";
|
||||||
|
OPENAI_API_KEY = "ollama";
|
||||||
|
};
|
||||||
|
|
||||||
|
systemd.user.services.ydotoold = {
|
||||||
|
Unit = {
|
||||||
|
Description = "ydotool daemon";
|
||||||
|
After = [ "default.target" ];
|
||||||
|
};
|
||||||
|
Service = {
|
||||||
|
ExecStart = "${pkgs.ydotool}/bin/ydotoold";
|
||||||
|
Restart = "always";
|
||||||
|
};
|
||||||
|
Install = {
|
||||||
|
WantedBy = [ "default.target" ];
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,29 @@
|
||||||
{ inputs, pkgs, ... }:
|
{ inputs, pkgs, lib, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
claw-code = pkgs.rustPlatform.buildRustPackage {
|
||||||
|
pname = "claw-code";
|
||||||
|
version = "unstable-2026";
|
||||||
|
|
||||||
|
src = pkgs.fetchFromGitHub {
|
||||||
|
owner = "ultraworkers";
|
||||||
|
repo = "claw-code";
|
||||||
|
rev = "main";
|
||||||
|
hash = "sha256-y63Kx7B1q2gWUO/4/k8hUgHzuKTi+HF+cGbr1em0grs=";
|
||||||
|
};
|
||||||
|
|
||||||
|
sourceRoot = "source/rust";
|
||||||
|
|
||||||
|
cargoHash = "sha256-bZKghBTbKrhm2Jiyg2su1c9Jlx2HVrMQjOTK6cgEc00=";
|
||||||
|
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
|
meta = {
|
||||||
|
description = "Open-source Rust implementation of the claw CLI agent harness";
|
||||||
|
homepage = "https://github.com/ultraworkers/claw-code";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
in
|
||||||
{
|
{
|
||||||
home.packages = with pkgs; [
|
home.packages = with pkgs; [
|
||||||
### Desktop Stuff
|
### Desktop Stuff
|
||||||
|
|
@ -23,6 +48,9 @@
|
||||||
### Note Taking
|
### Note Taking
|
||||||
obsidian
|
obsidian
|
||||||
|
|
||||||
|
### Input Remapping
|
||||||
|
ydotool
|
||||||
|
|
||||||
### Random Libraries and Dependencies
|
### Random Libraries and Dependencies
|
||||||
gtk3
|
gtk3
|
||||||
glib
|
glib
|
||||||
|
|
@ -37,8 +65,19 @@
|
||||||
jdk
|
jdk
|
||||||
gnumake
|
gnumake
|
||||||
inputs.claude-code.packages.${pkgs.system}.claude-code
|
inputs.claude-code.packages.${pkgs.system}.claude-code
|
||||||
|
claw-code
|
||||||
|
opencode
|
||||||
|
postman
|
||||||
|
|
||||||
### My Stuff
|
### My Stuff
|
||||||
inputs.hyprmwh.packages.${pkgs.system}.default
|
inputs.hyprmwh.packages.${pkgs.system}.default
|
||||||
|
|
||||||
|
### Browsers
|
||||||
|
epiphany
|
||||||
|
chromium
|
||||||
|
|
||||||
|
### Editors
|
||||||
|
zed-editor
|
||||||
|
jetbrains.idea
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -40,6 +40,8 @@
|
||||||
"gtkbar"
|
"gtkbar"
|
||||||
"dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"
|
"dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP"
|
||||||
"solaar -w hide"
|
"solaar -w hide"
|
||||||
|
"ydotoold"
|
||||||
|
"${pkgs.kdePackages.polkit-kde-agent-1}/libexec/polkit-kde-authentication-agent-1"
|
||||||
];
|
];
|
||||||
|
|
||||||
# --- Variables ---
|
# --- Variables ---
|
||||||
|
|
@ -212,6 +214,9 @@
|
||||||
# Custom scripts
|
# Custom scripts
|
||||||
"${mainMod}, b, exec, bash -c 'pgrep gtkbar &>/dev/null && killall gtkbar || gtkbar &'"
|
"${mainMod}, b, exec, bash -c 'pgrep gtkbar &>/dev/null && killall gtkbar || gtkbar &'"
|
||||||
"${mainMod}, minus, exec, ~/.config/hypr/togglemonitor.sh ${monitor3}"
|
"${mainMod}, minus, exec, ~/.config/hypr/togglemonitor.sh ${monitor3}"
|
||||||
|
|
||||||
|
# Mouse: back thumb button -> middle click (mchose mouse)
|
||||||
|
", mouse:275, exec, ydotool click 0xC2"
|
||||||
];
|
];
|
||||||
|
|
||||||
bindle = [
|
bindle = [
|
||||||
|
|
|
||||||
|
|
@ -15,8 +15,13 @@
|
||||||
|
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
|
nixpkgs.config.permittedInsecurePackages = [
|
||||||
|
"openclaw-2026.3.12"
|
||||||
|
];
|
||||||
|
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
ollama
|
ollama
|
||||||
rocmPackages.rocminfo
|
rocmPackages.rocminfo
|
||||||
|
openclaw
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,6 @@
|
||||||
programs.firefox.enable = true;
|
programs.firefox.enable = true;
|
||||||
programs.hyprland.enable = true;
|
programs.hyprland.enable = true;
|
||||||
|
|
||||||
|
|
||||||
# List packages installed in system profile.
|
# List packages installed in system profile.
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
# neovim
|
# neovim
|
||||||
|
|
@ -20,5 +19,13 @@
|
||||||
unzip
|
unzip
|
||||||
python3
|
python3
|
||||||
nodejs
|
nodejs
|
||||||
|
input-remapper
|
||||||
|
kdePackages.polkit-kde-agent-1
|
||||||
|
yubikey-manager
|
||||||
|
yubioath-flutter
|
||||||
];
|
];
|
||||||
|
|
||||||
|
services.udev.packages = [ pkgs.yubikey-personalization ];
|
||||||
|
services.pcscd.enable = true;
|
||||||
|
programs.ssh.startAgent = true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -11,6 +11,7 @@
|
||||||
"docker"
|
"docker"
|
||||||
"video"
|
"video"
|
||||||
"render"
|
"render"
|
||||||
|
"input"
|
||||||
]; # Enable ‘sudo’ for the user.
|
]; # Enable ‘sudo’ for the user.
|
||||||
group = "jack";
|
group = "jack";
|
||||||
packages = with pkgs; [
|
packages = with pkgs; [
|
||||||
|
|
@ -21,4 +22,8 @@
|
||||||
};
|
};
|
||||||
|
|
||||||
users.groups.jack = {};
|
users.groups.jack = {};
|
||||||
|
|
||||||
|
services.udev.extraRules = ''
|
||||||
|
KERNEL=="uinput", GROUP="input", MODE="0660", OPTIONS+="static_node=uinput"
|
||||||
|
'';
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue