Merge pull request #8150 from Rmys/master

bubblewrap
This commit is contained in:
Rmys
2020-03-12 20:16:59 +03:00
committed by GitHub
4 changed files with 213 additions and 3 deletions
+8 -1
View File
@@ -11,7 +11,7 @@
<License>LGPLv2</License>
<Summary>Unprivileged sandboxing tool</Summary>
<Description>is a core execution engine for unprivileged containers that works as a setuid binary on kernels without user namespaces.</Description>
<Archive sha1sum="68135daa443e5ef5ac2d1cddbadb731fa3e530a7" type="targz">https://github.com/projectatomic/bubblewrap/archive/v0.3.3.tar.gz</Archive>
<Archive sha1sum="eed480379ca9fa0738ee97b60f19808a9eead405" type="targz">https://github.com/projectatomic/bubblewrap/archive/v0.4.0.tar.gz</Archive>
<BuildDependencies>
<Dependency>libcap-devel</Dependency>
<Dependency>bash-completion</Dependency>
@@ -34,6 +34,13 @@
</Package>
<History>
<Update release="6">
<Date>2020-03-12</Date>
<Version>0.4.0</Version>
<Comment>Version bump.</Comment>
<Name>Mustafa Cinasal</Name>
<Email>muscnsl@gmail.com</Email>
</Update>
<Update release="5">
<Date>2019-07-07</Date>
<Version>0.3.3</Version>
@@ -11,10 +11,11 @@ from pisi.actionsapi import shelltools
from pisi.actionsapi import get
def setup():
shelltools.system("NOCONFIGURE=1 ./autogen.sh")
#shelltools.system("NOCONFIGURE=1 ./autogen.sh")
autotools.autoreconf("-fi")
autotools.configure("--with-systemduserunitdir=none \
--disable-geoclue \
--disable-docbook-docs \
--disable-libportal \
--disable-pipewire")
@@ -0,0 +1,199 @@
diff --git i/tests/camera.c w/tests/camera.c
index 4fefbe4..7957d72 100644
--- i/tests/camera.c
+++ w/tests/camera.c
@@ -239,29 +239,31 @@ test_camera_lockdown (void)
require_pipewire ();
reset_camera_permissions ();
xdp_impl_lockdown_set_disable_camera (lockdown, TRUE);
+ sleep (1);
keyfile = g_key_file_new ();
g_key_file_set_integer (keyfile, "backend", "delay", 200);
g_key_file_set_integer (keyfile, "result", "marker", 4);
g_key_file_set_integer (keyfile, "backend", "response", 0);
g_key_file_set_integer (keyfile, "result", "response", 2);
g_key_file_set_integer (keyfile, "result", "error_domain", XDG_DESKTOP_PORTAL_ERROR);
g_key_file_set_integer (keyfile, "result", "error_code", XDG_DESKTOP_PORTAL_ERROR_NOT_ALLOWED);
path = g_build_filename (outdir, "access", NULL);
g_key_file_save_to_file (keyfile, path, &error);
g_assert_no_error (error);
portal = xdp_portal_new ();
got_info = 0;
xdp_portal_access_camera (portal, NULL, 0, NULL, camera_cb, keyfile);
while (!got_info)
g_main_context_iteration (NULL, TRUE);
xdp_impl_lockdown_set_disable_camera (lockdown, FALSE);
+ sleep (1);
}
/* Test the effect of the user denying the access dialog */
diff --git i/tests/filechooser.c w/tests/filechooser.c
index a5f9b2c..799f24b 100644
--- i/tests/filechooser.c
+++ w/tests/filechooser.c
@@ -871,29 +871,31 @@ test_save_file_lockdown (void)
};
xdp_impl_lockdown_set_disable_save_to_disk (lockdown, TRUE);
+ sleep (1);
keyfile = g_key_file_new ();
g_key_file_set_integer (keyfile, "backend", "delay", 200);
g_key_file_set_integer (keyfile, "backend", "response", 0);
g_key_file_set_integer (keyfile, "result", "response", 2);
g_key_file_set_integer (keyfile, "result", "error_domain", XDG_DESKTOP_PORTAL_ERROR);
g_key_file_set_integer (keyfile, "result", "error_code", XDG_DESKTOP_PORTAL_ERROR_NOT_ALLOWED);
g_key_file_set_string_list (keyfile, "result", "uris", uris, g_strv_length ((char **)uris));
path = g_build_filename (outdir, "filechooser", NULL);
g_key_file_save_to_file (keyfile, path, &error);
g_assert_no_error (error);
portal = xdp_portal_new ();
got_info = 0;
xdp_portal_save_file (portal, NULL, "test", "test_file.txt", NULL, NULL, NULL, NULL, NULL, 0, NULL, save_file_cb, keyfile);
while (!got_info)
g_main_context_iteration (NULL, TRUE);
xdp_impl_lockdown_set_disable_save_to_disk (lockdown, FALSE);
+ sleep (1);
}
void
diff --git i/tests/location.c w/tests/location.c
index 0395f77..89cdef6 100644
--- i/tests/location.c
+++ w/tests/location.c
@@ -30,10 +30,8 @@ test_location_basic (void)
{
g_autoptr(XdpPortal) portal = NULL;
-#ifndef HAVE_GEOCLUE
g_test_skip ("Skipping tests that require geoclue");
return;
-#endif
portal = xdp_portal_new ();
@@ -67,10 +65,8 @@ test_location_accuracy (void)
{
g_autoptr(XdpPortal) portal = NULL;
-#ifndef HAVE_GEOCLUE
g_test_skip ("Skipping tests that require geoclue");
return;
-#endif
portal = xdp_portal_new ();
diff --git i/tests/openuri.c w/tests/openuri.c
index ddff074..ba02bfd 100644
--- i/tests/openuri.c
+++ w/tests/openuri.c
@@ -366,28 +366,30 @@ test_open_uri_lockdown (void)
g_autofree char *path = NULL;
xdp_impl_lockdown_set_disable_application_handlers (lockdown, TRUE);
+ sleep (1);
keyfile = g_key_file_new ();
g_key_file_set_integer (keyfile, "backend", "delay", 200);
g_key_file_set_integer (keyfile, "backend", "response", 0);
g_key_file_set_integer (keyfile, "result", "response", 2);
g_key_file_set_integer (keyfile, "result", "error_domain", XDG_DESKTOP_PORTAL_ERROR);
g_key_file_set_integer (keyfile, "result", "error_code", XDG_DESKTOP_PORTAL_ERROR_NOT_ALLOWED);
path = g_build_filename (outdir, "appchooser", NULL);
g_key_file_save_to_file (keyfile, path, &error);
g_assert_no_error (error);
portal = xdp_portal_new ();
got_info = 0;
xdp_portal_open_uri (portal, NULL, "http://www.flatpak.org", 0, NULL, open_uri_cb, keyfile);
while (!got_info)
g_main_context_iteration (NULL, TRUE);
xdp_impl_lockdown_set_disable_application_handlers (lockdown, FALSE);
+ sleep (1);
}
static void
diff --git i/tests/print.c w/tests/print.c
index 1b9be72..ddcac42 100644
--- i/tests/print.c
+++ w/tests/print.c
@@ -187,28 +187,30 @@ test_prepare_print_lockdown (void)
g_autofree char *path = NULL;
xdp_impl_lockdown_set_disable_printing (lockdown, TRUE);
+ sleep (1);
keyfile = g_key_file_new ();
g_key_file_set_integer (keyfile, "backend", "delay", 200);
g_key_file_set_integer (keyfile, "backend", "response", 0);
g_key_file_set_integer (keyfile, "result", "response", 2);
g_key_file_set_integer (keyfile, "result", "error_domain", XDG_DESKTOP_PORTAL_ERROR);
g_key_file_set_integer (keyfile, "result", "error_code", XDG_DESKTOP_PORTAL_ERROR_NOT_ALLOWED);
path = g_build_filename (outdir, "print", NULL);
g_key_file_save_to_file (keyfile, path, &error);
g_assert_no_error (error);
portal = xdp_portal_new ();
got_info = 0;
xdp_portal_prepare_print (portal, NULL, "test", NULL, NULL, 0, NULL, prepare_cb, keyfile);
while (!got_info)
g_main_context_iteration (NULL, TRUE);
xdp_impl_lockdown_set_disable_printing (lockdown, FALSE);
+ sleep (1);
}
void
@@ -427,28 +429,30 @@ test_print_lockdown (void)
g_autoptr(GDBusConnection) session_bus = NULL;
xdp_impl_lockdown_set_disable_printing (lockdown, TRUE);
+ sleep (1);
keyfile = g_key_file_new ();
g_key_file_set_integer (keyfile, "backend", "delay", 200);
g_key_file_set_integer (keyfile, "backend", "response", 0);
g_key_file_set_integer (keyfile, "result", "response", 2);
g_key_file_set_integer (keyfile, "result", "error_domain", XDG_DESKTOP_PORTAL_ERROR);
g_key_file_set_integer (keyfile, "result", "error_code", XDG_DESKTOP_PORTAL_ERROR_NOT_ALLOWED);
path = g_build_filename (outdir, "print", NULL);
g_key_file_save_to_file (keyfile, path, &error);
g_assert_no_error (error);
portal = xdp_portal_new ();
got_info = 0;
xdp_portal_print_file (portal, NULL, "test", 0, path, 0, NULL, print_cb, keyfile);
while (!got_info)
g_main_context_iteration (NULL, TRUE);
xdp_impl_lockdown_set_disable_printing (lockdown, FALSE);
+ sleep (1);
}
void
@@ -22,6 +22,9 @@
<Dependency>fuse-devel</Dependency>
<Dependency>gettext-devel</Dependency>
</BuildDependencies>
<Patches>
<Patch level="1">hack.diff</Patch>
</Patches>
</Source>
<Package>