Skip to content

Commit 77498f1

Browse files
committed
Merge commit '3652e609bdcdb199ece68bcfd60665d19594e5f0' into catchup/long_lived_datalayer_merkle_blob_from_main_3652e609bdcdb199ece68bcfd60665d19594e5f0
2 parents 9abbcb6 + 3652e60 commit 77498f1

File tree

6 files changed

+18
-167
lines changed

6 files changed

+18
-167
lines changed

.github/workflows/test-install-scripts.yml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,12 +78,18 @@ jobs:
7878
uses: actions/checkout@v5
7979
with:
8080
fetch-depth: 0
81+
submodules: recursive
8182

8283
- name: Setup Python environment
8384
uses: Chia-Network/actions/setup-python@main
8485
with:
8586
python-version: ${{ matrix.python.major-dot-minor }}
8687

88+
- name: Setup Node per .nvmrc in GUI
89+
uses: actions/setup-node@v5
90+
with:
91+
node-version-file: chia-blockchain-gui/.nvmrc
92+
8793
- uses: ./.github/actions/install
8894
with:
8995
python-version: ${{ matrix.python.major-dot-minor }}

build_scripts/npm_global/__init__.py

Whitespace-only changes.

build_scripts/npm_global/package-lock.json

Lines changed: 0 additions & 30 deletions
This file was deleted.

build_scripts/npm_global/package.json

Lines changed: 0 additions & 15 deletions
This file was deleted.

install-gui.sh

Lines changed: 12 additions & 115 deletions
Original file line numberDiff line numberDiff line change
@@ -29,14 +29,17 @@ fi
2929
# Allows overriding the branch or commit to build in chia-blockchain-gui
3030
SUBMODULE_BRANCH=$1
3131

32-
nodejs_is_installed() {
33-
if ! npm version >/dev/null 2>&1; then
34-
return 1
32+
do_check_npm_install() {
33+
if ! command -v npm >/dev/null 2>&1; then
34+
echo "npm is not installed. Please install NodeJS>=20 and npm>=10 manually"
35+
exit 1
36+
fi
37+
38+
if ! command -v node >/dev/null 2>&1; then
39+
echo "NodeJS is not installed. Please install NodeJS>=20 and npm>=10 manually"
40+
exit 1
3541
fi
36-
return 0
37-
}
3842

39-
do_install_npm_locally() {
4043
NODEJS_VERSION="$(node -v | cut -d'.' -f 1 | sed -e 's/^v//')"
4144
NPM_VERSION="$(npm -v | cut -d'.' -f 1)"
4245

@@ -48,42 +51,8 @@ do_install_npm_locally() {
4851
echo "Current npm version($(npm -v)) is less than 10. GUI app requires npm>=10."
4952
fi
5053

51-
if [ "$(uname)" = "OpenBSD" ] || [ "$(uname)" = "FreeBSD" ]; then
52-
# `n` package does not support OpenBSD/FreeBSD
53-
echo "Please install NodeJS>=20 and/or npm>=10 manually"
54-
exit 1
55-
fi
56-
57-
NPM_GLOBAL="${SCRIPT_DIR}/build_scripts/npm_global"
58-
# install-gui.sh can be executed
59-
echo "cd ${NPM_GLOBAL}"
60-
cd "${NPM_GLOBAL}"
61-
if [ "$NPM_VERSION" -lt "6" ]; then
62-
# Ubuntu image of Amazon ec2 instance surprisingly uses [email protected]
63-
# which doesn't support `npm ci` as of 27th Jan, 2022
64-
echo "npm install"
65-
npm install
66-
else
67-
echo "npm ci"
68-
npm ci
69-
fi
70-
export N_PREFIX=${SCRIPT_DIR}/.n
71-
PATH="${N_PREFIX}/bin:$(npm prefix)/node_modules/.bin:${PATH}"
72-
export PATH
73-
# `n 20` here installs nodejs@20 under $N_PREFIX directory
74-
echo "n 20"
75-
n 20
76-
echo "Current NodeJS version: $(node -v)"
77-
echo "Current npm version: $(npm -v)"
78-
if [ "$(node -v | cut -d'.' -f 1 | sed -e 's/^v//')" -lt "20" ]; then
79-
echo "Error: Failed to install NodeJS>=20"
80-
exit 1
81-
fi
82-
if [ "$(npm -v | cut -d'.' -f 1)" -lt "10" ]; then
83-
echo "Error: Failed to install npm>=10"
84-
exit 1
85-
fi
86-
cd "${SCRIPT_DIR}"
54+
echo "Please install NodeJS>=20 and/or npm>=10 manually"
55+
exit 1
8756
else
8857
echo "Found NodeJS $(node -v)"
8958
echo "Found npm $(npm -v)"
@@ -106,79 +75,7 @@ patch_inconsistent_npm_issue() {
10675
ln -s "$(command -v npm)" "${node_module_dir}/.bin/npm"
10776
}
10877

109-
# Manage npm and other install requirements on an OS specific basis
110-
if [ "$(uname)" = "Linux" ]; then
111-
#LINUX=1
112-
if type apt-get >/dev/null 2>&1; then
113-
# Debian/Ubuntu
114-
115-
# Check if we are running a Raspberry PI 4
116-
if [ "$(uname -m)" = "aarch64" ] &&
117-
[ "$(uname -n)" = "raspberrypi" ]; then
118-
# Check if NodeJS & NPM is installed
119-
type npm >/dev/null 2>&1 || {
120-
echo >&2 "Please install NODEJS&NPM manually"
121-
}
122-
else
123-
if ! nodejs_is_installed; then
124-
echo "nodejs is not installed. Installing..."
125-
echo "sudo apt-get install -y npm nodejs libxss1"
126-
sudo apt-get install -y npm nodejs libxss1
127-
fi
128-
do_install_npm_locally
129-
fi
130-
elif type yum >/dev/null 2>&1 && [ ! -f "/etc/redhat-release" ] && [ ! -f "/etc/centos-release" ] && [ ! -f /etc/rocky-release ] && [ ! -f /etc/fedora-release ]; then
131-
# AMZN 2
132-
if ! nodejs_is_installed; then
133-
echo "Installing nodejs on Amazon Linux 2."
134-
curl -sL https://rpm.nodesource.com/setup_20.x | sudo bash -
135-
sudo yum install -y nodejs
136-
fi
137-
do_install_npm_locally
138-
elif type yum >/dev/null 2>&1 && [ ! -f /etc/rocky-release ] && [ ! -f /etc/fedora-release ] && [ -f /etc/redhat-release ] || [ -f /etc/centos-release ]; then
139-
# CentOS or Redhat
140-
if ! nodejs_is_installed; then
141-
echo "Installing nodejs on CentOS/Redhat."
142-
curl -sL https://rpm.nodesource.com/setup_20.x | sudo bash -
143-
sudo yum install -y nodejs
144-
fi
145-
do_install_npm_locally
146-
elif type yum >/dev/null 2>&1 && [ -f /etc/rocky-release ] || [ -f /etc/fedora-release ]; then
147-
# RockyLinux
148-
if ! nodejs_is_installed; then
149-
echo "Installing nodejs on RockyLinux/Fedora"
150-
sudo dnf module enable nodejs:20
151-
sudo dnf install -y nodejs
152-
fi
153-
do_install_npm_locally
154-
elif type pacman >/dev/null 2>&1 && [ -f /etc/arch-release ]; then
155-
#Arch Linux
156-
if ! nodejs_is_installed; then
157-
echo "Installing nodejs on Arch Linux"
158-
sudo pacman -S nodejs npm
159-
fi
160-
do_install_npm_locally
161-
fi
162-
elif [ "$(uname)" = "Darwin" ] && type brew >/dev/null 2>&1; then
163-
# MacOS
164-
if ! nodejs_is_installed; then
165-
echo "Installing nodejs on MacOS"
166-
brew install npm
167-
fi
168-
do_install_npm_locally
169-
elif [ "$(uname)" = "OpenBSD" ]; then
170-
if ! nodejs_is_installed; then
171-
echo "Installing nodejs"
172-
pkg_add node
173-
fi
174-
do_install_npm_locally
175-
elif [ "$(uname)" = "FreeBSD" ]; then
176-
if ! nodejs_is_installed; then
177-
echo "Installing nodejs"
178-
pkg install node
179-
fi
180-
do_install_npm_locally
181-
fi
78+
do_check_npm_install
18279

18380
echo ""
18481

start-gui.sh

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,6 @@ SCRIPT_DIR=$(
1111

1212
echo "### Checking GUI dependencies"
1313

14-
if [ -d "${SCRIPT_DIR}/.n" ]; then
15-
export N_PREFIX="${SCRIPT_DIR}/.n"
16-
export PATH="${N_PREFIX}/bin:${PATH}"
17-
echo "Loading nodejs/npm from"
18-
echo " ${N_PREFIX}"
19-
fi
20-
2114
if [ -z "$VIRTUAL_ENV" ]; then
2215
echo "This requires the chia python virtual environment."
2316
echo "Execute '. ./activate' before running."

0 commit comments

Comments
 (0)