File linuxqq.spec of Package linuxqq
%global __provides_exclude_from ^lib(EGL|xcb).*$
%global __requires_exclude ^lib(EGL|xcb).*$
%global debug_package %{nil}
%define program_version 3.2.9
Name: linuxqq
Version: %{program_version}
Release: 240617-%{?dist}
License: SUSE-NonFree
Group: Productivity/Office/Suite
URL: https://im.qq.com
Summary: QQ
Source0: %{name}.rpm
Source1: %{name}.rpmlintrc
BuildRequires: chrpath
BuildRequires: cpio
BuildRequires: desktop-file-utils
BuildRequires: hicolor-icon-theme
BuildRequires: rpm
%if 0%{?suse_version} || 0%{?fedora} || 0%{?mageia}
BuildRequires: fdupes
%endif
%if 0%{?suse_version}
BuildRequires: update-desktop-files
%endif
Recommends: libuuid1
Recommends: libnotify
ExclusiveArch: x86_64
%description
%prep
%build
%install
# Extract rpm file
# -i: extract
# -d: create directory when necessary
# -m: preserve modification time
rpm2cpio %{SOURCE0} | cpio -idm -D %{buildroot}
rm -rf %{buildroot}/usr/lib/.build-id
%if 0%{?suse_version} || 0%{?fedora} || 0%{?mageia}
%fdupes -s %{buildroot}/opt/
%endif
# patch .desktop file
sed -i '3s!/opt/QQ/qq!linuxqq!' %{buildroot}/usr/share/applications/qq.desktop
# fix launcher
mkdir -p %{buildroot}%{_bindir}
echo -e '#!/usr/bin/env bash\nif [ -d ~/.config/QQ/crash_files ]; then rm -rf ~/.config/QQ/crash_files/*;fi\n/opt/QQ/qq "$@"' > %{buildroot}%{_bindir}/linuxqq
chmod 0755 %{buildroot}%{_bindir}/linuxqq
%if 0%{?suse_version} || 0%{?fedora} || 0%{?mageia}
%fdupes -s %{buildroot}/usr
%endif
%files
%{_bindir}/linuxqq
/opt/QQ/
%{_datadir}/applications/qq.desktop
%{_datadir}/icons/hicolor/512x512/apps/qq.png
%changelog