Blob Blame History Raw
%global altname nicotine
%global appdata_id org.nicotine_plus.Nicotine

Name:           nicotine+
Version:        2.0.1
Release:        1%{?dist}
Summary:        A graphical client for Soulseek

# - Notification sound files (in sounds/default/) are CC0
# - IP2Location Country Database (pynicotine/geoip/ipcountrydb.bin) is CC-BY-SA
# - some icons are Public Domain and LGPLv3+ (see img/README)
License:        GPLv3+ and CC0 and CC-BY-SA and Public Domain and LGPLv3+
URL:            https://nicotine-plus.github.io/nicotine-plus/
Source0:        https://github.com/nicotine-plus/nicotine-plus/archive/%{version}/%{name}-%{version}.tar.gz

BuildRequires:  desktop-file-utils
BuildRequires:  libappstream-glib
BuildRequires:  python3-devel
BuildRequires:  %{py3_dist pytest}
Requires:       %{py3_dist dbus-python}
Requires:       %{py3_dist miniupnpc}
Requires:       %{py3_dist mutagen}
Requires:       %{py3_dist pygobject}
Requires:       gobject-introspection%{_isa}
Requires:       gsound%{_isa}
Requires:       gspell%{_isa}
Requires:       gtk3%{_isa}
Requires:       libappindicator-gtk3%{_isa}
Requires:       libnotify%{_isa}
Requires:       xdg-utils
BuildArch:      noarch

%description
Nicotine+ is a graphical client for the Soulseek peer-to-peer file sharing
network. It is an attempt to keep Nicotine working with the latest libraries,
kill bugs, keep current with the Soulseek protocol, and add some new features
that users want and/or need.


%prep
%autosetup -n nicotine-plus-%{version}

# Remove bundled egg-info
rm -rf *.egg-info


%build
%py3_build


%install
%py3_install

# Remove Windows-only plugins
rm -r $RPM_BUILD_ROOT%{_datadir}/%{altname}/plugins/np_xmplay_windows/

# Remove example plugin
rm -r $RPM_BUILD_ROOT%{_datadir}/%{altname}/plugins/examplars/

# Remove installed documentation files in %%{_defaultdocdir} (contains build
# instructions). Useful documentation files are installed using %%doc
rm -r $RPM_BUILD_ROOT%{_defaultdocdir}/%{altname}/

%find_lang %{altname}


%check
PYTHONPATH=$RPM_BUILD_ROOT/%{python3_sitelib}/ pytest-%{python3_version}

desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/%{appdata_id}.desktop
appstream-util validate-relax --nonet $RPM_BUILD_ROOT%{_metainfodir}/%{appdata_id}.appdata.xml


%files -f %{altname}.lang
%doc AUTHORS.md NEWS README.md doc/TRANSLATORS.md
%license COPYING img/README
%{_bindir}/%{altname}
%{python3_sitelib}/pynicotine/
%{python3_sitelib}/%{altname}-*.egg-info
%{_datadir}/%{altname}/
%{_datadir}/applications/%{appdata_id}.desktop
%{_datadir}/icons/hicolor/*/apps/*.*
%{_metainfodir}/%{appdata_id}.appdata.xml
%{_mandir}/man1/%{altname}.1.*


%changelog
* Mon Jul 20 2020 Mohamed El Morabity <melmorabity@fedoraproject.org> - 2.0.1-1
- Initial RPM release