This repository has no description
0

Configure Feed

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

superconfig / configs / orca-server.nix
1.8 kB 63 lines
1# Headless Orca runtime (https://onorca.dev), reachable over retiolum. 2# Agents, terminals and worktrees run as the orca user; log in as orca to 3# set up agents and to clone repos. 4# Pairing URL for a client (Settings → Remote Orca Servers → Add Server): 5# journalctl -u orca-server | grep 'Pairing URL' 6{ 7 self, 8 config, 9 pkgs, 10 ... 11}: 12let 13 llm = self.inputs.llm-agents.packages.${pkgs.system}; 14 port = 6768; 15in 16{ 17 users.users.orca = { 18 isNormalUser = true; 19 home = "/home/orca"; 20 createHome = true; 21 group = "users"; 22 useDefaultShell = true; 23 openssh.authorizedKeys.keys = [ 24 self.keys.ssh.barnacle.public 25 self.keys.ssh.yubi_pgp.public 26 self.keys.ssh.termux_massulus.public 27 self.keys.ssh.yubi1.public 28 self.keys.ssh.yubi2.public 29 self.keys.ssh.solo2.public 30 self.keys.ssh.xerxes.public 31 self.keys.ssh.ignavia.public 32 self.keys.ssh.massulus.public 33 ]; 34 packages = [ 35 llm.orca 36 pkgs.omp 37 ]; 38 }; 39 40 systemd.services.orca-server = { 41 description = "Orca headless runtime"; 42 wantedBy = [ "multi-user.target" ]; 43 after = [ "network-online.target" ]; 44 wants = [ "network-online.target" ]; 45 # Terminals and agents started by Orca inherit this, so give them the 46 # same tools as an interactive login of the orca user. 47 path = [ 48 "/run/wrappers" 49 "/etc/profiles/per-user/orca" 50 "/run/current-system/sw" 51 ]; 52 serviceConfig = { 53 ExecStart = "${llm.orca}/bin/orca serve --port ${toString port} --pairing-address ${config.networking.hostName}.r"; 54 Restart = "on-failure"; 55 RestartSec = 10; 56 User = "orca"; 57 Group = "users"; 58 WorkingDirectory = "/home/orca"; 59 }; 60 }; 61 62 networking.firewall.interfaces.retiolum.allowedTCPPorts = [ port ]; 63}