Daniel Barlow
4389fa15f7
rename mips-vm as run-liminix-vm
2023-09-20 18:33:20 +01:00
Daniel Barlow
2e50368bd2
rename config.outputs to config.system.outputs
...
New rules: everything under "config" that isn't actually configuration
(e.g. build products) will in future live in config.system. This is
the first step.
2023-07-13 19:24:59 +01:00
Daniel Barlow
c3bb33c9ce
add fennelrepl package
...
Runs fennel using a Lua compiled with the same options as the
host system, and with packages set up so it can find all the local
Lua packages
To shorten the dev feedback loop further, allows FENNEL_PATH to be set
on the command line so you can point directly it at the Fennel sources
for some library you're working against instead of having to run
nix-build and compile them to Lua
2023-07-04 22:58:51 +01:00
Daniel Barlow
6870abfe83
add min-copy-closure to buildEnv
2023-05-11 23:53:25 +01:00
Daniel Barlow
225fc6fe51
configurable busybox
...
allows modules to add to the busybox applets and change config
2023-03-10 18:40:45 +00:00
Daniel Barlow
91c0147919
set hostname before dhcp client runs
2023-03-08 22:11:59 +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
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
4f5b4924ff
fix bordervm in hydra
2023-02-22 18:14:40 +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
d948438ae1
extract borderVm config into separate file
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
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
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
Daniel Barlow
4addcbbd51
turn run-qemu.sh script into mips-vm buildEnv command
2023-02-08 22:17:06 +00:00
Daniel Barlow
cc7daeabb3
add routeros to overlay
2023-02-08 18:13:35 +00:00
Daniel Barlow
78c55d36a9
improve build tool derivations, review README
...
The readme is still very badly organised, but not quite so out of
date.
2023-02-08 00:03:37 +00:00
Daniel Barlow
eaf90df56c
per-device dts
2023-02-06 23:19:35 +00:00
Daniel Barlow
424abc72b8
rearrange all the ci stuff
2023-02-05 22:38:21 +00:00
Daniel Barlow
3b1bc7eff8
test derivation for ci
2023-01-29 21:19:10 +00:00
Daniel Barlow
64b9bad891
allow building mips (bigendian) without setting env vars
2023-01-29 10:00:13 +00:00
Daniel Barlow
e6a173f71c
make liminix-config a parameter with default
...
this is for hydra
2023-01-29 09:25:03 +00:00
Daniel Barlow
76243d306c
remove checkedConfig, check all the config
2022-10-19 22:09:38 +01:00
Daniel Barlow
f1b7780537
speed up kernel build
...
by having two separate derivations for patching the kernel source tree
and building it, we have to copy said source trees from one store
location to another which takes non-neglible time on spinning rust
(literally minutes on my machine). Replace with a single derivation
that can do more things on one tree in-place
2022-10-19 17:34:22 +01:00
Daniel Barlow
d1dda7bf74
remove redundant nixpkgs.pkgs
2022-10-19 17:10:35 +01:00
Daniel Barlow
4b513cdb98
use openwrt kernel for gl-ar750
2022-10-16 15:15:18 +01:00
Daniel Barlow
77922c875b
add per-device overlay
...
presently this is used to reference the appropriate kernel and (if
needed) openwrt source trees, but I would not be surprised if we find
other uses
2022-10-15 18:55:33 +01:00
Daniel Barlow
7d1c85f680
kernel: enlarge offset to rootfs, disable sysfs devlink
...
the ag71xx driver doesn't probe with fw_devlink enabled
2022-10-15 16:11:40 +01:00
Daniel Barlow
5feda1a1e6
add 'phram' param for tftp boot without flashing
2022-10-07 00:24:35 +01:00
Daniel Barlow
e78028e58f
make outputs.directory useful for tftp-booting devices
...
basically, add some more symlinks to it
2022-10-07 00:23:04 +01:00
Daniel Barlow
58c287ef6a
add config option for kernel commmand line
2022-10-07 00:21:04 +01:00
Daniel Barlow
9cbffdab50
add support for OpenWrt device trees
2022-10-05 21:52:30 +01:00
Daniel Barlow
c70d556f44
write combined-image into a directory not $out directly
...
this makes the tftp workflow a bit easier
2022-10-04 23:09:20 +01:00
Daniel Barlow
e7987c9520
add build-host tftp server
2022-10-04 23:08:43 +01:00
Daniel Barlow
f9626d00f4
generate probably-non-functional firmware image for gl-ar750
2022-10-03 22:28:15 +01:00
Daniel Barlow
6a9b14f965
re-enable kernel checkedConfig support
...
Sometimes config options get silenty removed because they have
dependencies on other options that haven't been enabled. If you add
those as attributes here, the kernel build will check they're _still_
present in the config after make oldconfig has run.
2022-09-30 17:45:05 +01:00
Daniel Barlow
6f23a45696
configuration for users and groups
2022-09-28 21:31:15 +01:00
Daniel Barlow
2e13f1372e
add outputs.manifest for diagnosing image size problems
2022-09-27 22:07:18 +01:00
Daniel Barlow
5e573cef09
squashfs builder just needs filesystem not entire config
2022-09-27 22:06:36 +01:00
Daniel Barlow
696bbe6521
rename systemPackages as defaultProfile.packages
...
it doesn't work the same way as in nixos, so don't name it the same way
2022-09-27 16:47:42 +01:00
Daniel Barlow
4cbe669783
move make-image to subdirectory
2022-09-27 16:47:42 +01:00
Daniel Barlow
797aa30c47
make s6-init-files into a module
2022-09-27 10:19:44 +01:00
Daniel Barlow
a427b9da5e
move s6-rc db creation to a module
2022-09-26 20:59:56 +01:00
Daniel Barlow
1c14bb63fa
callPackageify make-image.nix
2022-09-26 16:19:14 +01:00
Daniel Barlow
e29d009b2f
make kernel builder callPackage'able
2022-09-25 22:02:45 +01:00