Skip to content

Instantly share code, notes, and snippets.

@grahamc
Created November 22, 2018 01:09
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save grahamc/57d630fe6df55cc19a160b187ed2ff22 to your computer and use it in GitHub Desktop.
Save grahamc/57d630fe6df55cc19a160b187ed2ff22 to your computer and use it in GitHub Desktop.
[nix-shell:~]$ nix-diff /nix/store/x5nfs4kas0x1pw8a0daxzn7fqdy8yqza-util-linux-2.32.1.drv /nix/store/iyr1ks7xn5n11jgwg08bcg5npjq0nxa9-util-linux-2.32.1.drv
- /nix/store/x5nfs4kas0x1pw8a0daxzn7fqdy8yqza-util-linux-2.32.1.drv:{out}
+ /nix/store/iyr1ks7xn5n11jgwg08bcg5npjq0nxa9-util-linux-2.32.1.drv:{out}
• The set of input names do not match:
+ ncurses-6.1
+ perl-5.28.0
+ systemd-239
• The environments do not match:
buildInputs=''
/nix/store/3772gv6vcx142pchwhzycffagjcs15y8-zlib-1.2.11-dev /nix/store/vqx7ahkiwakvr98ckkcfqkw28z5gfrhv-linux-pam-1.3.0 /nix/store/ys5m0l9hwrizy55fw0sa34l0dq3i8n6p-ncurses-6.1-dev /nix/store/773zy0k03ri4ba7diph9b2cayyxn0l1d-systemd-239-dev /nix/store/p3cg3qswdvq6vdjigs83did8km5dlqk7-perl-5.28.0
''
configureFlags=''
--enable-write --enable-last --enable-mesg --disable-use-tty-group --enable-fs-paths-default=/run/wrappers/bin:/var/run/current-system/sw/bin:/sbin --disable-makeinstall-setuid --disable-makeinstall-chown --without-ncursesw --without-systemd --without-systemdsystemunitdir=$(bin)/lib/systemd/system/
''
postInstall=''
rm "$bin/bin/su" # su should be supplied by the su package (shadow)
rm -rf $out/share/{locale,doc,bash-completion}
''
[nix-shell:~]$ nix-diff /nix/store/hr4qbqf5p7wb9gvnzry6jsbpfyshxsrk-boehm-gc-7.6.6.drv /nix/store/p2ambm8174p47wqd49a76gv0ky2z6a47-boehm-gc-7.6.6.drv
- /nix/store/hr4qbqf5p7wb9gvnzry6jsbpfyshxsrk-boehm-gc-7.6.6.drv:{out}
+ /nix/store/p2ambm8174p47wqd49a76gv0ky2z6a47-boehm-gc-7.6.6.drv:{out}
• The environments do not match:
configureFlags=--enable-cplusplus --enable-large-config
[nix-shell:~]$ nix-diff /nix/store/vc4mw42fjb3y57kxcnkd6i68814zrczn-busybox-1.29.3.drv /nix/store/x12qyqp7avhz5d0yxdmn9lpfpp1qcj3i-busybox-1.29.3.drv
- /nix/store/vc4mw42fjb3y57kxcnkd6i68814zrczn-busybox-1.29.3.drv:{out}
+ /nix/store/x12qyqp7avhz5d0yxdmn9lpfpp1qcj3i-busybox-1.29.3.drv:{out}
• The set of input names do not match:
- musl-1.1.19
• The environments do not match:
NIX_HARDENING_ENABLE=fortify stackprotector pic strictoverflow relro bindnow
configurePhase=''
export KCONFIG_NOTIMESTAMP=1
make allnodefconfig
function parseconfig {
while read LINE; do
NAME=`echo "$LINE" | cut -d \ -f 1`
OPTION=`echo "$LINE" | cut -d \ -f 2`
if ! [[ "$NAME" =~ ^CONFIG_ ]]; then continue; fi
echo "parseconfig: removing $NAME"
sed -i /$NAME'\(=\| \)'/d .config
echo "parseconfig: setting $NAME=$OPTION"
echo "$NAME=$OPTION" >> .config
done
}
cat << EOF | parseconfig
CONFIG_PREFIX "$out"
CONFIG_INSTALL_NO_USR y
CONFIG_LFS y
CONFIG_STATIC y
# Use the external mount.cifs program.
CONFIG_FEATURE_MOUNT_CIFS n
CONFIG_FEATURE_MOUNT_HELPERS y
# Set paths for console fonts.
CONFIG_DEFAULT_SETFONT_DIR "/etc/kbd"
# Bump from 4KB, much faster I/O
CONFIG_FEATURE_COPYBUF_KB 64
CONFIG_FEATURE_FANCY_ECHO y
CONFIG_FEATURE_SH_MATH y
CONFIG_FEATURE_SH_MATH_64 y
CONFIG_ASH y
CONFIG_ASH_OPTIMIZE_FOR_SIZE y
CONFIG_ASH_ALIAS y
CONFIG_ASH_BASH_COMPAT y
CONFIG_ASH_CMDCMD y
CONFIG_ASH_ECHO y
CONFIG_ASH_GETOPTS y
CONFIG_ASH_INTERNAL_GLOB y
CONFIG_ASH_JOB_CONTROL y
CONFIG_ASH_PRINTF y
CONFIG_ASH_TEST y
CONFIG_CROSS_COMPILER_PREFIX ""
CONFIG_FEATURE_UTMP n
CONFIG_FEATURE_WTMP n
EOF
make oldconfig
runHook postConfigure
''
hardeningDisable=format fortify
postConfigure=''
makeFlagsArray+=("CC=cc -isystem /nix/store/8mbd6f5c90c3qcbc2iz3s0vdm38iack3-musl-1.1.19-dev/include -B/nix/store/4lmql7dfnm2c8fxb8qk6pr5nj1d3yc32-musl-1.1.19/lib -L/nix/store/4lmql7dfnm2c8fxb8qk6pr5nj1d3yc32-musl-1.1.19/lib")
''
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment