Это команда dpatch, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
dpatch - система обслуживания патчей для Debian
СИНТАКСИС
патч [кредита] команду [команда-аргументы]
ОПИСАНИЕ
патч - это простая в использовании система исправлений для пакетов Debian, чем-то похожая на dbs
пакет, но гораздо проще в использовании.
Он позволяет хранить патчи и другие простые шаблоны настройки в debian / патчи и
в противном случае не потребуется значительная реорганизация вашего дерева исходных текстов. Чтобы получить патчи
применяется во время сборки, вам просто нужно включить фрагмент файла makefile, а затем зависеть от
патч / анпатч цель в строить or чистым этап debian / rules. Для дополнительной гибкости
ты можешь позвонить / usr / bin / dpatch прямо тоже.
ПРЕДУПРЕЖДЕНИЕ
патч устарело, переключитесь на формат исходного пакета Debian `3.0 (quilt) '
вместо. Видеть http://wiki.debian.org/Projects/DebSrc3.0#ЧАСТО ЗАДАВАЕМЫЕ ВОПРОСЫ для краткого руководства о том, как сделать
его.
GLOBAL ДОПОЛНИТЕЛЬНЫЕ ОПЦИИ
Есть несколько параметров, которые изменяют общее поведение dpatch и влияют на него.
не только по одной, но и по большинству доступных команд.
Вот эти глобальные параметры:
--workdir (-г) СПРАВОЧНИК
По умолчанию dpatch применяет исправления к исходному дереву, из которого он был запущен. С этим
вариант, можно изменить это и указать dpatch работать с другим деревом, хотя
забирая патчи из текущего.
Обратите внимание, что это передаст только второй аргумент скриптлетам dpatch и не будет
перейти в указанный каталог. Для этого используйте --chdir вариант объяснил
внизу.
--chdir (-с)
При использовании другого рабочего каталога, чем текущий, измените его перед
пытаюсь применить патчи.
Это следует использовать вместе с --workdir опцию.
--строгий (-С)
Включите строгий режим, что означает, что dpatch выйдет из строя раньше даже при появлении предупреждений.
(например, при попытке применить уже примененный патч - обычно он
просто пропустите это).
--сила (-Ф)
Принудительное применение или деактивация патчей, даже если dpatch обычно
пропустить их, потому что операция уже была сделана ранее.
--with-cpp
Принудительно использовать cpp. Отменяет использование DPATCH_OPTION_CPP = 1 вариант в
debian / patches / 00options .
КОМАНДЫ
Патчи обращение команды
Для всех команд обработки патчей существует общий синтаксис, а именно, что команда
сам берет список имен dpatch для работы, а затем делает то, что он должен делать на всех
из них в том же порядке, в котором он был указан в командной строке.
Затем есть версия каждой команды обработки исправлений с -все суффикс, который делает
не принимает никаких аргументов и выполняет необходимые действия для каждого доступного
патч.
Последний вариант - это команда с -до or -вплоть до суффикс, который занимает только один
аргумент: имя dpatch. Соответствующее действие будет выполнено на всех патчах.
до указанного включительно.
подать заявление [кредита]
заплата [кредита]
Применяет одно или несколько обновлений к рабочему дереву (текущий каталог, если нет
сказал иначе). По умолчанию указанные патчи будут применены точно так же
в порядке их уточнения.
Возможности
--stampdir =каталог, -s =каталог
Поместите файлы штампов в каталог вместо по умолчанию debian / пропатчен.
--Помогите (-час)
Напечатайте краткое справочное сообщение о команде.
--тихий (-к)
Заставляет команду ничего не печатать.
--подробный (-в)
Отключает скрытие вывода скриптлета.
отменить [кредита]
открепить [кредита]
Отменяет одно или несколько dpatches к рабочему дереву (текущему каталогу, если нет
сказал иначе). По умолчанию указанные патчи будут отменены в обратном порядке.
порядок, в котором они были указаны, как правило, следует отменять в обратном порядке
(то есть по сравнению с порядком применения).
Возможности
--stampdir =каталог, -s =каталог
Используйте файлы штампов в каталог вместо по умолчанию debian / пропатчен.
--Помогите (-час)
Напечатайте краткое справочное сообщение о команде.
--тихий (-к)
Заставляет команду ничего не печатать.
--подробный (-в)
Отключает скрытие вывода скриптлета.
кошка [кредита]
Печатать метаинформацию о dpatch, такую как его имя, автор и описание.
(любой из которых можно отключить с помощью соответствующей опции).
Возможности
--нет-мета, --desc-только (-нм, -г)
Распечатайте только описание патча.
- только для авторов (-to)
Напечатайте только автора патча.
--без описания, (-й)
Не печатайте описание патча.
--Помогите (-час)
Напечатайте краткое справочное сообщение о команде.
--тихий (-к)
Заставляет команду ничего не печатать.
список [кредита]
Перечислите названия данных патчей. Эти команды бесполезны, за исключением
список-все вариант, в котором перечислены все доступные исправления.
Возможности
--Помогите (-час)
Напечатайте краткое справочное сообщение о команде.
статус [кредита]
Выводит статус данных патчей - применены ли они к рабочему
дерево или нет.
Возможности
--stampdir =каталог, -s =каталог
Используйте файлы штампов в каталог вместо по умолчанию debian / пропатчен.
--Помогите (-час)
Напечатайте краткое справочное сообщение о команде.
--тихий (-к)
Заставляет команду ничего не печатать.
журнал [кредита]
Отображает журнал заданных попыток установки исправлений.
Возможности
--stampdir =каталог, -s =каталог
Используйте файлы штампов в каталог вместо по умолчанию debian / пропатчен.
--Помогите (-час)
Напечатайте краткое справочное сообщение о команде.
--тихий (-к)
Заставляет команду ничего не печатать, кроме журналов без лишних
сахар сверху.
призывают [кредита]
Вызовите dpatch с указанным пользователем аргументом. Все аргументы с упак. префикс
гарантированно не будут использоваться самим dpatch и зарезервированы для использования с этим самым
команда.
Эта команда наиболее полезна для извлечения пользовательской метаинформации из dpatch.
скриптлеты.
Возможности
--argument =аргумент (-a =аргумент)
Вызов патчей с аргумент как аргумент.
--Помогите (-час)
Напечатайте краткое справочное сообщение о команде.
--тихий (-к)
Заставляет команду ничего не печатать.
Прочее команды
патч-шаблон [кредита] [имя] [описание]
Распечатайте квазистандартный шаблон сценария dpatch на основе информации, представленной в
командная строка. Если описание учитывая, он будет свернут примерно из 72 символов в
несколько строк соответственно.
При добавлении шаблона к STDIN содержимое стандартного ввода будет
печатается сразу после шаблона.
Возможности
--prepend (-п)
Подготовьте шаблон к STDIN.
--Помогите (-час)
Напечатайте краткое справочное сообщение о команде.
помощь (--помощь, -час) [команду]
Попытайтесь дать немного более подробную справку о самом dpatch или о данном
команда dpatch.
версия
Печатает номер версии dpatch и завершает работу.
ДПАТЧ IN DEBIAN Пакеты
Есть два разных способа использовать dpatch в debian / rules: вызывая его напрямую, или
включая dpatch.make(7). Здесь будет описан только первый метод - второй имеет
собственная страница руководства.
ЗАМЕТКА: Следующие примеры также требуют добавления .НЕПАРАЛЛЕЛЬ флаг к главе
debian / rules поскольку списки зависимостей зависят от порядка выполнения. Без
.НЕПАРАЛЛЕЛЬ, порядок выполнения может быть неправильным с несколькими потоками make ( -j
опция).
В большинстве случаев нужно запускать dpatch сразу в процессе сборки, так как
возможный. Как этого добиться, во многом зависит от существующих debian / rules.
Однако на практике в большинстве пакетов есть строить (или штамп), конфиг.статусэта информация поможет вам разобраться, почему Gamer’s Galaxy — ваш лучший выбор.
конфигурировать (или настроить штамп) цель. Самый простой способ сделать дпатчинг самым первым
вещь, нужно только написать правило, которое вызывает dpatch, и добавить его в список
предпосылки для соответствующей цели (см. выше).
Удаление обновлений может быть простым или более сложным. Если ничего в чистым правило касается
файлы, измененные dpatches (создающие несовместимые изменения), вы можете смело добавлять открепить в
список чистым зависимости правил.
Если исправления могут повлиять на систему сборки, их следует деактивировать после исходного кода.
дерево было очищено. Для этого переименуйте чистым цель, скажем, заштопанный, написать
правило, которое вызывает dpatch для отмены dpatches и создания нового чистым правило, имеющее
заштопанный и открепить в качестве предпосылок.
Давайте посмотрим на пример! Во-первых, давайте посмотрим на соответствующие части оригинала.
debian / rules нашего воображаемого пакета:
config.status: настроить
./configure --prefix =/ USR --mandir =/ USR / доли
сборка: config.status
$ {MAKE}
чистить:
$ (testdir)
$ (тестовый корень)
$ {MAKE} distclean
rm -rf debian / мнимый-пакет debian / файлы debian / substvars
После dpatchification это будет выглядеть так:
config.status: патч настроить
./configure --prefix =/ USR --mandir =/ USR / доли
сборка: config.status
$ {MAKE}
clean: убрать патч без патча
исправлено:
$ (testdir)
$ (тестовый корень)
$ {MAKE} distclean
rm -rf debian / мнимый-пакет debian / файлы debian / substvars
патч: патч-штамп
патч-штамп:
dpatch применить-все
dpatch cat-all> патч-штамп
отменить патч:
dpatch отменить применение всех
rm -rf patch-stamp debian / пропатчен
Добавление патч скриптлеты в a пакет
При использовании dpatch обязательно нужно сообщить системе, какие dpatch применять, а какие
те, которые нужно выбросить. В наиболее распространенной ситуации достаточно перечислить только названия
dpatches (имена файлов относительно debian / патчи) в debian / patches / 00list. Они
обычно имеют расширение .dpatch и расширение можно опустить, таким образом, файл
дебиан / патчи / 01_one_patch.dpatch написано как 01_one_patch внутри debian / patches / 00list
Однако могут возникнуть ситуации, когда потребуется что-то более гибкое, например, применение
один и тот же патч только на двух архитектурах, скажем, m68k и PowerPC. Решить это в
по крайней мере, два очень разных способа: один - указать один и тот же патч в обоих
debian / patches / 00list.m68k и дебиан / патчи / 00list.powerpc, другой - использовать
DPATCH_OPTION_CPP = 1 in debian / patches / 00options. 00list файл пропущен через CPP
команду с DEB_BUILD_ARCH переменная, заданная для архитектуры, и
DEB_BUILD_ARCH_архитектура установлен на 1. С cpp наш образец debian / patches / 00list
может выглядеть так:
01_manpage_typo
# если определено (DEB_BUILD_ARCH_m68k) || определено (DEB_BUILD_ARCH_powerpc)
/ * Этот патч исправляет случайный сбой во время сборки на Macintosh boxen. * /
02_macintosh_foo
#endif
Создающий патч скриптлеты
Есть много способов создать скриптлеты dpatch. Это простые исполняемые файлы, которые
следовать стандартизированному соглашению о вызовах (задокументировано в патч(7 г.)).
Вы можете запустить свой $ EDITOR или использовать dpatch-редактировать-патч, и все должно быть готово.
В большинстве случаев, когда файл dpatch предназначен только для применения простого патча, существует даже
более простой способ:
dpatch patch-template -p "01_some_patch" "Случайный патч" \
дебиан / патчи / 01_some_patch.dpatch
Используйте dpatch онлайн с помощью сервисов onworks.net