我安装了 Ubuntu MATE 20.04 LTS。我下载了操作系统无法识别的 DXF 文件。
我打开 Caja,导航到此文件,尝试打开它。然后收到以下消息:
无法显示“/home/user/file.dxf”
未安装用于 DXF 矢量图像文件的应用程序。是否要搜索应用程序来打开此文件?
然后我在这个窗口中单击了“是”。但什么也没发生。
我记得我以前的 Ubuntu MATE 18.04 LTS 应该打开较小的软件安装窗口,然后询问我密码并最后安装软件。
怎么了?
答案1
经过一些调试,dbus-monitor
按下“是”按钮时我看到以下内容:
$ dbus-monitor ... 方法调用时间=1627826047.524366 发送者=:1.27 -> 目标=org.freedesktop.PackageKit 序列=373 路径=/org/freedesktop/PackageKit;接口=org.freedesktop.PackageKit.Modify;成员=InstallMimeTypes uint32 14680581 大批 [ 字符串“图像/vnd.dxf” ] 字符串“隐藏确认搜索” 错误时间=1627826047.524401 发送者=org.freedesktop.DBus -> 目的地=:1.27 错误名称=org.freedesktop.DBus.Error.ServiceUnknown 回复序列=373 字符串“名称 org.freedesktop.PackageKit 未由任何 .service 文件提供” 方法调用时间=1627826047.524930 发送方=:1.27 -> 目标=org.freedesktop.DBus 串行=374 路径=/org/freedesktop/DBus;接口=org.freedesktop.DBus;成员=RemoveMatch 细绳 ...
所以我们需要获取一些org.freedesktop.PackageKit
dbus 服务提供商。
使用传统方法sessioninstaller
以前的 Ubuntu 版本使用的是sessioninstaller
。但一段时间后,这个包从 Ubuntu 中删除了后18.04 LTS。
我已报告错误 1938641 到 LaunchPad.
该sessioninstaller
软件包依赖于app-install-data
该包已经过时(上次升级是在 2015 年),因此不包含现代应用程序的信息。
但是如果仍然想恢复以前(Ubuntu MATE 18.04 LTS)的行为 - 应该sessioninstaller
从我的 PPA 安装:
sudo add-apt-repository ppa:nrbrtx/sessioninstaller
sudo apt-get update
sudo apt-get install sessioninstaller
然后按计划进行:
现代方法
另外还有两个org.freedesktop.PackageKit
dbus 服务提供商 -阿佩尔和GNOME 软件。两者都使用 AppStream 作为软件包信息的提供者。但 Apper 的发展似乎停滞了。
因此,即使在 Ubuntu MATE 上,也应该使用 GNOME 软件。要安装和初始化它,需要sessioninstaller
通过以下方式删除
sudo apt-get install ppa-purge
sudo ppa-purge ppa:nrbrtx/sessioninstaller
然后运行:
sudo apt-get install packagekit gnome-software
sudo apt-get update
然后使用它来安装软件 - 再次单击 DXF 文件,然后按照屏幕上的通知打开 GNOME 软件:
然后最后打开 DXF 文件。