Mają łatki zastosowane do drzewa kodu źródłowego, które dostosowują lokalizacje.
Dostępnych jest tyle „standardów”, że każda dystrybucja może wybrać według własnych preferencji i / lub praktyk historycznych. Jest to rozwiązanie, które rzadko tylko ma zalety. Czasami jest to denerwujące / mylące, ale spójność w ramach jednej dystrybucji jest najważniejszym celem: prowadzi do mniej bałaganu i łatwiejszego zgadywania, gdzie mogą być rzeczy dla programu Y, jeśli już wiesz, gdzie podobne rzeczy (np. Pliki konfiguracji / konfiguracji) są dla programu X.
Przykład zastosowania łatki
Mój pakiet python ruamel.yaml
jest dostępny w Debianie Sid. Kiedyś była zależna ruamel.base
, a użytkownicy, którzy zainstalowali za pośrednictwem PyPI, mogą nadal mieć starsze, niekompatybilne wersje ruamel.base
. Użycie setup.py
/ PyPI nie jest prawdziwym zarządzaniem pakietami, więc nie można usunąć pakietu wcześniej zainstalowanego przez zależności. Rozwiązałem problem dla użytkowników PyPI, czyniąc nowszą wersję, ruamel.base
która usunęła problemy związane ze starszymi ruamel.base
pakietami i ruamel.yaml
uzależniła się od tej nowszej wersji.
W przypadku Sid nie stanowi to problemu: starsze wersje ruamel.base
nie zostały zainstalowane (lub można je usunąć za pomocą zarządzania pakietami). Dlatego też stosować plastra , który można znaleźć na ruamel.yaml
stronie informacyjnej dla Sid , który usuwa zależność ruamel.yaml
na ruamel.base
.
Inne dystrybucje mają podobne konfiguracje. Np. Jeśli spojrzysz na specyfikacje tworzenia źródłowego pliku RPM (np. Dla RedHat / CentOS / SuSE), zobaczysz, że łączysz oryginalne oryginalne archiwum pakietu z jedną lub kilkoma łatkami, które zostaną zastosowane przed konfiguracją / kompilacją .