Github messages for voidlinux
 help / color / mirror / Atom feed
From: paper42 <paper42@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] bubblewrap: update to 0.6.2
Date: Tue, 05 Jul 2022 13:52:55 +0200	[thread overview]
Message-ID: <20220705115255.337S7eQ7lzLtI_Yxvsujq24oFmsqIqZOA-ax7xfDYj8@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-37628@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 1311 bytes --]

There is an updated pull request by paper42 against master on the void-packages repository

https://github.com/oreo639/void-packages bubblewrap
https://github.com/void-linux/void-packages/pull/37628

bubblewrap: update to 0.6.2
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**

Depends on: https://github.com/void-linux/void-packages/pull/37646

<!--
#### New package
- This new package conforms to the [quality requirements](https://github.com/void-linux/void-packages/blob/master/Manual.md#quality-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/37628.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-bubblewrap-37628.patch --]
[-- Type: text/x-diff, Size: 10878 bytes --]

From 971597558adfd1d9bb233432824732e76cf3426f Mon Sep 17 00:00:00 2001
From: oreo639 <31916379+Oreo639@users.noreply.github.com>
Date: Mon, 20 Jun 2022 15:49:33 -0700
Subject: [PATCH] bubblewrap: update to 0.6.2

realpath patch is not necessary, the fix was backported to the musl
package in 4be91660ff6a61529677f08bc1abd1479c674c07
---
 .../patches/realpath-workaround.patch         | 249 ------------------
 srcpkgs/bubblewrap/template                   |  14 +-
 2 files changed, 4 insertions(+), 259 deletions(-)
 delete mode 100644 srcpkgs/bubblewrap/patches/realpath-workaround.patch

diff --git a/srcpkgs/bubblewrap/patches/realpath-workaround.patch b/srcpkgs/bubblewrap/patches/realpath-workaround.patch
deleted file mode 100644
index 45d1fd6231b6..000000000000
--- a/srcpkgs/bubblewrap/patches/realpath-workaround.patch
+++ /dev/null
@@ -1,249 +0,0 @@
---- /dev/null	2020-10-18 09:26:32.312745755 +0200
-+++ b/LICENSE.realpath	2020-10-18 11:09:14.119929076 +0200
-@@ -0,0 +1,29 @@
-+Copyright (c) 1989, 1991, 1993, 1995
-+     The Regents of the University of California.  All rights reserved.
-+
-+This code is derived from software contributed to Berkeley by
-+Jan-Simon Pendry.
-+
-+Redistribution and use in source and binary forms, with or without
-+modification, are permitted provided that the following conditions
-+are met:
-+1. Redistributions of source code must retain the above copyright
-+   notice, this list of conditions and the following disclaimer.
-+2. Redistributions in binary form must reproduce the above copyright
-+   notice, this list of conditions and the following disclaimer in the
-+   documentation and/or other materials provided with the distribution.
-+3. Neither the name of the University nor the names of its contributors
-+   may be used to endorse or promote products derived from this software
-+   without specific prior written permission.
-+
-+THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-+ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-+OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-+LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-+OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+SUCH DAMAGE.
---- a/bind-mount.c	2018-09-26 14:55:17.000000000 +0200
-+++ b/bind-mount.c	2020-10-18 11:08:37.822931452 +0200
-@@ -22,6 +22,198 @@
- 
- #include "utils.h"
- #include "bind-mount.h"
-+#include <stdlib.h>
-+#include <string.h>
-+#include <limits.h>
-+#include <unistd.h>
-+#include <sys/stat.h>
-+#include <errno.h>
-+#include <fcntl.h>
-+#include <sys/param.h>
-+
-+#ifndef __GLIBC__
-+/*
-+ * Copyright (c) 1989, 1991, 1993, 1995
-+ *      The Regents of the University of California.  All rights reserved.
-+ *
-+ * This code is derived from software contributed to Berkeley by
-+ * Jan-Simon Pendry.
-+ *
-+ * Redistribution and use in source and binary forms, with or without
-+ * modification, are permitted provided that the following conditions
-+ * are met:
-+ * 1. Redistributions of source code must retain the above copyright
-+ *    notice, this list of conditions and the following disclaimer.
-+ * 2. Redistributions in binary form must reproduce the above copyright
-+ *    notice, this list of conditions and the following disclaimer in the
-+ *    documentation and/or other materials provided with the distribution.
-+ * 3. Neither the name of the University nor the names of its contributors
-+ *    may be used to endorse or promote products derived from this software
-+ *    without specific prior written permission.
-+ *
-+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
-+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
-+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-+ * SUCH DAMAGE.
-+ */
-+char *realpath_int(const char *, char*);
-+char *
-+realpath_int(const char * path, char * resolved)
-+{
-+        struct stat sb;
-+        int idx = 0, nlnk = 0;
-+        const char *q;
-+        char *p, wbuf[2][MAXPATHLEN], *fres;
-+        size_t len;
-+        ssize_t n;
-+
-+        /* POSIX sez we must test for this */
-+        if (path == NULL) {
-+                errno = EINVAL;
-+                return NULL;
-+        }
-+
-+        if (resolved == NULL) {
-+                fres = resolved = malloc(MAXPATHLEN);
-+                if (resolved == NULL)
-+                        return NULL;
-+        } else
-+                fres = NULL;
-+
-+
-+        /*
-+         * Build real path one by one with paying an attention to .,
-+         * .. and symbolic link.
-+         */
-+
-+        /*
-+         * `p' is where we'll put a new component with prepending
-+         * a delimiter.
-+         */
-+        p = resolved;
-+
-+        if (*path == '\0') {
-+                *p = '\0';
-+                errno = ENOENT;
-+                goto out;
-+        }
-+
-+        /* If relative path, start from current working directory. */
-+        if (*path != '/') {
-+                /* check for resolved pointer to appease coverity */
-+                if (resolved && getcwd(resolved, MAXPATHLEN) == NULL) {
-+                        p[0] = '.';
-+                        p[1] = '\0';
-+                        goto out;
-+                }
-+                len = strlen(resolved);
-+                if (len > 1)
-+                        p += len;
-+        }
-+
-+loop:
-+        /* Skip any slash. */
-+        while (*path == '/')
-+                path++;
-+
-+        if (*path == '\0') {
-+                if (p == resolved)
-+                        *p++ = '/';
-+                *p = '\0';
-+                return resolved;
-+        }
-+
-+        /* Find the end of this component. */
-+        q = path;
-+        do
-+                q++;
-+        while (*q != '/' && *q != '\0');
-+
-+        /* Test . or .. */
-+        if (path[0] == '.') {
-+                if (q - path == 1) {
-+                        path = q;
-+                        goto loop;
-+                }
-+                if (path[1] == '.' && q - path == 2) {
-+                        /* Trim the last component. */
-+                        if (p != resolved)
-+                                while (*--p != '/')
-+                                        continue;
-+                        path = q;
-+                        goto loop;
-+                }
-+        }
-+
-+        /* Append this component. */
-+        if (p - resolved + 1 + q - path + 1 > MAXPATHLEN) {
-+                errno = ENAMETOOLONG;
-+                if (p == resolved)
-+                        *p++ = '/';
-+                *p = '\0';
-+                goto out;
-+        }
-+        p[0] = '/';
-+        memcpy(&p[1], path,
-+            /* LINTED We know q > path. */
-+            q - path);
-+        p[1 + q - path] = '\0';
-+
-+        /*
-+         * If this component is a symlink, toss it and prepend link
-+         * target to unresolved path.
-+         */
-+        if (lstat(resolved, &sb) == -1)
-+                goto out;
-+
-+        if (S_ISLNK(sb.st_mode)) {
-+                if (nlnk++ >= MAXSYMLINKS) {
-+                        errno = ELOOP;
-+                        goto out;
-+                }
-+                n = readlink(resolved, wbuf[idx], sizeof(wbuf[0]) - 1);
-+                if (n < 0)
-+                        goto out;
-+                if (n == 0) {
-+                        errno = ENOENT;
-+                        goto out;
-+                }
-+
-+                /* Append unresolved path to link target and switch to it. */
-+                if (n + (len = strlen(q)) + 1 > sizeof(wbuf[0])) {
-+                        errno = ENAMETOOLONG;
-+                        goto out;
-+                }
-+                memcpy(&wbuf[idx][n], q, len + 1);
-+                path = wbuf[idx];
-+                idx ^= 1;
-+
-+                /* If absolute symlink, start from root. */
-+                if (*path == '/')
-+                        p = resolved;
-+                goto loop;
-+        }
-+        if (*q == '/' && !S_ISDIR(sb.st_mode)) {
-+                errno = ENOTDIR;
-+                goto out;
-+        }
-+
-+        /* Advance both resolved and unresolved path. */
-+        p += 1 + q - path;
-+        path = q;
-+        goto loop;
-+out:
-+        free(fres);
-+        return NULL;
-+}
-+#endif
- 
- static char *
- skip_token (char *line, bool eat_whitespace)
-@@ -395,9 +587,14 @@
- 
-   /* The mount operation will resolve any symlinks in the destination
-      path, so to find it in the mount table we need to do that too. */
-+#ifdef __GLIBC__
-   resolved_dest = realpath (dest, NULL);
--  if (resolved_dest == NULL)
-+#else
-+  resolved_dest = realpath_int (dest, NULL);
-+#endif
-+  if (resolved_dest == NULL) {
-     return 2;
-+  }
- 
-   mount_tab = parse_mountinfo (proc_fd, resolved_dest);
-   if (mount_tab[0].mountpoint == NULL)
diff --git a/srcpkgs/bubblewrap/template b/srcpkgs/bubblewrap/template
index 4df1dac59395..85e07d0e4d8a 100644
--- a/srcpkgs/bubblewrap/template
+++ b/srcpkgs/bubblewrap/template
@@ -1,8 +1,8 @@
 # Template file for 'bubblewrap'
 pkgname=bubblewrap
-version=0.4.1
-revision=2
-build_style=gnu-configure
+version=0.6.2
+revision=1
+build_style=meson
 hostmakedepends="libxslt docbook-xsl pkg-config"
 makedepends="libcap-devel"
 short_desc="Unprivileged sandboxing tool"
@@ -10,10 +10,4 @@ maintainer="Duncaen <duncaen@voidlinux.org>"
 license="LGPL-2.0-or-later"
 homepage="https://github.com/containers/bubblewrap"
 distfiles="${homepage}/releases/download/v${version}/${pkgname}-${version}.tar.xz"
-checksum=b9c69b9b1c61a608f34325c8e1a495229bacf6e4a07cbb0c80cf7a814d7ccc03
-
-post_install() {
-	if [ "$XBPS_TARGET_LIBC" = "musl" ]; then
-		vlicense LICENSE.realpath
-	fi
-}
+checksum=8a0ec802d1b3e956c5bb0a40a81c9ce0b055a31bf30a8efa547433603b8af20b

  parent reply	other threads:[~2022-07-05 11:52 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-06-20 22:53 [PR PATCH] " oreo639
2022-06-22 21:16 ` paper42
2022-07-05 11:49 ` [PR PATCH] [Updated] " paper42
2022-07-05 11:52 ` paper42 [this message]
2022-07-05 11:55 ` [PR PATCH] [Merged]: " paper42

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220705115255.337S7eQ7lzLtI_Yxvsujq24oFmsqIqZOA-ax7xfDYj8@z \
    --to=paper42@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).