astro / nix-openwrt-imagebuilder

Build OpenWRT images in Nix derivations
MIT License
129 stars 16 forks source link

Missing dependency on dtc #28

Closed jfly closed 1 year ago

jfly commented 1 year ago

With the true/false fix from https://github.com/astro/nix-openwrt-imagebuilder/pull/27, I still get a build failure complaining about a missing dtc executable:

nix build github:jfly/nix-openwrt-imagebuilder-bug-demo/needs-dtc#my-router
error: builder for '/nix/store/xfb02s2rx60xa30mr8bszlzifd5ysz73-openwrt-23.05.0-rc1-nix-mediatek-mt7622-linksys_e8450-ubi.drv' failed with exit code 2;
       last 10 log lines:
       >           -r => mark keys used as 'required' in dtb
       >           -N => openssl engine to use for signing
       >           -o => algorithm to use for signing
       >        /build/openwrt-imagebuilder-23.05.0-rc1-mediatek-mt7622.Linux-x86_64/staging_dir/host/bin/mkimage -V ==> print version information and exit
       > Use '-T list' to see a list of available image types
       > Long options are available; read the man page for details
       > make[3]: *** [Makefile:38: /build/openwrt-imagebuilder-23.05.0-rc1-mediatek-mt7622.Linux-x86_64/build_dir/target-aarch64_cortex-a53_musl/linux-mediatek_mt7622/tmp/openwrt-23.05.0-rc1-nix-mediatek-mt7622-linksys_e8450-ubi-squashfs-sysupgrade.itb] Error 1
       > make[2]: *** [Makefile:205: build_image] Error 2
       > make[1]: *** [Makefile:143: _call_image] Error 2
       > make: *** [Makefile:259: image] Error 2
       For full logs, run 'nix log /nix/store/xfb02s2rx60xa30mr8bszlzifd5ysz73-openwrt-23.05.0-rc1-nix-mediatek-mt7622-linksys_e8450-ubi.drv'.

And the relevant log:

$ nix log /nix/store/xfb02s2rx60xa30mr8bszlzifd5ysz73-openwrt-23.05.0-rc1-nix-mediatek-mt7622-linksys_e8450-ubi.drv
...
sh: dtc: not found

The fix seems to be as simple as adding this missing dependency. I'll send in a PR.