The Funtoo Linux project has transitioned to "Hobby Mode" and this wiki is now read-only.
Instrucciones para Actualizar/1.3-release
Actualizar a 1.3 removerá la compatibilidad de 32-bit de tu sistema, ya que tenemos un soporte multilibrería obsoleto. Por favor sea consciente de esto antes de comenzar el proceso de actualización.
El objetivo de estas instrucciones es proveer a los usuarios de Funtoo Linux con un set de instrucciones consistente y de confianza para actualizar Funtoo Linux de la versión 1.2 a 1.3. Por favor ayúdenos a asegurar que estas instrucciones son completas y guíe a los usuarios a través de alguna potencial complicación. Dado que este es un wiki, realice los cambios necesarios en la página para que estas instrucciones sean 100% confiables. ¡Gracias!
Antes de Actualizar a 1.3
Antes de actualizar a 1.3, necesita realizar un ego sync
sobre la todavía versión 1.2. Si es que se encuentran errores con ego sync
que no hubieran completado exitosamente con xorg-kit
o gnome-kit
, realice los siguientes pasos para corregir la estructura de archivos.
Primero, agregue lo siguiente a /etc/ego.conf
:
/etc/ego.conf
[global]
kits_depth = 20
Después, ejecute los siguientes comandos:
root # rm -rf /var/git/meta-repo root # ego sync
Ahora, asegúrese que tiene ego 2.7.2
o una versión superior instalada, ya que esto es un requerimiento para con la actualización.
Fijar Versión y Sincronización
En /etc/ego.conf
, ingresa la versión 1.3:
/etc/ego.conf
[global]
release = 1.3
Ahora, ejecute ego sync
:
root # ego sync
Opcional Reubique Pure64
Si esta sobre una arquitectura pure64
de Funtoo Linux, será necesario ejecutar los siguientes comandos para actualizar el archivo /etc/portage/make.profile/parent
para que deje de hacer referencia al perfil pure64
, ya que se encuentra obsoleto.
Ejecute el siguiente comando:
root # epro arch x86-64bit root ##y##WARNING: Previous value: x86-64bit -- typically, user should not change this. === Habilite Perfiles: === arch: x86-64bit build: current subarch: intel64-westmere flavor: core mix-ins: mediaformat-gfx-common mix-ins: mediaformat-gfx-extra >>> Set arch to x86-64bit. Updating profiles at /etc/portage/make.profile/parent...
También será necesario actualizar subarch
usando un similar conjunto de argumentos a epro
, Por ejemplo de intel64-westmere-pure64
a intel64-westmere
.
Opcional Remover Xorg-Server
El lanzamiento de la versión 1.3 contiene un nuevo retrabajo de xorg-server, y por lo tanto es mejor "remover" la versión antigua de xorg-server antes de la actualización:
root # emerge -C xorg-server root # emerge -aC $(qlist -IC x11-proto) root # emerge --oneshot x11-base/xorg-proto
Relax Deps and Rebuild
Antes de actualizar, es una buena idea ejecutar el siguiente comando para librar alguna dependencia existente de 32-bit ABI para que los paquetes instalados no bloqueen las actualizaciones necesarias. Asegurece de respaldar /var/db/pkg
, como lo indican las instrucciones debajo, y especifique el comando find
debajo exactamente -- mejor copie y pegue:
root # cd /var/db root # cp -a pkg /var/tmp/pkg.bak root # cd pkg root # find -iname RDEPEND -exec sed -i -e 's/\[abi_x86_32(-),abi_x86_64(-)]//g' {} \; root # find -iname RDEPEND -exec sed -i -e 's/,abi_x86_32(-),abi_x86_64(-)]/]/g' {} \;
Any critical installed packages should no longer depend on ebuilds providing 32-bit ABIs.
Now, proceed to install the new gcc, remove the old one, and then upgrade glibc:
root # emerge -u1 gcc root # emerge -C =sys-devel/gcc-7.3.1* root # emerge -u1 glibc
Perl Rebuild
With 1.3-release dev-lang/perl
updated from 5.24 to 5.26 version. It is necessary to rebuild perl modules installed with such major version update, which can be done with:
root # emerge -v1 --nodeps dev-lang/perl root # perl-cleaner --all
Some systems may require perl-cleaner --reallyall
Now, you are ready to proceed with a full system and world update:
root # emerge -auDN @system --ignore-world root # emerge -auDN @world
Now, it should be possible to rebuild any necessary packages to get rid of preserved libraries, paying particular attention to any old versions of glibc:
root # emerge -av @preserved-rebuild
It appears that dev-lang/go
will keep rebuilding against a preserved 32-bit glibc, so to fully remove multilib on a system that has dev-lang/go
installed, you will need to perform the following steps: emerge -C dev-lang/go; emerge dev-lang/go
.
Now, after update and rebuild you will want to either run etc-update
or dispatch-conf
to perform changes to the configuration files that may happen with ebuild updates:
root # etc-update
Optionally Update Kernel
If you were not using debian-sources-lts
before, you may want to upgrade to this kernel. Do this as follows:
root # emerge -av debian-sources-lts root # ego boot update
Depending on your /etc/boot.conf
settings, you may need to tweak the file in order to have debian-sources-lts
selected by default.
Remember to rebuild any necessary kernel modules!
This can be achieved with:
root # emerge -av @module-rebuild --exclude debian-sources-lts
Reboot
At this point, we recommend rebooting the system to ensure you are running in the new environment:
root # reboot