@brrock/oj (英语)
预建的 Linux 二进制 页:1 (可口可乐板的Rust前端工具),为npm打包,这样它就可以跑到无法跑的地方 cargo install就像凡尔塞尔建造的.
上游的OJ只船到箱子.io。 并发布:
| 软件包 | 目录 |
|---|---|
@brrock/oj | 页:1 oj 命令(小型节点发射器) |
@brrock/oj-linux-x64-gnu | oj 用于 Linux x64, glibc 2.34 |
@brrock/oj-linux-arm64-gnu | oj 用于 Linux arm64, glibc 2.34 |
npm只安装符合机器的平台包. 二进制内置 amazonlinux:2023这是Vercel的建筑形象.
在 Vercel 上使用
npm i -D @brrock/oj
{
"scripts": {
"build": "oj build"
}
}
设置 Vercel 项目的输出目录为 dist。版本匹配上游 oj 版本.
只有Linux被支持. 在 macOS/ Windows 上安装 oj cargo install oj --locked;可以将发射器指向任何二进制 OJ_BINARY_PATH=/path/to/oj。 。 。 .
@brrock/oj 取决于 [email protected] 组合 OJ_VENDORED_ROLLDOWN 同样地,上游的Nix 建造了Oj的TanStack Start捆绑的摊贩。 设定 OJ_VENDORED_ROLLDOWN= (空地)使用应用程序自己的滚出取而代之.
如何释放工作
.github/workflows/release.yml 每6小时运行一次。 当最近 lovablelabs/oj 释放还没有在npm,它:
- 正在建设
ojx64 和 arm64 单位amazonlinux:2023(脂肪-LTO释放积分,预计1至2小时), - 发布平台软件包,然后
@brrock/oj,通过 npm 信任的出版(OIDC). 证明自动附着,不存储 npm 令牌.
要用手构建一个特定的版本: make release VERSION=0.2.16。 。 。 .
一次性设置
您需要 npm \ 11.10 (用于 npm trust)和您 npm 账户上的 2FA 启用 .
make login # npm login
make setup # publishes empty 0.0.0 placeholders, then trusts release.yml for each package
make release # build + publish the latest oj
make watch # follow the run
信任的出版只能在已经存在的软件包上配置,这就是为什么 setup 首先公布占位符。 可选运行 make lockdown 后来封锁基于符号的出版.