From 1b806e607f52285f973fb1106491668fd28da6a4 Mon Sep 17 00:00:00 2001 From: Lexi Winter Date: Thu, 2 Oct 2025 02:16:11 +0100 Subject: [PATCH] packages: Add a sound package Put virtual_oss, /etc/devd/snd.conf and the other audio-related tools into a new "sound" package. Don't create a separate -lib package, since it's unlikely someone will want mixer(3) without mixer(8). Put the sound package in the optional set rather than minimal, since it's not actually required for audio hardware support, and many systems (including nearly all servers) won't want it installed. MFC after: 3 seconds Reviewed by: christos Sponsored by: https://www.patreon.com/bsdivy Differential Revision: https://reviews.freebsd.org/D52823 --- UPDATING | 6 +++++ lib/libmixer/Makefile | 2 ++ lib/libsamplerate/Makefile | 2 ++ libexec/rc/rc.d/Makefile | 4 ++- release/packages/ucl/sound-all.ucl | 42 ++++++++++++++++++++++++++++++ sbin/devd/Makefile | 7 ++++- usr.bin/beep/Makefile | 2 ++ usr.bin/mididump/Makefile | 2 ++ usr.sbin/mixer/Makefile | 2 ++ usr.sbin/sndctl/Makefile | 2 ++ usr.sbin/virtual_oss/Makefile.inc | 2 ++ 11 files changed, 71 insertions(+), 2 deletions(-) create mode 100644 release/packages/ucl/sound-all.ucl diff --git a/UPDATING b/UPDATING index cd7568885a2..4460898fca2 100644 --- a/UPDATING +++ b/UPDATING @@ -27,6 +27,12 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 16.x IS SLOW: world, or to merely disable the most expensive debugging functionality at runtime, run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20251002: + Audio-related utilities including mixer(8) and virtual_oss(8) have + moved to the new FreeBSD-sound package. If you have set-optional or + set-base installed this package will be installed automatically, + otherwise you should install it manually if you need these utilities. + 20250929: Both drm-kmod and nividia-drm ports had to be updated to either no longer conflict on LinuxKPI vs. native PCI changes and/or to keep diff --git a/lib/libmixer/Makefile b/lib/libmixer/Makefile index a0bb37a85fb..49621ad1f18 100644 --- a/lib/libmixer/Makefile +++ b/lib/libmixer/Makefile @@ -1,3 +1,5 @@ +PACKAGE= sound + LIB= mixer SRCS= ${LIB}.c INCS= ${LIB}.h diff --git a/lib/libsamplerate/Makefile b/lib/libsamplerate/Makefile index 6ca87d8b20c..4c55d5c2cb8 100644 --- a/lib/libsamplerate/Makefile +++ b/lib/libsamplerate/Makefile @@ -1,5 +1,7 @@ .PATH: ${SRCTOP}/contrib/libsamplerate +PACKAGE= sound + LIB= samplerate PRIVATELIB= diff --git a/libexec/rc/rc.d/Makefile b/libexec/rc/rc.d/Makefile index 4f2d63c06e1..03f0933533c 100644 --- a/libexec/rc/rc.d/Makefile +++ b/libexec/rc/rc.d/Makefile @@ -216,7 +216,9 @@ CCDPACKAGE= ccdconfig .endif .if ${MK_CUSE} != "no" -CONFS+= virtual_oss +CONFGROUPS+= VOSS +VOSS= virtual_oss +VOSSPACKAGE= sound .endif .if ${MK_KERBEROS_SUPPORT} != "no" diff --git a/release/packages/ucl/sound-all.ucl b/release/packages/ucl/sound-all.ucl new file mode 100644 index 00000000000..6a8ad098c6b --- /dev/null +++ b/release/packages/ucl/sound-all.ucl @@ -0,0 +1,42 @@ +/* + * SPDX-License-Identifier: ISC + * + * Copyright (c) 2025 Lexi Winter + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ + +comment = "Audio utilities" + +desc = < +PACKAGE= sound + PROG= mididump SRCS= ${PROG}.c MAN= ${PROG}.1 diff --git a/usr.sbin/mixer/Makefile b/usr.sbin/mixer/Makefile index 9e96c2f2d2e..6c75e65d2a9 100644 --- a/usr.sbin/mixer/Makefile +++ b/usr.sbin/mixer/Makefile @@ -1,5 +1,7 @@ .include +PACKAGE= sound + PROG= mixer SRCS= ${PROG}.c MAN= ${PROG}.8 diff --git a/usr.sbin/sndctl/Makefile b/usr.sbin/sndctl/Makefile index c1830413f93..d6697bb88fd 100644 --- a/usr.sbin/sndctl/Makefile +++ b/usr.sbin/sndctl/Makefile @@ -1,5 +1,7 @@ .include +PACKAGE= sound + PROG= sndctl SRCS= ${PROG}.c MAN= ${PROG}.8 diff --git a/usr.sbin/virtual_oss/Makefile.inc b/usr.sbin/virtual_oss/Makefile.inc index 01b5f23410c..d2b0d74fa8c 100644 --- a/usr.sbin/virtual_oss/Makefile.inc +++ b/usr.sbin/virtual_oss/Makefile.inc @@ -1 +1,3 @@ +PACKAGE?= sound + .include "../Makefile.inc"