Skip to content

Commit

Permalink
alsa-info: initial rpm/deb package info
Browse files Browse the repository at this point in the history
This might become a Pandora's box given
the amount of obscure package managers
on the planet but these two account for
most *nix-like systems with ALSA it seems.

Added support for querying ALSA packages
installed through rpm and dpkg; tested
on ALT (rpm) and OS Elbrus (dpkg).

Suggested-by: Anton Farygin <rider@altlinux.org>
See-also: http://bugzilla.altlinux.org/38416
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
  • Loading branch information
Michael Shigorin authored and perexg committed May 1, 2020
1 parent 217fef4 commit 8e59029
Showing 1 changed file with 24 additions and 0 deletions.
24 changes: 24 additions & 0 deletions alsa-info/alsa-info.sh
Original file line number Diff line number Diff line change
Expand Up @@ -238,6 +238,23 @@ withdmesg() {
echo "" >> $FILE
}

withpackages() {
local RPM="$(which rpmquery 2>/dev/null | sed 's|^[^/]*||' 2>/dev/null)"
local DPKG="$(which dpkg 2>/dev/null | sed 's|^[^/]*||' 2>/dev/null)"
[ -n "$RPM$DPKG" ] || return
local PATTERN='(alsa-(lib|oss|plugins|tools|(topology|ucm)-conf|utils)|libalsa|tinycompress)'
{
echo "!!Packages installed"
echo "!!--------------------"
echo ""
{
if [ -x "$RPM" ]; then "$RPM" -a; fi
if [ -x "$DPKG" ]; then "$DPKG" -l; fi
} | grep -E "$PATTERN"
echo ""
} >> "$FILE"
}

withall() {
withdevices
withconfigs
Expand All @@ -247,6 +264,7 @@ withall() {
withmodules
withsysfs
withdmesg
withpackages
WITHALL="no"
}

Expand Down Expand Up @@ -357,6 +375,7 @@ information about your ALSA installation and sound related hardware.
aplay
amixer
alsactl
rpm, dpkg
/proc/asound/
/sys/class/sound/
~/.asoundrc (etc.)
Expand Down Expand Up @@ -699,6 +718,10 @@ if [ -n "$1" ]; then
withconfigs
WITHALL="no"
;;
--with-packages)
withpackages
WITHALL="no"
;;
--stdout)
UPLOAD="no"
if [ -z "$WITHALL" ]; then
Expand Down Expand Up @@ -730,6 +753,7 @@ if [ -n "$1" ]; then
echo " /etc/asound.conf if they exist)"
echo " --with-devices (shows the device nodes in /dev/snd/)"
echo " --with-dmesg (shows the ALSA/HDA kernel messages)"
echo " --with-packages (includes known packages installed)"
echo ""
echo " --output FILE (specify the file to output for no-upload mode)"
echo " --update (check server for script updates)"
Expand Down

0 comments on commit 8e59029

Please sign in to comment.