summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/cmd/install.sh18
1 files changed, 12 insertions, 6 deletions
diff --git a/lib/cmd/install.sh b/lib/cmd/install.sh
index 4c7d166..596c803 100644
--- a/lib/cmd/install.sh
+++ b/lib/cmd/install.sh
@@ -54,7 +54,7 @@ cmd_install_main()
profile='proteanos'
fi
- if ! mkdir "${chroot}"; then
+ if ! mkdir "${chroot}" || ! mkdir "${chroot}/.prokit"; then
: Error
fi
@@ -69,14 +69,20 @@ cmd_install_find_pkgs()
local arch="${3}"
local plat="${4}"
local chroot="${5}"
+ local feed_idx=
local feed=
profile_set "${profile}"
- for feed in $(profile_feeds); do
+ while read -r feed_idx feed; do
+ feed_download "${feed}" \
+ >"${chroot}/.prokit/${feed_idx}.index"
feed_find_pkgs 'profile_include_pkg' "$(profile_dep_fields)" \
- "${chroot}/.depends" <<-EOF
- $(feed_download "${feed}")
- EOF
- done
+ "${chroot}/.prokit/${feed_idx}.depends" \
+ "${chroot}/.prokit/${feed_idx}.filenames" \
+ <"${chroot}/.prokit/${feed_idx}.index" \
+ >>"${chroot}/.prokit/packages"
+ done <<-EOF
+ $(profile_feeds)
+ EOF
}