编写统一安装的 shell 和 PowerShell 脚本
ccmywish opened this issue · 12 comments
现有的安装方式比较麻烦,用户需要手动根据操作系统和CPU类型来区分下载链接。该 challenge 邀请贡献者参与编写 :
- shell 脚本
- PowerShell 脚本
chsrc
项目支持一定程度的AI编写,但如果主要内容均由AI完成,需要将文件头作者填写为AI产品名。欢迎 shell
脚本初学者 和 PowerShell
初学者优先贡献
Shell 脚本 TODO
- 基本框架
- 支持 macOS 用户 和 Linux 用户
- 使用标准默认安装目录
- 支持自定义安装目录
- 支持英语输出
- BSD 用户也可使用该脚本,但并不是下载,而是调用
clang
/gcc
/gmake
自己编译 - 其它POSIX平台,调用
clang
/gcc
/make
自己编译
PowerShell 脚本 TODO
- 基本框架
- 确定一个标准的可以执行exe的安装目录 → 不能执行,但标准:
~/Downloads
- 支持自定义安装目录
写了一个linux/macos的安装脚本
curl <path_to_install.sh>
默认下载位置为/usr/local/bin
可以通过-d
传入下载路径的参数
在wsl arch和ubuntu上测试了,macos未测试
@Efterklang 👍👍👍
可以开一个PULL REQUEST,直接在 chsrc
仓库维护就行了,不需要单独到 Gist 维护了。
已在 README 中添加使用 @Efterklang 编写的安装脚本。若后续有用户反馈, @Efterklang 你可按需修订代码 🤝
另外一个问题:
https://github.com/RubyMetric/chsrc/blob/main/tool/install.sh#L103-L104
这里有一个 -v
选项,是为了让用户指定 chsrc
的版本来安装吗?这个是暂时没有实现吗?还是说 -v
想要输出的是这个安装脚本自身的版本?
Hi,有没有什么建议和补充?
已在 README 中添加使用 @Efterklang 编写的安装脚本。若后续有用户反馈, @Efterklang 你可按需修订代码 🤝
另外一个问题: https://github.com/RubyMetric/chsrc/blob/main/tool/install.sh#L103-L104
这里有一个
-v
选项,是为了让用户指定chsrc
的版本来安装吗?这个是暂时没有实现吗?还是说-v
想要输出的是这个安装脚本自身的版本?
是为了让用户指定 chsrc
的版本来安装;但我中午测试的时候,curl返回404;没定位到哪出了问题,就把功能去了。现在发现是版本号输成-v 1.0.x
了;已经重新提交了一个pr;可以指定并输出安装的版本
Hi,有没有什么建议和补充?
我觉得非常好 👍 👍 目前想到两点建议:
- 非root用户执行时便捷选择安装到
$HOME/.local/bin
- 支持使用短链
如果能有上面两点就更好了 ❤️
@Efterklang @1328032567
你们俩认识吗?
请分别在:
- https://github.com/RubyMetric/chsrc/blob/main/tool/install.sh#L4
- https://github.com/RubyMetric/chsrc/blob/main/src/chsrc-main.c#L16
两个位置填写你们的贡献信息。由于 @1328032567 改动比较多,所以和 @Efterklang 同为 install.sh
的 Author,所以也填在 File Authors
的位置。
你们俩的代码太漂亮和细致,以至于我认为可能有AI辅助生成,chsrc
使用了GPL协议,所以对贡献信息希望有明确的了解。如果AI生成超过20%的话,请附带填写AI产品名作为 Contributor,如果超过80%,请把AI产品名作为 Author 🤝 如果代码均由二位自己编写完成,能力确实很强,向你们表示尊重和佩服。👍
当然即使使用 AI,chsrc
项目也是认可的,并对你们做出的贡献和额外努力表示感谢和欢迎。
@Efterklang @1328032567
你们俩认识吗?
请分别在:
- https://github.com/RubyMetric/chsrc/blob/main/tool/install.sh#L4
- https://github.com/RubyMetric/chsrc/blob/main/src/chsrc-main.c#L16
两个位置填写你们的贡献信息。由于 @1328032567 改动比较多,所以和 @Efterklang 同为
install.sh
的 Author,所以也填在File Authors
的位置。你们俩的代码太漂亮和细致,以至于我认为可能有AI辅助生成,
chsrc
使用了GPL协议,所以对贡献信息希望有明确的了解。如果AI生成超过20%的话,请附带填写AI产品名作为 Contributor,如果超过80%,请把AI产品名作为 Author 🤝 如果代码均由二位自己编写完成,能力确实很强,向你们表示尊重和佩服。👍当然即使使用 AI,
chsrc
项目也是认可的,并对你们做出的贡献和额外努力表示感谢和欢迎。
认识。个人未添加AI生成的代码,以前读过Jan De Dobbeleer security@ohmyposh.dev在ohmyposh(MIT License)项目中编写的shell脚本,写得十分优秀,代码组织上主要学习了Dobbeleer的实现😊
@Efterklang @1328032567
你们俩认识吗?
请分别在:
- https://github.com/RubyMetric/chsrc/blob/main/tool/install.sh#L4
- https://github.com/RubyMetric/chsrc/blob/main/src/chsrc-main.c#L16
两个位置填写你们的贡献信息。由于 @1328032567 改动比较多,所以和 @Efterklang 同为
install.sh
的 Author,所以也填在File Authors
的位置。你们俩的代码太漂亮和细致,以至于我认为可能有AI辅助生成,
chsrc
使用了GPL协议,所以对贡献信息希望有明确的了解。如果AI生成超过20%的话,请附带填写AI产品名作为 Contributor,如果超过80%,请把AI产品名作为 Author 🤝 如果代码均由二位自己编写完成,能力确实很强,向你们表示尊重和佩服。👍当然即使使用 AI,
chsrc
项目也是认可的,并对你们做出的贡献和额外努力表示感谢和欢迎。
Yeah, we are in the same university also same grade. And, I use AI to translate the zh output into en output. I have to say that AI is very good at translation. But, these bugs and -l
feature are both implemented by myself. That's all.
One last question, if ChatGPT 4o mini is the contributor, how to add its email address?
@1328032567
Just add a website of it.
https://github.com/RubyMetric/chsrc/blob/main/tool/install.ps1#L4
In the PowerShell version, I asked ChatGPT for the API to get OS architecture, this info is very important to this script, so I add it as another author instead of contributor.
@Efterklang @1328032567
Great work! 🥰 Your code quality standards are very high. 👍
Please add your contribution infos Proudly at https://github.com/RubyMetric/chsrc/blob/main/src/chsrc-main.c#L16