# sobre las USE's...

## botdotcom

alguien kon voluntad y paciencia me aklara el uso de las USE pero no remitiendome al 'manual' p k no entiendo esa parte(y no soy lerdo)

por que hay paketes ke he instalao sin USE's y too ha salido perfekto?

ke es la ventaja de las USE?

por ej. ahora ke kiero instalar un kde workspace ke USE's deberia poner y por ke?

----------

## edgar_uriel84

Lo dicho, si no lees el manual no hay como puedas entender fácilmente. Para ahorrarte configurar las USE una por una, gentoo usa "profiles" (perfiles) que te configuran flags de forma general, si quieres un perfil para kde puedes seguir este ejemplo:

```
$ eselect profile list

Available profile symlink targets:

  [1]   default/linux/amd64/10.0 *

  [2]   default/linux/amd64/10.0/selinux

  [3]   default/linux/amd64/10.0/desktop

  [4]   default/linux/amd64/10.0/desktop/gnome

  [5]   default/linux/amd64/10.0/desktop/kde

  [6]   default/linux/amd64/10.0/developer

  [7]   default/linux/amd64/10.0/no-multilib

  [8]   default/linux/amd64/10.0/server

  [9]   hardened/linux/amd64

  [10]  hardened/linux/amd64/selinux

  [11]  hardened/linux/amd64/no-multilib

  [12]  hardened/linux/amd64/no-multilib/selinux

$eselect profile set 5

$ eselect profile list

Available profile symlink targets:

  [1]   default/linux/amd64/10.0 

  [2]   default/linux/amd64/10.0/selinux

  [3]   default/linux/amd64/10.0/desktop

  [4]   default/linux/amd64/10.0/desktop/gnome

  [5]   default/linux/amd64/10.0/desktop/kde *

  [6]   default/linux/amd64/10.0/developer

  [7]   default/linux/amd64/10.0/no-multilib

  [8]   default/linux/amd64/10.0/server

  [9]   hardened/linux/amd64

  [10]  hardened/linux/amd64/selinux

  [11]  hardened/linux/amd64/no-multilib

  [12]  hardened/linux/amd64/no-multilib/selinux
```

Fijate en que el * cambio a señalar el profile de kde, lo cual favorecerá al momento de instalar flags como qt4.

A veces te interesará establecer un cierto parámetro USE tan sólo para una o dos aplicaciones, pero no para todo el sistema. Para solventar, esto, necesitarás crear el directorio /etc/portage (si no existiera) y editar /etc/portage/package.use. Ahí un ejemplo de uso de package.use:

Por ejemplo, si no te interesa soporte global para berkdb pero lo quieres para mysql, necesitas añadir:

 *Quote:*   

> dev-db/mysql berkdb

 

Por supuesto también puedes desactivar el empleo específico de una USE para una aplicación. Por ejemplo si no quieres java en PHP:

 *Quote:*   

> dev-php/php -java

 

Lo de los codecs que preguntas en otro post y todo eso que viene en el manual y no piensas leer podrías encontrarlo programa a programa en gentoo-wiki y la wiki oficial pero claro te encontrarás con dudas que solo el manual podrá resolverte.

----------

## agdg

Las USE simplemente son flags de compilación, lo cual te permite indicar al compilador que partes del programa deben ser compiladas y cuales no. 

Usando un símil infantil, en las distribuciones basadas en binarios cada programa es una bolsa de chucherías donde por defecto vienen todas las chucherías (las que te gustan y las que no). En gentoo, tienes el poder de elegir que chucherías quieres incluir en tu bolsa (programa) y cuales no; para simplificar este proceso se crearon las USE.

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

[ Legend : U - final flag setting for installation]

[        : I - package is installed with flag     ]

[ Colors : set, unset                             ]

 * Found these USE flags for media-video/vlc-1.1.13:

 U I

 + + X              : Enables support for, e.g., fullscreen mode via the X

                      Window System. By itself, this flag does not build a

                      graphical interface.

 + + a52            : Enables support for decoding ATSC A/52 streams used in

                      DVD

 + + aac            : Enables support for MPEG-4 AAC Audio

 - - aalib          : Adds support for media-libs/aalib (ASCII-Graphics

                      Library)

 + + alsa           : Adds support for media-libs/alsa-lib (Advanced Linux

                      Sound Architecture)

 - - atmo           : Enables support for AtmoLight (homebrew Ambient Lighting

                      Technology)

 - - avahi          : Add avahi/Zeroconf support

 - - bidi           : Enables bidirectional language support

 + + cdda           : Adds Compact Disk Digital Audio (Standard Audio CD)

                      support

 - - cddb           : Access cddb servers to retrieve and submit information

                      about compact disks

 + + dbus           : Enable dbus support for anything that needs it (gpsd,

                      gnomemeeting, etc)

 - - dc1394         : Enables IIDC cameras support.

 - - debug          : Enable extra debug codepaths, like asserts and extra

                      output. If you want to get meaningful backtraces see

                      http://www.gentoo.org/proj/en/qa/backtraces.xml

 - - dirac          : Enable Dirac video support (an advanced royalty-free

                      video compression format) via the reference library:

                      dirac.

 - - directfb       : Adds support for DirectFB layer (library for FB devices)

 + + dts            : Enables DTS Coherent Acoustics decoder support

 - - dvb            : Adds support for DVB (Digital Video Broadcasting)

 + + dvd            : Adds support for DVDs

....

....

....
```

VLC, por ejemplo, tiene muchas USE's. Cada una de ellas te permite agregar soporte para una determinada funcionalidad como por ejemplo debuggear (debug), ver televisión (dvb), para codecs (dvd, ogg, x264, vorbis, wma...)... Siendo el usuario quien tiene control total sobre que partes quiere y cuales no.

----------

## Pablo S. Barrera

No se que mas agregar a los comentarios. Puedo aportar, tal vez, que configurando las USES, que vos utilices podras tener aplicaciones adecuadas al uso que vos le vas a dar. Por ejemplo, si tenes un hardware que no tiene blueray, no tiene camara, no infrarrojos (por decir algo) la aplicaciones las compilas sin soporte para ese hardware. Hay muchisimas USEs, muchisimas. Podes utilizar el programa "ufed" para ver un poco mas sobre ellas e ir seleccionandolas desde ahi. Primero debes de emergerlo, emerge ufed y listo. 

Por otro lado Gentoo es leer, tiene mucha info y creeme que enseña, y ademas de eso es muy necesario para entender como funciona.

----------

