push sheeet
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s

This commit is contained in:
Dark Steveneq
2025-10-09 14:15:47 +02:00
commit 646b892680
49168 changed files with 5897842 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
Fix runtime error due missing import
Traceback (most recent call last):
File "/nix/store/4qqhr7g9ri3n7v6ik9ahlpvyp18wcn4p-git-repo-2.15.3/bin/.repo-wrapped", line 1339, in <module>
main(sys.argv[1:])
File "/nix/store/4qqhr7g9ri3n7v6ik9ahlpvyp18wcn4p-git-repo-2.15.3/bin/.repo-wrapped", line 1304, in main
_Init(args, gitc_init=(cmd == 'gitc-init'))
File "/nix/store/4qqhr7g9ri3n7v6ik9ahlpvyp18wcn4p-git-repo-2.15.3/bin/.repo-wrapped", line 607, in _Init
_Clone(url, dst, opt.clone_bundle, opt.quiet, opt.verbose)
File "/nix/store/4qqhr7g9ri3n7v6ik9ahlpvyp18wcn4p-git-repo-2.15.3/bin/.repo-wrapped", line 912, in _Clone
if clone_bundle and _DownloadBundle(url, cwd, quiet, verbose):
File "/nix/store/4qqhr7g9ri3n7v6ik9ahlpvyp18wcn4p-git-repo-2.15.3/bin/.repo-wrapped", line 860, in _DownloadBundle
r = urllib.request.urlopen(url, context=ssl.create_default_context())
NameError: name 'ssl' is not defined
builder for '/nix/store/4hvds8fv8xmzlm86yg9cf1lj6hrya7sg-amdvlk-src.drv' failed with exit code 1
diff --git a/repo b/repo
index 8b05def..f394b3e 100755
--- a/repo
+++ b/repo
@@ -236,8 +236,9 @@ import optparse
import re
import shutil
import stat
+import ssl
import urllib.error
import urllib.request
if sys.version_info[0] == 3:
import urllib.request

View File

@@ -0,0 +1,77 @@
{
lib,
stdenv,
fetchFromGitHub,
makeWrapper,
nix-update-script,
python3,
git,
gnupg,
less,
openssh,
}:
stdenv.mkDerivation rec {
pname = "git-repo";
version = "2.58";
src = fetchFromGitHub {
owner = "android";
repo = "tools_repo";
rev = "v${version}";
hash = "sha256-s82v5+m+wpLEWMQiqfLegleTEs/KDzaqHGM7hn+/7fk=";
};
# Fix 'NameError: name 'ssl' is not defined'
patches = [ ./import-ssl-module.patch ];
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ python3 ];
postPatch = ''
substituteInPlace repo --replace \
'urllib.request.urlopen(url)' \
'urllib.request.urlopen(url, context=ssl.create_default_context())'
'';
installPhase = ''
runHook preInstall
mkdir -p $out/bin
cp repo $out/bin/repo
runHook postInstall
'';
# Important runtime dependencies
postFixup = ''
wrapProgram $out/bin/repo --prefix PATH ":" \
"${
lib.makeBinPath [
git
gnupg
less
openssh
]
}"
'';
passthru = {
updateScript = nix-update-script { };
};
meta = with lib; {
description = "Android's repo management tool";
longDescription = ''
Repo is a Python script based on Git that helps manage many Git
repositories, does the uploads to revision control systems, and automates
parts of the development workflow. Repo is not meant to replace Git, only
to make it easier to work with Git.
'';
homepage = "https://android.googlesource.com/tools/repo";
license = licenses.asl20;
maintainers = with maintainers; [ otavio ];
platforms = platforms.unix;
mainProgram = "repo";
};
}