Commit Graph
100 Commits
Author SHA1 Message Date
Daniel Barlow 2480fdef5b set up nginx on bordervm for testing outboard secrets 2024-08-10 23:05:50 +01:00
Daniel Barlow 409c1cfb16 think 2024-08-10 23:05:15 +01:00
Daniel Barlow 9767078878 add the example used in the video 2024-08-08 19:24:58 +01:00
Daniel Barlow d760c2d27b http-fstree downloads a json file and converts to service outputs 2024-08-08 15:35:11 +01:00
Daniel Barlow 1e139c22fd think 2024-08-08 15:21:24 +01:00
Daniel Barlow a1ff07b063 add rxi/json lua module 2024-08-08 15:05:26 +01:00
Daniel Barlow 9550772cec add lua binding to fetch-freebsd 2024-08-08 15:05:03 +01:00
Daniel Barlow 64cd1626c6 new package fetch-freebsd: small http(s) client library
[*] smaller than curl, maybe not maximally small
2024-08-08 11:38:38 +01:00
Daniel Barlow eb79928b37 anoia.svc allow writing outputs 2024-08-08 11:37:50 +01:00
Daniel Barlow 0a629df48d anoia.fs: improve error messages 2024-08-08 11:36:47 +01:00
Daniel Barlow 64afd18e2a why does this fail on hydra? 2024-08-06 23:18:39 +01:00
Daniel Barlow 47e96ddc15 think 2024-08-06 18:43:49 +01:00
Daniel Barlow 5db9d7269e ppoe structured options are optional 2024-08-06 18:43:27 +01:00
Daniel Barlow 985df8792d overlay: handle cross-only overrides consistently 2024-08-06 18:42:58 +01:00
Daniel Barlow 528afae8b1 doc: punctuate 2024-08-06 14:15:57 +01:00
Daniel Barlow 384835c89d admin doc: updte round-robin, explain health check 2024-08-06 14:14:52 +01:00
Daniel Barlow 5051625d31 mention health check in docs 2024-07-30 22:53:21 +01:00
Daniel Barlow c4d00e062a add health check service and example that uses it 2024-07-30 22:37:43 +01:00
Daniel Barlow 8fa3443923 Revert "anoia.svc use timeout for inotify"
This reverts commit eca8e37e7a.
2024-07-30 17:37:38 +01:00
Daniel Barlow 8091e207b6 some notes on controlled services 2024-07-28 22:57:23 +01:00
Daniel Barlow 39020607ad rename service-trigger rule to match service name 2024-07-28 22:35:37 +01:00
Daniel Barlow fe735408a1 v:address is nil if missing, but code expects an array 2024-07-27 17:40:32 +01:00
Daniel Barlow a9d1582b53 remove unused arg 2024-07-26 23:41:50 +01:00
Daniel Barlow eca8e37e7a anoia.svc use timeout for inotify
in case we miss a message, check the directory every 5s
anyway
2024-07-26 23:40:40 +01:00
Daniel Barlow d300373b96 anoia fs.dir use case not match
match was accidentally pinning the return from readdir against the
function parameter. Which didn't work.
2024-07-26 23:37:40 +01:00
Daniel Barlow 70ca7fac17 elfutils is reqd by iproute2 (for bpf?), build sans kitchen sink 2024-07-24 22:07:58 +01:00
Daniel Barlow 79a3a45061 build iproute2 without rb to avoid stdatomic 2024-07-24 21:13:55 +01:00
Daniel Barlow 612d6d7a51 build openssl without threads to avoid stdatomic 2024-07-24 21:12:52 +01:00
Daniel Barlow e1ae986cf6 convert l2tp example to use gateway profile 2024-07-23 09:31:34 +01:00
Daniel Barlow bce0c7ffb6 rename services.dhcpc in l2tp example
it's only used to get the address of the l2tp server, not for
name lookups in general
2024-07-23 09:31:34 +01:00
Daniel Barlow 28ca1e68ab wwan module needs mdevd 2024-07-23 09:31:34 +01:00
Daniel Barlow acf33a100f think 2024-07-23 09:31:34 +01:00
Daniel Barlow 7f9cae9d5c generalise profile.gateway.wan so not just pppoe 2024-07-23 09:31:34 +01:00
Daniel Barlow 3012c91b47 executive decision: rotuer example should build on gl-ar750 2024-07-23 09:31:34 +01:00
Daniel Barlow 1edf20c08f fix whitespace 2024-07-23 09:31:34 +01:00
Daniel Barlow 7195cb10ce add structured config for common pppoe options 2024-07-23 09:31:34 +01:00
Daniel Barlow 135a445672 restore param removed by deadnix
dochain is called with `family` even if it never uses it
2024-07-16 20:41:21 +01:00
Daniel Barlow 3899daee56 create a module for round-robin 2024-07-15 22:37:37 +01:00
Daniel Barlow b17f623d03 need insmod when we habve kmodloader 2024-07-15 22:35:26 +01:00
Daniel Barlow df395a4d5d finish moving pkgs.linimix.callService to config.system 2024-07-15 19:00:08 +01:00
Daniel Barlow 75e9f8210c remove the fixpoint we didn't need 2024-07-15 18:54:04 +01:00
Daniel Barlow 1c3242cab1 doc: swap order of configuration and installation
you can get a device up and running using a lightly edited example
config before you need to read all the reference info, so let's
have the documentation in that order.
2024-07-14 12:26:07 +01:00
Daniel Barlow 44ea683391 think 2024-07-14 12:08:02 +01:00
Daniel Barlow 725d8b608f huawei-cdc-ncm kernel driver -> module 2024-07-14 12:07:28 +01:00
Daniel Barlow bc9ced5d38 fix doc ref from admin section -> configuration 2024-07-14 11:56:35 +01:00
Daniel Barlow 73ae7788b9 rename wwan-related modules/services
we only currently support huawei e3372/cdc ncm so let's make that
explicit in the naming
2024-07-14 11:53:45 +01:00
Daniel Barlow d34919766a improve reinstallation docs 2024-07-12 18:38:04 +01:00
Daniel Barlow 2fe0cd2f48 add first draft instructions for using Levitate 2024-07-12 00:17:25 +01:00
Daniel Barlow 241f1013ed add new Installation guide
move the u-boot/serial stuff here from development, as the
reality of Liminix development in 2024 is that serial connection
is still the smoothest installation method
2024-07-11 23:31:00 +01:00
Daniel Barlow 2ce361d4e3 think 2024-07-11 09:39:38 +01:00
Daniel Barlow 3f8cc24dcc fix most doc warnings 2024-07-10 23:36:24 +01:00
Daniel Barlow 57e3b449f8 proofreading 2024-07-10 21:23:24 +01:00
Daniel Barlow 3964505131 some notes on services 2024-07-10 20:50:08 +01:00
Daniel Barlow 941479b144 use round-robin failiover in l2tp example 2024-07-08 22:01:54 +01:00
Daniel Barlow ac551536da set cwd before exec xl2tpd 2024-07-08 21:56:26 +01:00
Daniel Barlow 6f908156af fix dependency between modem-atz and modeswitch
for values of "fix" more than slightly reminiscent of "kludge"
2024-07-08 21:55:05 +01:00
Daniel Barlow 534a49e827 s6-rc-round-robin
runs services in order, starting the next one when the previous one
dies or fails to start
2024-07-08 21:53:51 +01:00
Daniel Barlow 07a6eb73cd set lcp-echo timeout in l2tp 2024-07-08 21:45:54 +01:00
Daniel Barlow 159bfa3057 make xl2tpd quit when the connections close 2024-07-08 21:44:15 +01:00
Daniel Barlow 8f0ab5be40 enable tail -F 2024-07-08 21:37:07 +01:00
Daniel Barlow 7f9971512d a6-rc-up-tree: handle blocked deps, exit 1 if nothing started 2024-07-08 21:28:31 +01:00
Daniel Barlow f0f6cc80d7 remove dead code 2024-07-08 21:28:11 +01:00
Daniel Barlow afcc6a6436 s6-rc-up-tree pass -b to s6-rc command 2024-07-08 21:27:54 +01:00
Daniel Barlow 2e8e05f31a wip: rewrite s6-rc-up-tree in an actual procgramming language
and write some tests for it, too
2024-07-08 21:27:42 +01:00
Daniel Barlow 143137cbc6 pppoe: set lcp echo failure timeout 2024-07-08 21:25:42 +01:00
Daniel Barlow 8d228f2bef mess with redial 2024-07-08 21:24:44 +01:00
Daniel Barlow 5751058d59 gl-ar750 swap lan and wan
I don't know if I just got it wrong the first time or if something
weird is going on
2024-07-08 21:19:30 +01:00
Daniel Barlow 5ac7e1e9b2 write-fennel: set $PATH if lualinux is available 2024-07-08 21:18:02 +01:00
Daniel Barlow c75452549b think 2024-07-08 21:17:12 +01:00
Daniel Barlow 2663f58807 disable security for bordervm "liminix" share
tftp needs to be able to follow symlinks into the store
2024-07-01 20:53:03 +01:00
Daniel Barlow 9dbc285605 build libusb1 without libatomic 2024-06-30 17:52:17 +01:00
Daniel Barlow 8b6aa2134e zyxel dual image; restore deleted params 2024-06-30 17:50:45 +01:00
Daniel Barlow 3df1ec76ff cleanup whitespace and commas
* [] is now [ ]
* {} is now { }
* commas in arglists go at end of line not beginning

In short, I ran the whole thing through nixfmt-rfc-style but only
accepted about 30% of its changes. I might grow accustomed to more
of it over time
2024-06-30 17:16:28 +01:00
Daniel Barlow 0d3218127f remove unused makeWrapper input 2024-06-30 10:46:37 +01:00
Daniel Barlow e94bf62ec1 remove dead code (run deadnix) 2024-06-29 22:59:27 +01:00
Daniel Barlow 16a2499d74 avoid makeWrapper on host, it requires bash 2024-06-29 22:36:05 +01:00
Daniel Barlow d4d8093f97 working l2tp-over-wwan stick example 2024-06-20 10:15:54 +01:00
Daniel Barlow 7c9c801afc rename isTrigger to restart-on-upgrade
we're moving away from "trigger" services to "controller" services,
and "restart-on-upgrade" is the name used by s6-rc
2024-06-16 12:58:06 +01:00
Daniel Barlow c4185617c0 a6-rc-up-tree wait for lock if needed 2024-06-15 15:36:07 +01:00
Daniel Barlow 06d28e9b08 dhcpc handle case when env vars are missing
the notify-script should continue and signal readiness even if one or
more of the outputs it writes are mssing in the environment
2024-06-15 15:34:49 +01:00
Daniel Barlow 9540fc2641 add writeAshScriptBin (forgot to add file) 2024-06-15 15:04:56 +01:00
Daniel Barlow adc84108ad Revert "wwan gets address from ppp ipcp not dhcp"
This reverts commit be13ab23ca.
2024-06-15 15:04:33 +01:00
Daniel Barlow eae99051fa exec devout in service definition
makes little practical difference but saves a process slot
2024-06-15 15:01:57 +01:00
Daniel Barlow 49d1703428 add s6-rc-up-tree: start reverse deps of controlled service
When s6-rc stops a service, it also stops everything that
depends on it. but when it starts a service it starts only
that service, so we have to go through the other services
depending on it and figure out if they should be started too.
2024-06-15 14:59:34 +01:00
Daniel Barlow 1d337588f9 think 2024-06-15 09:04:19 +01:00
Daniel Barlow 29a869b4fa qemu: use kmodloader for wifi 2024-06-13 10:12:17 +01:00
Daniel Barlow 5ae1b0a193 Revert "bodervm: remove usbutils until we can fix the udev dep"
This reverts commit c22e3fb2ef.
2024-06-12 20:58:13 +01:00
Daniel Barlow 473a4947a5 inout test: wait longer for disk to appear 2024-06-12 20:44:03 +01:00
Daniel Barlow 50bad5c604 libusb needs udev on build
this is a workaround to make CI work again, but what we really need to
do is completely separate the nixpkgs used for nixos build-system
tools from the nixpkgs we use for liminix host binaries
2024-06-12 18:55:30 +01:00
Daniel Barlow c22e3fb2ef bodervm: remove usbutils until we can fix the udev dep 2024-06-12 13:07:29 +01:00
Daniel Barlow f898e4dca2 remove debug 2024-06-12 13:03:26 +01:00
Daniel Barlow 5121a8563d callService: dependencies are services not names 2024-06-12 12:58:57 +01:00
Daniel Barlow 78be354b6e think 2024-06-12 12:52:52 +01:00
Daniel Barlow be13ab23ca wwan gets address from ppp ipcp not dhcp 2024-06-12 12:51:07 +01:00
Daniel Barlow 4b30cd7a75 think 2024-06-11 14:05:32 +01:00
Daniel Barlow b15542b668 start correct services at boot
- uncontrolled services that are not dependent on a controlled service
- controllers
- _not_ controlled services or any other service that depends on one
2024-06-11 14:04:14 +01:00
Daniel Barlow 6daeaf29a0 flip controller/controlled relationship for wwan services 2024-06-11 14:02:48 +01:00
Daniel Barlow e6ca5ea064 store derivations not just names for service deps
.. also controllers, contents. This is to make it possible (easier)
to work out transitive dependencies at build time
2024-06-11 14:01:06 +01:00
Daniel Barlow e6e4665a18 flip dependencies for triggered/controlled services
Instead of treating the trigger as the "main" service and the
triggered service as subsidary, now we treat the triggered
service as the service and the trigger as "subsidary". This
needs some special handling when we work out which services
go in the default bundle, but it works better for declaring
dependencies on triggered services because it means the
dependency runs after the triggered service comes up, not
just when the watcher-for-events starts
2024-06-09 22:37:45 +01:00
Daniel Barlow 2c10790a6d think 2024-06-09 11:19:38 +01:00