Как я обновлял Mini-Pentoo 2006.1

Как то меня заинтересовал один из LiveCD дистрибутивов Mini-Pentoo 2006.1.
Да вот главная его проблема в том, что уж больно он стар.

Одним словом я решил попробовать обновить Mini-Pentoo 2006.1 до актуального состояния. В любом случае тем кто решит обновлять старую gentoo мои заметки будут интересны.

Tools List поведает любому желающему о содержании LiveCD.

На самом LiveCD, как и стоило ожидать, корневая файловая система запакована в squashfs поетому для начала

emerge sys-fs/squashfs-tools

А распаковывается любой файл *.squashfs командой unsquashfs.

Далее я надеюсь что вы в курсе что такое chroot а главное как он настраивается

Так вот далее все с чем я столкнулся уже войдя в chroot Mini-Pentoo 2006.1 при попытке его обновления.

Первое на чем я споткнулся было

> emerge --pretend portage

These are the packages that would be merged, in order:

Calculating dependencies... done!
[blocks B     ] <sys-apps/portage-2.1.4_rc1 (is blocking app-shells/bash-3.2_p33)
[blocks B     ] <sys-apps/util-linux-2.13 (is blocking sys-apps/coreutils-6.10-r2)
[ebuild     U ] sys-apps/sandbox-1.2.18.1-r2 [1.2.12] 
[ebuild     U ] app-shells/bash-3.2_p33 [3.1_p16] USE="-plugins% -vanilla%" 
[ebuild     U ] sys-apps/portage-2.1.4.4 [2.1-r1] USE="-epydoc%" 
*** Portage will stop merging at this point and reload itself,
    then resume the merge.
[ebuild     U ] sys-devel/automake-wrapper-3-r1 [1-r1] 
[ebuild     U ] sys-devel/autoconf-wrapper-5 [3-r1] 
[ebuild  N    ] app-arch/lzma-utils-4.32.6  USE="-nocxx" 
[ebuild     U ] sys-devel/m4-1.4.11 [1.4.4] USE="-examples%" 
[ebuild     U ] sys-devel/autoconf-2.61-r2 [2.59-r7] 
[ebuild  NS   ] sys-devel/automake-1.10.1
[ebuild  N    ] sys-apps/acl-2.2.47  USE="-nfs -nls" 
[ebuild     U ] sys-apps/coreutils-6.10-r2 [5.94-r1] USE="acl* -vanilla% -xattr%" 
[ebuild     U ] dev-python/pycrypto-2.0.1-r6 [2.0.1-r5]

Решение оказалось довольно банально…

emerge --nodeps bash
emerge --nodeps portage

Кое что оказалось замаскированным

!!! All ebuilds that could satisfy ">=dev-libs/nspr-4.7.1" have been masked.
!!! One of the following masked packages is required to complete your request:
- dev-libs/nspr-4.7.1 (masked by: ~x86 keyword)

For more information, see MASKED PACKAGES section in the emerge man page or 
refer to the Gentoo Handbook.
(dependency required by "dev-libs/nss-3.12" [ebuild])

!!! All ebuilds that could satisfy ">=net-libs/xulrunner-1.9.0.1" have been masked.
!!! One of the following masked packages is required to complete your request:
- net-libs/xulrunner-1.9.0.1 (masked by: ~x86 keyword)

For more information, see MASKED PACKAGES section in the emerge man page or 
refer to the Gentoo Handbook.
(dependency required by "www-client/mozilla-firefox-3.0.1" [ebuild])

Решение тут вообще банальное просто поразмаскировывать требуемые ebuild-ы.
Дальше следовала вот такая страшня на вид бяка

[blocks B     ] =x11-base/xorg-x11-6.9 (is blocking x11-drivers/xf86-video-tga-1.1.0, 
x11-libs/libXdamage-1.1.1, x11-base/xorg-server-1.3.0.0-r6, x11-proto/xf86vidmodeproto-2.2.2, 
x11-drivers/xf86-video-fbdev-0.3.1, x11-libs/libX11-1.1.4, x11-proto/xf86driproto-2.0.3, 
x11-libs/libXrandr-1.2.1, x11-libs/libXvMC-1.0.4, x11-proto/glproto-1.4.9, x11-apps/xinit-1.0.5-r1, 
media-fonts/encodings-1.0.2, x11-proto/bigreqsproto-1.0.2, x11-apps/xauth-1.0.2, x11-libs/libXdmcp-1.0.2, 
x11-apps/xkbcomp-1.0.3, media-fonts/font-util-1.0.1, x11-libs/libXinerama-1.0.2, x11-libs/libXxf86vm-1.0.1, 
x11-libs/libXfixes-4.0.3, x11-proto/xcmiscproto-1.1.2, x11-apps/xclock-1.0.3, x11-drivers/xf86-video-ark-0.6.0,
x11-drivers/xf86-video-s3virge-1.9.1, x11-drivers/xf86-video-i810-2.1.1, x11-libs/libXmu-1.0.3, 
x11-proto/xproto-7.0.10, x11-proto/xf86rushproto-1.1.2, x11-apps/setxkbmap-1.0.4, 
x11-drivers/xf86-video-sis-0.9.4, x11-proto/damageproto-1.1.0, x11-libs/libXScrnSaver-1.1.2, 
x11-drivers/xf86-video-neomagic-1.1.1, x11-apps/mkfontdir-1.0.3, x11-libs/libXp-1.0.0, x11-apps/rgb-1.0.1, 
x11-proto/recordproto-1.13.2, x11-proto/xf86dgaproto-2.0.3, x11-libs/libXi-1.1.3, 
x11-drivers/xf86-video-nsc-2.8.2, x11-apps/xhost-1.0.2, x11-drivers/xf86-video-sisusb-0.8.1, 
x11-drivers/xf86-video-vesa-1.3.0, x11-drivers/xf86-video-s3-0.5.0, media-fonts/font-adobe-utopia-type1-1.0.1,
x11-proto/evieext-1.0.2, x11-proto/printproto-1.0.3, app-doc/xorg-docs-1.4-r1, x11-proto/xf86miscproto-0.9.2,
x11-proto/fontcacheproto-0.1.2, x11-libs/libXau-1.0.3, x11-apps/xrandr-1.2.2, 
x11-drivers/xf86-video-mga-1.4.6.1, x11-libs/libxkbfile-1.0.4, x11-proto/resourceproto-1.0.2, 
x11-proto/kbproto-1.0.3, x11-libs/libXt-1.0.5, x11-proto/renderproto-0.9.2, 
x11-drivers/xf86-video-cirrus-1.1.0, x11-drivers/xf86-video-chips-1.1.1, x11-drivers/xf86-video-imstt-1.1.0,
x11-libs/libXcursor-1.1.9, x11-apps/mkfontscale-1.0.3, media-fonts/font-cursor-misc-1.0.0, 
x11-proto/videoproto-2.2.2, x11-drivers/xf86-video-v4l-0.1.1, x11-drivers/xf86-video-vmware-10.15.0, 
x11-proto/compositeproto-0.4, x11-apps/xsm-1.0.1, x11-drivers/xf86-input-keyboard-1.1.1,
x11-libs/libXxf86misc-1.0.1, x11-libs/libICE-1.0.4, x11-libs/libXxf86dga-1.0.2, x11-libs/libXft-2.1.12,
x11-libs/xtrans-1.0.3, x11-libs/libXtst-1.0.3, x11-drivers/xf86-input-mouse-1.2.3, 
x11-drivers/xf86-video-i128-1.2.1, x11-proto/randrproto-1.2.1, x11-drivers/xf86-video-dummy-0.2.0, 
x11-drivers/xf86-video-siliconmotion-1.5.1, media-libs/mesa-6.5.2-r1, x11-drivers/xf86-input-evdev-1.1.5-r1,
media-fonts/font-adobe-75dpi-1.0.0, x11-drivers/xf86-video-tdfx-1.3.0, x11-drivers/xf86-video-trident-1.2.3,
x11-libs/libXfont-1.3.1-r1, x11-drivers/xf86-video-nv-2.1.9, media-fonts/font-misc-misc-1.0.0, 
x11-libs/libdrm-2.3.0, x11-libs/libXaw-1.0.4, x11-libs/pixman-0.10.0, x11-drivers/xf86-video-vga-4.1.0, 
x11-misc/util-macros-1.1.5, x11-drivers/xf86-video-ati-6.8.0-r1, x11-proto/xineramaproto-1.1.2, 
x11-drivers/xf86-video-voodoo-1.1.1, x11-drivers/xf86-video-i740-1.1.0, x11-proto/scrnsaverproto-1.1.0, 
x11-wm/twm-1.0.3, x11-apps/iceauth-1.0.2, x11-drivers/xf86-video-glint-1.1.1, x11-libs/libXrender-0.9.2, 
x11-proto/fixesproto-4.0, x11-proto/fontsproto-2.0.2, x11-drivers/xf86-video-apm-1.1.1, x11-libs/libSM-1.0.3, 
media-fonts/font-adobe-100dpi-1.0.0, x11-drivers/xf86-video-openchrome-0.2.902, 
x11-drivers/xf86-video-rendition-4.1.3, x11-apps/xmodmap-1.0.3, x11-drivers/xf86-video-savage-2.1.2-r1, 
x11-proto/xextproto-7.0.2, x11-libs/libXext-1.0.3, x11-misc/makedepend-1.0.1, x11-drivers/xf86-video-cyrix-1.1.0, 
x11-proto/inputproto-1.4.2.1, x11-apps/xrdb-1.0.4, x11-apps/xmessage-1.0.2, x11-proto/xf86bigfontproto-1.1.2, 
x11-proto/trapproto-3.4.3, media-fonts/font-alias-1.0.1, x11-libs/libXpm-3.5.7, x11-libs/libXres-1.0.3, 
x11-libs/libfontenc-1.0.4, x11-apps/xdpyinfo-1.0.2, x11-misc/xbitmaps-1.0.1, x11-libs/libXcomposite-0.4.0, 
x11-drivers/xf86-video-tseng-1.1.1, x11-libs/liblbxutil-1.0.1, x11-libs/libXv-1.0.3, 
media-fonts/font-bh-type1-1.0.0, x11-apps/bdftopcf-1.0.0, x11-libs/libxkbui-1.0.2)
[blocks B     ] sys-apps/coldplug (is blocking sys-fs/udev-124-r1)
[blocks B     ] sys-libs/libutempter (is blocking sys-apps/utempter-0.5.5.6)
[blocks B     ] net-misc/etherwake (is blocking sys-apps/net-tools-1.60-r13)
[blocks B     ] sys-apps/utempter (is blocking sys-libs/libutempter-1.1.5)
[blocks B     ] >=sys-fs/udev-089 (is blocking sys-apps/coldplug-20040920-r1)
[blocks B     ] <dev-python/pygtk-2.9 (is blocking dev-python/pygobject-2.14.2)

Total: 428 packages (213 upgrades, 6 downgrades, 200 new, 6 in new slots, 3 reinstalls, 7 blocks), Size of downloads: 131,709 kB

Как видно все застряло на xorg-x11. От сюда понятно, что для нормального обновления надо сделать где то так

emerge --pretend --unmerge xorg-x11
emerge --unmerge xorg-x11

После этого старый xorg-x11 уже не будет мешать а при обновлении системы будет установлена новая версия.

После этой операции осталось

[blocks B     ] sys-apps/coldplug (is blocking sys-fs/udev-124-r1)
[blocks B     ] sys-libs/libutempter (is blocking sys-apps/utempter-0.5.5.6)
[blocks B     ] net-misc/etherwake (is blocking sys-apps/net-tools-1.60-r13)
[blocks B     ] sys-apps/utempter (is blocking sys-libs/libutempter-1.1.5)
[blocks B     ] >=sys-fs/udev-089 (is blocking sys-apps/coldplug-20040920-r1)
[blocks B     ] <dev-python/pygtk-2.9 (is blocking dev-python/pygobject-2.14.2)

Решал так

emerge --unmerge coldplug
emerge --unmerge utempter
emerge -C dev-python/pygtk
emerge --unmerge net-tools
emerge --unmerge etherwake

На данный момент coldplug уже безнадежно устарел теперь его заменяет hal+dbus.
После этого я добавил layman-овский репозитарий e17.

!!! All ebuilds that could satisfy "x11-plugins/e_modules-notification" have been masked.
!!! One of the following masked packages is required to complete your request:
- x11-plugins/e_modules-notification-9999 (masked by: missing keyword)

For more information, see MASKED PACKAGES section in the emerge man page or 
refer to the Gentoo Handbook.
(dependency required by "x11-plugins/e_modules-9999" [installed])

Лечится размаскированием пакетов. Узнал что /usr/portage/local/layman/enlightenment/scripts/package.keywords.livecvs то место где и есть ответ…

Очередная ошибка

[blocks B     ] sys-libs/ss (is blocking sys-libs/e2fsprogs-libs-1.41.1)
[blocks B     ] <sys-fs/e2fsprogs-1.41 (is blocking sys-libs/e2fsprogs-libs-1.41.1)
[blocks B     ] sys-libs/com_err (is blocking sys-libs/e2fsprogs-libs-1.41.1)

Решается она так

emerge -NuDav --fetchonly world #это крайне важно потому как
emerge -C ss com_err e2fsprogs #после этой команды wget установленный в системе не сможет качать вовсе
emerge -NuDav --nodeps e2fsprogs-libs e2fsprogs #ну и собственно само обновление

На этом этапе revdep-rebuild выдал

emerge --oneshot  =dev-perl/XML-Parser-2.34 =dev-perl/gtk-perl-0.7009-r2 =gnome-base/gnome-libs-1.4.2

=media-libs/epsilon-9999 =media-libs/fontconfig-2.2.3 =media-libs/gdk-pixbuf-0.22.0-r5 =media-libs/giflib-4.1.4
=media-libs/imlib-1.9.14-r3 =media-libs/imlib2-9999 =media-plugins/xmms-alsa-1.2.10-r2
=media-plugins/xmms-jack-0.10 =media-plugins/xmms-liveice-1.0.0 =media-plugins/xmms-mikmod-1.2.10
=media-plugins/xmms-mpg123-1.2.10-r1 =media-plugins/xmms-vorbis-1.2.10-r1 =media-sound/xmms-1.2.10-r15
=www-client/mozilla-firefox-1.5.0.3 =x11-libs/cairo-1.0.4 =x11-libs/ecore-9999 =x11-libs/esmart-9999
=x11-libs/evas-9999 =x11-libs/gtk+-1.2.10-r11 =x11-libs/gtk+-2.8.12 =x11-libs/libast-0.6.1
=x11-libs/pango-1.10.3 =x11-libs/startup-notification-0.8 =x11-terms/eterm-9999 =x11-wm/e-9999

..........
Calculating dependencies... done!

emerge: there are no ebuilds to satisfy "=dev-perl/gtk-perl-0.7009-r2".

Просто удалил все на что ругалось. Потом установлю по новой и уже свежие версии.

Опять же revdep-rebuild

All prepared. Starting rebuild...
emerge --oneshot  =app-mobilephone/obexftp-0.18 =dev-cpp/gtkmm-2.8.1 =dev-libs/engrave-9999

=media-libs/edje-9999 =net-im/gaim-1.5.0 =net-wireless/bluez-utils-2.22-r1 =x11-libs/ewl-9999
=x11-misc/engage-9999 =x11-plugins/e_modules-9999
..........
Calculating dependencies… done!

emerge: there are no ebuilds to satisfy "=app-mobilephone/obexftp-0.18".

Сказал что нет app-mobilephone/obexftp-0.18 ну и ладно. Удалил и это. Так же пришлось удалить

emerge --unmerge gparted openssl wpa_supplicant captive nessus-client =net-analyzer/wireshark-0.99.0 =net-misc/neon-0.28.3

Ну и до победного конца осталось только сделать

emerge util-linux
emerge xorg-x11
emerge gcc; emerge -e system; emerge -e world; revdep-rebuild;

После этого можно доустановить все, чего не хватает для полного счастья, и запаковать обратно в squashfs.

Comments