4 个版本 (2 个重大变更)
0.3.0 | 2019 年 1 月 2 日 |
---|---|
0.2.1 | 2018 年 9 月 21 日 |
0.2.0 | 2018 年 9 月 12 日 |
0.1.1 | 2018 年 9 月 6 日 |
#46 在 #clean
110KB
1.5K SLoC
Reups
从零开始重新构思并重新实现 eups 环境模块系统的 Rust 版本。
该软件旨在作为 eups 环境管理系统功能的一部分的替代品。因此,其任务是管理将定义的软件包及其依赖项加载和卸载到外壳环境。这样,每个外壳都有一个连贯的软件栈。该系统使轻松切换不同版本的软件包以切换到新版本或测试新版本变得容易。
尽管 reups 将提供 eups 的大部分功能,但这并不是本项目声明目标达到 100% 相同的接口。相反,这些工具将共享一些(可能很多)功能,并能够在同一环境中操作相同的软件产品和数据库。不同的 API 和命令行选项将允许探索新的想法和设计范式。
reups 的一些功能之所以会有所不同,是因为该工具的主要关注点是速度!目标是能够在比之前少几个数量级的时间内完成所有常见操作。因此,这些常见操作的运行时性能被置于高于所有特定功能的架构中。未来,如果这些功能可以高效运行并与开发者希望如何利用时间相一致,可能会引入更多重叠的功能。如果您喜欢的功能缺失,请随意实现它并发送 pull request!
入门
安装
从源代码安装
此项目使用 Rust 编程语言构建,并在 crates.io 上提供作为 crate。Crate 是 Rust 编程语言的包管理和构建工具,可以用来获取此代码的副本。
此项目的源代码库(和主要主页)可以在 Github 上找到 这里。如果从 Github 源代码克隆,则需要 cargo 进行编译。
二进制文件
发布版本的二进制文件可以在 Github 上找到 这里。这些适用于 Linux(发行版无关)和 MacOS(10.7 及以上版本)。
使用方法
在其当前状态下,reups将从eups安装中重新启动自身。因此,在使用reups之前必须设置eups。在设置好eups之后,应该通过评估内置的prep命令的结果来设置reups,如下面的示例所示。
注意 从版本0.2.0开始,reups仅实现了eups的设置和列表功能。使用名为rsetup
的命令设置产品,以避免干扰默认的setup
命令。
示例
# Setup the standard eups installation
source <path_to_eups>/bin/setups.sh
# Setup the reups installation
eval $(reups prep)
# Use reups to setup prduct foobar
rsetup foobar
注意:对于那些不习惯在shell中运行eval的用户,可以直接运行reups prep
命令,并在评估之前检查输出。
依赖项
~7MB
~125K SLoC