#!/bin/bash set -euo pipefail # # Zip a file directly into app/omni.ja in staging/ # # Zip paths are relative to the current directory, so this should be run from # the client build/ directory # SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" ROOT_DIR="$(dirname "$SCRIPT_DIR")" . "$ROOT_DIR/config.sh" function usage { cat >&2 <<DONE Usage: $0 path/to/file DONE exit 1 } if [ -z "${1:-}" ]; then usage fi files="$@" for file in $files; do if [ ! -f "$file" ]; then echo "Error: $file not found!" exit 1 fi done mac_path="$STAGE_DIR/Zotero.app/Contents/Resources" win_path="$STAGE_DIR/Zotero_win-x64" linux_path="$STAGE_DIR/Zotero_linux-x86_64" added=0 for path in "$mac_path" "$win_path" "$linux_path"; do if [ -d "$path" ]; then echo "$path/app/omni.ja" echo "Updating $(basename $(dirname $(dirname $path)))" zip "$path/app/omni.ja" $files added=1 fi done if [ $added -eq 0 ]; then echo "No directories found in staging!" exit 1 fi