update: seperate HOME and TEMPDIR

now setup LEAFHOME and LEAFTEMPDIR to /tmp/leaf-tmp/$PKG_NAME
and export HOME=$LEAFHOME TEMPDIR=$LEAFTEMPDIR
in this way, HOME and TEMPDIR is out of source tree, which is better
also, path is shorter
This commit is contained in:
2026-01-02 01:30:13 -05:00
parent 1386633baf
commit 4ff79cfdd6

29
leaf
View File

@@ -68,15 +68,17 @@ main() {
fi fi
leaf_parse_options leaf_parse_options
srcdir="${BUILD_DIR}/${PKG_PREFIX}/${PKG_NAME}" srcdir="${BUILD_DIR}/${PKG_PREFIX}/${PKG_NAME}"
TMPDIR="${srcdir}/.leaf-tmp" LEAFTMPDIR="/tmp/leaf-tmp/${PKG_NAME}"
HOME="${srcdir}/.leaf-home" LEAFHOME="/tmp/leaf-tmp/${PKG_NAME}"
export TMPDIR export TMPDIR="${LEAFTMPDIR}"
export HOME export HOME=${LEAFHOME}
pkgdir="${srcdir}"/__pkgdir__ pkgdir="${srcdir}"/__pkgdir__
if [[ x"$1" != x"dirct-install" ]]; then if [[ x"$1" != x"dirct-install" ]]; then
rm -rf "${srcdir}" && install -dm755 "${srcdir}" && cd "${srcdir}" rm -rf "${srcdir}" && install -dm755 "${srcdir}" && cd "${srcdir}"
fi fi
leaf_${1}_package leaf_${1}_package
#rm -rf "${LEAFTMPDIR}"
#rm -rf "${LEAFHOME}"
done done
;; ;;
upgrade) upgrade)
@@ -650,6 +652,7 @@ leaf_prepare_package() {
} }
leaf_build_package() { leaf_build_package() {
rm -rf -- ${TMPDIR} ${HOME}
mkdir -pv ${TMPDIR} mkdir -pv ${TMPDIR}
mkdir -pv ${HOME} mkdir -pv ${HOME}
@@ -773,13 +776,14 @@ leaf_upgrade_package() {
leaf_parse_options leaf_parse_options
srcdir="${BUILD_DIR}/${PKG_PREFIX}/${PKG_NAME}" srcdir="${BUILD_DIR}/${PKG_PREFIX}/${PKG_NAME}"
TMPDIR="${srcdir}/.leaf-tmp" LEAFTMPDIR="/tmp/leaf-tmp/${PKG_NAME}"
HOME="${srcdir}/.leaf-home" LEAFHOME="${LEAFTMPDIR}"
export TMPDIR HOME export TMPDIR="${LEAFTMPDIR}"
export HOME="${LEAFHOME}"
pkgdir="${srcdir}/__pkgdir__" pkgdir="${srcdir}/__pkgdir__"
rm -rf -- "${srcdir}" && install -dm755 -- "${srcdir}" && cd "${srcdir}" rm -rf -- "${srcdir}" && install -dm755 -- "${srcdir}" && cd "${srcdir}"
mkdir -pv -- "${TMPDIR}" "${HOME}" mkdir -pv -- "${LEAFTMPDIR}" "${LEAFHOME}"
leaf_build_package leaf_build_package
@@ -800,15 +804,18 @@ leaf_upgrade_package() {
srcdir="${new_srcdir}" srcdir="${new_srcdir}"
pkgdir="${new_pkgdir}" pkgdir="${new_pkgdir}"
TMPDIR="${srcdir}/.leaf-tmp" LEAFTMPDIR="/tmp/leaf-tmp/${PKG_NAME}"
HOME="${srcdir}/.leaf-home" LEAFHOME="${LEAFTMPDIR}"
export TMPDIR HOME export TMPDIR="${LEAFTMPDIR}"
export HOME="${LEAFHOME}"
[ -d "${pkgdir}" ] || leaf_error "upgrade: built pkgdir missing: ${pkgdir}" [ -d "${pkgdir}" ] || leaf_error "upgrade: built pkgdir missing: ${pkgdir}"
cd "${srcdir}" || leaf_error "upgrade: cannot enter build dir: ${srcdir}" cd "${srcdir}" || leaf_error "upgrade: cannot enter build dir: ${srcdir}"
leaf_dirct-install_package leaf_dirct-install_package
#rm -rf -- "${LEAFTMPDIR}" "${LEAFHOME}"
# new trace dir now exists (generated by leaf_dirct-install_package -> leaf_trace_package) # new trace dir now exists (generated by leaf_dirct-install_package -> leaf_trace_package)
new_trace_dir="${TRACE_DIR}/${new_prefix}/${new_name}" new_trace_dir="${TRACE_DIR}/${new_prefix}/${new_name}"
[ -d "${new_trace_dir}" ] || leaf_error "upgrade: new trace dir missing: ${new_trace_dir}" [ -d "${new_trace_dir}" ] || leaf_error "upgrade: new trace dir missing: ${new_trace_dir}"