summary refs log tree commit diff
path: root/pkgs/development/tools/poetry2nix/poetry2nix/fetch-from-pypi.sh
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/tools/poetry2nix/poetry2nix/fetch-from-pypi.sh')
-rw-r--r--pkgs/development/tools/poetry2nix/poetry2nix/fetch-from-pypi.sh24
1 files changed, 24 insertions, 0 deletions
diff --git a/pkgs/development/tools/poetry2nix/poetry2nix/fetch-from-pypi.sh b/pkgs/development/tools/poetry2nix/poetry2nix/fetch-from-pypi.sh
new file mode 100644
index 00000000000..e56dee6849b
--- /dev/null
+++ b/pkgs/development/tools/poetry2nix/poetry2nix/fetch-from-pypi.sh
@@ -0,0 +1,24 @@
+source $stdenv/setup
+set -euo pipefail
+
+curl="curl            \
+ --location           \
+ --max-redirs 20      \
+ --retry 2            \
+ --disable-epsv       \
+ --cookie-jar cookies \
+ --insecure           \
+ --speed-time 5       \
+ --progress-bar       \
+ --fail               \
+ $curlOpts            \
+ $NIX_CURL_FLAGS"
+
+echo "Trying to fetch with predicted URL: $predictedURL"
+
+$curl $predictedURL --output $out && exit 0
+
+echo "Predicted URL '$predictedURL' failed, querying pypi.org"
+$curl "https://pypi.org/pypi/$pname/json" | jq -r ".releases.\"$version\"[] | select(.filename == \"$file\") | .url" > url
+url=$(cat url)
+$curl -k $url --output $out