Commit graph

51 commits

Author SHA1 Message Date
fosslinux
64b9920871 Move flex to git snapshots 2025-02-02 10:02:32 +11:00
fosslinux
aad75ec2a2 Remove more pregenerated files for grub 2.06
- Documentation
- Test file blobs
2024-12-21 10:57:35 +11:00
Andrius Štikonas
b120a39ec6 cmp should use 0 immediate not 0 address. 2024-10-24 22:24:13 +01:00
mid-kid
346d1ce4b2 Enable _ctypes and dynamic linking for python 2024-07-31 18:47:57 +02:00
Andrius Štikonas
e6ed60cec4 Update to mes-0.26.1. 2024-06-25 08:58:12 +01:00
fosslinux
7937797ea5 Bzip2 compression in Linux initramfs/kernel
There isn't really any reason to use gzip instead of bzip2 for the Linux
initramfs/kernel, since we have it!

Saves a few MB (~13MB as far as I can tell)
2024-05-28 21:57:36 +10:00
Andrius Štikonas
2d5a85e770 Update to nss 3.99. 2024-04-28 13:29:00 +01:00
Andrius Štikonas
0e6133eed2
Merge pull request #464 from Googulator/grub-reproducibility
Drop non-reproducible manpage from Grub package
2024-04-20 15:19:09 +01:00
Gábor Stefanik
8c67b9ee9c Drop non-reproducible manpage from Grub package
This embeds the type of the building system's firmware at build time,
causing different checksums on UEFI vs BIOS machines.

Fixes #463
2024-04-19 00:19:29 +02:00
Andrius Štikonas
71253f7f8c Remove patch that is no longer needed.
This fixed some issues with weak symbols but now tcc is properly patched.
2024-04-18 21:28:39 +01:00
Gábor Stefanik
aa3d36b934 Update checksums for x86, amd64 & riscv64
Also, add missing non-x86 checksums for simple-patch.
2024-04-16 00:24:44 +02:00
Andrius Štikonas
281f6e44d9
Merge pull request #455 from Googulator/linux-openela
Upgrade kernel to 4.14.341-openela
2024-04-15 19:41:59 +01:00
Googulator
a5a689c954
Merge pull request #457 from fosslinux/byacc
Move heirloom lex and flex after musl, replace heirloom yacc with byacc
2024-04-15 10:17:13 +02:00
Gábor Stefanik
0c718aeece Update checksums for heirloom yacc -> byacc change 2024-04-15 02:17:59 +02:00
Gábor Stefanik
c75d609cf7 Upgrade kernel to 4.14.341-openela
This is a continuation of the 4.14 series by the Open Enterprise Linux
Alliance, ostensibly to the same maintenance standards as the now
discontinued kernel.org LTS.

This code is primarily offered as a Git repository, with gz tarballs
also available, but no xz versions. Switching back to a gzipped version
of the kernel source code would introduce too much srcfs growth, so we
use the last kernel.org tar.xz release (4.14.336), and apply OpenELA's
changes using a patch generated from the Git repository.
2024-04-14 05:04:24 +02:00
Gábor Stefanik
637fa823f0 Upgrade OpenSSL to 3.0.13
Fixes #451
2024-04-13 23:43:41 +02:00
Gábor Stefanik
60ec9ea80c Update Linux kernel configuration & patches
This updates the Linux kernel configuration, removing irrelevant
networking-related components, and switching framebuffer drivers to
the DRM-based ones. With this, we can finally bootstrap on systems
with newer NVIDIA cards, which would green screen with the nvidiafb
driver.

KVM is still disabled, see #443 - VIRTUALIZATION is also disabled,
as it's useless without KVM or any other suboption being enabled.

Additionally, we can now drop the bad-asm patch, since our newer
binutils has no problem supporting that syntax, and it doesn't look
quite innocuous to me, removing an offset from a memory access.

The kernel is now built in 2 stages: first, we build vmlinux only,
then, after cleaning up any intermediate .o files (except the ones
needed to build efistub), we convert it to a bzImage. This required
some creative use of the -o option to convince Make not to rebuild
all of the .o files we've just deleted as dependencies.
2024-02-18 17:54:25 +01:00
Gábor Stefanik
11d3605b08 Upgrade Linux kernel to 4.14.336
This is the last LTS version buildable using GCC 4.0.x. The next one,
version 4.19, requires at least GCC 4.6.

Fortunately, this is also the first version of the Linux kernel
without firmware blobs being included in /firmware, so the FSFLA
deblob scripts aren't needed anymore to ensure a fully auditable
kernel - the 3 remaining drivers that do include blobs masquerading
as source code are removed via a patch, avoiding all the other side
effects of the deblob scripts.
This doesn't compromise the trustworthiness of the bootstrapped
environment, since all the other drivers deblob would remove use
the firmware loader mechanism, which does nothing when the actual
firmware blobs aren't installed on the system separately. Features
dependent on firmware still won't work, but many drivers that load
firmware do so only optionally. This includes r8169, the driver for
the Realtek gigabit NICs found on many x86 motherboards.

This kernel is considerably larger than 4.9.10, and we build more
of it (including drivers that would previously get stripped away by
the deblob script, such as r8169), so to accommodate that, Fiwix
initrd size is increased by 64MiB, while lowering kexec space by
the same amount to ensure enough userspace memory available in Fiwix.
Fiwix's maximum open file count is also bumped from 1.5K to 2.5K.

The Documentation folder is deleted before build, to further save
space in the ramdisk.
2024-02-17 15:37:33 +01:00
fosslinux
54068851d8
Merge pull request #434 from fosslinux/m4
M4 alternative update
2024-02-07 22:11:58 +00:00
fosslinux
6b4ec19e19 Add m4 1.4.19 2024-02-07 20:35:22 +11:00
fosslinux
068f7d8f40 Fix diffutils manpage reproducibility 2024-02-07 20:22:10 +11:00
fosslinux
ba9d182471 Revert "Update m4 to 1.4.10"
This reverts commit 6d8cf14998.
2024-02-06 18:06:46 +11:00
fosslinux
ffbdd8bc18 Add gawk 5.3.0 2024-02-05 18:51:49 +11:00
Gábor Stefanik
6d26855dc6 Support reboot in non-chroot modes using grub and an init script
We use grub-2.06 as 2.12 has some packaging issues, and can't be
built in live-bootstrap for now.
2024-02-04 16:54:13 +01:00
fosslinux
9c6e5d6406 Add diffutils 3.10 2024-02-04 14:57:46 +11:00
fosslinux
cb4404029d Add gzip 1.13
Closes #369
2024-02-04 14:55:55 +11:00
fosslinux
6e05585ff9
Merge pull request #426 from fosslinux/opendoas
Opendoas (ie, sudo)
2024-02-04 03:52:25 +00:00
fosslinux
bd303ada4a
Merge pull request #425 from fosslinux/m4-update
Update m4 to 1.4.10
2024-02-04 03:50:55 +00:00
fosslinux
2188e8182a Add opendoas 2024-02-03 10:07:41 +11:00
fosslinux
75772adb91 Allow the use of setuid binaries
This also changes checksum of util-linux.
2024-02-03 10:07:41 +11:00
fosslinux
6d8cf14998 Update m4 to 1.4.10 2024-02-02 18:05:02 +11:00
fosslinux
bfd951ae51 Add shadow 2024-02-01 21:24:56 +11:00
fosslinux
0696018410 Add libbsd 2024-02-01 21:24:56 +11:00
fosslinux
bbfab004c8 Add libmd 2024-02-01 21:24:56 +11:00
fosslinux
6c377de2f0 Add basic users and groups 2024-02-01 21:23:16 +11:00
fosslinux
438e01800c Update checksums 2024-01-26 10:29:57 +11:00
fosslinux
9632f6af01 Update coreutils to 9.4 2024-01-26 10:29:18 +11:00
Gábor Stefanik
9ed4416940 Upgrade autogen bootstrap tarball to v1.0.1 to fix return code issue 2024-01-12 16:11:14 +01:00
fosslinux
5b7175de3e
Merge pull request #401 from stikonas/weak_symbols
Fix weak symbols to work in tcc.
2024-01-10 07:20:54 +00:00
fosslinux
f51fb080b1
Merge pull request #391 from Googulator/bare-metal-linux
Make the Linux kernel & Fiwix->Linux kexec more bare-metal-friendly
2024-01-10 07:16:20 +00:00
Andrius Štikonas
be15f9caca Fix weak symbols to work in tcc.
Fixes #322.
2024-01-09 22:52:43 +00:00
rick-masters
1bffe44154
Upgrade Fiwix to 1.5.0-lb1, pulling from upstream Mikaku repo. (#397) 2024-01-08 01:37:15 +00:00
Gábor Stefanik
82c570694a Make the Linux kernel & Fiwix->Linux kexec more bare-metal-friendly
* Enable additional hardware drivers in Linux for better bare metal
  display, network & input device compatibility
* Disable ATA-over-Ethernet support, because it spams the network
  with unnecessary packets, is basically useless for bootstrapping,
  and may even be a security risk
* Increase Fiwix initrd size to 1280MB to fit a larger Linux build
* Make the Fiwix kexec size configurable the same way as initrd
  (and reduce from 280MB to 256MB which is sufficient in my testing)
* Use a more conservative memory map for Fiwix & Linux
* Boot Linux with consoleblank=0 on bare metal, so the build won't
  go blind after 5 minutes
* Support kexec-fiwix with interrupts disabled (will be useful later
  when builder-hex0 is updated)
2024-01-02 01:33:09 +01:00
Eduardo Sánchez Muñoz
5610998a4d Update curl to 8.5.0 2024-01-01 22:39:24 +01:00
fosslinux
fbb3e97149 Update ca-certificates to 3.95 2023-12-29 12:14:27 +11:00
Gábor Stefanik
c8837203c8 Fix intermittent failure to build automake-1.15.1 in bwrap (#365) 2023-12-27 08:06:51 +01:00
fosslinux
3fd101e70a
Merge pull request #359 from fosslinux/binutils-2.41
Update binutils to 2.41
2023-12-26 01:53:39 +00:00
Gábor Stefanik
47711cfea9 Fix non-reproducible Linux kernel build due to timestamps
Linux's KBUILD doesn't follow SOURCE_DATE_EPOCH, but rather it
uses its own variable, KBUILD_BUILD_TIMESTAMP.

While we are at it, also update kexec-linux's checksum, which
didn't match either. (This one was reproducible, it was just
out of date.)
2023-12-25 10:16:17 +01:00
fosslinux
191c013e23 Update binutils to 2.41 2023-12-21 11:03:15 +11:00
fosslinux
ff4f97ab8f Update all checksums 2023-12-15 21:44:27 +11:00