summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAaron Ball <nullspoon@oper.io>2017-06-23 08:24:19 -0600
committerAaron Ball <nullspoon@oper.io>2017-06-23 08:24:19 -0600
commit69ddd48095d34089395df3a48729d18ceb9bd548 (patch)
tree59eb35c194e4a3bc08b51c39a4eeead63ac280b2
parent533cff3fadcf3b4bf2e18fe011459620a2e3b757 (diff)
downloadportimg-69ddd48095d34089395df3a48729d18ceb9bd548.tar.gz
portimg-69ddd48095d34089395df3a48729d18ceb9bd548.tar.xz
pkgimg:Fixed problem with multiple ports
When a relative PORTSDIR path was used, all ports after the first would fail because the relative path was wrong after the first build. This changes the specified path to absolute, which ensures subsequent builds do not fail for this reason.
-rwxr-xr-xbin/pkgimg.sh5
-rwxr-xr-xbin/pkgmk.sh37
2 files changed, 41 insertions, 1 deletions
diff --git a/bin/pkgimg.sh b/bin/pkgimg.sh
index fdece5a..94cca5c 100755
--- a/bin/pkgimg.sh
+++ b/bin/pkgimg.sh
@@ -30,12 +30,15 @@ export PORTSDIR=${PORTSDIR:-${BASEDIR}/ports}
function main {
local manifest=${1:-}
+ local installbase=''
+
if [[ -z ${manifest} ]]; then
lerror "Please provide a port manifest."
return 1
fi
- local installbase=''
+ # Convert portsdir to absolute path
+ PORTSDIR="$(cd ${PORTSDIR} && pwd)"
installbase=$(mktemp -d /tmp/pkgimg-install.XXXX)
diff --git a/bin/pkgmk.sh b/bin/pkgmk.sh
new file mode 100755
index 0000000..c155297
--- /dev/null
+++ b/bin/pkgmk.sh
@@ -0,0 +1,37 @@
+#!/usr/bin/env bash
+#
+# Portimg uses Crux port-like system for creating software deployment images.
+# Copyright (C) 2016 Aaron Ball <nullspoon@oper.io>
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+set -eu
+
+export BASEDIR="$(cd $(dirname ${0})/../ && pwd)"
+export LIBDIR="${BASEDIR}/lib"
+
+source ${LIBDIR}/log.sh
+source ${LIBDIR}/config.sh
+source ${LIBDIR}/template.sh
+source ${LIBDIR}/port.sh
+
+export PORTSDIR=${PORTSDIR:-${BASEDIR}/ports}
+
+function main {
+ local port=${1:-}
+ [[ -z ${port} ]] && lerror "A port name is required." && return 1
+
+}
+
+main ${@}

Generated by cgit