Commit graph

855 commits

Author SHA1 Message Date
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
Daniel Barlow
cc67116845 link to CoC, mention IRC 2023-02-22 18:14:40 +00:00
Daniel Barlow
423f8aa6d3 add another link I've previously found useful 2023-02-19 18:14:27 +00:00
Daniel Barlow
c7a65625fa fix markup 2023-02-19 18:14:27 +00:00
Daniel Barlow
10aeb5e464 add notes about dual-band hardware 2023-02-19 18:14:27 +00:00
Daniel Barlow
81ccd11347 gl-ar750: support _actual_ mtd/spi not just fake one
the ath9k driver needs MTD because that's where it looks for
firmware/calibration data (ART partition)
2023-02-19 18:13:38 +00:00
Daniel Barlow
817c3793d4 move dts config from kernel to boot
The kernel does not need to know about the DTS. I am prepared
to be very slightly injured on this hill.
2023-02-18 15:13:19 +00:00
Daniel Barlow
17ce917af8 TODO 2023-02-18 14:02:22 +00:00
Daniel Barlow
bf68127dc4 explain ppoe-l2tp better
though not much better, to be honest
2023-02-17 20:57:05 +00:00
Daniel Barlow
db70623bff improve markup 2023-02-17 20:54:18 +00:00
Daniel Barlow
0777bb47c0 simplify calling buildEnv 2023-02-17 20:41:55 +00:00
Daniel Barlow
37caac1d56 add shell.nix and tidy docs to take advantage of it 2023-02-17 20:19:45 +00:00
Daniel Barlow
832221748b explain bordervm 2023-02-17 20:03:57 +00:00
Daniel Barlow
42451a92e0 refine the backlog again 2023-02-17 17:13:38 +00:00
Daniel Barlow
ef0b5cb815 bordervm: make configurable 2023-02-17 16:49:44 +00:00
Daniel Barlow
05576eeb94 harcode paths for kpppoed, add port num in config 2023-02-17 00:09:02 +00:00
Daniel Barlow
40739d780b convert docs to restructuredText 2023-02-16 22:06:50 +00:00
Daniel Barlow
b60ce985b7 inline lib/merge-modules.nix
it wasn't really adding value once I learned that evalModules
is at nixpkgs.lib

https://github.com/telent/liminix/compare/main...vesim987:liminix:main#diff-8ebcd005c04c8eddff72aa83f26a9ee6cfef3c04ce16b8f051aa6c6f4b0c9e73L1
2023-02-16 17:22:27 +00:00
Daniel Barlow
8915f828a5 empty doc folder 2023-02-15 23:26:22 +00:00
Daniel Barlow
d948438ae1 extract borderVm config into separate file 2023-02-15 22:06:28 +00:00
Daniel Barlow
a98b266445 remove NIXPKGS_ALLOW_UNSUPPORTED_SYSTEM, no longer needed 2023-02-15 22:06:28 +00:00
Daniel Barlow
ea6b9c8016 bordervm add network debugging utils 2023-02-15 22:06:28 +00:00
Daniel Barlow
9899fa91f6 bordervm static ethernet and tftp server 2023-02-15 22:06:28 +00:00
Daniel Barlow
b438a0fd17 handlersocket must be bound before calling select()
this is due to a rather odd (imo) decision in luasocket which
says that the underlying socket (and therefore its file
descriptor) isn't actually created until we call something
that lets it work out whether ipv4 or ipv6
2023-02-15 22:06:28 +00:00
Daniel Barlow
2388e4ca24 recvfrom(-1) is not the same as recvfrom() 2023-02-15 22:06:28 +00:00
Daniel Barlow
f98b9c5c97 add README to say where Tufted came from 2023-02-15 22:06:28 +00:00
Daniel Barlow
1a29e2ba0f use locally modified tftp.lua instead of upstream tufty 2023-02-15 22:06:28 +00:00
Daniel Barlow
118f78f334 remove "using luasocket" message 2023-02-15 22:06:28 +00:00
Daniel Barlow
a258456f25 check return value of bind
is common to forget to run this as root, in which case we would like
to see the permission denied error when it tries to open port 69
2023-02-15 22:06:28 +00:00
Daniel Barlow
71e37f1b96 update listen docstring 2023-02-15 22:06:28 +00:00
Daniel Barlow
55688c14ed pass remote host and port to callback as params 2..3
This allows the callback to handle the response differently
depending on who is asking - for example, to refuse requests
from clients on a blocklist
2023-02-15 22:06:28 +00:00
Daniel Barlow
59c0881235 remove unhelpful debug message 2023-02-15 22:06:28 +00:00
Daniel Barlow
1b372bcb2b simpler eof handling 2023-02-15 22:06:28 +00:00
Daniel Barlow
b84a6e0aa5 fix poll() to not mutate its parameter 2023-02-15 22:06:28 +00:00
Daniel Barlow
d729709869 remove nixio support 2023-02-15 22:06:28 +00:00
Daniel Barlow
740314b329 added at 3cb95c869e2fe74cc61ca303d88af6c5daad6734 2023-02-15 22:06:28 +00:00
Daniel Barlow
e84833e52f WIP create VM for pppoe and tftpd 2023-02-15 22:06:28 +00:00
Daniel Barlow
9d651f5851 move files 2023-02-15 22:06:28 +00:00
Daniel Barlow
c298f128fa refine the TODO list 2023-02-15 22:06:28 +00:00
Daniel Barlow
5b51aa0826 tftp load address is per-device, IP addresses are local config 2023-02-15 22:06:28 +00:00
Daniel Barlow
dd8c8edd9c rewrite phram boot to use correct sizes and offsets 2023-02-15 22:06:28 +00:00
Daniel Barlow
1a08aaad01 move outputs into a module 2023-02-10 23:10:44 +00:00
Daniel Barlow
0a06319d0c make loadAddress and entryPoint device configuration
... already having second thoughts about loadAddress
2023-02-10 18:20:01 +00:00
Daniel Barlow
8cead61740 convert devices from overlay to module
this makes it possible for devices to stash things in
`config` (e.g. pathname to DTS) that can later be overwritten
(even by the end user)
2023-02-10 17:54:33 +00:00