Alsa Installer

Descrizione

Questo script installa/disinstalla ALSA da sorgenti (magari perchè non gli va quello incluso nel kernel-space). Lo script segue i passi degli how-to di http://www.alsa-project.org/ e funza per tutte le schede audio supportate da ALSA e per tutte le versioni.

Script

#!/bin/bash
#Script to install/uninstall ALSA (Alsa Linux Sound Architecture)
#by Siderius o Barty in Slacky.it

echo -e "\n Benvenuto nel tools di installazione/disinstallazione di ALSA da sorgenti\n Ricordati che ALSA non deve essere incluso nel kernel né staticamente né come modulo"
if [ "$UID" != 0 ]; then
	echo " Non sei root. Loggati come tale e riprova "
	exit 1
fi

echo " Vuoi installare o disinstallare alsa? [i/d]:"
while [ "$AZIONE" != 'i' ] && [ "$AZIONE" != 'd' ]; do
read AZIONE
	if [ "$AZIONE" != 'i' ] && [ "$AZIONE" != 'd' ]; then
	echo -e "\nInserisci i o d, perfavore!: "
	fi
done


if [ "$AZIONE" == 'i' ]; then
	echo -e "Che versione di ALSA vuoi installare?"
	read VERSIONE
	echo -e "\n Adesso sto per scaricare i sorgenti (driver, lib, utils) dal sito di ALSA aggiornati alla versione scelta\n
        Premi c per continuare o e per uscire: "
	read RISPOSTA

if [ "$RISPOSTA" == 'e' ]; then
	exit 1
fi
if [ "$RISPOSTA" == 'c' ]; then
	cd /usr/src
	mkdir alsa
	cd alsa
	wget ftp://ftp.alsa-project.org/pub/driver/alsa-driver-$VERSIONE.tar.bz2
	wget ftp://ftp.alsa-project.org/pub/lib/alsa-lib-$VERSIONE.tar.bz2
	wget ftp://ftp.alsa-project.org/pub/utils/alsa-utils-$VERSIONE.tar.bz2
#Controllo se ci sono i file System.map e .config nella cartella del sorgente di Linux
	VERSIONE_KERNEL='uname -r'
if [ "-e /usr/src/linux-$VERSIONE_KERNEL/System.map" == FALSE ] || [ "-e /usr/src/linux-$VERSIONE_KERNEL/.config" == FALSE ]; then
	echo -e "\n Non sono presenti nella cartella dove si trova il sorgente del tuo kernel i file System.map e .config \n necessari per
	l'installazione\n Se li hai spostati nella cartella /boot ricopiali nella cartella sorgente del kernel!!!"
	exit 1
else    echo -e "\n Compilazione Driver\n Premi c per continuare o e per uscire: "
	read RISPOSTA1
fi
#Compilazione driver
if [ "$RISPOSTA1" == 'e' ]; then
	exit 1
fi
if [ "$RISPOSTA1" == 'c' ]; then
	bunzip2 alsa-driver-$VERSIONE.tar.bz2
	tar -xf alsa-driver-$VERSIONE.tar
	cd alsa-driver-$VERSIONE
	./configure --with-sequencer=yes;make;make install
fi
#Compilazione librerie
	echo -e "\n Sto per compilare le librerie\n
        Premi c per continuare o e per uscire: "
	read RISPOSTA2
if [ "$RISPOSTA2" == 'e' ]; then
	exit 1
fi
if [ "$RISPOSTA2" == 'c' ]; then
	cd ..
	bunzip2 alsa-lib-$VERSIONE.tar.bz2
	tar -xf alsa-lib-$VERSIONE.tar
	cd alsa-lib-$VERSIONE
	./configure;make;make install
fi
#Compilazione utility
	echo -e "\n Sto per compilare le utility\n
        Premi c per continuare o e per uscire: "
	read RISPOSTA3
if [ "$RISPOSTA3" == 'e' ]; then
	exit 1
fi
if [ "$RISPOSTA3" == 'c' ]; then
	cd ..
	bunzip2 alsa-utils-$VERSIONE.tar.bz2
	tar -xf alsa-utils-$VERSIONE.tar
	cd alsa-utils-$VERSIONE
	./configure;make;make install
fi
#Faccio partire alsaconf
alsaconf
echo "Installazione completata.....Have a nice day ;-)"
fi
fi
#Disinstallazione
if [ "$AZIONE" == 'd' ]; then
	echo -e "Che versione di ALSA vuoi disinstallare?"
	read VERS_DIS
	cd /usr/src/alsa
	cd alsa-driver-$VERS_DIS
	make uninstall
	cd ..
	cd alsa-lib-$VERS_DIS
	make uninstall
	cd ..
	cd alsa-utils-$VERS_DIS
	make uninstall
	echo "Disinstallazione Completata!!"
fi
  • Data: 03 Jun 2006
  • Autore: S1d3r1Us
  • Versione: 1.0