13 个稳定版本 (3 个主要版本)

3.1.0 2022 年 5 月 11 日
3.0.0 2022 年 2 月 23 日
2.2.4 2022 年 2 月 19 日
2.2.3 2021 年 12 月 30 日
0.1.0 2020 年 8 月 5 日

#319 in 配置

Download history 37/week @ 2024-03-29 1/week @ 2024-04-05

67 每月下载次数

MIT 许可协议

5.5MB
25K SLoC

JavaScript 20K SLoC // 0.1% comments Rust 2K SLoC // 0.0% comments BASH 1.5K SLoC // 0.5% comments Shell 337 SLoC // 0.1% comments RPM Specfile 41 SLoC Batch 26 SLoC Python 22 SLoC // 0.6% comments

包含 (WOFF 字体, 15KB) jost-v4-latin-700italic.woff, (WOFF 字体, 13KB) jost-v4-latin-500.woff, (WOFF 字体, 10KB) jost-v4-latin-500.woff2, (WOFF 字体, 15KB) jost-v4-latin-500italic.woff, (WOFF 字体, 12KB) jost-v4-latin-500italic.woff2, (WOFF 字体, 13KB) jost-v4-latin-700.woff 和更多.

Toml Bombadil - A dotfile manager written in rust

GitHub Actions workflow status Code coverage status AUR package
crates Conventional commits Repository license

文档 · 安装 · 配置

用 Rust 编写的点文件管理器

  • 点文件模板:定义您的点文件模板并在需要时链接它们。
  • 点文件配置文件:为不同的机器和情况创建配置文件,并在流程中组合它们。
  • 安装钩子:在安装点文件前后运行自定义命令。
  • Gpg 加密:使用 gpg 向点文件配置添加加密的秘密。

探索 Toml Bombadil 的文档 ▶

example gif

为什么还需要另一个点文件管理器?

我编写 Toml Bombadil 是因为我经常更换我的桌面环境:从 i3 切换到 sway,从 sway 切换到 xfce,从 xfce 切换到 gnome,然后再切回到 sway。当你像这样经常更换工作环境时,你会遇到一些问题

  • 一些符号链接将变成孤儿。
  • 不是你使用的每个程序都支持 Xresources,你很可能会需要手动编辑一些主题/配置。
  • 当你开始全新安装时,你很可能需要将现有的点文件适应到你的新机器上。
  • 一团糟。

Toml Bombadil 尝试通过简单修改其他工具使用的符号链接方法来解决此问题:它不会创建从点文件到程序实际配置路径的符号链接,而是创建它的副本并将符号链接指向这个副本。这一额外步骤允许您使用原始点文件作为模板,并在副本中注入变量。您可以在同一个点文件仓库中拥有多个值文件,并动态更改配色方案或任何值。

此外,这是完全可选的,您可以仅为了生成符号链接和逐步模板化点文件而开始使用 Toml Bombadil。

安装

Arch Linux

pacman -S toml-bombadil

Cargo

cargo install toml-bombadil

快速入门

请参阅 文档 -> 快速入门

Shell 完成脚本

可以通过运行 bombadil generate-completions 生成几个流行 Shell 的命令行完成脚本。例如,为 zsh 生成完成脚本并将其输出到您 $fpath 上的某个位置,可以使用以下命令:bombadil generate-completions zsh > <某个位置上的 >/_bombadil。支持的 Shell 有:bash、elvish、fish 和 zsh。

故障排除

如果您迷路了,可以使用 bombadil get {资源名称} 查看当前配置。可用的资源有 dotshookspathprofilesvarssecrets

您还可以使用 --profiles 标志显示配置文件的资源。

示例仓库

如果您使用 Bombadil,请提交一个问题或 PR 来更新此部分,我们将很乐意在此处引用您的点文件!

贡献

发现了一个错误,或对新的功能有建议?请阅读 贡献指南 并提交一个 问题

许可

此仓库中的所有代码均在 MIT 许可证下发布,更多信息请参阅 LICENSE 文件。

依赖

~28–63MB
~1M SLoC