Установка программ в Slackware

SLAX, Deep Style, ZenWalk

Модератор: Модераторы разделов

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Установка программ в Slackware

Сообщение drBatty »

sunny1983 писал(а):
21.12.2014 10:46
4. Вызов сценария установки

очевидно нужно посмотреть в этот сценарий.
bormant писал(а):
21.12.2014 22:29
Если чистится /tmp, то весь описанный мусор благополучно погибает при чистке /tmp сам по себе.

/tmp НУЖНО чистить. Не только по этой причине.
sunny1983 писал(а):
23.12.2014 11:32
например установите bind и тут же удалите его - у вас останется файл /etc/rc.d/rc.bind, потому как устанавливался не он, а /etc/rc.d/rc.bind.new - защита от затирания конфига при обновлении пакета.

ну по уму конфиг программы "искароппки" должен лежать в /usr/share/, причём этот конфиг должен удаляться removepkg.

Его должен перекрывать конфиг в /etc/, который правит админ. Этот конфиг сам не должен ни создаваться, ни удаляться.

Наконец пользователь может опционально свой конфиг создать в $HOME, перекрывающий вышеперечисленные. Он же должен его удалять.

Короче правило как в C/C++ с памятью, удалять должен тот, кто делал.

Ну и как в C/C++, это идеал. Не все так делают.

Ну и как в C/C++, это приводит к трудноуловимым проблемам.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
sunny1983
Сообщения: 357
ОС: GNU/Linux 4.x (Fedora, Debian)
Контактная информация:

Re: Установка программ в Slackware

Сообщение sunny1983 »

Bizdelnick писал(а):
23.12.2014 13:20
А в связи с чем такая странная потребность? Поддержка старых карточек дропалась именно после 96 и 173 версий. То есть если карточка работает с 100, то она будет работать и с 173.

Сейчас объясню. Я поставил с slackbuilds.org nvidia-legacy96-kernel и nvidia-legacy96-driver. В /var/log/Xorg.0.log мне пишет следующее:

Код: Выделить всё

[ 68667.246] (II) LoadModule: "nvidia"
[ 68667.248] (II) Loading /usr/lib/xorg/modules/drivers/nvidia_drv.so
[ 68667.323] (II) Module nvidia: vendor="NVIDIA Corporation"
[ 68667.323]     compiled for 4.0.2, module version = 1.0.0
[ 68667.323]     Module class: X.Org Video Driver
[ 68667.326] ================ WARNING WARNING WARNING WARNING ================
[ 68667.326] This server has a video driver ABI version of 14.1 that is not
supported by this NVIDIA driver.  Please check
http://www.nvidia.com/ for driver updates or downgrade to an X
server with a supported driver ABI.
[ 68667.326] =================================================================
[ 68667.326] (EE) NVIDIA: Use the -ignoreABI option to override this check.
[ 68667.326] (II) UnloadModule: "nvidia"
[ 68667.326] (II) Unloading nvidia
[ 68667.327] (EE) Failed to load module "nvidia" (module requirement mismatch, 0)

GeForce.jpg

Опция ignoreABI не помогла. Стало быть использовать или более старую версию драйвера или более старую версию Xorg.
Версии драйвера, предлагаемые на сайте nvidia, вот, на скриншоте. Как видно, 100.14.10 - самая старая. А почему в них нумерация не по порядку сам не понимаю.
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20800
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Установка программ в Slackware

Сообщение Bizdelnick »

Нумерация не по порядку, потому что 96 поддерживалась и обновлялась дольше (может и сейчас поддерживается, не знаю).
А с чего Вы взяли, что надо ставить более старый драйвер? Написано же:
sunny1983 писал(а):
26.12.2014 20:34
Please check http://www.nvidia.com/ for driver updates or downgrade to an X server with a supported driver ABI.
Надо либо обновлять драйвер, либо откатывать иксы.
И почему бы с такой древней карточкой не использовать свободный драйвер?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
sunny1983
Сообщения: 357
ОС: GNU/Linux 4.x (Fedora, Debian)
Контактная информация:

Re: Установка программ в Slackware

Сообщение sunny1983 »

Хорошо, тогда как поставить Xorg более ранней версии?
А что вы там сказали про свободный драйвер? В нём иксы из-за отсутствия видеоускорения тормозить не будут?
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20800
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Установка программ в Slackware

Сообщение Bizdelnick »

Когда это иксы тормозили из-за отсутствия видеоускорения? Они и на vesa себя прекрасно чувствуют.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
sunny1983
Сообщения: 357
ОС: GNU/Linux 4.x (Fedora, Debian)
Контактная информация:

Re: Установка программ в Slackware

Сообщение sunny1983 »

Вопрос эксперту по Salix OS alv
В Salix OS присутствуют одна или две сборки ядра Линукс. kernel-huge нашёл, а kernel-generic нет. kernel-huge грузится с initrd или без?
Спасибо сказали:
QWERTYASDF
Сообщения: 989
Статус: Чайник со свистком
ОС: GNU/Linux

Re: Установка программ в Slackware

Сообщение QWERTYASDF »

Предлагаю прикрепить тему.
Спасибо сказали:
Аватара пользователя
yars
Сообщения: 1144
Статус: Slacker!
ОС: Slackware64-current

Re: Установка программ в Slackware

Сообщение yars »

как поставить Xorg более ранней версии?

Самый очевидный ответ -- пересобрать из более старого релиза. Исходники в каталоге source/x дерева каталогов Slackware.
kernel-huge грузится с initrd или без?

Без.
Slackware64-current/Xfce 4.12/Acer TravelMate 5760
-------------
Registered Linux User #557010
Спасибо сказали:
QWERTYASDF
Сообщения: 989
Статус: Чайник со свистком
ОС: GNU/Linux

Re: Установка программ в Slackware

Сообщение QWERTYASDF »

Если хочу сделать загрузочную инсталляционную флешку и не хочу копировать все содержимое корня дистрибутива, то не могли бы подсказать какие файлы действительно нужны. Нет, я понимаю что за меня никто не знает что мне нужно. Просто может есть не совсем очевидные нюансы касательно некоторых файлов/каталогов, учитывая которые по вашему мнению лучше было-бы копирнуть данные файлы/каталоги.

На всякий случай - имею в виду этот каталог:

ftp://ftp.slackware.com/pub/slackware/slackware-14.1/:

Код: Выделить всё

./ANNOUNCE.14_1
./BOOTING.TXT
./CHANGES_AND_HINTS.TXT
./CHECKSUMS.md5
./CHECKSUMS.md5.asc
./COPYING
./COPYING3
./COPYRIGHT.TXT
./CRYPTO_NOTICE.TXT
./ChangeLog.txt
./FAQ.TXT
./FILELIST.TXT
./GPG-KEY
./PACKAGES.TXT
./README.TXT
./README.initrd
./README_CRYPT.TXT
./README_LVM.TXT
./README_RAID.TXT
./README_UEFI.TXT
./RELEASE_NOTES
./SPEAKUP_DOCS.TXT
./SPEAK_INSTALL.TXT
./Slackware-HOWTO
./UPGRADE.TXT
./extra
./isolinux
./kernels
./pasture
./patches
./slackware
./source
./testing
./usb-and-pxe-installers


Спасибо сказали:
Аватара пользователя
Hephaestus
Сообщения: 3729
Статус: Многоуважаемый джинн...
ОС: Slackware64-14.1/14.2
Контактная информация:

Re: Установка программ в Slackware

Сообщение Hephaestus »

QWERTYASDF писал(а):
24.04.2015 21:21
Если хочу сделать загрузочную инсталляционную флешку и не хочу копировать все содержимое корня
Ой, ну что Вы в самом деле... флешка меньше двух гигов что ли? Места жалко?
Я делал проще: разделил флешку на два раздела. На один раздел залил штатный слаковский инсталлятор - получилась загрузочная инсталляционная флешка.
На другой раздел положил iso-файлы.
При загрузке с этой флешки запускается инсталлятор, в процессе установки нас спрашивают, откуда ставить будем. Указываем путь к iso-файлам. Он находит нашу изошку и использует её как установочный диск.
Вот и всех делов. И нечего мучаться, думать, какие пакеты берем, какие не берем. Размер изошки - чуть больше двух гигов, а сэкономите Вы (выкинув совсем уж ненужные вещи) максимум гиг, но скорее всего меньше. При современных объемах флешек - это пустяк. И уж точно это не тот размер, ради которого стоит ломать голову, учитывая, что с неполным образом обязательно забудется что-то нужное.

Говоря коротко, лучше иметь полный образ в виде iso-файла - надёжней будет. При нынешних объемах файл на ~2Гб - это немного. Записывать на болванку его не обязательно - инсталлятор прекрасно подхватывает изошку в процессе установки.
Пускай скрипят мои конечности.
Я - повелитель бесконечности...
Мой блог
Спасибо сказали:
QWERTYASDF
Сообщения: 989
Статус: Чайник со свистком
ОС: GNU/Linux

Re: Установка программ в Slackware

Сообщение QWERTYASDF »

Да?...Ну ладно : )
Спасибо сказали:
Аватара пользователя
bormant
Сообщения: 1354

Re: Установка программ в Slackware

Сообщение bormant »

Сам установщик -- это загрузчик в MBR (isolinux/syslinux), его файлы в /isolinux, ядро в /kernels, образ системы с необходимыми утилитами в /isolinux/initrd.img. Чтобы установочная среда могла поставить систему, она должна мочь дотянуться до файлов пакетов из /slackware*/ в ISO, на разделе, по ftp/http/NFS/smb. Строго говоря, чтобы комфортно взлететь может быть достаточно наборов a (базовая система), ap/slackpkg (для удобной до установки желаемого), l (общие библиотеки), n (сеть), по желанию k, d, x, xfce, xap (чтоб два раза не вставать). KDE (если нужен именно он), из kdei потом доставляется нужный язык, не надо эту серию ставить целиком. В extra есть словари для aspell, bash-completion и другие полезняшки. /source на этом этапе точно ни к чему.
Кое что про установочное окружение: http://docs.slackware.com/howtos:slackware...nstall_from_hdd
Штатно поддерживается установка по PXE, см. http://docs.slackware.com/start?id=ru:slackware:pxe_install
Спасибо сказали:
QWERTYASDF
Сообщения: 989
Статус: Чайник со свистком
ОС: GNU/Linux

Re: Установка программ в Slackware

Сообщение QWERTYASDF »

Странно, но кажется, что практически все поняла : ) Хотя, наверное, время покажет обратное.
Спасибо сказали:
QWERTYASDF
Сообщения: 989
Статус: Чайник со свистком
ОС: GNU/Linux

Re: Установка программ в Slackware

Сообщение QWERTYASDF »

Решила немного поэкспериментировать с установкой дабы выяснить непонятные этапы. Записала загрузочную флешку, куда скопировала iso (disk1/2) файлы отсюда. В Setup-е в "выбрать раздел с пакетами", соответственно выбрала флешку, последовало сообщение об успешном нахождении пакетов, далее меню выбора нужных пакетов из списка. Вот тут не очень понятно то, что в этом списке перечислены следующие категории: A, D, K, T, TCL, X, XAP, XFCE. А где AP, F, L, N?
Спасибо сказали:
Аватара пользователя
bormant
Сообщения: 1354

Re: Установка программ в Slackware

Сообщение bormant »

Вы доверились автоматическому поиску ISO, у вас на флешке 2 файла, подходящих под маску, автомат взял последний (об этом однозначно свидетельствует список наборов), а не первый, не рассчитан он на несколько образов. Переключитесь в другую консоль (Alt+F2), смонтируйте ISO первого диска, например, в /d1, покажите установщику этот каталог. Либо уберите второй ISO в сторонку еще до запуска установщика (переместить в отдельный каталог или переименовать, чтобы не подходил под маску).

Если позволяет флешка, проще dd-кнуть на нее DVD-шный образ, он гибридный и содержит все необходимое. Насчет CD-d1 не помню, надо глянуть, скорее всего он тоже гибридный, остальное потом доустановите со второго ISO или из сети.


PS. Ах да, содержимого набора A там тоже нет, установщик его показывает в списке вне зависимости от наличия каталога /cdrom/slackware*/a, в отличие от остальных.

PPS. Глянул, первый CD slackware-14.1-install-d1.iso тоже гибридный.
Спасибо сказали:
QWERTYASDF
Сообщения: 989
Статус: Чайник со свистком
ОС: GNU/Linux

Re: Установка программ в Slackware

Сообщение QWERTYASDF »

Спасибо, после работы попробую.

А можно при установке как-то задать сразу два диска в качестве источников пакетов? Что если смонтировать оба образа вручную и указать сначала каталог с фс disk-1, а после disk-2? Просто как-то "два раза вставать" не хочется по фэн-шую т.к. почему-то уверена, что Slackware должен позволять так делать?...

Кстати, я сначала (почти) так и делала - монтировала вручную iso-1. Смутило тогда то, что вообще до всякого указания источников при нажатии меню "выбор категорий по" - вроде все категории уже стояли отмеченные. Я подумала - а как тогда убедиться, что указанные источники "зачлись"?
Спасибо сказали:
Аватара пользователя
bormant
Сообщения: 1354

Re: Установка программ в Slackware

Сообщение bormant »

QWERTYASDF писал(а):
09.06.2015 09:35
как-то задать сразу два диска в качестве источников пакетов?
Взять DVD. Если буквально два диска за один проход -- нет. Да и с практической точки зрения это смысла имеет мало, ибо и без того способов доставить пакеты в устанавливаемую систему более чем достаточно.

Вариант 1: на установочных дисках наборы имеют внутри сценарий ./install-packages. Кстати, там любопытные комментарии ;-)
Вариант 2: по завершении установщика доставляем, указывая новый корень, при помощи installpkg только желаемое или вообще всё:

Код: Выделить всё

# (cd /cd2/slackware*/; installpkg -root /mnt */*t?z)

Вариант 3: ставим систему (на самом деле для добавления из локального источника достаточно набора A), перегружаемся, все остальное доставляем изнутри любым пригодным способом (installpkg, upgradepkg --install-new, pkgtool, slackpkg (если поставлен он сам и необходимое ему), ...)

Самое главное, не стоит относиться к установщику как к чему-то мистическому, обычная компактная Linux-система и сценарий оболочки, позволяющий не забыть последовательность действий при разворачивании пакетов, кое-какие подробности прячущий "под капот".
Спасибо сказали:
QWERTYASDF
Сообщения: 989
Статус: Чайник со свистком
ОС: GNU/Linux

Re: Установка программ в Slackware

Сообщение QWERTYASDF »

Здравствуйте.
Spoiler
Да, пожалуй это размазывание из пустого в порожнее. Вот интересует логика/инструментарий для обновлений системы. Пока что в рамках одного релиза. Подскажите пожалуйста, правильны ли соответствующие утверждения и ответьте на ряд вопросов : )

Обновляется только "основная" ветвь дистрибутива т.е. каталоги /slackware/slackware-*/{slackware,source}. Новые пакеты появляются в каталоге /patches, это появление фиксируется в файле /ChangeLog.txt.

- Обновления в основном касаются серьезных уязвимостей для системы, но бывают и в случае просто доработки пакета?

- В каталоге /patches находятся пакеты, готовые к установке на чистую систему т.е. если раньше определенного пакета небыло в системе, [s]
то его можно скопировать из каталога patches и инсталлировать через installpkg, а не ставить сначала из основного каталога с последующим обновлением?

- В цикле обновления пакетов дистрибутива, конкретный пакет не дробится на несколько и не становится дробной частью большего пакета?

Для обновления системы имеются штатные pkgtools (куда входят installpkg,removepkg,upgradepkg) и slackpkg, также предлагается использовать rsync. Если не считать еще "полуродной" репозиторий Slackbuild.org (про обновление с которого у меня пока что не хватило сил прочитать и сформулировать вопросы), то остальные инструментарии имеют резон в достаточно специальных и ограниченных случаях.

- Как понимаю, для систематических обновлений рекомендуется slackpkg, как самое оптимальное средство и для новичков и для опытных танкистов. Дело в том, что я хочу использовать минимально необходимый и максимально простой и надежный инструмент (для этого и хочу вообще перейти на Slackware) и раньше "как-то казалось", что буду для всех задач по установке/удалению/обновлению софта использовать именно pkgtools. С другой стороны, терять часы при сомнительной выгоде в тонкости познаний и выработке правильной рабочей парадигмы тоже не хочется, если оно сомнительно...Ведь как увидела в /ChangeLog.txt - обновления выходят достаточно часто, бывает с интервалом буквально в дня два. Ну и вопрос в том, стоит ли заморачиваться с upgradepkg и вручную (или отдельно юзать diff) находить обновления, скачивать, вчитываться и ставить, или лучше просто запускать несколько строчек с slackpkg? Полностью ли это средство замещает pkgtools в плане надежности и т.п.? Оно ведь для установки/удаления/обновления запускает именно installpkg,removepkg,upgraоdepkg и все соответствующие журналы ведутся также, как если эти утилиты были запущены вручную, или есть достаточно существенная разница?[s]


Помогите прояснить опции slackpkg.

update - закачивает список пакетов.
upgrade-all - показывает диалоговое окошко со списком обновлений пакетов и предложением обновить.
А что делает директива

Код: Выделить всё

slackpkg check-updates
?
Читала man slackpkg и их вэб-страничку (на которой вообще упоминания данной опции нету). Однозначного ответа не нашла. Могу только предполагать, что оно показывает added/removed пакеты, которые соответственно можно будет удалить/добавить опциями clean-system/install-new, так?
Разобралась.
Спасибо сказали:
QWERTYASDF
Сообщения: 989
Статус: Чайник со свистком
ОС: GNU/Linux

Re: Установка программ в Slackware

Сообщение QWERTYASDF »

А зачем changelog в репозитории одного релиза включает в себя записи, относящиеся к временному диапазону предыдущей версии? И почему в этих двух логах записи эти различаются (путями и названиями пакетов, а также в одном логе нету записей об удаленных пакетах в другом)? Как вообще соотносятся между собой changelog-и нового стабильного и старого стабильного дистрибутивов в течении времени после выпуска первого?
Спасибо сказали:
Аватара пользователя
bormant
Сообщения: 1354

Re: Установка программ в Slackware

Сообщение bormant »

ChangeLog.txt -- это на великом и могучем "Журнал изменений", если сделано изменение в репозитории, его описание заносится (вставляется в начало) в журнал. Формат: обычный текст для чтения человеком (изначально), некоторая структура соблюдается для поддержки автоматической обработки тем же slackpkg.

Если правильно помню, при смене мажорного номера старые записи до предыдущего мажорно номера подчищаются. Официально поддерживается апгрейд только с предыдущей на строго следующую версию. Поэтому, с официальной позиции относительно обновлений, наличие журнала между предыдущими версиями излишне. Но с практической точки зрения может иметь значение :-)

Каждая запись лога самостоятельна (с учетом общей для группы записей временной отметки) и описывает единичное изменение в репозитории: обновление, добавление, удаление пакета. Не совсем понял про "пути", возможно речь о частях дерева вне каталога slackware*/, вроде patches/, kernels/, isolinux/, usb-and-pxe-installers/, или дополнительных репозиториях дистрибутива extra/, testing/, pastures/. В любом случае, фиксируется то, что изменилось, где изменилось, иногда с текстовым комментарием, почему изменилось, обычный журнал регистрации изменений. После выпуска номерной версии все изменения в нее выпускаются в patches/, записи об этом также заносится в журнал. Все изменения в current идут в основное дерево пакетов slackware*/ и тоже заносятся в журнал. Журнал вторичен, пост-фактум проведенных модификаций, узелки на память.

При выпуске журнал чистится от старых записей, но даже если этого не сделать, не велика беда, записи журнала датированы, и понять, что к чему относится, не составит труда.
Спасибо сказали:
Аватара пользователя
yars
Сообщения: 1144
Статус: Slacker!
ОС: Slackware64-current

Re: Установка программ в Slackware

Сообщение yars »

Если посмотреть внимательно на ChangeLog из 14.0 и 14.1, то будет видно, что новые записи соответствуют лишь пакетам с обновлениями безопасности. В ChangeLog'и релизов включаются записи с момента выхода предыдущего релиза по текущий релиз плюс записи обновлений до момента окончания срока поддержки, а в ChangeLog current - все записи с момента выхода актуального стабильного релиза. Потом current замораживается и выходит очередной релиз, а записи о прошлом релизе так и остаются.
Slackware64-current/Xfce 4.12/Acer TravelMate 5760
-------------
Registered Linux User #557010
Спасибо сказали:
QWERTYASDF
Сообщения: 989
Статус: Чайник со свистком
ОС: GNU/Linux

Re: Установка программ в Slackware

Сообщение QWERTYASDF »

А чем "Upgraded" отличается от "Rebuilt"? Что означает первое, я вроде понимаю - обновление, устраняющее проблемы функциональности и/или безопасности. При "rebuilt", как заметила, версия программы не (не всегда?) меняется, но меняется версия сборки. Это какие-то изменения, относящиеся больше к пакетному менеджменту и прочим издержкам, не имеющим отношения непосредственно к программе?
Спасибо сказали:
Аватара пользователя
bormant
Сообщения: 1354

Re: Установка программ в Slackware

Сообщение bormant »

Все еще проще.

Upgraded -- обновлен -- это обновление версии ПО, то есть изменение, пришедшее из апстрима.
Rebuilt -- перестроен -- это изменение в процессе сборки пакета из той же версии исходников, состоящее в применении заплаток, изменении ключей сборки и т.п.
Спасибо сказали:
Аватара пользователя
yars
Сообщения: 1144
Статус: Slacker!
ОС: Slackware64-current

Re: Установка программ в Slackware

Сообщение yars »

Патрик пересобирает пакеты, зависящие от других пакетов, в случае если вторые обновились, то первые могут перестать работать или начать работать не так как ожидается.
Slackware64-current/Xfce 4.12/Acer TravelMate 5760
-------------
Registered Linux User #557010
Спасибо сказали:
QWERTYASDF
Сообщения: 989
Статус: Чайник со свистком
ОС: GNU/Linux

Re: Установка программ в Slackware

Сообщение QWERTYASDF »

А где смотреть зависимости бинарного пакета (с офф-репозитория Слаки) перед его инсталляцией? Я конечно извиняюсь, может недостаточно долго искала. В пакетах mplayer и gimp в каталоге /install не нашла файла с описанием зависимостей. Или для этих пакетов зависимостей в виде других пакетов просто нет??
Спасибо сказали:
Аватара пользователя
Hephaestus
Сообщения: 3729
Статус: Многоуважаемый джинн...
ОС: Slackware64-14.1/14.2
Контактная информация:

Re: Установка программ в Slackware

Сообщение Hephaestus »

Зависимости есть. Автоматики нет.
То есть, в самом пакете зависимости не прописаны, как в deb-пакетах. Это и плюс, и минус. Минус - бывает сложно отследить, чего именно не хватает.
Плюс - нет жестких зависимостей (которые прописаны порой совершенно бестолково) и можно даже заменить одну зависимость на другую. То есть мы сами решаем вопросы зависимостей.

Спокойно ставим пакет (оно поставится), потом используем ldd $(which имя_программы), чтобы посмотреть, чего не хватает.
Процесс не всегда тривиальный и ldd не поможет в случае скрипта. Поэтому рекомендуют слаку ставить в режиме full, тогда уж точно ничего не упустишь.
Если же говорить о slackbuilds.org, то там зависимости указаны и даже автоматизирована сборка с помощью очередей - мы это уже здесь обсуждали.
Пускай скрипят мои конечности.
Я - повелитель бесконечности...
Мой блог
Спасибо сказали:
Аватара пользователя
bormant
Сообщения: 1354

Re: Установка программ в Slackware

Сообщение bormant »

QWERTYASDF
В дополнение к сказанному уважаемым Hephaestus обращу ваше внимание на наличие в хранилище файликов MANIFEST.bz2, например, для Slackware64-14.1 это
slackware64-14.1/slackware64/MANIFEST.bz2
slackware64-14.1/extra/MANIFEST.bz2
slackware64-14.1/testing/MANIFEST.bz2
slackware64-14.1/pasture/MANIFEST.bz2
slackware64-14.1/patches/MANIFEST.bz2

Содержимое этих файлов выглядит примерно так:

Код: Выделить всё

++========================================
||
||   Package:  ./a/aaa_elflibs-14.1-x86_64-3.txz
||
++========================================
drwxr-xr-x root/root         0 2013-10-10 16:00 ./
drwxr-xr-x root/root         0 2013-10-10 16:00 install/
-rw-r--r-- root/root      1030 2013-10-10 16:00 install/slack-desc
-rw-r--r-- root/root      5770 2013-10-10 16:00 install/doinst.sh
drwxr-xr-x root/root         0 2013-10-10 16:00 lib64/
-rwxr-xr-x root/root     20216 2013-07-09 13:59 lib64/libcap.so.2.22
-rwxr-xr-x root/root     41528 2013-07-09 14:03 lib64/libsysfs.so.2.0.1
-rwxr-xr-x root/root     66560 2013-07-09 14:03 lib64/libbz2.so.1.0.6
-rwxr-xr-x root/root     23816 2013-07-09 13:59 lib64/libgpm.so.1.19.0
-rwxr-xr-x root/root     17512 2013-07-09 14:02 lib64/libattr.so.1.1.0
...
то есть содержит список файлов хранилища попакетно и поименно.

Если при ldd $(which gimp) вы получили в выводе что-то вроде

Код: Выделить всё

    libgobject-2.0.so.0 => not found
, то при помощи обычного grep легко ответить на вопрос, какого пакета не хватает:

Код: Выделить всё

# FIL=libgobject-2.0.so
# bzgrep "Package:\|/$FIL" /tmp/MANIFEST.bz2 | grep -B1 $FIL
||   Package:  ./a/aaa_elflibs-14.1-x86_64-3.txz
-rwxr-xr-x root/root    322088 2013-08-07 14:52 usr/lib64/libgobject-2.0.so.0.3600.4
--
||   Package:  ./l/glib2-2.36.4-x86_64-1.txz
-rwxr-xr-x root/root       196 2013-08-07 14:52 usr/share/gdb/auto-load/usr/lib64/libgobject-2.0.so.0.3600.4-gdb.py
-rwxr-xr-x root/root    322088 2013-08-07 14:52 usr/lib64/libgobject-2.0.so.0.3600.4


Если используете slackpkg, то он эти файлики обработал и выжимки из них уже положил в /var/lib/slackpkg/*-filelist.gz, искать по ним руками необязательно, достаточно:

Код: Выделить всё

# slackpkg file-search libgobject-2.0.so
DONE
The list below shows the packages that contains "libgobject-2\.0\.so" file.
[ Status           ] [ Repository               ] [ Package                                  ]
   installed                                        aaa_elflibs-14.1-x86_64-3
   installed                                        glib2-2.36.4-x86_64-1
Спасибо сказали:
Аватара пользователя
bormant
Сообщения: 1354

Re: Установка программ в Slackware

Сообщение bormant »

Для работы с зависимостями также весьма удобен sbbdep: http://slackbuilds.org/repository/14.1/system/sbbdep

Например, для пакета gimp зависимости таковы:

Код: Выделить всё

# sbbdep /var/adm/packages/gimp-*
sync cache (/root/sbbdep.cache)
search for changes
cache is up to date

aaa_elflibs >= 14.1 | alsa-lib >= 1.0.27.2
aaa_elflibs >= 14.1 | bzip2 >= 1.0.6
aaa_elflibs >= 14.1 | expat >= 2.1.0
aaa_elflibs >= 14.1 | freetype >= 2.5.5
aaa_elflibs >= 14.1 | glib2 >= 2.36.4
aaa_elflibs >= 14.1 | libjpeg >= v8a
aaa_elflibs >= 14.1 | libpng >= 1.4.12
aaa_elflibs >= 14.1 | libtiff >= 3.9.7
aaa_elflibs >= 14.1 | zlib >= 1.2.8
aalib >= 1.4rc5
atk >= 2.8.0
babl >= 0.1.10
cairo >= 1.12.16
dbus >= 1.6.12
dbus-glib >= 0.100.2
fontconfig >= 2.10.93
gdk-pixbuf2 >= 2.28.2
gegl >= 0.2.0
ghostscript >= 9.07
glib2 >= 2.36.4
glibc >= 2.17 | glibc-solibs >= 2.17
gtk+2 >= 2.24.20
jasper >= 1.900.1
lcms >= 1.19
libICE >= 1.0.8
libSM >= 1.2.2
libX11 >= 1.6.2
libXcursor >= 1.1.14
libXext >= 1.3.2
libXfixes >= 5.0.1
libXmu >= 1.1.2
libXpm >= 3.5.11
libXt >= 1.1.4
libexif >= 0.6.21
libmng >= 1.0.10
librsvg >= 2.36.4
libwmf >= 0.2.8.4
pango >= 1.34.1
poppler >= 0.24.3
udev >= 182
Спасибо сказали:
QWERTYASDF
Сообщения: 989
Статус: Чайник со свистком
ОС: GNU/Linux

Re: Установка программ в Slackware

Сообщение QWERTYASDF »

О как, спасибо большое!
А не поможете понять формат sbbdep? Как поняла, gimp-у требуется только libgobject-2.0.so - соответственно достаточно, чтоб в системе стоял один какой-нибудь пакет с ней внутри, так? А что тогда за простыня вывода sbbdep в примере выше? : ) Можно поставить любой из указанных пакетов? И что значит "|"?
Спасибо сказали:
Аватара пользователя
bormant
Сообщения: 1354

Re: Установка программ в Slackware

Сообщение bormant »

Кроме того, информацию о зависимостях можно почерпнуть в основанном на Slackware и пакетно совместимом дистрибутиве Salix.
Если посмотреть в его репозиторий (список зеркал http://docs.salixos.org/wiki/Repository_mirrors), то в PACKAGES.TXT (http://download.salixos.org/x86_64/slackware-14.1/PACKAGES.TXT) можно увидеть дополнительные поля со сведениями о зависимостях. Например для gimp картинка такова:

Код: Выделить всё

PACKAGE NAME:  gimp-2.8.6-x86_64-1.txz
PACKAGE LOCATION:  ./slackware64/xap
PACKAGE SIZE (compressed):  12124 K
PACKAGE SIZE (uncompressed):  68090 K
PACKAGE REQUIRED:  aalib,alsa-lib,atk,babl,bzip2,cairo,cups,cxxlibs|gcc-g++,dbus,dbus-glib,expat,fontconfig,freetype,gcc,gdk-pixbuf2,gegl,ghostscript,glib2,gpm,gtk+2,harfbuzz,icu4c,jasper,lcms,lcms2,libICE,libSM,libX11,libXau,libXcomposite,libXcursor,libXdamage,libXdmcp,libXext,libXfixes,libXi,libXinerama,libXmu,libXpm,libXrandr,libXrender,libXt,libcroco,libexif,libffi,libidn,libjpeg,libmng,libpng,librsvg,libtiff,libwmf,libxcb,libxml2,ncurses,openssl-solibs|openssl,pango,pixman,poppler,slang,udev,util-linux,xz,zlib
PACKAGE CONFLICTS:
PACKAGE SUGGESTS:
PACKAGE DESCRIPTION:
gimp: gimp (The GNU Image Manipulation Program)
gimp:
gimp: The GIMP is a powerful tool for the preparation and manipulation of
gimp: digital images.  The GIMP provides the user with a wide variety of
gimp: image manipulation, painting, processing, and rendering tools.  The
gimp: GIMP's open design and extensible architecture make for a very
gimp: powerful end product for photo and image retouching, web graphics
gimp: design, or digital illustration.
gimp:
Расширенные поля -- это "PACKAGE REQUIRED", "PACKAGE CONFLICTS", "PACKAGE SUGGESTS". Эту информацию использует менеджер пакетов slapt-get.

QWERTYASDF писал(а):
30.06.2015 18:05
А не поможете понять формат sbbdep?
Судя по вашим словам, я вас немного запутал.

Первая часть -- это был гипотетический пример того, что делать, если после установки пакета обнаружены отсутствующие библиотеки (поиск в MANIFEST.bz2 или по slackpkg file-search).

Вторая часть -- про sbbdep, который вывел список пакетов, необходимых gimp. При этом, когда одна и та же библиотека присутствует в нескольких пакетах, они выведены через символ вертикальной черты "|". Версии sbbdep выводит текущие установленные в системе.
Спасибо сказали:
Ответить