Questa è la seconda volta in meno di 6 mesi che i team di Ubuntu hanno fatto un aggiornamento proposto senza testare e rompere i sistemi Ubuntu funzionanti.
Questi ragazzi recentemente si sono scatenati per rompere l'attuale versione LTS con falsi e aggiornamenti proposti non testati ... Questo è nuovo, fino all'anno scorso non è mai successo.
La soluzione è quella di NEVER installun proposto e cosiddetto Partial Upgrade... Puoi ancora aggiornare il tuo sistema attraverso un Synapticpacchetto per pacchetto (anche se per capirlo Synapticè ora rimosso dalla versione ufficiale) ... Fino a quando non blocchi tutti gli aggiornamenti della versione buggy . Ecco un esempio:
#!/bin/sh
#
# Add nemo package to update blacklist
# Run script as super user i.e. sudo ./block-upd-unity.sh
#
if [ $(id -u) != 0 ]; then
echo "This script requires root permissions"
sudo "$0"
exit
fi
echo "nemo hold" | dpkg --set-selections
echo "nemo-data hold" | dpkg --set-selections
echo "nemo-fileroller hold" | dpkg --set-selections
Quindi esegui lo script con il suo nome nella directory corrente, come:
$ ./block-upd-nemo
Per sbloccare
#!/bin/sh
#
# Remove nemo package from update blacklist
# Run script as super user i.e. sudo ./block-upd-unity.sh
#
if [ $(id -u) != 0 ]; then
echo "This script requires root permissions"
sudo "$0"
exit
fi
echo "nemo install" | dpkg --set-selections
echo "nemo-data install" | dpkg --set-selections
echo "nemo-fileroller install" | dpkg --set-selections
Poi
$ ./unblock-upd-nemo
Qui in Synaptic puoi vedere un lungo elenco di compizpacchetti correlati che si stanno rompendo Xenial LTSrimuovendo questi pacchetti:
ubuntu-desktop unity unity-tweak-tool unsettings ...
I pacchetti da bloccare sono:
[Elenco aggiornato quando ho perso i pacchetti interessati dall'unità]
compiz compiz-core compiz-dev compiz-gnome compiz-plugins compiz-plugins-default compiz-plugins-extra compiz-plugins-main compiz-plugins-main-default compizconfig-settings-manager libcompizconfig0 libdecoration0 libdecoration0-dev python-compizconfig libunity-core-6.0-9 libunity-core-6.0-dev unity unity-schemas unity-services
Abbastanza una lunga lista. Gestibile tramite scripting Shell.
Una soluzione di ripristino potrebbe essere l'avvio da una chiavetta USB di installazione Xenial ed eseguire un chroot. Visitare il sito Web Launchpad per compiz scaricare i Release (main)pacchetti e forzare l'installazione con dpkg -i *.debquindi bloccare tutti gli aggiornamenti o rimuovere le proposedversioni dalla configurazione degli aggiornamenti.
[Aggiornamento]: è necessario anche visitare il sito Web Launchpad unity e scaricare i Release (main)pacchetti interessati (vedere di seguito nello script).
Ricerca Google se non si ha familiarità con esso.
Ecco il mio script di blocco per compizho appena finito:
[Aggiornato quando ho perso i pacchetti interessati dall'unità]
#!/bin/sh
#
# Add compiz package to update blacklist
# Run script as super user i.e. sudo ./block-upd-compiz.sh
#
if [ $(id -u) != 0 ]; then
echo "This script requires root permissions"
sudo "$0"
exit
fi
echo "compiz hold" | dpkg --set-selections
echo "compiz-core hold" | dpkg --set-selections
echo "compiz-dev hold" | dpkg --set-selections
echo "compiz-gnome hold" | dpkg --set-selections
echo "compiz-plugins hold" | dpkg --set-selections
echo "compiz-plugins-default hold" | dpkg --set-selections
echo "compiz-plugins-extra hold" | dpkg --set-selections
echo "compiz-plugins-main hold" | dpkg --set-selections
echo "compiz-plugins-main-default hold" | dpkg --set-selections
echo "compizconfig-settings-manager hold" | dpkg --set-selections
echo "libcompizconfig0 hold" | dpkg --set-selections
echo "libdecoration0 hold" | dpkg --set-selections
echo "libdecoration0-dev hold" | dpkg --set-selections
echo "python-compizconfig hold" | dpkg --set-selections
echo "libunity-core-6.0-9 hold" | dpkg --set-selections
echo "libunity-core-6.0-dev hold" | dpkg --set-selections
echo "unity hold" | dpkg --set-selections
echo "unity-schemas hold" | dpkg --set-selections
echo "unity-services hold" | dpkg --set-selections
Non dimenticare di impostare gli script eseguibili ...
$ chmod a+x block-upd-compiz
[Folllow Up]: dopo aver eseguito uno script Shell per sbloccare i 19 pacchetti da compize unity. Ho provato la N0rbetsoluzione e sembra funzionare:
$ sudo apt-get install compiz-core-abiversion-20170630
Reading package lists... Done
Building dependency tree
Reading state information... Done
Note, selecting 'compiz-core' instead of 'compiz-core-abiversion-20170630'
The following additional packages will be installed:
compiz-dev compiz-gnome compiz-plugins compiz-plugins-default libcompizconfig0 libdecoration0
libdecoration0-dev libunity-core-6.0-9 libunity-core-6.0-dev unity unity-schemas unity-services
The following packages will be upgraded:
compiz-core compiz-dev compiz-gnome compiz-plugins compiz-plugins-default libcompizconfig0 libdecoration0
libdecoration0-dev libunity-core-6.0-9 libunity-core-6.0-dev unity unity-schemas unity-services
13 upgraded, 0 newly installed, 0 to remove and 13 not upgraded.
Need to get 5,410 kB of archives.
After this operation, 283 kB of additional disk space will be used.
Do you want to continue? [Y/n] y