a dotfile but it's really big
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

integrate strands-agents-sops

karitham 79a67512 3a858d49

+73 -4
+21 -1
modules/default.nix
··· 14 14 imports = [ ../systems/default.nix ]; 15 15 16 16 perSystem = 17 - { pkgs, ... }: 17 + { 18 + pkgs, 19 + lib, 20 + self', 21 + ... 22 + }: 18 23 { 19 24 packages = { 20 25 pokego = pkgs.callPackage ./pkgs/pokego.nix { }; ··· 24 29 multi-scrobbler = pkgs.callPackage ./pkgs/multi-scrobbler.nix { }; 25 30 26 31 wakuna-image = self.lib.sdImageFromSystem self.nixosConfigurations.wakuna; 32 + 33 + strands-agents-sops = pkgs.callPackage ./pkgs/strands-agents-sops.nix { }; 34 + 35 + strands-sops-skills = pkgs.runCommand "strands-sops-skills" { } '' 36 + mkdir $out 37 + ${lib.getExe self'.packages.strands-agents-sops} skills --output-dir $out 38 + ''; 39 + 40 + strands-sops-commands = pkgs.runCommand "strands-sops-commands" { } '' 41 + mkdir $out 42 + ${lib.getExe self'.packages.strands-agents-sops} commands --type cursor --output-dir $out 43 + for f in $out/*.sop.md; do 44 + [ -f "$f" ] && mv "$f" "''${f%.sop.md}.md" 45 + done 46 + ''; 27 47 }; 28 48 checks = { 29 49 pds-simple = pkgs.callPackage ./pds/pds-recovery-simple.nix { inherit (inputs) nixpkgs; };
+2 -2
modules/dev/editor/helix.nix
··· 49 49 let 50 50 plusMenu = { 51 51 g = '' 52 - :sh ${./copy-remote-path.nu} "%{file_path_absolute}" --line-start "%{selection_line_start}" --line-end "%{selection_line_end}" 52 + :sh ${./copy-remote-path.nu} "%{buffer_name}" --line-start "%{selection_line_start}" --line-end "%{selection_line_end}" 53 53 ''; 54 54 b = ":echo %sh{git blame -L %{cursor_line},+1 %{buffer_name}}"; 55 55 p = ":sh echo %{buffer_name} | ${pkgs.wl-clipboard}/bin/wl-copy"; ··· 72 72 }; 73 73 runMenu = { 74 74 f = [ 75 - ":sh golangci-lint run --issues-exit-code=0 --fix %{buffer_name}" 75 + ":sh golangci-lint run --issues-exit-code=0 --fix --new-from-rev HEAD" 76 76 ":reload" 77 77 ]; 78 78 };
+14 -1
modules/opencode/default.nix
··· 16 16 ''; 17 17 }; 18 18 19 + mergedSkills = pkgs.runCommand "strands-sops-skills-merged" { } '' 20 + mkdir $out 21 + cp -r ${self'.packages.strands-sops-skills}/* $out/ 22 + cp -r ${./skills}/* $out/ 23 + ''; 24 + 19 25 cfg = config.dev.opencode; 20 26 in 21 27 lib.mkIf cfg.enable { 28 + home.packages = [ self'.packages.strands-agents-sops ]; 29 + 22 30 xdg.configFile."opencode/agents" = { 23 31 source = ./agents; 24 32 recursive = true; 25 33 }; 26 34 27 35 xdg.configFile."opencode/skills" = { 28 - source = ./skills; 36 + source = mergedSkills; 37 + recursive = true; 38 + }; 39 + 40 + xdg.configFile."opencode/commands" = { 41 + source = self'.packages.strands-sops-commands; 29 42 recursive = true; 30 43 }; 31 44
+36
modules/pkgs/strands-agents-sops.nix
··· 1 + { 2 + lib, 3 + python3Packages, 4 + fetchFromGitHub, 5 + }: 6 + 7 + python3Packages.buildPythonApplication rec { 8 + pname = "strands-agents-sops"; 9 + version = "1.1.1"; 10 + pyproject = true; 11 + 12 + src = fetchFromGitHub { 13 + tag = "v${version}"; 14 + repo = "agent-sop"; 15 + owner = "strands-agents"; 16 + hash = "sha256-7OtPiR5v++oGU9r7ojnFTgIR67Zz+K7IGk1bQw7GyDo="; 17 + }; 18 + 19 + sourceRoot = "source/python"; 20 + 21 + nativeBuildInputs = [ python3Packages.hatchling ]; 22 + 23 + postPatch = '' 24 + substituteInPlace pyproject.toml \ 25 + --replace-fail 'dynamic = ["version"]' 'version = "${version}"' \ 26 + --replace-fail '"hatchling", "hatch-vcs"' '"hatchling"' 27 + ''; 28 + 29 + dependencies = [ python3Packages.mcp ]; 30 + 31 + meta = { 32 + description = "Natural language workflows (SOPs) for AI agents"; 33 + license = lib.licenses.asl20; 34 + mainProgram = "strands-agents-sops"; 35 + }; 36 + }