LINUX.ORG.RU

Ветки Slackware

 


2

1

В чём отличие Slackel от обычной слаки, кроме того, что он current?

Я использую slackpkg+, sbopkg, slapt-get. Можно ли как-то с 14.2 свичнуться на ветку current или на пакетную базу Slackel?

Вопрос в том, какие файлы подправить до запуска обновления.

★★★★★

Последнее исправление: teod0r (всего исправлений: 2)

Есть ли смысл использовать slackpkg+ ?

Если используешь сторонние бинарные репозитории, например AlienBOB или MSB.

Thetan ★★★
()
Ответ на: комментарий от Thetan

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

teod0r ★★★★★
() автор топика
Ответ на: комментарий от teod0r

Да усё просто.

Низкий уровень

Установка, обновление, удаление локальных пакетов.

  • pkgtools (installpkg, upgradepkg, removepkg, makepkg, explodepkg, pkgtool) [bash]
  • spkg [c], по умолчанию в Salix
Высокий уровень

Синхронизация с репозиториями, выкачка оттуда пакетов, вычисление зависимостей, если возможно.

  • slackpkg [bash]
    • slackpkg+ [bash], аддон к предыдущему
  • swaret, сдох
  • slapt-get [c]
SBo

Синхронизация с SBo, выкачка сорцов, сборка — портеж, в общем.

  • sbopkg [c]
  • sbotools [perl], вроде сдох

Не так много вспомнил, казалось больше. Хотя многие слакарщики пишут свои ПМ, myself included.

Thetan ★★★
()

неужели никто не знает?
cast bormant.
что-то кроме зеркал в конфигах пакетных менеджеров и /etc/os-release надо менять?

teod0r ★★★★★
() автор топика
Ответ на: комментарий от teod0r

Про Slackel не скажу, не пользовался, личного опыта нет, а про чужой и сами почитать сможете.

Можно ли как-то с 14.2 свичнуться на ветку current

Процесс ровно тот же, что и при обновлении на новую стабильную версию Slackware:

0. Понимаем, что сторонний самосборный софт придется пересобрать; для SBo использовать репо для current, не для 14.2

1. Меняем в /etc/slackpkg/mirrors путь к хранилищу для current той же разрядности; в /etc/slackpkg/slackpkgplus.conf для сторонних хранилищ используем их версии для current.

2. Поверить /etc/slackpkg/blacklist, исключить из списка ядра и прочие части собственно Slackware.

# telinit 3
# slackpkg update
# slackpkg install-new
# slackpkg upgrade-all
# slackpkg clean-system

Если установка сильно частичная, вместо "slackpkg install-new" есть смысл использовать «понаборный» вариант сообразно своему варианту установки
# slackpkg install a ap l n ...
либо отфильтровать из ChangeLog.txt новые для дерева пакеты (по ": Added") только для своих наборов, принимать решение об установке и ставить индивидуально попакетно. Цель подобных приседаний — не тащить заведомо лишнее.

3. Не все *.new файлы обрабатываются действием «new-config». Не забыть вручную объединить изменения из оставшихся
# find /etc -name \*.new
По умолчанию «new-config» запускается автоматически после фаз загрузки и установки; если автоматическое «new-config» отключено в slackpkg.conf, сперва выполнить явно
# slackpkg new-config


4. Если используется initrd, обновить initrd.
Обновить загрузчик.

5. Если используется пропириетарный видеодрайвер, решаем, пересобирать сейчас или после перезагрузки (если сейчас, то придется руками указать нужную версию ядра, если потом, то сперва грузиться нужно будет в runlevel 3).

6. Перезагрузка.

7. Пересобираем сторонний софт, требующий пересборки.

Примерно как-то так.

Другой вариант: действовать по UPGRADE.TXT.


Есть особенности, присущие именно будущей 15.0. Из обязательно необходимого по памяти:
1) /var/log/{,removed_}{packages,scripts} теперь симлинки, подробнее см. в ChangeLog.txt (или тут: http://www.slackware.ru/forum/viewtopic.php?f=15&t=2028#p14740 ). Проверить, что после обновления каталоги переехали и симлинки созданы. Если нет, руками перенести содержимое /var/log/{,removed_}{packages,scripts} по новым расположениям, создать симлинки вместо каталогов.
2) если настройка раскладки в Х-ах делалась в /etc/X11/xorg.conf.d/90-keyboard-layout.conf
скопированном из /usr/share/X11/xorg.conf.d/, то теперь для evdev и libinput два раздельных файла:
/etc/X11/xorg.conf/9[01]-keyboard-layout-*.conf


Если остались вопросы, задавайте.

bormant ★★★★★
()
Последнее исправление: bormant (всего исправлений: 2)

В чём отличие Slackel от обычной слаки, кроме того, что он current?

Расспрашивал Dimitris о репах Slackel

Здесь моё сообщение по итогам.

igor_ubuntu
()
Ответ на: комментарий от bormant

во время миграции на куррент пришлось очищать /var/lib/slackpkg/ .
потом посреди процесса slackpkg upgrade-all, после обновления wget прервалось. пришлось делать ln -s /usr/lib64/libunistring.so.2.1.0 /usr/lib64/libunistring.so.0

так как у меня fglrx, иксы я не обновлял.
после запуска системы иксы не реагируют ни на какие комбинации клавишь, даже в другой tty нельзя переключиться. плюс экран обрезан — часть приглашения не видно за краями экрана.
сначала подумал что это после clean-system; повторил процесс не делая slackpkg clean-system — то же самое. значит это после upgrade-all.
вопрос: какие пакеты не обновлять, которые отвечают за получение ввода с клавиатуры?

teod0r ★★★★★
() автор топика
Ответ на: комментарий от teod0r

посреди процесса slackpkg upgrade-all, после обновления wget прервалось

Я предупреждал, что в /etc/slackpkg/slackpkg.conf нужно было сделать:

# If this variable is set to "on", all files will be downloaded before the
# requested operation (install or upgrade) is performed.   If set to "off",
# then the files will be downloaded and the operation (install/upgrade)
# performed one by one.  Default=on
DOWNLOAD_ALL=on
В умолчальном варианте сперва все загружается, потом все ставится. В таком варианте наступить на описанную проблему с wget невозможно.
Нет, так нет, хозяин барин.

так как у меня fglrx, иксы я не обновлял

А так можно было? ;-)
Исследовать возможность:
1) обновить X-ы и собрать под них fglrx в том или ином виде,
2) обновить X-ы и использовать один из драйверов из поставки,
3) собрать в current предыдущую подходящую версию X-ов,
4) вернуться на предыдущую версию Slackware,
5) перейти на другой дистрибутив.
Принимать решение сообразно полученным результатам.

Вариант «не обновлять X-ы» на наборе софта с разрывом более 3-х лет сомневаюсь, что прокатит просто так.

bormant ★★★★★
()
Последнее исправление: bormant (всего исправлений: 1)
Ответ на: комментарий от teod0r

fglrx собрался под последние иксы

Это вы как определили (гложут меня смутные сомнения)? Иксы что-то еще в /var/log/Xorg.log говорят?
И что с ядерной частью?

bormant ★★★★★
()
Последнее исправление: bormant (всего исправлений: 1)

А зачем разные ветки? Я помню, хоть и лет 10 назад, просто смотрел конфигурациооный файл, докачивал, собирал и устанавливал основной пакет. Иногда, когда версии не совпадали тупо делал линк под нужную версию, все работало. Правда не слака, а зенволк, но в принцепе тогда было однох...

anonymous
()
Ответ на: комментарий от bormant

Это вы как определили (гложут меня смутные сомнения)?

ну он скомпилировался, собрался в пакет и установился без ошибок.

выяснил что модуль fglrx не подгружается.
при modprobe radeon: exec format error. при этом в dmesg --
module: fglrx: Unknown rela relocation: 4

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

teod0r ★★★★★
() автор топика
Ответ на: комментарий от anonymous

А зачем разные ветки?

просто мне не хватало свежего софта на 14.2, решил перейти на куррент или попробовать какое-то ответвление слаки (хотел попробовать slackel, но у него нет установочного образа, только live, а мне такая установка не катит, нужна с кастомными тагфайлами).
похоже, куррента мне хватит, + возможно какие-то репы из конфига slackpkg+, но не все. первый раз когда обновлял до куррента, со всеми включенными репами в конфиге slackpkg+, которые на куррент, он без создания .new затёр мне rc скрипты в /etc/rc.d/ с меткой # modified by Salix, хотя зеркал Salix я не подключал, а в /var/log/packages/ нету этих файлов в /etc/rc.d/.
теперь сразу все репы не буду подключать, а по одному.

teod0r ★★★★★
() автор топика
Последнее исправление: teod0r (всего исправлений: 1)
Ответ на: комментарий от teod0r

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

можно начать смотреть от xf86-input-keyboard или xf86-input-evdev, libevdev, mtdev проверив по Xorg.0.log, что для ввода использован именно evdev.

bormant ★★★★★
()
Последнее исправление: bormant (всего исправлений: 4)
Ответ на: комментарий от teod0r

пакет отвечающий за ввод с клавиатуры

Мне кажется, вы недооцениваете масштаб проблемы, xorg-server слинкован с
aaa_elflibs | eudev
glibc-solibs | glibc
libX11
libXau
libXaw
libXdmcp
libXext
libXfixes
libXfont2
libXi
libXmu
libXpm
libXrender
libXt
libdmx
libdrm
libepoxy
libglvnd
libpciaccess
libunwind
libxshmfence
mesa
nettle
pixman

Если где-то поменялся только so-name, то это еще полбеды, если осталась бинарная совместимость и можно бросить симлинк со старым именем на новую библиотеку. А если нет?

bormant ★★★★★
()
Ответ на: комментарий от bormant

не могу понять.
скачал в 14.2 slackpkg download 3 пакета xf86-input-keyboard xf86-input-evdev libevdev (mtdev в куррент такой же).
в курренте удалил такие же пакеты и установил 3 скаченных.
после старта системы ничего не изменилось. но в Xorg.0.log пишет что несовместима версия ABI evdev'а: 22 против 21. но до этого было 24. версия та же что и в 14.2 — 2.10.3. но пишет что скомпилировано для 1.18.3, хотя должно быть 1.17.4.
как так?

teod0r ★★★★★
() автор топика
Последнее исправление: teod0r (всего исправлений: 1)
Ответ на: комментарий от teod0r

пишет что скомпилировано для 1.18.3, хотя должно быть 1.17.4

С какой радости-то должно?
14.2 вышла с 1.18.3, 1.17.4 был в ней за полгода до выпуска, см. ChangeLog.txt.
Вот на этом зеркале есть пакеты, находившиеся в дереве в ходе подготовки выпуска (зеркало обновляется по rsync без --delete, пригодно для ручной загрузки, но не пытайтесь прописывать его в mirrors):
http://ftp.pieskovisko.sk/slackware/slackware64-current/
Можете попробовать оттуда вручную наковырять необходимое, вычислив версии по Changelog.txt или по датам файлов пакетов.

bormant ★★★★★
()
Ответ на: комментарий от teod0r

оказалось надо было ещё не обновлять x11-driver.
в итоге иксы завелись.

teod0r ★★★★★
() автор топика

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

teod0r ★★★★★
() автор топика
Ответ на: комментарий от teod0r

мне нужна предыдущая версия пакета. где брать слакбилды предыдущих версий?

Чем короче вопрос, тем дольше на него отвечать, описывая варианты того, что мог иметь в виду вопрошавший ;-)

1) Slackware*-current, бинарный пакет
Пойти на кумулятивное зеркало, взять прошлую версию пакета. Пример такого зеркала:
http://slackware.uk/cumulative/
http://ftp.pieskovisko.sk/slackware/
2) Slackware*-stable, бинарный пакет
Пойти на кумулятивное зеркало, взять прошлую версию пакета. Пример такого зеркала:
http://ftp.pieskovisko.sk/slackware/
3) Slackware*-current, слакбилд
Пойти в VCS, взять прошлую версию слакбилда. Например там:
http://git.slackware.nl/current/
4) Slackware-stable, слакбилд
тут обычно подойдет текущий слакбилд с точностью до патчей.
5) slackbuilds.org, слакбилд
Пойти в VCS, взять прошлую версию слакбилда.
https://git.slackbuilds.org/slackbuilds/
https://gitlab.com/SlackBuilds.org/slackbuilds/

Нужно понимать, что если апстрим для проекта не менял инструменты сборки (autotools -> cmake -> ninja -> ...), то с точностью до патчей подойдет тот слакбилд, что есть в наличии, достаточно поменять в нем версию на нужную.

PS. upgradepkg не различает UP-/DOWN- grade, ему все, что отличается по версии — апгрейд.

bormant ★★★★★
()
Последнее исправление: bormant (всего исправлений: 1)

bormant, я тебе этот вопрос уже задавал, но тогда не понял ответа, а сейчас вообще этот комментарий найти не могу:
нужно ли делать rsync_slackware_patches.sh? или это токо когда из исходников собираешь?

teod0r ★★★★★
() автор топика
Ответ на: комментарий от teod0r

Ну вот какая разница, как содержимое
$ЗЕРКАЛО/slackware-ВЕРСИЯ/patches/
забирать?
# slackpkg upgrade-all
вполне достаточно. Если несколько систем и трафик дорогой, в slackpkg.conf можно сказать не удалять загруженное (DEL_ALL=no, если правильно путаю) и пошарить его для остальных.

bormant ★★★★★
()
Ответ на: комментарий от bormant

/patches/ — это каталог, куда в стабильной ветке приходят обновления, пакеты в /patches/packages, исходники их в /patches/source.

bormant ★★★★★
()
Ответ на: комментарий от teod0r

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

Я поискал, откуда ноги растут с этим сценарием
https://docs.slackware.com/slackware:beginners_guide

Другой способ состоит в настройке сценария для проверки обновлений один раз в день и рассылке уведомления по электронной почте, когда обновления станут доступны.
Для этого, у Вас должен быть настроен sendmail (хотя оно запускается из коробки), и вам нужно знать, как создать задачу в cron. И конечно же, иметь сценарий, который делает эту работу.

Это как альтернатива существующей рассылки.

Ну такое себе ;)

Кстати, посмотреть, есть ли обновления, можно по
# slackpkg check-updates

bormant ★★★★★
()
Последнее исправление: bormant (всего исправлений: 1)

bormant, а на current'е slapt-get не работает?
для куррента версии не нашёл. та версия, что осталась от 14.2 выдаёт segmentation fault во время slapt-get -u (во время Verifying checksum signature)

teod0r ★★★★★
() автор топика
Ответ на: комментарий от teod0r

sbopkg, похоже, на курренте тоже не работает

Откуда такие выводы? Просто репо нужно выбирать соответствующее, для current от ponce.
Или в чем выражается «не работает»?

bormant ★★★★★
()
Ответ на: комментарий от teod0r

В 'man sbopkg' описан ключик -V, который в варианте -V ? выводит список известных репо. Для current это
SBo-git/current
Соответственно:

REPO_BRANCH=${REPO_BRANCH:-current}
REPO_NAME=${REPO_NAME:-SBo-git}

И в /usr/sbin/sqg строки явного их задания закомментировать, чтобы из единого конфига брал.

bormant ★★★★★
()
Последнее исправление: bormant (всего исправлений: 1)
Ответ на: комментарий от teod0r

а slapt-get не заставить работать?

Если установлен из бинарного пакета от 14.2, для начала есть смысл пересобрать из его слакбилдом исходников под current.
Если проблема останется, отписать автору.
Ну или самому поковырять на предмет падения и исправления.

bormant ★★★★★
()
Ответ на: комментарий от teod0r

та версия, что осталась от 14.2 выдаёт segmentation fault во время slapt-get -u (во время Verifying checksum signature)

Slackware64-current (Wed Nov 13 03:37:49 UTC 2019)

# cd /tmp
# git clone https://software.jaos.org/git/slapt-get
# cd slapt-get
# make dopkg
# upgradepkg --install-new slapt-get-*t?z

Правим /etc/slapt-get/slapt-getrc под current.
# slapt-get -u
Не падает.

bormant ★★★★★
()
Последнее исправление: bormant (всего исправлений: 1)
Ответ на: комментарий от bormant
...
Verifying checksum signature [http://sourceforge.net/projects/slackel/files/repo/x86_64/current/]...Checksums signature could not be verified
Sources failed to download, correct sources and rerun --update
teod0r ★★★★★
() автор топика
Ответ на: комментарий от teod0r

Не падает, уже хорошо.
Есть подозрение, что тут подпись и руками не проверится (покривел источник).
Руками пробовали?

bormant ★★★★★
()
Ответ на: комментарий от bormant

подправил конфиг (взял новый .new).
теперь не может проверись сумму уже с другого адреса.

а как руками проверить?

teod0r ★★★★★
() автор топика
Ответ на: комментарий от teod0r

а как руками проверить?

Забираем файл и подпись, проверяем подпись, например для основного зеркала

# cd /tmp
# wget http://slackware.osuosl.org/slackware64-current/CHECKSUMS.md5{,.asc}
# gpg --verify CHECKSUMS.md5.asc

Если подпись правильная, в выводе будет строка
gpg: Good signature from ...

Если подписанный файл изменен, в выводе будет строка
gpg: BAD signature from ...

Если ключа нет в связке, в выводе будет строка
gpg: Can't check signature: public key not found

Команда добавления ключей в slapt-get
# slapt-get --addkeys

Команда добавления ключей в slackpkg/slackpkg+
# slackpkg update gpg

bormant ★★★★★
()
Ответ на: комментарий от bormant

вручную проверил — Good signature from
при # slapt-get --add-keys говорит для каждого адреса Retrieving GPG key ...Cached
GPG key could not be imported.
для slackpkg всё нормально

teod0r ★★★★★
() автор топика
Последнее исправление: teod0r (всего исправлений: 1)
Ответ на: комментарий от teod0r

GPG key could not be imported.

А должен:
GPG key succefully imported.
или
GPG key already present.

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

wget -qO- http://slackware.osuosl.org/slackware64-current/GPG-KEY | gpg --import -


для slackpkg всё нормально

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

bormant ★★★★★
()
Последнее исправление: bormant (всего исправлений: 2)
Ответ на: комментарий от bormant
# wget -qO- http://slackware.osusl.org/slackware64-current/GPG-KEY | gpg --import -
gpg: key 40102233: "Slackware Linux Project <security@slackware.com>" not changed
gpg: Total number processed: 1
gpg:              unchanged: 1
teod0r ★★★★★
() автор топика
Ответ на: комментарий от teod0r

Вероятно и с ключом от Патрика все будет нормально.

gpg: key 40102233: «Slackware Linux Project <security@slackware.com>» not changed

Все нормально, ключ в связке ключей уже есть точно такой же, не изменен.

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

при # slapt-get --add-keys говорит для каждого адреса
Retrieving GPG key ...Cached
GPG key could not be imported.

Вот для этих, но адресов их не давали, а в хрустальном шаре всё плывёт и плохо видно, давно не чищен.

bormant ★★★★★
()
Последнее исправление: bormant (всего исправлений: 1)
Ответ на: комментарий от bormant

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

teod0r ★★★★★
() автор топика
Последнее исправление: teod0r (всего исправлений: 1)
Ответ на: комментарий от bormant

ладно на слаке ssh настроить. но на андроиде его настраивать не хочется. тут в консоли мало что работает. поищу готовых программ для передачи файлов.

teod0r ★★★★★
() автор топика
Ответ на: комментарий от teod0r

Что там настраивать-то на Android-е, любое приложение ssh-клиент поставить и всех делов.

bormant ★★★★★
()
Последнее исправление: bormant (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.