Commit Graph

14 Commits

Author SHA1 Message Date
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