Repository navigation
Nerve 0.0.3
Upgrading from 0.0.2
- A 0.0.2
nerve-nodeCLI talking to a 0.0.3 node on Linux is refused for everything exceptstatus, because it sends no control-socket token (#83).updateof 0.0.2 still works, as it asks onlystatus. After it, run the CLI from the 0.0.3 program too. - A 0.0.2 node refuses a
node.tomlthat holdsplacesunder a pairing'spolicy, which 0.0.3 writes withfolder add(#88). Before you go back to 0.0.2, remove the key withnerve-node config unset center.<name>.policy.placesfor each pairing.
Folder mode on Windows
- Commands in folder mode now run in an AppContainer of their own, so a command only reaches the folders you gave it, on a node you run yourself; the installed Windows service still runs no command in folder mode (#39, #45).
docs/user/modes.mdalso lists what the AppContainer does not stop (#86). - PowerShell
cd,chdir,slandpushdwork with whole paths in the container, not only inside theWork:drive (#85). folder add,folder setandfolder rmreach a running node at once, through a control pipe that a command cannot use (#53, #93).- A large folder is walked only where the grant changes, so applying the same grant again is much faster (#54, #95).
- The keyring refusal text for folder mode names the AppContainer and the Credential Manager, not Landlock (#91, #102).
Folder mode on Linux
- A folder a command replaced by a link is no longer followed (#74, #80).
- On Windows and Linux, a recorded folder stays at the place it was added, so a junction or link made later does not move it (#77, #88).
folder setandfolder rmname the stored folder when the node cannot look into the path you typed (#98, #103).
Control socket and config
- A sandboxed command can no longer read the node config over the control socket; the socket answers only requests that carry the owner's token, and refuses every request that comes from below a command the node runs (#70, #83).
- A busy control socket is no longer taken for a stopped node, and
panicandunlockno longer report a change the node did not get (#69, #79). - The keys lock is free again right after it is released, even when a command was forked in the meantime (#73, #79).
rule addrefuses thefs:...andexec:...forms, andrule rmremoves entries that older runs made by mistake (#78, #79).machine.secret_storage = "keyring"keeps the node's own keys in the system keyring, opt-in (#46, #47).
Sudo and install
- On Windows, sudo runs the command account with its elevated token (#60, #75).
installandsetupwarn when the account that runs the commands can become root without a password (#97, #104).- The installed Windows node writes start, stop and failures to the Event Log (#65, #71).
- On the installed Windows node, a proxy with header values or a URL password is refused, because the node cannot read them (#68, #81).
uninstallremoves a node's profiles even when its state folder is already gone (#55, #84).
CI
- Pull requests run
cargo fmt,clippyand the tests on Linux and on Windows (#58, #100). - The keyring places test runs on Unix only, and the Windows test build works again (#96, #101).
Static Linux binaries (x86_64, aarch64) and Windows x86_64 programs of nerve-center and nerve-node, built from 80b9786. SHA256SUMS lists their checksums. They are not signed; nerve-node update checks the one it downloads against SHA256SUMS (docs/user/service.md).