# [PORTAGE] y variables [USE]

## samuelhm

Hola Buenas noches comunidad antes de nada queria presentarme   :Razz:   soy samuelhm, usuario de ubuntu desde hace 3 años, he decidido cambiarme a gentoo completamente y hayer me puse a instalar gentoo ( para mi increible no sabia que podia instalarlo desde ubuntu la documentación y los foros son muy buenos y al no haver cientos de subsecciones en foro español es mucho mas facil encontrar informacion).

Pues ya tengo todo casi listo, me he leido todos los manuales de gentoo por encima y concienzudamente el de usuario, ya tengo instalado el sistema base con portage y demas y hoy he instalado el controlador de nvidia y el paquete x11.

Antes de instalar gnome me gustaria comprender bien el uso de USE porque aunque en la documentación lo explica no entiendo como debo utilizarlo a nivel de usuario y tengo 3 dudas:

Una de mis dudas es si es bueno agregar todas las flags que me salen en /proc/cpuinfo en el archivo /etc/make.conf, y si no es asi, porque?

La otra duda es, por ejemplo so ejecuto #emerge -vp gnome me dice: gnome-base/gvfs-1.6.6-r1 (Change USE: +gdu).

entoces, gdu lo añado en make.conf o lo ejecuto: #USE="gdu" emerge gnome ???

Y mi gran duda que me trae un dolor de cabeza increible, si me pongo a consultar todas las flags ( o uses no se si se llaman asi) que acepta por ejemplo ese paquete, (uso el comando emerge --info -vp gnome) me sale una cantidad grandiosa de flags, CUales debo incluir??? como decidiis vosotros cuales vais a poner en use??? aunque la documentacion es amplia es bueno saber como lo manejan los usuarios avanzados de gentoo yo pienso xD.

He decidido de momento no instalar en gentoo hasta que resuelva estas dudas, porque segun medianamente he entendido usando unas use o otras optimizas mejor y añades mas o menos caracteristicas de un programa que igual deseo tener y no me estoy dando cuenta xD.

Muchas gracias Comunidad, y espero poder seguir aqui mucho tiempo =).

----------

## samuelhm

este es mi make.conf:

 *Quote:*   

> 
> 
> CFLAGS="-march=native -O2 -pipe"
> 
> CXXFLAGS="${CFLAGS}"
> ...

 

lo veo un poco soso con los ke he visto por el foro xD

----------

## agdg

 *samuelhm wrote:*   

> Una de mis dudas es si es bueno agregar todas las flags que me salen en /proc/cpuinfo en el archivo /etc/make.conf, y si no es asi, porque?

 

Altamente recomendable, siempre y cuando exista esa USE. En http://www.gentoo.org/dyn/use-index.xml podrás consultar las USE que tiene gentoo. Si tienes un procesador Intel, actual, seguramente tendrá mmx mmxext sse sse2 ssse3 sse4_1 sse4_2 threads 

 *samuelhm wrote:*   

> La otra duda es, por ejemplo so ejecuto #emerge -vp gnome me dice: gnome-base/gvfs-1.6.6-r1 (Change USE: +gdu).
> 
> entoces, gdu lo añado en make.conf o lo ejecuto: #USE="gdu" emerge gnome ???

 

Para agregar las USEs existen tres formas. Una es inyectarla directamente a emerge, tal y comodice USE="gdu" emerge gnome. Personalmente no lo veo útil pues de esa forma no sabes con que USEs instalaste cada cosa

Otra opción es meter la USE en /etc/make.conf. En este fichero deberías dejar solo las USEs genéricas, es decir, aquellas USEs que tu consideras importantes para tu sistema y quieres que todos los paquetes (que tengan esa USE) se compilen con soporte para ella. Por ejemplo, las flags del procesador las metemos en /etc/make.conf para que todos los paquetes se compilen con esa use, de forma que estén optimizados al máximo para nuestro pc. La USE X es otra opción típica de make.conf... 

La última opción es indicarle a cada paquete que USEs debe usar además de la que existen en make.conf, han sido inyectadas o bien predefinidas por el perfil seleccionado (eselect profile list). Esto se hace a través del archivo /etc/portage/packages.use (lo debes de crear tu). Y como un ejemplo vale más que mil palabras....

```
agd-desktop agd # cat /etc/portage/package.use 

app-emulation/wine gstreamer openal

app-emulation/qemu-kvm vde

app-emulation/libvirt qemu

dev-libs/libxml2 icu

gnome-base/gnome-session branding

gnome-extra/sensors-applet lm_sensors

nmedia-video/mplayer dvdnav osdmenu libmpeg2 

media-gfx/gimp webkit

net-misc/openvpn iproute2

net-fs/samba readline winbind cups -ldap

sys-apps/smartmontools minimal

sys-auth/consolekit pam

x11-misc/shutter drawing webphoto
```

 *samuelhm wrote:*   

> Y mi gran duda que me trae un dolor de cabeza increible, si me pongo a consultar todas las flags ( o uses no se si se llaman asi) que acepta por ejemplo ese paquete, (uso el comando emerge --info -vp gnome) me sale una cantidad grandiosa de flags, CUales debo incluir??? como decidiis vosotros cuales vais a poner en use??? aunque la documentacion es amplia es bueno saber como lo manejan los usuarios avanzados de gentoo yo pienso xD.

 

Usa el comando equery uses paquete, el cual además te aporta una pequeña descripción de la use

```
agd@agd-desktop ~ $ equery uses chromium

[ Searching for packages matching chromium... ]

[ Colour Code : set unset ]

[ Legend : Left column  (U) - USE flags from make.conf              ]

[        : Right column (I) - USE flags packages was installed with ]

[ Found these USE variables for www-client/chromium-9.0.597.94 ]

 U I

 + + cups              : Add support for CUPS (Common Unix Printing System)

 - + gecko-mediaplayer : Allow the browser to load www-plugins/gecko-mediaplayer

 + + gnome             : Adds GNOME support

 + + gnome-keyring     : Enable support for storing passwords via gnome-keyring

 - - system-v8         : Use the system-wide dev-lang/v8 installation
```

 *samuelhm wrote:*   

> He decidido de momento no instalar en gentoo hasta que resuelva estas dudas, porque segun medianamente he entendido usando unas use o otras optimizas mejor y añades mas o menos caracteristicas de un programa que igual deseo tener y no me estoy dando cuenta xD.

 

No te preocupes por las USE, siempre puedes cambiar de opinión y quitar o agregar USEs. Además tus necesidades actuales puede que no se correspondan con las futuras. Por poner un ejemplo, hace poco quise usar un lector de tarjetas y no tenía compilado el soporte en el kernel; lo recompile para agregar soporte al lector de tarjetas, reinicie y listo.

----------

## upszot

Bienvenido samuelhm ... creo que agdg lo a explicado a la perfeccion, solo me queda agregarte que el comando equery se encuentra en el paquete gentoolkit  http://www.gentoo.org/doc/es/gentoolkit.xml ahi tienes algo de info de lo q trae y como usarlo...

otra cosa q me gustaria hacer incapie es que el mayor problema del uso de USE al vuelo, es al momento de updatear el world...

al no estar registrado en archivo con que USE se compilaron esos paquetes, se perdera la referencia y se compilara la nueva version del paquete sin dicha USE.  (mi recomendacion y la de muchos es el uso de /etc/portage/package.use  )

Saludos

PD: aca tenes un post muy completo dedicado a este tema... https://forums.gentoo.org/viewtopic-t-195629.html

----------

## samuelhm

Muchas gracias =) la verdad que si ke sirve de mucho ver tu portage/package.use porque la verdad no sabia que sintaxis habia que usar y es muy simple jajaja.

Ahora si, equery es justo lo que estaba buscando!! me dice las que hay disponibles y una explicacion, perfecto!!

Ya tengo instalado gentoo y gnome, solo me falta retocar que arranque automaticamente el wpa_supplicant el gdm y instalar compat-wireless que va muchisimo mas rapido.

Muchas gracias y por aqui nos vemos seguro que siempre hay algun tutorial que se me resiste xD. un saludo!!

----------

