diff --git a/.flatpak-runtime-config.metadata b/.flatpak-runtime-config.metadata new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/.flatpak-runtime-config.metadata diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/.gitignore diff --git a/SOURCES/50-flatpak.conf b/SOURCES/50-flatpak.conf new file mode 100644 index 0000000..03c629d --- /dev/null +++ b/SOURCES/50-flatpak.conf @@ -0,0 +1,12 @@ + + + + /usr/cache/fontconfig + + /app/share/fonts + /app/cache/fontconfig + + /app/etc/fonts/local.conf + + /run/host/fonts + diff --git a/SOURCES/com.redhat.Platform.appdata.xml b/SOURCES/com.redhat.Platform.appdata.xml new file mode 100644 index 0000000..ea09ef2 --- /dev/null +++ b/SOURCES/com.redhat.Platform.appdata.xml @@ -0,0 +1,19 @@ + + + com.redhat.Platform + CC0 + https://www.redhat.com/en/about/red-hat-end-user-license-agreements#rhel + Red Hat Platform + Shared libraries + + + + +

+ The Red Hat Platform is a runtime for Flatpak applications. It contains + common libraries that are shared between desktop applications, including + GTK 3, GStreamer, Mesa, and many others. +

+
+ https://redhat.com/ +
diff --git a/SOURCES/com.redhat.Sdk.appdata.xml b/SOURCES/com.redhat.Sdk.appdata.xml new file mode 100644 index 0000000..5e9a2b5 --- /dev/null +++ b/SOURCES/com.redhat.Sdk.appdata.xml @@ -0,0 +1,19 @@ + + + com.redhat.Sdk + CC0 + https://www.redhat.com/en/about/red-hat-end-user-license-agreements#rhel + Red Hat SDK + Tools and headers for developing applications + + + + +

+ The Red Hat Sdk is the development runtime that you can use to produce applications using + the Red Hat Platform runtime. It contains everything that is in the platform, as well + as build and debugging tools and headers for the libraries. +

+
+ https://redhat.com/ +
diff --git a/SOURCES/usercustomize.py b/SOURCES/usercustomize.py new file mode 100644 index 0000000..cbca172 --- /dev/null +++ b/SOURCES/usercustomize.py @@ -0,0 +1,9 @@ +import site +import sysconfig + +purelib = sysconfig.get_path('purelib', vars=dict(base='/app')) +platlib = sysconfig.get_path('platlib', vars=dict(platbase='/app')) +site.addsitedir(purelib) +if platlib != purelib: + site.addsitedir(platlib) + diff --git a/SPECS/flatpak-runtime-config.spec b/SPECS/flatpak-runtime-config.spec new file mode 100644 index 0000000..4904966 --- /dev/null +++ b/SPECS/flatpak-runtime-config.spec @@ -0,0 +1,123 @@ +Name: flatpak-runtime-config +Version: 29 +Release: 5%{?dist} +Summary: Configuration files that live inside the flatpak runtime +Source1: 50-flatpak.conf +Source2: usercustomize.py +Source3: com.redhat.Platform.appdata.xml +Source4: com.redhat.Sdk.appdata.xml + +License: MIT + +BuildRequires: python2 +BuildRequires: python2-rpm-macros +BuildRequires: python3 +BuildRequires: python3-rpm-macros + +Requires: fontpackages-filesystem + +%description +This package includes configuration files that are installed into the flatpak +runtime filesystem during the runtime creation process; it is also installed +into the build root when building RPMs. It contains all configuration +files that need to be different when executing a flatpak. + +%prep + +%build + +%install +rm -rf $RPM_BUILD_ROOT +mkdir -p $RPM_BUILD_ROOT%{_prefix}/cache/fontconfig +mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/fonts/conf.d +install -t $RPM_BUILD_ROOT%{_sysconfdir}/fonts/conf.d -p -m 0644 %{SOURCE1} + +# usercustomize.py to set up Python paths +for d in %{python2_sitelib} %{python3_sitelib} ; do + mkdir -p $RPM_BUILD_ROOT/$d + install -t $RPM_BUILD_ROOT/$d -m 0644 %{SOURCE2} +done + +# Install appdata for both the Platform and the Sdk +mkdir -p $RPM_BUILD_ROOT%{_datadir}/metainfo +install -t $RPM_BUILD_ROOT%{_datadir}/metainfo -p -m 0644 %{SOURCE3} +install -t $RPM_BUILD_ROOT%{_datadir}/metainfo -p -m 0644 %{SOURCE4} + +mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/ +echo "/app/%{_lib}" > $RPM_BUILD_ROOT%{_sysconfdir}/ld.so.conf.d/app.conf + +# We duplicate selected file triggers from packages in the runtime, to +# extend them to cover /app as well. Some other functions that RPM file +# triggers normally provide are handled by flatpak triggers - in particular +# calling update-desktop-database and gtk-update-icon-cache. + +# The ldconfig scriplets have a limited function since symlinks are supposed +# to be packaged, and a ld.so.cache that handles both /app and /usr is +# maintained by flatpak. But occasionally a symlink is missed in packaging, +# and this will make sure it is created install time, as it would be +# system-wide. + +%post -p /sbin/ldconfig + +%transfiletriggerin -P 1999999 -- /app/lib /app/lib64 +/sbin/ldconfig + +%transfiletriggerin -- /app/share/glib-2.0/schemas +glib-compile-schemas /app/share/glib-2.0/schemas &> /dev/null || : + +%transfiletriggerin -- /app/share/fonts +HOME=/root /usr/bin/fc-cache -s + +%files +%dir %{_prefix}/cache +%dir %{_prefix}/cache/fontconfig +%{python2_sitelib} +%{python3_sitelib} +%{_datadir}/metainfo/*.appdata.xml +%{_sysconfdir}/fonts/conf.d/* +%{_sysconfdir}/ld.so.conf.d/app.conf + +%changelog +* Wed Jul 29 2020 Kalev Lember - 29-5 +- Install appdata for both the Platform and the Sdk + +* Fri Sep 28 2018 Owen Taylor - 29-4 +- Add a usercustomize.py to set up Python paths + +* Sat Sep 8 2018 Owen Taylor - 29-3 +- Fix path to gsettings schemas in trigger + +* Sat Sep 8 2018 Owen Taylor - 29-2 +- Avoid comments leaking into scriplets + +* Sat Sep 8 2018 Owen Taylor - 29-1 +- Add file triggers from glibc, glib2, and fontconfig + +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Wed Feb 07 2018 Fedora Release Engineering - 27-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Wed Aug 02 2017 Fedora Release Engineering - 27-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 27-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Thu Jun 29 2017 Owen Taylor - 27-3 +- Make not noarch - the contents of /etc/ld.so.conf.d/app.conf + depend on 64-bit vs. 32-bit +- Rename fontconfig conf file from 'xdg-app' to 'flatpak' + +* Tue Jun 13 2017 Owen Taylor - 27-2 +See https://bugzilla.redhat.com/show_bug.cgi?id=1460081 +- Switch license to MIT +- Preserve timestamps on file installation +- Own /usr/cache since it's not a standard directory +- Require fontpackages-filesystem for /etc/fonts/conf.d + +* Wed Jun 7 2017 Owen Taylor - 27-1 +- Strip down to just config files + +* Wed Jun 3 2015 Alexander Larsson +- Initial version