forktracer.conf - konfiguracja programu apt-forktracer
Program
apt-forktracer zgłasza "niestandardowe" pakiety
zainstalowane w systemie. Pliki konfiguracyjne tego programu
umożliwiają ignorowanie (pominięcie zgłaszania)
wybranych z nich, o ile spełniają pewne warunki. Program czyta
plik
/etc/apt/forktracer.conf oraz pliki
/etc/apt/forktracer.d/*.conf (za wyjątkiem plików
ukrytych).
Plik konfiguracyjny składa się z dowolnej ilości zwrotek,
rozdzielonych jedną lub wieloma pustymi liniami. Format zwrotki jest
następujący:
Package: pakiet
Accept-Origin: źródło1
Track-Origin: źródło2
Track-Version: wersja
Wszystkie linie w zwrotce są wymagane, a ich znaczenie jest
następujące:
- pakiet
- nazwa pakietu, którego dotyczy dana zwrotka
- źródło1
- wartość pola Origin
źródła, z którego należy
ignorować dany pakiet. Pakiet zostanie zignorowany, jeśli
jego kandydująca wersja pochodzi ze
źródła1, i jednocześnie
spełniony jest warunek dany w polach Track-*. Specjalna
wartość * oznacza, że należy
ignorować pakiet niezależnie od źródła
z którego pochodzi wersja kandydująca.
- źródło2
- wartość pola Origin
źródła, którego najnowszą wersję
należy śledzić. Specjalna wartość
* oznacza, że należy śledzić
ogólnie najnowszą dostępną wersję.
- wersja
- to wymagany numer najnowszej wersji dostępnej ze
źródła źródło2.
Oprócz dosłownego numeru wersji, można tu
także użyć jednej z dwóch wartości
specjalnych: =candidate - oznaczająca aktualną
wersję kandydującą, oraz =candidate-base -
oznaczająca wersję podstawową (patrz niżej)
aktualnej wersji kandydującej.
Powyższa zwrotka powoduje pominięcie pakietu
pakiet z
wyjścia programu, o ile kandydująca wersja pakietu pochodzi ze
źródła
źródło1, i
jednocześnie najnowsza wersja tegoż pakietu dostępna ze
źródła
źródło2 jest
równa
wersja.
Jeśli dla danego pakietu istnieje więcej niż jedna zwrotka,
to jest on pomijany jeśli choć jedna z nich pasuje do obecnej
sytuacji.
Wersję podstawową uzyskuje się poprzez obcięcie z
końca danej wersji najkrótszego napisu zaczynającego
się od tyldy. Na przykład dla wersji
1:1.2-3~4~5 wersja
podstawowa to
1:1.2-3~4.
Jeśli dla pewnego pakietu
pakiet nie ma żadnej zwrotki w
konfiguracji, to program działa tak, jakby istniały
następujące dwie zwrotki:
Package: pakiet
Accept-Origin: *
Track-Origin: dystrybutor
Track-Version: =candidate
Package: pakiet
Accept-Origin: *
Track-Origin: dystrybutor
Track-Version: =candidate-base
gdzie
dystrybutor to identyfikator dystrybutora systemu, określony
przez wynik komendy
lsb_release --id lub przez pole
DISTRIB_ID w
pliku
/etc/lsb-release.
apt-forktracer zgłasza pakiety niedostępne z żadnego
źródła oficjalnego, na przykład:
puppet-softwarelab (0.2) [SoftwareLab: 0.2 0.1]
Aby tego uniknąć, należy dodać do pliku
konfiguracyjnego następującą zwrotkę:
Package: puppet-softwarelab
Accept-Origin: SoftwareLab
Track-Origin: *
Track-Version: =candidate
Jeśli dodatkowo "przypniemy" pakiet do
źródła "release o=Softwarelab", to taka
konfiguracja spowoduje, że
apt-forktracer ostrzeże nas,
jeśli w jakimś innym źródle pojawi się taki
pakiet w wersji nowszej niż dostępne ze
źródła SoftwareLab.
Instalacja backportu ma podobny efekt jak instalacja pakietu nieoficjalnego:
spamc (3.2.3-0.volatile1) [Debian: 3.1.7-2] [volatile.debian.org: 3.2.3-0.volatile1]
Aby wymusić pomijanie tego pakietu, należy dodać
analogiczną zwrotkę do konfiguracji:
Package: spamc
Accept-Origin: volatile.debian.org
Track-Origin: *
Track-Version: =candidate
W tej sytuacji niewielka zmiana wersji pakietu oficjalnego (na przykład
na 3.1.7-2etch1) pozostanie niezauważona. Konfiguracja ta nadaje
się więc wyłącznie w przypadkach, gdy ufamy,
że osoba udostępniająca zainstalowany przez nas backport
śledzi zmiany wersji stabilnej i będzie wydawać
poprawione backporty, zawierające niezbędne zmiany z edycji
stabilnej. Jeśli nie mamy takiego zaufania, należy
użyć następującej konfiguracji.
Czasami pojawia się sytuacja, gdy wprowadziliśmy do pakietu
niewielkie poprawki, i chcemy wiedzieć, gdy pojawi się nowsza
wersja oficjalna, aby móc utworzyć nową wersję
poprawioną.
policyd-weight (0.1.14-beta-6etch2.0.sl.1) [Debian: 0.1.14-beta-6etch2] [SoftwareLab: 0.1.14-beta-6etch2.0.sl.1]
Jest wtedy przydatna poniższa konfiguracja:
Package: policyd-weight
Accept-Origin: SoftwareLab
Track-Origin: Debian
Track-Version: 0.1.14-beta-6etch2
Warto zauważyć, że jeśli tworząc
poprawioną wersję pakietu zastosujemy się do pewnej
konwencji numeracji wersji, to do uzyskania tego efektu wystarczy opisana
wyżej
Konfiguracja domyślna. W tym przypadku
wystarczyłoby nadać pakietowi wersję
0.1.14-beta-6etch2~sl.1 i powyższa zwrotka konfiguracji
stałaby się zbędna. Co ważniejsze, odpada wtedy
konieczność aktualizacji konfiguracji przy wydawaniu nowej
wersji pakietu, ponieważ konfiguracja domyślna jest generowana
automatycznie na podstawie obecnej sytuacji.
/etc/apt/forktracer.conf
/etc/apt/forktracer.d/*.conf
apt-cache(8),
apt-forktracer(8),
apt_preferences(5).