8c97f3e257
agetty
2024-10-04 15:57:57 +02:00
ae78f9aafd
systemd init
2024-10-04 15:57:57 +02:00
109c577084
systemd override
2024-10-04 15:00:45 +02:00
6dd34b97a9
Merge pull request 'feat(ci): shell-customization' ( #32 ) from lbailly/liminix:shell-customization into main
...
build liminix / test_shell_customization (push) Successful in 20s
build liminix / build_zyxel-nwa50ax_mips (push) Successful in 18s
build liminix / build_vm_qemu_mips (push) Successful in 20s
build liminix / test_hostapd (push) Successful in 22s
Reviewed-on: #32
2024-10-04 11:22:43 +02:00
7eff028b02
fix: hostname at early boot
build liminix / build_zyxel-nwa50ax_mips (pull_request) Successful in 19s
build liminix / build_vm_qemu_mips (pull_request) Successful in 20s
build liminix / test_shell_customization (pull_request) Successful in 20s
build liminix / test_hostapd (pull_request) Successful in 21s
2024-10-04 11:21:46 +02:00
89d2d34ad7
feat(ci): prompt checking
2024-10-04 11:21:46 +02:00
eec7a6e985
fix PS1
2024-10-04 11:21:46 +02:00
a56936f1d3
Merge pull request 'feat: add environment variables and prompt customization in login shells' ( #29 ) from shell-customization into main
...
build liminix / build_zyxel-nwa50ax_mips (push) Failing after 17s
build liminix / build_vm_qemu_mips (push) Failing after 18s
build liminix / test_hostapd (push) Failing after 19s
Reviewed-on: #29
2024-10-04 11:12:05 +02:00
Raito Bezarius
562b050341
feat: add environment variables and prompt customization in login shells
...
This way, we can configure a bit our prompt.
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-10-04 11:12:05 +02:00
dbe6b1b135
Merge pull request 'feat(ci): test with wpa_supplicant' ( #24 ) from lbailly/liminix:CI into main
...
build liminix / test_hostapd (push) Has been cancelled
build liminix / build_vm_qemu_mips (push) Has been cancelled
build liminix / build_zyxel-nwa50ax_mips (push) Has been cancelled
Reviewed-on: #24
Reviewed-by: Ryan Lahfa <ryan@dgnum.eu>
2024-10-04 11:11:47 +02:00
c5e48f5c9f
feat(ci-wlan): use wpa_supplicant
build liminix / build_vm_qemu_mips (pull_request) Successful in 19s
build liminix / build_zyxel-nwa50ax_mips (pull_request) Successful in 19s
build liminix / test_hostapd (pull_request) Successful in 19s
2024-09-30 13:16:57 +02:00
0dd72b31f4
feat(ci): use ci.nix
2024-09-30 13:16:57 +02:00
Raito Bezarius
013e4c396c
feat: repair CI and cleanup cross-compilation mechanism
...
build liminix / build_vm_qemu_mips (push) Successful in 6m24s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-16 18:14:39 +02:00
Raito Bezarius
036f91d2f0
feat(ubus): support for Lua 5.3
...
build liminix / build_vm_qemu_mips (push) Failing after 27s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-08 01:08:59 +02:00
Raito Bezarius
54db2ad006
feat(libubox): support for Lua 5.3
...
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-08 01:08:54 +02:00
Raito Bezarius
8ac3e32b8b
fix(modules/hostname): hash the hostname to avoid duplicate services in the db
...
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-08 00:31:15 +02:00
Raito Bezarius
6970d811e8
chore(min-copy-closure): improve liminix-rebuild for maintenance
...
build liminix / build_vm_qemu_mips (push) Failing after 28s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 23:59:29 +02:00
Raito Bezarius
b468275f53
fix(tftpboot): revert squashfs use and go back to JFFS2
...
build liminix / build_vm_qemu_mips (push) Failing after 27s
squashfs doesn't copy all the files we need.
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 23:48:13 +02:00
Raito Bezarius
3ed1564235
feat(recovery): bump to 20MB the TFTP phram size
...
build liminix / build_vm_qemu_mips (push) Failing after 27s
Otherwise, this will fail to boot on a modern closure.
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 23:39:22 +02:00
Raito Bezarius
9fcfae3eae
feat(recovery): strengthen debugging capabilities of preinit
...
build liminix / build_vm_qemu_mips (push) Failing after 27s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 23:30:05 +02:00
Raito Bezarius
73ea02b982
feat(modules/nixpkgs): introduce source parameter
...
build liminix / build_vm_qemu_mips (push) Failing after 27s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 23:05:03 +02:00
Raito Bezarius
c942b2be09
feat(initramfs): enable zstd compression
...
build liminix / build_vm_qemu_mips (push) Failing after 27s
Busybox is still 3MB.
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 22:49:25 +02:00
Raito Bezarius
95850a44c2
feat(recovery): implement failsafe boot
...
for TFTP or anything, really.
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 22:49:25 +02:00
Raito Bezarius
bc1f54e701
Merge branch 'bridgeability' into 'main'
build liminix / build_vm_qemu_mips (push) Failing after 27s
2024-09-07 21:53:20 +02:00
Raito Bezarius
0ee2ce4183
fix(overlay): adopt upstream fix for Lua readline
...
build liminix / build_vm_qemu_mips (push) Failing after 27s
9f58e7b926
("maybe fix nixpkgs-unstable lua")
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 21:52:48 +02:00
Raito Bezarius
94a5b19c77
fix(evalConfig): fix pkgs
relation with nixpkgs
...
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 21:52:48 +02:00
Raito Bezarius
13069415fd
feat(modules/hostapd): offer readiness oneshot
...
build liminix / build_vm_qemu_mips (pull_request) Failing after 27s
WLAN oper wait until the WLAN interface is ready.
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 21:15:31 +02:00
Raito Bezarius
5590fea16e
feat(ifwait): add ifbridgeable script
...
build liminix / build_vm_qemu_mips (pull_request) Failing after 28s
This enable to wait for bridgeability of a WLAN interface via
`iwinfo`.
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 21:09:17 +02:00
Raito Bezarius
c39bfc2bb5
fix(write-fennel): escape binary path for PATH
...
otherwise, escapeShellArg might just do nothing!
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 21:03:57 +02:00
Raito Bezarius
0c363be423
fennelrepl: add iwinfo to it
...
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 20:03:02 +02:00
Raito Bezarius
26d2812aa4
fennerepl: remove readline
...
build liminix / build_vm_qemu_mips (push) Failing after 27s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 20:03:02 +02:00
Raito Bezarius
b57df3f288
iwinfo: use Lua 5.3 port
...
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 20:03:02 +02:00
Raito Bezarius
4cf10c2e75
iwinfo: init at unstable-07-09-2024
...
build liminix / build_vm_qemu_mips (push) Failing after 28s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 19:26:14 +02:00
Raito Bezarius
0d36000d9f
overlay: update hostapd with readiness support
...
build liminix / build_vm_qemu_mips (push) Failing after 28s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 18:31:57 +02:00
ce17fea337
Merge pull request 'feat(hostapd): ubus support' ( #16 ) from hostapd-ubus into main
...
build liminix / build_vm_qemu_mips (push) Failing after 29s
Reviewed-on: #16
2024-09-07 17:53:21 +02:00
Raito Bezarius
1a770910a6
fix(ubus): rendez vous URL for the unix socket
...
build liminix / build_vm_qemu_mips (pull_request) Failing after 32s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 17:48:06 +02:00
Raito Bezarius
5444059b63
feat(hostapd): enable ubus on RADIUS variant
...
build liminix / build_vm_qemu_mips (pull_request) Failing after 28s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 17:18:59 +02:00
Raito Bezarius
ffc6492365
fix(ubus): set the socket path properly
...
build liminix / build_vm_qemu_mips (pull_request) Failing after 28s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 17:15:31 +02:00
Raito Bezarius
71813a1f8f
feat(hostapd): disable openssl to save space
...
build liminix / build_vm_qemu_mips (pull_request) Failing after 28s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 17:03:50 +02:00
Raito Bezarius
032e57b34c
feat(hostapd): ubus support
...
build liminix / build_vm_qemu_mips (pull_request) Failing after 27s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-07 15:56:53 +02:00
Raito Bezarius
0fb671023c
feat(services): introduce structured bundles
...
build liminix / build_vm_qemu_mips (push) Failing after 27s
Structured bundles keep their original contents as a `passthru` field
named `components`.
This enable users to depend on a specific piece of the bundle instead of
the whole bundle.
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-05 14:54:12 +02:00
Raito Bezarius
ebcdbf76bc
fix(bridge): members are now granular services
...
They are still part of the bundle, but we can wait on each of them
independently now.
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-05 14:54:12 +02:00
Raito Bezarius
78d0088b65
ubus: build with Lua
...
build liminix / build_vm_qemu_mips (push) Failing after 27s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-04 16:30:44 +02:00
Raito Bezarius
6d4237ff87
libubox: build with Lua
...
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-04 16:29:59 +02:00
Raito Bezarius
c24c659ee1
modules/ubus: init
...
build liminix / build_vm_qemu_mips (push) Failing after 27s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-04 16:08:56 +02:00
Raito Bezarius
4287a05182
ubus: init at unstable-04-09-2024
...
build liminix / build_vm_qemu_mips (push) Failing after 28s
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-04 15:53:26 +02:00
Raito Bezarius
eb083bee20
libubox: init at unstable-04-09-2024
...
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-04 15:53:19 +02:00
Raito Bezarius
1bd9af1e9d
fix(bridge): reorder initialization for bridge dependents
...
build liminix / build_vm_qemu_mips (push) Failing after 27s
Consider the scenario where you run DHCPv4 on the primary bridge
interface.
You have no real interface to "wait upon", so it's OK. Nonetheless,
anything depending on successful completion of DHCPv4, e.g. adding a
default route, will block `s6-rc -v2 up change default`.
The way new interfaces are attached to the bridge is via `s6-rc -b -u
change $attach-oneshot-service`, this introduce in turn a deadlock.
At some point, DHCPv4 will timeout, unblocking the deadlock and
attaching the members to the primary bridge interface, making it ready
to send L2 broadcast packets for DHCP, unblocking DHCP in turn again.
This is not satisfying because we really want to have a no-hiccups
bring-up.
To fix this, we proceed to multiple changes:
- we remove `svc.ifwait.build` out of band `s6-rc -b -u $oneshot-attach`
call, which is, by design, wrong here.
- users can now depend on the members service to know when a bridge is
fully operational (we could make it more granular and let them depend
on the LAN member joining rather than WLAN, etc.)
- users can also depend on the primary service being brought up rather
than just being present, this is useful if you need to bring it up
when it has AT LEAST one member to get link local address or MAC
addresses (fixing DHCPv6 bring up as well because `ff02::1` is used
there).
One thing is not addressed yet, if you are running a WLAN service using
RADIUS attached to the bridge, at bring up time, it will try to reach
out the external RADIUS server and *fail*.
To solve this, granular dependency on the DHCPv4 once LAN is joined.
Then the hostapd can wait on defaultroute4 completion so that
connectivity is available to reach RADIUS server.
It can join the bridge later on without any hiccup as well.
This is left as a TODO as hostapd can survive RADIUS authentication
failure and retry later.
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-01 18:15:28 +02:00
Raito Bezarius
21ff11503e
fix(bridge): pick up MAC from another interface
...
This avoids the OPERSTATE unknown when the bridge is brought up but the
members are not ready yet.
This will make OPERSTATE to down, enabling us to wait until we have
brought up completely all the members.
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-01 17:48:54 +02:00
Raito Bezarius
f0b4e826cb
fix(ifwait): match over strings and not symbols
...
Are they the same in Fennel?
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-09-01 17:48:54 +02:00