Portland 是个新的开源项目,它承诺要帮助 Linux® 应用程序在多种桌面环境中运行,包括 Gnome 和 KDE,从而简化 Linux® 应用程序的部署和商业化。虽然该技术仍很年轻,
但现在已经可以使用 Portland 了,并且它看上去正在不断快速改进。现在开始使用 Portland 1.0 中的 XdgUtils 工具集。
在构建桌面 Linux 应用程序的开发计划时,可能需要适当考虑到底针对哪个桌面 环境(DE)进行开发。Gnome 还是 KDE?当然可能还有其他的桌面。
但是如果只考虑一种桌面环境,那么应用程序的销售可能不会长久,以 Portland 项目 为例。
Portland 项目
首先介绍一些背景知识。Portland 项目是为了解决一些恼人的问题,这些问题将在软件开发人员编写易于移植到所有 Linux 发行包中打包的各种桌面环境(DE)时制造麻烦。具
体来说,Portland 的目标是提供一套开发人员可编写的通用 API,从而使应用程序无需考虑桌面环境。
该项目******个也是目前实现的阶段 Portland 1.0,名为 XdgUtils,它是一些实用程序的捆绑,应用程序可以用它在现有的桌面环境上运行。第二个阶段 Portland 2.0 的计划包
含基于 D-Bus 接口的面向服务的进程间通信机制。
虽然 XFCE、GNUStep 和 MacOS X 也在未来的考虑之中,但 Portland 目前只支持 KDE 和 Gnome。
在本文中,将开始使用 Portland 的 XdgUtils 部分,还将了解 Portland 的设计如何反映其更广泛的目标。
请看清单 1,它显示了 xdg-email 实用程序的用法:
清单 1. xdg-email 的示例用法
# This invocation is valid for all desktop
# environments and any e-mail client a user
# may prefer.
xdg-email --cc $COLLEAGUE --bcc $SELF \
--subject "Problem report" \
--body "This is a semi-automated fault report. You
can edit this e-mail before sending it.