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
Michael Tremer
90e508839f
make.sh: Add a tail command to stream any logs
...
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org >
2024-07-22 15:21:19 +00:00
Michael Tremer
a061f9a535
make.sh: Pass on individual build arguments
...
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org >
2024-07-22 15:21:19 +00:00
Michael Tremer
6b4cb7d793
make.sh: Don't generate any documentation in the source directory
...
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org >
2024-07-22 15:21:19 +00:00
Michael Tremer
6a7053fd82
make.sh: Kill all child processes if unshare terminates
...
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org >
2024-07-22 15:21:19 +00:00
Michael Tremer
6e6cb04630
make.sh: Update the runtime after the interrupt
...
This is a lot better because this puts the code where it is being
executed and allows us to run run_command in a subshell, too.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org >
2024-07-22 15:21:19 +00:00
Michael Tremer
513814ab98
make.sh: Build the entire distribution in one go
...
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org >
2024-07-22 15:21:19 +00:00
Michael Tremer
ce2cea174f
make.sh: Fix indentation
...
No functional changes.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org >
2024-07-22 15:21:19 +00:00
Michael Tremer
8af25b83a3
make.sh: Move a comment to where it should be
...
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org >
2024-07-22 15:21:19 +00:00
Michael Tremer
37d4fcc9b3
make.sh: Launch the timer only when we need it
...
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org >
2024-07-22 15:21:19 +00:00
Michael Tremer
b55434ff46
make.sh: Have the background timer update the process runtime
...
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org >
2024-07-22 15:21:19 +00:00
Michael Tremer
9d9c7cef74
make.sh: Create a timer co-process
...
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org >
2024-07-22 15:21:19 +00:00
Michael Tremer
dfb583fee3
make.sh: Don't export loads of variables in the main script
...
We clear and reset the environment when we launch any build commands and
therefore don't need to do this here.
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org >
2024-07-22 15:21:19 +00:00
Michael Tremer
e7601c7a93
make.sh: Don't mess with Bash's command hashing
...
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org >
2024-07-22 15:21:19 +00:00
Michael Tremer
e2e0d0879e
make.sh: Refactor downloading sources
...
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org >
2024-07-22 15:21:19 +00:00
Michael Tremer
0059a357de
make.sh: run_command: Fix basedir in and outside the chroot
...
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org >
2024-07-22 15:21:19 +00:00
Michael Tremer
7ee70f04ea
make.sh: Disconnect standard input from make commands
...
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org >
2024-07-22 15:21:19 +00:00