Muudatused
Allikas: Pingviini viki
Precise Pangolin lisamine
Skript pole valmisprodukt võhikule. Kasutajalt eeldatakse [[terminal]]i ja [[skript]]imise põhitõdede tundmist või aktiivset huvi selle vastu ning suutlust skripti oma soovi järgi mugandada. Kui skriptidega jändamine käib üle mõistuse, siis on parem oodata soovitud Ubuntule vastava [[Estobuntu]] versiooni ilmumist.
=Ubuntu 12.04 Precise Pangolin=
==Eelmärkused==
* Skript tuleb käivitada [[juurkasutaja]] õigustes ([[sudo]]).
* Skript eeldab, et samal ajal ei ole avatud [[paketihaldur]]eid vms süsteemseid vahendeid.
* ID-kaardi kasutamiseks tuleb kaardilugeja uuesti ühendada ja Firefox taaskäivitada (või arvuti taaskäivitada).
* Eeldatavasti töötab skript igasugu Ubuntul põhinevates Linuxites nagu [[Linux Mint]], [[Pinguy]] jne.
===Täielik Estobuntu skript===
Skript laadib Estobuntu [[Estobuntu ISO genereerimine|remaster haru]] alla, et käivitada sealt Estobuntus kasutatav [http://estobuntu.itcollege.ee/trac/estobuntu/browser/remaster/trunk/libraries/customization-profiles/localized_cd/customize.estobuntu customize.estobuntu] skript. Skript teeb süsteemist peaaegu täielikult [[Estobuntu]]. Soovijad võivad ka võtta Estobuntu remaster haru, mugandada seal käsitsi ''customize.estobuntu'' skripti, ja siis selle oma süsteemis käivitada.
* Skript näitab kasutajaliideses komponentide nimekirija, mille paigaldamist saab sisse/välja lülitada (kui nimekiri ei meeldi, siis saab kogu asja üldse katkestada).
* Skript kirjutab üle uute kasutajate vaikimisi seaded (kui luua süsteemi uus kasutaja, siis need seaded rakenduvad talle).
* Skript kirjutab üle ka aktiivse kasutaja seaded (see eeldab, et skript käivitatakse veel ''täiesti kasutamata süsteemis'').
* Suur osa skriptis pakutavaid asju eeldab, et valid ka ülejäänud asjad. Peamiste asjade (nt Estobuntu üldised paketid või varamud vms) valimata jätmine võib asjad parajalt vussi keerata.
See skript on alati kooskõlas Ubuntu versioonil 11.10 põhineva Estobuntu viimase redaktsiooniga. Kindlam on siiski oodata ära Estobuntu plaaditõmmise ilmumine, sest käesolev skript paigaldab esialgse tööversiooni.
<source lang="bash">
#!/bin/bash
if [ $UID -ne 0 ]; then
echo "Kasuta: sudo $0"
exit
fi
# kontrollib, kas $1 on | abil eraldatud $2 liige
function sisaldab()
{
IFS=$'|'
for x in $2
do
if [ "$x" = "$1" ]; then
return 1
fi
done
return 0
}
# paigaldab Bazaari ja Zenity, kui veel pole, ja laadib alla Estobuntu remaster haru
apt-get --assume-yes --force-yes install bzr zenity
rm -r estobuntu-skript
mkdir estobuntu-skript
cd estobuntu-skript
bzr checkout --lightweight http://estobuntu.itcollege.ee/bzr/estobuntu/remaster/trunk remaster
cd remaster/libraries/customization-profiles/localized_cd
# kopib estobuntu skripti, mida edaspidi automaatselt muudetakse
cp customize.estobuntu customize_new.estobuntu
# eemaldab käsu, mida ilma UCKta jooksutamisel vaja pole
sed -i -e "/cd \/tmp\/customization-scripts/d" customize_new.estobuntu
# ilma kirjeldusteta funktsioonide nimed
funkts=$(sed -n -r -e "s/(^function )([[:upper:]][[:alnum:]_]*)(\(\)).*/\2/gp" customize_new.estobuntu)
# kirjeldustega funktsioonide nimed
funkts_desc=$(sed -n -r -e "s/(^function )([[:upper:]][[:alnum:]_]*)(\(\))/\2/gp" customize_new.estobuntu)
# kui on kirjeldus olemas, siis näitab seda kasutajaliideses
# kui kirjeldust pole, siis näitab funktsiooni nime
# tagastab kõik linnukestega funktsioonide nimed
IFS=$'\n'
valikud=`for rida in $funkts_desc
do
echo true
set -- $rida
IFS="#"; declare -a andmed=($*)
nimi=${andmed[0]%% }
seletus=${andmed[1]## }
if [ "$seletus" != "" ]; then
echo $nimi
echo $seletus
else
echo $nimi
echo $nimi
fi
done | zenity --width=600 --height=500 --title="Ubuntu 12.04 Precise Pangolini eestindusskript" --text="Vali soovitud kohandused siit..." --list --checklist --column="Olek" --column="Nimi" --column="Seletus" --hide-column=2 --hide-header`
# kui vajutati "olgu"
if [ $? = 0 ]; then
# mis failis olnud funktsiooninimedest jäeti sisse lülitamata
# ja tuleb välja kommenteerida
IFS=$'\n'
for nimi in $funkts
do
`sisaldab $nimi $valikud`
if [ $? = 0 ]; then
sed -i -e "s/^[[:space:]]*$nimi[[:space:]]*$/# \0/g" customize_new.estobuntu
fi
done
# käivita estobuntu skript (ära käivita, kui tahad seda enne käivitamist sättida)
chmod +x customize_new.estobuntu
./customize_new.estobuntu
# väike abi kaardilugeja seadistamiseks, nüüd peaks piisama uuesti ühendamisest
udevadm control --reload-rules
# uute kasutajate vaikimisi seaded ka aktiivsele kasutajale
mv ~/.mozilla ~/.mozilla~ # (sest kasutaja pani niikuinii firefoxi käima juba)
shopt -s dotglob
cp /etc/skel/* ~
# et parandada LibreOffice'i jama (eeldusel, et see oli paigaldatud)
chown -hR $USER ~/.libreoffice
chgrp -hR $USER ~/.libreoffice
fi
# eemaldada tekitatud rämps (ära eemalda, kui tahad skripti veel ise täiendada)
cd ../../../../..
rm -r estobuntu-skript
</source>
==Arendusideed ja taust==
* Muudatuste grupeerimine
* Staatuse kontroll
* Pakkide üksik paigaldus
* Ühildumine ubuntu-defaults projektiga
* Vt ka [[Estobuntu ISO genereerimine]]
=Ubuntu 11.10 Oneiric Ocelot=