Files
AeroPkg/dev.sh

44 lines
1.5 KiB
Bash
Raw Permalink Normal View History

#!/bin/sh
# Set default values if not provided
if [ -z "$aeropkg_home" ]; then
export aeropkg_home="/pkg/gnu/aeropkg"
echo "Warning: aeropkg_home not set. Using default: $aeropkg_home"
fi
if [ -z "$aeropkg_base" ]; then
export aeropkg_base="/pkg"
echo "Warning: aeropkg_base not set. Using default: $aeropkg_base"
fi
INSTALL_PATH="$aeropkg_home"
BASE_PATH="$aeropkg_base"
SCRIPT_DIR=$(dirname "$(readlink -f "$0")")
cargo build --release
mkdir -p "$SCRIPT_DIR/target/release/bin"
cp -f "$SCRIPT_DIR/target/release/pkg" "$SCRIPT_DIR/target/release/bin"
echo "Installing to '$INSTALL_PATH'..."
rsync -a --exclude='etc/' "$SCRIPT_DIR/assets/" "$SCRIPT_DIR/target/release/bin" "$INSTALL_PATH/"
PATH="/bin:/pkg/musl/bin:/pkg/musl/sbin:/pkg/gnu/bin:/pkg/gnu/sbin" chroot /mnt/aerolinux /pkg/gnu/aeropkg/bin/pkg link aeropkg
#rsync -a --exclude='etc/' "$SCRIPT_DIR/assets/" "$SCRIPT_DIR/target/release/bin" air:"$INSTALL_PATH/"
#ssh air /pkg/gnu/aeropkg/bin/pkg link aeropkg
rsync -a --exclude='etc/index-conflict.md' "$SCRIPT_DIR/assets/" "$SCRIPT_DIR/target/release/bin" aura:"$INSTALL_PATH/"
ssh aura /pkg/gnu/aeropkg/bin/pkg link aeropkg
BIN_PATH="$INSTALL_PATH/bin/pkg"
if [ -f "$BIN_PATH" ]; then
patchelf --set-interpreter /pkg/gnu/glibc/lib/ld-linux-x86-64.so.2 "$BIN_PATH"
if [ $? -ne 0 ]; then
echo "Error: Failed to apply patchelf to '$BIN_PATH'." >&2
exit 1
fi
else
echo "Error: Executable '$BIN_PATH' not found after installation." >&2
exit 1
fi
echo "Project successfully installed to '$INSTALL_PATH'"
echo "Base directory: '$BASE_PATH'"