Сборка программного обеспечения из исходных кодов в скользящем выпуске дистрибутива [закрыто]

Одна из возможностей - использовать bind без -x, вставив synopsis в начало строки:

bind "'\C-h": "\C-asynopsis \C-j"

Это было бы нормально с одним аргументом. Более сложной версией будет:

bind '"\C-h": "\C-e !#:0\e^\e\C-] \C-usynopsis\C-j"'

Разбиваем на части:

'\C-e '    end-of-line
' !#:0'    insert space and 1st argument of current line
'\e^'      history-expand-line
'\e\C-] '  character-search-backward (to last space)
'\C-u'     unix-line-discard (delete to beginning of line)
'synopsis' insert 'synopsis' in front of the first argument
'\C-j'     accept-line

Это обрабатывает строку с несколькими аргументами, выполняя synopsis только с первым аргументом. (Я бы также использовал "\C-xh" или "\eh" вместо "\C-h", которые уже могут быть стиранием/задним пробелом/"backward-delete-char")

.
1
26.03.2017, 07:14
1 ответ

Насколько я знаю, единственный "болезненный" с точки зрения перекомпиляции сценарий - это обновление ядра. Тогда вам нужно скомпилировать само ядро вместе со всеми модулями ядра.

Что касается других относительно высокоуровневых пакетов, вам, вероятно, не придется перекомпилировать их большую часть времени, когда зависимость обновляется. Есть лишь несколько случаев, когда зависимости для конкретного пакета меняются настолько радикально, что вам необходимо перекомпилировать зависимый пакет.

В большинстве случаев, когда обновляются эти пакеты "высокого уровня", единственным признаком того, что вам нужно перекомпилировать зависимые пакеты, является внезапное прекращение их работы.

Также полезно читать журналы изменений обновляемых пакетов, поскольку они чаще всего предупреждают о серьезных изменениях в их архитектуре, и хотя у вас есть возможность придерживаться текущей версии, чтобы не перекомпилировать все вещи.

На самом деле, в Slackware есть slackpkgы, которые автоматизируют процесс перекомпиляции некоторых распространенных пакетов и их зависимостей. Также никто не запрещает использовать какой-нибудь пакетный менеджер (apt и т.д.), чтобы облегчить вам жизнь.

Вот несколько ссылок из документации Slackware и Gentoo:

Slackware docs Gentoo docs

1
27.01.2020, 23:46

Теги

Похожие вопросы