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
Daniel Barlow
571adf84c0
inherit builtins.map
2024-06-07 16:55:45 +01:00
Daniel Barlow
c8c79fd75a
update all calls to uevent-watch
2024-06-02 20:42:09 +01:00
Daniel Barlow
884d8d194e
wrap uevent-watch in a service
2024-06-02 20:42:09 +01:00
Daniel Barlow
f091bbd706
devout: recognise attr,attrs when parsing search term string
2024-06-01 23:48:05 +01:00
Daniel Barlow
37d7e20582
wwan use uevent-watch to find tty for AT commands
2024-06-01 23:47:20 +01:00
Daniel Barlow
04b068f7a3
delete unused code
2024-06-01 22:43:48 +01:00
Daniel Barlow
53f57c1a8c
devout: support sysfs attributes for (grand*)parent device
2024-06-01 22:43:27 +01:00
Daniel Barlow
19aba0d873
devout: support search for sysfs attributes
2024-06-01 21:20:41 +01:00
Daniel Barlow
7d00b39249
rename attributes->properties when referring to uevent fields
...
properties: key-value pairs in the uevent message
attributes: file contents in sysfs
2024-06-01 12:17:49 +01:00
Daniel Barlow
7aa8633cde
think
2024-06-01 12:16:21 +01:00
Daniel Barlow
58bec8a40f
semi-automate tftpbooting with minicom
2024-05-26 18:03:32 +01:00
Daniel Barlow
a3fca5bf05
devout: add functions to read sysfs attributes
2024-05-26 18:03:32 +01:00
Daniel Barlow
e0bd7aec1e
wwan: hook usb-modeswitch to uevent
2024-05-26 18:03:32 +01:00
Daniel Barlow
e815f61bb5
think
2024-05-26 18:00:31 +01:00
Daniel Barlow
af9200a136
skip symlink handing unless linkname was provided
2024-05-26 18:00:31 +01:00
Daniel Barlow
898958fa10
make a serviceDefn for wwan
2024-05-22 18:54:49 +01:00
Daniel Barlow
fa0f262706
commentary
2024-05-22 18:54:49 +01:00
Daniel Barlow
71aeb27b2f
add hacky wwan service with hardcoding all over
2024-05-22 18:54:49 +01:00
Daniel Barlow
530b4080c9
create cdc-ncm module
2024-05-22 18:54:49 +01:00
Daniel Barlow
58cd007ccc
barebones usb_modeswitch package
2024-05-22 18:54:49 +01:00
Daniel Barlow
3a56798eb5
l2tp set default route via tunnel
2024-05-22 18:54:49 +01:00
Daniel Barlow
758c7ef657
exec xl2tpd
...
haven't fully worked out why, but without this s6 is unable to stop it.
2024-05-22 18:54:49 +01:00
Daniel Barlow
73225a70b2
add rudimentary l2tp service module
2024-05-22 18:54:49 +01:00
Daniel Barlow
ab304dd3f1
bordervm enable nat
2024-05-22 18:47:37 +01:00
Daniel Barlow
0d49f0f7a7
gl-ar750 appendDTB
2024-05-22 18:47:16 +01:00
Daniel Barlow
e64390460a
memorable net device names for gl-ar750
...
linux's view of eth1 and eth0 are opposite to that of u-boot
2024-05-22 18:47:08 +01:00
Daniel Barlow
c0ef6ce282
list pkgs we need in bordervm build
...
it's a bit silly trying to build it with the whole liminix overlay
when it's a nixos system not a liminix system
2024-05-22 18:45:35 +01:00
Daniel Barlow
bd6ec5201f
run dhcp server on bordervm
...
this is for testing clients that have dhcp upstream
2024-05-22 18:45:35 +01:00
Daniel Barlow
b4068da9fe
tftp addresses
2024-05-22 18:45:35 +01:00
Daniel Barlow
aa4b09da85
think (foreshadowing)
2024-05-22 18:45:23 +01:00
Daniel Barlow
471c63b399
s6-rc do cleanup in "finish", don't append to "run" script
...
s6-supervise sends signals (e.g. SIGTERM) to the pid of the process
running "run", so how do we know if the ceanup commands are even
getting executed if the shell interpreter that is supposed to do that
got killed already?
2024-05-13 17:53:02 +01:00
Daniel Barlow
782feaeafa
set default for firewall extraRules
2024-05-03 16:28:53 +01:00
Daniel Barlow
ac54c89427
add busybox to bordervm for udhcpd
2024-05-01 23:09:23 +01:00
Daniel Barlow
5a3646cb29
add authorized keys to bordervm
...
You don't often need this because it has autologin, but sometimes
you want to do antics involving sshing through it to the wan port
of a test device.
Note that you probably wanted to start bordervm with funny qemu
options to even make that possible
nix-shell --run "QEMU_NET_OPTS=hostfwd=tcp::10022-:22 run-border-vm"
2024-05-01 23:07:11 +01:00
Daniel Barlow
e249f48cff
add deps on {ins,rm}mod and kconfig for firewall module
2024-05-01 23:06:12 +01:00
Daniel Barlow
6661e42684
mt300a tftpboot needs appendDTB
2024-05-01 23:04:25 +01:00
Daniel Barlow
b9ba9ef835
mt300a remove unneeded service dependencies
2024-05-01 23:03:55 +01:00
Daniel Barlow
8b69dcc209
pass entire config fragment to levitate, not just services
...
to make it useful we need to be able to set packages, passwords, ssh
keys etc
2024-04-29 20:07:01 +01:00
Daniel Barlow
9b3a3b9ff7
add levitate to arhcive
...
this is largely untested
2024-04-28 21:38:13 +01:00
Daniel Barlow
7d08497bcb
arhcive remove coldplug fudge
2024-04-28 21:37:30 +01:00