15 lutego aktualizacja compiz złamała jedność


21

Ta aktualizacja compiz wymusiła usunięcie unityi ubuntu-desktopna moim systemie Ubuntu 16.04.

Pakiet wykraczająca że brakuje, ale unitypotrzeby, wydaje się być compiz-core-abiversion-20151010. Wygląda na pakiet wirtualny i nie mogę go pobrać.

wprowadź opis zdjęcia tutaj

Tak się składa, że ​​głównie używam LXDE na tym systemie, ale byłbym bardzo niezadowolony, gdybym użył Unity ...

Czy od czasu do czasu korzystam z pulpitu Unity, czy jest na to rozwiązanie?

Edycja: zbliżają się pytania pokrewne. Wygląda na to, że uciekasz przed dużą jakością

Pakiety „Zatrzymane” do aktualizacji, chcesz odinstalować jedność?

aktualizacja compiz odinstalowane jedność

Pasek zadań Ubuntu zniknął. Brakuje programu uruchamiającego

Co właśnie zrobiliście! Aktualizacje obu moich środowisk 16.04 zabiły komputery!

Edycja 2: Błąd 1749839 przesłany do startera



Mam ten sam problem. Brak programu uruchamiającego / paska zadań lub wielu innych elementów.
Andrew Vian

1
@OrganicMarble Jest dwóch innych użytkowników spalonych przez aktualizacje 16.04, które przeczytałem w ciągu ostatniej godziny. Wydaje mi się, że znowu coś wielkiego. Nie aktualizowałem od 4 stycznia 2018 r., Ponieważ zgłoszono wszystkie błędy. Tylko ręczne aktualizacje jądra w tym czasie doprowadziły mnie do 4.14.18
WinEunuuchs2Unix

1
@OrganicMarble Tak, zamieściłem komentarze pod dwoma z trzech dodanych właśnie linków. Założę się, że będzie ich tuzin więcej w ciągu jednego dnia.
WinEunuuchs2Unix

1
Inny użytkownik z tym samym problemem powiedział, że naprawił ofertę usunięcia pulpitu. Nigdy nie przyjął oferty usunięcia. Myślę, że cofnięcie usunięcia opcji byłoby zbyt skomplikowane podczasapt upgrade
WinEunuuchs2Unix

Odpowiedzi:


10

Bardzo dziwna sytuacja.
Tak, compiz-core-abiversion-20151010 jest wirtualny na xenial i zesty , ale zapewnia go compiz-core:

$ apt-cache show compiz-core  | grep "Version\|Provides\|Package"
Package: compiz-core
Version: 1:0.9.12.3+16.04.20180221-0ubuntu1
Provides: compiz-core-abiversion-20180221
Package: compiz-core
Version: 1:0.9.12.2+16.04.20160415-0ubuntu1
Provides: compiz-core-abiversion-20151010

APT i dpkg wiedzą o nich obu.

Pełna lista compiz-core-abiversionrodziny przedstawia się następująco:

$ aptitude search compiz-core-abiversion-
v   compiz-core-abiversion-20151010                                -
v   compiz-core-abiversion-20151010:i386                           -
v   compiz-core-abiversion-20180221                                -
v   compiz-core-abiversion-20180221:i386                           -

Tutaj, jak wiemy, compiz-core-abiversion-20151010nie można zainstalować:

$ sudo apt-get install compiz-core-abiversion-20151010
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Package compiz-core-abiversion-20151010 is a virtual package provided by:
  compiz-core 1:0.9.12.2+16.04.20160415-0ubuntu1 [Not candidate version]

E: Package 'compiz-core-abiversion-20151010' has no installation candidate

Ale możemy zainstalować nowszą (rzeczywistą) wersję:

$ sudo apt-get install compiz-core-abiversion-20180221
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'compiz-core' instead of 'compiz-core-abiversion-20180221'
The following additional packages will be installed:
  compiz-gnome compiz-plugins compiz-plugins-default libcompizconfig0 libdecoration0 libunity-core-6.0-9 unity unity-schemas unity-services
The following packages will be upgraded:
  compiz-core compiz-gnome compiz-plugins compiz-plugins-default libcompizconfig0 libdecoration0 libunity-core-6.0-9 unity unity-schemas
  unity-services
10 upgraded, 0 newly installed, 0 to remove and 32 not upgraded.
Need to get 5 302 kB of archives.
After this operation, 278 kB of additional disk space will be used.
Do you want to continue? [Y/n] n

Więc w normalnym spójnym systemie wszystko, czego potrzebujemy, to mieć zainstalowane wszystkie aktualizacje.
Ale jeśli unitypakiet został usunięty, możemy go zainstalować za pomocą:

sudo aptitude update
sudo aptitude safe-upgrade
sudo aptitude install unity ubuntu-desktop

Uwaga 1: My Ubuntu 16.04 LTS instalacji z Unity i mate de (1 czysty xenial i 3 stare i precyzyjny -> wierny -> xenial ) praca normalnie po regularnych uaktualnień bez mojej interwencji. Wszystkie te systemy nie próbowały usunąć ani Unity, ani ubuntu-desktoppodczas aktualizacji. I oczywiście xenial-proposed jest wyłączone w moim systemie, ponieważ nie chcę przekształcać mojego Ubuntu LTS w najnowocześniejszy, samozniszczalny ArchLinux.

Uwaga 2: Zedytowałem odpowiedź 2018-03-12 ze względu na fakt, że compiz-core-abiversion-20170630został usunięty z repozytoriów.


1
Zainstalowanie compiz-core-abiversion-20170630 naprawiło problem zależności. Dziękuję bardzo! Nie jestem pewien, dlaczego tego brakowało w moim systemie i najwyraźniej w innych.
Marmur Organiczny

@Organic Marble N0rbert właśnie powiedział, że do tej pory był to pakiet wirtualny udostępniany przez compiz-core. Różnica polega na tym, że teraz jest to zwykły / osobny pakiet do zainstalowania jako taki ... Tego nie zgadło proponowane wydanie ...
Antonio

Przypuszczam, że powinien był zostać zawarty w wydaniu.
Marmur Organiczny

1
compiz-coreto prawdziwy pakiet, compiz-core-abiversion-20170630pozostaje wirtualny. Być może wewnętrzne dpkg / APT powinny wiedzieć, że zainstalowaliśmy aktualną i dostępną wersję 20170630 (nie przegap 20151010).
N0rbert

13

Znalazłem rozwiązanie. apt-get nie jest w stanie poradzić sobie z sytuacją, ale aptitude może sobie z tym poradzić.

sudo aptitude install ubuntu-desktop

Zauważ, że pierwsze rozwiązanie oferowane przez aptitude nie rozwiązuje problemu, ponieważ decyduje się nie instalować pakietu. Za pierwszym razem musiałem wybrać opcję „nie”, a potem aptitude zaproponowało drugie rozwiązanie obniżenia poziomu pakietów compiz, które spowodowało wszystkie problemy. Obniżenie rozwiązuje problem zależności, a następnie Ubuntu-Desktop i Unity są ponownie instalowane.


2
Dzięki za bardzo sprytną naprawę temp. Kolejna odpowiedź zapewniła pełną rozdzielczość, więc przeniosłem akceptację na tę.
Marmur Organiczny

2

Zakładając, że jesteś zalogowany, a interfejs użytkownika utknął bez jedności, możesz wykonać następujące czynności:

  1. Przejdź do tty4 za pomocą Ctrl+ Alt+ F4.
  2. Zaloguj Się.
  3. Zainstaluj aptitude:

    sudo apt install aptitude
    
  4. Zainstaluj unityza pomocą aptitude:

    sudo aptitude install unity
    

Następnie powie ci, że istnieje pakiet będący w konflikcie. Odpowiesz, 'n'a zaproponujesz obniżenie poziomu compiz. Śmiało i zaakceptuj to.


1
Dzięki, ale tak naprawdę to nic nie dodaje do wcześniejszej odpowiedzi.
Marmur Organiczny

2

Po raz drugi w mniej niż 6 miesięcy zespoły Ubuntu dokonały proponowanej aktualizacji bez testowania i zepsucia działających systemów Ubuntu.

Ci faceci są ostatnio uwolnieni, aby przełamać obecną wersję LTS fałszywymi i niesprawdzonymi proponowanymi aktualizacjami ... Jest to nowość, aż do zeszłego roku tak się nie stało.

Rozwiązaniem jest NEVER installproponowane i tak zwane Partial Upgrade... Nadal możesz aktualizować system poprzez Synapticpakiet po pakiecie (chociaż dla lepszego zrozumienia jest Synapticon teraz usuwany z oficjalnej wersji) ... Dopóki nie zablokujesz wszystkich aktualizacji błędnego wydania . Oto przykład:

#!/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

Następnie uruchom skrypt według jego nazwy w bieżącym katalogu, na przykład:

$ ./block-upd-nemo

Aby odblokować

#!/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

Następnie

$ ./unblock-upd-nemo

Tutaj w Synaptic możesz zobaczyć długą listę compizpowiązanych pakietów, które się psują Xenial LTS, usuwając te pakiety:

ubuntu-desktop unity unity-tweak-tool unsettings ...

Pakiety do zablokowania to:

[Lista zaktualizowana, ponieważ brakowało mi pakietów dotkniętych jednością]

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

Całkiem długa lista. Zarządzalne za pomocą skryptów Shell.

Rozwiązaniem do odzyskiwania byłoby uruchomienie komputera z instalacyjnej pamięci USB Xenial i wykonanie chroot. Przejdź do strony internetowej Launchpad, compiz aby pobrać Release (main)pakiety i wymusić ich instalację, a dpkg -i *.debnastępnie zablokować wszystkie aktualizacje lub usunąć proposedwydania z konfiguracji aktualizacji.

[Aktualizacja]: Musisz także przejść do strony Launchpad unity i pobrać Release (main)pakiety, których dotyczy problem (patrz poniżej w skrypcie).

Wyszukiwarka Google, jeśli jej nie znasz.

Oto mój skrypt blokujący, compizktóry właśnie skończyłem:

[Aktualizacja, ponieważ brakowało mi pakietów dotkniętych jednością]

#!/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

Nie zapomnij ustawić skryptów wykonywalnych ...

$ chmod a+x block-upd-compiz

[Folllow Up]: Po uruchomieniu skryptu Shell, aby odblokować 19 pakietów z compizi unity. Wypróbowałem N0rbetrozwiązanie i wydaje się, że działa:

$ 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

4
Kiedy mówisz „zaproponowano” zaktualizowane, masz na myśli na xenial-proposedkanale? Jeśli tak, są one wyraźnie przeznaczone do testowania. Nie powinieneś ich instalować, chyba że jesteś przygotowany na uszkodzenie.
muru

2
@Antonio To się zawsze zdarza. Okropnie złamali 14.04 w 2015 roku. Bugs.launchpad.net/hundredpapercuts/+bug/1469995
Organic Marble
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.