gnu: clementine: Remove Spotify downloader.

Clementine has a button in the preference menu that allows downloading a
binary blob to add support for Spofify.  Let's remove this button.  It turns
out this is the only part of the code base that uses crypto++, let's remove
this dependency too.

* gnu/packages/music.scm (clementine)[arguments]: Remove crypto++ support. Set
HAVE_SPOTIFY_DOWNLOADER to FALSE.
[inputs]: Remove crypto++ input.
* gnu/packages/patches/clementine-remove-crypto++-dependency.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.

Signed-off-by: Leo Famulari <leo@famulari.name>
master
Pierre Langlois 2018-02-08 22:03:36 +00:00 committed by Leo Famulari
parent a48b877e60
commit af414f34fb
No known key found for this signature in database
GPG Key ID: 2646FA30BACA7F08
3 changed files with 29 additions and 9 deletions

View File

@ -580,6 +580,7 @@ dist_patch_DATA = \
%D%/packages/patches/chmlib-inttypes.patch \
%D%/packages/patches/clang-libc-search-path.patch \
%D%/packages/patches/clang-3.8-libc-search-path.patch \
%D%/packages/patches/clementine-remove-crypto++-dependency.patch \
%D%/packages/patches/clementine-use-openssl.patch \
%D%/packages/patches/clisp-remove-failing-test.patch \
%D%/packages/patches/clucene-pkgconfig.patch \

View File

@ -226,18 +226,19 @@ score, keyboard, guitar, drum and controller views.")
"sha2" ;; Replaced by openssl.
"taglib"
"tinysvcmdns")))
(patches (search-patches "clementine-use-openssl.patch"))))
(patches (search-patches "clementine-use-openssl.patch"
"clementine-remove-crypto++-dependency.patch"))))
(build-system cmake-build-system)
(arguments
'(#:test-target "clementine_test"
#:configure-flags
(let ((crypto (assoc-ref %build-inputs "crypto++")))
(list "-DENABLE_VISUALISATIONS=OFF" ; requires unpackaged "projectm"
"-DCRYPTOPP_FOUND=TRUE"
(string-append "-DCRYPTOPP_INCLUDE_DIRS=" crypto "/include")
(string-append "-DCRYPTOPP_LIBRARY_DIRS=" crypto "/lib")
(string-append "-DCRYPTOPP_LIBRARIES=" crypto "/lib/libcryptopp.a")
"-DUSE_SYSTEM_SHA2=TRUE"))
(list ;; Requires unpackaged "projectm"
"-DENABLE_VISUALISATIONS=OFF"
;; Otherwise it may try to download a non-free library at run-time.
;; TODO In an origin snippet, remove the code that performs the
;; download.
"-DHAVE_SPOTIFY_DOWNLOADER=FALSE"
"-DUSE_SYSTEM_SHA2=TRUE")
#:phases
(modify-phases %standard-phases
(add-after 'install 'wrap-program
@ -254,7 +255,6 @@ score, keyboard, guitar, drum and controller views.")
(inputs
`(("boost" ,boost)
("chromaprint" ,chromaprint)
("crypto++" ,crypto++)
("fftw" ,fftw)
("glib" ,glib)
("glu" ,glu)

View File

@ -0,0 +1,19 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3202b8b..473ecb9 100755
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -279,14 +279,6 @@ optional_component(LIBPULSE ON "Pulse audio integration"
optional_component(VISUALISATIONS ON "Visualisations")
-if(NOT HAVE_SPOTIFY_BLOB AND NOT CRYPTOPP_FOUND)
- message(FATAL_ERROR "Either crypto++ must be available or the non-GPL Spotify "
- "code must be compiled in")
-elseif(CRYPTOPP_FOUND)
- set(HAVE_CRYPTOPP ON)
- set(HAVE_SPOTIFY_DOWNLOADER ON)
-endif()
-
# Find DBus if it's enabled
if (HAVE_DBUS)
find_package(Qt5 COMPONENTS DBus)