liminix

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

README.md (2578B)


      1 # Liminix
      2 
      3 A Nix-based system for configuring consumer wifi routers or IoT device
      4 devices, of the kind that OpenWrt or DD-WRT or Gargoyle or Tomato run
      5 on. It's a reboot/restart/rewrite of NixWRT.
      6 
      7 This is not NixOS-on-your-router: it's aimed at devices that are
      8 underpowered for the full NixOS experience. It uses busybox tools,
      9 musl instead of GNU libc, and s6-rc instead of systemd.
     10 
     11 The Liminix name comes from Liminis, in Latin the genitive declension
     12 of "limen", or "of the threshold". Your router stands at the threshold
     13 of your (online) home and everything you send to/receive from the
     14 outside word goes across it.
     15 
     16 
     17 ## Current status (does it work yet?)
     18 
     19 Liminix 1.0 was released in April 2025. It works for me and I would
     20 say it has seen lots of use in the particular applications of "home
     21 wifi router" and "wireless extender".
     22 
     23 It's not “finished” - we are still finding new and better ways to do
     24 things - but we endeavour to signal future breaking changes through the
     25 version number. This is “semver-adjacent”, in that minor bumps
     26 (1.1, 1.2 …) are used for minor new features and major bumps (2.0 …)
     27 for changes that are likely to break out-of-tree modules or
     28 configurations. It won’t be semver exactly because [every change
     29 breaks someone’s workflow](https://xkcd.com/1172/), but we aspire to
     30 have the magnitude of the version delta correlate with the scale of
     31 the consequences of upgrading.
     32 
     33 The [NEWS](NEWS) file (available wherever you found this README) is
     34 a high-level overview of breaking changes.
     35 
     36 Development mostly happens on the `main` branch, which is therefore
     37 not guaranteed to build or to work on every commit. For the latest
     38 functioning version, see [the CI
     39 system](https://build.liminix.org/jobset/liminix/build) and pick a
     40 revision with all jobs green. Note that Liminix `main` branch is built
     41 against the "unstable" version of nixpkgs/nixos, not against the
     42 yy.mm release versions.
     43 
     44 
     45 ## Documentation
     46 
     47 Documentation is in the [doc](doc/) directory. You can build it
     48 by running
     49 
     50     nix-build -I liminix=`pwd`  ci.nix -A doc
     51 
     52 Rendered documentation corresponding to the latest commit on `main`
     53 is published to [https://www.liminix.org/doc/](https://www.liminix.org/doc/)
     54 
     55 
     56 ## Extremely online
     57 
     58 There is a #liminix IRC channel on the [OFTC](https://www.oftc.net/)
     59 network in which you are welcome. You can also connect with a Matrix
     60 client by joining the room `#_oftc_#liminix:matrix.org`.
     61 
     62 In the IRC channel, as in all Liminix project venues, please conduct yourself
     63 according to the Liminix [Code of Conduct](CODE-OF-CONDUCT.md).