fosero / flatpak-overlay Goto Github PK
View Code? Open in Web Editor NEWA Gentoo ebuild overlay for flatpak
A Gentoo ebuild overlay for flatpak
Hello, When I was installing Flatpak from this overlay, I had this issue:
configure: error: Package requirements (fuse >= 2.9.2) were not met:
Package 'fuse', required by 'virtual:world', not found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables BUILDOPT_FUSE_CFLAGS
and BUILDOPT_FUSE_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
!!! Please attach the following file when seeking support:
!!! /var/tmp/portage/sys-fs/libostree-2019.5/work/libostree-2019.5/config.log
* ERROR: sys-fs/libostree-2019.5::flatpak-overlay failed (configure phase):
* econf failed
*
* Call stack:
* ebuild.sh, line 125: Called src_configure
* environment, line 2388: Called econf '--without-dracut' '--without-mkinitcpio' '--with-libarchive' '--without-selinux' '--enable-http2' '--enable-introspection' '--disable-gtk-doc' '--disable-man' '--without-avahi' '--with-gpgme' '--with-libmount' '--with-libsystemd' '--with-systemdsystemunitdir=/lib/systemd/system' '--with-soup' '--with-crypto=glib'
* phase-helpers.sh, line 681: Called __helpers_die 'econf failed'
* isolated-functions.sh, line 112: Called die
* The specific snippet of code:
* die "$@"
*
* If you need support, post the output of `emerge --info '=sys-fs/libostree-2019.5::flatpak-overlay'`,
* the complete build log and the output of `emerge -pqv '=sys-fs/libostree-2019.5::flatpak-overlay'`.
* The complete build log is located at '/var/tmp/portage/sys-fs/libostree-2019.5/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/sys-fs/libostree-2019.5/temp/environment'.
* Working directory: '/var/tmp/portage/sys-fs/libostree-2019.5/work/libostree-2019.5'
* S: '/var/tmp/portage/sys-fs/libostree-2019.5/work/libostree-2019.5'
* Messages for package sys-fs/libostree-2019.5:
* ERROR: sys-fs/libostree-2019.5::flatpak-overlay failed (configure phase):
* econf failed
*
* Call stack:
* ebuild.sh, line 125: Called src_configure
* environment, line 2388: Called econf '--without-dracut' '--without-mkinitcpio' '--with-libarchive' '--without-selinux' '--enable-http2' '--enable-introspection' '--disable-gtk-doc' '--disable-man' '--without-avahi' '--with-gpgme' '--with-libmount' '--with-libsystemd' '--with-systemdsystemunitdir=/lib/systemd/system' '--with-soup' '--with-crypto=glib'
* phase-helpers.sh, line 681: Called __helpers_die 'econf failed'
* isolated-functions.sh, line 112: Called die
* The specific snippet of code:
* die "$@"
*
* If you need support, post the output of `emerge --info '=sys-fs/libostree-2019.5::flatpak-overlay'`,
* the complete build log and the output of `emerge -pqv '=sys-fs/libostree-2019.5::flatpak-overlay'`.
* The complete build log is located at '/var/tmp/portage/sys-fs/libostree-2019.5/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/sys-fs/libostree-2019.5/temp/environment'.
* Working directory: '/var/tmp/portage/sys-fs/libostree-2019.5/work/libostree-2019.5'
* S: '/var/tmp/portage/sys-fs/libostree-2019.5/work/libostree-2019.5'
Despite using sys-fs/fuse-3.9.1
(which is >=2.9.2), this error still appeared, which didn't make any sense, but I have downgraded to sys-fs/fuse-2.9.9-r1:0
and it worked without any issues after.
Hi there,
Flatpak from the flatpak-overlay won't currently build on musl. A working patch (from alpine) is here:
--- a/config.h.in
+++ b/config.h.in
@@ -140,3 +140,14 @@
/* Define to 1 if you need to in order for `stat' and other things to work. */
#undef _POSIX_SOURCE
+
+/* taken from glibc unistd.h and fixes musl */
+#ifndef TEMP_FAILURE_RETRY
+#define TEMP_FAILURE_RETRY(expression) \
+ (__extension__ \
+ ({ long int __result; \
+ do __result = (long int) (expression); \
+ while (__result == -1L && errno == EINTR); \
+ __result; }))
+#endif
+
Also, for sys-fs/libostree:
--- a/config.h.in
+++ b/config.h.in
@@ -140,3 +140,14 @@
/* Define to 1 if you need to in order for `stat' and other things to work. */
#undef _POSIX_SOURCE
+
+/* taken from glibc unistd.h and fixes musl */
+#ifndef TEMP_FAILURE_RETRY
+#define TEMP_FAILURE_RETRY(expression) \
+ (__extension__ \
+ ({ long int __result; \
+ do __result = (long int) (expression); \
+ while (__result == -1L && errno == EINTR); \
+ __result; }))
+#endif
+
Hello,
I installed flatpak and have installed several applications. There was no issue there. However, when I try to run any application, ie flatpak run ...
, I get the error message Can't mkdir parents for /var/run/user/1000/.dbus-proxy/: No such file or directory
.
After some browsing, I found the solution here: flatpak/flatpak#534. By running the command, XDG_RUNTIME_DIR=/run/user/1000 flatpak run ...
the application runs fine. Do you have any idea why this problem eixsts, and whether there is a more elegant solution?
Thanks in advance.
BTW, I am using OpenRC
Hi,
Before today the last time I used Flatpaks to run apps was when 0.8.5 was still provided by this repo. Then Flatpaks worked fine but today since I upgraded to 0.9.3 I keep getting the error:
[1] 11922 segmentation fault flatpak run org.gnome.Builder
whenever I try to launch GNOME Builder nightly with Flatpak (with flatpak run org.gnome.Builder
). When I try to launch com.xamarin.MonoDevelop
with Flatpak (using flatpak run com.xamarin.MonoDevelop
) it fails giving the error message:
[1] 15686 segmentation fault flatpak run com.xamarin.MonoDevelop
Thanks for your time,
Brenton
Gentoo has sys-apps/bubblewrap, so it seems like a good idea to use it for sys-apps/flatpak.
The package you maintain here collides with dev-util/ostree in mainline; I'm guessing renaming this ebuild might make sense so they become the same on?
flatpak run org.gnome.FeedReader
bwrap: Creating new namespace failed, likely because the kernel does not support user namespaces. bwrap must be installed setuid on such systems.
error: ldconfig failed, exit status 256
Fixed this error by changing perms.
chmod u+s /usr/libexec/flatpak-bwrap
flatpak versions <1.0.8 and <1.2.4 are affected by CVE-2019-10063 (sandbox bypass vulnerability). 0.10 branch has no fix available, so it should be removed.
After upgrading to pipewire 0.3.10, xdg-desktop-portal fails to build with the following:
configure: error: Package requirements (libpipewire-0.2 >= 0.2.6) were not met:
Package 'libpipewire-0.2', required by 'virtual:world', not found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables PIPEWIRE_CFLAGS
and PIPEWIRE_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
!!! Please attach the following file when seeking support:
!!! /var/tmp/portage/sys-apps/xdg-desktop-portal-1.6.0/work/xdg-desktop-portal-1.6.0/config.log
* ERROR: sys-apps/xdg-desktop-portal-1.6.0::flatpak-overlay failed (configure phase):
* econf failed
*
* Call stack:
* ebuild.sh, line 125: Called src_configure
* environment, line 1019: Called econf '--disable-docbook-docs' '--disable-geoclue' '--enable-pipewire' '--disable-libportal' '--with-systemduserunitdir=/usr/lib/systemd/user'
* phase-helpers.sh, line 681: Called __helpers_die 'econf failed'
* isolated-functions.sh, line 112: Called die
* The specific snippet of code:
* die "$@"
*
* If you need support, post the output of `emerge --info '=sys-apps/xdg-desktop-portal-1.6.0::flatpak-overlay'`,
* the complete build log and the output of `emerge -pqv '=sys-apps/xdg-desktop-portal-1.6.0::flatpak-overlay'`.
* The complete build log is located at '/var/tmp/portage/sys-apps/xdg-desktop-portal-1.6.0/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/sys-apps/xdg-desktop-portal-1.6.0/temp/environment'.
* Working directory: '/var/tmp/portage/sys-apps/xdg-desktop-portal-1.6.0/work/xdg-desktop-portal-1.6.0'
* S: '/var/tmp/portage/sys-apps/xdg-desktop-portal-1.6.0/work/xdg-desktop-portal-1.6.0'
bails out with 'error: no such file or directory'
we don't use the bootable part of ostree, so maybe just disable it for now.
For example, when installing Qt Creator from the official binary installer, desktop files and icons get installed into ~/.local/share/flatpak/exports/share
. The output of echo $XDG_DATA_DIRS
is:
/home/realnc/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share
I'm not sure who's to blame here. Flatpak or the Qt installer?
Please package sys-apps/xdg-desktop-portal-kde from https://github.com/KDE/xdg-desktop-portal-kde and make it a USE=kde dependency of sys-apps/flatpak.
An Arch Linux PKGBUILD is available as a model: https://git.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=packages/xdg-desktop-portal-kde
flatpak electron apps (MS teams, Discord) can not load TLS certs on gentoo stable. It seems this is because stable is on p11-kit 0.23.19-r1 but flatpak needs 0.23.20-r1 according to forum posts for distros having the same issue.
clang
common/flatpak-appdata.c:162:41: error: implicit declaration
of function
'g_date_time_new_from_iso8601' is invalid in C99
[-Werror,-Wimplicit-function-declaration]
g_autoptr(GDateTime) dt = g_date_time_new_from_iso8601 (date, tz);
^
common/flatpak-appdata.c:162:41: error: this function dec
laration is not a
prototype [-Werror,-Wstrict-prototypes]
common/flatpak-appdata.c:162:36: error: incompatible integer
to pointer
conversion initializing 'GDateTime_autoptr' (aka 'struct _GDateTime *')
with an expression of type 'int' [-Werror,-Wint-conversion]
g_autoptr(GDateTime) dt = g_date_time_new_from_iso8601 (date, tz);
^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~
3 errors generated.
gcc
common/flatpak-appdata.c:162:41: error: implicit declaration of function ‘g_date
_time_new_from_iso8601’; did you mean ‘g_time_val_from_iso8601’? [-Werror=implic
it-function-declaration]
g_autoptr(GDateTime) dt = g_date_time_new_from_iso8601 (date, tz)
;
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
g_time_val_from_iso8601
common/flatpak-appdata.c:162:41: error: initialization makes pointer from intege
r without a cast [-Werror=int-conversion]
cc1: some warnings being treated as errors
mkdir -p ./portal
/usr/bin/gdbus-codegen
--interface-prefix org.freedesktop.portal
--c-namespace Portal
--generate-c-code ./portal/flatpak-portal-dbus
./data/org.freedesktop.portal.Flatpak.xml \
Traceback (most recent call last):
File "./variant-schema-compiler/variant-schema-compiler", line 6, in
from pyparsing import *
ModuleNotFoundError: No module named 'pyparsing'
make: *** [Makefile:6839: common/flatpak-variant-private.h] Error 1
make: *** Waiting for unfinished jobs....
emerge --info '=sys-apps/flatpak-1.8.0::flatpak-overlay'
,emerge -pqv '=sys-apps/flatpak-1.8.0::flatpak-overlay'
.Hi @fosero, KDE overlay places packages as x11-misc/xdg-desktop-portal
instead of sys-apps/xdg-desktop-portal
used in your overlay. Do you think x11-misc
is more appropriate? If so, please move teh ebuild in this repo. If not, please let me know and I'll file a bug with KDE overlay and ask them to rename.
Hi!
It would be nice to have it on main project's page instead of referring documentation.
I couldn't see flatpak at http://gpo.zugaina.org/Search?search=flatpak, which means it hasn't been added to the Gentoo overaly list and cannot be directly installed with layman -a flatpak
or similar.
See also:
As the title says, since 0.11.6 flatpak switched to using bison to generate their datetime parsing code during compilation.
Flatpak 1.5.0 has release a few months back. Could you please update it
Two issues here, really. One is that xdg-desktop-portal-1.6.0 is missing from the Manifest and thus emerge fails. The other is that this package already exists in portage (with what seems to be a newer ebuild), so I think this should be removed from the overlay altogether?
* flatpak-1.8.0.tar.xz SHA256 SHA512 WHIRLPOOL size ;-) ... [ ok ]
* Determining the location of the kernel source code
* Found kernel source directory:
* /usr/src/linux
* Found sources for kernel version:
* 5.4.49-gentoo
* Checking for suitable kernel configuration options... [ ok ]
* Using python3.7 to build
>>> Unpacking source...
>>> Unpacking flatpak-1.8.0.tar.xz to /var/tmp/portage/sys-apps/flatpak-1.8.0-r3/work
>>> Source unpacked in /var/tmp/portage/sys-apps/flatpak-1.8.0-r3/work
>>> Preparing source in /var/tmp/portage/sys-apps/flatpak-1.8.0-r3/work/flatpak-1.8.0 ...
>>> Source prepared.
>>> Configuring source in /var/tmp/portage/sys-apps/flatpak-1.8.0-r3/work/flatpak-1.8.0 ...
* econf: updating flatpak-1.8.0/config.sub with /usr/share/gnuconfig/config.sub
* econf: updating flatpak-1.8.0/config.guess with /usr/share/gnuconfig/config.guess
./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --disable-dependency-tracking --disable-silent-rules --docdir=/usr/share/doc/flatpak-1.8.0-r3 --htmldir=/usr/share/doc/flatpak-1.8.0-r3/html --with-sysroot=/ --libdir=/usr/lib64 --enable-sandboxed-triggers --enable-xauth --localstatedir=/var --without-system-bubblewrap --without-system-dbus-proxy --disable-documentation --disable-gtk-doc --disable-introspection --enable-system-helper --enable-seccomp --disable-systemd
configure: WARNING: unrecognized options: --disable-systemd
The correct configure switch to enable/disable systemd support should be --with/--without-systemd
.
Many popular applications, including Discord, use a runtime with p11-kit-0.23.18 . However, 0.23.18 is incompatible with a 0.23.19 host (which just got stabilized on gentoo) , this is fixed in 0.23.20, which is currently marked testing on gentoo
See this for more detail p11-glue/p11-kit#275
When I install something with flatpak, it says:
Warning: Failed to get revokefs-fuse socket from system-helper: User flatpak does not exist in password file entry
Upstream says this is a packaging bug:
(sys-apps/systemd-241-r1:0/2::gentoo, ebuild scheduled for merge) pulled in by
sys-apps/systemd required by (virtual/service-manager-0:0/0::gentoo, installed)
sys-apps/systemd:0= required by (sys-apps/dbus-1.12.12-r1:0/0::gentoo, ebuild scheduled for merge)
sys-apps/systemd required by (sys-fs/libostree-2019.1:0/0::flatpak-overlay, ebuild scheduled for merge)
>=sys-apps/systemd-207 required by (sys-apps/gentoo-systemd-integration-7:0/0::gentoo, ebuild scheduled for merge)
sys-apps/systemd required by (virtual/tmpfiles-0:0/0::gentoo, installed)
(sys-fs/eudev-3.2.5:0/0::gentoo, installed) pulled in by
>=sys-fs/eudev-1.3:0/0[abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] (>=sys-fs/eudev-1.3:0/0[abi_x86_64(-)]) required by (virtual/libudev-232:0/1::gentoo, installed)
>=sys-fs/eudev-2.1.1 required by (virtual/udev-217:0/0::gentoo, installed)
One of the reasons many people use Gentoo is because it's one of the few distributions which does not require systemd. If systemd is a hard dependency, then please add a note to the README which states that so that people don't waste their time adding the overlay and trying to install.
The ebuild depends on the non-existent sys-apps/xdg-desktop-portal-kde
. It should be kde-plasma/xdg-desktop-portal-kde
.
!!! The following update has been skipped due to unsatisfied dependencies:
sys-apps/flatpak:0
selected: (sys-apps/flatpak-1.4.2:0/0::flatpak-overlay, installed)
skipped: (sys-apps/flatpak-1.4.2:0/0::flatpak-overlay, ebuild scheduled for merge) (see unsatisfied dependency below)
emerge: there are no ebuilds to satisfy "sys-apps/xdg-desktop-portal-kde".
(dependency required by "sys-apps/flatpak-1.4.2::flatpak-overlay[kde]" [ebuild])
flatpak-1.0.0 fails on emerge at common/flatpak-utils.c
common/flatpak-utils.c:5728:28: error: ‘G_NUMBER_PARSER_ERROR’ undeclared (first use in this function); did you mean ‘JSON_PARSER_ERROR’?
G_NUMBER_PARSER_ERROR, G_NUMBER_PARSER_ERROR_INVALID,
^~~~~~~~~~~~~~~~~~~~~
JSON_PARSER_ERROR
This function was added in glib-2.54, which is newer than the stable ebuild on Gentoo (currently 2.52.3). This was fixed in the flatpak repo after the release of 1.0.0. It built and ran successfully after applying a patch from that commit.
diff --git a/common/flatpak-utils.c b/common/flatpak-utils.c
index db4f364..ac37569 100644
--- a/common/flatpak-utils.c
+++ b/common/flatpak-utils.c
@@ -5725,7 +5725,7 @@ flatpak_utils_ascii_string_to_unsigned (const gchar *str,
if (str[0] == '\0')
{
g_set_error_literal (error,
- G_NUMBER_PARSER_ERROR, G_NUMBER_PARSER_ERROR_INVALID,
+ G_IO_ERROR, G_IO_ERROR_INVALID_ARGUMENT,
_("Empty string is not a number"));
return FALSE;
}
@@ -5751,7 +5751,7 @@ flatpak_utils_ascii_string_to_unsigned (const gchar *str,
*end_ptr != '\0')
{
g_set_error (error,
- G_NUMBER_PARSER_ERROR, G_NUMBER_PARSER_ERROR_INVALID,
+ G_IO_ERROR, G_IO_ERROR_INVALID_ARGUMENT,
_("“%s” is not an unsigned number"), str);
return FALSE;
}
@@ -5761,7 +5761,7 @@ flatpak_utils_ascii_string_to_unsigned (const gchar *str,
gchar *max_str = g_strdup_printf ("%" G_GUINT64_FORMAT, max);
g_set_error (error,
- G_NUMBER_PARSER_ERROR, G_NUMBER_PARSER_ERROR_OUT_OF_BOUNDS,
+ G_IO_ERROR, G_IO_ERROR_INVALID_ARGUMENT,
_("Number “%s” is out of bounds [%s, %s]"),
str, min_str, max_str);
g_free (min_str);
It's currently failing to compile on my system. You can find emerge info and logs here.
Let me know if I can provide any more details.
UPDATE:
Integration into ::guru
[1] overlay ongoing.
Goal of this step is:
All contributions are welcome! [2] (Changelog).
Feel free to review any Flatpak related packages and comment.
[1] https://wiki.gentoo.org/wiki/Project:GURU
[2] https://cgit.gentoo.org/repo/proj/guru.git/log/?h=dev
OLD:
Also I fixed #6 since, I send the pull request ;-)
I'll incorporate your email into pull request and you can simplify your Gentoo instructions!
Thank you for your work!
I was quite astonished this package explicitly requires sys-apps/dbus with systemd
Upstream gentoo has already added xdg-desktop-portal and xdg-desktop-portal-kde.
Should we keep copies of upstream or just remove it.
Another question is xdg-desktop-portal-gtk. Should try to get into mainline gentoo.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.