From d3adae38ca5df5644466f2ffd5cd23f4a514b06c Mon Sep 17 00:00:00 2001 From: Leo Prikler Date: Wed, 17 Feb 2021 00:51:14 +0100 Subject: gnu: Add strawberry. * gnu/packages/music.scm (strawberry): New variable. --- gnu/packages/music.scm | 93 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 93 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 8b09a1588a..8ffc136b51 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -33,6 +33,7 @@ ;;; Copyright © 2020 Marius Bakke ;;; Copyright © 2019 Riku Viitanen ;;; Copyright © 2020 Ryan Prior +;;; Copyright © 2021 Leo Prikler ;;; ;;; This file is part of GNU Guix. ;;; @@ -443,6 +444,98 @@ playing your music.") ;; qocoa is under MIT and CC by-sa for the icons. license:cc-by-sa3.0)))) +(define-public strawberry + (package + (name "strawberry") + (version "0.8.5") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/strawberrymusicplayer/strawberry") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0lfbbmhfzwlhnjhzfk5zn8h71cabx47pzfkcw2nylkbqkz83r57r")) + (modules '((guix build utils) + (ice-9 regex))) + (snippet + '(begin + (use-modules ((ice-9 regex))) + (for-each + (lambda (dir) + ;; TODO: The following dependencies are still bundled: + ;; - "singleapplication" + (let ((bundled '("singleapplication"))) + (if (not + (string-match + (string-append ".?*(" (string-join bundled "|") ")") + dir)) + (delete-file-recursively dir)))) + (find-files "3rdparty" + (lambda (file stat) + (string-match "^3rdparty/[^/]*$" file)) + #:directories? #t)) + #t)))) + (build-system cmake-build-system) + (arguments + `(#:test-target "run_strawberry_tests" + #:configure-flags + (list "-DUSE_SYSTEM_TAGLIB=TRUE" + "-DBUILD_TESTS=TRUE") + #:phases + (modify-phases %standard-phases + (add-after 'install 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH"))) + (wrap-program (string-append out "/bin/strawberry") + `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))) + #t))) + (add-before 'check 'pre-check + (lambda* (#:key inputs #:allow-other-keys) + (let ((xorg-server (assoc-ref inputs "xorg-server"))) + (system (format #f "~a/bin/Xvfb :1 &" xorg-server)) + (setenv "DISPLAY" ":1") + (setenv "HOME" (getcwd)) + #t)))))) + (native-inputs + `(("gettext" ,gettext-minimal) + ("googletest" ,googletest) + ("pkg-config" ,pkg-config) + ("qtlinguist" ,qttools) + ("xorg-server" ,xorg-server-for-tests))) + (inputs + `(("alsa-lib" ,alsa-lib) + ("boost" ,boost) + ("chromaprint" ,chromaprint) + ("dbus" ,dbus) + ("fftw" ,fftw) + ("glib" ,glib) + ("gnutls" ,gnutls) + ("gstreamer" ,gstreamer) + ("gst-plugins-base" ,gst-plugins-base) + ("gst-plugins-good" ,gst-plugins-good) + ("libcdio" ,libcdio) + ("libmtp" ,libmtp) + ("protobuf" ,protobuf) + ("pulseaudio" ,pulseaudio) + ("qtbase" ,qtbase) + ("qtx11extras" ,qtx11extras) + ("sqlite" ,sqlite) + ("taglib" ,taglib))) + (home-page "https://www.strawberrymusicplayer.org/") + (synopsis "Music player and library organizer") + (description "Strawberry is a music player and music collection organizer. +It is a fork of Clementine aimed at music collectors and audiophiles.") + (license (list + ;; strawberry. + license:gpl3+ + ;; singleapplication + license:expat + ;; icons. + license:cc-by-sa3.0)))) + (define-public cmus (package (name "cmus") -- cgit v1.2.3 56bcec6b7c7dfaf71566d84c7a75'>etc: gitconfig: Do not enforced signed commits....This change was more invasive than initially thought, and cannot be disabled easily, as raised by a few people. Let's revert it for now. At least the pre-push hook should be deployed automatically and catch any unsigned commits attempted to be pushed to Savannah. * etc/git/gitconfig [commit]: Remove section. Maxim Cournoyer 2023-05-01Makefile.am: Auto-configure Git on 'make'....This means we do not need to worry anymore about manually syncing the pre-push git hook or the Guix-provided git configuration. * etc/git/gitconfig: Augment configuration template with useful options to allow for auto-configuration. * Makefile.am (.git/hooks/pre-push, .git/config): New targets. (nodist_noinst_DATA): New primary variable holding the above targets. Maxim Cournoyer 2021-10-14Add git configuration templates to improve diff hunk header detection....This is a follow-up to commit 9fc8ae4171e5da4939a64fc6d684c8b9d85bbe84, which missed two hunks from <https://issues.guix.gnu.org/50363>. Reported by hackeryarn on #guix. * .gitattributes, etc/git/gitconfig: New files. Signed-off-by: Marius Bakke <marius@gnu.org> Sarah Morgensen 2020-12-14maint: Only run `make authenticate` when pushing commits....* etc/git/pre-push: Exit early when deleting a branch. Leo Famulari es. (serialize-string-list, serialize-boolean, serialize-string) (jami-account, jami-account->alist, jami-configuration) (jami-account-list?, jami-account-list-maybe): New procedures. (%jami-accounts): New variable. (jami-configuration->command-line-arguments): New procedure. (jami-dbus-session-activation, jami-shepherd-services): New procedures. (jami-service-type): New variable. * gnu/build/jami-service.scm: New file. * gnu/tests/data/jami-dummy-account.dat: Likewise. * gnu/tests/telephony.scm: Likewise. * gnu/local.mk (GNU_SYSTEM_MODULES): Register them. * Makefile.am (SCM_TESTS): Register the test file. (dist_patch_DATA): Register the new data file. * doc/guix.texi (Telephony Services): Document it. Maxim Cournoyer 2020-04-02services: murmur: Add missing newline in murmur-configuration....* gnu/services/telephony.scm (default-murmur-config): Add newline after "max-user-bandwidth". Signed-off-by: Marius Bakke <mbakke@fastmail.com> Simon Mages