Loading pkgs/by-name/pr/proxypin/gitHashes.json→pkgs/by-name/pr/proxypin/git-hashes.json +0 −0 File moved. View file pkgs/by-name/pr/proxypin/package.nix +2 −2 Original line number Diff line number Diff line Loading @@ -24,7 +24,7 @@ flutter332.buildFlutterApplication { pubspecLock = lib.importJSON ./pubspec.lock.json; gitHashes = lib.importJSON ./gitHashes.json; gitHashes = lib.importJSON ./git-hashes.json; postPatch = '' substituteInPlace linux/my_application.cc \ Loading Loading @@ -52,7 +52,7 @@ flutter332.buildFlutterApplication { ${lib.getExe flutter332} pub get ${lib.getExe yq-go} eval --output-format=json --prettyPrint pubspec.lock > $PACKAGE_DIR/pubspec.lock.json popd $PACKAGE_DIR/update-gitHashes.py $(nix eval --file . dart.fetchGitHashesScript) --input $PACKAGE_DIR/pubspec.lock.json --output $PACKAGE_DIR/git-hashes.json ''; meta = { Loading pkgs/by-name/pr/proxypin/update-gitHashes.pydeleted 100755 → 0 +0 −51 Original line number Diff line number Diff line #! /usr/bin/env nix-shell #! nix-shell -i python3 -p python3 nix-prefetch-git import json import subprocess import sys from pathlib import Path THIS_FOLDER = Path(__file__).parent.resolve() PUBSPEC_LOCK = THIS_FOLDER / "pubspec.lock.json" GIT_HASHES = THIS_FOLDER / "gitHashes.json" def fetch_git_hash(url: str, rev: str) -> str: result = subprocess.run( ["nix-prefetch-git", "--url", url, "--rev", rev], capture_output=True, text=True, check=True, ) return json.loads(result.stdout)["hash"] def main() -> None: if not PUBSPEC_LOCK.exists(): sys.exit(1) try: data = json.loads(PUBSPEC_LOCK.read_text()) except json.JSONDecodeError: sys.exit(1) output: dict[str, str] = {} for name, info in data.get("packages", {}).items(): if info.get("source") != "git": continue desc = info.get("description") if not isinstance(desc, dict): continue url = desc.get("url") rev = desc.get("resolved-ref") if not (isinstance(url, str) and isinstance(rev, str)): continue try: package_hash = fetch_git_hash(url, rev) except subprocess.CalledProcessError: continue output[name] = package_hash GIT_HASHES.write_text(json.dumps(output, indent=2) + "\n") if __name__ == "__main__": main() Loading
pkgs/by-name/pr/proxypin/gitHashes.json→pkgs/by-name/pr/proxypin/git-hashes.json +0 −0 File moved. View file
pkgs/by-name/pr/proxypin/package.nix +2 −2 Original line number Diff line number Diff line Loading @@ -24,7 +24,7 @@ flutter332.buildFlutterApplication { pubspecLock = lib.importJSON ./pubspec.lock.json; gitHashes = lib.importJSON ./gitHashes.json; gitHashes = lib.importJSON ./git-hashes.json; postPatch = '' substituteInPlace linux/my_application.cc \ Loading Loading @@ -52,7 +52,7 @@ flutter332.buildFlutterApplication { ${lib.getExe flutter332} pub get ${lib.getExe yq-go} eval --output-format=json --prettyPrint pubspec.lock > $PACKAGE_DIR/pubspec.lock.json popd $PACKAGE_DIR/update-gitHashes.py $(nix eval --file . dart.fetchGitHashesScript) --input $PACKAGE_DIR/pubspec.lock.json --output $PACKAGE_DIR/git-hashes.json ''; meta = { Loading
pkgs/by-name/pr/proxypin/update-gitHashes.pydeleted 100755 → 0 +0 −51 Original line number Diff line number Diff line #! /usr/bin/env nix-shell #! nix-shell -i python3 -p python3 nix-prefetch-git import json import subprocess import sys from pathlib import Path THIS_FOLDER = Path(__file__).parent.resolve() PUBSPEC_LOCK = THIS_FOLDER / "pubspec.lock.json" GIT_HASHES = THIS_FOLDER / "gitHashes.json" def fetch_git_hash(url: str, rev: str) -> str: result = subprocess.run( ["nix-prefetch-git", "--url", url, "--rev", rev], capture_output=True, text=True, check=True, ) return json.loads(result.stdout)["hash"] def main() -> None: if not PUBSPEC_LOCK.exists(): sys.exit(1) try: data = json.loads(PUBSPEC_LOCK.read_text()) except json.JSONDecodeError: sys.exit(1) output: dict[str, str] = {} for name, info in data.get("packages", {}).items(): if info.get("source") != "git": continue desc = info.get("description") if not isinstance(desc, dict): continue url = desc.get("url") rev = desc.get("resolved-ref") if not (isinstance(url, str) and isinstance(rev, str)): continue try: package_hash = fetch_git_hash(url, rev) except subprocess.CalledProcessError: continue output[name] = package_hash GIT_HASHES.write_text(json.dumps(output, indent=2) + "\n") if __name__ == "__main__": main()