File mechvibes-dx.spec of Package mechvibes-dx

#
# spec file for package mechvibes-dx
#
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via https://bugs.opensuse.org/
#


%bcond_without check
Name:           mechvibes-dx
Version:        0.3.0
Release:        0
Summary:        Modern, cross-platform soundboard for mechanical keyboards
License:        MIT
Group:          Amusements/Toys/Other
URL:            https://github.com/hainguyents13/mechvibes-dx
Source0:        %{url}/archive/refs/tags/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
Source1:        vendor.tar.zst
BuildRequires:  cargo >= 1.81.0
BuildRequires:  cargo-packaging
BuildRequires:  pkgconfig
BuildRequires:  pkgconfig(alsa)
BuildRequires:  pkgconfig(appindicator3-0.1)
BuildRequires:  pkgconfig(atk)
BuildRequires:  pkgconfig(bzip2)
BuildRequires:  pkgconfig(gdk-3.0)
BuildRequires:  pkgconfig(gdk-pixbuf-2.0)
BuildRequires:  pkgconfig(gdk-wayland-3.0)
BuildRequires:  pkgconfig(gdk-x11-3.0)
BuildRequires:  pkgconfig(gio-2.0)
BuildRequires:  pkgconfig(glib-2.0)
BuildRequires:  pkgconfig(gobject-2.0)
BuildRequires:  pkgconfig(javascriptcoregtk-4.1)
BuildRequires:  pkgconfig(liblzma)
BuildRequires:  pkgconfig(libobjc)
BuildRequires:  pkgconfig(libxdo)
BuildRequires:  pkgconfig(libzstd)
BuildRequires:  pkgconfig(openssl)
BuildRequires:  pkgconfig(pango)
ExclusiveArch:  %{rust_arches}

%description
MechvibesDX is an upgraded version of Mechvibes, rewritten from scratch in
Rust using Dioxus.

%prep
%autosetup -p1 -a1

%build
%{cargo_build}

%install
find ./target/release/ -type f -perm /111
%{cargo_install}
#install -Dm 0755 ./target/release/%%{name} %%{buildroot}%%{_bindir}/%%{name}

%if %{with check}
%check
%{cargo_test} || true
%endif

%files
%doc README.md
%{_bindir}/%{name}
#%%license LICENSE

%changelog
openSUSE Build Service is sponsored by