# chiarimenti USE

## roguewave

Buongiorno!

sto installando gentoo per la prima volta, vengo da arch.

Avrei bisogno di alcuni chiarimenti.

Precisamente sui flag USE che metto in /etc/portage/make.conf

ad esempio sto installando il grub2.

faccio 

```
emerge --ask grub
```

e mi evidenzia dei flag che non sono inseriti in USE

a questo punto cosa comporterebbe compilare ugualmente così?

e se faccio 

```
emerge USE="build" --ask grub
```

mi aggiunge tutti i flags consigliati?

è meglio cosi?

grazie per la pazienza.

----------

## djinnZ

primo è pensato più per  --oneshot/-1 che per altro, tanto per provare cosa succede aggiungendo una use o per vedere cosa cambia in emerge @world, secondo la sintassi corretta è

```
USE="build" emerge -1 grub
```

, terzo si usa solo a titolo temporaneo, quarto hai scelto la use più assurda possibile "build" non va usata normalmente,  *euses build wrote:*   

> build - !!internal use only!! DO NOT SET THIS FLAG YOURSELF!, used for creating build images and the first half of bootstrapping [make stage1]
> 
> 

 

Le use vanno impostate in make.conf od in /etc/portage/package.use per pacchetto.

Per iniziare ti converrebbe un 

```
emerge gentoolkit euses
```

(euses per vedere a cosa servono euse per impostarle od in alternativa ufed) e gestirle tutte più o meno globali (doc cups gtk e non ricordo quali altre non è il caso che siano globali, o creano una seria di dipendenze circolari, almeno in fase di prima installazione, per non dire dello spazio sprecato).

Man mano che installi i pacchetti vedi se ti servono o meno e semmai lanci un emerge -aDNuv @world (sul singolo pacchetto effettua il controllo delle dipendenze sul pacchetto).

Vedi di non intasare il file world con dipendenze inutili (ovvero pacchetti che sono richiesti per dipendenza da altri), se si in dubbio su qualcosa puoi sempre installare con -1 ed eventualmente portarlo in world con -n.

Le use non fanno altro che attivare dipendenze od attivare il corrispondente --with-qualcosa dell'automake dei pacchetti.

O fammi capire meglio qual è il tuo dubbio.

----------

## roguewave

 *djinnZ wrote:*   

> primo è pensato più per  --oneshot/-1 che per altro, tanto per provare cosa succede aggiungendo una use o per vedere cosa cambia in emerge @world, secondo la sintassi corretta è
> 
> ```
> USE="build" emerge -1 grub
> ```
> ...

 

Si, più o meno volevo sapere queste differenze, di come usare gli use, e cosa mettere nel file

/etc/portage/make.conf

per il resto son riuscito a compilare il kernel e ad avere il sistema avviabile senza alcun problema, pensavo non ce la facessi al primo tentativo  :Very Happy: 

----------

## Onip

le use non sono altro che caratteristiche opzionali che è possibile decidere a tempo di compilazione. Se la feature pippo di un software ti sarà necessaria allora dovrai abilitare la use corrispondente, viceversa nel caso contrario. In definitiva è una scelta personale, se ci fosse una formuletta buona per tutti non sarebbe una scelta. Ci sono degli insiemi di use predefiniti (e gestii dagli sviluppatori gentoo) che si chiamano profili, una volta scelto quello adeguato poi si tratta di fare piccoli aggiustamenti.

----------

## roguewave

 *Onip wrote:*   

> le use non sono altro che caratteristiche opzionali che è possibile decidere a tempo di compilazione. Se la feature pippo di un software ti sarà necessaria allora dovrai abilitare la use corrispondente, viceversa nel caso contrario. In definitiva è una scelta personale, se ci fosse una formuletta buona per tutti non sarebbe una scelta. Ci sono degli insiemi di use predefiniti (e gestii dagli sviluppatori gentoo) che si chiamano profili, una volta scelto quello adeguato poi si tratta di fare piccoli aggiustamenti.

 

si, grazie, capito.

Io volendo installare gentoo con xfce sul portatile ho scelto il profilo desktop.

----------

## roguewave

 *roguewave wrote:*   

>  *Onip wrote:*   le use non sono altro che caratteristiche opzionali che è possibile decidere a tempo di compilazione. Se la feature pippo di un software ti sarà necessaria allora dovrai abilitare la use corrispondente, viceversa nel caso contrario. In definitiva è una scelta personale, se ci fosse una formuletta buona per tutti non sarebbe una scelta. Ci sono degli insiemi di use predefiniti (e gestii dagli sviluppatori gentoo) che si chiamano profili, una volta scelto quello adeguato poi si tratta di fare piccoli aggiustamenti. 
> 
> si, grazie, capito.
> 
> Io volendo installare gentoo con xfce sul portatile ho scelto il profilo desktop.

 

Una curiosità, in giro si vedono pareri discordanti.

ma voi per aggiornare il sistema come vi muovete?

che comandi usate?

----------

## Onip

per l'aggiornamento "medio" io, personalmente, utlizzo una sequenza del genere.

```

# layman -S          -> per aggiornare gli ebuild contenuti negli overlay che ho installato

# emerge --sync  -> stesso discorso per l'albero ufficiale di portage

# update-eix         -> aggiorna il database di eix con i nuovi ebuild

# emerge -DuNkav --with-bdeps=y world # man emerge...

# emerge -av @preserved-rebuild -> per aggiustare eventuali dipendenze "rotte"

# emerge --depclean -a -> per liberarmi dei pacchetti non più richiesti

# revdep-rebuild -i -- -av -> da quando c'è preserved-rebuild non dovrebbe più servire, ma non si sa mai

```

bisogna, inoltre, tenere molto in considerazione prima di procedere con emerge la presenza di eventuali news da leggere, contengono messaggi importanti da parte dei developer con riferimenti a guide articolate per upgrade particolari. Infine una bella ripassata agli elog (tramite configurazione opportuna in make.conf e pacchetto elogv) per altri avvisi da parte dei developers.

Cursiosità a mia volta: che pareri discordanti hai riscontrato?

----------

## roguewave

 *Onip wrote:*   

> per l'aggiornamento "medio" io, personalmente, utlizzo una sequenza del genere.
> 
> ```
> 
> # layman -S          -> per aggiornare gli ebuild contenuti negli overlay che ho installato
> ...

 

intendevo proprio il fatto che ognuno usa una sequenza di comandi che ritiene opportuna

----------

## djinnZ

aggiungo gli eventuali python-updater ed emerge -1 libtool che di quando in quando serve (sono il primo che ci casca sempre e se li scorda sistematicamente; smadonnando come un dannato poi perché non vengo a capo dell'errore).

Ognuno fa quel che gli pare perché dipende molto da quanto spesso aggiorni e da cosa hai installato.

Se installi una volta ogni due anni... la sequenza è molto più complicata e variabile.

Tanto per metterti sulla giusta strada ti faccio notare che nel comando di onip il -u è assolutamente inutile visto che è implicito nel -N (serve solo ad evitare un warn di fatto) e che a voler essere rigorosi sarebbe meglio aggiornare prima system e poi world ma... è una questione di preferenze e di quanto sia critico per te mantenere il sistema funzionante in fase di aggiornamento.

Ci sono anche i matti che lanciano prima -u @system e poi -N @world o quelli che lanciano direttamente -DNuv @world con preserve_libs  disattivato seguito da revdep-rebuild. Non è che siano ottusi od incoscienti, solo che i primi non vogliono lottare con servizi disabilitati mentre completano mentre i secondi non vogliono perder tempo e se ne fregano se il sistema per mezza giornata, finchè non finisce di compilare, è fermo.

----------

