From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp0.migadu.com ([2001:41d0:303:e16b::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms13.migadu.com with LMTPS id IDW3OXU3Z2fNwQAAqHPOHw:P1 (envelope-from ) for ; Sat, 21 Dec 2024 21:47:34 +0000 Received: from aspmx1.migadu.com ([2001:41d0:303:e16b::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp0.migadu.com with LMTPS id IDW3OXU3Z2fNwQAAqHPOHw (envelope-from ) for ; Sat, 21 Dec 2024 22:47:34 +0100 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=debbugs.gnu.org header.s=debbugs-gnu-org header.b=Twt5O4uK; dkim=fail ("headers rsa verify failed") header.d=disroot.org header.s=mail header.b=e5kymdAL; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=gnu.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1734817653; h=from:from:sender:sender:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=NypdfcOdJfmi8IyOql+HM5DLiOPhtP2wqXtl26Jw7pA=; b=iEvV5BmZKaR5x7QVG4LRLGE4nTKlzg2+00tp1nL4ej6+pINEbBr9NEaxnW1PBsFt799qcP F5xafreMx592XayMf4hmIhbxY6cXUKrVgPsq1SebIGWlctADCgzJ9cdD75PxgwZUgkp32U J4a3Pu36xXBwWIb0YnRPmE6fWdYwDAqx4W55mplFo7sWGy8d3/FGLHc3PrCm7WsLMCg1B+ nUhyuHkcmCS4f2TJg7zYZTwa9jS0TtDoi/CwIFRZ8eFPgKbYbcxWJ77f8xbjum/NaScWuK pVRH3hPoNNqsuhlsJPB4Ch4wazyxRJjflzzPiUPnZ4vHJcdiXOYnNfBoin89kA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=debbugs.gnu.org header.s=debbugs-gnu-org header.b=Twt5O4uK; dkim=fail ("headers rsa verify failed") header.d=disroot.org header.s=mail header.b=e5kymdAL; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=pass (policy=none) header.from=gnu.org ARC-Seal: i=1; s=key1; d=yhetil.org; t=1734817653; a=rsa-sha256; cv=none; b=BOFgLs1Y/DI5QbpzQZrzTRa/AI5Blp0PGRcrUl6HpNAKstFmGM+jOTQyZGpa/SmnRPWK+n ouaHmtX/DzlzYYdqTvBjO6bCRW0kmmqoOZSzxG5j2VqGyxAAekvnJA5UCppjSQWPF/fHTq d5hAaTdhhB8pITNdfT2Wci0r9jUBJZm7T2zqSTsL66S3LZSp0/wt/qWIzbq/KAreLG/R8e uPP6H94L174UMsTJCauhGF2mlKu06klptP1V5Dgd7tjpyU1138lFa7uvzSfxkezbirco7J IOjgQJM2r0KNgCMlBev8zUfmvORNrFc+rBDtCwmXU6dazqlIh8gNPocizI5UJg== Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id A0CA787BD1 for ; Sat, 21 Dec 2024 22:47:32 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tP7JR-00085E-9p; Sat, 21 Dec 2024 16:47:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1tP7JO-000853-PM for guix-patches@gnu.org; Sat, 21 Dec 2024 16:47:03 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tP7JO-0002s0-Gd for guix-patches@gnu.org; Sat, 21 Dec 2024 16:47:02 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debbugs.gnu.org; s=debbugs-gnu-org; h=MIME-Version:Date:From:To:In-Reply-To:References:Subject; bh=NypdfcOdJfmi8IyOql+HM5DLiOPhtP2wqXtl26Jw7pA=; b=Twt5O4uKcmoZKo61hYc0HoCsGsazKRiN3hKqhmdxyynkd55//6KXHBvO5JFh0VM3C3RLDX8shk4fwhT4E9IBJuTF05aFaW5B0h2zAxIQVXGOe8E4qj2Ubm4yT+LSb2P0x51g6aUi1cVBXfFDpXZO1BE3U80I4X/d5qG1gVsN5XyqKjR6gLjG57HS0oyWjtRh+p2RGxZZ4DcebR3csgFO0hkTg4e5xJny4sAoij3SEk1NFVNLa3XWCrL6zJ2KMMqNUFH0c+A6GYeD6B9FAu7JONhE08e7u2T1rMPGuHaLSJ0qk7iloVVqMmnXazIltHUrFeidDp42YkX8oj4Fvz4RPA==; Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1tP7JO-00020d-8A for guix-patches@gnu.org; Sat, 21 Dec 2024 16:47:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#75002] [PATCH v2] gnu: pulseaudio: Split outputs. References: <20241220234453.22542-2-gay@disroot.org> In-Reply-To: <20241220234453.22542-2-gay@disroot.org> Resent-From: Homo Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 21 Dec 2024 21:47:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 75002 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 75002@debbugs.gnu.org Cc: Homo Received: via spool by 75002-submit@debbugs.gnu.org id=B75002.17348175887653 (code B ref 75002); Sat, 21 Dec 2024 21:47:02 +0000 Received: (at 75002) by debbugs.gnu.org; 21 Dec 2024 21:46:28 +0000 Received: from localhost ([127.0.0.1]:48192 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP7Ip-0001zM-K2 for submit@debbugs.gnu.org; Sat, 21 Dec 2024 16:46:28 -0500 Received: from layka.disroot.org ([178.21.23.139]:34470) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1tP7Il-0001zB-KY for 75002@debbugs.gnu.org; Sat, 21 Dec 2024 16:46:25 -0500 Received: from mail01.disroot.lan (localhost [127.0.0.1]) by disroot.org (Postfix) with ESMTP id D0383259E3; Sat, 21 Dec 2024 22:46:21 +0100 (CET) X-Virus-Scanned: SPAM Filter at disroot.org Received: from layka.disroot.org ([127.0.0.1]) by localhost (disroot.org [127.0.0.1]) (amavis, port 10024) with ESMTP id To8Hu4xZx4Qs; Sat, 21 Dec 2024 22:46:17 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=disroot.org; s=mail; t=1734817577; bh=wZwLjrhnt+3VuVydtBTrYVRM2fTu/yxXz2VBMQuYX1c=; h=From:To:Cc:Subject:Date; b=e5kymdALnDCTPmEFyi4Bylh28iXYsYUOiflswTGg9PGcd/ndAnBuIw24wEJMRlrja Ze86Hy3Fdwqtg+dEifbCAQu3L0vRPcUjiNTUPuC4tMx38bdjoOvxrYKOwxmj4GzjI4 nj99JiW6vMnYNtA6MpQHEUthZZ6HCvGtHA1sByKj/PLw6mtKxazga31gwDNG9jQub6 ofOW4fwcdTNWOqPZ26gnU5C7YvuG3ksVvhySUTks4OshNN/OMNUxUfuVogvqLbnfoU XrAaY4Q/1Op9yC1a4VFDB6joWAH0LHAWR5yuu5TbPcv4d18qAMtuzvlc14hCSrww/R wkR02AfZX3cwA== Date: Sat, 21 Dec 2024 23:45:12 +0200 Message-ID: <20241221214605.13483-1-gay@disroot.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-to: Homo X-ACL-Warn: , Homo via Guix-patches From: Homo via Guix-patches via Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: guix-patches-bounces+larch=yhetil.org@gnu.org X-Migadu-Country: US X-Migadu-Flow: FLOW_IN X-Migadu-Queue-Id: A0CA787BD1 X-Migadu-Scanner: mx13.migadu.com X-Migadu-Spam-Score: -0.50 X-Spam-Score: -0.50 X-TUID: FVNg5Qi48uZB * gnu/packages/pulseaudio.scm (pulseaudio)[outputs]: New field. [arguments]: Add phase to split outputs. * gnu/services/sound.scm (pulseaudio-service-type): Use daemon output. (pulseaudio-configuration): Use daemon output. Change-Id: Id919d7a4cb7ef5ac5861904f4e44f9f6f2939eff --- Didn't notice immediately that pulseaudio-configuration also needs to use daemon output. gnu/packages/pulseaudio.scm | 57 ++++++++++++++++++++++++++++++++++++- gnu/services/sound.scm | 7 +++-- 2 files changed, 60 insertions(+), 4 deletions(-) diff --git a/gnu/packages/pulseaudio.scm b/gnu/packages/pulseaudio.scm index dd0d3985c0..77b0330a54 100644 --- a/gnu/packages/pulseaudio.scm +++ b/gnu/packages/pulseaudio.scm @@ -190,6 +190,9 @@ (define-public pulseaudio "pulseaudio-fix-mult-test.patch" "pulseaudio-longer-test-timeout.patch")))) (build-system meson-build-system) + (outputs '("out" ;library + "daemon" ;pulseaudio and start-pulseaudio-x11 + "utils")) ;utilities (arguments (list #:configure-flags @@ -211,7 +214,59 @@ (define-public pulseaudio (setenv "HOME" (getcwd)) ;; 'thread-test' needs more time on hydra and on slower ;; machines, so we set the default timeout to 120 seconds. - (setenv "CK_DEFAULT_TIMEOUT" "120")))))) + (setenv "CK_DEFAULT_TIMEOUT" "120"))) + (add-after 'install 'split + (lambda _ + (let* ((out #$output) + (daemon #$output:daemon) + (utils #$output:utils) + (autostart "etc/xdg/autostart") + (bin "bin") + (bash "/share/bash-completion/completions") + (etc "/etc/pulse") + (man1 "/share/man/man1") + (man5 "/share/man/man5") + (xwayland "/etc/xdg/Xwayland-session.d") + (zsh "/share/zsh/site-functions") + (rename-recursively + (lambda (prefix dir files) + (mkdir-p (string-append prefix "/" dir)) + (for-each (lambda (file) + (rename-file + (string-append + out "/" dir "/" file) + (string-append + prefix "/" dir "/" file))) + files)))) + (rename-recursively daemon autostart + (list "pulseaudio.desktop")) + (rename-recursively daemon bin + (list "pulseaudio" "start-pulseaudio-x11")) + (rename-recursively daemon bash + (list "pulseaudio")) + (rename-recursively daemon etc + (list "daemon.conf" "default.pa" "system.pa")) + (rename-recursively daemon man1 + (list "pulseaudio.1" "start-pulseaudio-x11.1")) + (rename-recursively daemon man5 + (list "default.pa.5" "pulse-daemon.conf.5")) + (rename-recursively daemon xwayland + (list "00-pulseaudio-x11")) + (rename-recursively utils bin + (list "pa-info" "pacat" "pacmd" "pactl" "pamon" + "paplay" "parec" "parecord" "pasuspender" + "qpaeq")) + (rename-recursively utils bash + (list "pacat" "pacmd" "pactl" "padsp" "paplay" + "parec" "parecord" "pasuspender")) + (rename-recursively utils man1 + (list "pacat.1" "pacmd.1" "pactl.1" "pamon.1" + "paplay.1" "parec.1" "parecord.1" + "pasuspender.1" "pax11publish.1")) + (rename-recursively utils man5 + (list "pulse-cli-syntax.5")) + (rename-recursively utils zsh + (list "_pulseaudio")))))))) (inputs (list alsa-lib bluez diff --git a/gnu/services/sound.scm b/gnu/services/sound.scm index 8ca7acd737..5a19859302 100644 --- a/gnu/services/sound.scm +++ b/gnu/services/sound.scm @@ -139,12 +139,12 @@ (define-record-type* ;; (see e.g. ). (default '((flat-volumes . no)))) (script-file pulseaudio-configuration-script-file - (default (file-append pulseaudio "/etc/pulse/default.pa"))) + (default (file-append `(,pulseaudio "daemon") "/etc/pulse/default.pa"))) (extra-script-files pulseaudio-configuration-extra-script-files (default '())) (system-script-file pulseaudio-configuration-system-script-file (default - (file-append pulseaudio "/etc/pulse/system.pa")))) + (file-append `(,pulseaudio "daemon") "/etc/pulse/system.pa")))) (define (pulseaudio-conf-entry arg) (match arg @@ -231,7 +231,8 @@ (define pulseaudio-service-type (list (service-extension session-environment-service-type pulseaudio-environment) (service-extension etc-service-type pulseaudio-etc) - (service-extension udev-service-type (const (list pulseaudio))))) + (service-extension udev-service-type + (const (list `(,pulseaudio "daemon")))))) (default-value (pulseaudio-configuration)) (description "Configure PulseAudio sound support."))) -- 2.46.0