Daniel Barlow
05991225de
anoia.svc allow open of a service that is not yet running
...
we change the inotify watcher so that it attempts to monitor
/run/service as well as /run/service/foo. If foo doesn't yet exist
then that call to addwatch fails, so we need to be looking at the
parent if we are to be told when foo gets created
2025-03-25 23:37:58 +00:00
Daniel Barlow
7ce1c6bb7d
add realpath to lualinux
2025-03-24 22:39:59 +00:00
Daniel Barlow
8440378a39
anoia: make dirname handle tralning / like posix
2025-03-24 22:37:24 +00:00
Daniel Barlow
0ae5689a40
support maps in firewallgen
2025-03-21 21:19:18 +00:00
Daniel Barlow
45047dc023
squahs falls back
2025-03-21 21:09:05 +00:00
Daniel Barlow
be03e9e8c8
service outputs falls back to properties (untested)
2025-03-18 18:38:04 +00:00
Daniel Barlow
4e51977ae0
provide properties
attr to services
...
properties are similar to outputs, but are different in that they are
fixed values (do not change) and are present even when the service is
down
if the attribute is present and an attrset, this will write the
equivalent recursive directory structure to $out/.properties/
2025-03-12 23:35:56 +00:00
Daniel Barlow
2b0972ed73
svc.open accepts a /nix/store folder not an outputs folder
...
this mostly makes things simpler
2025-03-11 00:21:44 +00:00
Daniel Barlow
d4e46dbe28
secrets/subscriber don't depend on the services we're watching
...
this means a watched service can stop and start without killing
the subscriber, and that we can watch for services that don't
yet exist
2025-03-09 20:35:40 +00:00
Daniel Barlow
d1f87a56e0
secrets/subscriber: use correct numbers for signals to s6-svc
2025-03-09 20:34:29 +00:00
Daniel Barlow
8c39b47cae
output-template: allow splicing statements instead of expression
...
if the text inside the delimiters begins with ; (a semicolon) then
the rest of it is expected to be one or more Lua statements. It needs
to say `return "foo"` to interpolate anything, as there is no
implicit return of the value of the last statement
2025-03-05 22:38:48 +00:00
Daniel Barlow
2c7a16d792
firewallgen: add extraText param to set
...
anything in here is added verbatim to the set definition
2025-03-05 22:36:35 +00:00
Daniel Barlow
d6b06abb63
delet second copy of output-template
2025-03-02 21:34:02 +00:00
Daniel Barlow
234d1bd87e
basic unit tests for output-template
2025-03-02 21:14:46 +00:00
Daniel Barlow
c38f180fb7
output-template expose table module
2025-03-02 21:14:16 +00:00
Daniel Barlow
9a8b22997c
output-template: pass the tests
2025-03-02 21:09:32 +00:00
Daniel Barlow
c32d09bd83
output-template: run the tests
2025-03-02 21:09:11 +00:00
Daniel Barlow
6649ebeccd
firewall: use watch-outputs to track changes in zone->interface map
...
includes a horrible hack to work around (claimed (by me)) deficiencies
in the nftables parser
2025-02-28 00:43:20 +00:00
Daniel Barlow
929226ed9e
delete commented code
2025-02-27 20:55:30 +00:00
Daniel Barlow
024c018262
run the output-template test
2025-02-22 00:10:19 +00:00
Daniel Barlow
7e2b0068e6
nixfmt-rfc-style
...
There is nothing in this commit except for the changes made by
nix-shell -p nixfmt-rfc-style --run "nixfmt ."
If this has mucked up your open branches then sorry about that. You
can probably nixfmt them to match before merging
2025-02-10 21:55:08 +00:00
Daniel Barlow
4bb081ffcf
export anoia.svc:fileno so it can be used with event loops
2025-02-10 21:21:08 +00:00
Daniel Barlow
1d780de0f1
add (very basic) set support in firewallgen
...
and add sets for lan/wan/dmz/guest interface names to default
firewall rules
2025-02-10 21:17:43 +00:00
Arnout Engelen
e71d92eb3d
OpenWrt One support
...
https://openwrt.org/toh/openwrt/one
2025-01-07 16:10:04 +01:00
Daniel Barlow
350ddde260
add pkgs.openwrt_24_10
...
is needed by Belkin RT3200 and might also be handy for OpenWrt One?
this is very copy-pastey, will tidy it up after it
stops being a moving target
2025-01-03 23:52:08 +00:00
Daniel Barlow
aa2160dd05
logtap: fix indentation
...
spaces not tabs
2025-01-02 22:45:00 +00:00
Daniel Barlow
788169586f
/boot is a directory, copy files instead of replacing it with symlink
...
for the record, u-boot doesn't like having /boot/fit -> ../nix/store/..../fit
symlinks so we don't use symlinks inside /boot either
2025-01-01 12:29:25 +00:00
Daniel Barlow
9dd169d500
add "config" output to kernel derivation
2025-01-01 11:54:46 +00:00
Daniel Barlow
48dfbe0c01
add nginx-small : nginx with finegrained configure options
2024-12-29 20:47:03 +00:00
Daniel Barlow
fe1ee12e3d
swap strchr for strchrnul in dropbear authkeyfile patch
...
The strchrnul version was giving weird crashes on aarch64
belkin-rt3200. I haven't figured out why but this one doesn't
2024-12-29 13:30:21 +00:00
Arnout Engelen
a89f866bf0
use Linux kernel sources associated with openwrt by default
2024-12-24 12:21:28 +00:00
Daniel Barlow
f60b74f415
add a new updater output
...
this is so that we don't have to obfuscate store paths in
systemConfiguration to avoid dragging in build system
deps.
breaking-ish change to workflows, docs updated
2024-12-20 00:05:07 +00:00
Daniel Barlow
812e35b7b9
systemconfig: improve filenames/pathnames
...
no more make-stuff
2024-12-19 22:28:30 +00:00
Daniel Barlow
b52133a28b
add hardware.dts.includes option
2024-12-17 20:36:14 +00:00
Daniel Barlow
2e5a8a572e
tufted: more robust merge-pathname impl
2024-12-17 17:24:40 +00:00
Daniel Barlow
464d046b5a
append-path spec behaviour for repeated /
2024-12-17 17:24:16 +00:00
Daniel Barlow
ac8b971cc0
new fn append-path in anoia
...
complains if you try to ../../../
2024-12-11 17:26:44 +00:00
Daniel Barlow
13087d17e3
use assert macros in anoia/init.fnl
...
there is no circularity (maybe there was once?)
2024-12-11 17:25:39 +00:00
Daniel Barlow
91bdfc2766
remove apparently obsolete rp-pppoe configure setting
...
this were copied from nixpkgs but perhaps is for an older version of
rp-pppoe because it builds just fine without
2024-10-16 22:56:05 +01:00
Daniel Barlow
888688ce28
buuld ppp with path to /run
2024-10-16 18:57:26 +01:00
Daniel Barlow
72171021e3
support finish script in longrun
2024-10-10 18:26:14 +01:00
Daniel Barlow
e383f1b3d3
obfuscate store path for min-copy-closure
...
otherwise the systemconfig closure drags in a bunch of build system
things (bash, etc) which we don't want or need to copy to the device
2024-10-10 16:25:00 +01:00
Daniel Barlow
541b1c61c2
ensure $toplevel is path in /nix/store
2024-10-09 18:59:33 +01:00
Daniel Barlow
55c7410a55
add result/install.sh to systemConfiguration output
...
this makes it possible to install a systemconfig instead of
having to use nix-shell (which is very slow)
2024-10-09 13:35:02 +01:00
Daniel Barlow
0f50648157
don't put hostname in levitate logs
...
there might not be one
2024-10-08 22:55:39 +01:00
Daniel Barlow
b9999857cb
longrun: don't add logger if producer-for is already set
2024-10-06 13:13:04 +01:00
Daniel Barlow
1a915e91ff
add altname to CSR
2024-10-06 10:13:28 +01:00
Daniel Barlow
197e2eb5b1
new package certifix-client uses certifix to sign ssl client cert
...
this is initially for TLS-enabled logging but would be useful for
anything on a liminix box that wants to talk to a network service in a
"zero trust" setup
2024-10-03 23:00:08 +01:00
Daniel Barlow
17630f2678
rename logtee->logtap
2024-09-18 20:58:02 +01:00
Daniel Barlow
d3fce5edd4
implement error() for musl
2024-09-16 20:35:23 +01:00