Re: git: b4d0a174c529 - main - www/ungoogled-chromium: update to 125.0.6422.76 and implement selectable audio backend support

From: Robert Nagy <rnagy_at_freebsd.org>
Date: Fri, 24 May 2024 10:40:27 UTC
On 24/05/24 12:51 GMT, Vladimir Druzenko wrote:
> 24.05.2024 06:47, Robert Nagy пишет:
> > The branch main has been updated by rnagy:
> > 
> > URL: https://cgit.FreeBSD.org/ports/commit/?id=b4d0a174c529e8061d838aafba1721cc317af01f
> > 
> > commit b4d0a174c529e8061d838aafba1721cc317af01f
> > Author:     Robert Nagy <rnagy@FreeBSD.org>
> > AuthorDate: 2024-05-23 20:21:23 +0000
> > Commit:     Robert Nagy <rnagy@FreeBSD.org>
> > CommitDate: 2024-05-24 03:47:31 +0000
> > 
> >      www/ungoogled-chromium: update to 125.0.6422.76 and implement selectable audio backend support
> >      with these changes, chromium now automatically selects which
> >      audio backend to use in the following order:
> >      pulse (if running) -> sndio -> alsa -> fake
> >      an additional command line option has been also implemented so
> >      that the user can force which backend to use:
> >      --audio-backend={auto,sndio,pulse,alsa}
> >      Security:       https://vuxml.freebsd.org/freebsd/8247af0d-183b-11ef-9f97-a8a1599412c6.html
> > ---
> > 
> > @@ -19,7 +19,8 @@ ONLY_FOR_ARCHS=	aarch64 amd64 i386
> >   PATCH_DEPENDS=	gpatch:devel/patch \
> >   		${PYTHON_VERSION}:lang/python${PYTHON_SUFFIX}
> > -BUILD_DEPENDS=	bash:shells/bash \
> > +BUILD_DEPENDS=	${LOCALBASE}/include/pulse/pulseaudio.h:audio/pulseaudio \
> > +		bash:shells/bash \
> >   		${PYTHON_PKGNAMEPREFIX}Jinja2>0:devel/py-Jinja2@${PY_FLAVOR} \
> >   		${PYTHON_PKGNAMEPREFIX}ply>0:devel/py-ply@${PY_FLAVOR} \
> >   		gperf:devel/gperf \
> > @@ -38,8 +39,10 @@ BUILD_DEPENDS=	bash:shells/bash \
> >   LIB_DEPENDS=	libatk-bridge-2.0.so:accessibility/at-spi2-core \
> >   		libatspi.so:accessibility/at-spi2-core \
> >   		libspeechd.so:accessibility/speech-dispatcher \
> > +		libasound.so:audio/alsa-lib \
> >   		libFLAC.so:audio/flac \
> >   		libopus.so:audio/opus \
> > +		libsndio.so:audio/sndio \
> >   		libspeex.so:audio/speex \
> >   		libdbus-1.so:devel/dbus \
> >   		libdbus-glib-1.so:devel/dbus-glib \
> > @@ -154,10 +162,8 @@ SUB_FILES=	ungoogled-chromium.desktop ungoogled-chromium
> >   SUB_LIST+=	COMMENT="${COMMENT}"
> >   OPTIONS_DEFINE=		CODECS CUPS DEBUG DRIVER KERBEROS LTO PIPEWIRE TEST WIDEVINE
> > -OPTIONS_DEFAULT=	CODECS CUPS DRIVER KERBEROS PIPEWIRE SNDIO
> > +OPTIONS_DEFAULT=	CODECS CUPS DRIVER KERBEROS PIPEWIRE
> >   OPTIONS_EXCLUDE_aarch64=LTO
> > -OPTIONS_GROUP=		AUDIO
> > -OPTIONS_GROUP_AUDIO=	ALSA PULSEAUDIO SNDIO
> >   OPTIONS_RADIO=		KERBEROS
> >   OPTIONS_RADIO_KERBEROS=	HEIMDAL HEIMDAL_BASE MIT
> >   OPTIONS_SUB=		yes
> > @@ -167,12 +173,6 @@ HEIMDAL_BASE_DESC=	Heimdal Kerberos (base)
> >   HEIMDAL_DESC=		Heimdal Kerberos (security/heimdal)
> >   MIT_DESC=		MIT Kerberos (security/krb5)
> > -ALSA_LIB_DEPENDS=	libasound.so:audio/alsa-lib
> > -ALSA_RUN_DEPENDS=	${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins \
> > -			alsa-lib>=1.1.1_1:audio/alsa-lib
> > -ALSA_VARS=		GN_ARGS+=use_alsa=true
> > -ALSA_VARS_OFF=		GN_ARGS+=use_alsa=false
> > -
> >   CODECS_VARS=		GN_ARGS+=proprietary_codecs=true \
> >   			FFMPEG_BRAND="Chrome"
> >   CODECS_VARS_OFF=	GN_ARGS+=proprietary_codecs=false \
> > @@ -216,18 +216,6 @@ PIPEWIRE_VARS=		GN_ARGS+=rtc_use_pipewire=true \
> >   PIPEWIRE_VARS_OFF=	GN_ARGS+=rtc_use_pipewire=false \
> >   			GN_ARGS+=rtc_link_pipewire=false
> > -PULSEAUDIO_LIB_DEPENDS=	libpulse.so:audio/pulseaudio
> > -PULSEAUDIO_VARS=	GN_ARGS+=use_pulseaudio=true
> > -PULSEAUDIO_VARS_OFF=	GN_ARGS+=use_pulseaudio=false
> > -
> > -# With SNDIO=on we exclude audio_manager_linux from the build (see
> > -# media/audio/BUILD.gn) and use audio_manager_openbsd which does not
> > -# support falling back to ALSA or PulseAudio.
> > -SNDIO_PREVENTS=		ALSA PULSEAUDIO
> > -SNDIO_LIB_DEPENDS=	libsndio.so:audio/sndio
> > -SNDIO_VARS=		GN_ARGS+=use_sndio=true
> > -SNDIO_VARS_OFF=		GN_ARGS+=use_sndio=false
> > -
> >   WIDEVINE_DESC=		Depend on foreign-cdm to enable playback of DRM content
> >   WIDEVINE_RUN_DEPENDS=	foreign-cdm>0:www/foreign-cdm
> 
> Please remove mandatory dependency (BUILD and LIB) from pulse and sndio and
> return build options.
> You can do with OPTIONS_DEFAULT what you want, but don't force install all
> these dependencies even for build.

I am sorry but I don't concur. Knobs are bad, there is literally no reason for someone
not to install sndio (which is the most supported by chrome) by default.
Pulseaudio is only a build dependency which is completely fine.

I am trying to remove even more build options. They make absolutely no sense.