Commit graph

1198 commits

Author SHA1 Message Date
Daniel Barlow
c046c39613 wlan support for mt300a 2023-03-07 19:11:12 +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
4596bc3e88 build smaller versions of hostap and nftables 2023-03-06 17:49:59 +00:00
Daniel Barlow
aa5f8c07e6 don't patch s6 if new enough not to need it 2023-03-06 17:49:11 +00:00
Daniel Barlow
1565a8414d remove inadvertant references to bash 2023-03-06 17:48:31 +00:00
Daniel Barlow
83e56a3a90 add swconfig package 2023-03-05 22:32:56 +00:00
Daniel Barlow
2787e6a230 reformat qprint substitutions 2023-03-05 21:33:51 +00:00
Daniel Barlow
a8cb872859 add service name to log lines 2023-03-04 23:08:25 +00:00
Daniel Barlow
5427456c21 rename notificationFd to notification-fd
it's perfectly valid syntax and consistent with the s6 spelling
2023-03-04 21:19:30 +00:00
Daniel Barlow
08bed15cf8 ssh service
- dropbear
- generate host keys on first use
- mount /dev/pts

It's not ideal having the host key disappear when the device is
reboot, but without persistent storage the alternative is generating
it at build time. Deferring this problem to another time
2023-03-04 12:10:06 +00:00
Daniel Barlow
e1eb4e1fcb oops 2023-03-04 00:35:40 +00:00
Daniel Barlow
a3cdc32142 define structured options for config.users 2023-03-04 00:24:48 +00:00
Daniel Barlow
25a46dcb2c escape $ in pseudofile
this is needed to write /etc/passwd when it contains $5$....
strings
2023-03-04 00:23:21 +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
e0ea576674 rename "device" config tree as "hardware"
we are also using "device" for "network device" (as in eth0,
wlan0 etc) so this makes it a bit less confusing perhaps
2023-03-03 22:52:33 +00:00
Daniel Barlow
263882cbe4 move dts config option from boot to device 2023-03-03 22:43:44 +00:00
Daniel Barlow
fd500041fa move new packages to pkgs/default.nix 2023-03-03 22:21:27 +00:00
Daniel Barlow
c9f55ba177 delete unused file 2023-03-03 21:38:43 +00:00
Daniel Barlow
d75437d577 note to self: check if these kconfig options still needed 2023-03-03 20:08:12 +00:00
Daniel Barlow
d782970313 delete commented-out code 2023-03-03 20:08:04 +00:00
Daniel Barlow
bbd699d7b1 add module for device-specific config
in principle this module declares the config that's defined in
devices/foo/default.nix
2023-03-03 20:04:39 +00:00
Daniel Barlow
0cd1bd99e1 declare device.flash options in base.nix
because they're specified in devices/*/default.nix
2023-03-02 23:28:39 +00:00
Daniel Barlow
6d191b73ae add outputs.flashable - flashable firmware.bin 2023-03-02 23:01:26 +00:00
Daniel Barlow
0cab6e9fba rename phram -> tftpboot and flash.scr to boot.scr 2023-03-02 15:11:12 +00:00
Daniel Barlow
adc198b3af WIP push to see what passes 2023-03-01 22:24:58 +00:00
Daniel Barlow
259f5c767b ath10k kernel support and and firmware
- some firmware from kvalo repository
- a service to extract calibration data ART partition
- missing kernel symbol to enable PCI support
2023-03-01 21:08:47 +00:00
Daniel Barlow
fc4f726dd6 make hostapd service depend on its interface 2023-03-01 18:16:01 +00:00
Daniel Barlow
41ff5a1fe6 move FW_LOADER* config to modules/base 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
14dacb8056 update netlink-lua to latest 2023-02-28 20:56:19 +00:00
Daniel Barlow
ea2c5e158d add missing argument 2023-02-26 17:54:58 +00:00
Daniel Barlow
fe1b33f307 example config for ppoe router
hard cases make bad law
2023-02-25 23:12:55 +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
4bd99df0f1 spew for this week 2023-02-25 20:35:29 +00:00
Daniel Barlow
690cedf00d better type for config.groups
instead of an attrset of anything, specify the expected
structure of each value
2023-02-25 20:33:18 +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
8194e909ac fix typo, remove debug spew 2023-02-24 23:22:28 +00:00
Daniel Barlow
03aec58c2c add "waitup", s6 readiness helper for network interfaces
run e.g. "waitup wlan0 10" to wait until wlan0 is operationally
up and running, and then send a newline to file descriptor 10
2023-02-24 23:22:28 +00:00
Daniel Barlow
3e1082ad18 allow interface service to specify dependencies 2023-02-22 19:18:59 +00:00
Daniel Barlow
f2e5f65149 add wireless support for hardware devices
* gl-ar750 the ath9k works, ath10k is untested
* gl-mt300[an] build but may not boot
2023-02-22 19:17:47 +00:00
Daniel Barlow
751920c8fc qemu: switch to building wireless as kernel modules
This is a hefty change

* add support for kernel backports project
* build wireless stack/drivers as modules from a backported kernel
* create a service to load/unload the modules
2023-02-22 18:41:41 +00:00
Daniel Barlow
891db9edc5 kernel derivation: add output for module support 2023-02-22 18:33:17 +00:00
Daniel Barlow
e89fcfbf09 collect "device" options into an attrset 2023-02-22 18:31:46 +00:00
Daniel Barlow
a2d8eaf95d make kernel config visually consistent: symbols are unquoted 2023-02-22 18:28:48 +00:00
Daniel Barlow
4faf529dc3 define kernel MODULE_SIG everywhere 2023-02-22 18:20:56 +00:00
Daniel Barlow
4f5b4924ff fix bordervm in hydra 2023-02-22 18:14:40 +00:00