如何在 Debian Squeeze 中使用带有现代 HTTPS 的curl/git?

如何在 Debian Squeeze 中使用带有现代 HTTPS 的curl/git?

我需要在各种过时的发行版上测试调试工具。我成功安装build-essentialDebian Squeeze 上的软件包。但现在的问题是,无法使用 git 或curl/wget 从 GitHub/GitLab 下载源代码。原因很简单 - 旧的 SSL 协议已被弃用,而 curl 或 git 不知道较新的协议。是否可以为需要执行的 CI 作业解决此git clone问题curl <gittag>.zip?你可以看到当前 GitHub Actions CI 配置适用于 Debian Wheezy 和 Debian Jessie。

答案1

在 wheezy 中,git 依赖于 libcurl3-gnutls 7.26.0,而 libcurl3-gnutls 7.26.0 又依赖于 libgnutls26 2.12.17。 Curl 依赖于 libssl1.0.0 1.0.1(即 OpenSSL)。这些系列已经过时了,我认为当前版本没有兼容的 ABI。因此,仅仅编译 SSL 库并将其放入/usr/local并不能解决问题。

如果您只需要一个下载工具,您可以使用静态链接的 openssl 编译当前版本的 wget 或curl。对于 git 来说这可能更难。

例如,简单的暴力方法是安排两个共享文件系统的安装在 chroot 中安装一个。对于您的用例,使用一个 CI 操作在现代系统上进行初始下载并在本地存储数据,然后使用另一个 CI 操作在过时的系统上进行构建和测试可能会更容易。

相关内容