Subject: [PATCH] gnu: Add flatpak.
From: Rutger Helling <[email-masked]>
To: [email-masked]
Date: Tue, 18 Dec 2018 16:12:49 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Hey Guix,

this patch adds Flatpak.
From b561716938c635f153769b57300e438afbcad03b Mon Sep 17 00:00:00 2001
From: Rutger Helling <[email-masked]>
Date: Tue, 18 Dec 2018 16:09:27 +0100
Subject: [PATCH] gnu: Add flatpak.

* gnu/packages/package-management.scm (flatpak): New variable.
---
 gnu/packages/package-management.scm | 50 +++++++++++++++++++++++++++++
 1 file changed, 50 insertions(+)

diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm
index 89c9f91db..7b8f4abde 100644
--- a/gnu/packages/package-management.scm
+++ b/gnu/packages/package-management.scm
@@ -50,6 +50,7 @@
   #:use-module (gnu packages gnupg)
   #:use-module (gnu packages gnuzilla)
   #:use-module (gnu packages graphviz)
+  #:use-module (gnu packages gtk)
   #:use-module (gnu packages guile)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages lisp)
@@ -68,8 +69,10 @@
   #:use-module (gnu packages time)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages vim)
+  #:use-module (gnu packages virtualization)
   #:use-module (gnu packages web)
   #:use-module (gnu packages xml)
+  #:use-module (gnu packages xorg)
   #:use-module (guix build-system emacs)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system meson)
@@ -984,3 +987,50 @@ tools that combines a \"git-like\" model for committing and downloading
 bootable filesystem trees, along with a layer for deploying them and managing
 the bootloader configuration.")
     (license license:lgpl2.0+)))
+
+(define-public flatpak
+  (package
+  (name "flatpak")
+  (version "1.1.0")
+  (source
+   (origin
+    (method url-fetch)
+    (uri (string-append "https://github.com/flatpak/flatpak/releases/download/"
+                        version "/flatpak-" version ".tar.xz"))
+    (sha256
+     (base32
+      "0bkjwh49kajyd78vdh0g9arb352a7rccaifas9zxa78phhja2v2p"))))
+  (build-system gnu-build-system)
+  (arguments
+   '(#:tests? #f ;; Tests fail due to trying to create files where it can't.
+     #:configure-flags (list
+                        "--enable-documentation=no" ;; FIXME
+                        "--enable-system-helper=no"
+                        "--localstatedir=/var"
+                        (string-append "--with-system-bubblewrap=" (assoc-ref
+                                       %build-inputs "bubblewrap") "/bin/bwrap"))))
+  (native-inputs `(("bison" ,bison)
+                   ("gettext" ,gnu-gettext)
+                   ("glib:bin" ,glib "bin") ; for glib-mkenums and gdbus-codegen
+                   ("gobject-introspection" ,gobject-introspection)
+                   ("libcap" ,libcap)
+                   ("pkg-config" ,pkg-config)))
+  (inputs `(("appstream-glib" ,appstream-glib)
+            ("bubblewrap" ,bubblewrap)
+            ("gdk-pixbuf" ,gdk-pixbuf)
+            ("gpgme" ,gpgme)
+            ("json-glib" ,json-glib)
+            ("libarchive" ,libarchive)
+            ("libostree" ,libostree)
+            ("libseccomp" ,libseccomp)
+            ("libsoup" ,libsoup)
+            ("libxau" ,libxau)
+            ("libxml2" ,libxml2)
+            ("nettle" ,nettle)
+            ("util-linux" ,util-linux)))
+  (home-page "https://flatpak.org")
+  (synopsis "System for building, distributing, and running sandboxed desktop
+applications")
+  (description "Flatpak is a system for building, distributing, and running
+sandboxed desktop applications on GNU/Linux.")
+  (license license:lgpl2.1)))
-- 
2.20.1