Skocz do zawartości

Repozytoria I Prezent Odemnie Dla Was


wintermute

Rekomendowane odpowiedzi

W ramach nauki basha i mojego podejścia do tego "pisz tylko to co użyteczne" prezentuje skrypt służący automatycznemu dodawaniu repo do yuma w fedora 8, który znajduje się na dole postu. Może komuś się przyda. Wszak to najszybszy sposób dodawania tych standardowych repo jaki znam. Skrypt dodaje repozytoria: livina, flash, aiglx, gstreamer, fedora-legacy, fedora-devel, fedora-extras-developmen, fedora-updates-testing, livna-testing.

Instrukcje

Skrypt dodaje pliki .repo do /etc/yum.repos.d

aby zadziałał należy:

Skopiować kod skryptu znajdujący się na dole postu do pustego pliku np "winter_skrypt", a następnie

cd /scierzka/do/pliku/winter_skrypt
su
chmod +x winter_skrypt
./winter_skrypt

i wyświtli się nam menu którego opisywać nie będę, bo żal :rolleyes:

Natomiast jeśli chcemy automatycznie dodać wszystkie repo, pomijając menu skryptu, wystarczy wpisać:

./winter_skrypt a

Jeśli chcemy dodać tylko repo testowe wybieramy opcję "t" a jeśli tylko nietestowe "n"

Można podać tylko jedną opcję na raz :rolleyes:

Hmm mam nadzieję, że komuś się przyda.

 

P.S: nie muszę chyba dodawać, że skrypt należy uruchamiać jako root.

 

EDIT 17.04.08:

Skrypt oczywiście dodaje same pliki .repo skonfigurowane domyślnie. Klucze należy dodać samemu.

 

EDIT 22.04.08

Poprawka do skryptu. Skrypt zawierał wszystkie repo z http://forum.fedora.pl/index.php?showtopic=9893 . Problem w tym, że livna-development.repo i fedora-devel.repo z tego wątku zawierają repo o tej samej nazwie. W efekcie, po wywołaniu skryptu z opcją "a" lub "t", te dwa repo sprawiają, że yum "myśli", że ma dwa te same repo i nie chce "trybić". Usunąłem livna-development.repo który wydaje się być tylko okrojoną wersją fedora-devel.repo Jeśli już ktoś skożystał z poprzednij wersji skryptu i yum nie działa jak prawidłowo, należy usunąć z /etc/yum.repos.d plik livna-development.repo. Sorry, Dżizu, co za wpadka :o

 

#!/bin/bash
#name: f8yumrepoadd
#script for fedora8. adds repos to /etc/yum.repos.d
#autor/author wintermuteX

function menu
{
echo ""
echo 'Dodaj:'
echo '1:livna 2:flash 3:aiglx 4:gstreamer'
echo '5:fedora-legacy 6:fedora-devel 7:fedora-extras-development'
echo '8:fedora-updates-testing 9:livna-testing 10:livna-development'
echo '11:Wszystkie nietestowe 12:Wszystkie testowe 13:Wszystkie 14: EXIT'
read wybor
case $wybor in
  "1") add_livna; menu;;
  "2") add_flash; menu;;
  "3") add_aiglx; menu;;
  "4") add_gst; menu;;
  "5") add_fedora-legacy; menu;;
  "6") add_fedora-devel; menu;;
  "7") add_fedora-extras-development; menu;;
  "8") add_fedora-updates-testing; menu;;
  "9") add_livna-testing; menu;;
  "10") add_nontesting; menu;;
  "11") add_testing; menu;;
  "12") add_all;;
  "13") echo "wintermuteX says bye :)"; exit;;
  *) echo "Wpisz od 1 do 14"; menu
esac
}

function add_nontesting
{
add_livna
add_flash
add_aiglx
add_gst
echo "Dodano wszystkie nietestowe repo"
exit
}

function add_testing
{
add_fedora-legacy
add_fedora-devel
add_fedora-extras-development
add_fedora-updates-testing
add_livna-testing
echo 'Dodano wszystkie testowe repo'
exit
}

function add_all
{
add_livna
add_flash
add_aiglx
add_gst
add_fedora-legacy
add_fedora-devel
add_fedora-extras-developmen
add_fedora-updates-testing
add_livna-testing
echo "Dodano wszystkie repo. Koniec programu"
exit
}

function check_root
{
if [ "$HOME" != "/root" ]
then
  echo "Sorry:"
  echo "Musisz byc rootem aby odpalic ten skrypt!"
  echo "You must be root to execute this script!"
  exit
fi
}

function add_livna
{
echo -ne '[livna]\r
name=Livna for Fedora Core $releasever - $basearch - Base\r
baseurl=\r
    http://rpm.livna.org/fedora/$releasever/$basearch/\r
    http://livna.cat.pdx.edu/fedora/$releasever/$basearch/\r
    http://wftp.tu-chemnitz.de/pub/linux/livna/fedora/$releasever/$basearch/\r
    http://ftp-stud.fht-esslingen.de/pub/Mirrors/rpm.livna.org/fedora/$releasever/$basearch/\r
    http://mirror.atrpms.net/livna/fedora/$releasever/$basearch/\r
    ftp://mirrors.tummy.com/pub/rpm.livna.org/fedora/$releasever/$basearch/\r
failovermethod=priority\r
#mirrorlist=http://rpm.livna.org/mirrorlist-5\r
enabled=1\r
gpgcheck=1\r
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-livna\r
\r
[livna-debuginfo]\r
name=Livna for Fedora Core $releasever - $basearch - Debug\r
baseurl=\r
    http://rpm.livna.org/fedora/$releasever/$basearch/debug/\r
    http://livna.cat.pdx.edu/fedora/$releasever/$basearch/debug/\r
    http://wftp.tu-chemnitz.de/pub/linux/livna/fedora/$releasever/$basearch/debug/\r
    http://ftp-stud.fht-esslingen.de/pub/Mirrors/rpm.livna.org/fedora/$releasever/$basearch/debug/\r
    http://mirror.atrpms.net/livna/fedora/$releasever/$basearch/debug/\r
    ftp://mirrors.tummy.com/pub/rpm.livna.org/fedora/$releasever/$basearch/debug/\r
failovermethod=priority\r
enabled=0\r
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-livna\r
gpgcheck=1\r
\r
[livna-source]\r
name=Livna for Fedora Core $releasever - $basearch - Source\r
baseurl=\r
    http://rpm.livna.org/fedora/$releasever/SRPMS/\r
    http://livna.cat.pdx.edu/fedora/$releasever/SRPMS/\r
    http://wftp.tu-chemnitz.de/pub/linux/livna/fedora/$releasever/SRPMS/\r
    http://ftp-stud.fht-esslingen.de/pub/Mirrors/rpm.livna.org/fedora/$releasever/SRPMS/\r
    http://mirror.atrpms.net/livna/fedora/$releasever/SRPMS/\r
    ftp://mirrors.tummy.com/pub/rpm.livna.org/fedora/$releasever/SRPMS/\r
failovermethod=priority\r
enabled=0\r
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-livna\r
gpgcheck=1\r' > /etc/yum.repos.d/livna.repo
echo "Dodano repo livna"
}

function add_flash
{
echo -ne '[flash]\r
name=macromedia.mplug.org - Flash Plugin\r
baseurl=http://macromedia.mplug.org/rpm\r
  http://sluglug.ucsc.edu/macromedia/rpm\r
  http://ruslug.rutgers.edu/macromedia/rpm\r
  http://macromedia.rediris.es/rpm\r
enabled=1\r
gpgcheck=1\r' > /etc/yum.repos.d/flash.repo
echo "Dodano repo flafh"
}

function add_aiglx
{
echo -ne '[aiglx]\r
name=AIGLX - $basearch\r
baseurl=http://download.fedora.redhat.com/pub/fedora/projects/aiglx/$basearch\r
enabled=0\r
gpgcheck=0\r
\r
[aiglx-debuginfo]\r
name=AIGLX - $basearch - Debug\r
baseurl=http://download.fedora.redhat.com/pub/fedora/projects/aiglx/$basearch-debug\r
enabled=0\r
gpgcheck=0\r' > /etc/yum.repos.d/aiglx.repo
echo "Dodano repo aiglx"
}

function add_gst
{
echo -ne '[gst-0.10-deps]
name=GStreamer 0.10 - extras - $releasever - $basearch - dependencies
baseurl=http://gstreamer.freedesktop.org/pkg/fedora/$releasever/0.10/$basearch/deps/
enabled=1
gpgcheck=1
gpgkey=http://thomas.apestaart.org/pkg/thomas.pubkey

[gst-0.10-gst]
name=GStreamer 0.10 - extras - $releasever - $basearch - gst
baseurl=http://gstreamer.freedesktop.org/pkg/fedora/$releasever/0.10/$basearch/gst/
enabled=1
gpgcheck=1
gpgkey=http://thomas.apestaart.org/pkg/thomas.pubkey

[gst-0.10-apps]
name=GStreamer 0.10 - extras - $releasever - $basearch - applications
baseurl=http://gstreamer.freedesktop.org/pkg/fedora/$releasever/0.10/$basearch/apps/
enabled=1
gpgcheck=1
gpgkey=http://thomas.apestaart.org/pkg/thomas.pubkey' > /etc/yum.repos.d/gstreamer.repo
echo "Dodano repo gstreamer"
}

function add_fedora-legacy
{
echo -ne '[legacy-updates]
name=Fedora Legacy $releasever - $basearch - Updates
mirrorlist=http://fedora.redhat.com/download/mirrors/legacy-updates-released-fc$releasever
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-legacy

[legacy-testing]
name=Fedora Legacy $releasever - $basearch - Updates Testing
mirrorlist=http://fedora.redhat.com/download/mirrors/legacy-updates-testing-fc$releasever
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-legacy' > /etc/yum.repos.d/fedora-legacy.repo
echo "Dodano repo fedora-legacy"
}

function add_fedora-devel
{
echo -ne '[livna-development]
name=Livna for Fedora Core $releasever - $basearch - Development Tree
baseurl=
    http://rpm.livna.org/fedora/development/$basearch/
    http://livna.cat.pdx.edu/fedora/development/$basearch/
    http://wftp.tu-chemnitz.de/pub/linux/livna/fedora/development/$basearch/
    http://ftp-stud.fht-esslingen.de/pub/Mirrors/rpm.livna.org/fedora/development/$basearch/
    http://mirror.atrpms.net/livna/fedora/development/$basearch/
    ftp://mirrors.tummy.com/pub/rpm.livna.org/fedora/development/$basearch/
failovermethod=priority
#mirrorlist=http://rpm.livna.org/mirrorlist-development
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-livna

[livna-development-debuginfo]
name=Livna for Fedora Core $releasever - $basearch - Development Tree - Debug
baseurl=
    http://rpm.livna.org/fedora/development/$basearch/debug/
    http://livna.cat.pdx.edu/fedora/development/$basearch/debug/
    http://wftp.tu-chemnitz.de/pub/linux/livna/fedora/development/$basearch/debug/
    http://ftp-stud.fht-esslingen.de/pub/Mirrors/rpm.livna.org/fedora/development/$basearch/debug/
    http://mirror.atrpms.net/livna/fedora/development/$basearch/debug/
    ftp://mirrors.tummy.com/pub/rpm.livna.org/fedora/development/$basearch/debug/
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-livna
gpgcheck=1

[livna-development-source]
name=Livna for Fedora Core $releasever - $basearch - Development Tree - Source
baseurl=
    http://rpm.livna.org/fedora/development/SRPMS/
    http://livna.cat.pdx.edu/fedora/development/SRPMS/
    http://wftp.tu-chemnitz.de/pub/linux/livna/fedora/development/SRPMS/
    http://ftp-stud.fht-esslingen.de/pub/Mirrors/rpm.livna.org/fedora/development/SRPMS/
    http://mirror.atrpms.net/livna/fedora/development/SRPMS/
    ftp://mirrors.tummy.com/pub/rpm.livna.org/fedora/development/SRPMS/
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-livna
gpgcheck=1' > /etc/yum.repos.d/fedora-devel.repo
echo "dodano repo fedora-devel"
}

function add_fedora-extras-development
{
echo -ne '[extras-development]
name=Fedora Extras - Development Tree
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/extras/development/$basearch/
mirrorlist=http://fedora.redhat.com/download/mirrors/fedora-extras-devel
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-extras
gpgcheck=1

[extras-development-debuginfo]
name=Fedora Extras - Development - Debug
baseurl=http://download.fedora.redhat.com/pub/fedora/linux/extras/development/$basearch/debug/
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-extras
gpgcheck=1

[extras-development-source]
name=Fedora Extras - Development - Source
baseurl=http://download.fedora.redhat.com/pub/fedora/linux/extras/development/SRPMS/
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-extras
gpgcheck=1' > /etc/yum.repos.d/fedora-extras-development.repo
echo "Dodano repo fedora-extras-development"
}

function add_fedora-updates-testing
{
echo -ne '[updates-testing]
name=Fedora Core $releasever - $basearch - Test Updates
#baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/updates/testing/$releasever/$basearch/
mirrorlist=http://fedora.redhat.com/download/mirrors/updates-testing-fc$releasever
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-test

[updates-testing-debuginfo]
name=Fedora Core $releasever - $basearch - Test Updates Debug
baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/updates/testing/$releasever/$basearch/debug/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-test

[updates-testing-source]
name=Fedora Core $releasever - Test Updates Source
baseurl=http://download.fedora.redhat.com/pub/fedora/linux/core/updates/testing/$releasever/SRPMS/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-fedora-test' > /etc/yum.repos.d/fedora-updates-testing.repo
echo "dodano repo fedora-updates-testing"
}

function add_livna-testing
{
echo -ne '[livna-testing]
name=Livna for Fedora Core $releasever - $basearch - Testing
baseurl=
    http://rpm.livna.org/fedora/testing/$releasever/$basearch/
    http://livna.cat.pdx.edu/fedora/testing/$releasever/$basearch/
    http://wftp.tu-chemnitz.de/pub/linux/livna/fedora/testing/$releasever/$basearch/
    http://ftp-stud.fht-esslingen.de/pub/Mirrors/rpm.livna.org/fedora/testing/$releasever/$basearch/
    http://mirror.atrpms.net/livna/fedora/testing/$releasever/$basearch/
    ftp://mirrors.tummy.com/pub/rpm.livna.org/fedora/testing/$releasever/$basearch/
failovermethod=priority
#mirrorlist=http://rpm.livna.org/mirrorlist-testing-5
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-livna

[livna-testing-debug]
name=Livna for Fedora Core $releasever - $basearch - Testing - Debug
baseurl=
    http://rpm.livna.org/fedora/testing/$releasever/$basearch/debug/
    http://livna.cat.pdx.edu/fedora/testing/$releasever/$basearch/debug/
    http://wftp.tu-chemnitz.de/pub/linux/livna/fedora/testing/$releasever/$basearch/debug/
    http://ftp-stud.fht-esslingen.de/pub/Mirrors/rpm.livna.org/fedora/testing/$releasever/$basearch/debug/
    http://mirror.atrpms.net/livna/fedora/testing/$releasever/$basearch/debug/
    ftp://mirrors.tummy.com/pub/rpm.livna.org/fedora/testing/$releasever/$basearch/debug/
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-livna
gpgcheck=1

[livna-testing-source]
name=Livna for Fedora Core $releasever - $basearch - Testing - Source
baseurl=
    http://rpm.livna.org/fedora/testing/$releasever/SRPMS/
    http://livna.cat.pdx.edu/fedora/testing/$releasever/SRPMS/
    http://wftp.tu-chemnitz.de/pub/linux/livna/fedora/testing/$releasever/SRPMS/
    http://ftp-stud.fht-esslingen.de/pub/Mirrors/rpm.livna.org/fedora/testing/$releasever/SRPMS/
    http://mirror.atrpms.net/livna/fedora/testing/$releasever/SRPMS/
    ftp://mirrors.tummy.com/pub/rpm.livna.org/fedora/testing/$releasever/SRPMS/
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-livna
gpgcheck=1' > /etc/yum.repos.d/livna-testing.repo
echo "Dodano repo livna-testing"
}

check_root

if [ "$1" = "a" ]; then
  add_all
elif [ "$1" = "t" ]; then
  add_testing
elif [ "$1" = "n" ]; then
  add_nontesting
else
  menu
fi

Odnośnik do komentarza
Udostępnij na innych stronach

oraz "ścieRZkę"

cd /scierzka/do/pliku/winter_skrypt

Poza tym jedna rzecz. Dodajesz repozytoria "na sztywno" wraz z lokalizacją klucza gpg. Wszystko fajnie, tylko problem w tym że nigdzie tego klucza nie importujesz, co może w konsekwencji powodować problemy z yumem. Polecałbym jednak, tam gdzie to możliwe korzystać z wget/rpm -ivh, czyli krótko mówiąc ściągnąć rpm-a ze stronki i go zainstalować - klucze zostaną wtedy dodane i yum nie będzie miał problemu z importem w razie czego.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...