ExcludeArch: %{ix86} # Generated by rust2rpm 26 %bcond_without check %global commit 52280e9823506a480248e84caaf7545426a871c8 %global shortcommit %{sub %{commit} 1 7} %global commitdatestring 2024-09-03 16:08:17 +0200 %global commitdate 20240903 Name: cosmic-comp Version: 0.1.0~^%{commitdate}git%{shortcommit} Release: %autorelease Summary: Compositor for the COSMIC Desktop Environment # (Apache-2.0 OR MIT) AND BSD-3-Clause # 0BSD OR MIT OR Apache-2.0 # Apache-2.0 # Apache-2.0 OR BSD-3-Clause # Apache-2.0 OR BSL-1.0 # Apache-2.0 OR MIT # Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT # BSD-2-Clause # BSD-2-Clause OR Apache-2.0 OR MIT # BSD-3-Clause # BSD-3-Clause OR MIT OR Apache-2.0 # BSL-1.0 # CC0-1.0 # GPL-3.0 # GPL-3.0-only # ISC # MIT # MIT OR Apache-2.0 # MIT OR Apache-2.0 OR CC0-1.0 # MIT OR Apache-2.0 OR Zlib # MIT OR Zlib OR Apache-2.0 # MPL-2.0 # Unlicense OR MIT # Zlib # Zlib OR Apache-2.0 OR MIT License: GPL-3.0 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 BSD-3-Clause AND Apache-2.0 OR BSL-1.0 AND Apache-2.0 OR MIT 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 BSD-3-Clause OR MIT OR Apache-2.0 AND BSL-1.0 AND CC0-1.0 AND GPL-3.0 AND GPL-3.0-only AND ISC AND MIT AND MIT OR Apache-2.0 AND MIT OR Apache-2.0 OR CC0-1.0 AND MIT OR Apache-2.0 OR Zlib AND MIT OR Zlib OR Apache-2.0 AND MPL-2.0 AND Unlicense OR MIT AND Zlib AND Zlib OR Apache-2.0 OR MIT # LICENSE.dependencies contains a full license breakdown URL: https://github.com/pop-os/cosmic-comp Source0: https://github.com/pop-os/cosmic-comp/archive/%{commit}/cosmic-comp-%{shortcommit}.tar.gz # To create the below sources: # * git clone https://github.com/pop-os/cosmic-comp 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: wayland-devel BuildRequires: libxkbcommon-devel BuildRequires: libglvnd-devel BuildRequires: libseat-devel BuildRequires: libinput-devel BuildRequires: mesa-libgbm-devel BuildRequires: pixman-devel BuildRequires: make Requires: libseat Recommends: cosmic-session %global _description %{expand: %{summary}.} %description %{_description} %prep %autosetup -n cosmic-comp-%{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}" make install DESTDIR=%{buildroot} prefix=%{_prefix} %if %{with check} %check # Set vergen environment variables export VERGEN_GIT_COMMIT_DATE="date --utc '%{commitdatestring}'" export VERGEN_GIT_SHA="%{commit}" %cargo_test %endif %files %license LICENSE %license LICENSE.dependencies %license cargo-vendor.txt %{_bindir}/cosmic-comp %{_datadir}/cosmic/com.system76.CosmicSettings.Shortcuts/v1/defaults %changelog %autochangelog