Почему мне устанавливали пакеты Уэйленда, хотя моя система не использует Уэйленд?

Я использую ПОМОЩНИКА Ubuntu 17.10. Информация о версии никогда ничего не упоминала об Уэйленде, и я всегда предполагал, что эта система использовала сервер дисплея Xorg.

Однако сегодня я выполнил обычное

sudo apt update && sudo apt full-upgrade

и замеченный, который включал вывод:

The following packages will be upgraded:
  libwayland-client0 libwayland-cursor0 libwayland-server0 [...]

Я думал, это нечетно. Моя система использует Уэйленд, в конце концов?

Как предложил Командующий Байта в чате, я искал выполнение процессов (использование pgrep Xorg и pstree), и найденный Xorg, но никакой Уэйленд. Таким образом, я вполне уверен, Уэйленд не работает. Я искал пакеты Уэйленда:

dpkg -l | grep [Ww]ayland
ii  kwayland-data                         4:5.38.0-0ubuntu1                        all          Qt library wrapper for Wayland libraries - data files
ii  kwayland-integration:amd64            4:5.10.5-0ubuntu1                        amd64        kwayland runtime integration plugins
ii  libkf5waylandclient5:amd64            4:5.38.0-0ubuntu1                        amd64        Qt library wrapper for Wayland libraries
ii  libqt5waylandclient5:amd64            5.9.1-2                                  amd64        QtWayland client library
ii  libqt5waylandcompositor5:amd64        5.9.1-2                                  amd64        QtWayland compositor library
ii  libwayland-client0:amd64              1.14.0-1ubuntu0.1                        amd64        wayland compositor infrastructure - client library
ii  libwayland-cursor0:amd64              1.14.0-1ubuntu0.1                        amd64        wayland compositor infrastructure - cursor library
ii  libwayland-egl1-mesa:amd64            17.2.8-0ubuntu0~17.10.1                  amd64        implementation of the Wayland EGL platform -- runtime
ii  libwayland-server0:amd64              1.14.0-1ubuntu0.1                        amd64        wayland compositor infrastructure - server library
ii  qtwayland5:amd64                      5.9.1-2                                  amd64        QtWayland platform plugin

Почему мне связывали эти пакеты с Уэйлендом даже при том, что я не использую Уэйленд?

3
задан 10 April 2018 в 17:41

1 ответ

Благодаря Byte Commander и Элиа Каган внесли предложения в чат Я смог выяснить, что эти пакеты были установлены как зависимостей.

Как предложил , я имитировал удаление пакетов, связанных с Wayland ... Когда я пытался притвориться, что удаляю все пакеты, связанные с Wayland ...

apt remove '.*wayland.*' -s

результат выглядел апокалиптическим, с полноэкранным терминалом, полным пакетов, которые были удалены, включая весь метапакет ubuntu-mate-desktop и все его дополнения, пакет xorg (упс!) И marco (MATE's оконный менеджер по умолчанию).

Но только удаление kwayland-data, казалось, только удаляло пару других таинственных пакетов kwayland-integration и libkf5waylandclient5 ...

Так, как предложил Элия Каган , я попытался спросить aptitude why, у меня были эти пакеты, например

$ aptitude why kwayland-data
i   konsole              Depends    libkf5windowsystem5 (>= 4.96.0)                           
i A libkf5windowsystem5  Recommends kwayland-integration                                      
i A kwayland-integration Depends    libkf5waylandclient5 (>= 4:5.27.0+p16.10+git20161029.2052)
i A libkf5waylandclient5 Depends    kwayland-data (= 4:5.38.0-0ubuntu1) 

Ааа! В этом есть смысл. Я установил Konsole, потому что другие эмуляторы терминала не поддерживают CTL .

Задавая aptitude why снова и снова, как постоянный малыш, можно выяснить, почему какой-либо конкретный пакет требуется или был установлен, например:

$ aptitude why libwayland-egl1-mesa
i   libwebkit2gtk-4.0-37 Depends libwayland-egl1-mesa (>= 10.0.2) | libwayland-egl1
$ aptitude why libwayland-cursor0
i   libgtk-3-0 Depends libwayland-cursor0 (>= 1.9.91)
$ aptitude why libgtk-3-0
i   mate-utils Depends libgtk-3-0 (>= 3.16.2)
$ aptitude why mate-utils
i   ubuntu-mate-desktop Depends mate-utils

Имитация удаления таких пакетов, как [ 1111] (будьте осторожны, чтобы на самом деле не удалять их ...), вы узнаете больше о структурах зависимостей в игре.

Заключение

У меня есть эти пакеты, потому что другие пакеты неожиданно зависят от них. Некоторые из них, такие как kwayland-data, установленные как зависимость от зависимости пакета, рекомендованного зависимостью от несущественного пакета, который я установил сам, могут быть безопасно удалены, но другие, такие как libwayland-egl1-mesa, являются зависимостями целых пакетов в мою систему, и их удаление будет иметь катастрофические последствия! С флагом APT --simulate или -s и aptitude мы можем безопасно расследовать эти вопросы.

3
ответ дан 1 December 2019 в 16:18

Другие вопросы по тегам:

Похожие вопросы: