%global tarball_version %%(echo %{version} | tr '~' '.') # errors out on vendor/ulid/src/lib.rs %global __brp_mangle_shebangs_exclude_from /usr/src/debug/.*\.rs # reduce debuginfo to avoid running out of memory on builders %global rustflags_debuginfo 1 Name: fractal Version: 9 Release: 2%{?dist} Summary: Matrix group messaging app # fractal itself is GPL-3.0-or-later. The rest are statically linked rust libraries based on cargo_license_summary output. License: GPL-3.0-or-later AND (Apache-2.0 OR MIT) AND BSD-3-Clause AND (0BSD OR MIT OR Apache-2.0) AND Apache-2.0 AND (Apache-2.0 OR BSL-1.0) AND (Apache-2.0 OR ISC OR MIT) AND (Apache-2.0 OR MIT) AND Apache-2.0 WITH LLVM-exception AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND BSD-2-Clause AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND BSD-3-Clause AND (CC0-1.0 OR Apache-2.0) AND (CC0-1.0 OR MIT-0 OR Apache-2.0) AND MIT AND (MIT OR Apache-2.0) AND (MIT OR Apache-2.0 OR BSD-1-Clause) AND (MIT OR Apache-2.0 OR NCSA) AND (MIT OR Apache-2.0 OR Zlib) AND (MIT OR Zlib OR Apache-2.0) AND MPL-2.0 AND MPL-2.0+ AND (Unlicense OR MIT) AND Zlib AND (Zlib OR Apache-2.0 OR MIT) URL: https://gitlab.gnome.org/World/fractal Source0: https://gitlab.gnome.org/World/fractal/-/archive/%{tarball_version}/fractal-%{tarball_version}.tar.bz2 # tar xf fractal-%%{version}.tar.bz2 ; pushd fractal-%%{version} ; \ # cargo vendor && tar jcvf ../fractal-%%{version}-vendor.tar.bz2 vendor/ ; popd Source1: fractal-%{version}-vendor.tar.bz2 # fix the build with vendored sources Patch: cargo-vendor.patch # https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval ExcludeArch: %{ix86} BuildRequires: cargo BuildRequires: cargo-rpm-macros BuildRequires: clang-devel BuildRequires: llvm-devel BuildRequires: meson BuildRequires: pkgconfig(gio-2.0) BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(gstreamer-1.0) BuildRequires: pkgconfig(gstreamer-base-1.0) BuildRequires: pkgconfig(gstreamer-pbutils-1.0) BuildRequires: pkgconfig(gstreamer-play-1.0) BuildRequires: pkgconfig(gstreamer-video-1.0) BuildRequires: pkgconfig(gtk4) BuildRequires: pkgconfig(gtksourceview-5) BuildRequires: pkgconfig(libadwaita-1) BuildRequires: pkgconfig(libpipewire-0.3) BuildRequires: pkgconfig(libseccomp) BuildRequires: pkgconfig(openssl) BuildRequires: pkgconfig(shumate-1.0) BuildRequires: pkgconfig(sqlite3) BuildRequires: pkgconfig(xdg-desktop-portal) # for check BuildRequires: /usr/bin/appstream-util BuildRequires: /usr/bin/desktop-file-validate # for image loading Requires: glycin-loaders%{?_isa} %description Fractal is a Matrix messaging app for GNOME written in Rust. Its interface is optimized for collaboration in large groups, such as free software projects. %prep %autosetup -n fractal-%{tarball_version} -p1 -a1 sed -i -e '/\(gtk_update_icon_cache\|glib_compile_schemas\|update_desktop_database\)/s/true/false/' meson.build %build %meson %meson_build %cargo_license_summary %{cargo_license} > LICENSE.dependencies %install %meson_install %find_lang fractal %check appstream-util validate-relax --nonet $RPM_BUILD_ROOT%{_datadir}/metainfo/*.metainfo.xml desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/*.desktop %files -f fractal.lang %license LICENSE LICENSE.dependencies %doc README.md %{_bindir}/fractal %{_datadir}/applications/org.gnome.Fractal.desktop %{_datadir}/dbus-1/services/org.gnome.Fractal.service %{_datadir}/fractal/ %{_datadir}/glib-2.0/schemas/org.gnome.Fractal.gschema.xml %{_datadir}/icons/hicolor/scalable/apps/org.gnome.Fractal.svg %{_datadir}/icons/hicolor/symbolic/apps/org.gnome.Fractal-symbolic.svg %{_datadir}/metainfo/org.gnome.Fractal.metainfo.xml %changelog * Wed Nov 20 2024 Yaakov Selkowitz - 9-2 - Add glycin-loaders dependency * Tue Sep 03 2024 Pete Walter - 8-1 - Update to 8 * Wed Jul 17 2024 Fedora Release Engineering - 7-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild * Sat May 25 2024 Fabio Valentini - 7-2 - Rebuild for gstreamer-plugins-bad 1.24. * Sun May 05 2024 Pete Walter - 7-1 - Update to 7 * Thu Jan 25 2024 Pete Walter - 6-1 - Update to 6 * Wed Jan 24 2024 Fedora Release Engineering - 5-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Fri Jan 19 2024 Fedora Release Engineering - 5-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Mon Nov 27 2023 Pete Walter - 5-1 - Update to 5 * Fri Nov 17 2023 Pete Walter - 5~rc1-1 - Update to 5.rc1 * Thu Aug 17 2023 Pete Walter - 5~beta2-1 - Update to 5.beta2 * Tue Aug 15 2023 Pete Walter - 5~beta1-3 - Include statically linked rust library licenses in the license tag (rhbz#2223224) * Wed Jul 19 2023 Fedora Release Engineering - 5~beta1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Sun Jul 16 2023 Pete Walter - 5~beta1-1 - First Fedora build