我需要在chroot
(或容器)中运行旧版本的应用程序并允许 DBus 与主机系统交互。由于严重的依赖性问题,我无法在主机系统上安装此应用程序。
有关应用程序的完整详细信息:
- 要容器化的应用程序是 GNOME Evolution 版本 3.2.3(来自 Ubuntu 12.04 LTS)
- 主机系统是 Ubuntu MATE 16.04 LTS,它将运行 back-ported
indicator-datetime-gtk2
,通过 D-BUS 与容器化 Evolution 通信。
我希望它在技术上可以通过schroot
绑定安装或 LXC/LXD 实现。
我应该如何设置这样的配置?
查看以下指南,了解如何
请参阅https://blog.simos.info/how-to-easily-run-graphics-accelerated-gui-apps-in-lxd-containers-on-your-ubuntu-desktop/中的指南。
该指南有一个在 Ubuntu 12.04 系统容器中运行一些旧 Tcl/Tk 实用程序的示例。
有一个适用于您
indicator-datetime
的 16.04 版本。16.10 版本的开发似乎已经停滞,但它可能在 18.04 下对您有用。indicator-datetime-gtk2
在带有 GNOME Evolution 的 Ubuntu MATE 16.04 LTS 上使用(来自 Ubuntu 12.04 LTS)的困难MATE DE 1.12.1 在 Ubuntu 16.04 LTS 上使用 GTK2,因此它
indicator-datetime-gtk2
本身可能是从 Ubuntu 12.04 LTS 移植的,并显示在 中mate-indicator-applet
,但由于 API 发生了重大变化,因此无法与现代 GNOME Evolution 集成。通常的基于GTK3
indicator-datetime
或其UBports 的分支不会集成到基于 GTK2 的mate-indicator-applet
.DBUS LXC/LXD 解决方案似乎不适用于当前问题。总线寻址或服务命名有问题。
Ubuntu MATE 16.04 LTS 的解决方案
我发现只有一个适用于 Ubuntu 16.04 LTS MATE 的 hacky 解决方案 - 安装 Xfce4 面板并向其中添加
indicator-datetime
小程序:以及可运行的 MATE 面板。
并使用以下选项配置添加的 Xfce4 面板:
为了
xfce4-panel
在每次启动时显示,我已将其添加到启动应用程序中:并可选择设置
indicator-datetime
为 24 小时格式:它提供了漂亮的自动隐藏可同步日历指示器: