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

Package aktualizr for Ubuntu 20.04 LTS #11

Merged
merged 28 commits into from
Jun 27, 2024
Merged

Conversation

charles2910
Copy link
Contributor

We are going to package aktualizr for Ubuntu 20.04, 22.04, 24.04 and Debian bullseye/bookworm. Since it's a lot of stuff, I'd like to have each packaging in its own branch so toradex/focal, toradex/jammy, toradex/noble, toradex/bullseye and toradex/bookworm. This one is already named toradex/focal so I'm opening the MR to make it easier to see the differences and so we have a place to discuss/review everything.

All the changes are declared in d/changelog but the main ones are:

  • Use the latest Toradex's aktualizr version in sync with what's going to be in the next quarterly release of Torizon OS;
  • Use of reusable workflow (currently it doesn't work for armhf due to an weird interaction between qemu-user-static and CMake) so we can't get it to build via CI, though it builds correctly using native compilation + Ubuntu Focal schroot with sbuild;
  • Remove bootloader update stuff and ostree options from config files;
  • Moved config files to /etc/ to comply with FHS 3.0;
  • Enabled offline updates.

@charles2910 charles2910 self-assigned this Jun 24, 2024
@leonheldattoradex leonheldattoradex marked this pull request as draft June 25, 2024 12:03
@leonheldattoradex leonheldattoradex changed the title Package aktualizr for Ubuntu 20.04 LTS (don't merge please) Package aktualizr for Ubuntu 20.04 LTS Jun 25, 2024
@charles2910 charles2910 marked this pull request as ready for review June 25, 2024 12:19
@leonheldattoradex
Copy link
Contributor

In regards to

Use of reusable workflow (currently it doesn't work for armhf due to an weird interaction between qemu-user-static and CMake) so we can't get it to build via CI

There is a clear workaround in the thread you linked [0]. Have you tried creating + applying a patch to add the -D_FILE_OFFSET_BITS=64 option?

[0] https://gitlab.kitware.com/cmake/cmake/-/issues/20568#note_780369

debian/extra_files/40-hardware-id.toml Outdated Show resolved Hide resolved
debian/extra_files/70-disable-ostree.toml Outdated Show resolved Hide resolved
debian/aktualizr-torizon.install Outdated Show resolved Hide resolved
debian/extra_files/secondaries.json Outdated Show resolved Hide resolved
debian/extra_files/bl_actions.sh Outdated Show resolved Hide resolved
@charles2910
Copy link
Contributor Author

charles2910 commented Jun 25, 2024

In regards to

Use of reusable workflow (currently it doesn't work for armhf due to an weird interaction between qemu-user-static and CMake) so we can't get it to build via CI

There is a clear workaround in the thread you linked [0]. Have you tried creating + applying a patch to add the -D_FILE_OFFSET_BITS=64 option?

[0] https://gitlab.kitware.com/cmake/cmake/-/issues/20568#note_780369

@leonheldattoradex The solution is to recompile CMake with that flag. I don't think it's a viable solution for what the idea here is.

Edit: tagging Leon explicitly - I always forget to tag people

@charles2910 charles2910 force-pushed the toradex/focal branch 3 times, most recently from 98cf2de to 51c4102 Compare June 25, 2024 18:06
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
From aktualizr's documentation:

force_install_completion: Forces installation completion. Causes a
system reboot when using the OSTree package manager. Emulates a reboot
when using the fake package manager.

reboot_command: Command to reboot the system after update completes.
Applicable only if uptane::force_install_completion is set to true.

Since we are not using ostree for Debian/Ubuntu based distros, remove
these options.

Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
d/aktualizr-torizon.install: update install list to reflect the change

Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
s|/usr/lib|/etc| in:

- d/aktualizr-torizon.install
- d/extra_files/20-sota-device-cred.toml
- d/extra_files/50-secondaries.toml

Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
It's not supported outside of Torizon OS.

- d/extra_files/bl_actions.sh: remove bootloader secondaries script
- d/extra_files/secondaries.json: remove bootloader secondary

Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
aktualizr-torizon is built with support for offline updates, but it
requires a config option to enable it and define the mountpoint where to
search for it. This commit adds the config file with these options
commented and requires user interaction to enable it.

Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Closes: #10
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Update to upstream version '1.0+git20240529.d4ddfbe5+ds'
with Debian dir 9ca91a6b8e365d9c17aeed5ae76a19a606e2506c
Piuparts workflow is disabled because it doesn't support running on
ubuntu.

Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
@charles2910 charles2910 force-pushed the toradex/focal branch 2 times, most recently from 8c2027a to 90c00b0 Compare June 26, 2024 13:17
…ease

Related-to: TCCP-733
Signed-off-by: Carlos Henrique Lima Melara <carlos.melara@toradex.com>
@leonheldattoradex leonheldattoradex merged commit 20e91e4 into toradex/any Jun 27, 2024
2 checks passed
@leonheldattoradex leonheldattoradex deleted the toradex/focal branch June 27, 2024 14:34
@charles2910 charles2910 restored the toradex/focal branch June 27, 2024 19:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants