# Aggiornare solo i package upgrades e non i downgrades

## slupzz

Ciao a tutti,

come da topic come posso fare per aggiornare solo gli upgrades e non i downgrades????

grazie a tutti

ciao

luca

----------

## Scen

 :Question: 

Se emerge vuole fare il downgrade di un pacchetto il motivo c'è, il più delle volte il pacchetto era stato marcato stabile ma successivamente è tornato instabile.

Esempio: hai installato la versione del pacchetto pippo-1.3.2, ma emerge vuole farti il downgrade alla 1.3.1.

Verifica con un

```

emerge -pv =pippo-1.3.2

```

perchè emerge non vuole installartelo, ed agisci di conseguenza (tramite package.{keywords,unmask}).

----------

## slupzz

 *Scen wrote:*   

> 
> 
> Se emerge vuole fare il downgrade di un pacchetto il motivo c'è, il più delle volte il pacchetto era stato marcato stabile ma successivamente è tornato instabile.
> 
> Esempio: hai installato la versione del pacchetto pippo-1.3.2, ma emerge vuole farti il downgrade alla 1.3.1.
> ...

 

il problema e che sono 200 i pkg del downgrade, perchè prima avevo unstable, adesso volevo tornare a stable. 

quindi magari se riuscivo ad aggiornare solo gli upgrades fino ad arrivare ad aggiornarli tutti.

----------

## Onip

devi smascherare singolarmente i vari pacchetti di cui ti propone il downgrade mettendo in /etc/portage/package.keywords tante linee del tipo

```
=foo-bar/abcde-1.2.3
```

penso che il modo per farlo in automatico a partire dall'output di emerge -pv ci sia, ma non posso aiutarti...

----------

## HoX

prova con questo scriptino:

```

#!/bin/sh

PKG_LIST="`emerge -qpuD world | grep "[ebuild    U ]" | cut -d']' -f2 | cut -d' ' -f2`"

for i in $PKG_LIST

do

      EMERGE_PKG=" $EMERGE_PKG =$i"

done

emerge $@ $EMERGE_PKG

```

devi passargli come argomenti quelli che vorresti passare ad emerge. Usalo sino a che ti serve.

----------

## Onip

@Anema

lo script è sbagliato, secondo me, in quanto non tiene conto del fatto che le dipendenze vanno emerse con -1.

----------

## slupzz

 *Anema wrote:*   

> prova con questo scriptino:
> 
> ```
> 
> #!/bin/sh
> ...

 

scusa magari sbaglio qualcosa ma da errore

localhost luca # ./agup -uDv world

emerge: please specify a package class ("world" or "system") or individual packages, but not both.

----------

## HoX

 *slupzz wrote:*   

>  *Anema wrote:*   prova con questo scriptino:
> 
> ```
> 
> #!/bin/sh
> ...

 

il world è di troppo. Devi solo mettere i parametri extra (nel tuo caso -uDv). 

Aggiungerei (come consigliava Onip) il -1. Quindi da il comando: ./agup -1uDva così controlli bene cosa emerge e cosa no.

NB: io lo script non l'ho provato

----------

## devilheart

 *slupzz wrote:*   

> perchè prima avevo unstable, adesso volevo tornare a stable. 

 c'è un motivo particolare?

----------

## slupzz

 *Anema wrote:*   

>  *slupzz wrote:*    *Anema wrote:*   prova con questo scriptino:
> 
> ```
> 
> #!/bin/sh
> ...

 

scusa ma da questi errori 

localhost luca # ./agup -1uDva

!!! PORTAGE_BINHOST unset, but use is requested.

These are the packages that would be merged, in order:

Calculating dependencies |

!!! '=are' is not a valid package atom.

!!! Please check ebuild(5) for full details.

!!! (Did you specify a version but forget to prefix with '='?)

----------

## HoX

ma quali pacchetti tenti di emergere? quell'"are" non capisco da dove spunti fuori...

postami l'output di emerge -qpuD world

----------

## slupzz

localhost luca # emerge -qpuD world

[ebuild     UD] sys-apps/portage-2.1.3.19 [2.1.4_rc9] 

[ebuild     UD] net-wireless/bluez-libs-2.25 [3.23] 

[ebuild     UD] app-admin/python-updater-0.2 [0.3] 

[ebuild     UD] dev-libs/libdaemon-0.10 [0.12] 

[ebuild     UD] sys-fs/dosfstools-2.11-r1 [2.11-r3] 

[ebuild  N    ] media-libs/libmpcdec-1.2.6  

[ebuild     UD] media-libs/libcddb-1.3.0 [1.3.0-r1] 

[ebuild     UD] media-libs/libuninameslist-20030713 [20060907] 

[ebuild     UD] dev-util/gperf-3.0.1 [3.0.3] 

[ebuild     UD] sys-devel/patch-2.5.9 [2.5.9-r1] 

[ebuild     UD] media-libs/libpng-1.2.22 [1.2.23] 

[ebuild     U ] sys-kernel/linux-headers-2.6.23-r3 [2.6.23-r2] 

[ebuild     UD] dev-libs/libpcre-7.4 [7.4-r1] 

[ebuild     UD] sys-apps/pcsc-lite-1.4.2 [1.4.4] 

[ebuild     UD] sys-apps/usbutils-0.72-r4 [0.73] 

[ebuild     UD] sys-devel/dev86-0.16.17-r3 [0.16.17-r4] 

[ebuild     UD] net-wireless/bluez-hcidump-1.30 [1.40] 

[ebuild     UD] x11-libs/motif-config-0.9-r1 [0.10-r1] 

[ebuild     UD] dev-lang/lua-5.1.1-r2 [5.1.2-r2] 

[ebuild     UD] sys-devel/bc-1.06-r6 [1.06.95] 

[ebuild     U ] sys-kernel/genkernel-3.4.9 [3.4.9_pre11] 

[ebuild     UD] media-tv/linuxtv-dvb-apps-1.1.1.20070114 [1.1.1.20071201] 

[ebuild     UD] net-analyzer/nessus-libraries-2.2.6 [2.2.9] 

[ebuild     UD] net-analyzer/libnasl-2.2.6 [2.2.9] 

[ebuild     UD] sys-libs/cracklib-2.8.10 [2.8.12] 

[ebuild     UD] dev-python/pyxml-0.8.4 [0.8.4-r1] 

[ebuild     UD] dev-python/pyrex-0.9.4.1 [0.9.6.3] 

[ebuild     UD] dev-python/python-dateutil-1.1 [1.2] 

[ebuild     UD] dev-python/pytz-2005m [2007f] 

[ebuild     UD] app-admin/webapp-config-1.50.16-r1 [1.50.16-r2] 

[ebuild     UD] app-text/docbook-xsl-stylesheets-1.70.1 [1.73.2] 

[ebuild     UD] dev-java/blackdown-jdk-1.4.2.03-r15 [1.4.2.03-r16] 

[ebuild     UD] dev-libs/popt-1.10.7 [1.12] 

[ebuild     UD] sys-apps/texinfo-4.8-r5 [4.11-r1] 

[ebuild     UD] sys-devel/m4-1.4.10 [1.4.10-r1] 

[ebuild     UD] app-text/docbook-xml-dtd-4.2-r1 [4.2-r2] 

[ebuild     UD] app-admin/eselect-1.0.10 [1.0.11] 

[ebuild     UD] net-misc/rsync-2.6.9-r5 [3.0.0_pre6] 

[ebuild     UD] app-admin/eselect-opengl-1.0.5 [1.0.6] 

[ebuild  N    ] app-admin/eselect-ctags-1.3  

[ebuild     U ] sys-apps/man-pages-2.76 [2.70] 

[ebuild     UD] sys-fs/udev-115-r1 [118] 

[ebuild  NS   ] sys-kernel/gentoo-sources-2.6.23-r6  

[ebuild     UD] sys-fs/fuse-2.7.0 [2.7.1] 

[ebuild     UD] sys-fs/encfs-1.3.1.1 [1.3.2.1] 

[ebuild     UD] sys-libs/glibc-2.6.1 [2.7] 

[ebuild     U ] dev-libs/glib-2.14.5 [2.14.4] 

[ebuild     UD] dev-libs/boehm-gc-6.8 [7.0-r1] 

[ebuild     UD] sys-apps/usermode-utilities-20040406-r1 [20060323] 

[ebuild     UD] sys-fs/udftools-1.0.0b-r6 [1.0.0b-r7] 

[ebuild     UD] dev-util/gob-2.0.14 [2.0.15] 

[ebuild     UD] dev-cpp/libxmlpp-2.13.1 [2.20.0-r1] 

[ebuild     UD] sys-power/ncpufreqd-2.3 [2.4] 

[ebuild     UD] media-plugins/gst-plugins-vorbis-0.10.14 [0.10.15] 

[ebuild     UD] media-plugins/gst-plugins-ogg-0.10.14 [0.10.15] 

[ebuild     UD] media-libs/gst-plugins-ugly-0.10.6 [0.10.6-r1] 

[ebuild     UD] media-plugins/gst-plugins-cdparanoia-0.10.14 [0.10.15] 

[ebuild     UD] app-admin/perl-cleaner-1.04.3 [1.05] 

[ebuild     UD] app-portage/gentoolkit-0.2.3-r1 [0.2.4_pre7] 

[ebuild     UD] media-libs/jpeg-6b-r7 [6b-r8] 

[ebuild     UD] media-libs/alsa-lib-1.0.14a-r1 [1.0.15] 

[ebuild     U ] net-nds/openldap-2.3.39-r2 [2.3.39-r1] 

[ebuild     U ] dev-libs/libgcrypt-1.4.0-r1 [1.2.4] 

[ebuild     UD] media-libs/libmad-0.15.1b-r2 [0.15.1b-r4] 

[ebuild     UD] x11-libs/xtrans-1.0.3 [1.0.4] 

[ebuild     UD] sys-apps/shadow-4.0.18.1-r1 [4.0.18.2] 

[ebuild     UD] x11-proto/renderproto-0.9.2 [0.9.3] 

[ebuild     UD] dev-libs/libtasn1-0.3.5 [1.1] 

[ebuild  N    ] net-libs/libnet-1.1.2.1-r1  

[ebuild     UD] dev-scheme/guile-1.8.2 [1.8.3-r1] 

[ebuild  N    ] media-libs/libdca-0.0.5  

[ebuild  N    ] media-libs/libmodplug-0.8.4-r2  

[ebuild  N    ] media-libs/libtheora-1.0_alpha6-r1  

[ebuild  N    ] x11-proto/xcb-proto-1.0  

[ebuild  N    ] dev-libs/libpthread-stubs-0.1  

[ebuild     UD] sys-libs/libieee1284-0.2.8 [0.2.11] 

[ebuild     UD] sys-process/psmisc-22.5-r2 [22.6] 

[ebuild     UD] x11-base/x11-drm-20060608 [20071019] 

[ebuild     U ] media-sound/esound-0.2.38-r1 [0.2.38] 

[ebuild     UD] media-gfx/sane-backends-1.0.18-r4 [1.0.18-r5] 

[ebuild     UD] media-plugins/gst-plugins-alsa-0.10.14 [0.10.15] 

[ebuild     UD] media-libs/libmpeg3-1.5.2-r3 [1.7] 

[ebuild     UD] dev-python/python-ldap-2.2.1 [2.3.1] 

[ebuild     UD] sys-apps/slocate-2.7-r8 [3.1-r1] 

[ebuild     UD] media-sound/alsa-utils-1.0.14 [1.0.15] 

[ebuild     UD] x11-libs/libXrender-0.9.2 [0.9.4] 

[ebuild     UD] media-plugins/gst-plugins-x-0.10.14 [0.10.15] 

[ebuild  N    ] x11-libs/libxcb-1.0  

[ebuild     UD] media-libs/libmikmod-3.1.11-r4 [3.1.11-r5] 

[ebuild     UD] media-gfx/xloadimage-4.1-r4 [4.1-r5] 

[ebuild     UD] net-mail/freepops-0.2.5 [0.2.6] 

[ebuild     UD] x11-libs/libXrandr-1.2.1 [1.2.2] 

[ebuild     U ] x11-libs/libXfont-1.3.1-r1 [1.3.1] 

[ebuild     UD] media-sound/mpg321-0.2.10-r2 [0.2.10-r3] 

[ebuild     UD] media-plugins/gst-plugins-xvideo-0.10.14 [0.10.15] 

[ebuild     UD] dev-libs/dbus-glib-0.73 [0.74] 

[ebuild     UD] media-libs/mesa-6.5.2-r1 [7.0.2] 

[ebuild     UD] media-video/dvdauthor-0.6.11 [0.6.14] 

[ebuild     UD] dev-python/imaging-1.1.5 [1.1.6] 

[ebuild     UD] x11-misc/xclip-0.08-r1 [0.08-r2] 

[ebuild     UD] net-wireless/irda-utils-0.9.16-r1 [0.9.18] 

[ebuild     UD] sys-boot/syslinux-3.31 [3.52] 

[ebuild     UD] app-text/gocr-0.43 [0.44] 

[ebuild     UD] dev-java/ant-core-1.7.0 [1.7.0-r1] 

[ebuild     UD] dev-python/dbus-python-0.80.2 [0.82.3] 

[ebuild     U ] x11-misc/xdg-utils-1.0.2-r1 [1.0.2] 

[ebuild     UD] media-libs/libsdl-1.2.11-r2 [1.2.12] 

[ebuild     U ] dev-java/commons-logging-1.1-r5 [1.1-r2] 

[ebuild     UD] dev-java/log4j-1.2.14-r1 [1.2.14-r2] 

[ebuild     UD] dev-java/junit-3.8.1-r3 [3.8.2-r1] 

[ebuild  N    ] dev-java/sun-jaf-1.1  

[ebuild     UD] dev-libs/beecrypt-4.1.2-r1 [4.1.2-r2] 

[ebuild     U ] dev-java/eclipse-ecj-3.3.0-r2 [3.3.0-r1] 

[ebuild     UD] dev-java/javacup-0.10k-r1 [0.11a_beta20060608] 

[ebuild     UD] media-video/ffmpeg-0.4.9_p20070616 [0.4.9_p20070616-r2] 

[ebuild     UD] media-libs/sdl-net-1.2.6 [1.2.7] 

[ebuild     U ] media-libs/sdl-image-1.2.6-r1 [1.2.6] 

[ebuild     UD] dev-java/jsch-0.1.34 [0.1.36] 

[ebuild  N    ] dev-java/sun-javamail-1.4  

[ebuild     UD] dev-python/pyopengl-2.0.0.44 [2.0.1.09-r1] 

[ebuild  N    ] dev-java/ant-javamail-1.7.0  

[ebuild     UD] dev-java/xerces-2.9.0 [2.9.1] 

[ebuild     UD] media-libs/gle-3.0.1-r2 [3.1.0-r1] 

[ebuild     UD] media-gfx/blender-2.43 [2.45] 

[ebuild     U ] dev-java/ant-tasks-1.7.0-r4 [1.7.0-r2] 

[ebuild     UD] app-text/poppler-0.6.1-r1 [0.6.2] 

[ebuild     UD] dev-dotnet/libgdiplus-1.2.4 [1.2.5-r1] 

[ebuild     UD] media-plugins/gst-plugins-pango-0.10.14 [0.10.15] 

[ebuild     UD] sys-apps/hal-0.5.9.1-r3 [0.5.10] 

[ebuild     UD] app-misc/hal-info-20070618 [20071030] 

[ebuild     UD] net-print/cups-1.2.12-r4 [1.3.4-r3] 

[ebuild     UD] x11-libs/qt-4.3.2-r1 [4.3.3] 

[ebuild     UD] app-emulation/wine-0.9.46 [0.9.50] 

[ebuild     U ] gnome-base/gconf-2.20.1-r1 [2.20.1] 

[ebuild     U ] gnome-base/libgnomeprint-2.18.3 [2.18.2] 

[ebuild     U ] app-crypt/pinentry-0.7.4-r1 [0.7.3] 

[ebuild     UD] net-analyzer/nessus-core-2.2.6 [2.2.9] 

[ebuild     U ] app-mobilephone/gnokii-0.6.22-r2 [0.6.22-r1] 

[ebuild     UD] app-office/grisbi-0.5.8 [0.5.9] 

[ebuild     UD] x11-misc/macopix-1.2.1 [1.6.4] 

[ebuild     UD] app-editors/bluefish-1.0 [1.0.7] 

[ebuild     UD] sys-apps/pcmcia-cs-3.2.8-r2 [3.2.9_pre20050614] 

[ebuild     UD] x11-misc/hotkeys-0.5.7.1-r1 [0.5.7.4.0.1] 

[ebuild     UD] sci-misc/qcad-2.0.4.0-r3 [2.0.4.0-r5] 

[ebuild     UD] app-text/poppler-bindings-0.6.1 [0.6.2] 

[ebuild     UD] net-analyzer/nessus-plugins-2.2.6 [2.2.9] 

[ebuild     UD] dev-cpp/libglademm-2.6.4 [2.6.5] 

[ebuild     UD] media-video/transcode-1.0.4-r2 [1.0.5_rc2] 

[ebuild     UD] media-video/mjpegtools-1.8.0-r1 [1.9.0_rc3] 

[ebuild     UD] dev-libs/opensc-0.11.3 [0.11.4] 

[ebuild     UD] x11-themes/mplayer-skins-0.2-r5 [0.2-r6] 

[ebuild     UD] net-print/foomatic-filters-3.0.20060720 [3.0.20070501] 

[ebuild     UD] app-arch/rpm-4.4.6-r3 [5.0_alpha4] 

[ebuild     UD] net-wireless/bluez-utils-2.25-r1 [3.23] 

[ebuild     UD] dev-python/matplotlib-0.90.1 [0.91.1] 

[ebuild     UD] net-analyzer/nessus-2.2.6 [2.2.9] 

[ebuild     U ] net-analyzer/nmap-4.50 [4.20] 

[ebuild     UD] app-arch/alien-8.64 [8.66] 

[ebuild     UD] sci-electronics/kicad-20070115 [20070702] 

[ebuild     UD] dev-lang/swig-1.3.31 [1.3.33] 

[ebuild     UD] sys-libs/libcap-1.10-r9 [1.10-r11] 

[ebuild     U ] dev-util/subversion-1.4.6 [1.4.5] 

[ebuild     UD] dev-libs/gmime-2.2.3 [2.2.11] 

[ebuild     UD] net-dns/avahi-0.6.19-r2 [0.6.21] 

[ebuild     UD] app-office/scribus-1.3.3.9 [1.3.4-r1] 

[ebuild     U ] gnome-base/gnome-vfs-2.20.1-r1 [2.20.1] 

[ebuild     UD] media-plugins/gst-plugins-gnomevfs-0.10.14 [0.10.15] 

[ebuild     U ] media-libs/xine-lib-1.1.10 [1.1.8] 

[ebuild     UD] sys-fs/ntfsprogs-1.13.1-r1 [2.0.0] 

[ebuild     UD] dev-python/gnome-python-2.20.0 [2.20.1] 

[ebuild     UD] app-office/dia-0.95.1 [0.96.1] 

[ebuild     UD] net-im/pidgin-2.2.1 [2.3.1] 

[ebuild     UD] net-p2p/azureus-2.5.0.4-r1 [3.0.3.4] 

[ebuild     UD] x11-plugins/pidgin-otr-3.0.0 [3.1.0] 

[ebuild     UD] app-mobilephone/gnome-phone-manager-0.8-r1 [0.30] 

[ebuild     U ] media-sound/sound-juicer-2.20.1-r1 [2.20.1] 

[ebuild     UD] net-print/foomatic-db-engine-3.0.20060720 [3.0.20070508] 

[ebuild     UD] net-print/foomatic-db-20060720 [20070508] 

[ebuild     UD] x11-themes/audacious-themes-0.0.3 [0.0.4] 

[ebuild     U ] dev-db/mysql-5.0.54 [5.0.44-r2] 

[ebuild     U ] dev-lang/ruby-1.8.6_p111 [1.8.6_p110-r2] 

[ebuild     UD] dev-ruby/rcairo-1.4.1 [1.5.0] 

[ebuild     UD] app-text/nopaste-1992 [2802] 

[ebuild     UD] dev-ruby/ruby-gconf2-0.12.0 [0.16.0] 

[ebuild     UD] dev-ruby/ruby-libglade2-0.12.0 [0.16.0-r1] 

[ebuild     UD] app-editors/vim-core-7.1.123 [7.1.164] 

[ebuild     UD] app-editors/vim-7.1.123 [7.1.164] 

[ebuild     UD] x11-drivers/xf86-input-keyboard-1.1.1 [1.2.2] 

[ebuild     UD] x11-base/xorg-server-1.3.0.0-r4 [1.4-r2] 

[ebuild     UD] dev-python/gnome-python-extras-2.14.2-r1 [2.19.1-r1] 

[ebuild     UD] x11-drivers/ati-drivers-8.40.4 [8.433] 

[ebuild     UD] x11-base/xorg-x11-7.2 [7.3] 

[ebuild     UD] x11-drivers/xf86-input-evdev-1.1.5-r1 [1.1.5-r2] 

[blocks B     ] media-libs/libdts (is blocking media-libs/libdca-0.0.5)

localhost luca # 

ecco qua.

infatti are da dove salta fuori?

----------

## HoX

ah... ecco il problema... nel mio script considere solo gli "ebuild    U" e non anche quelli "ebuild    UD"... aggiorna lo script e dovrebbe andare

edit: ops... quelli sono i downgrade   :Laughing: 

Ho provato a riguardarlo, ma non ho capito dov'e' l'errore. Prova a verificare tu passo passo cosa fa lo script

----------

## Onip

ribadisco che la soluzione corretta per gentoo è quella di smascherare le versioni installate, in modo che emerge non richieda più il downgrade (ma nemmeno l'upgrade ad un'altra versione ~).

Infatti, facendo come dice lo script, tu comunque ti mantieni in uno stato "non coerente" e certi tool (primo fra tutti emerge --depclean) non funzionerebbero a dovere.

Per ottenere il giusto output da mettere in un file sotto package.keyeords/ penso ti basti modificare un pochino lo script di Anema.

----------

## HoX

 *Onip wrote:*   

> Per ottenere il giusto output da mettere in un file sotto package.keyeords/ penso ti basti modificare un pochino lo script di Anema.

 

```

#!/bin/sh

PKG_LIST="`emerge -qpuD world | grep "[ebuild    U ]" | cut -d']' -f2 | cut -d' ' -f2`"

ARCH="x86" #se usi amd64 cambia questa voce

for UNMASK_PKG in $PKG_LIST

do

      echo =$UNMASK_PKG ~$ARCH

done 

```

e poi si redirige l'output su /etc/portage/package.keyword. Ti conviene comunque lanciarlo una prima volta a vuoto, controllare l'output e poi redigerlo nel file lanciandolo una seconda volta

----------

## Scen

Non sono un guru delle regexp, però il tuo script non va bene a slupzz, in quanto "greppa" tutti i pacchetti da aggiornare ([U]), mentre lui dovrebbe mettere in package.keywords quelli di cui emerge vorrebbe fare il downgrade ([D]).

Cambiare il grep in

```

grep "\[ebuild.*D\]"

```

dovrebbe essere sufficiente.

----------

## HoX

 *Scen wrote:*   

> Non sono un guru delle regexp, però il tuo script non va bene a slupzz, in quanto "greppa" tutti i pacchetti da aggiornare ([U]), mentre lui dovrebbe mettere in package.keywords quelli di cui emerge vorrebbe fare il downgrade ([D]).
> 
> Cambiare il grep in
> 
> ```
> ...

 

Ops... mi sono dimenticato di cambiare quel pezzo  :Very Happy: 

----------

