8 个版本
0.4.3 | 2024年2月18日 |
---|---|
0.4.2 | 2023年3月15日 |
0.4.1 | 2023年2月17日 |
0.3.0 | 2022年9月9日 |
0.1.0 | 2022年8月29日 |
#517 在 开发工具 中
每月 36 次下载
59KB
1.5K SLoC
teapot_tools
使用 Rust(或有些人称之为带额外步骤的 Python)重写的 depot_tools 的 gclient 和 luci-go 的 cipd
为什么?
我试图在我的机器上运行 depot_tools,却只看到了这样的错误
./third_party/depot_tools/bootstrap_python3: line 28: cipd: command not found
./third_party/depot_tools/bootstrap_python3: line 32: [email protected]_bin/python3/bin/python3: No such file or directory
/home/lauren/aports/testing/signal-desktop/src/webrtc-4896c/third_party/depot_tools/bootstrap_python3: line 28: cipd: command not found
/home/lauren/aports/testing/signal-desktop/src/webrtc-4896c/third_party/depot_tools/bootstrap_python3: line 32: [email protected]_bin/python3/bin/python3: No such file or directory
cat: can't open '/home/lauren/aports/testing/signal-desktop/src/webrtc-4896c/third_party/depot_tools/python3_bin_reldir.txt': No such file or directory
[E2022-06-21T19:47:00.253814+02:00 28299 0 annotate.go:273] goroutine 1:
#0 go.chromium.org/luci/vpython/venv/config.go:309 - venv.(*Config).resolvePythonInterpreter()
reason: none of [/home/lauren/aports/testing/signal-desktop/src/webrtc-4896c/third_party/depot_tools//python3] matched specification 3.8.0
#1 go.chromium.org/luci/vpython/venv/config.go:153 - venv.(*Config).resolveRuntime()
reason: failed to resolve system Python interpreter
#2 go.chromium.org/luci/vpython/venv/venv.go:143 - venv.With()
reason: failed to resolve python runtime
#3 go.chromium.org/luci/vpython/run.go:60 - vpython.Run()
#4 go.chromium.org/luci/vpython/application/application.go:327 - application.(*application).mainImpl()
#5 go.chromium.org/luci/vpython/application/application.go:416 - application.(*Config).Main.func1()
#6 go.chromium.org/luci/vpython/application/support.go:46 - application.run()
#7 go.chromium.org/luci/vpython/application/application.go:415 - application.(*Config).Main()
#8 vpython/main.go:112 - main.mainImpl()
#9 vpython/main.go:118 - main.main()
#10 runtime/proc.go:225 - runtime.main()
#11 runtime/asm_amd64.s:1371 - runtime.goexit()
我看了这些错误,看了 DEPS 文件,感觉重写它比让它运行起来要容易。
依赖项
列出的 Alpine 软件包名称,应该在任何地方都类似
构建
- openssl-dev
- protoc
- python3-dev
- rust
runtime
- git
- python3 (libpython3)
镜像
- codeberg(主要开发平台):https://codeberg.org/selfisekai/teapot_tools
- github:https://github.com/selfisekai/teapot_tools
- gitlab:https://gitlab.com/selfisekai/teapot_tools
- crates:https://crates.org.cn/crates/teapot_tools (https://crates.io/crates/teapot_tools)
安全考虑
不要在不受信任的项目上运行。
- DEPS 文件实际上是运行在 Python 解释器上的 Python 代码,它可能会运行一些恶意代码。
- DEPS 文件包含钩子,这些钩子应该在(尚未实现)克隆依赖项之前/之后运行,它们可能是恶意代码。
请通过电子邮件仅报告安全问题:security at selfisekai dot rocks
。
法律
版权所有 © 2022 Lauren N. Liberda,使用许可受 Apache-2.0 许可证 条款约束
依赖项
~16–30MB
~487K SLoC