使用用户环境变量创建强制或默认 gconf 配置文件的最佳实践是什么。这将使维护系统范围的配置文件和在公司网络中分发配置文件变得容易。
例如,我想使用 Gconf 键,其中一些信息由环境变量、键/apps/evolution/mail/accounts
和$USER
/定义$USERNAME
:
[<?xml version="1.0"?>
<account name="$(USER)@example.com">
<identity>
<name>$(USERNAME)</name>
<addr-spec>$(USER)@example.com</addr-spec>
</identity>
<source>
<url>imap://$(USER)%
[email protected]/;;use_ssl=when-possible
</url>
</source>
<transport save-passwd="true">
<url>smtp://$(USER)%40smtp.example.com;;use_ssl=when-possible</url>
</transport>
</account>
,
]
我相信我需要一个子系统来将模板配置文件处理成gconfd
可以使用的东西。我尝试过桌面配置文件和 sabayon 但没有任何运气。 Evoldap-backend 仅适用于进化,即使我最终使用 LDAP / Gosa 或 LDAP / phamm 进行身份验证,也感觉有点矫枉过正。邮件、IM 和 VoIP/Telepathy 仅使用可从 GECOS (/etc/passwd) 和标准登录环境轻松访问的信息。管理一个系统范围的模板比管理每个用户的配置文件感觉更强大。
答案1
这应该可以通过使用标准 Linux 工具的简单 bash 脚本来解决:
- 检查该文件夹是否
/home/"$USER"/.gconf/apps/evolution
存在。 - 如果不存在,则复制模板目录。
- 将占位符替换为
sed
.