Compare commits

..

No commits in common. "ad31869ee1a4b94aa74e0d6671035f8115a69eb0" and "b53ddb743e0f69b7a176b1b5e236a7927fbd3b2c" have entirely different histories.

103
spcd.sh
View file

@ -30,9 +30,9 @@ spcd_main() {
spcd_upgrade_packages spcd_upgrade_packages
spcd_install_git spcd_install_git
spcd_install_python spcd_install_python
spcd_install_python_modules
# TODO move to Python # TODO move to Python
spcd_install_packages spcd_install_packages
spcd_install_python_modules
spcd_write_python_module spcd_write_python_module
spcd_switch_to_python spcd_switch_to_python
} }
@ -599,53 +599,6 @@ spcd_install_python() {
spcd_ln_python "${SPCD_PYTHON_COMMAND}" spcd_ln_python "${SPCD_PYTHON_COMMAND}"
} }
spcd_install_python_modules() {
spcd_step "Install Python modules"
spcd_ipm__root="$(mktemp --directory)" || exit
spcd_ipm__target="${SPCD_PYTHON_VENV_PACKAGES}"
echo "${spcd_ipm__root}"
for spcd_ipm__repository in "${SPCD_GIT_MAIN}" "${SPCD_GIT_ROOT}"; do
case "${spcd_ipm__repository}" in
http*) spcd_ipm__url="${spcd_ipm__repository}" ;;
*/*) spcd_ipm__url="${SPCD_PROJECT_ROOT}/${spcd_ipm__repository}" ;;
*) spcd_ipm__url="\
${SPCD_PROJECT_ROOT}/${SPCD_PROJECT_PATH}/${spcd_ipm__repository}" ;;
esac
spcd_ipm__name="$(basename "${spcd_ipm__url}")"
spcd_split
echo "\
${spcd_ipm__url}
"
git clone \
"${spcd_ipm__url}" \
"${spcd_ipm__root}/${spcd_ipm__name}" ||
exit
spcd_ipm__path="${spcd_ipm__root}/${spcd_ipm__name}/${spcd_ipm__name}"
echo "\
${spcd_ipm__path}
${spcd_ipm__target}"
cp --recursive "${spcd_ipm__path}" "${spcd_ipm__target}" ||
exit
# check matching of file and variable
spcd_ipm__script="${spcd_ipm__root}/${spcd_ipm__name}/spcd.sh"
if [ -f "${spcd_ipm__script}" ]; then
spcd_split
spcd_ipm__check="${spcd_ipm__root}/check.sha512sum"
sha512sum "${spcd_ipm__script}" >"${spcd_ipm__check}"
printf "%s" "${SPCD}" >"${spcd_ipm__script}"
ls -l "${spcd_ipm__script}"
dos2unix "${spcd_ipm__script}"
ls -l "${spcd_ipm__script}"
sha512sum -c "${spcd_ipm__check}" || spcd_error_ci "SPCD"
fi
done
spcd_split
spcd_ls "${spcd_ipm__target}"
spcd_split
spcd_rm "${spcd_ipm__root}"
}
# TODO move to Python # TODO move to Python
spcd_install_packages() { spcd_install_packages() {
# dos2unix # dos2unix
@ -746,10 +699,7 @@ spcd_install_packages() {
"${SPCD_OS_DEBIAN}" | "${SPCD_OS_UBUNTU}") "${SPCD_OS_DEBIAN}" | "${SPCD_OS_UBUNTU}")
spcd_install_package "python3-venv" spcd_install_package "python3-venv"
;; ;;
"${SPCD_OS_ARCH}")
# FIXME arch # FIXME arch
exit 255
;;
*) ;; *) ;;
esac esac
spcd_split spcd_split
@ -770,6 +720,53 @@ index-url = ${SPCD_URL_PYTHON}
"sphinx" "sphinx-rtd-theme" "sphinx" "sphinx-rtd-theme"
} }
spcd_install_python_modules() {
spcd_step "Install Python modules"
spcd_ipm__root="$(mktemp --directory)" || exit
spcd_ipm__target="${SPCD_PYTHON_VENV_PACKAGES}"
echo "${spcd_ipm__root}"
for spcd_ipm__repository in "${SPCD_GIT_MAIN}" "${SPCD_GIT_ROOT}"; do
case "${spcd_ipm__repository}" in
http*) spcd_ipm__url="${spcd_ipm__repository}" ;;
*/*) spcd_ipm__url="${SPCD_PROJECT_ROOT}/${spcd_ipm__repository}" ;;
*) spcd_ipm__url="\
${SPCD_PROJECT_ROOT}/${SPCD_PROJECT_PATH}/${spcd_ipm__repository}" ;;
esac
spcd_ipm__name="$(basename "${spcd_ipm__url}")"
spcd_split
echo "\
${spcd_ipm__url}
"
git clone \
"${spcd_ipm__url}" \
"${spcd_ipm__root}/${spcd_ipm__name}" ||
exit
spcd_ipm__path="${spcd_ipm__root}/${spcd_ipm__name}/${spcd_ipm__name}"
echo "\
${spcd_ipm__path}
${spcd_ipm__target}"
cp --recursive "${spcd_ipm__path}" "${spcd_ipm__target}" ||
exit
# check matching of file and variable
spcd_ipm__script="${spcd_ipm__root}/${spcd_ipm__name}/spcd.sh"
if [ -f "${spcd_ipm__script}" ]; then
spcd_split
spcd_ipm__check="${spcd_ipm__root}/check.sha512sum"
sha512sum "${spcd_ipm__script}" >"${spcd_ipm__check}"
printf "%s" "${SPCD}" >"${spcd_ipm__script}"
ls -l "${spcd_ipm__script}"
dos2unix "${spcd_ipm__script}"
ls -l "${spcd_ipm__script}"
sha512sum -c "${spcd_ipm__check}" || spcd_error_ci "SPCD"
fi
done
spcd_split
spcd_ls "${spcd_ipm__target}"
spcd_split
spcd_rm "${spcd_ipm__root}"
}
spcd_write_python_module() { spcd_write_python_module() {
spcd_step "Write Python module" spcd_step "Write Python module"
for spcd_wpm__variable in \ for spcd_wpm__variable in \
@ -781,7 +778,7 @@ spcd_write_python_module() {
spcd_wpm__text="${spcd_wpm__text}${spcd_wpm__value} spcd_wpm__text="${spcd_wpm__text}${spcd_wpm__value}
" "
done done
spcd_write "${SPCD_PYTHON_PACKAGES}/env.py" "${spcd_wpm__text} spcd_write "${SPCD_PYTHON_VENV_PACKAGES}/env.py" "${spcd_wpm__text}
SPCD_STEP = $((SPCD_STEP + 1)) SPCD_STEP = $((SPCD_STEP + 1))
" "
} }
@ -792,7 +789,7 @@ spcd_switch_to_python() {
echo "\ echo "\
${SPCD_PATH} ${SPCD_PATH}
${SPCD_PYTHON_ALIAS} / ${spcd_stp__name}" ${SPCD_PYTHON_PACKAGES}/${spcd_stp__name}"
"${SPCD_PYTHON_ALIAS}" -m "${spcd_stp__name}" "${SPCD_PYTHON_ALIAS}" -m "${spcd_stp__name}"
} }