## START: Set by rpmautospec ## (rpmautospec version 0.8.1) ## RPMAUTOSPEC: autorelease, autochangelog %define autorelease(e:s:pb:n) %{?-p:0.}%{lua: release_number = 1; base_release_number = tonumber(rpm.expand("%{?-b*}%{!?-b:1}")); print(release_number + base_release_number - 1); }%{?-e:.%{-e*}}%{?-s:.%{-s*}}%{!?-n:%{?dist}} ## END: Set by rpmautospec %bcond_without check %global debug_package %{nil} %global _enable_debug_packages 0 %global crate cosmic-ext-classic-menu %global crateid com.championpeak87.%{crate} %global shortversion 0.0.7 %global commit f4d0c991b10d3926b389fef30a9d248682351a64 #global committag 1 %global commitversion %{?committag:%{commit}}%{?!committag:%{shortversion}} %global shortcommitversion %{?committag:%(c=%{commit}; echo ${c:0:7})}%{?!committag:%{shortversion}} %global commitdatestring 2025-10-17 19:26:46 +0200 %global commitdate 20251017 %global commitgit %{?committag:^git%{commitdate}.%(c=%{commit}; echo ${c:0:7})} Name: cosmic-ext-classic-menu Version: %{shortversion}%{commitgit} Release: 1%{?dist} Summary: COSMIC Classic Menu Application License: GPLv3 URL: https://github.com/championpeak87/cosmic-ext-classic-menu Source0: %{crate}-%{shortcommitversion}.tar.gz # To create the below sources: # * git clone https://github.com/championpeak87/cosmic-classic-menu.git at the specified commit # * cargo vendor > vendor-config-%%{shortcommitversion}.toml # * tar -pczf vendor-%%{shortcommitversion}.tar.xz vendor Source1: vendor-%{shortcommitversion}.tar.xz # * mv vendor-config-%%{shortcommitversion}.toml .. Source2: vendor-config-%{shortcommitversion}.toml BuildRequires: cargo-rpm-macros >= 26 BuildRequires: rustc BuildRequires: cargo BuildRequires: rust-xkbcommon-devel BuildRequires: just Requires: cosmic-osd Obsoletes: cosmic-classic-menu < 0.0.7 Provides: cosmic-classic-menu = %{version}-%{release} %description COSMIC Classic Menu is a Rust-based applet for COSMIC Desktop, providing an app menu launcher with apps divided into their respective categories. %prep %autosetup -n %{name}-%{commitversion} -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 sed 's/^\([^+]*\)+.*+\([^+]*\)$/\1+\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} prefix=%{_prefix} install %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 %doc README.md %{_bindir}/%{crate} %{_bindir}/%{crate}-settings %{_datadir}/applications/%{crateid}.desktop %{_metainfodir}/%{crateid}.metainfo.xml %{_datadir}/icons/hicolor/scalable/apps/%{crateid}.svg %{_datadir}/cosmic/%{crateid}/applet-buttons/ %changelog * Fri Oct 17 2025 Jean-Marc Liger - 0.0.7-1 - Update to latest 0.0.7 - Rename to cosmic-ext-classic-menu * Sat Sep 20 2025 Jean-Marc Liger - 0.0.3-1 - Update to latest 0.0.3 * Thu Aug 21 2025 Jean-Marc Liger - 0.0.2^git20250716.ba68b3d-1 - Update to latest snapshot - Switch from GPLv2 to GPLv3 * Sun Mar 09 2025 Kamil Lihan 0.0.2-1 - Initial package of COSMIC Classic Menu applet * Wed Feb 19 2025 Kamil Lihan - 0.0.1 - Initial package