[Решено] Sbopkg: 2 вопроса (Не видит установленных и вопрос о зависимостях.)
Модератор: Модераторы разделов
-
- Сообщения: 1479
- ОС: Slackware
[Решено] Sbopkg: 2 вопроса
Добрый день.
При нажатии List в меню sbopkg не находит установленные пакеты. Пробовал через root’а на всякий случай, не помогло.
Из изменений в конфиге только замена переменной OUTPUT.
И ещё хотел бы узнать требуется ли что-то,кроме команды sqg -p <название программы> и выбор при sbopkg -I использовать файл зависимостей или нет?
При нажатии List в меню sbopkg не находит установленные пакеты. Пробовал через root’а на всякий случай, не помогло.
Из изменений в конфиге только замена переменной OUTPUT.
И ещё хотел бы узнать требуется ли что-то,кроме команды sqg -p <название программы> и выбор при sbopkg -I использовать файл зависимостей или нет?
Последний раз редактировалось UnixNoob 05.11.2020 00:19, всего редактировалось 1 раз.
"Однажды один очень мудрый человек… ничего не сказал. Времена были опасные, да и собеседники ненадёжные"
-
- Сообщения: 3728
- Статус: Многоуважаемый джинн...
- ОС: Slackware64-14.1/14.2
Re: Sbopkg: 2 вопроса
Вроде нет. Если файлы очередей сгенерированы и лежат на своих местах, sbopkg их найдет и сможет использовать.
По команде List не подскажу - не пользовался. Но вроде бы там должны быть видны пакеты, установленные через sbopkg, а не любые.
Равно как и в оболочке для собранного пакета появляется пункт Install, если пакет лежит в определенном каталоге.
Вечером буду дома - гляну, что там к чему.
-
- Сообщения: 1354
Re: Sbopkg: 2 вопроса
Зависит от.
Обычно sbopkg в качестве установленного показывает пакеты с меткой (тегом) SBo, аналог:
$ ls /var/log/packages/*SBo
или с сортировкой по дате установки, свежие выше (-t):
$ ls -t /var/log/packages/*SBo
Теперь достану хрустальный шар, протру тряпочкой, смотрю... Чу!
У вас, если правильно путаю, current, и если к моим ранним советам прислушались, в качестве источника слакбилдов используется хранилище ponce (отличный выбор). Вот только собранные из него пакеты имеют метку (тег) ponce, а не SBo. Возможно дело в этом.
$ ls /var/log/packages/*ponce
Могу ошибаться и дело в чем-то другом. Проверьте.
Для удаления достаточно и штатного менеджера: removepkg, pkgtool, slackpkg remove всегда к вашим услугам.
Выбор репо для sbopkg делается либо явным указанием в /etc/sbopkg/sbopkg.conf, либо в dialog-овом режиме через меню (выбор сохраняется в ~/.sbopkg.conf), либо ключиком командной строки -V репо.
sqg -p пакет
строит очередь для указанного пакета, пользуясь информацией из строки REQUIRES= в файлах .info.
sqg -a
строит очереди для всех пакетов в репо слакбилдов.
# sbopkg -i пакет
при наличии и слакбилда, и файла очереди, спросит, что именно имелось в виду, только пакет или очередь.
# sbopkg -i очередь.sqf
будет собирать очередь, не задавая лишних вопросов про выбор между очередью и пакетом.
Ключей -i в одном вызове может быть больше одного.
Часто может быть полезен ключик -k -- не пересобирать уже установленное.
Добавлено (14:02):
PS. По поводу списка пакетов в sbopkg.Проверил. Ошибался. Дело в другом.
Смотрю в текст скрипта sbopkg версии 0.38.1.
В нем предусмотрено использование суффикса активного репо (используется переменная $REPO_TAG) и получение списка по
find /var/log/packages -type f -name "*$REPO_TAG"
Теперь достаточно вспомнить, что в current /var/log/packages теперь является симлинком, чтобы исправление оказалось тривиальным -- добавьте завершающий слеш к пути: /var/log/packages/ в районе 494 строки sbopkg и во всех остальных упоминаниях этого пути без "/" после packages.
-
- Сообщения: 1479
- ОС: Slackware
Re: Sbopkg: 2 вопроса
Да,я это понимаю. Их и хотел увидеть, я конечно записываю текущие действия, но со временем хотелось бы видеть список.Hephaestus писал: ↑03.11.2020 12:57По команде List не подскажу - не пользовался. Но вроде бы там должны быть видны пакеты, установленные через sbopkg, а не любые.
Я не видел обсуждения репозиториев для sbo. Вы мне о нем писали, если да, значит я как-то прогляделbormant писал(а): ↑03.11.2020 13:46У вас, если правильно путаю, current, и если к моим ранним советам прислушались, в качестве источника слакбилдов используется хранилище ponce (отличный выбор). Вот только собранные из него пакеты имеют метку (тег) ponce, а не SBo. Возможно дело в этом.
$ ls /var/log/packages/*ponce

Инструкция по его установке верная? Две строки в .config?
Thanks to slakmagik, since march 2011, this git repository is included in the default sbopkg set
you can use it on -current setting these two variables in /etc/sbopkg/sbopkg.conf
REPO_BRANCH=${REPO_BRANCH:-current}
REPO_NAME=${REPO_NAME:-SBo-git}
then run sbopkg with the '-r' (remote sync) flag.
If you want to use it temporarly while having another default repository
И правда, не догадался про это,хоть и читал про смену пути и использовал это при поиске ls|grep. Спасибо.bormant писал(а): ↑03.11.2020 13:46Теперь достаточно вспомнить, что в current /var/log/packages теперь является симлинком, чтобы исправление оказалось тривиальным -- добавьте завершающий слеш к пути: /var/log/packages/ в районе 494 строки sbopkg и во всех остальных упоминаниях этого пути без "/" после packages.
Я не понял как два параметра передавать при сборке,
Один через 'имя пакета:Параметр="yes|no"' а второй по цепочке? Или если два требуется,проще slackbuild подправить?
"Однажды один очень мудрый человек… ничего не сказал. Времена были опасные, да и собеседники ненадёжные"
-
- Сообщения: 1354
Re: Sbopkg: 2 вопроса
PPS. По поводу синтаксиса файла очереди
sqg генерирует не самые оптимальные файлы очередей
ограничиваясь простым перечислением того, что найдет в REQUIRES= пакета и всех последующих, но зато простое и рабочее решение.
Тем не менее, есть смысл почитать про то, что может быть в файле очереди кроме тривиального списка -- варианты возможны весьма интересные. Спрашиваете, где почитать? Конечно в документации sbopkg. Собственно про очереди тут:
/usr/doc/sbopkg-*/README-quefiles
sqg генерирует не самые оптимальные файлы очередей

Тем не менее, есть смысл почитать про то, что может быть в файле очереди кроме тривиального списка -- варианты возможны весьма интересные. Спрашиваете, где почитать? Конечно в документации sbopkg. Собственно про очереди тут:
/usr/doc/sbopkg-*/README-quefiles
-
- Сообщения: 3728
- Статус: Многоуважаемый джинн...
- ОС: Slackware64-14.1/14.2
Re: Sbopkg: 2 вопроса
Это Вы про какие параметры спрашиваете?
Куда уж. Все зависимости в нужно порядке - и то хорошо.
Я раньше очереди вручную составлял.
-
- Сообщения: 1354
Re: Sbopkg: 2 вопроса
В самом простом случае
# sbopkg -i что-то -i что-то-ещё -i и-еще-что-то
Если нужно "что-то" и "что-то-ещё" сопроводить флагами слакбилда, их перечисляют через ":":
# sbopkg -i что-то:PARAM1=y:PARAM2=n:PARAM3=maybe -i что-то-еще:PARAM=пам-пам:PARAM9=y ...
-
- Сообщения: 1479
- ОС: Slackware
Re: Sbopkg: 2 вопроса
Про те что в Readme пишут иногда.
Я пока не собираю ничего сложного, зависимостей от силы 4-5. Где-то на просторах попадался скрипт чей-то под это дело,но потерял ссылку, т.к решил что раз есть встроенный способ, то это не потребуется. И даже не помню как на него вышел, т.к искать приходится много.
Нашел, вот такое попадалось.
Документацию я смотрю, но из того что видел это как использовать, про то что могут быть сложности там не писалось. Посмотрю в справке тогда еще.
А что с ponce,почему именно он? Или хотя бы где искать то что вы писали о нем.
"Однажды один очень мудрый человек… ничего не сказал. Времена были опасные, да и собеседники ненадёжные"
-
- Сообщения: 1354
Re: Sbopkg: 2 вопроса
Репо: https://github.com/Ponce/slackbuilds
Описание: https://github.com/Ponce/slackbuilds/wiki
Обсуждение: https://www.linuxquestions.org/questions/slackware-14/sbo-scripts-not-building-on-current-read-1st-post-pls-4175561999/
Текущее репо в sbopkg:
grep ^REPO_ /etc/sbopkg/sbopkg.conf ~/.sbopkg.conf 2>/dev/null
Если видите
REPO_BRANCH=${REPO_BRANCH:-current}
REPO_NAME=${REPO_NAME:-SBo-git}
то это он и есть ;-)
Подробнее:
https://github.com/Ponce/slackbuilds/wiki/configuring-the-current-repository-with-sbopkg
Пару слов про "почему и зачем".
slackbuilds.org (SBo) публикует наборы только для стабильных (номерных) версий Slackware. Очевидно, что чем дальше от выпуска стабильной версии, тем больше изменений приходит в разрабатываемую ветку Slackware current, тем выше шансы, что протестированные для стабильной версии слакбилды в какой-то момент перестанут собираться в current.
Чтобы это победить/возглавить неминуемый бардак, энтузиасты тянут неофициальный форк SBo с исправлениями для current.
Описание: https://github.com/Ponce/slackbuilds/wiki
Обсуждение: https://www.linuxquestions.org/questions/slackware-14/sbo-scripts-not-building-on-current-read-1st-post-pls-4175561999/
Текущее репо в sbopkg:
grep ^REPO_ /etc/sbopkg/sbopkg.conf ~/.sbopkg.conf 2>/dev/null
Если видите
REPO_BRANCH=${REPO_BRANCH:-current}
REPO_NAME=${REPO_NAME:-SBo-git}
то это он и есть ;-)
Подробнее:
https://github.com/Ponce/slackbuilds/wiki/configuring-the-current-repository-with-sbopkg
Пару слов про "почему и зачем".
slackbuilds.org (SBo) публикует наборы только для стабильных (номерных) версий Slackware. Очевидно, что чем дальше от выпуска стабильной версии, тем больше изменений приходит в разрабатываемую ветку Slackware current, тем выше шансы, что протестированные для стабильной версии слакбилды в какой-то момент перестанут собираться в current.
Чтобы это победить/возглавить неминуемый бардак, энтузиасты тянут неофициальный форк SBo с исправлениями для current.
-
- Сообщения: 3728
- Статус: Многоуважаемый джинн...
- ОС: Slackware64-14.1/14.2
Re: Sbopkg: 2 вопроса
А-а-а... Такие я предпочитаю фиксировать в файле, то бишь править .Slackbuild через интерфейс sbopkg.
После чего появляется выбор: запустить оригинальный скрипт или измененный.
Передавать через командную строку хорошо, когда параметров один-два. Если больше, уже не очень интересно.
А если, как в случае ffmpeg (шесть десятков параметров и для каждого можно задать значение), то вообще караул.
Совершенно согласен. Решение по Вашей ссылке мало того, что стороннее, так ещё и почти десятилетней давности. И похоже, что неполное.
У нас-то sbopkg используется, который и тарбол скачивает, и контрольные суммы проверяет, и пакет собирает, и устанавливает, и по обновлениям работает, и вышивать умеет, и на машинке... Ну разве что кофе в постель не приносит.
А там что?
Сначала руками тянем билд...
Потом руками тянем что-то ещё...
Потом руками проверяем зависимости...
Потом надоело, набросали скрипт для автоматизации...
Который дал на выходе список зависимостей...
И?
"Можно скормить sboinstall (А это вообще кто?) или наваять что свое для автоматической сборки."
Здрасьти, приехали.
Нет уж, спасибо.
-
- Сообщения: 1354
Re: Sbopkg: 2 вопроса
Намекаю: их можно фиксировать в файле, сюрприз-сюрприз, очереди ;-)Hephaestus писал: ↑03.11.2020 17:46Такие я предпочитаю фиксировать в файле, то бишь править .Slackbuild через интерфейс sbopkg.
После чего появляется выбор: запустить оригинальный скрипт или измененный.
Передавать через командную строку хорошо, когда параметров один-два. Если больше, уже не очень интересно.
А если, как в случае ffmpeg (шесть десятков параметров и для каждого можно задать значение), то вообще караул.
Повторю, синтаксис файла очереди у sbopkg довольно гибкий, позволяет указывать не только опции сборки пакета, но и ссылаться на другие очереди сборки...
И нет, sqg такими вкусными возможностями не пользуется.
-
- Сообщения: 3728
- Статус: Многоуважаемый джинн...
- ОС: Slackware64-14.1/14.2
Re: Sbopkg: 2 вопроса
Вы, вероятно, сочтете меня тупицей, но я абсолютно не понимаю, зачем это может быть нужно.
Файл очереди (с моей точки зрения) определяет, в каком порядке собирать пакеты - на то она и очередь.
Cборка конкретного пакета определяется файлом .SlackBuild (и мало ли, какие там могут быть нюансы - сами файлы .SlackBuild зачастую устроены по-разному).
Конкретно в случае ffmpeg .SlackBuild содержит внутри себя параметры сборки (несколько десятков), которые можно редактировать. Запихивать всю эту премудрость в файл очереди совершенно незачем.
Сборка конкретного пакета и организация очереди (в том числе генерация файлов) - это две разные задачи.
Скрещивать их - это последнее, что может прийти в голову при сборке, учитывая, что существует несколько видов .SlackBuild для разных языков, а в некоторых случаях в одном .SlackBuild сборка происходит из нескольких тарболов.
-
- Сообщения: 1354
Re: Sbopkg: 2 вопроса
Ну вот, опять не читамши Пастернака (/usr/doc/sbopkg-*/README-q*)... ;-)
С другой стороны, кому как удобно, тот так и поступает, правка так правка.
Но на примере ffmpeg смею обратить внимание на:
1) очередь все равно руками пишете из-за тех самых флагов, что ж может помешать сделать гибко? Хотя, да, "двигатель прогресса" может
2) правки средствами sbopkg: если правильно путаю, после "sbopkg -r" (или успешной сборки, запамятовал) ведут себя они аки тени в полдень. Короче, в подобных ffmpeg случаях не полюбились, осадочек остался (не исключаю, что ложки с тех пор тоже нашлись).
"Сборка пакета и организация последовательности сборки пакета — разные задачи".
Зопейсал
Скажем так, вынужден не согласиться, но переубеждать не стану. Если не забуду, на следующей неделе покажу, как могла бы выглядеть рукописная очередь на сборку ffmpeg. Просто и гибко получается в результате, либо всё это лишние приседания — это уже точно дело вкуса. А о вкусах, как известно, не спорят.
С другой стороны, кому как удобно, тот так и поступает, правка так правка.
Но на примере ffmpeg смею обратить внимание на:
1) очередь все равно руками пишете из-за тех самых флагов, что ж может помешать сделать гибко? Хотя, да, "двигатель прогресса" может

2) правки средствами sbopkg: если правильно путаю, после "sbopkg -r" (или успешной сборки, запамятовал) ведут себя они аки тени в полдень. Короче, в подобных ffmpeg случаях не полюбились, осадочек остался (не исключаю, что ложки с тех пор тоже нашлись).
"Сборка пакета и организация последовательности сборки пакета — разные задачи".
Зопейсал

Скажем так, вынужден не согласиться, но переубеждать не стану. Если не забуду, на следующей неделе покажу, как могла бы выглядеть рукописная очередь на сборку ffmpeg. Просто и гибко получается в результате, либо всё это лишние приседания — это уже точно дело вкуса. А о вкусах, как известно, не спорят.
-
- Сообщения: 3728
- Статус: Многоуважаемый джинн...
- ОС: Slackware64-14.1/14.2
Re: Sbopkg: 2 вопроса
Да. Не читал. Ни Пастернака, ни этот самый README-q*.
Пастернака не читал, ибо не интересует,
README-q* не читал, ибо очередей, созданных sqg вполне достаточно (а может даже и читал, да уже не помню),
сейчас глянул его - ничего интригующего не обнаружил.
Ничего подобного. Очереди руками не пишу. Давно уже.
Конкретно для ffmpeg: флаги проставлены в .SlackBuild,
а в файле ffmpeg.sqf присутствует только сам ffmpeg.
Собирается успешно. Хотя и не слишком быстро.
Не замечал. Правленый .SlackBuild сохраняется под именем .SlackBuild.sbopkg и никуда в дальнейшем не девается. После успешной сборки - точно, после синхронизации - вроде бы тоже. Иначе все мои файлы давно бы разлетелись, а они на месте - сейчас специально проверил.
Если уж на то пошло, файлы очередей в этом смысле ничуть не лучше: обновится версия пакета, могут измениться зависимости, и от прежнего файла очереди останется одно название - содержимое может измениться кардинально.
Ну, что ж. Интересно будет посмотреть. Хотя никаких рукописных очередей для ffmpeg у меня никогда не было. Весь файл очереди - одна строчка.
Да там и так проще некуда: флаги в .SlackBuild один раз проставил - и всё.
Да, их много, но выставлять их приходится, можно сказать, раз в жизни.
Я уж и не помню, когда я это делал. С тех пор уже несколько обновлений прошло - файл всё ещё жив.
Если и были нужны корректировки, то они минимальны и вполне выявляются с помощью diff в том же sbopkg.
-
- Сообщения: 1479
- ОС: Slackware
Re: Sbopkg: 2 вопроса
Увидел это:
Код: Выделить всё
/etc/sbopkg/sbopkg.conf:REPO_ROOT=${REPO_ROOT:-/var/lib/sbopkg}
/etc/sbopkg/sbopkg.conf:REPO_BRANCH=${REPO_BRANCH:-14.2}
/etc/sbopkg/sbopkg.conf:REPO_NAME=${REPO_NAME:-SBo}
Поменяем - посмотрим что и как.
Спасибо за помощь bormant,Hephaestus.
"Однажды один очень мудрый человек… ничего не сказал. Времена были опасные, да и собеседники ненадёжные"