From ecb7de9b4e304faec007f734489e0a025efa70c4 Mon Sep 17 00:00:00 2001
From: P. J. McDermott <pj@pehjota.net>
Date: Tue, 26 May 2015 00:45:29 -0400
Subject: Merge branch 'master' into feature/installer-integration

Conflicts:
	lib/cmd/install.sh
---
(limited to 'lib/profile')

diff --git a/lib/profile/proteanos.sh b/lib/profile/proteanos.sh
index f19af65..b78c5e8 100644
--- a/lib/profile/proteanos.sh
+++ b/lib/profile/proteanos.sh
@@ -20,16 +20,6 @@
 
 use opkg
 
-# TODO: This should be replaced with a prof_proteanos_validate_archplat()
-# function that gets valid architectures and platforms from the package archive
-# (which pro-archman needs to list in the distribution).
-prof_proteanos_archplats='
-amd64-linux-glibc                       dev
-i686-linux-glibc                        dev
-i686-linux-glibc                        ao751h
-i686-linux-glibc                        dimension2400
-i686-linux-glibc                        x60
-'
 prof_proteanos_fstab_linux="\
 proc   /proc    proc   defaults
 sys    /sys     sysfs  defaults
@@ -111,6 +101,27 @@ prof_proteanos_select_mirror()
 	printf '%s\n' "${mirror}"
 }
 
+prof_proteanos_validate_archplat()
+{
+	local mirror="${1}"
+	local arch="${2}"
+	local plat="${3}"
+	local suite="${4}"
+
+	while read -r archplat; do
+		case "${archplat}" in
+			"${arch}/${plat}")
+				return 0
+				;;
+		esac
+	done <<-EOF
+		$(wget -q -O - "${mirror}/feeds/${suite}/Manifest" | sed \
+			's|/[^/]*$||; /^all\//d; /\/all$/d;')
+		EOF
+
+	return 1
+}
+
 prof_proteanos_feeds()
 {
 	local mirror="${1}"
@@ -124,10 +135,10 @@ prof_proteanos_feeds()
 	for a in "${arch}" 'all'; do
 		for p in "${plat}" 'all'; do
 			for s in 'base'; do
-				printf 'src proteanos_%s_%s_%s_%s_%s ' \
+				printf 'src/gz proteanos_%s_%s_%s_%s_%s ' \
 					"${suite%/*}" "${suite#*/}" \
 					"${a}" "${p}" "${s}"
-				printf '%s/feeds/%s/%s/%s/%s/Packages\n' \
+				printf '%s/feeds/%s/%s/%s/%s/Packages.gz\n' \
 					"${mirror}" "${suite}" \
 					"${a}" "${p}" "${s}"
 			done
@@ -135,10 +146,10 @@ prof_proteanos_feeds()
 	done
 
 	for s in 'base'; do
-		printf 'src proteanos_%s_%s_%s_%s_%s ' \
+		printf 'src/gz proteanos_%s_%s_%s_%s_%s ' \
 			"${suite%/*}" "${suite#*/}" \
 			'src' 'all' "${s}"
-		printf '%s/feeds/%s/%s/%s/%s/Packages\n' \
+		printf '%s/feeds/%s/%s/%s/%s/Packages.gz\n' \
 			"${mirror}" "${suite}" \
 			'src' 'all' "${s}"
 	done
--
cgit v0.9.1