Fedora 7 IBM Thinkpad T42p-re

Elegem lett, hogy folyton ugyanazokat a műveleteket kell végigcsinálnom, ha újratelepítem a laptopom. (Ez elég sűrűn előfordul, mert minden új dolgot kipróbálok. :D )
Ezért írtam egy scriptet, ami elvégzi automatikusan a szükséges post-install feladatokat.
Íme a script:

#!/bin/bash

function menu
{
kiiras=0
if [ "$1" = "-c" ]
then
shift
kiiras=1
clear
elif [ "$1" = "-p" ]
then
shift
kiiras=1
fi

if [ $kiiras -eq 1 ]
then
sorszam=1
while [ $sorszam -le $# ]
do
pont=`eval echo "$"$sorszam | sed "s/_/ /g"`
echo "$sorszam. $pont"
sorszam=`expr $sorszam + 1`
done
echo "Choose a menu item! (1-$#)"
fi
while :
do
read -s -n1 valasz
if [ $valasz -ge 1 -a $valasz -le $# ] 2>/dev/null
then
return $valasz
break
fi
done
}

function step_1
{
echo 'Step #1: Installing some stuffs from base...'
yum -y install mc nautilus-* wget bzip2 wifi-radar compat-libstdc*
}

function step_2
{
echo 'Step #2: Installing Livna repo...'
rpm -Uvh http://rpm.livna.org/livna-release-7.rpm
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-livna
}

function step_3
{
echo 'Step #3: Installing Mplayer...'
yum -y install mplayer*
}

function step_4
{
echo 'Step #4: Installing codecs for Mplayer...'
wget -c http://www.mplayerhq.hu/MPlayer/releases/codecs/all-20061022.tar.bz2
tar -xjvf all-20061022.tar.bz2
mkdir -p /usr/local/lib/codecs/
mv -f all-20061022/* /usr/local/lib/codecs/
ln -s /usr/local/lib/codecs/ /usr/lib/win32
echo ' Cleanup...'
rm -rf all-20061022*
}

function step_5
{
echo 'Step #5: Installing Flash plugin...'
rpm -Uvh http://linuxdownload.adobe.com/adobe-release/adobe-release-i386-1.0-1.n…
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux
yum -y install flash-plugin
}

function step_6
{
echo 'Step #6: Installing Java engine...'
rpm -e jre
wget -c http://javadl.sun.com/webapps/download/AutoDL?BundleId=11283
mv -f jre* jre.bin
sh jre.bin
echo ' Cleanup...'
rm -rf jre.bin
ln -s /usr/java/jre1.6.0_02/plugin/i386/ns7/libjavaplugin_oji.so /usr/lib/mozilla/plugins/libjavaplugin_oji.so
}

function reset_terminal
{
reset
}

function install_completed
{
echo '................................................................'
echo 'Post-install process ended.'
}

#--------------------------------- PROGRAM BEGINS --------------------------------------
MENULISTA="Stuffs Livna Mplayer Codecs_for_Mplayer Flash Java EVERYTHING Exit"
menu -p $MENULISTA
valasztott_pont=$?

while :
do
case $valasztott_pont in
1) echo 'Proceeding to Stuffs...'
step_1
install_completed
menu -p $MENULISTA
valasztott_pont=$? ;;

2) echo 'Proceeding to Livna...'
step_2
install_completed
menu -p $MENULISTA
valasztott_pont=$? ;;

3) echo 'Proceeding to Mplayer...'
step_3
install_completed
menu -p $MENULISTA
valasztott_pont=$? ;;

4) echo 'Proceeding to Mplayer codecs...'
step_4
install_completed
menu -p $MENULISTA
valasztott_pont=$? ;;

5) echo 'Proceeding to Flash...'
step_5
install_completed
menu -p $MENULISTA
valasztott_pont=$? ;;

6) echo 'Proceeding to Java...'
step_6
install_completed
menu -p $MENULISTA
valasztott_pont=$? ;;
7) echo 'Installing EVERYTHING!'
step_1
step_2
step_3
step_4
step_5
step_6
install_completed
menu -p $MENULISTA
valasztott_pont=$? ;;
8) echo "Good bye!"
exit 0;;
esac
done

Hozzászólások

Nem gyorsabb dd-vel egy lementett particiot 1-1-ben visszamasolni?
---------------------
AFPer: We've missed you, did you miss us?
Pratchett: Yes, but I think I have time to reload.

milyen új dolgokat próbálgatsz ki, hogy az egészet újrakell rakni? disztrókat?

én is kipróbálok minden új és szép dolgot bizonyos határok között (kernelt pl. nem szívesen forgatok)... de ettől függetlenül újrarakni nem kell a rendszert...
najó, tele van már mindenféle headerrel, az tény. ja és annak a csomagkezelő biztos nem örül, hogy forrásból rátelepítem a csomagkezelős verzióra azt, ami épp nekem kell, dehát mit csináljak? eddig bejött, és amikor mégsem, fél pillanat volt helyrerakni.
(legutóbb compiz fusiont raktam fel így gányul. ez a script tökjó.)

btw köszönet a scriptért - sokat lehet belőle tanulni (bashból a somelinerek szintjén még nem jutottam túl)

int getRandomNumber() {
return 4; //szabályos kockadobással választva. garantáltan véletlenszerű.
} //xkcd

nem tudom... kipróbáltam párat, aztán rájöttem, hogy sok csak küllemre különbözik, meg esetleg csomagkezelőben - alapfelszereltségben.
kiválasztottam azt, amelyik számomra épp eléggé volt szénné pecselve, hoyg felismerjen mindent - ubuntu. első disztró, amire azt mondom, hogy minden porcikáját kézben tudom tartani.
linuxon kívül csak egyszer próbáltam mást - freesbie livecd volt. az alapján annyi volt a benyomásom, hogy az is cska olyan, mint a linux, csak néhány parancs más, és vallási okokból kigyalulják belőle a lehetséges legtöbb gnu cuccot:D

talán akkor választok legközelebb mást, amikor bemondja az unalmast a laptopom merevlemeze. ami meg nemnagyon fog bekövetkezni, mivel úgyis csere előtt áll, és az új csak nem döglik be:D

int getRandomNumber() {
return 4; //szabályos kockadobással választva. garantáltan véletlenszerű.
} //xkcd