如何卸载 Unity-2D

如何卸载 Unity-2D

我想彻底删除 Unity-2D(不是 Unity) 在 Ubuntu Precise Pangolin 12.04 上。我曾经dpkg -l | grep unity-2d列出属于 Unity-2D 的软件包。结果是这样的:

 ii  libunity-2d-private0    5.12.0-0ubuntu1.1    Unity 2D shared library
 ii  unity-2d                5.12.0-0ubuntu1.1    Unity interface for non-accelerated graphics cards
 ii  unity-2d-common         5.12.0-0ubuntu1.1    Unity 2D Panel
 ii  unity-2d-shell          5.12.0-0ubuntu1.1    Dash and Launcher for the Unity 2D environment
 ii  unity-2d-spread         5.12.0-0ubuntu1.1    Unity 2D Spread

现在我想使用以下命令删除这些包:

 sudo apt-get purge unity-2d unity-2d-common unity-2d-panel unity-2d-shell unity-2d-spread libunity-2d-private0

然后我收到以下消息:

The following packages will be REMOVED:
  libunity-2d-private0* ubuntu-desktop* unity-2d* unity-2d-common* unity-2d-panel* unity-2d-shell* unity-2d-spread*

这意味着该包ubuntu-desktop也应该被删除。但是该包的描述apt-cache show ubuntu-desktop是这样的:

Description-en: The Ubuntu desktop system
 This package depends on all of the packages in the Ubuntu desktop system
 .
 It is also used to help ensure proper upgrades, so it is recommended that
 it not be removed.

它不应该被删除,因为它是确保系统更新成功所必需的。

如何在不删除 Ubuntu-Desktop 的情况下删除 Unity-2D?

答案1

ubuntu-desktop如果您想删除 Unity 和 Unity-2D,删除软件包是完全可以的。因为ubuntu-desktop它是一个元软件包,用于提取 Ubuntu Desktop 安装中的标准软件包。由于您正在删除 Ubuntu-Desktop 软件包的依赖项,因此它也将被删除。

但是,您不必担心。删除它不会丢失任何东西。您可以看看这个问题。

对于特定查询:

如何在不删除 Ubuntu-Desktop 的情况下删除 Unity-2D?

你就是不能。没有办法删除带有 Unity-2D 的 Ubuntu-Desktop 软件包,否则软件包系统会损坏。

答案2

删除或修改文件/usr/share/xsessions/ubuntu-2d.desktop。例如,执行

sudo mv /usr/share/xsessions/ubuntu-2d.desktop /root/ubuntu-2d.desktop.backup

不幸的是,您无法在不破坏依赖关系的情况下从系统中选择性地删除 2D 库,因为 Ubuntu 的作者认为 2D 对于 Ubuntu 是强制性的。

编辑:如果您想删除 Unity-2D(但只删除 Unity-2D,不删除其他任何内容),有两种策略:

  1. 继续删除 Unity-Desktop。这不会删除其他 Unity 库,因为 Unity-Desktop 只是一个元包,它的目的是依赖于大量其他包,这样通过安装这个单个包,你也会安装所有这些依赖项。

  2. (更加困难)创建一个提供 Unity-2D 包但不安装任何文件的虚拟元包。

相关内容