Daniel Barlow
db4f098c02
add fit bootloader
...
this is for the belkin rt3200, whose uboot doesn't do
extlinux but can load a fit from a ubifs. It adds the
a kernel+dtb as /boot/fit
2024-12-23 11:21:58 +00:00
Daniel Barlow
1347937345
rename file
2024-12-23 10:31:22 +00:00
Daniel Barlow
a7b5f80674
rename extlinux output to bootfiles
...
this is in preparation for introducing other non-extlinux
modules that populate /boot
2024-12-23 00:09:31 +00:00
Daniel Barlow
5c78338d71
make mtdutils use no-systemd util-linux
2024-12-22 23:24:11 +00:00
Daniel Barlow
ed02d02767
bump NEWS
2024-12-22 21:12:36 +00:00
Daniel Barlow
f07a38b0fd
extract uimage output module into own file
2024-12-22 21:10:07 +00:00
Daniel Barlow
ac189f2977
outputs.zimage -> outputs.kernel.zImage
...
remove config option/derivation in favour of accessing
as output of the kernel derivation (matches what we do
with e.g. modulesupport)
2024-12-22 17:27:59 +00:00
Daniel Barlow
ebb4d4a831
think
2024-12-22 16:03:24 +00:00
Daniel Barlow
6bfbdf352d
bordervm: expose ssh on port 2222
2024-12-22 16:01:38 +00:00
Daniel Barlow
4ea1cf7f32
rt3200 better install docs
2024-12-20 22:26:40 +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
172f368633
fix markup
2024-12-19 21:59:04 +00:00
Daniel Barlow
1af9a39db1
omnia: delete pstore config we're probably not using
2024-12-19 20:59:52 +00:00
Daniel Barlow
420552ce98
add omnia to ci
2024-12-19 20:56:05 +00:00
Daniel Barlow
56c667cfd5
extract systemConfiguration into its own output module
2024-12-19 20:55:10 +00:00
Daniel Barlow
f9b4f0bc9c
move modules/squashfs.nix into outputs/
2024-12-19 14:33:50 +00:00
Daniel Barlow
ba5e4704a0
add short note about persistent logs
2024-12-18 23:08:28 +00:00
Daniel Barlow
3357d21d7f
enlarge pmsg buffer to full size of ramoops region
...
4k was a piddly amount and we weren't using the rest of it for
anything else
2024-12-18 21:16:49 +00:00
Daniel Barlow
ffaca615ba
copy logs to /dev/pmsg0 when ogging.persistent.enabled
2024-12-18 21:11:58 +00:00
Daniel Barlow
77cd4492b2
unbreak nix-shell
2024-12-17 23:26:56 +00:00
Daniel Barlow
81f5550bf0
config.logging.persistent enables /dev/pmsg0
...
- whatever's written to /dev/pmsg0 appears as
/sys/fs/pstore/pmsg-ramoops-0 after reboot
- only works on devices with the relevant device tree
support (gl-ar750 and whatever has it by default)
- nothing in the system is actually writing this file yet
- or reading it at boot time, for that matter
2024-12-17 23:24:31 +00:00
Daniel Barlow
b52133a28b
add hardware.dts.includes option
2024-12-17 20:36:14 +00:00
Daniel Barlow
44caefcd3b
rename config.hardware.dts.includes -> includePaths
...
(1) it's a better name
(2) I want to use `includes` to specify dtsi files
2024-12-17 17:41:53 +00:00
Daniel Barlow
6e6b8790eb
think
2024-12-17 17:24:52 +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
5572c0ecb0
rewrite parts of inout test to be differently wrong
2024-12-09 23:36:22 +00:00
Daniel Barlow
4cbe3ba683
add some debug output in inout test
2024-12-09 21:00:11 +00:00
Daniel Barlow
20f4a12689
inout: improve robustness, maybe?
2024-12-07 16:02:42 +00:00
Daniel Barlow
33e5c436d5
add environment variables that scapy now needs (24.11)
2024-12-04 21:16:36 +00:00
Daniel Barlow
cde30bcd54
in nixos 24.11 chrony no longer expects nss/nspr/readline
2024-12-03 21:39:54 +00:00
Daniel Barlow
1f7d6544e3
provide stdout to ppp callback scripts
...
pppd runs them with 0,1,2 => /dev/null but we actually quite like
seeing errors in the logs
2024-10-17 21:37:08 +01:00
Daniel Barlow
1bca072509
fix chrony pidfile error
2024-10-17 21:35:33 +01:00
Daniel Barlow
7b98724643
turns out we did need usepeerdns
2024-10-17 21:05:16 +01:00
Daniel Barlow
b1625763ee
ppp service signal readiness only when ip-up has run
...
as downstream services need e.g. ifname which is not written by ipv6-up
2024-10-16 22:59:01 +01: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
14bfebc5c3
enable unloading modules so that scripts work
...
if we can't unload them then the service that loads them will fail
the second time it's run
2024-10-16 22:54:19 +01:00
Daniel Barlow
0447ac0ff9
did we need MODULE_SIG?
...
I think this may be a hangover from using backports modules for wlan
2024-10-16 22:53:16 +01:00
Daniel Barlow
e35a1514ab
send kernel logs to s6
2024-10-16 18:59:42 +01:00
Daniel Barlow
4a0120487c
remove usepeerdns - it causes only errors
...
we handle dns with service outputs anyway
2024-10-16 18:58:34 +01:00
Daniel Barlow
888688ce28
buuld ppp with path to /run
2024-10-16 18:57:26 +01:00
Daniel Barlow
9e3f48768e
think
2024-10-14 18:49:10 +01:00
Daniel Barlow
72171021e3
support finish script in longrun
2024-10-10 18:26:14 +01:00
Daniel Barlow
17517dd34f
remove KEXEC from base kernel config
...
we're not using it any more
2024-10-10 18:23:50 +01:00
Daniel Barlow
5112eab4da
apply incoming-allowed-ip[46] rules to input as well as forward pkts
...
this makes it possible to open ports on the router itself
2024-10-10 18:18:23 +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
da1245432e
no more iminix-rebuild
2024-10-09 19:34:55 +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
f1c260d4f7
make ci.ni "all" a derivation
...
this is to stop hydra complaining
2024-10-06 18:04:56 +01:00
Daniel Barlow
3d611d3ba2
fix unstable qemu build?
...
nix-repl> (lib.versionOlder "24.11pre-git" "24.11")
true
nix-repl> (lib.versionOlder "24.11pre-git" "24.10")
false
n
2024-10-06 18:04:48 +01:00
Daniel Barlow
e6b7d86381
sort lines
2024-10-06 17:53:34 +01:00
Daniel Barlow
83fbffb39b
catch another uncaught-logs
2024-10-06 17:53:09 +01:00
Daniel Barlow
f8c579b41e
add CI "all" target
2024-10-06 17:52:59 +01:00
Daniel Barlow
ca9efc4b26
simplify CI
...
* I didn't know what I was doing when I set up Hydra
* it's not certain that I do now either, but hey ho
2024-10-06 15:55:01 +01:00
Daniel Barlow
336fc7e495
think
2024-10-06 14:27:45 +01:00
Daniel Barlow
4cc0add2ad
update refs to uncaught-logs in docs/tests
2024-10-06 13:46:14 +01:00
Daniel Barlow
2d7e6188ac
log shipping service now gets logs on stdin
...
instead of having to open the unix socket
2024-10-06 13:26:58 +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
ba03ddeb38
border-vm: add tang service
2024-10-06 12:38:06 +01:00
Daniel Barlow
493c5f69d7
add module for certifix-client
2024-10-06 11:27:39 +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
7ca822c826
more messing around with lua derivation
2024-10-03 23:00:08 +01:00
Daniel Barlow
e5631783e1
add luaossl package with patch for CSR attributes
2024-10-03 23:00:08 +01:00
Daniel Barlow
635590d37a
implement log shipping config
...
to use this, you need config like for example
+ logging.shipping = {
+ enable = true;
+ service = longrun {
+ name = "ship-logs";
+ run = let path = lib.makeBinPath (with pkgs; [ s6 s6-networking s6 execline ]);
+ in ''
+ PATH=${path}:$PATH
+ s6-ipcserver -1 ${config.logging.shipping.socket} \
+ s6-tcpclient 10.0.2.2 19612 \
+ fdmove -c 1 7 cat
+ '';
+ };
+ };
but I think we can reduce the noise a bit if we use an s6-rc pipeline
with an s6-ipcserver on one side and and a (whatever the user wants)
on the other
2024-09-18 22:14:34 +01:00
Daniel Barlow
17630f2678
rename logtee->logtap
2024-09-18 20:58:02 +01:00
Daniel Barlow
707a471bc2
add logtee to catchall logger
2024-09-16 21:30:06 +01:00
Daniel Barlow
d3fce5edd4
implement error() for musl
2024-09-16 20:35:23 +01:00
Daniel Barlow
5771108fed
improve logtee socket connection warning
...
* print it less often
* to the correct stream (stdout not stderr)
2024-09-16 20:34:26 +01:00
Daniel Barlow
9e5f2d663d
close socket fd if we can't connect it
2024-09-15 22:09:31 +01:00
Daniel Barlow
21eeb1671e
print diagnostic when eof on stderr
2024-09-15 21:59:24 +01:00
Daniel Barlow
44762d38fc
write start cookie when socket connect succeeds
2024-09-15 21:54:21 +01:00
Daniel Barlow
1f6cfc3679
extract method is_connected
2024-09-15 21:40:05 +01:00
Daniel Barlow
8ec00f1710
improve error message
2024-09-15 21:37:04 +01:00
Daniel Barlow
6a6dd32dea
make pollfd array global
2024-09-15 21:32:48 +01:00
Daniel Barlow
9b1fc11a59
logshipper/logtee :copy stdin to stdout & to a unix socket if present
...
first draft
2024-09-15 19:33:21 +01:00
Daniel Barlow
aaa6e353db
incz is a very rudimentary log shipper for zinc search
...
although it probably would work with elasticsearch as well
as zinc is alleged to be ES-compatible
this is just the package and needs hooking into the service/log
infrastructure somehow
2024-09-08 16:38:37 +01:00
Daniel Barlow
69bf6cb5fb
write-fennel quote PATH properly
...
escapeShellArg only quotes if the string contains special
characters, but for a Lua string we must quote unconditionally
2024-09-07 22:31:44 +01:00
Daniel Barlow
9f58e7b926
maybe fix nixpkgs-unstable lua
2024-09-07 00:58:11 +01:00
Daniel Barlow
5a5c27ab9f
think
2024-09-06 22:37:49 +01:00
Daniel Barlow
277c91acdf
Revert "remove luaposix ref in write-fennel"
...
This reverts commit a60c2539a6 .
2024-09-06 00:33:30 +01:00
Daniel Barlow
e0725489ca
unbreak pppoe ci job
2024-09-06 00:33:30 +01:00
Daniel Barlow
cc47515cf8
watch-outputs remove debug code
2024-09-06 00:13:54 +01:00
Daniel Barlow
464913cc8f
tangc use spawn to invoke jose
...
hopefully we are now deadlock-free
2024-09-06 00:12:45 +01:00
Daniel Barlow
e604d628e3
fennel anoia.process.spawn
...
runs a subprocess and invokes a callback whenever its io
descriptors are ready
2024-09-06 00:11:33 +01:00
Daniel Barlow
e2a597589b
anoia.fs.find-executable looks for bin in colon-sep list of directories
2024-09-06 00:08:40 +01:00
Daniel Barlow
6a5fed83dd
conditional fetch in json-to-fstree
2024-09-05 11:14:47 +01:00
Daniel Barlow
bcf5ab24e8
tidy watch-outputs startup message
2024-09-05 10:11:16 +01:00
Daniel Barlow
32bf80c6fa
devout: unlink socket pathname before binding
2024-09-05 10:05:13 +01:00
Daniel Barlow
12275f6896
add more test for table=
2024-09-04 21:21:30 +01:00
Daniel Barlow
a60c2539a6
remove luaposix ref in write-fennel
2024-09-04 21:21:02 +01:00
Daniel Barlow
146a2d9ac0
fix startup race/fencepost in watch-ssh-keys
...
if it starts _after_ the outputs are populated, it should
write the first lot of outputs without waiting for a change
2024-09-04 21:19:51 +01:00
Daniel Barlow
091d863710
extract pppoe/l2tp common code
2024-09-04 12:02:00 +01:00
Daniel Barlow
c7bcfbfa34
make pppoe/l2tp more consistent
2024-09-03 22:57:45 +01:00
Daniel Barlow
500a3c1025
make nodefaultroute explicit in ppp
2024-09-03 22:53:13 +01:00