ostree.git
8 months agoMerge version 2025.1-1+rpi1 and 2025.2-1 to produce 2025.2-1+rpi1 trixie-staging archive/raspbian/2025.2-1+rpi1 raspbian/2025.2-1+rpi1
Raspbian automatic forward porter [Wed, 9 Apr 2025 14:39:47 +0000 (15:39 +0100)]
Merge version 2025.1-1+rpi1 and 2025.2-1 to produce 2025.2-1+rpi1

8 months agoMerge ostree (2025.2-1) import into refs/heads/workingbranch
Dylan Aïssi [Tue, 1 Apr 2025 15:17:30 +0000 (17:17 +0200)]
Merge ostree (2025.2-1) import into refs/heads/workingbranch

8 months agoSkip test-admin-deploy-uboot.sh on s390x
Simon McVittie [Thu, 26 Oct 2023 10:26:04 +0000 (11:26 +0100)]
Skip test-admin-deploy-uboot.sh on s390x

It fails on a porterbox. ostree hard-codes zipl to be used on s390x,
so it's reasonable that tests for other bootloaders might not work.

Bug: https://github.com/ostreedev/ostree/issues/3086
Forwarded: no

Gbp-Pq: Topic debian
Gbp-Pq: Name Skip-test-admin-deploy-uboot.sh-on-s390x.patch

8 months agotest-sysroot: Skip on s390x by default
Simon McVittie [Tue, 6 Dec 2022 10:59:33 +0000 (10:59 +0000)]
test-sysroot: Skip on s390x by default

This test regularly fails on the buildds, but I cannot reproduce the
failure on a porterbox.

Bug: https://github.com/ostreedev/ostree/issues/2527
Bug-Debian: https://bugs.debian.org/1025532
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name test-sysroot-Skip-on-s390x-by-default.patch

8 months agoSkip test-pull-repeated during CI
Simon McVittie [Mon, 30 Jul 2018 15:51:01 +0000 (16:51 +0100)]
Skip test-pull-repeated during CI

This test is expected to fail a small proportion of the time. During
the build of ostree 2018.7-1 in Debian, it seems we were unlucky on
s390x. Non-deterministic tests are also problematic for autopkgtest,
where they can gate migration of our dependencies like GLib, so skip
this test unless the caller has opted-in to non-deterministic tests.

It would be appropriate to enable this test in environments where
failures can easily be retried and are not disruptive to other
packages.

Signed-off-by: Simon McVittie <smcv@debian.org>
Gbp-Pq: Topic debian
Gbp-Pq: Name Skip-test-pull-repeated-during-CI.patch

8 months agoostree (2025.2-1) unstable; urgency=medium
Dylan Aïssi [Tue, 1 Apr 2025 15:17:30 +0000 (17:17 +0200)]
ostree (2025.2-1) unstable; urgency=medium

  * New upstream release
  * Add myself to Uploaders (Closes: #1099068)
  * Don't install usr/lib/systemd/system/ostree-finalize-staged.path anymore
      in ostree-boot, it was dropped upstream.
  * Update debian/libostree-1-1.symbols
  * Standards-Version: 4.7.2 (no changes required)
  * d/copyright: Remove the old postal address of the Free Software Foundation
  * d/control: add new dependencies for libostree-dev

[dgit import unpatched ostree 2025.2-1]

8 months agoImport ostree_2025.2.orig.tar.xz
Dylan Aïssi [Tue, 1 Apr 2025 15:17:30 +0000 (17:17 +0200)]
Import ostree_2025.2.orig.tar.xz

[dgit import orig ostree_2025.2.orig.tar.xz]

8 months agoImport ostree_2025.2-1.debian.tar.xz
Dylan Aïssi [Tue, 1 Apr 2025 15:17:30 +0000 (17:17 +0200)]
Import ostree_2025.2-1.debian.tar.xz

[dgit import tarball ostree 2025.2-1 ostree_2025.2-1.debian.tar.xz]

10 months agoMerge version 2024.10-1+rpi1 and 2025.1-1 to produce 2025.1-1+rpi1 archive/raspbian/2025.1-1+rpi1 raspbian/2025.1-1+rpi1
Raspbian automatic forward porter [Fri, 24 Jan 2025 14:55:46 +0000 (14:55 +0000)]
Merge version 2024.10-1+rpi1 and 2025.1-1 to produce 2025.1-1+rpi1

10 months agoMake fast forward from 2024.10-1
Simon McVittie [Mon, 20 Jan 2025 10:46:58 +0000 (10:46 +0000)]
Make fast forward from 2024.10-1

[dgit --quilt=unapplied]

10 months agoSkip test-admin-deploy-uboot.sh on s390x
Simon McVittie [Thu, 26 Oct 2023 10:26:04 +0000 (11:26 +0100)]
Skip test-admin-deploy-uboot.sh on s390x

It fails on a porterbox. ostree hard-codes zipl to be used on s390x,
so it's reasonable that tests for other bootloaders might not work.

Bug: https://github.com/ostreedev/ostree/issues/3086
Forwarded: no

Gbp-Pq: Topic debian
Gbp-Pq: Name Skip-test-admin-deploy-uboot.sh-on-s390x.patch

10 months agotest-sysroot: Skip on s390x by default
Simon McVittie [Tue, 6 Dec 2022 10:59:33 +0000 (10:59 +0000)]
test-sysroot: Skip on s390x by default

This test regularly fails on the buildds, but I cannot reproduce the
failure on a porterbox.

Bug: https://github.com/ostreedev/ostree/issues/2527
Bug-Debian: https://bugs.debian.org/1025532
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name test-sysroot-Skip-on-s390x-by-default.patch

10 months agoSkip test-pull-repeated during CI
Simon McVittie [Mon, 30 Jul 2018 15:51:01 +0000 (16:51 +0100)]
Skip test-pull-repeated during CI

This test is expected to fail a small proportion of the time. During
the build of ostree 2018.7-1 in Debian, it seems we were unlucky on
s390x. Non-deterministic tests are also problematic for autopkgtest,
where they can gate migration of our dependencies like GLib, so skip
this test unless the caller has opted-in to non-deterministic tests.

It would be appropriate to enable this test in environments where
failures can easily be retried and are not disruptive to other
packages.

Signed-off-by: Simon McVittie <smcv@debian.org>
Gbp-Pq: Topic debian
Gbp-Pq: Name Skip-test-pull-repeated-during-CI.patch

10 months agoRelease to unstable
Simon McVittie [Mon, 20 Jan 2025 10:47:16 +0000 (10:47 +0000)]
Release to unstable

10 months agod/control: Use ${gir:Depends}, ${gir:Provides} in -dev package if available
Simon McVittie [Mon, 20 Jan 2025 10:46:52 +0000 (10:46 +0000)]
d/control: Use ${gir:Depends}, ${gir:Provides} in -dev package if available

Don't completely rely on those variables, for backportability.

10 months agod/libostree-1-1.symbols: Update
Simon McVittie [Mon, 20 Jan 2025 10:41:30 +0000 (10:41 +0000)]
d/libostree-1-1.symbols: Update

10 months agoNew upstream release
Simon McVittie [Mon, 20 Jan 2025 10:40:39 +0000 (10:40 +0000)]
New upstream release

10 months agoUpdate upstream source from tag 'upstream/2025.1'
Simon McVittie [Mon, 20 Jan 2025 10:39:47 +0000 (10:39 +0000)]
Update upstream source from tag 'upstream/2025.1'

Update to upstream version '2025.1'
with Debian dir db9e4a327d03f534cc29974e37ff1f999bd4eec9

10 months agoNew upstream version 2025.1
Simon McVittie [Mon, 20 Jan 2025 10:39:39 +0000 (10:39 +0000)]
New upstream version 2025.1

11 months agoRelease 2025.1
Joseph Marrero Corchado [Tue, 14 Jan 2025 16:12:52 +0000 (11:12 -0500)]
Release 2025.1

11 months agoMerge version 2024.9-1+rpi1 and 2024.10-1 to produce 2024.10-1+rpi1 archive/raspbian/2024.10-1+rpi1 raspbian/2024.10-1+rpi1
Raspbian automatic forward porter [Wed, 15 Jan 2025 10:19:45 +0000 (10:19 +0000)]
Merge version 2024.9-1+rpi1 and 2024.10-1 to produce 2024.10-1+rpi1

11 months agoMerge pull request #3366 from cgwalters/unconditional-cfs
Jonathan Lebon [Fri, 10 Jan 2025 15:41:54 +0000 (10:41 -0500)]
Merge pull request #3366 from cgwalters/unconditional-cfs

11 months agoAlways generate composefs blob, don't enable runtime by default
Colin Walters [Thu, 9 Jan 2025 15:55:27 +0000 (10:55 -0500)]
Always generate composefs blob, don't enable runtime by default

Followup to https://github.com/ostreedev/ostree/pull/3353/commits/9a0acd7249bb0c7f55c2bf56e5073902cd60038b

Basically our composefs enablement flag has long had a tension between
trying to do two things:

- Enable generating the composefs blob (at deployment time)
- Enable at runtime in prepare-root

And we've hit issues in "ratcheting" enabling composefs
across upgrades because of this.

This change builds on the previous one, and now it's really
simple to talk about:

- If composefs is enabled at build time, we *always*
  generate a composefs blob at deplyment time
- Configuring the prepare-root config now mostly
  only affects the runtime state.

There is one detail though: in order to handle the
verity requirement at deploy time, we do still parse
the config then.

But for the basic "is composefs enabled at all at runtime"
that is now fully keyed off the config, not the build time
or (worse) whether the deployment happened to have a composefs
blob.

For users who want composefs on, they need to do so in the base
image configuration.

Signed-off-by: Colin Walters <walters@verbum.org>
11 months agoMerge pull request #3367 from cgwalters/clang-format
Jonathan Lebon [Thu, 9 Jan 2025 20:35:43 +0000 (15:35 -0500)]
Merge pull request #3367 from cgwalters/clang-format

11 months agotree-wide: Rerun clang-format, update ci
Colin Walters [Thu, 9 Jan 2025 16:47:26 +0000 (11:47 -0500)]
tree-wide: Rerun clang-format, update ci

We have drift again here because we're using an old clang-format
in CI, and some things have landed that it didn't catch.

And update clang-format to ubuntu-24.04 so we are running
against something more modern.

Signed-off-by: Colin Walters <walters@verbum.org>
11 months agoMerge pull request #3364 from ruihe774/geteuid
Colin Walters [Thu, 2 Jan 2025 14:23:16 +0000 (09:23 -0500)]
Merge pull request #3364 from ruihe774/geteuid

chore: Use geteuid() instead of getuid() to check privilege

11 months agoMerge pull request #3362 from Mstrodl/feature/mstrodl/kexec2
Colin Walters [Thu, 2 Jan 2025 14:20:41 +0000 (09:20 -0500)]
Merge pull request #3362 from Mstrodl/feature/mstrodl/kexec2

bin/admin-upgrade: add kexec support

11 months agoRelease to unstable
Simon McVittie [Thu, 26 Dec 2024 17:05:43 +0000 (17:05 +0000)]
Release to unstable

11 months agoMake fast forward from 2024.9-1
Simon McVittie [Thu, 26 Dec 2024 17:05:32 +0000 (17:05 +0000)]
Make fast forward from 2024.9-1

[dgit --quilt=unapplied]

11 months agoSkip test-admin-deploy-uboot.sh on s390x
Simon McVittie [Thu, 26 Oct 2023 10:26:04 +0000 (11:26 +0100)]
Skip test-admin-deploy-uboot.sh on s390x

It fails on a porterbox. ostree hard-codes zipl to be used on s390x,
so it's reasonable that tests for other bootloaders might not work.

Bug: https://github.com/ostreedev/ostree/issues/3086
Forwarded: no

Gbp-Pq: Topic debian
Gbp-Pq: Name Skip-test-admin-deploy-uboot.sh-on-s390x.patch

11 months agotest-sysroot: Skip on s390x by default
Simon McVittie [Tue, 6 Dec 2022 10:59:33 +0000 (10:59 +0000)]
test-sysroot: Skip on s390x by default

This test regularly fails on the buildds, but I cannot reproduce the
failure on a porterbox.

Bug: https://github.com/ostreedev/ostree/issues/2527
Bug-Debian: https://bugs.debian.org/1025532
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name test-sysroot-Skip-on-s390x-by-default.patch

11 months agoSkip test-pull-repeated during CI
Simon McVittie [Mon, 30 Jul 2018 15:51:01 +0000 (16:51 +0100)]
Skip test-pull-repeated during CI

This test is expected to fail a small proportion of the time. During
the build of ostree 2018.7-1 in Debian, it seems we were unlucky on
s390x. Non-deterministic tests are also problematic for autopkgtest,
where they can gate migration of our dependencies like GLib, so skip
this test unless the caller has opted-in to non-deterministic tests.

It would be appropriate to enable this test in environments where
failures can easily be retried and are not disruptive to other
packages.

Signed-off-by: Simon McVittie <smcv@debian.org>
Gbp-Pq: Topic debian
Gbp-Pq: Name Skip-test-pull-repeated-during-CI.patch

11 months agobin/admin-upgrade: add kexec support
Mary Strodl [Thu, 12 Dec 2024 14:30:59 +0000 (09:30 -0500)]
bin/admin-upgrade: add kexec support

Adds a new `--kexec` flag to `ostree admin upgrade` which will cause
the deployment to be loaded into kexec after the upgrade completes.
It is particularly useful in conjunction with the `--reboot` flag to
perform a reboot into the new deployment without waiting for the
(often slow) firmware initialization to take place. (And in my case,
allows me to avoid a normal reboot, which can be unreliable on my
hardware).

After an image has been loaded (using the `kexec_file_load` syscall),
the `systemctl-reboot` command (which is called when the existing
`-r` flag is included) will trigger a kexec on the loaded image
rather than a normal reboot. From `systemctl(1)`:

  If a new kernel has been loaded via kexec --load, a kexec will be
  performed instead of a reboot, unless "SYSTEMCTL_SKIP_AUTO_KEXEC=1"
  has been set. If a new root file system has been set up on
  "/run/nextroot/", a soft-reboot will be performed instead of a
  reboot, unless "SYSTEMCTL_SKIP_AUTO_SOFT_REBOOT=1" has been set.

A good in-depth technical explanation of kexec can be found here:
https://web.archive.org/web/20090505132901/http://www.ibm.com/developerworks/linux/library/l-kexec.html

My implementation uses the `kexec_file_load` syscall rather than the
older `kexec_load` syscall, which allows the kernel to verify the
signatures of the new kernel. It is supported on Linux 3.17 and
newer. I assume this probably won't be an issue, but if it is, it's
not that hard to put a preprocessor directive around the kexec stuff
to disable it for older kernels. Even RHEL is new enough now to
not be an issue :)

Closes: #435
11 months agoNew upstream release
Simon McVittie [Mon, 23 Dec 2024 10:05:23 +0000 (10:05 +0000)]
New upstream release

11 months agoUpdate upstream source from tag 'upstream/2024.10'
Simon McVittie [Mon, 23 Dec 2024 09:53:40 +0000 (09:53 +0000)]
Update upstream source from tag 'upstream/2024.10'

Update to upstream version '2024.10'
with Debian dir bcbfca73aac7d6d1c8b452363bef7aaa9cc5175e

11 months agoNew upstream version 2024.10
Simon McVittie [Mon, 23 Dec 2024 09:53:33 +0000 (09:53 +0000)]
New upstream version 2024.10

11 months agoUpdate changelog
Simon McVittie [Mon, 23 Dec 2024 09:53:01 +0000 (09:53 +0000)]
Update changelog

11 months agod/salsa-ci.yml: Use recommended recipe
Simon McVittie [Mon, 23 Dec 2024 09:51:49 +0000 (09:51 +0000)]
d/salsa-ci.yml: Use recommended recipe

11 months agochore: Check CAP_SYS_ADMIN in ot_util_process_privileged
Misaki Kasumi [Fri, 20 Dec 2024 12:35:08 +0000 (20:35 +0800)]
chore: Check CAP_SYS_ADMIN in ot_util_process_privileged

11 months agochore: Use geteuid() instead of getuid() to check privilege
Misaki Kasumi [Wed, 18 Dec 2024 15:48:41 +0000 (23:48 +0800)]
chore: Use geteuid() instead of getuid() to check privilege

11 months agoMerge pull request #3361 from cgwalters/release
Colin Walters [Thu, 19 Dec 2024 22:10:40 +0000 (17:10 -0500)]
Merge pull request #3361 from cgwalters/release

Release 2024.10

11 months agoMerge pull request #3351 from cgwalters/fix-transient-root-doc
Colin Walters [Thu, 19 Dec 2024 21:23:48 +0000 (16:23 -0500)]
Merge pull request #3351 from cgwalters/fix-transient-root-doc

man: Note semantics combining `root.transient` with `composefs.enabled`

11 months agoPost-release version bump
Colin Walters [Thu, 19 Dec 2024 20:11:29 +0000 (15:11 -0500)]
Post-release version bump

Signed-off-by: Colin Walters <walters@verbum.org>
11 months agoRelease 2024.10
Colin Walters [Thu, 19 Dec 2024 20:09:45 +0000 (15:09 -0500)]
Release 2024.10

Signed-off-by: Colin Walters <walters@verbum.org>
11 months agoman: Note semantics combining `root.transient` with `composefs.enabled`
Colin Walters [Fri, 6 Dec 2024 19:57:19 +0000 (14:57 -0500)]
man: Note semantics combining `root.transient` with `composefs.enabled`

It's all quite confusing having to reason about both the pre-composefs
ostree and the composefs version. But hopefully soon we more firmly
leave behind that first legacy.

Signed-off-by: Colin Walters <walters@verbum.org>
11 months agoMerge pull request #3353 from jlebon/pr/composefs-maybe
Colin Walters [Tue, 17 Dec 2024 20:34:37 +0000 (15:34 -0500)]
Merge pull request #3353 from jlebon/pr/composefs-maybe

libostree/deploy: enable composefs by default

11 months agoMerge pull request #3354 from ruihe774/cfs-verity
Colin Walters [Tue, 17 Dec 2024 19:59:00 +0000 (14:59 -0500)]
Merge pull request #3354 from ruihe774/cfs-verity

prepare-root: Add composefs.enabled=verity

11 months agoMerge pull request #3348 from qiuzhiqian/main
Colin Walters [Tue, 17 Dec 2024 19:22:10 +0000 (14:22 -0500)]
Merge pull request #3348 from qiuzhiqian/main

rofiles-fuse: when fuse execution fails, rofiles-fuse still returns exit code 0

11 months agoMerge pull request #3357 from ruihe774/validate-len
Colin Walters [Tue, 17 Dec 2024 19:21:53 +0000 (14:21 -0500)]
Merge pull request #3357 from ruihe774/validate-len

sign-ed25519: Fix error message of validate_length

11 months agolib/deploy: error out if composefs enabled but unsupported
Jonathan Lebon [Sat, 14 Dec 2024 13:47:21 +0000 (08:47 -0500)]
lib/deploy: error out if composefs enabled but unsupported

If composefs was explicitly requested (`enabled = true`) but libostree
was not compiled with composefs support, error out at deploy time. This
matches the logic in `ostree-prepare-root`.

11 months agolibostree/deploy: enable composefs by default
Jonathan Lebon [Sat, 14 Dec 2024 13:45:19 +0000 (08:45 -0500)]
libostree/deploy: enable composefs by default

The composefs libostree integration has been supported for a while now
and is actively in use in various ostree/bootc-based systems. Let's
turn it on by default.

This has no effect if composefs support is not compiled in. Note also
that this does not change the default value of the `composefs.enabled`
tristate to `true`. The default is still `maybe`, but the deploy API
will now also create composefs images for `maybe`.

The reason for doing it this way is so that systems upgrading from
old libostree versions (which may either not have composefs support or
may have composefs-related bugs) will still be able to upgrade and not
trip `ostree-prepare-root` in the new deployment (which allows missing
composefs images for `maybe`).

We may in the future change the default value to `true`.

See also: https://github.com/ostreedev/ostree/issues/2867

11 months agoMerge pull request #3356 from cgwalters/fix-ci
Colin Walters [Tue, 17 Dec 2024 16:39:49 +0000 (11:39 -0500)]
Merge pull request #3356 from cgwalters/fix-ci

Fix ci

11 months agosign-ed25519: Fix error message of validate_length
Misaki Kasumi [Tue, 17 Dec 2024 01:58:48 +0000 (09:58 +0800)]
sign-ed25519: Fix error message of validate_length

11 months agosysroot-deploy: Require fsverity when composefs.enabled=verity
Misaki Kasumi [Mon, 16 Dec 2024 20:48:50 +0000 (04:48 +0800)]
sysroot-deploy: Require fsverity when composefs.enabled=verity

11 months agoprepare-root: Add composefs.enabled=verity
Misaki Kasumi [Mon, 16 Dec 2024 11:41:21 +0000 (19:41 +0800)]
prepare-root: Add composefs.enabled=verity

12 months agodeny: Add Unicode-3.0
Colin Walters [Mon, 16 Dec 2024 17:03:03 +0000 (17:03 +0000)]
deny: Add Unicode-3.0

This is under e.g.
https://docs.fedoraproject.org/en-US/legal/allowed-licenses/
and is now used by the unicode-ident crate.

12 months agoSwitch to quay.io vs registry.ci
Colin Walters [Mon, 16 Dec 2024 16:56:57 +0000 (16:56 +0000)]
Switch to quay.io vs registry.ci

The old one was a mirror that seems to have finally
been decommissioned.

12 months agoMerge pull request #3346 from cgwalters/commit-label-ordering
Colin Walters [Tue, 3 Dec 2024 16:20:33 +0000 (11:20 -0500)]
Merge pull request #3346 from cgwalters/commit-label-ordering

core: Always sort incoming xattrs

12 months agorofiles-fuse: Fixed the problem that when fuse execution fails, the command returns...
qiuzhiqian [Tue, 3 Dec 2024 12:33:48 +0000 (20:33 +0800)]
rofiles-fuse: Fixed the problem that when fuse execution fails, the command returns a status code of 0

testcase:
`$ sudo rofiles-fuse a b`
fuse: bad mount point `b': No such file or directory
`$ echo $?`
0

12 months agocore: Always sort incoming xattrs
Colin Walters [Wed, 27 Nov 2024 02:15:23 +0000 (21:15 -0500)]
core: Always sort incoming xattrs

When recomputing selinux attrs during commit, we weren't sorting,
which could cause various issues like fsck failures.

This is a big hammer; change things so we always canonicalize
(i.e. sort) the incoming xattrs when creating a file header
and directory metadata.

I think almost all places in the code were already keeping
things sorted, but it's better to ensure correctness first.
If we ever have some performance issue (I'm doubtful) we
could add something like `_ostree_file_header_known_canonicalized`
or so.

Closes: https://github.com/ostreedev/ostree/issues/3343
Signed-off-by: Colin Walters <walters@verbum.org>
13 months agoMerge version 2024.8-2+rpi1 and 2024.9-1 to produce 2024.9-1+rpi1 archive/raspbian/2024.9-1+rpi1 raspbian/2024.9-1+rpi1
Raspbian automatic forward porter [Fri, 15 Nov 2024 15:31:38 +0000 (15:31 +0000)]
Merge version 2024.8-2+rpi1 and 2024.9-1 to produce 2024.9-1+rpi1

13 months agoMerge pull request #3340 from smcv/issue3339
Colin Walters [Thu, 14 Nov 2024 23:49:32 +0000 (16:49 -0700)]
Merge pull request #3340 from smcv/issue3339

composefs: Ensure buffer is suitably aligned for struct fsverity_digest

13 months agocomposefs: Ensure buffer is suitably aligned for struct fsverity_digest
Simon McVittie [Thu, 14 Nov 2024 09:57:36 +0000 (09:57 +0000)]
composefs: Ensure buffer is suitably aligned for struct fsverity_digest

struct fsverity_digest starts with a __u16, so it will normally require
16-bit alignment, which is not guaranteed for a char array.

Resolves: https://github.com/ostreedev/ostree/issues/3339
Signed-off-by: Simon McVittie <smcv@debian.org>
13 months agoTry re-enabling tests during Salsa-CI
Simon McVittie [Thu, 14 Nov 2024 10:12:31 +0000 (10:12 +0000)]
Try re-enabling tests during Salsa-CI

13 months agoMerge pull request #3337 from dabukalam/patch-1
Colin Walters [Tue, 12 Nov 2024 15:47:29 +0000 (08:47 -0700)]
Merge pull request #3337 from dabukalam/patch-1

README: Update buildstream URL to new github repo

13 months agoREADME: Update buildstream URL to new github repo
Danny Abukalam [Tue, 12 Nov 2024 14:27:15 +0000 (14:27 +0000)]
README: Update buildstream URL to new github repo

13 months agoRelease to unstable
Simon McVittie [Tue, 12 Nov 2024 09:27:36 +0000 (09:27 +0000)]
Release to unstable

13 months agoMake fast forward from 2024.8-2
Simon McVittie [Tue, 12 Nov 2024 09:27:19 +0000 (09:27 +0000)]
Make fast forward from 2024.8-2

[dgit --quilt=unapplied]

13 months agoSkip test-admin-deploy-uboot.sh on s390x
Simon McVittie [Thu, 26 Oct 2023 10:26:04 +0000 (11:26 +0100)]
Skip test-admin-deploy-uboot.sh on s390x

It fails on a porterbox. ostree hard-codes zipl to be used on s390x,
so it's reasonable that tests for other bootloaders might not work.

Bug: https://github.com/ostreedev/ostree/issues/3086
Forwarded: no

Gbp-Pq: Topic debian
Gbp-Pq: Name Skip-test-admin-deploy-uboot.sh-on-s390x.patch

13 months agotest-sysroot: Skip on s390x by default
Simon McVittie [Tue, 6 Dec 2022 10:59:33 +0000 (10:59 +0000)]
test-sysroot: Skip on s390x by default

This test regularly fails on the buildds, but I cannot reproduce the
failure on a porterbox.

Bug: https://github.com/ostreedev/ostree/issues/2527
Bug-Debian: https://bugs.debian.org/1025532
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name test-sysroot-Skip-on-s390x-by-default.patch

13 months agoSkip test-pull-repeated during CI
Simon McVittie [Mon, 30 Jul 2018 15:51:01 +0000 (16:51 +0100)]
Skip test-pull-repeated during CI

This test is expected to fail a small proportion of the time. During
the build of ostree 2018.7-1 in Debian, it seems we were unlucky on
s390x. Non-deterministic tests are also problematic for autopkgtest,
where they can gate migration of our dependencies like GLib, so skip
this test unless the caller has opted-in to non-deterministic tests.

It would be appropriate to enable this test in environments where
failures can easily be retried and are not disruptive to other
packages.

Signed-off-by: Simon McVittie <smcv@debian.org>
Gbp-Pq: Topic debian
Gbp-Pq: Name Skip-test-pull-repeated-during-CI.patch

13 months agoDrop patch that was applied upstream
Simon McVittie [Mon, 11 Nov 2024 22:24:23 +0000 (22:24 +0000)]
Drop patch that was applied upstream

13 months agoNew upstream release
Simon McVittie [Mon, 11 Nov 2024 22:24:04 +0000 (22:24 +0000)]
New upstream release

13 months agoUpdate upstream source from tag 'upstream/2024.9'
Simon McVittie [Mon, 11 Nov 2024 22:17:03 +0000 (22:17 +0000)]
Update upstream source from tag 'upstream/2024.9'

Update to upstream version '2024.9'
with Debian dir 915aefc068b31787b88aa2e67a1cabba6afe8de9

13 months agoNew upstream version 2024.9
Simon McVittie [Mon, 11 Nov 2024 22:16:52 +0000 (22:16 +0000)]
New upstream version 2024.9

13 months agoMerge pull request #3328 from cgwalters/release
John Eckersberg [Tue, 5 Nov 2024 14:41:27 +0000 (09:41 -0500)]
Merge pull request #3328 from cgwalters/release

Release 2024.9

13 months agoRelease 2024.9
Colin Walters [Tue, 29 Oct 2024 20:50:11 +0000 (16:50 -0400)]
Release 2024.9

Signed-off-by: Colin Walters <walters@verbum.org>
13 months agoconfigure: post-release version bump
Colin Walters [Tue, 29 Oct 2024 20:50:59 +0000 (16:50 -0400)]
configure: post-release version bump

Signed-off-by: Colin Walters <walters@verbum.org>
13 months agoMerge pull request #3334 from cgwalters/fix-composefs-default-docs
Colin Walters [Mon, 4 Nov 2024 22:27:09 +0000 (17:27 -0500)]
Merge pull request #3334 from cgwalters/fix-composefs-default-docs

prepare-root: Fix composefs docs

13 months agoMerge pull request #3331 from cgwalters/verity-no-verity
Colin Walters [Mon, 4 Nov 2024 21:10:39 +0000 (16:10 -0500)]
Merge pull request #3331 from cgwalters/verity-no-verity

checkout: Only verify digest if repo requires fsverity

13 months agobootupd-static: Drop this test
Colin Walters [Mon, 4 Nov 2024 19:28:13 +0000 (14:28 -0500)]
bootupd-static: Drop this test

It breaks due to https://bugzilla.redhat.com/show_bug.cgi?id=2308594

13 months agoprepare-root: Fix composefs docs
Colin Walters [Mon, 4 Nov 2024 18:48:56 +0000 (13:48 -0500)]
prepare-root: Fix composefs docs

In practice in ostree-sysroot-deploy.c we only react to having
`composefs = yes`; the docs mention `maybe` but that never did
anything.

The value is wrong in the code too, but I'm not touching
that here to avoid conflating changes - the main thing to fix
is the docs because here `maybe == no`.

Signed-off-by: Colin Walters <walters@verbum.org>
13 months agocheckout: Only verify digest if repo requires fsverity
Colin Walters [Wed, 30 Oct 2024 14:07:26 +0000 (10:07 -0400)]
checkout: Only verify digest if repo requires fsverity

Fixes a regression from the previous commit; in
the case where the target repo doesn't have composefs in
signed mode there's no reason to verify the digest
at checkout time because we aren't verifying it at
boot time either.

The regression is in cases that use rpm-ostree e.g.
where as of recently we unconditionally add the composefs
digest, but for e.g. FCOS we aren't deploying with fsverity
enabled.

Closes: https://github.com/ostreedev/ostree/issues/3330
Signed-off-by: Colin Walters <walters@verbum.org>
13 months agoMerge version 2024.8-1+rpi1 and 2024.8-2 to produce 2024.8-2+rpi1 archive/raspbian/2024.8-2+rpi1 raspbian/2024.8-2+rpi1
Raspbian automatic forward porter [Sat, 2 Nov 2024 08:16:34 +0000 (08:16 +0000)]
Merge version 2024.8-1+rpi1 and 2024.8-2 to produce 2024.8-2+rpi1

13 months agoMerge pull request #3333 from smcv/gpg-2-2-45
Colin Walters [Thu, 31 Oct 2024 12:15:24 +0000 (08:15 -0400)]
Merge pull request #3333 from smcv/gpg-2-2-45

tests: Work around GPG 2.2.45 error behaviour when revoking an expired key

13 months agoRelease to unstable
Simon McVittie [Thu, 31 Oct 2024 11:00:32 +0000 (11:00 +0000)]
Release to unstable

13 months agoMake fast forward from 2024.8-1
Simon McVittie [Thu, 31 Oct 2024 11:00:06 +0000 (11:00 +0000)]
Make fast forward from 2024.8-1

[dgit --quilt=unapplied]

13 months agoSkip test-admin-deploy-uboot.sh on s390x
Simon McVittie [Thu, 26 Oct 2023 10:26:04 +0000 (11:26 +0100)]
Skip test-admin-deploy-uboot.sh on s390x

It fails on a porterbox. ostree hard-codes zipl to be used on s390x,
so it's reasonable that tests for other bootloaders might not work.

Bug: https://github.com/ostreedev/ostree/issues/3086
Forwarded: no

Gbp-Pq: Topic debian
Gbp-Pq: Name Skip-test-admin-deploy-uboot.sh-on-s390x.patch

13 months agotest-sysroot: Skip on s390x by default
Simon McVittie [Tue, 6 Dec 2022 10:59:33 +0000 (10:59 +0000)]
test-sysroot: Skip on s390x by default

This test regularly fails on the buildds, but I cannot reproduce the
failure on a porterbox.

Bug: https://github.com/ostreedev/ostree/issues/2527
Bug-Debian: https://bugs.debian.org/1025532
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name test-sysroot-Skip-on-s390x-by-default.patch

13 months agoSkip test-pull-repeated during CI
Simon McVittie [Mon, 30 Jul 2018 15:51:01 +0000 (16:51 +0100)]
Skip test-pull-repeated during CI

This test is expected to fail a small proportion of the time. During
the build of ostree 2018.7-1 in Debian, it seems we were unlucky on
s390x. Non-deterministic tests are also problematic for autopkgtest,
where they can gate migration of our dependencies like GLib, so skip
this test unless the caller has opted-in to non-deterministic tests.

It would be appropriate to enable this test in environments where
failures can easily be retried and are not disruptive to other
packages.

Signed-off-by: Simon McVittie <smcv@debian.org>
Gbp-Pq: Topic debian
Gbp-Pq: Name Skip-test-pull-repeated-during-CI.patch

13 months agotests: Work around GPG 2.2.45 error behaviour when revoking an expired key
Simon McVittie [Thu, 31 Oct 2024 10:54:13 +0000 (10:54 +0000)]
tests: Work around GPG 2.2.45 error behaviour when revoking an expired key

In GPG 2.2.45, a diagnostic message about the only trusted key having
already expired causes this import to produce exit status 2, but the
import still succeeds (the key is still revoked).

Bug: https://dev.gnupg.org/T7351
Bug-Debian: https://bugs.debian.org/1086140
Forwarded: https://github.com/ostreedev/ostree/pull/3333

Gbp-Pq: Name tests-Work-around-GPG-2.2.45-error-behaviour-when-revokin.patch

13 months agoAdd proposed patch to work around a test failure with gnupg 2.2.45
Simon McVittie [Thu, 31 Oct 2024 10:59:03 +0000 (10:59 +0000)]
Add proposed patch to work around a test failure with gnupg 2.2.45

Mitigates: #1086140

13 months agotests: Work around GPG 2.2.45 error behaviour when revoking an expired key
Simon McVittie [Thu, 31 Oct 2024 10:54:13 +0000 (10:54 +0000)]
tests: Work around GPG 2.2.45 error behaviour when revoking an expired key

In GPG 2.2.45, a diagnostic message about the only trusted key having
already expired causes this import to produce exit status 2, but the
import still succeeds (the key is still revoked).

Bug: https://dev.gnupg.org/T7351
Bug-Debian: https://bugs.debian.org/1086140

13 months agoMerge pull request #3332 from cgwalters/fixups-for-fcos-composefs-default
Colin Walters [Wed, 30 Oct 2024 18:37:59 +0000 (14:37 -0400)]
Merge pull request #3332 from cgwalters/fixups-for-fcos-composefs-default

tests: Skip checking for immutable bit on composefs

13 months agotests: Skip checking for immutable bit on composefs
Colin Walters [Wed, 30 Oct 2024 17:00:35 +0000 (13:00 -0400)]
tests: Skip checking for immutable bit on composefs

Needed changing after FCOS switch.

Signed-off-by: Colin Walters <walters@verbum.org>
13 months agoMerge pull request #3326 from cgwalters/hack-deploy-no-verity
Colin Walters [Tue, 29 Oct 2024 19:09:59 +0000 (15:09 -0400)]
Merge pull request #3326 from cgwalters/hack-deploy-no-verity

deploy: Don't recompute verity checksums if not enabled

13 months agodeploy: Don't recompute verity checksums if not enabled
Colin Walters [Sun, 27 Oct 2024 14:20:29 +0000 (10:20 -0400)]
deploy: Don't recompute verity checksums if not enabled

This fixes a truly horrific performance bug when
composefs is enabled, but fsverity is not supported
by the filesystem. We'd fall back to doing *userspace*
checksumming of all files at deployment time which was absolutely
not expected or required.

There's really an immense amount of technical debt
here, such as the confusion between `ex-integity.composefs`
vs the prepare-root config, how we handle "torn" states
where some objects don't have verity enabled but some do,
etc.

The ostree composefs state has two modes:

- signed: We need to enforce fsverity
- unsigned: Best effort resilience

So we fix this by making the deploy path to make verity
"opportunistic" - if the ioctl gives us the data, then we
add it to the composefs.

However, this code path is also invoked when we're
computing the expected composefs digest to inject
as commit metadata, and *that* API must work regardless
of whether the target repo has fsverity enabled as
it may operate on a build server.

One lucky thing in all of this: When I went to add
the "checkout composefs" API I added a stub `GVariant`
for options extensibility, which we now use.

Signed-off-by: Colin Walters <walters@verbum.org>
13 months agoMerge pull request #3323 from cgwalters/copydir-no-xattrs
Colin Walters [Mon, 21 Oct 2024 12:02:32 +0000 (08:02 -0400)]
Merge pull request #3323 from cgwalters/copydir-no-xattrs

deploy: Don't copy xattrs for devicetree

13 months agodeploy: Don't copy xattrs for devicetree
Colin Walters [Fri, 18 Oct 2024 12:41:05 +0000 (08:41 -0400)]
deploy: Don't copy xattrs for devicetree

xref: https://github.com/coreos/fedora-coreos-tracker/issues/1808

For the kernel/initramfs that we copy to `/boot`
we use an explicit relabeling today, ignoring the source SELinux
context.

When we added handling for devicetree it reuse the `copy_dir_recurse`
we have for `etc` handling, and that copied the source xattrs.

Let's ensure that the devicetree is also `boot_t` by *not* copying
xattrs and relying on the default labeling.

Signed-off-by: Colin Walters <walters@verbum.org>
14 months agoMerge pull request #3316 from ruihe774/readonly-cmdline
Colin Walters [Thu, 10 Oct 2024 18:40:48 +0000 (14:40 -0400)]
Merge pull request #3316 from ruihe774/readonly-cmdline

prepare-root: allow `sysroot.readonly=true` with kernel cmdline `ro`