103 lines
1.9 KiB
Bash
Executable file
103 lines
1.9 KiB
Bash
Executable file
#! /usr/bin/env sh
|
|
|
|
set \
|
|
"pip" \
|
|
"setuptools" \
|
|
"wheel" \
|
|
\
|
|
"uv" \
|
|
\
|
|
"pelican" \
|
|
\
|
|
"hatch" \
|
|
\
|
|
"Sphinx" \
|
|
"sphinx-rtd-theme" \
|
|
\
|
|
"gitlint" \
|
|
\
|
|
"pydoclint" \
|
|
"pylint" \
|
|
"ruff" \
|
|
\
|
|
"pytest" \
|
|
\
|
|
"toml" \
|
|
\
|
|
"twine" \
|
|
\
|
|
"mypy" \
|
|
"pyright" \
|
|
\
|
|
"ruamel.yaml" \
|
|
"PyYAML" \
|
|
"types-PyYAML"
|
|
|
|
file="$(readlink --canonicalize-existing "${0}")"
|
|
root="$(dirname "${file}")"
|
|
root="${root}/root/py/pypi"
|
|
tmp="${root}/tmp"
|
|
|
|
rm --force --recursive \
|
|
~/.cache/pip "${root}"
|
|
|
|
for version in "os" "3.12" "3.11" "3.10"; do
|
|
if [ "${version}" != "os" ]; then
|
|
export VIRTUAL_ENV="/prj/venv/${version}"
|
|
export OLD_PATH="${PATH}"
|
|
export PATH="${VIRTUAL_ENV}/bin:${PATH}"
|
|
fi
|
|
|
|
sub="${root}/${version}"
|
|
|
|
python -m pip \
|
|
download \
|
|
--dest "${sub}" \
|
|
"${@}"
|
|
|
|
prefix="Name: "
|
|
for wheel in "${sub}/"*; do
|
|
rm --force --recursive "${tmp}"
|
|
echo
|
|
echo "${wheel}"
|
|
file="$(basename "${wheel}")"
|
|
case "${file}" in
|
|
*.tar.gz)
|
|
short="${file%.*}"
|
|
short="${short%.*}"
|
|
;;
|
|
*.whl)
|
|
short="${file%.*}"
|
|
;;
|
|
esac
|
|
file_name="$(echo "${short}" | cut -d "-" -f 1)"
|
|
file_version="$(echo "${short}" | cut -d "-" -f 2)"
|
|
case "${file}" in
|
|
*.tar.gz)
|
|
meta_data="${file_name}-${file_version}/${file_name}.egg-info/PKG-INFO"
|
|
tar xf "${wheel}" -C "${tmp}" "${meta_data}"
|
|
;;
|
|
*.whl)
|
|
meta_data="${file_name}-${file_version}.dist-info/METADATA"
|
|
unzip "${wheel}" "${meta_data}" -d "${tmp}"
|
|
;;
|
|
esac
|
|
name="$(grep "${prefix}" "${tmp}/${meta_data}" | sed "s|${prefix}||")"
|
|
echo "${name}"
|
|
name="$(echo "${name}" | tr "[:upper:]" "[:lower:]")"
|
|
name="$(echo "${name}" | tr "." "-")"
|
|
name="$(echo "${name}" | tr "_" "-")"
|
|
name="$(echo "${name}" | tr -d "\r")"
|
|
echo "${name}"
|
|
simple="${sub}/simple/${name}"
|
|
mkdir --parents "${simple}"
|
|
mv -i "${sub}/${file_name}-"* "${simple}/"
|
|
done
|
|
|
|
if [ "${version}" != "os" ]; then
|
|
export PATH="${OLD_PATH}"
|
|
unset OLD_PATH VIRTUAL_ENV
|
|
fi
|
|
done
|
|
|
|
rm --force --recursive "${tmp}"
|