Commit Graph

22063 Commits

Author SHA1 Message Date
Michael Tremer
2c33bdf0e5 make.sh: Don't be verbose when creating the packages dir
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
56312598b3 make.sh: Erase the line when resizing the screen
This should leave less clutter, but there is still some.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
9bdc9a5b80 make.sh: Remove the PWD variable
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
0de9b40351 make.sh: Refactor the terminal output
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
1ab2481875 make.sh: Enable the timer for the toolchain, too
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
c6043558fb Config: Unexport lots of environment variables
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
a3bd0672b3 make.sh: Always create /root in the chroot environment
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
75493bbcb3 make.sh: Fix mounting the QEMU helper binary
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
1090b297aa make.sh: Set PATH before entering the chroot environment
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
54d59f56c2 make.sh: Fix toolchain checksum validation
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
c08841bb49 make.sh: Export BUILD_DIR and LOG_DIR
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
829f2b465e make.sh: Create the /tools symlink to the right place
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
a28226714b make.sh: Pass extra options in lfsmake1
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
a59e8abb1e cdrom: Fix typo
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
ebfcf83d96 .gitignore: Ignore images_* directories
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
61cb600a13 flash-images: Create the base image as a sparse file
This will be much faster as it creates less IO.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
64192acb7f make.sh: Use less aggressive compression for Zstandard
Otherwise this takes way too long.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
4830e79f3c make.sh: Rewrite how we are looking for rootfiles
No function changes, just performance.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
3e9cb47e0e flash-images: Don't mess with depmod
This file could not be created anyways as the directory did not exist.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
20280ed337 images: Ensure that all mount points are created
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
d4ad987a5d make.sh: Drop stripping
This will massively improve the build process because we will only strip
the files that we need. The build system will remain as is.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
8f1c5b617d make.sh: Correctly pass ZSTD_OPT
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
cd89b58820 make.sh: Use --long for Zstandard compression
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
de44376208 flash-images: Collect files again instead of relying on the tarball
This has always been an ugly hack.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
1a9127ca54 flash-images: There is no need to for the mount check any more
We always start with a fresh mount namespace, so there cannot be
anything left.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
f8aa7ceda3 Config: Create common functions to create archives
The compression code is very messy because it has changed so many times.
This cleans this up and creates common functions that can be used for
the ISO images as well as packages.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
abfebe255c cdrom: Fix syntax error
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
319619f3b6 archive.files: Make this slightly more efficient
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
15b38c6387 Config: Remove debugging code
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
36fb6a6605 make.sh: Create Core Update packages, too
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
f43ebebce4 make.sh: Create loop devices as block devices
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
eba9f280f8 make.sh: Don't drop into the lfs/ directory when entering a shell
This is not a very useful place to be.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
20e4920621 make.sh: Refactor building packages
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
27d0a2c477 make.sh: Simplify the initial configuration a little bit more
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
ba844d1dc8 make.sh: Change execute() so that it can be used outside the namespaces, too
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
560b9ecc81 make.sh: Use the new package function to download sources
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
abbcbd1a97 make.sh: tail on the preparation log file, too
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
dd813c6bc8 make.sh: Explicitely download packages when building the toolchain
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
761e95ad0c make.sh: Don't revalidate the images all the time
Calling b2 causes make to verify all source which creates a lot of IO.

This is not really necessary because install will do the same and the
build would fail if the source checksums didn't match.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
449f2879af make.sh: Refactor the execute function
The first version was a little bit messy with all the checks in all
sorts of places. We now create one large array and update it whenever
the configuration changes.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
9fc24981fa make.sh: Create a large unified function to run commands
This now includes the toolchain for which we need to set up the same
environment, except slightly differently.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
e9fcb8c36d cdrom+flash-images: Write images to the images directory
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
28fa687731 make.sh: Split environment and make variables
This got very messed up in the past and I think we would benefit greatly
from splitting this again for a less cluttered environment in the build
chroot and reusability of the make commands for the different stages.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
878f864c1a make.sh: Call the correct target for checksum check
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
5db99637ae make.sh: Bind-mount the QEMU helper instead of copying the binary
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
92a2ed67be make.sh: Install the QEMU helper only once
This needs to be done only once when we initialize the environment.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
3a272cfe40 make.sh: Pass variables before the commands
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
7a6c3fb0d0 make.sh: Correctly pass the command return code in run_command
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
a4578c6928 flash-images: No need to sleep for automount any more
I am not sure whether automount is being used at all any more, but since
we are now running in our own namespace, it certainly has no business
here.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:19 +00:00
Michael Tremer
68fea175f5 make.sh: Create and mount and images directory
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:19 +00:00