Commit graph

18 commits

Author SHA1 Message Date
fosslinux
bdd0227fdd Add openssl 1.1.1l. 2022-03-07 19:02:12 +11:00
fosslinux
a8cdecdfbd Add libarchive 3.5.2. 2022-03-07 19:02:12 +11:00
Dor Askayo
7ecad37d87 Avoid the creation of some dev nodes in chroot mode
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.
2022-01-17 14:19:30 +02:00
Dor Askayo
b03f3e11c0 Use rm -f to avoid interactive prompts
This is required when not running as root to avoid prompts when
removing read-only files.
2022-01-17 14:09:29 +02:00
fosslinux
5dbf82e8e4 A couple of fixes wrt bootstrap.cfg
Correctly source. export so that scripts can access.
2021-10-14 21:31:45 +11:00
fosslinux
b0f9c00ef3 Make guile build work on chroot 2021-10-14 21:30:33 +11:00
fosslinux
622b4de875 Fix guile.
- The date reproducibility issue was not actually set to any date, which
  could cause issues in the fiture, fix that sed.
- Fix a reproducibility issue (under QEMU), where the ordering of files
  within libguile can be random. This also affects guile binary so we
  need to rebuild that.
- Some change in kernel versions means that guile binary is
  significantly different in newer kernel versions. Because we cannot
  know the version of the host under chroot mode we must disable guile
  checksum entirely.
- Update checksums accordingly.
2021-10-13 17:57:50 +01:00
Andrius Štikonas
afa162397c Add autoconf 2.71. 2021-10-10 22:55:41 +01:00
Andrius Štikonas
c6c8a1eb7f Move chroot transition script inside bootstrap. 2021-10-10 16:38:52 +01:00
Andrius Štikonas
097cb2d72f Remove pre-built java file. 2021-10-09 01:13:25 +01:00
Andrius Štikonas
e3d0191949 Update stage0-posix. 2021-10-08 20:55:06 +01:00
Andrius Štikonas
8857f53cd1 GNU Guile 3.0.7 2021-09-20 14:25:54 +10:00
Andrius Štikonas
de582f1866 Boehm-gc 8.0.4 2021-09-20 14:25:53 +10:00
Andrius Štikonas
e1350d1745 libatomic_ops 7.6.10. 2021-09-20 14:25:53 +10:00
Andrius Štikonas
bdab13eb60 libffi 3.3 2021-09-20 14:25:53 +10:00
fosslinux
04180f5672 Various fixes + cleanup.
- Add parts.rst documentation for Linux kernel.
- Completely fix problems caused by new bootstrap, update checksums for
  /usr.
- Globalise populate_device_nodes.
- Enable deblobbing.
2021-09-14 14:59:08 +10:00
fosslinux
b93a931a53 Move to /usr prefix.
- This is much more standard and replaces /image in sysa and is the
  standard in sysc (avoids many issues).
- GCC needs to have a file created for some unknown reason.
- Checksums updated.
2021-08-27 14:54:08 +10:00
fosslinux
5c88f1c87f Add sysb and sysc scaffolding.
Now that we have the Linux Kernel built, we move to a full-disk (rather
than initramfs) setup in sysc. However, we cannot assume the seed kernel
has support for mounting hard drives. So, first we need to kexec into
sysb, which is used as a jumping off point to create the hard drive for
sysc.

Additionally, since 2.6.16 does not have support for on-demand initramfs
(initramfs must be built into kernel), we will have to rebuild the linux
kernel within sysb without the initramfs.

All of this process is not performed for chroot mode. Instead, we skip
sysb and jump straight to sysc, copying over appropriate data.

The python scripts have been changed slightly. Each sys* inherits
SysGeneral, which contains various functions which are not specific to
any sys* and simplifies those files. rootfs now also handles sysb and
sysc.

bootstrap.cfg also gives an indication whether we are running in a
chroot to avoid attempting to kexec/mount within a chroot.
2021-08-27 14:54:08 +10:00