Summary(ru.UTF-8): Утилиты командной строки для ALSA project
Summary(uk.UTF-8): Утиліти командного рядка для ALSA project
Name: alsa-utils
-Version: 1.0.13
+Version: 1.2.11
Release: 1
-License: GPL
+# some apps GPL v2, some GPL v2+
+License: GPL v2
Group: Applications/Sound
Source0: ftp://ftp.alsa-project.org/pub/utils/%{name}-%{version}.tar.bz2
-# Source0-md5: dfe4bb5d3217f3ec662b172ce8397cf0
+# Source0-md5: 36676025301315789306e99e39154732
Source1: alsasound.init
+# does anything use this (probably outdated) file? not alsasound.init
Source2: alsa-oss-pcm
-URL: http://www.alsa-project.org/
-BuildRequires: alsa-lib-devel >= 1.0.13
+Source3: alsactl.conf
+Patch0: %{name}-fast_sampling.patch
+Patch1: %{name}-modprobe.patch
+URL: https://www.alsa-project.org/
+BuildRequires: alsa-lib-devel >= 1.2.10
BuildRequires: autoconf >= 2.59
BuildRequires: automake
-BuildRequires: flex
-BuildRequires: gettext-devel >= 0.14
+# rst2man
+BuildRequires: docutils
+BuildRequires: fftw3-devel >= 3
+BuildRequires: gettext-tools >= 0.19.8
+BuildRequires: libsamplerate-devel >= 0.1.3
BuildRequires: libtool
-BuildRequires: ncurses-devel
+BuildRequires: ncurses-devel >= 5
+BuildRequires: ncurses-ext-devel >= 5
+BuildRequires: pkgconfig
BuildRequires: rpmbuild(macros) >= 1.268
-Requires: alsa-lib >= 1.0.13
+BuildRequires: systemd-devel >= 18
+BuildRequires: systemd-units >= 18
+BuildRequires: xmlto
+Requires: alsa-lib >= 1.2.10
Requires: awk
Requires: dialog
Requires: diffutils
+Requires: systemd-units >= 18
Requires: which
-Obsoletes: alsaconf
+Suggests: gpm
+Obsoletes: alsa-udev < 1
+Obsoletes: alsaconf < 0.5
+Obsoletes: udev-alsa < 1.0.25-2
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
Requires(post,preun): /sbin/chkconfig
Requires: %{name} = %{version}-%{release}
Requires: rc-scripts
+Requires: systemd-units
%description init
Init script for Advanced Linux Sound Architecture.
%prep
%setup -q
+%patch0 -p1
+%patch1 -p1
%build
%{__gettextize}
+%{__libtoolize}
%{__aclocal}
%{__autoconf}
%{__autoheader}
%{__automake}
CFLAGS="%{rpmcflags} -I/usr/include/ncurses"
CXXFLAGS="%{rpmcxxflags} -fno-rtti -fno-exceptions"
-%configure
+# we need alsactl for udev as early as possible
+%configure \
+ --sbindir=/sbin \
+ --with-systemdsystemunitdir=%{systemdunitdir}
+
%{__make}
%install
install -D %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/alsasound
install -D %{SOURCE2} $RPM_BUILD_ROOT/etc/sysconfig/alsa-oss-pcm
+install -D %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/alsa/alsactl.conf
+
+install -d $RPM_BUILD_ROOT/lib/alsa
+%{__mv} $RPM_BUILD_ROOT%{_datadir}/alsa/init $RPM_BUILD_ROOT/lib/alsa
+
+ln -s /lib/alsa/init $RPM_BUILD_ROOT%{_datadir}/alsa/init
+install -d $RPM_BUILD_ROOT%{_sbindir}
+ln -s /sbin/alsactl $RPM_BUILD_ROOT%{_sbindir}/alsactl
-rm -f $RPM_BUILD_ROOT%{_mandir}/man1/arecord.1
+%{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/arecord.1
echo ".so aplay.1" > $RPM_BUILD_ROOT%{_mandir}/man1/arecord.1
-touch $RPM_BUILD_ROOT%{_sysconfdir}/asound.conf
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/alsa-topology/*.la
%find_lang alsa-utils --all-name
%clean
rm -rf $RPM_BUILD_ROOT
+%pretrans
+# this needs to be a dir
+if [ -d %{_datadir}/alsa/init -a ! -h %{_datadir}/alsa/init ]; then
+ mv -b %{_datadir}/alsa/init{,.dir}
+%banner -e %{name} <<EOF
+Check %{_datadir}/alsa/init.dir for your own files and remove it when done.
+EOF
+fi
+
%post init
/sbin/chkconfig --add alsasound
%service alsasound restart "ALSA %{version} services"
/sbin/chkconfig --del alsasound
fi
+%triggerpostun -- %{name} < 1.0.24.2-2
+install -d /var/lib/alsa
+if [ -f /etc/asound.state ]; then
+ mv -f /etc/asound.state /var/lib/alsa/asound.state
+fi
+
%files -f alsa-utils.lang
%defattr(644,root,root,755)
-%doc README ChangeLog
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/asound.conf
-%attr(755,root,root) %{_bindir}/*
-%attr(755,root,root) %{_sbindir}/*
-%{_datadir}/alsa/speaker-test
+%doc ChangeLog README.md TODO
+%attr(755,root,root) /sbin/alsa-info.sh
+%attr(755,root,root) /sbin/alsabat-test.sh
+%attr(755,root,root) /sbin/alsaconf
+%attr(755,root,root) /sbin/alsactl
+%attr(755,root,root) %{_bindir}/aconnect
+%attr(755,root,root) %{_bindir}/alsabat
+%attr(755,root,root) %{_bindir}/alsaloop
+%attr(755,root,root) %{_bindir}/alsamixer
+%attr(755,root,root) %{_bindir}/alsatplg
+%attr(755,root,root) %{_bindir}/alsaucm
+%attr(755,root,root) %{_bindir}/amidi
+%attr(755,root,root) %{_bindir}/amixer
+%attr(755,root,root) %{_bindir}/aplay
+%attr(755,root,root) %{_bindir}/aplaymidi
+%attr(755,root,root) %{_bindir}/arecord
+%attr(755,root,root) %{_bindir}/arecordmidi
+%attr(755,root,root) %{_bindir}/aseqdump
+%attr(755,root,root) %{_bindir}/aseqnet
+%attr(755,root,root) %{_bindir}/axfer
+%attr(755,root,root) %{_bindir}/iecset
+%attr(755,root,root) %{_bindir}/nhlt-dmic-info
+%attr(755,root,root) %{_bindir}/speaker-test
+# symlink
+%attr(755,root,root) %{_sbindir}/alsactl
+%dir %{_libdir}/alsa-topology
+%attr(755,root,root) %{_libdir}/alsa-topology/libalsatplg_module_nhlt.so
+%{_sysconfdir}/alsa/alsactl.conf
+/lib/udev/rules.d/90-alsa-restore.rules
+%{systemdunitdir}/alsa-restore.service
+%{systemdunitdir}/sound.target.wants/alsa-restore.service
+%dir /var/lib/alsa
+%dir /lib/alsa
+/lib/alsa/init
+%{_datadir}/alsa/init
%{_datadir}/sounds/alsa
%{_mandir}/man1/aconnect.1*
+%{_mandir}/man1/alsa-info.sh.1*
+%{_mandir}/man1/alsabat.1*
%{_mandir}/man1/alsactl.1*
+%{_mandir}/man1/alsaloop.1*
%{_mandir}/man1/alsamixer.1*
+%{_mandir}/man1/alsatplg.1*
+%{_mandir}/man1/alsaucm.1*
%{_mandir}/man1/amidi.1*
%{_mandir}/man1/amixer.1*
%{_mandir}/man1/aplay.1*
%{_mandir}/man1/aplaymidi.1*
%{_mandir}/man1/arecord.1*
%{_mandir}/man1/arecordmidi.1*
-%{_mandir}/man1/aseqnet.1*
%{_mandir}/man1/aseqdump.1*
+%{_mandir}/man1/aseqnet.1*
+%{_mandir}/man1/axfer.1.*
+%{_mandir}/man1/axfer-list.1.*
+%{_mandir}/man1/axfer-transfer.1.*
%{_mandir}/man1/iecset.1*
+%{_mandir}/man1/nhlt-dmic-info.1*
%{_mandir}/man1/speaker-test.1*
+%{_mandir}/man7/alsactl_init.7*
%{_mandir}/man8/alsaconf.8*
%lang(fr) %{_mandir}/fr/man8/alsaconf.8*
%files init
%defattr(644,root,root,755)
-%attr(754,root,root) /etc/rc.d/init.d/*
-%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/*
+%attr(754,root,root) /etc/rc.d/init.d/alsasound
+%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/alsa-oss-pcm
+%{systemdunitdir}/alsa-state.service
+%{systemdunitdir}/sound.target.wants/alsa-state.service