Commit Graph

6236 Commits

Author SHA1 Message Date
Eric Curtin
97117753e3 bootloader: Add an aboot (Android) bootloader backend
aboot is special in that it packages kernel, initrd, cmdline, dtb and
signature one combined image (similar to upcoming unified kernel
images). This is then loaded as an image into an aboot partition.

This image is signed by the OS vendor and covers everything in the
image. So locally on the deployed system it should not be possible to
boot an unsigned image (unless signature checking is turned off).

We call a shell script aboot-deploy when it is required to write a new
image to the aboot partition (a file typically starting with aboot and
ending in .img extension). This shell script may also read some
configurations from a .cfg file.

Signed-off-by: Eric Curtin <ecurtin@redhat.com>
2022-12-15 16:09:08 +00:00
Jonathan Lebon
ad96b8afea
Merge pull request #2766 from cgwalters/avoid-endless-object-queueing
Closes https://github.com/ostreedev/ostree/issues/2732
2022-12-01 15:30:03 -05:00
Colin Walters
1fb9404612
Merge pull request #2789 from lucab/ups/autoconf-gpg-libs
configure: use pkg-config with newer gpgme and gpg-error
2022-11-29 09:21:18 -05:00
Luca BRUNO
fa6064beb4
lib/repo: fix an 'unused-function' warning
This silences a warning when building the project with `--with-gpme=no`.
2022-11-29 08:51:53 +00:00
Luca BRUNO
dd98a2a4cf
configure: use pkg-config with newer gpgme and gpg-error
This tweaks autoconf logic in order to use pkg-config for gpgme
and gpg-error when available.
Recent versions of gpgme directly provide threaded support, and
gpg-error started shipping a .pc file. Thus on recent distributions
it is possible to directly use pkg-config for both. On older
environments, the legacy logic is kept in place.
2022-11-29 08:51:52 +00:00
Colin Walters
7b4f1b7699
Merge pull request #2788 from lucab/ups/lib-assertions
lib: assert more invariants
2022-11-26 10:19:30 -05:00
Colin Walters
aafabc56a2
Merge pull request #2787 from cgwalters/release-rust-bindings
rust: Bump to 0.17
2022-11-24 11:15:17 -05:00
Luca BRUNO
2034ed0419
lib: assert more invariants
This converts a few more safety checks into either plain GErrors
or hard assertions.
2022-11-24 09:51:10 +00:00
Colin Walters
3807b84ef9 rust: Bump to 0.17
We switched gio and cap-std versions, so we need to bump
our own semver.
2022-11-23 13:28:29 -05:00
Colin Walters
4940c3a918
Merge pull request #2786 from cgwalters/release
Release 2022.7
2022-11-23 12:40:02 -05:00
Colin Walters
1d1aaec899 configure: post-release version bump 2022-11-23 10:42:45 -05:00
Colin Walters
e2f8ea6957 Release 2022.7 2022-11-23 09:02:52 -05:00
Joseph Marrero Corchado
832b9aec06
Merge pull request #2784 from cgwalters/ci-build-integration-tests
ci: Add a flow that combines C build and Rust integration tests
2022-11-22 15:21:38 -05:00
Joseph Marrero Corchado
ccba949fa6
Merge pull request #2781 from cgwalters/bump-bindings 2022-11-22 14:34:39 -05:00
Colin Walters
d29eebca5c ci: Add a flow that combines C build and Rust integration tests
Today it's just the Jenkins flow which builds our Rust
integration tests.  Let's add a flow to the GH actions which
does this, and also runs inside a (privileged) container.

Prep for doing more testing of the ostree-container path here.
2022-11-22 14:27:00 -05:00
Joseph Marrero Corchado
52b12e71ee
Merge pull request #2782 from cgwalters/testinst-updates 2022-11-22 14:22:48 -05:00
Luca Bruno
f79c7a0a0a
Merge pull request #2783 from cgwalters/test-sudo
tests: Require OSTREE_TEST_SUDO to be set to use `sudo`
2022-11-22 16:30:50 +00:00
Colin Walters
647f7fb7f1 tests: Require OSTREE_TEST_SUDO to be set to use sudo
IMO, tools invoking `sudo` automatically is a huge anti-pattern.
Require this to be opt-in.

In practice also...these tests really want to be *integration*
and not unit tests because involving `sudo` alongside uninstalled
binaries just creates a giant mess.

Closes: https://github.com/ostreedev/ostree/issues/2761
2022-11-22 10:27:28 -05:00
Colin Walters
2dc92b25cd tests/inst: Update sh-inline 2022-11-22 10:14:48 -05:00
Colin Walters
eadb8c3d58 tests/inst: Update cap-std-ext to 1.0 2022-11-22 10:14:17 -05:00
Colin Walters
c0beedbb48 tests/inst: Drop nix dependency
It has various semver bumps and we were literally just using
it to duplicate what's already in `libc`.
2022-11-22 10:13:42 -05:00
Colin Walters
180a1d8f0a tests/inst: Update to latest ostree-ext 2022-11-22 10:09:20 -05:00
Colin Walters
cceb04de15 rust: Regenerate with latest gir and C sources 2022-11-22 09:53:59 -05:00
Colin Walters
8c831311be
Merge pull request #2768 from cgwalters/update-gio
rust: Update to gio 0.16
2022-11-22 09:50:27 -05:00
Colin Walters
7423720506
Merge pull request #2779 from cgwalters/sysroot-mountns
sysroot: Add an API to initialize with mountns
2022-11-22 09:44:04 -05:00
Colin Walters
599ffefe7f sysroot: Add an API to initialize with mountns
This lowers down into the C library some logic we
have in the binary/app logic, in prep for having more Rust-native
CLI code in https://github.com/ostreedev/ostree-rs-ext/pull/412

Basically we want to *ensure* a mount namespace by invoking
`unshare()` if necessary, instead of requiring our callers
to do this dance.

This also helps fix e.g.
Closes: https://github.com/ostreedev/ostree/issues/2769
2022-11-22 08:45:13 -05:00
Luca Bruno
d9bb160a7c
Merge pull request #2776 from cgwalters/fix-potential-double-unwind
repo: Avoid potential double unwind when writing panic value
2022-11-22 11:18:14 +00:00
Colin Walters
71e3bb8b80 Allow missing docs on two glib::wrapper functions
This is being triggered in gtk-rs generated code.
2022-11-21 13:40:53 -05:00
Colin Walters
a4f5645926 repo: Avoid potential double unwind when writing panic value
Thanks to @shinmao for the report!

Closes: https://github.com/ostreedev/ostree/issues/2775
2022-11-21 13:21:09 -05:00
Luca BRUNO
61daa277a1 ostree: manually patch generated files
This manually adds a missing `ToGlibPtr` import, which seems to be result
of some bugs in `gir` code-generation.
2022-11-21 13:18:51 -05:00
Colin Walters
1a76f45fd7 rust: Update to gio 0.16
This was quite seamless; the only thing I had to tweak was adding
`+ Send` bounds in the `Box<dyn Error>` manual checksum_async API.
2022-11-21 13:18:51 -05:00
Colin Walters
9d652be3b1
Merge pull request #2778 from pwithnall/small-leaks
Fix a couple of small leaks
2022-11-21 12:39:52 -05:00
Philip Withnall
c0b6cf9298 ot-builtin-pull: Fix a minor leak with progress reporting
`ostree_async_progress_get_status()` returns an allocated string.

Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
2022-11-21 16:35:02 +00:00
Philip Withnall
49d54d6ca8 lib/pull: Fix a small leak when a variable is reused
Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
2022-11-21 16:34:00 +00:00
Colin Walters
b8b07fc26b
Merge pull request #2770 from lucab/ups/git-describe-tags
ci: adjust git tags filtering
2022-11-21 11:33:10 -05:00
Colin Walters
13ceb3d531
Merge pull request #2772 from lucab/ups/bump-msrv
cargo: bump minimum Rust version to 1.63
2022-11-21 11:32:28 -05:00
Luca BRUNO
fe8dec9090
cargo: bump minimum Rust version to 1.63
This bumps MSRV to 1.63, in order to prepare for the next version
of gtk-rs stack.

Ref: https://gtk-rs.org/blog/2022/10/18/new-release.html
2022-11-21 15:20:07 +00:00
Luca BRUNO
4202082019
ci: adjust git tags filtering
Another attempt at fixing logic for version detection in COPR.
2022-11-21 15:12:31 +00:00
Colin Walters
9ae86131ed
Merge pull request #2774 from cgwalters/ci-fedora-fix
ci: Fix case where cosa != buildroot
2022-11-21 09:15:23 -05:00
Dan Nicholson
fa97631619
Merge pull request #2777 from Razaloc/wip/rafaelgarrui/deletepresent
Idempotent delete operation for  OstreeKernelArgs
2022-11-21 06:38:23 -07:00
Colin Walters
406bfc78d1 ci: Fix case where cosa != buildroot
We can't override host binaries in this case.  We'll need
to watch carefully and verify we're still testing things.
2022-11-20 13:54:48 -05:00
Rafael Garcia Ruiz
f6d308f130 Idempotent delete operation for OstreeKernelArgs
ostree_kernel_args_delete_if_present checks if an argument is present
in OstreeKernelArgs and delete it.

Signed-off-by: Rafael Garcia Ruiz <rafael.garcia@collabora.com>
2022-11-18 20:26:28 +01:00
Colin Walters
a34e28ebd0
Merge pull request #2773 from pwithnall/typo-fix
Improve a help string for ostree-commit
2022-11-18 11:35:30 -05:00
Philip Withnall
aef063dfd3 ot-builtin-commit: Don’t mention a C function name in a help string
Instead mention the formal name of the format accepted by
`g_variant_parse()`.

Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
2022-11-18 15:41:59 +00:00
Philip Withnall
bd487add8c ot-builtin-commit: Fix a typo in a command line help string
Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
2022-11-18 15:40:42 +00:00
Dan Nicholson
8229c6d080
Merge pull request #2771 from Razaloc/wip/rafaelgarrui/contains
ostree_kernel_args_contains for OstreeKernelArgs
2022-11-18 06:13:27 -07:00
Rafael Garcia Ruiz
c4db171dae ostree_kernel_args_contains for OstreeKernelArgs
Check if an argument is present in OstreeKernelArgs. This is a way to
make easier idempotent append and delete operations.
ostree_kernel_args_append_if_missing uses it to avoid inserting a
duplicate key.

Closes #2329

Signed-off-by: Rafael Garcia Ruiz <rafael.garcia@collabora.com>
2022-11-18 13:52:08 +01:00
Colin Walters
97e9bc7fd4 fetcher: Avoid too large queues for metadata processing
We added backoff/queueing for fetching via HTTP, but we have
another queue in the metadata scanning which can also grow
up to the number of outstanding objects, which can be large.

Capping the scanning operation when we have hit our operation
limit will avoid potentially large amounts of allocations in the
case of e.g. a slow network.

Closes: https://github.com/ostreedev/ostree/issues/2732
2022-11-14 14:06:05 -05:00
Joseph Marrero Corchado
0dbd87c017
Merge pull request #2765 from cgwalters/drop-openat
rust: Drop `openat` dependency
2022-11-13 13:08:43 -05:00
Colin Walters
ba39acf942
Merge pull request #2751 from smcv/memdup2
Replace calls to g_memdup() with g_memdup2()
2022-11-13 10:50:39 -05:00