From 2282e90165466b65c7adf2fa63471f9b7ca0c576 Mon Sep 17 00:00:00 2001 From: Christian Hergert Date: Thu, 17 May 2018 12:03:33 +0100 Subject: [PATCH] build: add flatpak manifest This isn't really meant to be distributed as a flatpak, being that we would want to have a daemon available to get anything done. But it does make it easier for people to open Sysprof in Builder and hack on things. --- build-aux/flatpak/org.gnome.Sysprof2.json | 98 +++++++++++++++++ build-aux/flatpak/polkit-autogen | 4 + ...-Add-option-to-build-without-polkitd.patch | 101 ++++++++++++++++++ 3 files changed, 203 insertions(+) create mode 100644 build-aux/flatpak/org.gnome.Sysprof2.json create mode 100755 build-aux/flatpak/polkit-autogen create mode 100644 build-aux/flatpak/polkit-build-Add-option-to-build-without-polkitd.patch diff --git a/build-aux/flatpak/org.gnome.Sysprof2.json b/build-aux/flatpak/org.gnome.Sysprof2.json new file mode 100644 index 00000000..283172df --- /dev/null +++ b/build-aux/flatpak/org.gnome.Sysprof2.json @@ -0,0 +1,98 @@ +{ + "app-id" : "org.gnome.Sysprof2", + "runtime" : "org.gnome.Platform", + "runtime-version" : "master", + "sdk" : "org.gnome.Sdk", + "command" : "sysprof", + "tags" : [ + "nightly" + ], + "desktop-file-name-prefix" : "(Nightly) ", + "finish-args" : [ + "--require-version=0.10.0", + "--allow=devel", + "--share=ipc", + "--socket=x11", + "--socket=wayland", + "--talk-name=org.gtk.vfs.*", + "--system-talk-name=org.freedesktop.PolicyKit1", + "--system-talk-name=org.gnome.Sysprof2", + "--filesystem=xdg-run/dconf", + "--filesystem=~/.config/dconf:ro", + "--talk-name=ca.desrt.dconf", + "--env=DCONF_USER_CONFIG_DIR=.config/dconf" + ], + "build-options" : { + "cflags" : "-O2 -g", + "cxxflags" : "-O2 -g", + "env" : { + "V" : "1" + } + }, + "cleanup" : [ + "/include", + "/lib/pkgconfig", + "/share/pkgconfig", + "/share/aclocal", + "/man", + "/share/man", + "/share/gtk-doc", + "/share/doc", + "/share/vala", + "/share/bash-completions", + "*.la", + "*.a" + ], + "modules" : [ + { + "name" : "polkit", + "config-opts" : [ + "--disable-polkitd", + "--disable-man-pages", + "--disable-introspection" + ], + "rm-configure" : true, + "cleanup" : [ + "/bin/*", + "/etc/pam.d", + "/etc/dbus-1", + "/share/dbus-1/system-services/*", + "/share/polkit-1/actions/*", + "/lib/polkit-1" + ], + "sources" : [ + { + "type" : "archive", + "url" : "http://www.freedesktop.org/software/polkit/releases/polkit-0.113.tar.gz", + "sha256" : "e1c095093c654951f78f8618d427faf91cf62abdefed98de40ff65eca6413c81" + }, + { + "type" : "patch", + "path" : "polkit-build-Add-option-to-build-without-polkitd.patch" + }, + { + "type" : "file", + "path" : "polkit-autogen", + "dest-filename" : "autogen.sh" + } + ] + }, + { + "name" : "sysprof", + "config-opts" : [ + "--libdir=/app/lib", + "--buildtype=debugoptimized", + "-Denable_gtk=true", + "-Dwith_sysprofd=host" + ], + "buildsystem" : "meson", + "builddir" : true, + "sources" : [ + { + "type" : "git", + "url" : "https://git.gnome.org/browse/sysprof" + } + ] + } + ] +} diff --git a/build-aux/flatpak/polkit-autogen b/build-aux/flatpak/polkit-autogen new file mode 100755 index 00000000..3ba457e5 --- /dev/null +++ b/build-aux/flatpak/polkit-autogen @@ -0,0 +1,4 @@ +#!/bin/sh + +gtkdocize --flavour no-tmpl +autoreconf -if diff --git a/build-aux/flatpak/polkit-build-Add-option-to-build-without-polkitd.patch b/build-aux/flatpak/polkit-build-Add-option-to-build-without-polkitd.patch new file mode 100644 index 00000000..f201c204 --- /dev/null +++ b/build-aux/flatpak/polkit-build-Add-option-to-build-without-polkitd.patch @@ -0,0 +1,101 @@ +From dab179770380918462d0d76e08b11e4abe55c933 Mon Sep 17 00:00:00 2001 +From: Patrick Griffis +Date: Thu, 8 Sep 2016 16:15:54 -0400 +Subject: [PATCH] build: Add option to build without polkitd + +This is for any consumer that needs libpolkit but does +not need polkitd. For example an application running in +flatpak. +--- + configure.ac | 29 ++++++++++++++++++++--------- + src/Makefile.am | 6 +++++- + test/Makefile.am | 6 +++++- + 3 files changed, 30 insertions(+), 11 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 97d4222..a08785c 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -129,20 +129,30 @@ AC_DEFINE([GLIB_VERSION_MIN_REQUIRED], [GLIB_VERSION_2_30], + AC_DEFINE([GLIB_VERSION_MAX_ALLOWED], [G_ENCODE_VERSION(2,34)], + [Notify us when we'll need to transition away from g_type_init()]) + ++ ++AC_ARG_ENABLE([polkitd], ++ [AS_HELP_STRING([--disable-polkitd], [Do not build polkitd])], ++ [enable_polkitd=$enableval], [enable_polkitd=yes]) ++AM_CONDITIONAL(BUILD_POLKITD, [test x${enable_polkitd} = yes]) ++ ++ + AC_ARG_WITH(mozjs, AS_HELP_STRING([--with-mozjs=@<:@mozjs185/mozjs-17.0|auto@:>@], + [Specify version of Spidermonkey to use]),, + with_mozjs=auto) +-AS_IF([test x${with_mozjs} != xauto], [ +- PKG_CHECK_MODULES(LIBJS, ${with_mozjs}) +-], [ +- PKG_CHECK_MODULES(LIBJS, [mozjs185], have_mozjs185=yes, have_mozjs185=no) +- AS_IF([test x${have_mozjs185} = xno], [ +- PKG_CHECK_MODULES(LIBJS, [mozjs-17.0], have_mozjs17=yes, +- [AC_MSG_ERROR([Could not find mozjs185 or mozjs-17.0; see http://ftp.mozilla.org/pub/mozilla.org/js/])]) ++ ++AS_IF([test x${enable_polkitd} = yes], [ ++ AS_IF([test x${with_mozjs} != xauto], [ ++ PKG_CHECK_MODULES(LIBJS, ${with_mozjs}) ++ ], [ ++ PKG_CHECK_MODULES(LIBJS, [mozjs185], have_mozjs185=yes, have_mozjs185=no) ++ AS_IF([test x${have_mozjs185} = xno], [ ++ PKG_CHECK_MODULES(LIBJS, [mozjs-17.0], have_mozjs17=yes, ++ [AC_MSG_ERROR([Could not find mozjs185 or mozjs-17.0; see http://ftp.mozilla.org/pub/mozilla.org/js/])]) ++ ]) + ]) ++ AC_SUBST(LIBJS_CFLAGS) ++ AC_SUBST(LIBJS_LIBS) + ]) +-AC_SUBST(LIBJS_CFLAGS) +-AC_SUBST(LIBJS_LIBS) + + EXPAT_LIB="" + AC_ARG_WITH(expat, [ --with-expat= Use expat from here], +@@ -605,6 +615,7 @@ echo " + Session tracking: ${SESSION_TRACKING} + PAM support: ${have_pam} + systemdsystemunitdir: ${systemdsystemunitdir} ++ polkitd: ${enable_polkitd} + polkitd user: ${POLKITD_USER}" + + if test "$have_pam" = yes ; then +diff --git a/src/Makefile.am b/src/Makefile.am +index 09fc7b3..c6fe91b 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -1,5 +1,9 @@ + +-SUBDIRS = polkit polkitbackend polkitagent programs ++SUBDIRS = polkit polkitagent programs ++ ++if BUILD_POLKITD ++SUBDIRS += polkitbackend ++endif + + if BUILD_EXAMPLES + SUBDIRS += examples +diff --git a/test/Makefile.am b/test/Makefile.am +index 59d0680..d43b0fe 100644 +--- a/test/Makefile.am ++++ b/test/Makefile.am +@@ -1,7 +1,11 @@ + +-SUBDIRS = mocklibc . polkit polkitbackend ++SUBDIRS = mocklibc . polkit + AM_CFLAGS = $(GLIB_CFLAGS) + ++if BUILD_POLKITD ++SUBDIRS += polkitbackend ++endif ++ + noinst_LTLIBRARIES = libpolkit-test-helper.la + libpolkit_test_helper_la_SOURCES = polkittesthelper.c polkittesthelper.h + libpolkit_test_helper_la_LIBADD = $(GLIB_LIBS) +-- +2.9.3 +