71 lines
2 KiB
Bash
Executable file
71 lines
2 KiB
Bash
Executable file
#!/usr/bin/env sh
|
|
|
|
OUTDIR=result/bin
|
|
REDBEAN_URL="https://redbean.dev/redbean-3.0.0.com"
|
|
REDBEAN_CRC="382f1288bb96ace4bab5145e7df236846c33cc4f1be69233710682a9e71e7467 $OUTDIR/xrforge.com"
|
|
|
|
get(){
|
|
|
|
redbean(){
|
|
test -d $OUTDIR || mkdir -p $OUTDIR
|
|
rm $OUTDIR/*.com || true # delete old
|
|
verify(){
|
|
echo "$REDBEAN_CRC" > /tmp/checksum
|
|
sha256sum -c /tmp/checksum || { echo "psuedosecurity checksum failed"; exit 1; }
|
|
}
|
|
test -f /tmp/xrforge.com || {
|
|
wget --no-check-certificate "$REDBEAN_URL" -O /tmp/xrforge.com
|
|
}
|
|
cp /tmp/xrforge.com $OUTDIR/xrforge.com
|
|
test -n "$ARCH" && {
|
|
test -f /tmp/assimilate || {
|
|
wget https://cosmo.zip/pub/cosmos/bin/assimilate-x86_64.elf -O /tmp/assimilate
|
|
chmod +x /tmp/assimilate
|
|
}
|
|
rm $OUTDIR/*.bak || true
|
|
cp $OUTDIR/xrforge.com $OUTDIR/xrforge-$ARCH.com
|
|
/tmp/assimilate $OUTDIR/xrforge-$ARCH.com
|
|
}
|
|
chmod +x $OUTDIR/*.com
|
|
#verify
|
|
}
|
|
|
|
janusweb(){
|
|
set -x
|
|
test -d pkg/janusweb || {
|
|
mkdir pkg &>/dev/null || true
|
|
test -f janusweb-${version}.tar.gz || {
|
|
wget "https://github.com/coderofsalvation/janusweb/releases/download/v${version}-rc/janusweb-${version}.tar.gz"
|
|
}
|
|
test -d janusweb-${version} || tar -xvf janusweb-${version}.tar.gz
|
|
mv janusweb-${version} pkg/janusweb
|
|
}
|
|
set -x
|
|
rsync -avLu pkg/janusweb src/. # overlay but leave newer files intact
|
|
# cleanup
|
|
rm src/janusweb/janusxr.com || true
|
|
rm src/janusweb/test || true
|
|
rm src/janusweb/media/test || true
|
|
# set xrforge as defualt config
|
|
cp src/janusweb/media/assets/webui/{xrforge,default}.json
|
|
}
|
|
|
|
"$@"
|
|
}
|
|
|
|
build(){
|
|
get redbean
|
|
get janusweb
|
|
cd src
|
|
bundle(){ zip -yr $1 * .lua .init.lua .args; }
|
|
bundle ../result/bin/xrforge.com
|
|
unzip -l ../result/bin/xrforge.com
|
|
test -n "$ARCH" && bundle ../result/bin/xrforge-$ARCH.com
|
|
}
|
|
|
|
rebuild(){
|
|
cd src
|
|
zip -yr ../result/bin/xrforge.com .lua js shader img layout middleware page plugin cmd css .init.lua .args test myverse
|
|
}
|
|
|
|
"$@"
|