ArchiveBox/bin/build_brew.sh

54 lines
1.6 KiB
Bash
Raw Normal View History

2020-11-28 09:10:48 +00:00
#!/usr/bin/env bash
### Bash Environment Setup
# http://redsymbol.net/articles/unofficial-bash-strict-mode/
# https://www.gnu.org/software/bash/manual/html_node/The-Set-Builtin.html
# set -o xtrace
set -o errexit
set -o errtrace
set -o nounset
set -o pipefail
IFS=$'\n'
REPO_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" > /dev/null 2>&1 && cd .. && pwd )"
2020-11-28 09:10:48 +00:00
CURRENT_PLAFORM="$(uname)"
REQUIRED_PLATFORM="Darwin"
if [[ "$CURRENT_PLAFORM" != "$REQUIRED_PLATFORM" ]]; then
echo "[!] Skipping the Homebrew package build on $CURRENT_PLAFORM (it can only be run on $REQUIRED_PLATFORM)."
exit 0
fi
2020-11-28 09:10:48 +00:00
cd "$REPO_DIR/brew_dist"
2020-11-28 09:11:10 +00:00
# make sure archivebox.rb is up-to-date with the dependencies
2023-11-04 04:30:24 +00:00
git pull
git status | grep 'up to date'
2020-11-28 09:11:10 +00:00
2023-11-04 04:30:24 +00:00
echo
echo "[+] Uninstalling any exisitng archivebox versions..."
brew uninstall archivebox || true
brew untap archivebox/archivebox || true
brew uninstall --ignore-dependencies yt-dlp || true
brew uninstall python-mutagen || true
brew uninstall python-brotli || true
pip3 uninstall archivebox || true
pip3 uninstall mutagen || true
pip3 uninstall brotli || true
pip3 uninstall yt-dlp || true
2023-11-04 04:30:24 +00:00
# echo "[*] Running Formula linters and test build..."
# brew test-bot --tap=ArchiveBox/homebrew-archivebox archivebox/archivebox/archivebox || true
# brew uninstall archivebox || true
# brew untap archivebox/archivebox || true
echo
echo "[+] Installing and building hombrew bottle from https://github.com/ArchiveBox/homebrew-archivebox#main"
2023-11-04 04:30:24 +00:00
brew tap archivebox/archivebox
brew install --build-bottle archivebox
2020-11-28 09:10:48 +00:00
brew bottle archivebox
2023-11-04 04:30:24 +00:00
echo
echo "[√] Finished. Make sure to commit the outputted .tar.gz and bottle files!"