File parsec.spec of Package parsec
Name: parsec
Version: 150.97c
Release: 0
Summary: Simple, low-latency desktop and game streaming
License: Proprietary
Group: Amusements/Games/Other
URL: http://parsec.app/
Source0: parsec-linux.deb
Source100: parsec-rpmlintrc
BuildRequires: binutils
BuildRequires: tar
BuildRequires: xz
BuildRequires: desktop-file-utils
BuildRequires: hicolor-icon-theme
# Auto-generated dependencies might cover most, but listing key ones helps
Requires: hicolor-icon-theme
# libssl mapping can be tricky, relying on auto-detect or providing a generic one
# Requires: libopenssl1_1
# Multimedia libs
%description
Parsec connects you and your friends to the games you love from anywhere, on any screen.
This package is a repackaged version of the official Debian package.
%prep
# Extract the debian package
ar x %{SOURCE0}
tar -xf data.tar.xz
%build
# Nothing to build, it's a binary repack
%install
mkdir -p %{buildroot}/usr
cp -a usr/* %{buildroot}/usr/
# Move arch-dependent .so file to %%{_libdir} to satisfy rpmlint
mkdir -p %{buildroot}%{_libdir}/parsec/skel
mv %{buildroot}%{_datadir}/parsec/skel/*.so %{buildroot}%{_libdir}/parsec/skel/
# Create symlink back to original location so app can find it
for f in %{buildroot}%{_libdir}/parsec/skel/*.so; do
t=$(basename "$f")
ln -s "%{_libdir}/parsec/skel/$t" "%{buildroot}%{_datadir}/parsec/skel/$t"
done
# Fix permissions if necessary (usually deb retains them but good to ensure)
chmod 755 %{buildroot}%{_bindir}/parsecd
# Strip binaries
strip %{buildroot}%{_bindir}/parsecd
strip %{buildroot}%{_libdir}/parsec/skel/*.so
# Validate desktop file
desktop-file-install --dir=%{buildroot}%{_datadir}/applications --set-key=Categories --set-value="Game;Network" %{buildroot}%{_datadir}/applications/parsecd.desktop
%check
# No upstream test suite available for this proprietary binary package
%files
%defattr(-,root,root)
%{_bindir}/parsecd
%{_datadir}/applications/parsecd.desktop
%{_datadir}/icons/hicolor/*/apps/parsecd.png
%{_datadir}/parsec
%{_libdir}/parsec
%changelog