Commit graph

43 commits

Author SHA1 Message Date
Daniel Barlow
535eb70bb9 convert all route defns to module-based-service 2023-08-31 23:52:59 +01:00
Daniel Barlow
44c1fb7632 delete now-unused (pkgs.liminix.network) interface address 2023-08-31 18:30:22 +01:00
Daniel Barlow
1580857fde extract common "interface up" code to a string
so that bridge service can use it
2023-08-28 22:02:28 +01:00
Daniel Barlow
540a1dfd76 remove interface.device
build-time uses can mostly be replaced with interface.name

for runtime uses, switch to $(output ${interface} name)
2023-08-28 22:02:28 +01:00
Daniel Barlow
6da0e67621 create outputs for network interface 2023-08-27 22:41:26 +01:00
Daniel Barlow
2ad203ce1f delete unused functoins in liminix-tools 2023-08-21 19:29:00 +01:00
Daniel Barlow
648ea5613b use module-based-service for hostapd 2023-07-16 17:51:50 +01:00
Daniel Barlow
669af24247 make a module for dnsmasq 2023-07-14 23:18:21 +01:00
Daniel Barlow
df6cfe1cd5 move pppoe service derivation into ppp module dir 2023-07-14 21:35:59 +01:00
Daniel Barlow
682183a88d move typeChecked into pkgs.liminix.lib 2023-07-14 20:22:29 +01:00
Daniel Barlow
69e6eb5a89 accept attr args to pppoe service, and typecheck them
We use (abuse, arguably) the nixos module system for typechecking.  Un
the plus side, it gives us documentation of the options and their
expected types. On the downside, the error message doesn't tell us
the file in which the error was encountered.

(This is subject to change, if I can find a better way)
2023-07-14 16:53:36 +01:00
Daniel Barlow
b6e72504d6 ipv6 default route
needs to specify the ppp0 *peer* address not the local address
2023-06-30 10:17:33 +01:00
Daniel Barlow
447f068569 partly support getting IPv6 addresses
- gets interface id from ppp
- runs odhcpc to get RA and prefix delegation
- doesn't do anything useful with the data yet
2023-05-24 23:01:50 +01:00
Daniel Barlow
a4e1dcedd3 redirect stderr 2023-03-10 23:39:53 +00:00
Daniel Barlow
225fc6fe51 configurable busybox
allows modules to add to the busybox applets and change config
2023-03-10 18:40:45 +00:00
Daniel Barlow
91c0147919 set hostname before dhcp client runs 2023-03-08 22:11:59 +00:00
Daniel Barlow
70f8f5ecfd remove hostapd debugging flag 2023-03-07 19:11:25 +00:00
Daniel Barlow
e86e9430fc vlans and mt300a wired network interfaces 2023-03-07 19:10:12 +00:00
Daniel Barlow
06687a819a udhcpc notify when ready 2023-03-07 19:06:40 +00:00
Daniel Barlow
f9f9720ba7 ${!foo} doesn't work in ash, switch to printenv 2023-03-07 19:05:58 +00:00
Daniel Barlow
1565a8414d remove inadvertant references to bash 2023-03-06 17:48:31 +00:00
Daniel Barlow
38756af1c1 add in_outputs shell function which ensures umask is set 2023-03-03 23:07:03 +00:00
Daniel Barlow
adc198b3af WIP push to see what passes 2023-03-01 22:24:58 +00:00
Daniel Barlow
fc4f726dd6 make hostapd service depend on its interface 2023-03-01 18:16:01 +00:00
Daniel Barlow
626a365f79 replace waitup with more generally useful ifwait
* wait for $interface present before ip link set up dev
* wait for wlan0 running before adding to bridge
2023-03-01 18:16:01 +00:00
Daniel Barlow
ea2c5e158d add missing argument 2023-02-26 17:54:58 +00:00
Daniel Barlow
c37332910a add option to provide dnsmasq resolv-file from a service 2023-02-25 22:53:50 +00:00
Daniel Barlow
59ce03630a consistent ownership/permissions for /run/service-state/** 2023-02-25 22:53:06 +00:00
Daniel Barlow
228b270385 pppoe: capture nameserver addresses as outputs 2023-02-25 20:31:41 +00:00
Daniel Barlow
3b75cadb20 improve bridge support
instead of a bridge specifiying its members (not ideal if they're
not all always up), the member interfaces specify their primary
2023-02-24 23:49:05 +00:00
Daniel Barlow
3e1082ad18 allow interface service to specify dependencies 2023-02-22 19:18:59 +00:00
Daniel Barlow
da8866a01a first pass at a hostapd service, rough around the edges 2022-10-02 10:04:35 +01:00
Daniel Barlow
c320d0afc7 add dnsmasq and example config for it
would be good to move more of this into a module, but that
doesn't sit well with the (potential) ability to run more than one
dnsmasq service, as modules are singletons
2022-09-28 21:33:18 +01:00
Daniel Barlow
dfdaa27f39 make ppp log to stderr not syslog 2022-09-27 22:57:06 +01:00
Daniel Barlow
0632b5102e remove .service/.target/.bundle etc suffixes on service names
they don't seem to be providing value
2022-09-27 22:56:53 +01:00
Daniel Barlow
7803eebfd4 add a "route" service 2022-09-26 13:44:40 +01:00
Daniel Barlow
676c94782b separate files for networking and services 2022-09-26 12:26:54 +01:00
Daniel Barlow
5d51d15b86 working pppoe with readiness notification on ip-up 2022-09-25 21:12:50 +01:00
Daniel Barlow
a34a3ade08 make udhcp wait for its interface to be ready 2022-09-25 21:10:57 +01:00
Daniel Barlow
3677ab9cb3 move service state out of s6 scandir
getting weird permission errors, seems simpler all raound just to
put them somewhere else
2022-09-25 21:10:04 +01:00
Daniel Barlow
c1835d97ee add pppoe 2022-09-25 11:54:31 +01:00
Daniel Barlow
dd124e49dd udhcp: write service responses as outputs 2022-09-22 12:42:20 +01:00
Daniel Barlow
e46abbccca put liminix-tools in package overlay 2022-09-22 11:10:41 +01:00