Vereinfachter Zugriff auf das Repository

Posted by Tobi Sat, 20 Aug 2005 18:04:00 GMT

Wollte man alle Pakete aus meinem VDR-Repository nutzen, waren bisher vier Einträge in der sources.list nötig. Nachdem ich mich etwas mit apt-ftparchiv angefreundet habe, reicht nun ein einziger Eintrag.

Eine neue Repository-Struktur soll die Verwendung meines VDR-Repositories etwas vereinfachen. Das Repository ist nun ähnlich den offiziellen Debian-Repositories aufgebaut. Damit können jetzt auch Tools wie debmirror verwendet werden.

Aufbau

Ein übliches Debian-Repository besitzt folgende Repository-Struktur:

+-dists
  | 
  |-stable
  | |-main
  | | |-binary-i386
  | | |-binary-...
  | | +-source 
  | |-contrib
  | | |-binary-i386
  | | |-binary-...
  | | +-source 
  | +-non-free
  |   |
  |   ...
  |
  |-testing 
  | |-main
  | | |
  | | ...
  | ...    
  ...

In Anlehnung daran, sieht es bei mir nun so aus:

+-vdr-experimental
| |
| +-dists
|   | 
|   |-stable
|     |-base
|     | |-binary-i386
|     | +-source 
|     |-backports
|     | |-binary-i386
|     |-addons
|     | |-binary-i386
|     | +-source 
|     |-vdr-multipatch
|     | |-binary-i386
|     | +-source 
|     |-vdr-standard
|       |-binary-i386
|       +-source 
+-vdr-testing
  |
  +-dists
    |
    |-stable
      |
      ...

Das Repository ist gegliedert nach Release-Variante (vdr-experimental, vdr- testing, vdr-stable), Distribution (derzeit nur Sarge) und Sektion (base, backports, addons, vdr-multipatch, vdr-standard).

Der sources.list-Eintrag

Dieser Repository-Struktur entsprechend, sieht der Eintrag in /etc/apt/sources.list wie folgt aus:

deb http://e-tobi.net/<release> <dist> <section> <section> ...

# release = vdr-experimental | vdr-testing | vdr-stable
# dist    = sarge
# section = base | backports | addons | vdr-multipatch | vdr-standard | vdr-bigpatch

z.B.:

#
# Tobi's Experimental VDR Repository (multipatch)
#
deb http://e-tobi.net/vdr-experimental sarge base backports addons vdr-multipatch

Release-Varianten

In vdr-experimental finden sich immer die brandaktuellen Pakete. Dementsprechend oft wird diese Release-Variante aktualisiert. Die Pakete in vdr-experimental könnten u.U. aber noch den einen oder anderen Bug aufweisen.

Tauchen bei einem Paket in vdr-experimental keine offensichtlichen Probleme auf, wird es in vdr-testing aufgenommen.

Erst wenn auch in vdr-testing kein Bugs zutage treten, wird diese Paketversion in vdr-stable übernommen.

Eine Übersicht über die Paketversionen in den verschiedenen Release-Varianten gibt es für vdr und für vdrdevel.

Es sollte immer nur EINE der Release-Varianten in der sources.list angegeben werden!!!

Sektionen

base beinhaltet grundlegende Pakete, die direkt nichts mit VDR zu tun haben. Das sind z.B. Tools oder abhängige Pakete, die es im offiziellen Debian nicht gibt.

Die Pakete in backports stammen aus anderen Debian-Distributionen (z.B. Etch oder Sid) und wurden für Sarge angepasst.

Alle Pakete, welche die VDR-Funktionalität erweitern (nicht jedoch in Form von Plug-ins) sind in der Sektion addons zu finden.

Das VDR-Paket selbst sowie die VDR-Plug-ins stehen in verschiedenen Patch-Variante in einer jeweils eigenen Sektion zur Verfügung:

vdr-multipatch - enthält sehr viele Patches

vdr-bigpatch - nur für vdr 1.2.6-Pakete, enthält nur weniger kritische

                 Patches (z.B. kein AutoPid)

vdr-standard - enthält nur essentielle Patches, die auch im offiziellen

                 Debian-VDR-Paket verwendet werden

Es darf nur EINE der vdr-*-Sektionen in der sources.list verwendet werden!!!

Manchmal wird nur eine bestimmte Sektion benötigt. So z.B., wenn auf einem Rechner ein Xine-basierter Netzwerk-Client installiert werden soll. Die notwendigen Pakete hierfür befinden sich alle in der Sektion base. Folgender sources.list-Eintrag wäre damit ausreichend:

deb http://e-tobi.net/vdr-experimental sarge base

Source-Pakete

Um mit apt-get source <paket-name> Quelltext-Pakete installieren zu können, muss der sources.list folgender Eintrag hinzugefügt werden:

deb-src http://e-tobi.net/<release> <dist> <section> <section> ...

Es gelten die selben Regeln, wie oben beschrieben. Allerdings gibt es keine unterschiedlichen Patch-Varianten, da allen Binärpaketen die selben Source-Paket zugrunde liegen. Die Sektion für VDR und Plugin-Quelltextpakte lautet daher nur "vdr".

z.B.

deb-src http://e-tobi.net/vdr-experimental sarge base backports addons vdr

Prioritäten

Damit sich Pakete, die in der gleichen Version in unterschiedlichen Repositories zu finden sind, nicht beissen, muss in /etc/apt/preferences festgelegt werden, welche Paketquellen mit höherer Priorität zu verwenden sind.

z.B.:

Package: *
Pin: release o=Debian,a=stable
Pin-Priority: 600

Package: *
Pin: release o=ctvdr4
Pin-Priority: 1001

Package: *
Pin: release o=e-tobi.net
Pin-Priority: 1001

Kompatibilität zum alten Schema

Vorerst ist niemand gezwungen, seine sources.list umzustellen. Die alte Repository-Struktur wird weiterhin unterstützt. Irgendwann in ferner Zukunft werde ich diese jedoch zugunsten eines hübscheren Directory-Layouts sicher auch über Bord werfen.

Posted in  | no comments

Comments

Comments are disabled

 

Categories

Tags

.NET dkb mono Notebook squeeze squeezevdr StructureMap survey vdr visa