No description
Find a file
Daniel Barlow 54a1ab3529 support jffs2, with initramfs
the jffs2 filesystem contains only /nix/store and a script which is
run in early init (initramfs) and is responsible for recreating
"traditional" directories (/bin /etc/**/* /var &c) based on the
configuration.

this is tested only in qemu so far and could use some cleanup
2023-04-04 23:35:49 +01:00
devices qemu: boot from mtd using mtd2block 2023-04-04 21:07:02 +01:00
doc add cautionary note about flashing a running device 2023-03-26 10:21:36 +01:00
examples support all kinds of boot for arhcive 2023-03-24 17:14:15 +00:00
kernel delete unused file 2023-03-03 21:38:43 +00:00
modules support jffs2, with initramfs 2023-04-04 23:35:49 +01:00
pkgs support jffs2, with initramfs 2023-04-04 23:35:49 +01:00
tests remove support for sockets in pseudofiles 2023-04-04 23:23:22 +01:00
.gitignore extract secrets for extneder 2023-03-08 20:37:08 +00:00
bordervm-configuration.nix fix bordervm in hydra 2023-02-22 18:14:40 +00:00
bordervm.conf-example.nix bordervm: make configurable 2023-02-17 16:49:44 +00:00
ci.nix move noise sources around in tests 2023-03-10 18:41:43 +00:00
CODE-OF-CONDUCT.md link to CoC, mention IRC 2023-02-22 18:14:40 +00:00
CONTRIBUTING.md fix spelling, remove dead file 2023-02-05 22:42:41 +00:00
default.nix configurable busybox 2023-03-10 18:40:45 +00:00
LICENSE licence: remove accidental punctuation, update copyright year 2023-01-29 16:39:50 +00:00
nat.nft example config for ppoe router 2023-02-25 23:12:55 +00:00
overlay.nix add mtdutils mkfs.jffs2 --graft option 2023-03-31 23:42:13 +01:00
README.md link to CoC, mention IRC 2023-02-22 18:14:40 +00:00
shell.nix simplify calling buildEnv 2023-02-17 20:41:55 +00:00
STYLE.md explain package/module distinction, add notes on side tracks 2022-09-27 14:11:23 +01:00
THOUGHTS.txt it has not been a production-ready week 2023-03-31 23:44:49 +01:00
vanilla-configuration.nix DRY loopback interface, it's the same everywhere 2023-03-07 22:36:48 +00:00

Liminix

A Nix-based system for configuring consumer wifi routers or IoT device devices, of the kind that OpenWrt or DD-WRT or Gargoyle or Tomato run on. It's a reboot/restart/rewrite of NixWRT.

This is not NixOS-on-your-router: it's aimed at devices that are underpowered for the full NixOS experience. It uses busybox tools, musl instead of GNU libc, and s6-rc instead of systemd.

The Liminix name comes from Liminis, in Latin the genitive declension of "limen", or "of the threshold". Your router stands at the threshold of your (online) home and everything you send to/receive from the outside word goes across it.

What about NixWRT?

This is an in-progress rewrite of NixWRT, incorporating Lessons Learned.

Documentation

Documentation is in the doc directory. You can build it by running

nix-shell -p sphinx --run "make -C doc html"

Extremely online

There is a #liminix IRC channel on the OFTC network in which you are welcome. You can also connect with a Matrix client by joining the room #_oftc_#liminix:matrix.org.

In the IRC channel, as in all Liminix project venues, please conduct yourself according to the Liminix Code of Conduct.