1
0
mirror of https://github.com/projectatomic/bubblewrap.git synced 2026-02-05 15:45:22 +01:00

13 Commits

Author SHA1 Message Date
Joel Pelaez Jorge
f97804f517 Enable user namespaces in Ubuntu CI
Signed-off-by: Joel Pelaez Jorge <joel.pelaez.jorge@gmail.com>
2026-01-22 10:25:51 -05:00
Simon McVittie
fc1dd3dd37 workflows: Use latest version of actions/checkout
It isn't entirely clear to me what the incompatibilities are, but
hopefully in simple cases like ours it's functionally equivalent.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2024-09-30 19:49:08 +01:00
Simon McVittie
11b81bbf10 workflows: Use upload-artifact@v4
Reference: https://github.blog/changelog/2024-02-13-deprecation-notice-v1-and-v2-of-the-artifact-actions/
Signed-off-by: Simon McVittie <smcv@collabora.com>
2024-09-30 19:46:32 +01:00
Hugo Osvaldo Barrera
2834c01cab Remove autotools build system
Signed-off-by: Hugo Osvaldo Barrera <hugo@whynothugo.nl>
Signed-off-by: Simon McVittie <smcv@collabora.com>
2024-09-03 13:47:25 +01:00
Simon McVittie
8789aa42e4 workflows: Upgrade codeql-action to v2
Reference: https://github.blog/changelog/2023-01-18-code-scanning-codeql-action-v1-is-now-deprecated/
Signed-off-by: Simon McVittie <smcv@collabora.com>
2024-02-15 14:38:29 +00:00
Simon McVittie
7d54d050a2 meson: Add options to set a RPATH/RUNPATH on the bwrap executable
This is useful when building a self-contained, relocatable tree
containing a build of bubblewrap and all of its non-glibc dependencies
(in practice this means libcap and maybe libselinux), as is done in
the Steam container runtime. A RPATH/RUNPATH pointing to ${ORIGIN}/../lib
allows bwrap to find an adjacent, bundled copy of libcap.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-05-16 10:19:24 +02:00
Simon McVittie
3faa4c1ff2 tests: Disable leak detection when joining user-specified pid namespace
If we don't do this, AddressSanitizer busy-loops with this backtrace:

    #0  in sched_yield
    #1  in __sanitizer::StopTheWorld
    #2  in __lsan::LockStuffAndStopTheWorldCallback
    #3  in __GI___dl_iterate_phdr
    #4  in __lsan::LockStuffAndStopTheWorld
    #5  in __lsan::CheckForLeaks
    #6  in __lsan::DoLeakCheck
    #7  __lsan::DoLeakCheck
    #8  in __cxa_finalize
    #9  in __do_global_dtors_aux
    #10 in ??
    #11 in _dl_fini

This fixes the hang described in commit 2e3d6e7d, so remove the
workarounds from that commit.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-05-03 14:02:03 +02:00
Simon McVittie
2e3d6e7dc7 Disable test-specifying-pidns.sh under 'meson dist' while I investigate
This test is hanging when run under 'meson dist' for some reason, but
not when run under 'meson test', and not locally, only in the Github
Workflow-based CI. Disable it for now.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-02-20 11:41:27 +00:00
Colin Walters
576e8e0e55 Merge pull request #432 from smcv/meson
Add a Meson build system
2022-02-18 08:53:13 -05:00
Simon McVittie
1927981240 Add a Meson build system
This allows bwrap to be built as a subproject in larger Meson projects.
When built as a subproject, we install into the --libexecdir and
require a program prefix to be specified: for example, Flatpak would use
program_prefix=flatpak- to get /usr/libexec/flatpak-bwrap. Verified to
be backwards-compatible as far as Meson 0.49.0 (Debian 9 backports).

Loosely based on previous work by Jussi Pakkanen (see #133).

Differences between the Autotools and Meson builds:

The Meson build requires a version of libcap that has pkg-config
metadata (introduced in libcap 2.23, in 2013).

The Meson build has no equivalent of --with-priv-mode=setuid. On
distributions like Debian <= 10 and RHEL <= 7 that require a setuid bwrap
executable, the sysadmin or distribution packaging will need to set the
correct permissions on the bwrap executable; Debian already did this via
packaging rather than the upstream build system.

The Meson build supports being used as a subproject, and there is CI
for this. It automatically disables shell completions and man pages,
moves the bubblewrap executable to ${libexecdir}, and renames the
bubblewrap executable according to a program_prefix option that the
caller must specify (for example, Flatpak would use
-Dprogram_prefix=flatpak- to get /usr/libexec/flatpak-bwrap). See the
tests/use-as-subproject/ directory for an example.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-02-18 10:42:55 +00:00
Simon McVittie
40de94244a workflows: Update for rename of default branch to main
Signed-off-by: Simon McVittie <smcv@collabora.com>
2022-02-13 21:04:25 +00:00
Simon McVittie
187918b1d1 workflows: List installed files and run distcheck
This helps to ensure that the build system is working correctly.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2021-04-19 13:23:41 +01:00
Simon McVittie
be95ff6156 Add CI using Github workflows
Loosely based on the configuration used in Flatpak.

Signed-off-by: Simon McVittie <smcv@collabora.com>
2021-04-18 13:41:11 +01:00