Utilising previously introduced DESTDIR support, everything is installed
to aformentioned DESTDIR.
Prior to the building of XBPS, we use gzip compressed tarballs as
packages. This requires a lot of strange hacks especially for old tar +
gzip (timestamps, etc causing reproducibility problems). Then we use
XBPS once built.
There is no way for gzip 1.2.4 and tar 1.12 to disable the inclusion of
timestamps into the tarball/gzip, which creates non-reproducible
tarballs and hence packages.
While it is theoretically possible to set the timestamps to unix time 0
using touch, in reality this is not possible because mes libc does not
support utime() which sets the timestamp of a file from userspace. So we
need to ignore it rather than (re)set it.
In rootless boostrap, dev nodes must be mounted before starting the
bootstrap process. However, some of these aren't necessarily mounted,
such as when relying upon BuildStream's sandbox.
Since these are not actually required for either a rootless or
chroot-based bootstrap, simply avoid them.
When not running as root, the shebang workaround requires write
permissions to modify help2man. Since the original file is read-only,
permission must be granted explicitly.
Also fix the double '/' in the /usr prefix while at it.
delete --no-auto-compile : useless in this case (MES doesn't compile)
delete -- : this starts an interactive scheme session (which is not the case here)
Generally, this is bad, because reduces featureset of kernel.
However, we don't use any blobbed features anyway.
1. This allows much lower RAM usage.
2. Speeds up deblobbing from hours -> seconds.
This nukes blobbed files instead of replacing blobs.
For further RAM savings, we want to create sysb -without- having linux
tarball extracted at the same time. To accomplish this, we move the
gen_init_cpio + related script out of the tree and create it afterward.
Also use hard links to free up some more space.