Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index International Gentoo Users Forum italiano (Italian) Risorse italiane (documentazione e tools)
  • Search

[TIP] Mantenere ordinati /etc/portage/package.*

Forum riservato alla documentazione in italiano.

Moderator: ago

Post Reply
  • Print view
Advanced search
10 posts • Page 1 of 1
Author
Message
Kernel78
Moderator
Moderator
Posts: 3654
Joined: Fri Jun 24, 2005 6:14 am
Contact:
Contact Kernel78
Website

[TIP] Mantenere ordinati /etc/portage/package.*

  • Quote

Post by Kernel78 » Thu Mar 22, 2007 4:02 pm

Premessa: questa guida è rivolta solo a coloro che non usano macchine completamente in ~

Sia che si usino i package.* come singoli file o come directory sarebbe meglio sfruttarli per lavorare su singole versioni.
Per esempio se volessi avere una certa versione mascherata di un pacchetto (dopo aver controllato che non mi dia problemi) sarebbe preferibile limitarsi a smascherare solo la versione del pacchetto e non tutto il pacchetto, altrimenti rischio che in futuro una versione ~ possa portare scompiglio nel mio sistema.

Questo si può ottenere con un semplice

Code: Select all

=<categoria>/<pacchetto>-<versione> ~<architettura>
questo comporta però che quando la versione che abbiamo smascherato viene resa stabile avremo una riga inutile nella nostra configurazione.

Qui vengono in aiuto le mie nevrosi (dovreste vedere le mie postazioni a casa e in ufficio per rendervi conto che l'ordine lo impongo solo DENTRO i pc) che mi hanno spinto a scrivere questo piccolo script.

Code: Select all

for anomaly in $(eix -tTc | grep -E '^\[[A-Z]\]' | cut -f 2 -d " ")
do
  file_name=$(grep -lR $anomaly /etc/portage/package.*)
  clear
  echo "edito *** $file_name ***"
  echo "    per anomalia su $anomaly"
  echo "    premere <invio> per procedere"
  read
  $EDITOR $file_name
done
Mi sembra abbastanza autoesplicativo, io lo lancio dopo ogni aggiornamento per aver sempre il minimo indispensabile nei vari package.* (che poi per me sono package.*/*).

Magari è solo una cavolata ma a me sembra comodo e utile.

EDIT: applicata una patch per la gestione degli overlay fornita da earcar
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con

Code: Select all

grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Top
Kernel78
Moderator
Moderator
Posts: 3654
Joined: Fri Jun 24, 2005 6:14 am
Contact:
Contact Kernel78
Website

  • Quote

Post by Kernel78 » Mon Feb 23, 2009 8:56 am

L'uso continuato del mio script mi ha spinto a migliorarlo per venire incontro alle mie esigenze e spero anche alle vostre :wink:

Visto che voglio avere la certezza di avere sempre l'ultima versione (anche ~) di firefox-bin me lo tengo sempre presente senza una versione specificata nel mio file /etc/portage/package.keywords/www-client

Questo comportava che appena risultava presente una versione ~ questa veniva installata ma appena veniva dichiarata stabile il mio script iniziava a segnalarla come anomalia ma io non volevo rimuoverla.

Ho quindi ideato un file per le eccezioni /etc/portage/package.ignore in cui inserisco gli atom dei pacchetti per i quali non voglio che venga fatto alcun controllo (nel mio caso www-client/mozilla-firefox-bin) e ho modificato lo script in questo modo

Code: Select all

for anomaly in $(eix -tTc | grep -E '^\[' | cut -f 2 -d " ")
do
  grep -q $anomaly /etc/portage/package.ignore ||
    (file_name=$(grep -lR $anomaly /etc/portage/package.*)
    clear
    echo "edito *** $file_name ***"
    echo "    per anomalia su $anomaly"
    echo "    premere <invio> per procedere"
    read
    $EDITOR $file_name)
done
Fatemi sapere se può venirvi utile :wink:
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con

Code: Select all

grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Top
publiosulpicio
Apprentice
Apprentice
User avatar
Posts: 150
Joined: Sun Aug 31, 2008 12:11 pm

  • Quote

Post by publiosulpicio » Mon Feb 23, 2009 5:11 pm

Non sono un esperto, ma fa qualcosa di diverso da eix-test-obsolete?
Top
Kernel78
Moderator
Moderator
Posts: 3654
Joined: Fri Jun 24, 2005 6:14 am
Contact:
Contact Kernel78
Website

  • Quote

Post by Kernel78 » Mon Feb 23, 2009 6:10 pm

publiosulpicio wrote:Non sono un esperto, ma fa qualcosa di diverso da eix-test-obsolete?
beh, eix-test-obsolete fornisce lo stesso output (un po' riorganizzato) di eix -tTc (che è uno dei comandi che uso io) ...

quello fornisce indicazioni, il mio script le elabora e ti apre direttamente i file contenenti le anomalie riportate da eix escludendo i pacchetti definiti nel file /etc/portage/package.ignore
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con

Code: Select all

grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Top
table
Apprentice
Apprentice
User avatar
Posts: 279
Joined: Sat Feb 17, 2007 1:01 am
Location: Gazzaniga (BG) Italy

  • Quote

Post by table » Sun Mar 01, 2009 12:56 am

Veramente ottimo! :wink:
Pulisci l'html con:

Code: Select all

sed 's/<[Bb][Rr][ \t]*\/*>/\n/g;s/<\/*[^>]\+\/*>//g'
skype: matteopinguino
Top
Kernel78
Moderator
Moderator
Posts: 3654
Joined: Fri Jun 24, 2005 6:14 am
Contact:
Contact Kernel78
Website

  • Quote

Post by Kernel78 » Sun Mar 01, 2009 7:41 am

table wrote:Veramente ottimo! :wink:
Grazie, complimenti, suggerimenti o richieste sono sempre ben accetti :wink:
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con

Code: Select all

grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Top
lucapost
Veteran
Veteran
User avatar
Posts: 1420
Joined: Thu Nov 24, 2005 4:33 pm
Location: <ud|me|ts> - Italy
Contact:
Contact lucapost
Website

  • Quote

Post by lucapost » Sun Mar 01, 2009 10:06 am

Kernel78 wrote:Grazie, complimenti, suggerimenti o richieste sono sempre ben accetti :wink:
Tempo fa avevo trovato uno script che organizzava sia la lista dei pacchetti che le use in ordine alfabetico, ho provato a cercarlo ma non lo trovo più.
Probabilmente questo esula un pò dal fine originale dello script, però sono funzioni abbastanza utili...
LP
Top
bi-andrea
Apprentice
Apprentice
Posts: 171
Joined: Tue Mar 09, 2010 9:20 pm
Location: cesenatico

  • Quote

Post by bi-andrea » Wed Dec 29, 2010 10:23 pm

dunque lo provorei, ma come devo battezzarlo e avviarlo insieme al sistema?
Deve partire al boot?
Io per esempio uso molto proprio questi file, dove con emrege --pretend <pacchetto> mi dice cosa gli serve senza toccare make.conf
Quando arrivi a Linux è un trauma, abituati a Windows, quando arrivi a Gentoo è uno spavento col brivido , però quando lo capisci sei uscito dall'università "GNU/Linux" ;)
Top
cloc3
Advocate
Advocate
User avatar
Posts: 4840
Joined: Tue Jan 13, 2004 10:09 am
Location: http://www.gentoo-users.org/user/cloc3/
Contact:
Contact cloc3
Website

  • Quote

Post by cloc3 » Thu Dec 30, 2010 6:08 am

bi-andrea wrote:dunque lo provorei, ma come devo battezzarlo e avviarlo insieme al sistema?
in linux, il nome di un programma è pressoché arbitrario.
inventane uno che non sia già presente nel sistema, poi mettilo nella cartella /usr/local/sbin e marcalo eseguibile con chmod.
trattandosi di uno script bash, potresti premettere la seguente riga di codice:

Code: Select all

#!/bin/bash
io non lo avvierei al boot, perché è un programma interattivo che include un'istruzione read. quindi andrebbe lanciato a mano, quando ne senti necessità.
vu vu vu
gentù
mi piaci tu
Top
Kernel78
Moderator
Moderator
Posts: 3654
Joined: Fri Jun 24, 2005 6:14 am
Contact:
Contact Kernel78
Website

  • Quote

Post by Kernel78 » Tue Jan 04, 2011 2:53 pm

io in genere lo lancio dopo emerge belli corposi ...
Le tre grandi virtù di un programmatore: pigrizia, impazienza e arroganza. (Larry Wall).
Prima di postare un file togli i commenti con

Code: Select all

grep -vE '(^[[:space:]]*($|(#|!|;|//)))'
Top
Post Reply
  • Print view

10 posts • Page 1 of 1

Return to “Risorse italiane (documentazione e tools)”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy