[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#33792] [PATCH] gnu: Add flatpak.
From: |
Rutger Helling |
Subject: |
[bug#33792] [PATCH] gnu: Add flatpak. |
Date: |
Wed, 19 Dec 2018 09:46:28 +0100 |
@Julien
The patch already uses the system bubblewrap, see the
--with-system-bubblewrap argument.
@Danny
Thanks for sharing your work! Unfortunately it fixed neither the
documentation nor the tests for me. I think the source might have
changed too much. The "--with-xml-catalog" argument no longer exists
and the tests still error on trying to copy something.
I don't think the rest is necessary. I got both GIMP and Firefox
nightly working. Make sure you use the --user parameter though, or
you'll need root.
For the record, this is how I got Firefox running:
$ flatpak remote-add --user --if-not-exists flathub
https://flathub.org/repo/flathub.flatpakrepo
$ flatpak install --user --from
https://firefox-flatpak.mojefedora.cz/org.mozilla.FirefoxNightly.flatpakref
$ flatpak run org.mozilla.FirefoxNightly/x86_64/master
OK to push?
On Tue, 18 Dec 2018 20:45:35 +0100
Julien Lepiller <address@hidden> wrote:
> Le Tue, 18 Dec 2018 19:01:53 +0100,
> Danny Milosavljevic <address@hidden> a écrit :
>
> > Hi Rutger,
> >
> > On Tue, 18 Dec 2018 16:12:49 +0100
> > Rutger Helling <address@hidden> wrote:
> >
> > > this patch adds Flatpak.
> >
> > Try
> >
> > (string-append "--with-xml-catalog="
> > (assoc-ref %build-inputs "docbook-xml")
> > "/xml/dtd/docbook/catalog.xml"))
> >
> > and
> >
> > (add-before 'configure 'fix-docbook
> > (lambda* (#:key inputs #:allow-other-keys)
> > (substitute* "configure"
> > ;; The configure check is overzealous about making
> > sure that ;; things are in place -- it uses the xmlcatalog tool to
> > make ;; sure that docbook-xsl is available, but this tool can only
> > ;; look in one catalog file, unlike the
> > $XML_CATALOG_FILES ;; variable that Guix defines. Fool the test by
> > using the ;; docbook-xsl catalog explicitly and get on with life.
> > (("\"\\$XML_CATALOG_FILE\" \
> > \"http://docbook.sourceforge.net/release/xsl/")
> > (string-append (car (find-files (assoc-ref inputs
> > "docbook-xsl") "^catalog.xml$"))
> > "
> > \"http://docbook.sourceforge.net/release/xsl/"))) #t))
> >
> > Also, try patching the tests like this:
> >
> > (add-after 'unpack 'patch-/var/tmp
> > (lambda _
> > (substitute* '("tests/libtest.sh"
> > "tests/test-run.sh"
> > "tests/testlibrary.c"
> > "buildutil/tap-test"
> > ; ./common/flatpak-dir.c
> > ; ./common/flatpak-run.c
> > )
> > (("/var/tmp") "/tmp"))
> > (substitute* "tests/libtest.sh"
> > (("/usr/bin/") "")
> > (("/bin/") ""))
> > #t))
> >
> > Also, in an earlier iteration I needed the following, but if it
> > works without, then fine!
> >
> > (add-before 'check 'set-environment-up
> > (lambda _
> > ;(mkdir-p "/tmp/b")
> > (setenv "HOME" "/tmp")
> > ;; Note: needs xattr support.
> > (setenv "TMPDIR" "/tmp")
> > ;;; TODO /dev/fuse
> > (mkdir-p "/tmp/ldconfig.d")
> > (call-with-output-file "/tmp/ldconfig.d/ldconfig"
> > (lambda (port)
> > (display "#!/bin/sh\nexit 0\n" port)))
> > (chmod "/tmp/ldconfig.d/ldconfig" #o755)
> > (setenv "PATH" (string-append
> > "/tmp/ldconfig.d:" (getenv "PATH"))) #t)))))
> >
> > Additional inputs may be needed. I had those:
> >
> > (inputs
> > `(("appstream-glib" ,appstream-glib)
> > ("attr" ,attr)
> > ("fuse" ,fuse)
> > ("glib" ,glib)
> > ("gpgme" ,gpgme)
> > ("json-glib" ,json-glib)
> > ("libarchive" ,libarchive)
> > ("libcap" ,libcap)
> > ("libseccomp" ,libseccomp)
> > ("libsoup" ,libsoup)
> > ("libxml2" ,libxml2)
> > ("libxau" ,libxau)
> > ("nettle" ,nettle)
> > ("libostree" ,libostree)
> > ("polkit" ,polkit)))
> > (native-inputs
> > `(("autoconf" ,autoconf)
> > ("automake" ,automake)
> > ("dbus" ,dbus) ; for the tests
> > ("docbook-xml" ,docbook-xml-4.1.2)
> > ("docbook-xsl" ,docbook-xsl)
> > ("fuse" ,fuse) ; for the tests
> > ("gettext-minimal" ,gettext-minimal)
> > ;("git" ,git)
> > ("glib" ,glib "bin")
> > ("gnupg" ,gnupg)
> > ("gobject-introspection" ,gobject-introspection)
> > ("gtk-doc" ,gtk-doc)
> > ("libtool" ,libtool)
> > ("pkg-config" ,pkg-config)
> > ("which" ,which)
> > ("libglnx" ,(origin
> > (method git-fetch)
> > (uri (git-reference
> > (url "https://github.com/GNOME/libglnx.git")
> > (commit
> > "6f1ee5db1400b13a9a0fa0b2274ae34e8710c1aa"))) (sha256
> > (base32
> > "137329m4lm3ssmxyyr1cin0xmlpsz4kfk26ydq6i4zf7qz81n64s"))))
> > ("bubblewrap" ,(origin
> > (method url-fetch)
> > (uri (string-append
> > "https://github.com/projectatomic/bubblewrap/archive/"
> > "v0.2.0.tar.gz"))
> >
> > (sha256
> > (base32
> > "17796rqhp5wn3q2lspgqbyk7nk1ixns9m2kgw82j2h2yfyi15mjh"))))
>
> Just so you know, we already have a bubblewrap package. Maybe you can
> use it instead of bundling the sources?
>
> > ("xmltproc" ,libxslt)))
> > (home-page "https://www.flatpak.org/")
> > (synopsis "Flatpak")
> > (description "Flatpak")
> > (license license:lgpl2.1+)))
> >
> > And I fiddled with libglnx:
> >
> > (lambda* (#:key inputs #:allow-other-keys)
> > (use-modules (system repl debug))
> > (set! terminal-width (lambda () 1000000))
> > (delete-file-recursively "libglnx")
> > (copy-recursively (assoc-ref inputs "libglnx")
> > "libglnx") (delete-file-recursively "bsdiff")
> > ;(symlink "bsdiff-4.3-endsley" "bsdiff")
> > (copy-recursively (assoc-ref inputs "bsdiff") "bsdiff")
> > (setenv "NOCONFIGURE" "1")
> > (invoke "sh" "autogen.sh"))))))
> >
> > If it works without, your version may be fine as is. I just wanted
> > to share the parts I already had to try.
>
pgpnEKtwGSLar.pgp
Description: OpenPGP digital signature