## 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 url https://github.com/championpeak87 %global crate cosmic-ext-classic-menu %global crateid com.championpeak87.%{crate} %global shortversion 0.0.10 %global commit d9753efe9f3a7dc452bac7d15f54ed1d2790e6f4 %global committag 1 %global commitversion %{?committag:%{commit}}%{?!committag:%{shortversion}} %global shortcommitversion %{?committag:%(c=%{commit}; echo ${c:0:7})}%{?!committag:%{shortversion}} %global commitdatestring 2025-12-21 18:23:47 +0100 %global commitdate 20251221 %global commitgit %{?committag:^git%{commitdate}.%(c=%{commit}; echo ${c:0:7})} Name: cosmic-ext-applet-classic-menu Version: %{shortversion}%{commitgit} Release: 1%{?dist} Summary: Classic Menu Applet # Main sources are GPL-3.0, rest are rust licenses License: GPL-3.0 AND ((MIT OR Apache-2.0) AND Unicode-3.0) 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 MIT) AND (Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT) AND BSD-2-Clause AND BSD-3-Clause AND (BSD-3-Clause OR Apache-2.0) AND BSL-1.0 AND CC0-1.0 AND ISC AND MIT AND (MIT OR Apache-2.0 OR CC0-1.0) AND (MIT OR Apache-2.0 OR LGPL-2.1-or-later) AND (MIT OR Apache-2.0 OR Zlib) AND MPL-2.0 AND Unicode-3.0 AND (Unlicense OR MIT) AND ZLib URL: %{url}/%{crate} Source0: %{url}/%{crate}/archive/refs/tags/%{commitversion}/%{crate}-%{shortcommitversion}.tar.gz # To create the below sources: # * git clone %%{url}/%%{crate}.git at the specified commit # * cargo vendor > %%{crate}-%%{shortcommitversion}-vendor-config.toml # * tar -pczf %%{crate}-%%{shortcommitversion}-vendor.tar.xz vendor Source1: %{crate}-%{shortcommitversion}-vendor.tar.xz # * mv %%{crate}-%%{shortcommitversion}-vendor-config.toml .. Source2: %{crate}-%{shortcommitversion}-vendor-config.toml BuildRequires: cargo-rpm-macros >= 26 BuildRequires: rustc BuildRequires: cargo BuildRequires: just BuildRequires: libxkbcommon-devel BuildRequires: desktop-file-utils Requires: cosmic-osd Recommends: gnome-disk-utility Recommends: gnome-system-monitor Obsoletes: cosmic-ext-classic-menu < 0.0.10 Provides: cosmic-ext-classic-menu = %{version}-%{release} Obsoletes: cosmic-classic-menu < 0.0.7 Provides: cosmic-classic-menu = %{version}-%{release} %description 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 %{crate}-%{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 %check desktop-file-validate %{buildroot}%{_datadir}/applications/%{crateid}.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 %license LICENSE.dependencies %license cargo-vendor.txt %doc README.md %{_bindir}/%{crate}-applet %{_bindir}/%{crate}-settings %{_datadir}/applications/%{crateid}.desktop %{_metainfodir}/%{crateid}.metainfo.xml %{_datadir}/icons/hicolor/scalable/apps/%{crateid}.svg %{_datadir}/cosmic/%{crateid}/applet-buttons/ %changelog * Wed Dec 24 2025 Jean-Marc Liger - 0.0.10~git20251221.d9753ef-1 - Update to latest snapshot - Recommends gnome-disk-utility and gnome-system-monitor * Mon Nov 24 2025 Jean-Marc Liger - 0.0.10-1 - Update to 0.0.10 - Rename to cosmic-ext-applet-classic-menu * Wed Nov 19 2025 Jean-Marc Liger - 0.0.9-1 - Update to 0.0.9 * Sat Nov 01 2025 Jean-Marc Liger - 0.0.8-1 - Update to 0.0.8 * Fri Oct 17 2025 Jean-Marc Liger - 0.0.7-1 - Update to 0.0.7 - Rename to cosmic-ext-classic-menu * Sat Sep 20 2025 Jean-Marc Liger - 0.0.3-1 - Update to 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