Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add new Linux Mint release support in host-release.sh #5540

Merged
merged 1 commit into from
Aug 21, 2023
Merged

Add new Linux Mint release support in host-release.sh #5540

merged 1 commit into from
Aug 21, 2023

Conversation

TailsFanLOL
Copy link
Contributor

No description provided.

@TailsFanLOL TailsFanLOL requested a review from a team as a code owner July 31, 2023 18:28
Copy link
Contributor

@schwar3kat schwar3kat left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see other places in the build code that could possibly require this change:
extensions/sunxi-tools.sh L12
config/sources/families/include/crust_firmware.inc L26
lib/functions/image/partitioning.sh L42
@rpardini @viraniac - perhaps at some stage in future this should be consolidated in a single variable?

@viraniac
Copy link
Collaborator

extensions/sunxi-tools.sh L12
config/sources/families/include/crust_firmware.inc L26

Yes, the values do need to be added here. This is because the compiler needed to compile crust is not available before debian bookworm, ubuntu 22.04 and their equivalent version of linux mint. Once we drop support for older host OSes, we can have the code defined without if block.

lib/functions/image/partitioning.sh L42

I think we should have that mkopts directly now, all the older OSes than whats mentioned there are declared EOL by their respective vendors. @rpardini thougts?

@rpardini
Copy link
Member

rpardini commented Aug 1, 2023

lib/functions/image/partitioning.sh L42

I think we should have that mkopts directly now, all the older OSes than whats mentioned there are declared EOL by their respective vendors. @rpardini thougts?

We've had multiple discussions on this. This is disabling the following features (from man ext4):

       64bit
              Enables the file system to be larger than 2^32 blocks.  This feature is set automatically, as needed, but it can be useful to specify this feature explicitly  if
              the  file  system  might  need  to be resized larger than 2^32 blocks, even if it was smaller than that threshold when it was originally created.  Note that some
              older kernels and older versions of e2fsprogs will not support file systems with this ext4 feature enabled.

       metadata_csum
              This  ext4  feature enables metadata checksumming.  This feature stores checksums for all of the file system metadata (superblock, group descriptor blocks, inode
              and block bitmaps, directories, and extent tree blocks).  The checksum algorithm used for the metadata blocks is different than the one used for  group  descrip‐
              tors with the uninit_bg feature.  These two features are incompatible and metadata_csum will be used preferentially instead of uninit_bg.

In my understanding, this was introduced when those features were "new", and older kernels couldn't cope with them.
A decade passed, and we're shipping rootfs without these features, still.
Specifically, not having metadata_csum makes rootfs more prone to corruption, but also makes resize faster.
I've also empirically determined that metadata_csum is incompatible with u-boot's ext4write (which is not enabled anywhere as far as I know).

@igorpecovnik
Copy link
Member

Once we drop support for older host OSes, we can have the code defined without if block.

Then changing this PR to drop them all? https://armbian.atlassian.net/browse/AR-1811

@schwar3kat
Copy link
Contributor

schwar3kat commented Aug 5, 2023

Then changing this PR to drop them all? https://armbian.atlassian.net/browse/AR-1811

I like this approach. Keeps it simple.
Valid host releases would then be "bookworm sid jammy kinetic lunar vanessa vera victoria".

I'm also in favor of anything that could build a more a robust rootfs, even if the resize is slower, if this is now feasible.
Could using metadata_csum perhaps mitigate some of the complaints on the forum about easily corruptible SD cards when compared with other OS's.

Copy link
Member

@rpardini rpardini left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The ext4 stuff is being handled in #5619
Trixie (Debian 13) is being handled in #5621
I think this good to merge (it only adds victoria -- Mint 23.1, which is based on Jammy) to supported build hosts.

@schwar3kat schwar3kat merged commit bd339fc into armbian:main Aug 21, 2023
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants