1 个不稳定版本

使用旧的 Rust 2015

0.1.0 2019 年 9 月 10 日

#12#archlinux

24 个月的下载量
aurum-cli 中使用

MITGPL-3.0 许可协议

72KB
1.5K SLoC

aurum

为效率、易用性和无 pacman 包装而编写的 AUR 助手。Aurum 在拉丁语中意为“金”,也包含“aur”。此名称由 @xTibor 建议。

这是一个绝对源于对其他所有 AUR 助手的不满,以及作为编写通用包管理器的学习经验而诞生的项目。

有关 cli 工具和配置文件的文档可以在 wiki 上找到。

免责声明:在当前状态下,aurum 的测试非常有限。基本上,我所做的就是用它来解决我机器上(相对广泛)的必需更新,并使用它来安装一些软件包。由于 aurum 现在基本上只做这些,因此它对功能表面的测试是相当有效的,但请注意,存在错误,并且如果此工具破坏了您的系统,我概不负责。

话虽如此,Aurum 是用 ❤️ 在 Rust 中编写的,所以可能错误较少。如果您使用此工具并且它出了问题,我很乐意帮助并听取我可以如何做得更好的意见。这是一个我希望能够有信心使用的工具。

目标

请注意,目前并非所有这些目标都已实现,aurum 仍在开发中。

  • 不要包装 pacman:源包管理器与二进制包管理器在本质上不同,因此使用相同的 cli 界面来使用两者没有意义(也就是说,我不喜欢 pacman 包装器;这是一个控制问题)。
  • 类似 pacman 的 CLI:尽管如此,pacman 的 cli 意外地强大且灵活。据我所知,没有其他 AUR 助手使用类似的 CLI(除非它是包装 pacman)。
  • 相对高效:我不想让用户坐着等待依赖关系解析。使用 rust 有助于此。
  • 功能丰富:我希望这个工具能够做到更受欢迎的 AUR 助手所能做到的一切,包括更新本地 AUR 软件包和解析依赖关系。我还可以利用 makepkg 的某些更神秘的功能和功能。
  • 使用 sudo:不要以 root 身份运行。(在 main.rs 下的日志器初始化中查看一笑)

待办事项

  • 实现大多数事物的依赖关系(目前尚未充分利用解析器)
  • 更好的配置文件功能(可以实现更多选项)
  • 更好的输出/用户交互。可能需要读取 pacman 的配置文件以获取某些选项?
  • 更新
  • 搜索功能

限制(当前)

  • 存在错误,我知道这段代码并非完美无缺,特别是考虑到我(重新)实现的所有功能。如果您发现错误,请报告。
  • 更新没有提供包更新选项。这可以通过数字界面修复,但也需要一些结构性的改变。
  • 依赖项解析有点慢。我的数据库加载函数没有优化,而且没有简单的方法可以一次性知道我需要从 AUR 获取哪些包,所以不容易减少对 AUR 的 info 请求次数。
  • 实际上没有测试。我需要编写测试...

依赖项

~21–32MB
~594K SLoC