Возможно ли обновление данных пакетов на Slackware 14 без полного обновления на current? Интересует последовательность сборки и установки пакетов.
Обновление mesa, xorg, xf86-video-intel
Можно обновляться безболезненно бинарными пакетами, пока не обновлены ключевые пакеты системы, например, glibc. Всё, что собрано с обновлённой glibc -- потенциальный источник проблем (см. ChangeLog.txt). Поэтому можно взять из -current новые glibc, gcc и доставлять остальное вместе с зависимостями.
Если нужно что-то небольшое, можно пересобрать в 14.0. Но по ходу пьесы может потребоваться сборка много чего ещё, что в -current уже собрано. И со временем различий будет только больше...
Иксы можно частично пересобрать. xorg-server плюс указанные вами пакеты - по-моему, достаточно.
Расскажите очерёдность действий, а то я этого не делал. Без обновления glibc, gcc это возможно? Могу ли я взять пакеты из http://ftp.linux.org.tr/slackware/slackware-current/source/x/ и пересобрать под slackware 14?
Скорее всего, да.Без обновления glibc, gcc это возможно?
Возможно, путанно выразился в прошлый раз, вариантов обычно 2:
1) собрать в свою систему из исходников
2) поднять основные зависимости до -current и брать оттуда только нужные бинарные пакеты.
В варианте (1) иногда встречаются препятствия, когда новый софт требует новых библиотек. Выходов два:
а) если изменения несущественные, убирать руками новые привязки, нужен опыт разработки, знание языка программирования
б) обновлять и библиотеки/зависимости (а это именно то, что происходит в -current). В какой-то момент может оказаться, что размер трудозатрат слишком велик, а получается почти тот же -current.
Примерно:
# mkdir ~/bld; cd ~/bld
# wget -r -nH --cut-dirs=4 ftp://ftp.osuosl.org/pub/slackware/slackware-current/source/x/mesa
# cd x/mesa
# bash *Build
и смотрим, собралось ли, а если нет, чего не хватает. Например:
configure: error: Package requirements (libdrm_intel >= 2.4.38) were not met:
Requested 'libdrm_intel >= 2.4.38' but version of libdrm is 2.4.33
Соответственно идём собирать и ставить libdrm.
# cd ~/bld
# wget -r -nH --cut-dirs=4 ftp://ftp.osuosl.org/pub/slackware/slackware-current/source/x/libdrm
# cd x/libdrm
# bash *Build
...
Slackware package /tmp/libdrm-2.4.42-x86_64-1.txz created.
# upgradepkg --install-new /tmp/libdrm-2.4.42-x86_64-1.txz
...
Package libdrm-2.4.33-x86_64-1 upgraded with new package /tmp/libdrm-2.4.42-x86_64-1.txz.
Продолжаем с mesa:
# cd ~/bld/x/mesa
# bash *Build
...
Slackware package /tmp/mesa-9.1-x86_64-1.txz created.
# upgradepkg --install-new /tmp/mesa-9.1-x86_64-1.txz
Из mesa выделилась в отдельный пакет glu, собираем/ставим по аналогии.
А вот новые X-ы собирать мне совсем не хочется. Если нужно пересобрать отдельно xf86-video-intel из -current в 14.0 -- можно попробовать, x11.SlackBuild это позволяет:
# bash *Build driver xf86-video-intel
Качать исходники целиком необязательно:
# cd ~/bld
# wget -Rtar.xz,tar.bz2,tar.gz -r -nH --cut-dirs=4 ftp://ftp.osuosl.org/pub/slackware/slackware-current/source/x/x11
# cd x/x11/src/driver
# wget ftp://ftp.osuosl.org/pub/slackware/slackware-current/source/x/x11/src/driver/xf86-video-intel-2.21.3.tar.xz
# cd ~/bld/x/x11
# bash *Build driver xf86-video-intel
...
Slackware package /tmp/x11-build/xf86-video-intel-2.21.3-x86_64-1.txz created.
...
Package xf86-video-intel-2.21.3-x86_64-1.txz installed.
Package xf86-video-intel-2.19.0-x86_64-1 upgraded with new package /tmp/x11-build/xf86-video-intel-2.21.3-x86_64-1.txz.
ps. x11.SlackBuild по умолчанию сам устанавливает собранное в соответствии с порядком обновления/сборки. Если пересобираете отдельный пакет (несколько пакетов) и такая функциональность не нужна, можно отключить:
# Upgrade packages as they are built.
# This is default. To not upgrade, pass UPGRADE_PACKAGES=no (or anything else).
UPGRADE_PACKAGES=${UPGRADE_PACKAGES:-yes}
# UPGRADE_PACKAGES=no bash *Build driver xf86-video-intelbormant спасибо большое! пересобрал всё что нужно.