У них есть исправления, примененные к дереву исходного кода, которые адаптируют местоположения.
Доступно достаточно «стандартов», чтобы каждый дистрибутив мог выбирать, основываясь на (личных) предпочтениях и / или исторической практике.Редко бывает решение, которое имеет преимущества только только . Иногда это раздражает / сбивает с толку, но согласованность внутри одного дистрибутива является наиболее важной задачей: это приводит к меньшему беспорядку и упрощению угадывания того, где что-то может быть для программы Y, если вы уже знаете, где подобные вещи (например, файлы установки / конфигурации) находятся для программы X.
Мой пакет python ruamel.yaml
доступен в Debian Sid. Раньше он зависел от ruamel.base
, и пользователи, которые устанавливали через PyPI, могли иметь более старые несовместимые версии ruamel.base
. Использование setup.py
/ PyPI не является настоящим управлением пакетами, поэтому вы не можете удалить пакет, ранее установленный через зависимости. Я решил проблему для пользователей PyPI, создав новую версию ruamel.base
, которая устранила проблемы, связанные со старыми пакетами ruamel.base
, и сделала ruamel.yaml
зависит от этой более новой версии.
Для Сида это не проблема: более старые версии ruamel.base
не были установлены (или могли быть удалены с помощью управления пакетами). Поэтому они применяют патч , который вы можете найти на информационной странице ruamel.yaml
для Sid , который удаляет зависимость ruamel.yaml
от ruamel.base
.
Другие дистрибутивы имеют аналогичные настройки. Например. если вы посмотрите на спецификации создания исходного файла RPM (например,g для RedHat / CentOS / SuSE), вы увидите, что вы объединяете исходный исходный архив пакета с одним или несколькими патчами, которые будут применены перед настройкой / компиляцией.
Это то, что cpio
для :копирования списка файлов. Я всегда нахожу направления «вход» и «выход» сбивающими с толку, и я рад, что у GNU есть --create
и --extract
.
cd your/source/dir
cpio --create < my-files-to-copy.txt | (cd your/dest/dir && cpio --extract)
Существует множество вариантов cpio
для управления такими вещами, как сохранение права собственности/временных меток. Страница руководства поможет вам. Важно знать, что cpio
не будет создавать каталоги, если вы (a )не скопируете их в поток (, например, в свой список файлов для копирования )или (b )используйте опцию --make-directories
на стороне извлечения.