;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014, 2015 David Thompson ;;; Copyright © 2014 Andreas Enge ;;; Copyright © 2014 Cyrill Schenkel ;;; Copyright © 2014 Ian Denhardt ;;; Copyright © 2015 Paul van der Walt ;;; Copyright © 2016 Leo Famulari ;;; ;;; This file is part of GNU Guix. ;;; ;;; GNU Guix is free software; you can redistribute it and/or modify it ;;; under the terms of the GNU General Public License as published by ;;; the Free Software Foundation; either version 3 of the License, or (at ;;; your option) any later version. ;;; ;;; GNU Guix is distributed in the hope that it will be useful, but ;;; WITHOUT ANY WARRANTY; without even the implied warranty of ;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ;;; GNU General Public License for more details. ;;; ;;; You should have received a copy of the GNU General Public License ;;; along with GNU Guix. If not, see . (define-module (gnu packages mpd) #:use-module (gnu packages) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system python) #:use-module (gnu packages avahi) #:use-module (gnu packages boost) #:use-module (gnu packages icu4c) #:use-module (gnu packages readline) #:use-module (gnu packages compression) #:use-module (gnu packages curl) #:use-module (gnu packages documentation) #:use-module (gnu packages glib) #:use-module (gnu packages linux) #:use-module (gnu packages mp3) #:use-module (gnu packages ncurses) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages pulseaudio) #:use-module (gnu packages databases) #:use-module (gnu packages video) #:use-module (gnu packages xiph)) (define-public libmpdclient (package (name "libmpdclient") (version "2.10") (source (origin (method url-fetch) (uri (string-append "http://musicpd.org/download/libmpdclient/" (car (string-split version #\.)) "/libmpdclient-" version ".tar.xz")) (sha256 (base32 "10pzs9z815a8hgbbbiliapyiw82bnplsccj5irgqjw5f5plcs22g")))) (build-system gnu-build-system) (native-inputs `(("doxygen" ,doxygen))) (synopsis "Music Player Daemon client library") (description "A stable, documented, asynchronous API library for interfacing MPD in the C, C++ & Objective C languages.") (home-page "http://www.musicpd.org/libs/libmpdclient/") (license license:bsd-3))) (define-public mpd (package (name "mpd") (version "0.19.18") (source (origin (method url-fetch) (uri (string-append "http://musicpd.org/download/mpd/" (version-major+minor version) "/mpd-" version ".tar.xz")) (sha256 (base32 "0izd0ph570055s1np6dynxhwbh0h6kb6agvfhxzbj34qahf9jk3n")))) (build-system gnu-build-system) (inputs `(("ao" ,ao) ("alsa-lib" ,alsa-lib) ("avahi" ,avahi) ("boost" ,boost) ("curl" ,curl) ("ffmpeg" ,ffmpeg) ("flac" ,flac) ("glib" ,glib) ("icu4c" ,icu4c) ("lame" ,lame) ("libid3tag" ,libid3tag) ("libmad" ,libmad) ("libmpdclient" ,libmpdclient) ("libsamplerate" ,libsamplerate) ("libsndfile" ,libsndfile) ("libvorbis" ,libvorbis) ("opus" ,opus) ("pulseaudio" ,pulseaudio) ("sqlite" ,sqlite) ("zlib" ,zlib))) (native-inputs `(("pkg-config" ,pkg-config))) ;; Missing optional inputs: ;; libyajl ;; libcdio_paranoia ;; libmms ;; libadplug ;; libaudiofile ;; faad2 ;; fluidsynth ;; libgme ;; libshout ;; libmpg123 ;; libmodplug ;; libmpcdec ;; libsidplay2 ;; libwavpack ;; libwildmidi ;; libtwolame ;; libroar ;; libjack ;; OpenAL (synopsis "Music Player Daemon") (description "Music Player Daemon (MPD) is a flexible, powerful, server-side application for playing music. Through plugins and libraries it can play a variety of sound files while being controlled by its network protocol.") (home-page "http://www.musicpd.org/") (license license:gpl2))) (define-public mpd-mpc (package (name "mpd-mpc") (version "0.27") (source (origin (method url-fetch) (uri (string-append "http://www.musicpd.org/download/mpc/" (car (string-spl2020-03-05installer: Implement a dialog on /var/guix/installer-socket....This will allow us to automate testing of the installer. * gnu/installer/utils.scm (%client-socket-file) (current-server-socket, current-clients): New variables. (open-server-socket, call-with-server-socket): New procedure. (with-server-socket): New macro. (run-shell-command): Add call to 'send-to-clients'. Select on both current-input-port and current-clients. * gnu/installer/steps.scm (run-installer-steps): Wrap 'call-with-prompt' in 'with-socket-server'. Call 'sigaction' for SIGPIPE. * gnu/installer/newt/page.scm (watch-clients!, close-port-and-reuse-fd) (run-form-with-clients, send-to-clients): New procedures. (draw-info-page): Add call to 'run-form-with-clients'. (run-input-page): Likewise. Handle EXIT-REASON equal to 'exit-fd-ready. (run-confirmation-page): Likewise. (run-listbox-selection-page): Likewise. Define 'choice->item' and use it. (run-checkbox-tree-page): Likewise. (run-file-textbox-page): Add call to 'run-form-with-clients'. Handle 'exit-fd-ready'. * gnu/installer/newt/partition.scm (run-disk-page): Pass #:client-callback-procedure to 'run-listbox-selection-page'. * gnu/installer/newt/user.scm (run-user-page): Call 'run-form-with-clients'. Handle 'exit-fd-ready'. * gnu/installer/newt/welcome.scm (run-menu-page): Define 'choice->item' and use it. Call 'run-form-with-clients'. * gnu/installer/newt/final.scm (run-install-success-page) (run-install-failed-page): When (current-clients) is non-empty, call 'send-to-clients' without displaying a choice window. Ludovic Courtès 2020-02-22installer: Log important bits to syslog....* gnu/installer.scm (installer-program): Log crashes with 'syslog'. * gnu/installer/parted.scm (luks-format-and-open, luks-close) (mount-user-partitions, umount-user-partitions): Add 'syslog' calls. * gnu/installer/steps.scm (run-installer-steps): Log the running step with 'syslog'. * gnu/installer/utils.scm (run-shell-command): Add calls to 'syslog'. Ludovic Courtès 2019-05-06installer: Actually translate step descriptions....Until now, step descriptions in the menu that shows up when hitting "Exit" would not be translated. That's because the 'G_' procedure was called once and for all when the installer was started. * gnu/installer/steps.scm (<installer-step>)[description]: Add the 'thunked' attribute. Ludovic Courtès 2019-04-21installer: Fix skip-to-step issue....When trying to jump to the first step, DONE-STEPS ends-up being null, which fails the matching condition. * gnu/installer/steps.scm (skip-to-step): Split matching conditions to handle the empty DONE-STEPS case properly. Mathieu Othacehe 2019-04-08installer: Generate 'set-xorg-configuration' snippet....* gnu/installer/services.scm (system-services->configuration): Add 'set-xorg-configuration' service. * gnu/installer/steps.scm (format-configuration): Add 'xorg' service module. Ludovic Courtès 2019-04-07installer: Add dialog to select networking services....* gnu/installer/newt/services.scm (run-networking-cbt-page): New procedure. (run-services-page): Call it. * gnu/installer/services.scm (%system-services): Add OpenSSH and Tor. (networking-system-service?): New procedure. * gnu/installer/steps.scm (format-configuration): Add 'networking' and 'ssh' to the service modules. Ludovic Courtès