From 035f2fd609cd247ac0430f15cad3af94ce79f5f8 Mon Sep 17 00:00:00 2001 From: "coadde [Márcio Alexandre Silva Delgado]" Date: Thu, 4 Sep 2014 01:39:21 -0300 Subject: rename to clementine --- libre/clementine-libre/PKGBUILD | 90 --- libre/clementine-libre/clementine.install | 15 - libre/clementine-libre/moognu.png | Bin 610 -> 0 bytes .../remove-nonfree-artwork-and-spotify.patch | 655 --------------------- libre/clementine-libre/udisks-namespace.patch | 38 -- libre/clementine/PKGBUILD | 89 +++ libre/clementine/clementine.install | 15 + libre/clementine/moognu.png | Bin 0 -> 610 bytes .../remove-nonfree-artwork-and-spotify.patch | 655 +++++++++++++++++++++ libre/clementine/udisks-namespace.patch | 38 ++ 10 files changed, 797 insertions(+), 798 deletions(-) delete mode 100644 libre/clementine-libre/PKGBUILD delete mode 100644 libre/clementine-libre/clementine.install delete mode 100644 libre/clementine-libre/moognu.png delete mode 100644 libre/clementine-libre/remove-nonfree-artwork-and-spotify.patch delete mode 100644 libre/clementine-libre/udisks-namespace.patch create mode 100644 libre/clementine/PKGBUILD create mode 100644 libre/clementine/clementine.install create mode 100644 libre/clementine/moognu.png create mode 100644 libre/clementine/remove-nonfree-artwork-and-spotify.patch create mode 100644 libre/clementine/udisks-namespace.patch diff --git a/libre/clementine-libre/PKGBUILD b/libre/clementine-libre/PKGBUILD deleted file mode 100644 index f34f648cb..000000000 --- a/libre/clementine-libre/PKGBUILD +++ /dev/null @@ -1,90 +0,0 @@ -# $Id: PKGBUILD 117584 2014-08-18 23:42:44Z alucryd $ -# Maintainer (Arch): Maxime Gauduin -# Contributor (Arch): Stéphane Gaudreault -# Contributor (Arch): BlackEagle -# Contributor (Arch): Dany Martineau -# Maintainer: André Silva -# Contributor: Kete -# Contributor: Márcio Silva - -_pkgname=clementine -pkgname=clementine-libre -pkgver=1.2.3 -pkgrel=2 -pkgdesc='A modern music player and library organizer, without nonfree artwork and Spotify support' -url='http://www.clementine-player.org/' -license=('GPL') -arch=('i686' 'x86_64' 'mips64el') -replaces=('clementine') -conflicts=('clementine') -provides=("clementine=$pkgver") -depends=('chromaprint' 'glew' 'gstreamer0.10-base' 'libcdio' 'libgpod' 'liblastfm' 'libmtp' 'libmygpo-qt' 'protobuf' 'qca-ossl' 'taglib') -makedepends=('cmake' 'boost' 'mesa' 'sparsehash') -optdepends=('gstreamer0.10-base-plugins: "Base" plugin libraries' - 'gstreamer0.10-good-plugins: "Good" plugin libraries' - 'gstreamer0.10-bad-plugins: "Bad" plugin libraries' - 'gstreamer0.10-ugly-plugins: "Ugly" plugin libraries' - 'gvfs: Various devices support') -install="${_pkgname}.install" -mksource=("${_pkgname}-${pkgver}.tar.gz::https://github.com/clementine-player/Clementine/archive/${pkgver}.tar.gz" - 'remove-nonfree-artwork-and-spotify.patch' - 'moognu.png') -source=("https://repo.parabolagnulinux.org/other/${pkgname}/${pkgname}-${pkgver}.tar.gz" - 'udisks-namespace.patch') -mksha256sums=('7df5650445a005c09f5f0e1a1b0d077037c37ecbe4ee77baf9d45f121308a1bf' - '48bfbf42c84ac1891021638627c10780194fcc59eda1c69e157be3aebe8ee10b' - 'c6918617769152f3617c61f721819e69d03f671b85760b11cfe45abd53955bc4') -sha256sums=('c68275373b839b5b256b813b5bed85d501f94e12bef3dd8ed69e90094af3f769' - 'a7c2764576cee303a57e4efe6a5dbd583a66de8a15aee738bd92d4bb21786008') - -mksource() { - cd Clementine-${pkgver} - - # remove nonfree nonfree artwork and spotify references on files - patch -Np1 -i ../remove-nonfree-artwork-and-spotify.patch - - # remove nonfree spotifyblob folders - rm -rv ext/{clementine-spotifyblob,libclementine-spotifyblob} - - # remove nonfree spotify files - rm -v cmake/SpotifyVersion.cmake - rm -v data/spotify-attribution.png - rm -v data/icons/svg/spotify.svg - rm -v data/schema/schema-30.sql - rm -v src/{globalsearch/spotifysearchprovider.{cpp,h},internet/spotify{blobdownloader.{cpp,h},server.{cpp,h},service.{cpp,h},settingspage.{cpp,h,ui}}} - - ## remove nonfree nyancat.png - rm -v data/nyancat.png - - ## rut moognu.png to the source code - install -m644 -v ../moognu.png data - - # create a blank file due which is a dependency for clementine - touch data/schema/schema-30.sql -} - -prepare() { - cd Clementine-${pkgver} - - patch -Np1 -i ../udisks-namespace.patch -} - -build() { - cd Clementine-${pkgver} - - if [[ -d build ]]; then - rm -rf build - fi - mkdir build && cd build - - cmake .. -DCMAKE_INSTALL_PREFIX='/usr' -DCMAKE_BUILD_TYPE='Release' - make -} - -package() { - cd Clementine-${pkgver}/build - - make DESTDIR="${pkgdir}" install -} - -# vim: ts=2 sw=2 et: diff --git a/libre/clementine-libre/clementine.install b/libre/clementine-libre/clementine.install deleted file mode 100644 index 927a10258..000000000 --- a/libre/clementine-libre/clementine.install +++ /dev/null @@ -1,15 +0,0 @@ -post_install() { - gtk-update-icon-cache -ftq usr/share/icons/hicolor - update-desktop-database -q -} - -post_upgrade() { - post_install -} - - -post_remove() { - post_install -} - -# vim: ts=2 sw=2 et: diff --git a/libre/clementine-libre/moognu.png b/libre/clementine-libre/moognu.png deleted file mode 100644 index 177041886..000000000 Binary files a/libre/clementine-libre/moognu.png and /dev/null differ diff --git a/libre/clementine-libre/remove-nonfree-artwork-and-spotify.patch b/libre/clementine-libre/remove-nonfree-artwork-and-spotify.patch deleted file mode 100644 index 8c1b9aafd..000000000 --- a/libre/clementine-libre/remove-nonfree-artwork-and-spotify.patch +++ /dev/null @@ -1,655 +0,0 @@ -diff --git a/3rdparty/SPMediaKeyTap/SPMediaKeyTap.m b/3rdparty/SPMediaKeyTap/SPMediaKeyTap.m -index a349f59..c418e0b 100644 ---- a/3rdparty/SPMediaKeyTap/SPMediaKeyTap.m -+++ b/3rdparty/SPMediaKeyTap/SPMediaKeyTap.m -@@ -98,7 +98,6 @@ static CGEventRef tapEventCallback(CGEventTapProxy proxy, CGEventType type, CGEv - { - return [NSArray arrayWithObjects: - [[NSBundle mainBundle] bundleIdentifier], // your app -- @"com.spotify.client", - @"com.apple.iTunes", - @"com.apple.QuickTimePlayerX", - @"com.apple.quicktimeplayer", -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 47f1693..986351b 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -7,7 +7,6 @@ include(cmake/Summary.cmake) - include(cmake/Version.cmake) - include(cmake/Deb.cmake) - include(cmake/Rpm.cmake) --include(cmake/SpotifyVersion.cmake) - include(cmake/OptionalSource.cmake) - set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) - -@@ -78,7 +77,6 @@ pkg_check_modules(LIBMYGPO_QT libmygpo-qt>=1.0.7) - pkg_check_modules(LIBXML libxml-2.0) - pkg_check_modules(QCA qca2) - pkg_check_modules(QJSON REQUIRED QJson) --pkg_check_modules(SPOTIFY libspotify>=12.1.45) - pkg_check_modules(TAGLIB REQUIRED taglib>=1.6) - - if (WIN32) -@@ -124,13 +122,6 @@ if (APPLE) - find_library(GROWL Growl) - find_library(SPARKLE Sparkle) - -- find_library(SPOTIFY libspotify) -- if (SPOTIFY) -- set (SPOTIFY_FOUND ON) -- set (SPOTIFY_INCLUDE_DIRS ${SPOTIFY}) -- set (SPOTIFY_LIBRARIES ${SPOTIFY}) -- endif (SPOTIFY) -- - add_subdirectory(3rdparty/SPMediaKeyTap) - set(SPMEDIAKEYTAP_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/SPMediaKeyTap) - set(SPMEDIAKEYTAP_LIBRARIES SPMediaKeyTap) -@@ -254,7 +245,7 @@ optional_component(DEVICEKIT ON "Devices: DeviceKit backend" - DEPENDS "D-Bus support" HAVE_DBUS - ) - --optional_component(SPOTIFY_BLOB ON "Spotify support: non-GPL binary helper" -+optional_component(SPOTIFY_BLOB OFF "Spotify support: non-GPL binary helper" - DEPENDS "protobuf" PROTOBUF_FOUND PROTOBUF_PROTOC_EXECUTABLE - DEPENDS "libspotify" SPOTIFY_FOUND - ) -@@ -270,13 +261,6 @@ optional_component(SPARKLE ON "Sparkle integration" - - optional_component(VISUALISATIONS ON "Visualisations") - --if(NOT HAVE_SPOTIFY_BLOB AND NOT QCA_FOUND) -- message(FATAL_ERROR "Either QCA must be available or the non-GPL Spotify " -- "code must be compiled in") --elseif(QCA_FOUND) -- set(HAVE_SPOTIFY_DOWNLOADER ON) --endif() -- - # Find DBus if it's enabled - if (HAVE_DBUS) - find_package(Qt4 REQUIRED QtDbus) -@@ -440,7 +424,6 @@ add_subdirectory(ext/libclementine-common) - add_subdirectory(ext/libclementine-tagreader) - add_subdirectory(ext/clementine-tagreader) - add_subdirectory(ext/libclementine-remote) --add_subdirectory(ext/libclementine-spotifyblob) - - option(WITH_DEBIAN OFF) - if(WITH_DEBIAN) -@@ -451,10 +434,6 @@ if(HAVE_BREAKPAD) - add_subdirectory(3rdparty/google-breakpad) - endif(HAVE_BREAKPAD) - --if(HAVE_SPOTIFY_BLOB) -- add_subdirectory(ext/clementine-spotifyblob) --endif(HAVE_SPOTIFY_BLOB) -- - if(HAVE_MOODBAR) - add_subdirectory(gst/moodbar) - endif() -diff --git a/data/data.qrc b/data/data.qrc -index 4c5473f..bd5fe2d 100644 ---- a/data/data.qrc -+++ b/data/data.qrc -@@ -2,7 +2,6 @@ - - blank.ttf - clementine_remote_qr.png -- clementine-spotify-public.pem - currenttrack_bar_left.png - currenttrack_bar_mid.png - currenttrack_bar_right.png -@@ -77,7 +76,6 @@ - icons/22x22/phone-nokia-n900.png - icons/22x22/phone-palm-pre.png - icons/22x22/phone.png -- icons/22x22/spotify.png - icons/22x22/user-away.png - icons/22x22/view-choose.png - icons/22x22/view-fullscreen.png -@@ -154,7 +152,6 @@ - icons/32x32/phone-palm-pre.png - icons/32x32/phone.png - icons/32x32/search.png -- icons/32x32/spotify.png - icons/32x32/tools-wizard.png - icons/32x32/view-choose.png - icons/32x32/view-fullscreen.png -@@ -230,7 +227,6 @@ - icons/48x48/phone-nokia-n900.png - icons/48x48/phone-palm-pre.png - icons/48x48/phone.png -- icons/48x48/spotify.png - icons/48x48/view-choose.png - icons/48x48/view-fullscreen.png - icons/48x48/view-media-equalizer.png -@@ -262,10 +258,10 @@ - lumberjacksong.txt - lyrics/ultimate_providers.xml - mainwindow.css -+ moognu.png - nocover.png - nomusic.png - now_playing_tooltip.txt -- nyancat.png - oauthsuccess.html - osd_background.png - osd_shadow_corner.png -@@ -391,7 +387,6 @@ - smartplaylistsearchterm.css - songinfo.css - spinner.gif -- spotify-attribution.png - star-off.png - star-on.png - tiny-pause.png -diff --git a/dist/macdeploy.py b/dist/macdeploy.py -index e054619..3568a6f 100755 ---- a/dist/macdeploy.py -+++ b/dist/macdeploy.py -@@ -398,10 +398,7 @@ def main(): - FixPlugin(FindGioModule('libgiolibproxy.so'), 'gio-modules') - - try: -- FixPlugin('clementine-spotifyblob', '.') - FixPlugin('clementine-tagreader', '.') -- except: -- print 'Failed to find blob: %s' % traceback.format_exc() - - for plugin in QT_PLUGINS: - FixPlugin(FindQtPlugin(plugin), os.path.dirname(plugin)) -diff --git a/dist/windows/clementine.nsi.in b/dist/windows/clementine.nsi.in -index 750b332..6bf47ff 100644 ---- a/dist/windows/clementine.nsi.in -+++ b/dist/windows/clementine.nsi.in -@@ -97,9 +97,6 @@ Section "Delete old files" oldfiles - Delete "$INSTDIR\gstreamer-plugins\libgstqueue2.dll" - Delete "$INSTDIR\gstreamer-plugins\libgstsoup.dll" - -- ; 1.0 prerelease -- Delete "$INSTDIR\spotify.dll" -- - ; 1.0 - Delete "$INSTDIR\libofa.dll" - Delete "$INSTDIR\gstreamer-plugins\libgstofa.dll" -@@ -128,7 +125,6 @@ Section "Clementine" Clementine - File "avutil-51.dll" - File "clementine.exe" - File "clementine-tagreader.exe" -- File "clementine-spotifyblob.exe" - File "clementine.ico" - File "glew32.dll" - File "intl.dll" -@@ -181,7 +177,6 @@ Section "Clementine" Clementine - File "libqjson.dll" - File "libsoup-2.4-1.dll" - File "libspeex-1.dll" -- File "libspotify.dll" - File "libstdc++-6.dll" - File "libtag.dll" - File "libtasn1-3.dll" -@@ -939,7 +934,6 @@ Section "Uninstall" - Delete "$INSTDIR\clementine.ico" - Delete "$INSTDIR\clementine.exe" - Delete "$INSTDIR\clementine-tagreader.exe" -- Delete "$INSTDIR\clementine-spotifyblob.exe" - Delete "$INSTDIR\glew32.dll" - Delete "$INSTDIR\intl.dll" - Delete "$INSTDIR\libcdio-14.dll" -@@ -992,7 +986,6 @@ Section "Uninstall" - Delete "$INSTDIR\libqjson.dll" - Delete "$INSTDIR\libsoup-2.4-1.dll" - Delete "$INSTDIR\libspeex-1.dll" -- Delete "$INSTDIR\libspotify.dll" - Delete "$INSTDIR\libstdc++-6.dll" - Delete "$INSTDIR\libtag.dll" - Delete "$INSTDIR\libtasn1-3.dll" -diff --git a/ext/libclementine-common/core/logging.cpp b/ext/libclementine-common/core/logging.cpp -index 3c53d7a..49dd8cf 100644 ---- a/ext/libclementine-common/core/logging.cpp -+++ b/ext/libclementine-common/core/logging.cpp -@@ -14,10 +14,6 @@ - limitations under the License. - */ - --// Note: this file is licensed under the Apache License instead of GPL because --// it is used by the Spotify blob which links against libspotify and is not GPL --// compatible. -- - #include - - #include -diff --git a/ext/libclementine-common/core/logging.h b/ext/libclementine-common/core/logging.h -index 3c582cf..4a3cea8 100644 ---- a/ext/libclementine-common/core/logging.h -+++ b/ext/libclementine-common/core/logging.h -@@ -14,11 +14,6 @@ - limitations under the License. - */ - --// Note: this file is licensed under the Apache License instead of GPL because --// it is used by the Spotify blob which links against libspotify and is not GPL --// compatible. -- -- - #ifndef LOGGING_H - #define LOGGING_H - -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 1104542..e7a8032 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -60,8 +60,6 @@ include_directories(${CMAKE_SOURCE_DIR}/ext/libclementine-tagreader) - include_directories(${CMAKE_BINARY_DIR}/ext/libclementine-tagreader) - include_directories(${CMAKE_SOURCE_DIR}/ext/libclementine-remote) - include_directories(${CMAKE_BINARY_DIR}/ext/libclementine-remote) --include_directories(${CMAKE_SOURCE_DIR}/ext/libclementine-spotifyblob) --include_directories(${CMAKE_BINARY_DIR}/ext/libclementine-spotifyblob) - - cmake_policy(SET CMP0011 NEW) - include(../cmake/ParseArguments.cmake) -@@ -157,7 +155,6 @@ set(SOURCES - globalsearch/simplesearchprovider.cpp - globalsearch/somafmsearchprovider.cpp - globalsearch/soundcloudsearchprovider.cpp -- globalsearch/spotifysearchprovider.cpp - globalsearch/suggestionwidget.cpp - globalsearch/urlsearchprovider.cpp - -@@ -195,9 +192,6 @@ set(SOURCES - internet/somafmservice.cpp - internet/somafmurlhandler.cpp - internet/soundcloudservice.cpp -- internet/spotifyserver.cpp -- internet/spotifyservice.cpp -- internet/spotifysettingspage.cpp - internet/subsonicservice.cpp - internet/subsonicsettingspage.cpp - internet/subsonicurlhandler.cpp -@@ -461,7 +455,6 @@ set(HEADERS - globalsearch/searchprovider.h - globalsearch/simplesearchprovider.h - globalsearch/soundcloudsearchprovider.h -- globalsearch/spotifysearchprovider.h - globalsearch/suggestionwidget.h - - internet/cloudfileservice.h -@@ -494,9 +487,6 @@ set(HEADERS - internet/somafmservice.h - internet/somafmurlhandler.h - internet/soundcloudservice.h -- internet/spotifyserver.h -- internet/spotifyservice.h -- internet/spotifysettingspage.h - internet/subsonicservice.h - internet/subsonicsettingspage.h - internet/subsonicurlhandler.h -@@ -685,7 +675,6 @@ set(UI - internet/magnatunedownloaddialog.ui - internet/magnatunesettingspage.ui - internet/searchboxwidget.ui -- internet/spotifysettingspage.ui - internet/subsonicsettingspage.ui - - library/groupbydialog.ui -@@ -836,15 +825,6 @@ optional_source(HAVE_LIBLASTFM - ) - - --optional_source(HAVE_SPOTIFY_DOWNLOADER -- SOURCES -- internet/spotifyblobdownloader.cpp -- HEADERS -- internet/spotifyblobdownloader.h -- INCLUDE_DIRECTORIES -- ${QCA_INCLUDE_DIRS} --) -- - # Platform specific - OS X - optional_source(APPLE - INCLUDE_DIRECTORIES -@@ -1171,7 +1151,6 @@ add_dependencies(clementine_lib pot) - - - target_link_libraries(clementine_lib -- clementine-spotifyblob-messages - libclementine-common - libclementine-tagreader - libclementine-remote -@@ -1240,13 +1219,6 @@ if(HAVE_BREAKPAD) - endif (LINUX) - endif(HAVE_BREAKPAD) - --if(HAVE_SPOTIFY_DOWNLOADER) -- target_link_libraries(clementine_lib -- ${QCA_LIBRARIES} -- ) -- link_directories(${QCA_LIBRARY_DIRS}) --endif(HAVE_SPOTIFY_DOWNLOADER) -- - if (APPLE) - target_link_libraries(clementine_lib - ${GROWL} -@@ -1328,16 +1300,6 @@ target_link_libraries(clementine - clementine_lib - ) - --# macdeploy.py relies on the blob being built first. --if(HAVE_SPOTIFY_BLOB) -- add_dependencies(clementine clementine-spotifyblob) --endif(HAVE_SPOTIFY_BLOB) --add_dependencies(clementine clementine-tagreader) -- --set_target_properties(clementine PROPERTIES -- MACOSX_BUNDLE_INFO_PLIST "../dist/Info.plist" --) -- - if (APPLE) - install(FILES ../dist/clementine.icns - DESTINATION "${CMAKE_BINARY_DIR}/clementine.app/Contents/Resources") -diff --git a/src/analyzers/nyancatanalyzer.cpp b/src/analyzers/nyancatanalyzer.cpp -index 39ea101..ab19341 100644 ---- a/src/analyzers/nyancatanalyzer.cpp -+++ b/src/analyzers/nyancatanalyzer.cpp -@@ -23,13 +23,13 @@ - #include - #include - --const char* NyanCatAnalyzer::kName = "Nyanalyzer cat"; -+const char* NyanCatAnalyzer::kName = "MooGNU"; - const float NyanCatAnalyzer::kPixelScale = 0.02f; - - - NyanCatAnalyzer::NyanCatAnalyzer(QWidget* parent) - : Analyzer::Base(parent, 9), -- cat_(":/nyancat.png"), -+ cat_(":/moognu.png"), - timer_id_(startTimer(kFrameIntervalMs)), - frame_(0), - current_buffer_(0), -diff --git a/src/config.h.in b/src/config.h.in -index 6cac97e..90e4ee2 100644 ---- a/src/config.h.in -+++ b/src/config.h.in -@@ -39,7 +39,6 @@ - #cmakedefine HAVE_QCA - #cmakedefine HAVE_SKYDRIVE - #cmakedefine HAVE_SPARKLE --#cmakedefine HAVE_SPOTIFY_DOWNLOADER - #cmakedefine HAVE_STATIC_SQLITE - #cmakedefine HAVE_UBUNTU_ONE - #cmakedefine HAVE_WIIMOTEDEV -diff --git a/src/core/backgroundstreams.cpp b/src/core/backgroundstreams.cpp -index 347b959..b00cb87 100644 ---- a/src/core/backgroundstreams.cpp -+++ b/src/core/backgroundstreams.cpp -@@ -9,7 +9,6 @@ - - const char* BackgroundStreams::kSettingsGroup = "BackgroundStreams"; - const char* BackgroundStreams::kHypnotoadUrl = "hypnotoad:///"; --const char* BackgroundStreams::kRainUrl = "http://data.clementine-player.org/rainymood"; - const char* BackgroundStreams::kEnterpriseUrl = "enterprise:///"; - - BackgroundStreams::BackgroundStreams(EngineBase* engine, QObject* parent) -@@ -28,7 +27,6 @@ void BackgroundStreams::LoadStreams() { - int version = s.value("version", 0).toInt(); - if (version < 1) { - AddStream(QT_TR_NOOP("Hypnotoad"), QUrl(kHypnotoadUrl)); -- AddStream(QT_TR_NOOP("Rain"), QUrl(kRainUrl)); - } - - if (version < kVersion) { -diff --git a/src/core/timeconstants.h b/src/core/timeconstants.h -index 96242d6..69196bd 100644 ---- a/src/core/timeconstants.h -+++ b/src/core/timeconstants.h -@@ -14,10 +14,6 @@ - limitations under the License. - */ - --// Note: this file is licensed under the Apache License instead of GPL because --// it is used by the Spotify blob which links against libspotify and is not GPL --// compatible. -- - #ifndef TIMECONSTANTS_H - #define TIMECONSTANTS_H - -diff --git a/src/core/utilities.cpp b/src/core/utilities.cpp -index 3fdc6be..e6a109f 100644 ---- a/src/core/utilities.cpp -+++ b/src/core/utilities.cpp -@@ -340,9 +340,6 @@ QString GetConfigPath(ConfigPath config) { - return QDir::homePath(); - #endif - -- case Path_LocalSpotifyBlob: -- return GetConfigPath(Path_Root) + "/spotifyblob"; -- - default: - qFatal("%s", Q_FUNC_INFO); - return QString::null; -diff --git a/src/core/utilities.h b/src/core/utilities.h -index edaa545..ad2138c 100644 ---- a/src/core/utilities.h -+++ b/src/core/utilities.h -@@ -111,7 +111,6 @@ namespace Utilities { - Path_NetworkCache, - Path_GstreamerRegistry, - Path_DefaultMusicLibrary, -- Path_LocalSpotifyBlob, - Path_MoodbarCache, - Path_CacheRoot, - }; -diff --git a/src/covers/albumcoverloader.cpp b/src/covers/albumcoverloader.cpp -index a4c4241..39dd101 100644 ---- a/src/covers/albumcoverloader.cpp -+++ b/src/covers/albumcoverloader.cpp -@@ -30,7 +30,6 @@ - #include "core/tagreaderclient.h" - #include "core/utilities.h" - #include "internet/internetmodel.h" --#include "internet/spotifyservice.h" - - - -@@ -38,8 +37,7 @@ AlbumCoverLoader::AlbumCoverLoader(QObject* parent) - : QObject(parent), - stop_requested_(false), - next_id_(1), -- network_(new NetworkAccessManager(this)), -- connected_spotify_(false) -+ network_(new NetworkAccessManager(this)) - { - } - -@@ -169,26 +167,6 @@ AlbumCoverLoader::TryLoadResult AlbumCoverLoader::TryLoadImage( - - remote_tasks_.insert(reply, task); - return TryLoadResult(true, false, QImage()); -- } else if (filename.toLower().startsWith("spotify://image/")) { -- // HACK: we should add generic image URL handlers -- SpotifyService* spotify = InternetModel::Service(); -- -- if (!connected_spotify_) { -- connect(spotify, SIGNAL(ImageLoaded(QString,QImage)), -- SLOT(SpotifyImageLoaded(QString,QImage))); -- connected_spotify_ = true; -- } -- -- QString id = QUrl(filename).path(); -- if (id.startsWith('/')) { -- id.remove(0, 1); -- } -- remote_spotify_tasks_.insert(id, task); -- -- // Need to schedule this in the spotify service's thread -- QMetaObject::invokeMethod(spotify, "LoadImage", Qt::QueuedConnection, -- Q_ARG(QString, id)); -- return TryLoadResult(true, false, QImage()); - } - - QImage image(filename); -@@ -196,16 +174,6 @@ AlbumCoverLoader::TryLoadResult AlbumCoverLoader::TryLoadImage( - image.isNull() ? task.options.default_output_image_: image); - } - --void AlbumCoverLoader::SpotifyImageLoaded(const QString& id, const QImage& image) { -- if (!remote_spotify_tasks_.contains(id)) -- return; -- -- Task task = remote_spotify_tasks_.take(id); -- QImage scaled = ScaleAndPad(task.options, image); -- emit ImageLoaded(task.id, scaled); -- emit ImageLoaded(task.id, scaled, image); --} -- - void AlbumCoverLoader::RemoteFetchFinished(QNetworkReply* reply) { - reply->deleteLater(); - -diff --git a/src/covers/albumcoverloader.h b/src/covers/albumcoverloader.h -index 987be66..5214e14 100644 ---- a/src/covers/albumcoverloader.h -+++ b/src/covers/albumcoverloader.h -@@ -62,7 +62,6 @@ class AlbumCoverLoader : public QObject { - protected slots: - void ProcessTasks(); - void RemoteFetchFinished(QNetworkReply* reply); -- void SpotifyImageLoaded(const QString& url, const QImage& image); - - protected: - enum State { -@@ -102,13 +101,10 @@ class AlbumCoverLoader : public QObject { - QMutex mutex_; - QQueue tasks_; - QMap remote_tasks_; -- QMap remote_spotify_tasks_; - quint64 next_id_; - - NetworkAccessManager* network_; - -- bool connected_spotify_; -- - static const int kMaxRedirects = 3; - }; - -diff --git a/src/engines/gstenginepipeline.cpp b/src/engines/gstenginepipeline.cpp -index 94f77a3..37c1cdf 100644 ---- a/src/engines/gstenginepipeline.cpp -+++ b/src/engines/gstenginepipeline.cpp -@@ -29,8 +29,6 @@ - #include "core/signalchecker.h" - #include "core/utilities.h" - #include "internet/internetmodel.h" --#include "internet/spotifyserver.h" --#include "internet/spotifyservice.h" - - - const int GstEnginePipeline::kGstStateTimeoutNanosecs = 10000000; -@@ -141,37 +139,11 @@ bool GstEnginePipeline::ReplaceDecodeBin(GstElement* new_bin) { - bool GstEnginePipeline::ReplaceDecodeBin(const QUrl& url) { - GstElement* new_bin = NULL; - -- if (url.scheme() == "spotify") { -- new_bin = gst_bin_new("spotify_bin"); -- -- // Create elements -- GstElement* src = engine_->CreateElement("tcpserversrc", new_bin); -- GstElement* gdp = engine_->CreateElement("gdpdepay", new_bin); -- if (!src || !gdp) -- return false; -- -- // Pick a port number -- const int port = Utilities::PickUnusedPort(); -- g_object_set(G_OBJECT(src), "host", "127.0.0.1", NULL); -- g_object_set(G_OBJECT(src), "port", port, NULL); -- -- // Link the elements -- gst_element_link(src, gdp); -- -- // Add a ghost pad -- GstPad* pad = gst_element_get_static_pad(gdp, "src"); -- gst_element_add_pad(GST_ELEMENT(new_bin), gst_ghost_pad_new("src", pad)); -- gst_object_unref(GST_OBJECT(pad)); -- -- // Tell spotify to start sending data to us. -- InternetModel::Service()->server()->StartPlaybackLater(url.toString(), port); -- } else { - new_bin = engine_->CreateElement("uridecodebin"); - g_object_set(G_OBJECT(new_bin), "uri", url.toEncoded().constData(), NULL); - CHECKED_GCONNECT(G_OBJECT(new_bin), "drained", &SourceDrainedCallback, this); - CHECKED_GCONNECT(G_OBJECT(new_bin), "pad-added", &NewPadCallback, this); - CHECKED_GCONNECT(G_OBJECT(new_bin), "notify::source", &SourceSetupCallback, this); -- } - - return ReplaceDecodeBin(new_bin); - } -diff --git a/src/internet/internetmodel.cpp b/src/internet/internetmodel.cpp -index 289f591..ac9e3e0 100644 ---- a/src/internet/internetmodel.cpp -+++ b/src/internet/internetmodel.cpp -@@ -30,7 +30,6 @@ - #include "savedradio.h" - #include "somafmservice.h" - #include "soundcloudservice.h" --#include "spotifyservice.h" - #include "subsonicservice.h" - #include "core/closure.h" - #include "core/logging.h" -@@ -94,7 +93,6 @@ InternetModel::InternetModel(Application* app, QObject* parent) - AddService(new SkyFmService(app, this)); - AddService(new SomaFMService(app, this)); - AddService(new SoundCloudService(app, this)); -- AddService(new SpotifyService(app, this)); - AddService(new SubsonicService(app, this)); - #ifdef HAVE_UBUNTU_ONE - AddService(new UbuntuOneService(app, this)); -diff --git a/src/ui/about.cpp b/src/ui/about.cpp -index 53e42bd..49e7714 100644 ---- a/src/ui/about.cpp -+++ b/src/ui/about.cpp -@@ -76,14 +76,9 @@ QString About::MakeHtml() const { - - ret += QString("
%1

").arg(tr("...and all the Amarok contributors")); - ret += QString("

%1").arg(tr("And:")); -- ret += QString("
Rainy Mood"); - ret += QString("
Scott Smitelli"); - ret += QString("
Allie Brosh

"); - -- ret += "

This product uses Music by Spotify but is not endorsed, certified " -- "or otherwise approved in any way by Spotify. Spotify is the registered " -- "trade mark of the Spotify Group.

"; -- - return ret; - } - -diff --git a/src/ui/settingsdialog.cpp b/src/ui/settingsdialog.cpp -index dc0d84f..4a9335d 100644 ---- a/src/ui/settingsdialog.cpp -+++ b/src/ui/settingsdialog.cpp -@@ -38,7 +38,6 @@ - #include "internet/digitallyimportedsettingspage.h" - #include "internet/groovesharksettingspage.h" - #include "internet/magnatunesettingspage.h" --#include "internet/spotifysettingspage.h" - #include "internet/subsonicsettingspage.h" - #include "internet/ubuntuonesettingspage.h" - #include "library/librarysettingspage.h" -@@ -174,7 +173,6 @@ SettingsDialog::SettingsDialog(Application* app, BackgroundStreams* streams, QWi - AddPage(Page_Box, new BoxSettingsPage(this), providers); - #endif - -- AddPage(Page_Spotify, new SpotifySettingsPage(this), providers); - AddPage(Page_Magnatune, new MagnatuneSettingsPage(this), providers); - AddPage(Page_DigitallyImported, new DigitallyImportedSettingsPage(this), providers); - AddPage(Page_BackgroundStreams, new BackgroundStreamsSettingsPage(this), providers); -diff --git a/src/ui/settingsdialog.h b/src/ui/settingsdialog.h -index e9e709a..5485a37 100644 ---- a/src/ui/settingsdialog.h -+++ b/src/ui/settingsdialog.h -@@ -69,7 +69,6 @@ public: - Page_Library, - Page_Lastfm, - Page_Grooveshark, -- Page_Spotify, - Page_Magnatune, - Page_DigitallyImported, - Page_BackgroundStreams, diff --git a/libre/clementine-libre/udisks-namespace.patch b/libre/clementine-libre/udisks-namespace.patch deleted file mode 100644 index e74889e78..000000000 --- a/libre/clementine-libre/udisks-namespace.patch +++ /dev/null @@ -1,38 +0,0 @@ -From ec580cb815c16ec1ab43a469d5af7d51d8d03082 Mon Sep 17 00:00:00 2001 -From: Chocobozzz -Date: Wed, 16 Jul 2014 15:57:25 +0200 -Subject: [PATCH] No namespaces for DBus interfaces. Fixes #4401 - ---- - src/CMakeLists.txt | 9 ++++----- - 1 file changed, 4 insertions(+), 5 deletions(-) - -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 650fa74..775b0a5 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -892,11 +892,6 @@ optional_source(LINUX SOURCES widgets/osd_x11.cpp) - if(HAVE_DBUS) - file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/dbus) - -- # Hack to get it to generate interfaces without namespaces - required -- # because otherwise org::freedesktop::UDisks and -- # org::freedesktop::UDisks::Device conflict. -- list(APPEND QT_DBUSXML2CPP_EXECUTABLE -N) -- - # MPRIS DBUS interfaces - qt4_add_dbus_adaptor(SOURCES - dbus/org.freedesktop.MediaPlayer.player.xml -@@ -964,6 +959,10 @@ if(HAVE_DBUS) - - # DeviceKit DBUS interfaces - if(HAVE_DEVICEKIT) -+ set_source_files_properties(dbus/org.freedesktop.UDisks.xml -+ PROPERTIES NO_NAMESPACE dbus/udisks) -+ set_source_files_properties(dbus/org.freedesktop.UDisks.Device.xml -+ PROPERTIES NO_NAMESPACE dbus/udisksdevice) - qt4_add_dbus_interface(SOURCES - dbus/org.freedesktop.UDisks.xml - dbus/udisks) --- -2.0.3 diff --git a/libre/clementine/PKGBUILD b/libre/clementine/PKGBUILD new file mode 100644 index 000000000..cfa05ad10 --- /dev/null +++ b/libre/clementine/PKGBUILD @@ -0,0 +1,89 @@ +# $Id: PKGBUILD 117584 2014-08-18 23:42:44Z alucryd $ +# Maintainer (Arch): Maxime Gauduin +# Contributor (Arch): Stéphane Gaudreault +# Contributor (Arch): BlackEagle +# Contributor (Arch): Dany Martineau +# Maintainer: André Silva +# Contributor: Kete +# Contributor: Márcio Silva + +pkgname=clementine +_pkgname=$pkgname-libre +pkgver=1.2.3 +pkgrel=2.parabola1 +pkgdesc='A modern music player and library organizer, without nonfree artwork and Spotify support' +url="http://www.$pkgname-player.org/" +license=('GPL') +arch=('i686' 'x86_64' 'mips64el') +replaces=("$_pkgname") +conflicts=("$_pkgname") +depends=('chromaprint' 'glew' 'gstreamer0.10-base' 'libcdio' 'libgpod' 'liblastfm' 'libmtp' 'libmygpo-qt' 'protobuf' 'qca-ossl' 'taglib') +makedepends=('cmake' 'boost' 'mesa' 'sparsehash') +optdepends=('gstreamer0.10-base-plugins: "Base" plugin libraries' + 'gstreamer0.10-good-plugins: "Good" plugin libraries' + 'gstreamer0.10-bad-plugins: "Bad" plugin libraries' + 'gstreamer0.10-ugly-plugins: "Ugly" plugin libraries' + 'gvfs: Various devices support') +install="${pkgname}.install" +mksource=("${pkgname}-${pkgver}.tar.gz::https://github.com/$pkgname-player/${pkgname^}/archive/${pkgver}.tar.gz" + 'remove-nonfree-artwork-and-spotify.patch' + 'moognu.png') +source=("https://repo.parabolagnulinux.org/other/${_pkgname}/${_pkgname}-${pkgver}.tar.gz" + 'udisks-namespace.patch') +mksha256sums=('7df5650445a005c09f5f0e1a1b0d077037c37ecbe4ee77baf9d45f121308a1bf' + '48bfbf42c84ac1891021638627c10780194fcc59eda1c69e157be3aebe8ee10b' + 'c6918617769152f3617c61f721819e69d03f671b85760b11cfe45abd53955bc4') +sha256sums=('c68275373b839b5b256b813b5bed85d501f94e12bef3dd8ed69e90094af3f769' + 'a7c2764576cee303a57e4efe6a5dbd583a66de8a15aee738bd92d4bb21786008') + +mksource() { + cd ${pkgname^}-${pkgver} + + # remove nonfree nonfree artwork and spotify references on files + patch -Np1 -i ../remove-nonfree-artwork-and-spotify.patch + + # remove nonfree spotifyblob folders + rm -rv ext/{$pkgname-spotifyblob,lib${pkgname}-spotifyblob} + + # remove nonfree spotify files + rm -v cmake/SpotifyVersion.cmake + rm -v data/spotify-attribution.png + rm -v data/icons/svg/spotify.svg + rm -v data/schema/schema-30.sql + rm -v src/{globalsearch/spotifysearchprovider.{cpp,h},internet/spotify{blobdownloader.{cpp,h},server.{cpp,h},service.{cpp,h},settingspage.{cpp,h,ui}}} + + ## remove nonfree nyancat.png + rm -v data/nyancat.png + + ## rut moognu.png to the source code + install -m644 -v ../moognu.png data + + # create a blank file due which is a dependency for clementine + touch data/schema/schema-30.sql +} + +prepare() { + cd ${_pkgname}-${pkgver} + + patch -Np1 -i ../udisks-namespace.patch +} + +build() { + cd ${_pkgname}-${pkgver} + + if [[ -d build ]]; then + rm -rf build + fi + mkdir build && cd build + + cmake .. -DCMAKE_INSTALL_PREFIX='/usr' -DCMAKE_BUILD_TYPE='Release' + make +} + +package() { + cd ${_pkgname}-${pkgver}/build + + make DESTDIR="${pkgdir}" install +} + +# vim: ts=2 sw=2 et: diff --git a/libre/clementine/clementine.install b/libre/clementine/clementine.install new file mode 100644 index 000000000..927a10258 --- /dev/null +++ b/libre/clementine/clementine.install @@ -0,0 +1,15 @@ +post_install() { + gtk-update-icon-cache -ftq usr/share/icons/hicolor + update-desktop-database -q +} + +post_upgrade() { + post_install +} + + +post_remove() { + post_install +} + +# vim: ts=2 sw=2 et: diff --git a/libre/clementine/moognu.png b/libre/clementine/moognu.png new file mode 100644 index 000000000..177041886 Binary files /dev/null and b/libre/clementine/moognu.png differ diff --git a/libre/clementine/remove-nonfree-artwork-and-spotify.patch b/libre/clementine/remove-nonfree-artwork-and-spotify.patch new file mode 100644 index 000000000..8c1b9aafd --- /dev/null +++ b/libre/clementine/remove-nonfree-artwork-and-spotify.patch @@ -0,0 +1,655 @@ +diff --git a/3rdparty/SPMediaKeyTap/SPMediaKeyTap.m b/3rdparty/SPMediaKeyTap/SPMediaKeyTap.m +index a349f59..c418e0b 100644 +--- a/3rdparty/SPMediaKeyTap/SPMediaKeyTap.m ++++ b/3rdparty/SPMediaKeyTap/SPMediaKeyTap.m +@@ -98,7 +98,6 @@ static CGEventRef tapEventCallback(CGEventTapProxy proxy, CGEventType type, CGEv + { + return [NSArray arrayWithObjects: + [[NSBundle mainBundle] bundleIdentifier], // your app +- @"com.spotify.client", + @"com.apple.iTunes", + @"com.apple.QuickTimePlayerX", + @"com.apple.quicktimeplayer", +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 47f1693..986351b 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -7,7 +7,6 @@ include(cmake/Summary.cmake) + include(cmake/Version.cmake) + include(cmake/Deb.cmake) + include(cmake/Rpm.cmake) +-include(cmake/SpotifyVersion.cmake) + include(cmake/OptionalSource.cmake) + set(CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake) + +@@ -78,7 +77,6 @@ pkg_check_modules(LIBMYGPO_QT libmygpo-qt>=1.0.7) + pkg_check_modules(LIBXML libxml-2.0) + pkg_check_modules(QCA qca2) + pkg_check_modules(QJSON REQUIRED QJson) +-pkg_check_modules(SPOTIFY libspotify>=12.1.45) + pkg_check_modules(TAGLIB REQUIRED taglib>=1.6) + + if (WIN32) +@@ -124,13 +122,6 @@ if (APPLE) + find_library(GROWL Growl) + find_library(SPARKLE Sparkle) + +- find_library(SPOTIFY libspotify) +- if (SPOTIFY) +- set (SPOTIFY_FOUND ON) +- set (SPOTIFY_INCLUDE_DIRS ${SPOTIFY}) +- set (SPOTIFY_LIBRARIES ${SPOTIFY}) +- endif (SPOTIFY) +- + add_subdirectory(3rdparty/SPMediaKeyTap) + set(SPMEDIAKEYTAP_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR}/3rdparty/SPMediaKeyTap) + set(SPMEDIAKEYTAP_LIBRARIES SPMediaKeyTap) +@@ -254,7 +245,7 @@ optional_component(DEVICEKIT ON "Devices: DeviceKit backend" + DEPENDS "D-Bus support" HAVE_DBUS + ) + +-optional_component(SPOTIFY_BLOB ON "Spotify support: non-GPL binary helper" ++optional_component(SPOTIFY_BLOB OFF "Spotify support: non-GPL binary helper" + DEPENDS "protobuf" PROTOBUF_FOUND PROTOBUF_PROTOC_EXECUTABLE + DEPENDS "libspotify" SPOTIFY_FOUND + ) +@@ -270,13 +261,6 @@ optional_component(SPARKLE ON "Sparkle integration" + + optional_component(VISUALISATIONS ON "Visualisations") + +-if(NOT HAVE_SPOTIFY_BLOB AND NOT QCA_FOUND) +- message(FATAL_ERROR "Either QCA must be available or the non-GPL Spotify " +- "code must be compiled in") +-elseif(QCA_FOUND) +- set(HAVE_SPOTIFY_DOWNLOADER ON) +-endif() +- + # Find DBus if it's enabled + if (HAVE_DBUS) + find_package(Qt4 REQUIRED QtDbus) +@@ -440,7 +424,6 @@ add_subdirectory(ext/libclementine-common) + add_subdirectory(ext/libclementine-tagreader) + add_subdirectory(ext/clementine-tagreader) + add_subdirectory(ext/libclementine-remote) +-add_subdirectory(ext/libclementine-spotifyblob) + + option(WITH_DEBIAN OFF) + if(WITH_DEBIAN) +@@ -451,10 +434,6 @@ if(HAVE_BREAKPAD) + add_subdirectory(3rdparty/google-breakpad) + endif(HAVE_BREAKPAD) + +-if(HAVE_SPOTIFY_BLOB) +- add_subdirectory(ext/clementine-spotifyblob) +-endif(HAVE_SPOTIFY_BLOB) +- + if(HAVE_MOODBAR) + add_subdirectory(gst/moodbar) + endif() +diff --git a/data/data.qrc b/data/data.qrc +index 4c5473f..bd5fe2d 100644 +--- a/data/data.qrc ++++ b/data/data.qrc +@@ -2,7 +2,6 @@ + + blank.ttf + clementine_remote_qr.png +- clementine-spotify-public.pem + currenttrack_bar_left.png + currenttrack_bar_mid.png + currenttrack_bar_right.png +@@ -77,7 +76,6 @@ + icons/22x22/phone-nokia-n900.png + icons/22x22/phone-palm-pre.png + icons/22x22/phone.png +- icons/22x22/spotify.png + icons/22x22/user-away.png + icons/22x22/view-choose.png + icons/22x22/view-fullscreen.png +@@ -154,7 +152,6 @@ + icons/32x32/phone-palm-pre.png + icons/32x32/phone.png + icons/32x32/search.png +- icons/32x32/spotify.png + icons/32x32/tools-wizard.png + icons/32x32/view-choose.png + icons/32x32/view-fullscreen.png +@@ -230,7 +227,6 @@ + icons/48x48/phone-nokia-n900.png + icons/48x48/phone-palm-pre.png + icons/48x48/phone.png +- icons/48x48/spotify.png + icons/48x48/view-choose.png + icons/48x48/view-fullscreen.png + icons/48x48/view-media-equalizer.png +@@ -262,10 +258,10 @@ + lumberjacksong.txt + lyrics/ultimate_providers.xml + mainwindow.css ++ moognu.png + nocover.png + nomusic.png + now_playing_tooltip.txt +- nyancat.png + oauthsuccess.html + osd_background.png + osd_shadow_corner.png +@@ -391,7 +387,6 @@ + smartplaylistsearchterm.css + songinfo.css + spinner.gif +- spotify-attribution.png + star-off.png + star-on.png + tiny-pause.png +diff --git a/dist/macdeploy.py b/dist/macdeploy.py +index e054619..3568a6f 100755 +--- a/dist/macdeploy.py ++++ b/dist/macdeploy.py +@@ -398,10 +398,7 @@ def main(): + FixPlugin(FindGioModule('libgiolibproxy.so'), 'gio-modules') + + try: +- FixPlugin('clementine-spotifyblob', '.') + FixPlugin('clementine-tagreader', '.') +- except: +- print 'Failed to find blob: %s' % traceback.format_exc() + + for plugin in QT_PLUGINS: + FixPlugin(FindQtPlugin(plugin), os.path.dirname(plugin)) +diff --git a/dist/windows/clementine.nsi.in b/dist/windows/clementine.nsi.in +index 750b332..6bf47ff 100644 +--- a/dist/windows/clementine.nsi.in ++++ b/dist/windows/clementine.nsi.in +@@ -97,9 +97,6 @@ Section "Delete old files" oldfiles + Delete "$INSTDIR\gstreamer-plugins\libgstqueue2.dll" + Delete "$INSTDIR\gstreamer-plugins\libgstsoup.dll" + +- ; 1.0 prerelease +- Delete "$INSTDIR\spotify.dll" +- + ; 1.0 + Delete "$INSTDIR\libofa.dll" + Delete "$INSTDIR\gstreamer-plugins\libgstofa.dll" +@@ -128,7 +125,6 @@ Section "Clementine" Clementine + File "avutil-51.dll" + File "clementine.exe" + File "clementine-tagreader.exe" +- File "clementine-spotifyblob.exe" + File "clementine.ico" + File "glew32.dll" + File "intl.dll" +@@ -181,7 +177,6 @@ Section "Clementine" Clementine + File "libqjson.dll" + File "libsoup-2.4-1.dll" + File "libspeex-1.dll" +- File "libspotify.dll" + File "libstdc++-6.dll" + File "libtag.dll" + File "libtasn1-3.dll" +@@ -939,7 +934,6 @@ Section "Uninstall" + Delete "$INSTDIR\clementine.ico" + Delete "$INSTDIR\clementine.exe" + Delete "$INSTDIR\clementine-tagreader.exe" +- Delete "$INSTDIR\clementine-spotifyblob.exe" + Delete "$INSTDIR\glew32.dll" + Delete "$INSTDIR\intl.dll" + Delete "$INSTDIR\libcdio-14.dll" +@@ -992,7 +986,6 @@ Section "Uninstall" + Delete "$INSTDIR\libqjson.dll" + Delete "$INSTDIR\libsoup-2.4-1.dll" + Delete "$INSTDIR\libspeex-1.dll" +- Delete "$INSTDIR\libspotify.dll" + Delete "$INSTDIR\libstdc++-6.dll" + Delete "$INSTDIR\libtag.dll" + Delete "$INSTDIR\libtasn1-3.dll" +diff --git a/ext/libclementine-common/core/logging.cpp b/ext/libclementine-common/core/logging.cpp +index 3c53d7a..49dd8cf 100644 +--- a/ext/libclementine-common/core/logging.cpp ++++ b/ext/libclementine-common/core/logging.cpp +@@ -14,10 +14,6 @@ + limitations under the License. + */ + +-// Note: this file is licensed under the Apache License instead of GPL because +-// it is used by the Spotify blob which links against libspotify and is not GPL +-// compatible. +- + #include + + #include +diff --git a/ext/libclementine-common/core/logging.h b/ext/libclementine-common/core/logging.h +index 3c582cf..4a3cea8 100644 +--- a/ext/libclementine-common/core/logging.h ++++ b/ext/libclementine-common/core/logging.h +@@ -14,11 +14,6 @@ + limitations under the License. + */ + +-// Note: this file is licensed under the Apache License instead of GPL because +-// it is used by the Spotify blob which links against libspotify and is not GPL +-// compatible. +- +- + #ifndef LOGGING_H + #define LOGGING_H + +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 1104542..e7a8032 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -60,8 +60,6 @@ include_directories(${CMAKE_SOURCE_DIR}/ext/libclementine-tagreader) + include_directories(${CMAKE_BINARY_DIR}/ext/libclementine-tagreader) + include_directories(${CMAKE_SOURCE_DIR}/ext/libclementine-remote) + include_directories(${CMAKE_BINARY_DIR}/ext/libclementine-remote) +-include_directories(${CMAKE_SOURCE_DIR}/ext/libclementine-spotifyblob) +-include_directories(${CMAKE_BINARY_DIR}/ext/libclementine-spotifyblob) + + cmake_policy(SET CMP0011 NEW) + include(../cmake/ParseArguments.cmake) +@@ -157,7 +155,6 @@ set(SOURCES + globalsearch/simplesearchprovider.cpp + globalsearch/somafmsearchprovider.cpp + globalsearch/soundcloudsearchprovider.cpp +- globalsearch/spotifysearchprovider.cpp + globalsearch/suggestionwidget.cpp + globalsearch/urlsearchprovider.cpp + +@@ -195,9 +192,6 @@ set(SOURCES + internet/somafmservice.cpp + internet/somafmurlhandler.cpp + internet/soundcloudservice.cpp +- internet/spotifyserver.cpp +- internet/spotifyservice.cpp +- internet/spotifysettingspage.cpp + internet/subsonicservice.cpp + internet/subsonicsettingspage.cpp + internet/subsonicurlhandler.cpp +@@ -461,7 +455,6 @@ set(HEADERS + globalsearch/searchprovider.h + globalsearch/simplesearchprovider.h + globalsearch/soundcloudsearchprovider.h +- globalsearch/spotifysearchprovider.h + globalsearch/suggestionwidget.h + + internet/cloudfileservice.h +@@ -494,9 +487,6 @@ set(HEADERS + internet/somafmservice.h + internet/somafmurlhandler.h + internet/soundcloudservice.h +- internet/spotifyserver.h +- internet/spotifyservice.h +- internet/spotifysettingspage.h + internet/subsonicservice.h + internet/subsonicsettingspage.h + internet/subsonicurlhandler.h +@@ -685,7 +675,6 @@ set(UI + internet/magnatunedownloaddialog.ui + internet/magnatunesettingspage.ui + internet/searchboxwidget.ui +- internet/spotifysettingspage.ui + internet/subsonicsettingspage.ui + + library/groupbydialog.ui +@@ -836,15 +825,6 @@ optional_source(HAVE_LIBLASTFM + ) + + +-optional_source(HAVE_SPOTIFY_DOWNLOADER +- SOURCES +- internet/spotifyblobdownloader.cpp +- HEADERS +- internet/spotifyblobdownloader.h +- INCLUDE_DIRECTORIES +- ${QCA_INCLUDE_DIRS} +-) +- + # Platform specific - OS X + optional_source(APPLE + INCLUDE_DIRECTORIES +@@ -1171,7 +1151,6 @@ add_dependencies(clementine_lib pot) + + + target_link_libraries(clementine_lib +- clementine-spotifyblob-messages + libclementine-common + libclementine-tagreader + libclementine-remote +@@ -1240,13 +1219,6 @@ if(HAVE_BREAKPAD) + endif (LINUX) + endif(HAVE_BREAKPAD) + +-if(HAVE_SPOTIFY_DOWNLOADER) +- target_link_libraries(clementine_lib +- ${QCA_LIBRARIES} +- ) +- link_directories(${QCA_LIBRARY_DIRS}) +-endif(HAVE_SPOTIFY_DOWNLOADER) +- + if (APPLE) + target_link_libraries(clementine_lib + ${GROWL} +@@ -1328,16 +1300,6 @@ target_link_libraries(clementine + clementine_lib + ) + +-# macdeploy.py relies on the blob being built first. +-if(HAVE_SPOTIFY_BLOB) +- add_dependencies(clementine clementine-spotifyblob) +-endif(HAVE_SPOTIFY_BLOB) +-add_dependencies(clementine clementine-tagreader) +- +-set_target_properties(clementine PROPERTIES +- MACOSX_BUNDLE_INFO_PLIST "../dist/Info.plist" +-) +- + if (APPLE) + install(FILES ../dist/clementine.icns + DESTINATION "${CMAKE_BINARY_DIR}/clementine.app/Contents/Resources") +diff --git a/src/analyzers/nyancatanalyzer.cpp b/src/analyzers/nyancatanalyzer.cpp +index 39ea101..ab19341 100644 +--- a/src/analyzers/nyancatanalyzer.cpp ++++ b/src/analyzers/nyancatanalyzer.cpp +@@ -23,13 +23,13 @@ + #include + #include + +-const char* NyanCatAnalyzer::kName = "Nyanalyzer cat"; ++const char* NyanCatAnalyzer::kName = "MooGNU"; + const float NyanCatAnalyzer::kPixelScale = 0.02f; + + + NyanCatAnalyzer::NyanCatAnalyzer(QWidget* parent) + : Analyzer::Base(parent, 9), +- cat_(":/nyancat.png"), ++ cat_(":/moognu.png"), + timer_id_(startTimer(kFrameIntervalMs)), + frame_(0), + current_buffer_(0), +diff --git a/src/config.h.in b/src/config.h.in +index 6cac97e..90e4ee2 100644 +--- a/src/config.h.in ++++ b/src/config.h.in +@@ -39,7 +39,6 @@ + #cmakedefine HAVE_QCA + #cmakedefine HAVE_SKYDRIVE + #cmakedefine HAVE_SPARKLE +-#cmakedefine HAVE_SPOTIFY_DOWNLOADER + #cmakedefine HAVE_STATIC_SQLITE + #cmakedefine HAVE_UBUNTU_ONE + #cmakedefine HAVE_WIIMOTEDEV +diff --git a/src/core/backgroundstreams.cpp b/src/core/backgroundstreams.cpp +index 347b959..b00cb87 100644 +--- a/src/core/backgroundstreams.cpp ++++ b/src/core/backgroundstreams.cpp +@@ -9,7 +9,6 @@ + + const char* BackgroundStreams::kSettingsGroup = "BackgroundStreams"; + const char* BackgroundStreams::kHypnotoadUrl = "hypnotoad:///"; +-const char* BackgroundStreams::kRainUrl = "http://data.clementine-player.org/rainymood"; + const char* BackgroundStreams::kEnterpriseUrl = "enterprise:///"; + + BackgroundStreams::BackgroundStreams(EngineBase* engine, QObject* parent) +@@ -28,7 +27,6 @@ void BackgroundStreams::LoadStreams() { + int version = s.value("version", 0).toInt(); + if (version < 1) { + AddStream(QT_TR_NOOP("Hypnotoad"), QUrl(kHypnotoadUrl)); +- AddStream(QT_TR_NOOP("Rain"), QUrl(kRainUrl)); + } + + if (version < kVersion) { +diff --git a/src/core/timeconstants.h b/src/core/timeconstants.h +index 96242d6..69196bd 100644 +--- a/src/core/timeconstants.h ++++ b/src/core/timeconstants.h +@@ -14,10 +14,6 @@ + limitations under the License. + */ + +-// Note: this file is licensed under the Apache License instead of GPL because +-// it is used by the Spotify blob which links against libspotify and is not GPL +-// compatible. +- + #ifndef TIMECONSTANTS_H + #define TIMECONSTANTS_H + +diff --git a/src/core/utilities.cpp b/src/core/utilities.cpp +index 3fdc6be..e6a109f 100644 +--- a/src/core/utilities.cpp ++++ b/src/core/utilities.cpp +@@ -340,9 +340,6 @@ QString GetConfigPath(ConfigPath config) { + return QDir::homePath(); + #endif + +- case Path_LocalSpotifyBlob: +- return GetConfigPath(Path_Root) + "/spotifyblob"; +- + default: + qFatal("%s", Q_FUNC_INFO); + return QString::null; +diff --git a/src/core/utilities.h b/src/core/utilities.h +index edaa545..ad2138c 100644 +--- a/src/core/utilities.h ++++ b/src/core/utilities.h +@@ -111,7 +111,6 @@ namespace Utilities { + Path_NetworkCache, + Path_GstreamerRegistry, + Path_DefaultMusicLibrary, +- Path_LocalSpotifyBlob, + Path_MoodbarCache, + Path_CacheRoot, + }; +diff --git a/src/covers/albumcoverloader.cpp b/src/covers/albumcoverloader.cpp +index a4c4241..39dd101 100644 +--- a/src/covers/albumcoverloader.cpp ++++ b/src/covers/albumcoverloader.cpp +@@ -30,7 +30,6 @@ + #include "core/tagreaderclient.h" + #include "core/utilities.h" + #include "internet/internetmodel.h" +-#include "internet/spotifyservice.h" + + + +@@ -38,8 +37,7 @@ AlbumCoverLoader::AlbumCoverLoader(QObject* parent) + : QObject(parent), + stop_requested_(false), + next_id_(1), +- network_(new NetworkAccessManager(this)), +- connected_spotify_(false) ++ network_(new NetworkAccessManager(this)) + { + } + +@@ -169,26 +167,6 @@ AlbumCoverLoader::TryLoadResult AlbumCoverLoader::TryLoadImage( + + remote_tasks_.insert(reply, task); + return TryLoadResult(true, false, QImage()); +- } else if (filename.toLower().startsWith("spotify://image/")) { +- // HACK: we should add generic image URL handlers +- SpotifyService* spotify = InternetModel::Service(); +- +- if (!connected_spotify_) { +- connect(spotify, SIGNAL(ImageLoaded(QString,QImage)), +- SLOT(SpotifyImageLoaded(QString,QImage))); +- connected_spotify_ = true; +- } +- +- QString id = QUrl(filename).path(); +- if (id.startsWith('/')) { +- id.remove(0, 1); +- } +- remote_spotify_tasks_.insert(id, task); +- +- // Need to schedule this in the spotify service's thread +- QMetaObject::invokeMethod(spotify, "LoadImage", Qt::QueuedConnection, +- Q_ARG(QString, id)); +- return TryLoadResult(true, false, QImage()); + } + + QImage image(filename); +@@ -196,16 +174,6 @@ AlbumCoverLoader::TryLoadResult AlbumCoverLoader::TryLoadImage( + image.isNull() ? task.options.default_output_image_: image); + } + +-void AlbumCoverLoader::SpotifyImageLoaded(const QString& id, const QImage& image) { +- if (!remote_spotify_tasks_.contains(id)) +- return; +- +- Task task = remote_spotify_tasks_.take(id); +- QImage scaled = ScaleAndPad(task.options, image); +- emit ImageLoaded(task.id, scaled); +- emit ImageLoaded(task.id, scaled, image); +-} +- + void AlbumCoverLoader::RemoteFetchFinished(QNetworkReply* reply) { + reply->deleteLater(); + +diff --git a/src/covers/albumcoverloader.h b/src/covers/albumcoverloader.h +index 987be66..5214e14 100644 +--- a/src/covers/albumcoverloader.h ++++ b/src/covers/albumcoverloader.h +@@ -62,7 +62,6 @@ class AlbumCoverLoader : public QObject { + protected slots: + void ProcessTasks(); + void RemoteFetchFinished(QNetworkReply* reply); +- void SpotifyImageLoaded(const QString& url, const QImage& image); + + protected: + enum State { +@@ -102,13 +101,10 @@ class AlbumCoverLoader : public QObject { + QMutex mutex_; + QQueue tasks_; + QMap remote_tasks_; +- QMap remote_spotify_tasks_; + quint64 next_id_; + + NetworkAccessManager* network_; + +- bool connected_spotify_; +- + static const int kMaxRedirects = 3; + }; + +diff --git a/src/engines/gstenginepipeline.cpp b/src/engines/gstenginepipeline.cpp +index 94f77a3..37c1cdf 100644 +--- a/src/engines/gstenginepipeline.cpp ++++ b/src/engines/gstenginepipeline.cpp +@@ -29,8 +29,6 @@ + #include "core/signalchecker.h" + #include "core/utilities.h" + #include "internet/internetmodel.h" +-#include "internet/spotifyserver.h" +-#include "internet/spotifyservice.h" + + + const int GstEnginePipeline::kGstStateTimeoutNanosecs = 10000000; +@@ -141,37 +139,11 @@ bool GstEnginePipeline::ReplaceDecodeBin(GstElement* new_bin) { + bool GstEnginePipeline::ReplaceDecodeBin(const QUrl& url) { + GstElement* new_bin = NULL; + +- if (url.scheme() == "spotify") { +- new_bin = gst_bin_new("spotify_bin"); +- +- // Create elements +- GstElement* src = engine_->CreateElement("tcpserversrc", new_bin); +- GstElement* gdp = engine_->CreateElement("gdpdepay", new_bin); +- if (!src || !gdp) +- return false; +- +- // Pick a port number +- const int port = Utilities::PickUnusedPort(); +- g_object_set(G_OBJECT(src), "host", "127.0.0.1", NULL); +- g_object_set(G_OBJECT(src), "port", port, NULL); +- +- // Link the elements +- gst_element_link(src, gdp); +- +- // Add a ghost pad +- GstPad* pad = gst_element_get_static_pad(gdp, "src"); +- gst_element_add_pad(GST_ELEMENT(new_bin), gst_ghost_pad_new("src", pad)); +- gst_object_unref(GST_OBJECT(pad)); +- +- // Tell spotify to start sending data to us. +- InternetModel::Service()->server()->StartPlaybackLater(url.toString(), port); +- } else { + new_bin = engine_->CreateElement("uridecodebin"); + g_object_set(G_OBJECT(new_bin), "uri", url.toEncoded().constData(), NULL); + CHECKED_GCONNECT(G_OBJECT(new_bin), "drained", &SourceDrainedCallback, this); + CHECKED_GCONNECT(G_OBJECT(new_bin), "pad-added", &NewPadCallback, this); + CHECKED_GCONNECT(G_OBJECT(new_bin), "notify::source", &SourceSetupCallback, this); +- } + + return ReplaceDecodeBin(new_bin); + } +diff --git a/src/internet/internetmodel.cpp b/src/internet/internetmodel.cpp +index 289f591..ac9e3e0 100644 +--- a/src/internet/internetmodel.cpp ++++ b/src/internet/internetmodel.cpp +@@ -30,7 +30,6 @@ + #include "savedradio.h" + #include "somafmservice.h" + #include "soundcloudservice.h" +-#include "spotifyservice.h" + #include "subsonicservice.h" + #include "core/closure.h" + #include "core/logging.h" +@@ -94,7 +93,6 @@ InternetModel::InternetModel(Application* app, QObject* parent) + AddService(new SkyFmService(app, this)); + AddService(new SomaFMService(app, this)); + AddService(new SoundCloudService(app, this)); +- AddService(new SpotifyService(app, this)); + AddService(new SubsonicService(app, this)); + #ifdef HAVE_UBUNTU_ONE + AddService(new UbuntuOneService(app, this)); +diff --git a/src/ui/about.cpp b/src/ui/about.cpp +index 53e42bd..49e7714 100644 +--- a/src/ui/about.cpp ++++ b/src/ui/about.cpp +@@ -76,14 +76,9 @@ QString About::MakeHtml() const { + + ret += QString("
%1

").arg(tr("...and all the Amarok contributors")); + ret += QString("

%1").arg(tr("And:")); +- ret += QString("
Rainy Mood"); + ret += QString("
Scott Smitelli"); + ret += QString("
Allie Brosh

"); + +- ret += "

This product uses Music by Spotify but is not endorsed, certified " +- "or otherwise approved in any way by Spotify. Spotify is the registered " +- "trade mark of the Spotify Group.

"; +- + return ret; + } + +diff --git a/src/ui/settingsdialog.cpp b/src/ui/settingsdialog.cpp +index dc0d84f..4a9335d 100644 +--- a/src/ui/settingsdialog.cpp ++++ b/src/ui/settingsdialog.cpp +@@ -38,7 +38,6 @@ + #include "internet/digitallyimportedsettingspage.h" + #include "internet/groovesharksettingspage.h" + #include "internet/magnatunesettingspage.h" +-#include "internet/spotifysettingspage.h" + #include "internet/subsonicsettingspage.h" + #include "internet/ubuntuonesettingspage.h" + #include "library/librarysettingspage.h" +@@ -174,7 +173,6 @@ SettingsDialog::SettingsDialog(Application* app, BackgroundStreams* streams, QWi + AddPage(Page_Box, new BoxSettingsPage(this), providers); + #endif + +- AddPage(Page_Spotify, new SpotifySettingsPage(this), providers); + AddPage(Page_Magnatune, new MagnatuneSettingsPage(this), providers); + AddPage(Page_DigitallyImported, new DigitallyImportedSettingsPage(this), providers); + AddPage(Page_BackgroundStreams, new BackgroundStreamsSettingsPage(this), providers); +diff --git a/src/ui/settingsdialog.h b/src/ui/settingsdialog.h +index e9e709a..5485a37 100644 +--- a/src/ui/settingsdialog.h ++++ b/src/ui/settingsdialog.h +@@ -69,7 +69,6 @@ public: + Page_Library, + Page_Lastfm, + Page_Grooveshark, +- Page_Spotify, + Page_Magnatune, + Page_DigitallyImported, + Page_BackgroundStreams, diff --git a/libre/clementine/udisks-namespace.patch b/libre/clementine/udisks-namespace.patch new file mode 100644 index 000000000..e74889e78 --- /dev/null +++ b/libre/clementine/udisks-namespace.patch @@ -0,0 +1,38 @@ +From ec580cb815c16ec1ab43a469d5af7d51d8d03082 Mon Sep 17 00:00:00 2001 +From: Chocobozzz +Date: Wed, 16 Jul 2014 15:57:25 +0200 +Subject: [PATCH] No namespaces for DBus interfaces. Fixes #4401 + +--- + src/CMakeLists.txt | 9 ++++----- + 1 file changed, 4 insertions(+), 5 deletions(-) + +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 650fa74..775b0a5 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -892,11 +892,6 @@ optional_source(LINUX SOURCES widgets/osd_x11.cpp) + if(HAVE_DBUS) + file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/dbus) + +- # Hack to get it to generate interfaces without namespaces - required +- # because otherwise org::freedesktop::UDisks and +- # org::freedesktop::UDisks::Device conflict. +- list(APPEND QT_DBUSXML2CPP_EXECUTABLE -N) +- + # MPRIS DBUS interfaces + qt4_add_dbus_adaptor(SOURCES + dbus/org.freedesktop.MediaPlayer.player.xml +@@ -964,6 +959,10 @@ if(HAVE_DBUS) + + # DeviceKit DBUS interfaces + if(HAVE_DEVICEKIT) ++ set_source_files_properties(dbus/org.freedesktop.UDisks.xml ++ PROPERTIES NO_NAMESPACE dbus/udisks) ++ set_source_files_properties(dbus/org.freedesktop.UDisks.Device.xml ++ PROPERTIES NO_NAMESPACE dbus/udisksdevice) + qt4_add_dbus_interface(SOURCES + dbus/org.freedesktop.UDisks.xml + dbus/udisks) +-- +2.0.3 -- cgit v1.2.3-54-g00ecf