Commit Graph

22088 Commits

Author SHA1 Message Date
Adolf Belka
c7a67b99b7 e2fsprogs: Update to version 1.47.1
- Update from version 1.47.0 to 1.47.1
- Update of rootfile not required
- Changelog
    1.47.1
	UI and Features
		Add post-2038 handling when e2fsprogs is compiled on a system with a
		 64-bit time_t.
		Mke2fs -d can now support an input tar file if the libarchive library is
		 available.
		Add a udev rule which inhibits ext4 file systems from being automounted
		 by udisks.  This avoid security issues from exposing potentially
		 maliciously fuzzed file systems from being mounted without being
		 inspected using fsck first.  Distributions can of course override this
		 feature inhibition, but then they get to own the security vulnerability
		 liability.  Upstream ext4 file system developers are putting
		 distributions on notice that blindly automounting file systems from
		 (potentially) USB thumb drives which clueless users may have picked up
		 in a parking lot is a ***bad*** idea, no matter what clueless enterprise
		 Linux product managers might think.
		The debugfs 'hash' command will use the hash seed and algorithm from the
		 superblock if debugfs has a file system open, instead of requiring the
		 user to specify those parameters explicitly as options to the hash
		 command.  Also add a hash -v option which prints the hash parameters so
		 the user knows what parameters were used when calculating the hash for
		 the filename.
		Teach mke2fs a new extended options, root_perms, which overrides the
		 permissions for the root directory for the new file system.
	Fixes
		When various e2fsprogs are replaying the journal (tune2fs, fuse2fs,
		 e2fsck, etc.) save any error indicator in the superblock, so it can be
		 restored afterwards.  Most of the time (at least with modern kernels) if
		 file system corruptions are discovered, the superblock update is
		 journalled.  However, if the journal is aborted or the journal commit
		 fails, the error code might only be written in the superblock, so we
		 need to save it so that a subsequent fsck can repair the file system
		 after the journal replay.
		When mke2fs was creating a file system with the orphan file inode, it
		 tries to read and truncate the orphan inode before it has been
		 initialized.  If there is an inode from a previous file system located
		 there (as opposed to a all zeroes inode table block caused by a discard
		 of the flash device or a newly created cloud block device or fille
		 image), it can fail with bad checksum error, aborting the mke2fs
		 operation.  Fix this in ext2fs_create_orphan_file() not trying to
		 truncate the orphan file if it is newly allocated (which will always be
		 the case when mke2fs calls this library function).
		In the case where e2fsck comes across an orphan file which is empty but
		 the orphan_present feature is set, in preen mode, e2fsck will now clear
		 the orphan_present feature flag silently.
		E2fsck will now perform more consistency checks on EA (extended
		 attribute value) inodes.
		Fix a big where e2fsck could potentially leak an acl block when
		 releasing an orphan inode.
		Avoid a divide by zero crash in libext2fs if the container
		 infrastructure, such as lxcfs, reports that the system has zero CPU's
		 via sysconf(_SC_NPROCESSORS_CONF).
		When resize2fs is performing an online resize, it's possible for reading
		 the superblock can race with a kernel modifying the superblock with the
		 checksum being invalid and causing the resize to fail with an bad
		 superblock checksum in the buffer cache.  Have resize2fs open the file
		 system using O_DIRECT to avoid the superblock with an invalid checksum.
		Fix a bug where a checksum failure in an htree directory can cause
		 e2fsck's preen mode to abort unnecessarily.
		Fix e2fsck's handling of an invalid symlink in an inline_data directory.
		Fix e4crypt from issuing a spurious "success" error message when trying
		 to set a policy on a non-directory.
		Fix a potential infinite loop in debugfs's logdump command in some edge
		 cases.
		Fix e2fsck to correctly update quota usage after optimizing directories
		 or deleting corrupted inodes.
		Fix fuse2fs so that directories are created with the correct permissions
		 instead of having the other and group write permissions masked off.
		Fix a potential e2fsck divide by zero crash caused by a maliciously
		 fuzzed file system.
		Fix dumpe2fs to report free block ranges correctly for bigalloc file
		 systems.
		Fix resize2fs where resizing a bigalloc file system can result in the
		 free cluster count in the last block group and the total free clusters
		 count to be incorrect.
		Avoid spurious e2scrub failures caused by trying to scrub file syustems
		 that do not have the journal enabled, and by aborting scrub runs while
		 upgrading the e2fsprogs package on Debian/Ubuntu.
		Teach tune2fs to detect a file system which is mounted but is not
		 mentioned in the mount namespace where tune2fs is run by treating a
		 block device which is busy as if it is mounted.
		If tune2fs can't find the mountpoint for a file system which is
		 apparently mounted (perhaps because it's not present in the current
		 mount namespace) when attempting to set the label or UUID in the
		 superblock, fall back to the old method of modifying block device and
		 silence printing any error messages.
		If both the primary superblock and first block group's backup superblock
		 are corrupted, e2fsck will now try additional backup superblocks if they
		 are available.
		Avoid mke2fs from creating an invalid file system with an insufficient
		 number of inodes when creating a file system which is very small (100k),
		 a block size of 1k, and an inode size of 256 bytes.
		Fix a potential deadlock caused by e2fsck being run in Direct I/O mode
		 with the threading optimization enabled.
		Fix e2scrub when the "systemctl" package is installed instead of
		 systemd.  (Addresses Debian Bug #1070107)
		Fixed/improved various Debian packaging issues.
		Update and clarify various man pages.  (Addresses Debian Bugs #1038286,
		 #1041115)
	Performance, Internal Implementation, Development Support etc.
		Add support for SOURCE_DATE_EPOCH environment variable per the
		 specification https://reproducible-builds.org/specs/source-date-epoch
		Improve resize2fs's performance by eliminating extra cache flushes.
		Improve mke2fs's performance when zeroing a large number of inode table
		 blocks (when lazy inode table initialization is not enabled) by batching
		 calls to ext2fs_zero_blocks.
		Use a safe_getenv function for all calls to fetch the environment
		 variable in libext2fs.
		Fix a massive buffer overrun bug in ext2fs_image_super_read().  This
		 function isn't actually used by e2image, and it's unlikely that there
		 are any users of this function since the most common way the e2image
		 file is read is via ext2fs_openfs() with the EXT2_FLAG_IMAGE_FILE, which
		 doesn't actually use ext2fs_image_super_read().
		Add support for building fuse2fs using Fuse V3.
		Use FORTIFY_SOURCE=3 when hardening is enabled for more protection.
		Add support for continuous integration tests using Github Actions.
		Fix Windows-specific portability bugs to allow mke2fs to create a file
		 system in a file which doesn't yet exist and to support file systems
		 larger than 2GB.
		Fix a FreeBSD 14 build failure caused by changing the function signature
		 of qsort_r() to be aligned with the POSIX and glibc definition of
		 qsort_r().
		Fix various portability issues for the Linux 32-bit musl C library,
		 GNU/Hurd and Android.  (Addresses Debian Bug: #1056145)
		Fix various portability problems in the regression test suite.
		Fix various sanitizer, static code analysis, and compiler warnings.
		Synchronized changes from Android's AOSP e2fsprogs tree.
		Updated config.guess and config.sub with newer versions from the FSF.
		Add Romainian translation.
		Update Chinese, Czech, French, Malay, Polish, Swedish, and Ukrainian
		 translations.

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:21 +00:00
Michael Tremer
1465b342ac core188: Ship shadow
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:21 +00:00
Adolf Belka
7f2e089be4 shadow: Update to version 4.16.0
- Update from version 4.15.1 to 4.16.0
- Update rootfile
- sobump in rootfile. Ran find-dependencies but no other linked programs identified.
- nscd is disabled in glibc so it has been disabled in shadow. nscd is enabled by default.
- id and groups (deprecated in shadow) are used from coreutils in IPFire.
- Changelog
    4.16.0
	The shadow implementations of id(1) and groups(1) are deprecated in favor of the
	 GNU coreutils and binutils versions. They will be removed in 4.17.0.
	Support for rlogind in the login(1) implementation has been removed. That is, the
	 login(1) -r flag has been removed.
	The libsubid major version has been bumped, since it now requires specification of
	 the module's free() implementation.
    4.15.2
	Bugfix release.
	This release includes a large amount of fixes, including memory leaks,
	 leaks of other resources such as file descriptors, added missing error
	 handling, and more.
    4.15.3
	Bugfix release.
	This release includes changes to the build system, packaging, and tests;
	 most of which, were reported by Debian packagers. There's also a fix
	 for check_subid_range.

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:21 +00:00
Michael Tremer
357211c24f Start Core Update 188
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:21 +00:00
Michael Tremer
5cee82ee5c Config: Fix the path for the stripper
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:21 +00:00
Michael Tremer
9dcb759f19 flash-images: Fix argument order for copying files
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:21 +00:00
Michael Tremer
a44e11e8bb make.sh: Only catch the error code that triggered the timer
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
75d3cb0626 Config: Build packages with the new macros
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
79f9af395c core-updates: Don't line-break make macros
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
bde9073d0c Config: Show the transformed paths when creating tarballs
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
a8892acefe Config: Make the ARCHIVE_* variables generally available
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
b368b19020 make.sh: Ignore directories as packages
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
59e07d4ba8 make.sh: Store the PID in a variable to avoid $! being overwritten
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
3e41d45e7b Config: Remove ./ from filenames in archives
I am not sure if this would actually create any problems, but it looks
ugly and is inconsistent with the older code.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
18a4a1f27b Config: Don't quote arguments in Makefiles
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
c166e83f1d Config: Reorganise the arguments for COPY_FILES
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
e410a35a84 intel-microcode: Hardlink all files to save space
This will save about 3 MiB.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
708f26352a core-updates: Refactor how we package the archive
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
7908cca79b core-updates: Remove importing the meta file
We don't use these any more and even if we did, we cannot import any
variables into a make script just like that.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
162bb72ad9 flash-images: Fix typo
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
63faf35972 make.sh: Fix checksum generation of the toolchain once again
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
b1cf1d9cfb make.sh: Join compression arguments as a string
Otherwise, the array gets split and tar cannot identify which option
belongs to where.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
dbfa2c38b3 gcc: Build libstdc++ in parallel
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
7d1e1a5b91 gcc: Fix limits.h in first toolchain pass
This is necessary so that the compiler is using the correct glibc
headers.

Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
Michael Tremer
a8e1086954 make.sh: Use the print_line function for correct padding
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2024-07-22 15:21:20 +00:00
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