(define-module (rodion packages audio) #:use-module (guix packages) #:use-module (guix build-system glib-or-gtk) #:use-module (guix build-system cmake) #:use-module (guix git-download) #:use-module (gnu packages gettext) #:use-module (gnu packages autotools) #:use-module (gnu packages gtk) #:use-module (gnu packages glib) #:use-module (gnu packages qt) #:use-module (gnu packages llvm) #:use-module (gnu packages pkg-config) #:use-module (gnu packages web) #:use-module (gnu packages compression) #:use-module (gnu packages c) #:use-module (gnu packages sdl) #:use-module (gnu packages xiph) #:use-module (gnu packages linux) #:use-module (gnu packages video) #:use-module (gnu packages icu4c) #:use-module (gnu packages audio) #:use-module (gnu packages mp3) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages cdrom) #:use-module (gnu packages image) #:use-module (gnu packages curl) #:use-module (gnu packages assembly) #:use-module (guix gexp) #:use-module ((guix licenses) #:prefix license:)) (define-public deadbeef (package (name "deadbeef") (version "1.9.6") (build-system glib-or-gtk-build-system) (home-page "https://github.com/DeaDBeeF-Player/deadbeef") (license license:bsd-3) (description "DeaDBeeF (as in 0xDEADBEEF) is a modular cross-platform audio player which runs on desktop operating systems. DeaDBeeF plays a variety of audio formats, converts between them, lets you customize the UI in almost any way you want, and use many additional plugins which can extend it even more.") (synopsis "DeaDBeeF is a multiple-platform music player for desktop operating systems") (native-inputs (list gnu-gettext autoconf automake libtool intltool clang-17 pkg-config)) (inputs (list gtk+ gtk+-2 clang-runtime-17 jansson libzip libdispatch libsamplerate libcdio libcddb imlib2 curl yasm wavpack libsndfile libvorbis opusfile faad2 mpg123 libmad ffmpeg flac pulseaudio alsa-lib pipewire)) (arguments (list #:phases #~(modify-phases %standard-phases (delete 'check) (add-before 'configure 'prepare-build-environment (lambda* (#:key native-inputs inputs #:allow-other-keys) (setenv "CC" "clang") (setenv "CXX" "clang++")))))) (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/DeaDBeeF-Player/deadbeef") (commit version) (recursive? #t))) (file-name (git-file-name name version)) (sha256 (base32 "14f8bqrif6ffhj270vg1k90y1i2cw3kavbwsx7v7jg45yghlpa23")))))) (define-public kdsingleapplication (package (name "kdsingleapplication") (version "1.1.0") (build-system cmake-build-system) (home-page "https://github.com/KDAB/KDSingleApplication") (license license:expat) (description "Helper class providing an ability to run the only instance of the application.") (synopsis "Helper class for single-instance policy applications") (inputs (list qtbase)) (arguments `(#:configure-flags '("-DKDSingleApplication_QT6=true") #:tests? #f)) (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/KDAB/KDSingleApplication") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 (base32 "1w7wg9w4mifrkpn7hhw1nnnwh1vhnf8i4wgfxvh44nacwslbwsb2")))))) (define-public fooyin (package (name "fooyin") (version "0.5.1") (build-system cmake-build-system) (home-page "https://github.com/fooyin/fooyinx") (license license:gpl3) (description "fooyin is a music player built around customisation. It offers a growing list of widgets to manage and play your local music collection. It's extensible using a plugin system and many widgets make use of FooScript to offer an even deeper level of control.") (synopsis "fooyin is a customisable music player") (native-inputs (list pkg-config)) (inputs (list alsa-lib sdl2 pipewire kdsingleapplication qtbase qttools qtsvg icu4c taglib ffmpeg zlib)) (arguments `(#:tests? #f)) (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/fooyin/fooyin") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 (base32 "0wa7frswvqgpz03qzv7x62k3mbvqnwzkxv8w5kv40z6js6ykm7jz"))))))