diff --git a/modules/jffs2.nix b/modules/jffs2.nix index ad6cfc4..031fedc 100644 --- a/modules/jffs2.nix +++ b/modules/jffs2.nix @@ -5,7 +5,6 @@ , ... }: let - inherit (pkgs) closureInfo; inherit (lib) mkIf; in { @@ -36,11 +35,7 @@ in mkdir -p $TMPDIR/empty/nix/store/ cp ${systemConfiguration}/bin/activate $TMPDIR/empty/activate ln -s ${pkgs.s6-init-bin}/bin/init $TMPDIR/empty/init - pkgClosure=${closureInfo { - rootPaths = [ systemConfiguration ]; - }} - cp $pkgClosure/registration nix-path-registration - grafts=$(sed < $pkgClosure/store-paths 's/^\(.*\)$/--graft \1:\1/g') + grafts=$(sed < ${systemConfiguration}/etc/nix-store-paths 's/^\(.*\)$/--graft \1:\1/g') mkfs.jffs2 --compression-mode=size ${endian} -e ${config.hardware.flash.eraseBlockSize} --enable-compressor=lzo --pad --root $TMPDIR/empty --output $out $grafts --squash --faketime ''; }; diff --git a/pkgs/systemconfig/default.nix b/pkgs/systemconfig/default.nix index a162e5f..d229fdf 100644 --- a/pkgs/systemconfig/default.nix +++ b/pkgs/systemconfig/default.nix @@ -8,6 +8,7 @@ writeText , lib , s6-init-bin +, closureInfo , stdenv }: let @@ -61,7 +62,8 @@ let } ''; in attrset: - stdenv.mkDerivation { + let makedevs = activateScript attrset; + in stdenv.mkDerivation { name="make-stuff"; src = ./.; @@ -69,11 +71,13 @@ in attrset: LDFLAGS = "-static"; postConfigure = '' - cp ${activateScript attrset} makedevs.c + cp ${makedevs} makedevs.c ''; makeFlags = ["makedevs"]; installPhase = '' - mkdir -p $out/bin + closure=${closureInfo { rootPaths = [ makedevs ]; }} + mkdir -p $out/bin $out/etc + cp $closure/store-paths $out/etc/nix-store-paths $STRIP --remove-section=.note --remove-section=.comment --strip-all makedevs -o $out/bin/activate ln -s ${s6-init-bin}/bin/init $out/bin/init '';