mirror of
https://github.com/strawberrymusicplayer/strawberry
synced 2024-12-22 05:40:23 +01:00
189 lines
6.0 KiB
RPMSpec
189 lines
6.0 KiB
RPMSpec
Name: strawberry
|
|
Version: @STRAWBERRY_VERSION_RPM_V@
|
|
%if 0%{?fedora} || 0%{?rhel_version} || 0%{?centos} || "%{?_vendor}" == "openmandriva"
|
|
Release: @STRAWBERRY_VERSION_RPM_R@%{?dist}
|
|
%else
|
|
Release: @STRAWBERRY_VERSION_RPM_R@.@RPM_DISTRO@
|
|
%endif
|
|
Summary: A music player and music collection organizer
|
|
Group: Productivity/Multimedia/Sound/Players
|
|
License: GPL-3.0+
|
|
URL: https://www.strawberrymusicplayer.org/
|
|
Source0: %{name}-@STRAWBERRY_VERSION_PACKAGE@.tar.xz
|
|
|
|
%if 0%{?suse_version} && 0%{?suse_version} > 1325
|
|
BuildRequires: libboost_headers-devel
|
|
%else
|
|
BuildRequires: boost-devel
|
|
%endif
|
|
BuildRequires: cmake
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: hicolor-icon-theme
|
|
BuildRequires: make
|
|
BuildRequires: git
|
|
BuildRequires: gettext
|
|
BuildRequires: desktop-file-utils
|
|
%if 0%{?suse_version}
|
|
BuildRequires: update-desktop-files
|
|
%endif
|
|
%if 0%{?suse_version}
|
|
BuildRequires: appstream-glib
|
|
%else
|
|
%if 0%{?fedora} || 0%{?rhel_version} || 0%{?centos}
|
|
BuildRequires: libappstream-glib
|
|
%else
|
|
BuildRequires: appstream-util
|
|
%endif
|
|
%endif
|
|
BuildRequires: pkgconfig
|
|
BuildRequires: pkgconfig(glib-2.0)
|
|
BuildRequires: pkgconfig(gio-2.0)
|
|
BuildRequires: pkgconfig(gio-unix-2.0)
|
|
BuildRequires: pkgconfig(gthread-2.0)
|
|
BuildRequires: pkgconfig(dbus-1)
|
|
BuildRequires: pkgconfig(gnutls)
|
|
BuildRequires: pkgconfig(alsa)
|
|
BuildRequires: pkgconfig(protobuf)
|
|
BuildRequires: pkgconfig(sqlite3) >= 3.9
|
|
%if ! 0%{?centos} && ! 0%{?mageia}
|
|
BuildRequires: pkgconfig(taglib)
|
|
%endif
|
|
BuildRequires: pkgconfig(fftw3)
|
|
%if "@QT_VERSION_MAJOR@" == "5" && ( 0%{?fedora} || 0%{?rhel_version} || 0%{?centos} )
|
|
BuildRequires: pkgconfig(Qt@QT_VERSION_MAJOR@Core)
|
|
BuildRequires: pkgconfig(Qt@QT_VERSION_MAJOR@Gui)
|
|
BuildRequires: pkgconfig(Qt@QT_VERSION_MAJOR@Widgets)
|
|
BuildRequires: pkgconfig(Qt@QT_VERSION_MAJOR@Concurrent)
|
|
BuildRequires: pkgconfig(Qt@QT_VERSION_MAJOR@Network)
|
|
BuildRequires: pkgconfig(Qt@QT_VERSION_MAJOR@Sql)
|
|
BuildRequires: pkgconfig(Qt@QT_VERSION_MAJOR@DBus)
|
|
BuildRequires: pkgconfig(Qt@QT_VERSION_MAJOR@Test)
|
|
BuildRequires: pkgconfig(Qt@QT_VERSION_MAJOR@X11Extras)
|
|
%else
|
|
BuildRequires: cmake(Qt@QT_VERSION_MAJOR@Core)
|
|
BuildRequires: cmake(Qt@QT_VERSION_MAJOR@Gui)
|
|
BuildRequires: cmake(Qt@QT_VERSION_MAJOR@Widgets)
|
|
BuildRequires: cmake(Qt@QT_VERSION_MAJOR@Concurrent)
|
|
BuildRequires: cmake(Qt@QT_VERSION_MAJOR@Network)
|
|
BuildRequires: cmake(Qt@QT_VERSION_MAJOR@Sql)
|
|
BuildRequires: cmake(Qt@QT_VERSION_MAJOR@DBus)
|
|
BuildRequires: cmake(Qt@QT_VERSION_MAJOR@Test)
|
|
%if "@QT_VERSION_MAJOR@" == "5"
|
|
BuildRequires: cmake(Qt@QT_VERSION_MAJOR@X11Extras)
|
|
%endif
|
|
%endif
|
|
%if 0%{?suse_version} || 0%{?fedora_version} || 0%{?mageia}
|
|
BuildRequires: cmake(Qt@QT_VERSION_MAJOR@LinguistTools)
|
|
%endif
|
|
BuildRequires: pkgconfig(gstreamer-1.0)
|
|
BuildRequires: pkgconfig(gstreamer-app-1.0)
|
|
BuildRequires: pkgconfig(gstreamer-audio-1.0)
|
|
BuildRequires: pkgconfig(gstreamer-base-1.0)
|
|
BuildRequires: pkgconfig(gstreamer-tag-1.0)
|
|
%if ! 0%{?centos}
|
|
BuildRequires: pkgconfig(libchromaprint)
|
|
%endif
|
|
BuildRequires: pkgconfig(libpulse)
|
|
BuildRequires: pkgconfig(libcdio)
|
|
BuildRequires: pkgconfig(libgpod-1.0)
|
|
BuildRequires: pkgconfig(libmtp)
|
|
%if 0%{?suse_version} || 0%{?fedora_version}
|
|
BuildRequires: pkgconfig(libvlc)
|
|
%endif
|
|
|
|
%if 0%{?suse_version}
|
|
%if "@QT_VERSION_MAJOR@" == "6"
|
|
Requires: qt6-sql-sqlite
|
|
Requires: qt6-network-tls
|
|
%endif
|
|
%if "@QT_VERSION_MAJOR@" == "5"
|
|
Requires: libQt5Sql5-sqlite
|
|
%endif
|
|
%endif
|
|
|
|
%description
|
|
Strawberry is a music player and music collection organizer.
|
|
It is a fork of Clementine. The name is inspired by the band Strawbs.
|
|
|
|
Features:
|
|
- Play and organize music
|
|
- Supports WAV, FLAC, WavPack, Ogg FLAC, Ogg Vorbis, Ogg Opus, Ogg Speex,
|
|
MPC, TrueAudio, AIFF, MP4, MP3, ASF and Monkey's Audio.
|
|
- Audio CD playback
|
|
- Native desktop notifications
|
|
- Playlist management
|
|
- Playlists in multiple formats
|
|
- Advanced audio output and device configuration for bit-perfect playback on Linux
|
|
- Edit tags on audio files
|
|
- Automatically retrieve tags from MusicBrainz
|
|
- Album cover art from Last.fm, Musicbrainz, Discogs, Musixmatch, Deezer, Tidal, Qobuz and Spotify
|
|
- Song lyrics from AudD, Genius, Musixmatch, ChartLyrics, lyrics.ovh and lololyrics.com
|
|
- Support for multiple backends
|
|
- Audio analyzer
|
|
- Audio equalizer
|
|
- Scrobbler with support for Last.fm, Libre.fm and ListenBrainz
|
|
- Transfer music to mass-storage USB players, MTP compatible devices and iPod Nano/Classic
|
|
- Streaming support for Subsonic-compatible servers
|
|
- Unofficial streaming support for Tidal and Qobuz
|
|
|
|
%if 0%{?suse_version}
|
|
%debug_package
|
|
%endif
|
|
|
|
%prep
|
|
%setup -qn %{name}-@STRAWBERRY_VERSION_PACKAGE@
|
|
|
|
%build
|
|
%if 0%{?fedora} || 0%{?rhel_version} || 0%{?centos}
|
|
export CXXFLAGS="-fPIC $RPM_OPT_FLAGS"
|
|
%endif
|
|
%{cmake} -DQT_VERSION_MAJOR=@QT_VERSION_MAJOR@
|
|
%if 0%{?centos} || (0%{?mageia} && 0%{?mageia} <= 7) || "%{?_vendor}" == "openmandriva"
|
|
%make_build
|
|
%else
|
|
%cmake_build
|
|
%endif
|
|
|
|
%install
|
|
%if 0%{?centos}
|
|
%make_install
|
|
%else
|
|
%if 0%{?mageia} || "%{?_vendor}" == "openmandriva"
|
|
%make_install -C build
|
|
%else
|
|
%cmake_install
|
|
%endif
|
|
%endif
|
|
|
|
%if 0%{?suse_version}
|
|
%suse_update_desktop_file org.strawberrymusicplayer.strawberry Qt AudioVideo Audio Player
|
|
%endif
|
|
|
|
%check
|
|
desktop-file-validate %{buildroot}%{_datadir}/applications/org.strawberrymusicplayer.strawberry.desktop
|
|
%if 0%{?fedora_version}
|
|
appstream-util validate-relax --nonet %{buildroot}%{_metainfodir}/org.strawberrymusicplayer.strawberry.appdata.xml
|
|
%else
|
|
appstream-util validate-relax --nonet %{buildroot}%{_datadir}/metainfo/org.strawberrymusicplayer.strawberry.appdata.xml
|
|
%endif
|
|
|
|
%files
|
|
%defattr(-,root,root,-)
|
|
%doc README.md Changelog
|
|
%license COPYING
|
|
%{_bindir}/strawberry
|
|
%{_bindir}/strawberry-tagreader
|
|
%{_datadir}/applications/*.desktop
|
|
%{_datadir}/icons/hicolor/*/apps/strawberry.*
|
|
%if 0%{?fedora_version}
|
|
%{_metainfodir}/*.appdata.xml
|
|
%else
|
|
%{_datadir}/metainfo/*.appdata.xml
|
|
%endif
|
|
%{_mandir}/man1/%{name}.1.*
|
|
%{_mandir}/man1/%{name}-tagreader.1.*
|
|
|
|
%changelog
|
|
* @RPM_DATE@ Jonas Kvinge <jonas@jkvinge.net> - @STRAWBERRY_VERSION_RPM_V@
|
|
- Version @STRAWBERRY_VERSION_PACKAGE@
|