# # spec file for package flatpak # # Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed # upon. The license for this file, and modifications and additions to the # file, is the same license as for the pristine package itself (unless the # license for the pristine package is not an Open Source License, in which # case the license is the MIT License). An "Open Source License" is a # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. # Please submit bugfixes or comments via http://bugs.opensuse.org/ # %if 0%{suse_version} == 1315 %define _userunitdir /usr/lib/systemd/user/ %endif %define libname libflatpak0 Name: flatpak Version: 0.6.10 Release: 0 Summary: Manage OSTree based application bundles License: LGPL-2.1+ Group: System/Packages Url: https://flatpak.github.io/ Source: https://github.com/flatpak/flatpak/releases/download/%{version}/%{name}-%{version}.tar.xz BuildRequires: docbook-xsl-stylesheets BuildRequires: gtk-doc BuildRequires: intltool >= 0.35.0 BuildRequires: libcap-devel BuildRequires: libdwarf-devel BuildRequires: libtool BuildRequires: pkgconfig BuildRequires: xsltproc BuildRequires: pkgconfig(fuse) BuildRequires: pkgconfig(gio-2.0) BuildRequires: pkgconfig(gio-unix-2.0) BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(gobject-introspection-1.0) >= 1.40.0 BuildRequires: pkgconfig(gobject-introspection-no-export-1.0) >= 1.40.0 BuildRequires: pkgconfig(json-glib-1.0) BuildRequires: pkgconfig(libarchive) >= 2.8.0 BuildRequires: pkgconfig(libelf) >= 0.8.12 BuildRequires: pkgconfig(libseccomp) BuildRequires: pkgconfig(libsoup-2.4) BuildRequires: pkgconfig(ostree-1) >= 2016.10 BuildRequires: pkgconfig(polkit-gobject-1) BuildRequires: pkgconfig(xau) Requires: ostree >= 2016.5 # Remove after openSUSE Leap 42 is out of scope Provides: xdg-app = %{version} Obsoletes: xdg-app <= 0.5.2-2 Recommends: %{name}-lang = %{version} BuildRoot: %{_tmppath}/%{name}-%{version}-build %{?systemd_requires} %description flatpak is a system for building, distributing and running sandboxed desktop applications on Linux. See https://wiki.gnome.org/Projects/SandboxedApps for more information. %package builder Summary: Build helper for %{name} Group: Development/Tools/Building Requires: %{_bindir}/bzr Requires: %{_bindir}/git Requires: %{_bindir}/patch Requires: %{_bindir}/strip Requires: /bin/tar Requires: %{_bindir}/unzip Requires: %{name} = %{version} %description builder flatpak-builder is a tool that makes it easy to build applications and their dependencies by automating the configure && make && make install steps. %package -n %{libname} Summary: Manage OSTree based application bundles Group: System/Libraries %description -n %{libname} flatpak is a system for building, distributing and running sandboxed desktop applications on Linux. See https://wiki.gnome.org/Projects/SandboxedApps for more information. %package -n typelib-1_0-Flatpak-1_0 Summary: Manage OSTree based application bundles -- Introspection bindings Group: System/Libraries %description -n typelib-1_0-Flatpak-1_0 flatpak is a system for building, distributing and running sandboxed desktop applications on Linux. See https://wiki.gnome.org/Projects/SandboxedApps for more information. %package devel Summary: Manage OSTree based application bundles -- Development files Group: Development/Languages/C and C++ Requires: %{libname} = %{version} Requires: typelib-1_0-Flatpak-1_0 = %{version} %description devel flatpak is a system for building, distributing and running sandboxed desktop applications on Linux. See https://wiki.gnome.org/Projects/SandboxedApps for more information. %lang_package %prep %setup -q %build NOCONFIGURE=1 ./autogen.sh %configure \ --disable-silent-rules \ --with-dwarf-header=%{_includedir}/libdwarf \ --enable-gtk-doc \ --with-priv-mode=none make %{?_smp_mflags} %install make %{?_smp_mflags} DESTDIR=%{buildroot} install find %{buildroot} -type f -name "*.la" -delete -print mkdir -p %{buildroot}%{_sbindir} ln -s service %{buildroot}%{_sbindir}/rcflatpak-system-helper # The system repo is not installed by the flatpak build system. install -d %{buildroot}%{_localstatedir}/lib/flatpak %find_lang %{name} %post -n %{libname} -p /sbin/ldconfig %postun -n %{libname} -p /sbin/ldconfig %pre %service_add_pre flatpak-system-helper.service %preun %service_del_preun flatpak-system-helper.service %post %service_add_post flatpak-system-helper.service # Create an (empty) system-wide repo. flatpak remote-list --system > /dev/null 2>&1 %postun %service_del_postun flatpak-system-helper.service %files -f %{name}.lang %defattr(-,root,root) %{_bindir}/flatpak %{_libexecdir}/flatpak-bwrap %{_libexecdir}/flatpak-dbus-proxy %{_libexecdir}/flatpak-session-helper %{_libexecdir}/flatpak-system-helper %{_libexecdir}/xdg-document-portal %{_libexecdir}/xdg-permission-store %{_datadir}/bash-completion/completions/flatpak # # Own dirs so we don't have to depend on dbus for building. %dir %{_datadir}/dbus-1 %dir %{_datadir}/dbus-1/interfaces %dir %{_datadir}/dbus-1/services %{_datadir}/dbus-1/interfaces/org.freedesktop.Flatpak.xml %{_datadir}/dbus-1/interfaces/org.freedesktop.portal.Documents.xml %{_datadir}/dbus-1/interfaces/org.freedesktop.impl.portal.PermissionStore.xml %{_datadir}/dbus-1/services/org.freedesktop.Flatpak.service %{_datadir}/dbus-1/services/org.freedesktop.impl.portal.PermissionStore.service %{_datadir}/dbus-1/services/org.freedesktop.portal.Documents.service %{_datadir}/dbus-1/system-services/org.freedesktop.Flatpak.SystemHelper.service # policykit rules %{_datadir}/polkit-1/actions/org.freedesktop.Flatpak.policy %{_datadir}/polkit-1/rules.d/org.freedesktop.Flatpak.rules %{_mandir}/man1/%{name}*.1%{ext_man} %{_mandir}/man5/flatpak-metadata.5%{ext_man} %exclude %{_mandir}/man1/flatpak-builder.1%{ext_man} %{_datadir}/%{name}/ %{_sysconfdir}/dbus-1/system.d/org.freedesktop.Flatpak.SystemHelper.conf %{_sysconfdir}/profile.d/flatpak.sh # Own dirs so we don't have to depend on gdm for building. %dir %{_datadir}/gdm/ %dir %{_datadir}/gdm/env.d/ %{_datadir}/gdm/env.d/flatpak.env %{_unitdir}/flatpak-system-helper.service %{_sbindir}/rcflatpak-system-helper %{_userunitdir}/flatpak-session-helper.service %{_userunitdir}/xdg-document-portal.service %{_userunitdir}/xdg-permission-store.service %dir %{_localstatedir}/lib/flatpak %dir %{_userunitdir} %dir %{_userunitdir}/dbus.service.d %{_userunitdir}/dbus.service.d/flatpak.conf %files builder %defattr(-,root,root) %{_bindir}/flatpak-builder %{_mandir}/man1/flatpak-builder.1%{ext_man} %files -n %{libname} %defattr(-,root,root) %{_libdir}/libflatpak.so.* %files -n typelib-1_0-Flatpak-1_0 %defattr(-,root,root) %{_libdir}/girepository-1.0/Flatpak-1.0.typelib %files devel %defattr(-,root,root) %{_libdir}/pkgconfig/flatpak.pc %{_datadir}/gtk-doc/ %{_includedir}/%{name}/ %{_libdir}/libflatpak.so %{_datadir}/gir-1.0/Flatpak-1.0.gir %changelog