# FIXME: Debug artifacts get in the way %define debug_package %{nil} ExcludeArch: %{ix86} # Generated by rust2rpm 26 %bcond_without check %global commit 5fc02288564e059f8d325c061f0787d5a86fb39a %global shortcommit %{sub %{commit} 1 7} %global commitdatestring 2024-09-24 17:25:31 +0200 %global commitdate 20240924 Name: cosmic-settings Version: 1.0.0~alpha.2 Release: %autorelease Summary: Settings app for the COSMIC Desktop Environment License: (MIT OR Apache-2.0 OR CC0-1.0) AND (Unlicense OR MIT) AND BSD-3-Clause AND (MIT OR Apache-2.0 OR Zlib) AND (Apache-2.0 OR MIT) AND (MIT OR Apache-2.0) AND (CC0-1.0 OR Apache-2.0) AND Apache-2.0 WITH LLVM-exception AND (Apache-2.0 OR MIT) AND (BSD-2-Clause OR Apache-2.0 OR MIT) AND ISC AND MPL-2.0 AND GPL-3.0-only AND (MIT OR Zlib OR Apache-2.0) AND (Apache-2.0 OR BSL-1.0) AND Unicode-3.0 AND (0BSD OR MIT OR Apache-2.0) AND BSD-2-Clause AND Apache-2.0 AND CC0-1.0 AND (MIT OR Apache-2.0 OR NCSA) AND Unlicense AND MIT AND BSL-1.0 AND Zlib AND (Zlib OR Apache-2.0 OR MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) URL: https://github.com/pop-os/cosmic-settings Source0: https://github.com/pop-os/cosmic-settings/archive/%{commit}/cosmic-settings-%{shortcommit}.tar.gz # To create the below sources: # * git clone https://github.com/pop-os/cosmic-settings at the specified commit # * cargo vendor > vendor-config-%%{shortcommit}.toml # * tar -pczf vendor-%%{shortcommit}.tar.gz vendor Source1: vendor-%{shortcommit}.tar.gz # * mv vendor-config-%%{shortcommit}.toml .. Source2: vendor-config-%{shortcommit}.toml BuildRequires: cargo-rpm-macros >= 25 BuildRequires: rustc BuildRequires: lld BuildRequires: cargo BuildRequires: libinput-devel BuildRequires: wayland-devel BuildRequires: libxkbcommon-devel BuildRequires: systemd-devel BuildRequires: just BuildRequires: desktop-file-utils BuildRequires: pipewire-devel BuildRequires: clang Requires: hicolor-icon-theme Requires: nm-connection-editor %global _description %{expand: %{summary}.} %description %{_description} %prep %autosetup -n cosmic-settings-%{commit} -p1 -a1 %cargo_prep -N # Check if .cargo/config.toml exists if [ -f .cargo/config.toml ]; then # If it exists, append the contents of %%{SOURCE2} to .cargo/config.toml cat %{SOURCE2} >> .cargo/config.toml echo "Appended %{SOURCE2} to .cargo/config.toml" else # If it does not exist, append the contents of %%{SOURCE2} to .cargo/config cat %{SOURCE2} >> .cargo/config echo "Appended %{SOURCE2} to .cargo/config" fi %build # Set vergen environment variables export VERGEN_GIT_COMMIT_DATE="date --utc '%{commitdatestring}'" export VERGEN_GIT_SHA="%{commit}" %cargo_build %{cargo_license_summary} %{cargo_license} > LICENSE.dependencies %{cargo_vendor_manifest} sed 's/\(.*\) (.*#\(.*\))/\1+git\2/' -i cargo-vendor.txt %install # Set vergen environment variables export VERGEN_GIT_COMMIT_DATE="date --utc '%{commitdatestring}'" export VERGEN_GIT_SHA="%{commit}" just rootdir=%{buildroot} install %check # FIXME: OnlyShowIn=COSMIC, should be fixed in 41 ? # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.desktop # TODO: Fix desktop file validation of sub pages upstream # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.About.desktop # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.Appearance.desktop # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.DateTime.desktop # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.Dock.desktop # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.Panel.desktop # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.WindowManagement.desktop # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.Displays.desktop # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.Firmware.desktop # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.Keyboard.desktop # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.Mouse.desktop # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.Notifications.desktop # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.RegionLanguage.desktop # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.Sound.desktop # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.Touchpad.desktop # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.Users.desktop # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.Wallpaper.desktop # desktop-file-validate %{buildroot}%{_datadir}/applications/com.system76.CosmicSettings.Workspaces.desktop %if %{with check} # Set vergen environment variables export VERGEN_GIT_COMMIT_DATE="date --utc '%{commitdatestring}'" export VERGEN_GIT_SHA="%{commit}" %cargo_test %endif %files %license LICENSE.md %license LICENSE.dependencies %license cargo-vendor.txt %doc README.md %{_bindir}/cosmic-settings %{_datadir}/applications/com.system76.CosmicSettings*.desktop %{_metainfodir}/com.system76.CosmicSettings.metainfo.xml %dir %{_datadir}/cosmic/com.system76.CosmicTheme.Dark.Builder %{_datadir}/cosmic/com.system76.CosmicTheme.Dark.Builder/v1/* %dir %{_datadir}/cosmic/com.system76.CosmicTheme.Dark %{_datadir}/cosmic/com.system76.CosmicTheme.Dark/v1/* %dir %{_datadir}/cosmic/com.system76.CosmicTheme.Light.Builder %{_datadir}/cosmic/com.system76.CosmicTheme.Light.Builder/v1/* %dir %{_datadir}/cosmic/com.system76.CosmicTheme.Light %{_datadir}/cosmic/com.system76.CosmicTheme.Light/v1/* %dir %{_datadir}/cosmic/com.system76.CosmicTheme.Mode %{_datadir}/cosmic/com.system76.CosmicTheme.Mode/v1/* %{_datadir}/icons/hicolor/scalable/status/illustration-appearance-dark-style-round.svg %{_datadir}/icons/hicolor/scalable/status/illustration-appearance-dark-style-slightly-round.svg %{_datadir}/icons/hicolor/scalable/status/illustration-appearance-dark-style-square.svg %{_datadir}/icons/hicolor/scalable/status/illustration-appearance-light-style-round.svg %{_datadir}/icons/hicolor/scalable/status/illustration-appearance-light-style-slightly-round.svg %{_datadir}/icons/hicolor/scalable/status/illustration-appearance-light-style-square.svg %{_datadir}/icons/hicolor/scalable/status/illustration-appearance-mode-dark.svg %{_datadir}/icons/hicolor/scalable/status/illustration-appearance-mode-light.svg %{_datadir}/icons/hicolor/*/apps/com.system76.CosmicSettings.svg %{_datadir}/polkit-1/rules.d/cosmic-settings.rules %changelog %autochangelog