我有一个 Ubuntu 系统,其中手动安装了软件包,这些软件包来自各种来源,例如 apt 存储库、Snap 和独立软件包。我想以一种简单方便的方式将我的软件列表分发给其他人,可能使用 Git 存储库。主要是从 Ubuntu 到 Ubuntu,但也可能跨发行版。
然而,我面临的困难是,其中一些软件包需要添加特定的 apt 存储库,而其他一些则是 snap,还有一些可以在默认的 apt 存储库中找到。shell 脚本似乎效率不高。以可管理的方式将我的软件列表分发给其他人的最佳方法是什么?这是 Nix Package Manager 的用例吗?
答案1
我不明白为什么“shell 脚本似乎效率低下”。在我看来,它似乎可以完成工作,你只需要跟踪你想要在脚本中共享的内容。
- 安装默认存储库包
- 从其他存储库安装包
- 确保源已配置
- 安装软件包
- 安装独立包
- 下载软件包
- 检查下载
- 安装它
当然,对 Apt 和 Snap 都执行上述操作,并在需要时修复版本。
您也可以查看 Ansible/Chef/Puppet/等。这取决于您。