diff options
| author | Tobias Järvelöv <tobias.jarvelov@mullvad.net> | 2026-04-10 17:11:40 +0200 |
|---|---|---|
| committer | Tobias Järvelöv <tobias.jarvelov@mullvad.net> | 2026-04-23 09:35:53 +0200 |
| commit | 6246a8fa04ffc8c31836932eb6b4bb205cd4a350 (patch) | |
| tree | adcd713226bb10d2d4efbdc68eff05cc1c842dda | |
| parent | 92bdefe365f0da450160c0833b0d7265e63ba080 (diff) | |
| download | mullvadvpn-6246a8fa04ffc8c31836932eb6b4bb205cd4a350.tar.xz mullvadvpn-6246a8fa04ffc8c31836932eb6b4bb205cd4a350.zip | |
Add shell script to replace npm lifecycle operations
| -rwxr-xr-x | desktop/scripts/install-scripts.sh | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/desktop/scripts/install-scripts.sh b/desktop/scripts/install-scripts.sh new file mode 100755 index 0000000000..b827f55aa3 --- /dev/null +++ b/desktop/scripts/install-scripts.sh @@ -0,0 +1,57 @@ +#!/usr/bin/env bash +set -eu + +SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" +DESKTOP_DIR="$( cd "$SCRIPT_DIR/.." && pwd )" +REPO_DIR="$( cd "$SCRIPT_DIR/../.." && pwd )" + +source "$REPO_DIR/scripts/utils/log" + +function desktop_ci() { + desktop_pre_install + pushd "$DESKTOP_DIR" + npm ci --no-audit --no-fund + popd + desktop_post_install +} + +function desktop_install() { + desktop_pre_install + pushd "$DESKTOP_DIR" + npm install + popd + desktop_post_install +} + + +function desktop_post_install() { + # Setup electron after install + pushd "$DESKTOP_DIR/node_modules/electron" + npm run postinstall + popd + + # Run postinstall in our own packages + pushd "$DESKTOP_DIR" + npm run postinstall --if-present --ws + popd +} + +function desktop_pre_install() { + # Run preinstall in our own packages + pushd "$DESKTOP_DIR" + npm run preinstall --if-present --ws + popd +} + +case ${1-:""} in + ci) + desktop_ci + ;; + install) + desktop_install + ;; + *) + log_error "Invalid argument. Specify 'ci' or 'install' as the first argument." + exit 1 +esac + |
