Squashed 'nodesource/' changes from ba48c1f..33e0d2a
33e0d2a CI: add NSOLID to the CI tests a9dab9a CI: add NSOLID to the CI tests b84e562 Update scripts to support new NSOLID version 7925aa5 Add node25 scripts 612077e Merge pull request #1890 from nodesource/alejo/fix-distributions 2e44c74 ci(rocky): use official Rocky mirrorlist and tolerate unavailable mirrors 904ee90 fix: update apt 3.0.0 (amd64) [#1874] (#1875) 044f89b doc: update docs git-subtree-dir: nodesource git-subtree-split: 33e0d2ac2a5421d45bfd9b9fdf04c1fcab35246b
This commit is contained in:
+209
-19
@@ -16,8 +16,8 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
version: [18, 20, 22, 23, 24]
|
version: [ 18, 20, 22, 23, 24, 25 ]
|
||||||
os: ["ubuntu:24.04", "ubuntu:22.04", "debian:10"]
|
os: [ "ubuntu:24.04", "ubuntu:22.04", "debian:10" ]
|
||||||
container:
|
container:
|
||||||
image: ${{ matrix.os }}
|
image: ${{ matrix.os }}
|
||||||
defaults:
|
defaults:
|
||||||
@@ -27,35 +27,97 @@ jobs:
|
|||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Run Istallation Script
|
- name: Fix sources.list for Debian 10
|
||||||
|
if: contains(matrix.os, 'debian:10')
|
||||||
|
run: |
|
||||||
|
echo "deb http://archive.debian.org/debian buster main" > /etc/apt/sources.list
|
||||||
|
apt-get -o Acquire::Check-Valid-Until=false -o Acquire::AllowInsecureRepositories=true update
|
||||||
|
|
||||||
|
- name: Run Installation Script
|
||||||
run: ./scripts/deb/setup_${{ matrix.version }}.x
|
run: ./scripts/deb/setup_${{ matrix.version }}.x
|
||||||
|
|
||||||
- name: Install Nodejs
|
- name: Install Nodejs
|
||||||
run: |
|
run: apt install nodejs -y
|
||||||
apt-get install nodejs -y
|
|
||||||
|
|
||||||
- name: Validate Node Version
|
- name: Validate Node Version
|
||||||
run: |
|
run: |
|
||||||
node -e "console.log(process.version)"
|
node -e "console.log(process.version)"
|
||||||
NODE_VERSION=$(node -e "console.log((process.version).split('.')[0])")
|
NODE_VERSION=$(node -e "console.log(process.version.split('.')[0])")
|
||||||
if [[ ${NODE_VERSION} != "v${{ matrix.version }}" ]]; then
|
|
||||||
echo "Node version is not ${{ matrix.version }}. It is $NODE_VERSION"
|
if [[ ${NODE_VERSION} != "v${{ matrix.version }}" ]]; then
|
||||||
exit 1
|
echo "Node version is not ${{ matrix.version }}. It is $NODE_VERSION"
|
||||||
fi
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
rpm:
|
nsolid-deb:
|
||||||
name: "NodeJS ${{ matrix.version }}(${{ matrix.os }})"
|
name: "NSolid ${{ matrix.version }}(${{ matrix.os }})"
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
version: [18, 20, 22, 23, 24]
|
version: [ 18, 20, 22, 24 ]
|
||||||
os: ["fedora:36", "amazonlinux:2023", "rockylinux:9", "redhat/ubi9:latest"]
|
os: [ "ubuntu:24.04", "ubuntu:22.04", "debian:10" ]
|
||||||
container:
|
container:
|
||||||
image: ${{ matrix.os }}
|
image: ${{ matrix.os }}
|
||||||
defaults:
|
defaults:
|
||||||
run:
|
run:
|
||||||
shell: bash
|
shell: bash
|
||||||
steps:
|
steps:
|
||||||
|
- name: Checkout Repo
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Fix sources.list for Debian 10
|
||||||
|
if: contains(matrix.os, 'debian:10')
|
||||||
|
run: |
|
||||||
|
echo "deb http://archive.debian.org/debian buster main" > /etc/apt/sources.list
|
||||||
|
apt-get -o Acquire::Check-Valid-Until=false -o Acquire::AllowInsecureRepositories=true update
|
||||||
|
|
||||||
|
- name: Run Installation Script
|
||||||
|
run: ./scripts/deb/setup_${{ matrix.version }}.x
|
||||||
|
|
||||||
|
- name: Install NSolid
|
||||||
|
run: apt install nsolid -y
|
||||||
|
|
||||||
|
- name: Validate NSolid Version
|
||||||
|
run: |
|
||||||
|
nsolid -e "console.log(process.version)"
|
||||||
|
NSOLID_VERSION=$(nsolid -e "console.log(process.version.split('.')[0])")
|
||||||
|
|
||||||
|
if [[ ${NSOLID_VERSION} != "v${{ matrix.version }}" ]]; then
|
||||||
|
echo "NSolid version is not ${{ matrix.version }}. It is $NSOLID_VERSION"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
rpm:
|
||||||
|
name: "NodeJS ${{ matrix.version }}(${{ matrix.os }})"
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
version: [ 18, 20, 22, 23, 24, 25 ]
|
||||||
|
os: [ "fedora:36", "amazonlinux:2023", "rockylinux:9", "redhat/ubi9:latest" ]
|
||||||
|
container:
|
||||||
|
image: ${{ matrix.os }}
|
||||||
|
defaults:
|
||||||
|
run:
|
||||||
|
shell: bash
|
||||||
|
steps:
|
||||||
|
- name: Patch Rocky repos (avoid broken mirror)
|
||||||
|
if: contains(matrix.os, 'rocky')
|
||||||
|
run: |
|
||||||
|
set -euxo pipefail
|
||||||
|
for f in /etc/yum.repos.d/Rocky-*.repo; do
|
||||||
|
[ -f "$f" ] || continue
|
||||||
|
sed -i 's|^baseurl=.*|# baseurl disabled by CI|' "$f" || true
|
||||||
|
if grep -q '^mirrorlist=' "$f"; then
|
||||||
|
sed -i 's|^mirrorlist=.*|mirrorlist=https://mirrors.rockylinux.org/mirrorlist?arch=$basearch&repo=$repo&release=$releasever|g' "$f" || true
|
||||||
|
else
|
||||||
|
echo 'mirrorlist=https://mirrors.rockylinux.org/mirrorlist?arch=$basearch&repo=$repo&release=$releasever' >> "$f" || true
|
||||||
|
fi
|
||||||
|
if ! grep -qi '^skip_if_unavailable=' "$f"; then
|
||||||
|
echo 'skip_if_unavailable=True' >> "$f"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
(dnf clean all || microdnf clean all || true)
|
||||||
|
(dnf -y makecache || microdnf -y makecache || true)
|
||||||
- name: install git
|
- name: install git
|
||||||
run: |
|
run: |
|
||||||
dnf update -y
|
dnf update -y
|
||||||
@@ -80,19 +142,92 @@ jobs:
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
rpm-minimal:
|
nsolid-rpm:
|
||||||
name: "NodeJS ${{ matrix.version }}(${{ matrix.os }})"
|
name: "NSolid ${{ matrix.version }}(${{ matrix.os }})"
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
version: [18, 20, 22, 23, 24]
|
version: [ 18, 20, 22, 24 ]
|
||||||
os: ["rockylinux:9-minimal", "redhat/ubi9-minimal:latest"]
|
os: [ "fedora:36", "amazonlinux:2023", "rockylinux:9", "redhat/ubi9:latest" ]
|
||||||
container:
|
container:
|
||||||
image: ${{ matrix.os }}
|
image: ${{ matrix.os }}
|
||||||
defaults:
|
defaults:
|
||||||
run:
|
run:
|
||||||
shell: bash
|
shell: bash
|
||||||
steps:
|
steps:
|
||||||
|
- name: Patch Rocky repos (avoid broken mirror)
|
||||||
|
if: contains(matrix.os, 'rocky')
|
||||||
|
run: |
|
||||||
|
set -euxo pipefail
|
||||||
|
for f in /etc/yum.repos.d/Rocky-*.repo; do
|
||||||
|
[ -f "$f" ] || continue
|
||||||
|
sed -i 's|^baseurl=.*|# baseurl disabled by CI|' "$f" || true
|
||||||
|
if grep -q '^mirrorlist=' "$f"; then
|
||||||
|
sed -i 's|^mirrorlist=.*|mirrorlist=https://mirrors.rockylinux.org/mirrorlist?arch=$basearch&repo=$repo&release=$releasever|g' "$f" || true
|
||||||
|
else
|
||||||
|
echo 'mirrorlist=https://mirrors.rockylinux.org/mirrorlist?arch=$basearch&repo=$repo&release=$releasever' >> "$f" || true
|
||||||
|
fi
|
||||||
|
if ! grep -qi '^skip_if_unavailable=' "$f"; then
|
||||||
|
echo 'skip_if_unavailable=True' >> "$f"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
(dnf clean all || microdnf clean all || true)
|
||||||
|
(dnf -y makecache || microdnf -y makecache || true)
|
||||||
|
- name: install git
|
||||||
|
run: |
|
||||||
|
dnf update -y
|
||||||
|
dnf install git -y
|
||||||
|
|
||||||
|
- name: Checkout Repo
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Run Installation Script
|
||||||
|
run: ./scripts/rpm/setup_${{ matrix.version }}.x
|
||||||
|
|
||||||
|
- name: Install NSolid
|
||||||
|
run: |
|
||||||
|
dnf install nsolid -y
|
||||||
|
|
||||||
|
- name: Validate NSolid Version
|
||||||
|
run: |
|
||||||
|
nsolid -e "console.log(process.version)"
|
||||||
|
NSOLID_VERSION=$(nsolid -e "console.log((process.version).split('.')[0])")
|
||||||
|
if [[ ${NSOLID_VERSION} != "v${{ matrix.version }}" ]]; then
|
||||||
|
echo "NSolid version is not ${{ matrix.version }}. It is $NSOLID_VERSION"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
rpm-minimal:
|
||||||
|
name: "NodeJS ${{ matrix.version }}(${{ matrix.os }})"
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
version: [ 18, 20, 22, 23, 24, 25]
|
||||||
|
os: [ "rockylinux:9-minimal", "redhat/ubi9-minimal:latest" ]
|
||||||
|
container:
|
||||||
|
image: ${{ matrix.os }}
|
||||||
|
defaults:
|
||||||
|
run:
|
||||||
|
shell: bash
|
||||||
|
steps:
|
||||||
|
- name: Patch Rocky repos (avoid broken mirror)
|
||||||
|
if: contains(matrix.os, 'rocky')
|
||||||
|
run: |
|
||||||
|
set -euxo pipefail
|
||||||
|
for f in /etc/yum.repos.d/Rocky-*.repo; do
|
||||||
|
[ -f "$f" ] || continue
|
||||||
|
sed -i 's|^baseurl=.*|# baseurl disabled by CI|' "$f" || true
|
||||||
|
if grep -q '^mirrorlist=' "$f"; then
|
||||||
|
sed -i 's|^mirrorlist=.*|mirrorlist=https://mirrors.rockylinux.org/mirrorlist?arch=$basearch&repo=$repo&release=$releasever|g' "$f" || true
|
||||||
|
else
|
||||||
|
echo 'mirrorlist=https://mirrors.rockylinux.org/mirrorlist?arch=$basearch&repo=$repo&release=$releasever' >> "$f" || true
|
||||||
|
fi
|
||||||
|
if ! grep -qi '^skip_if_unavailable=' "$f"; then
|
||||||
|
echo 'skip_if_unavailable=True' >> "$f"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
(dnf clean all || microdnf clean all || true)
|
||||||
|
(dnf -y makecache || microdnf -y makecache || true)
|
||||||
- name: install git
|
- name: install git
|
||||||
run: |
|
run: |
|
||||||
microdnf update -y
|
microdnf update -y
|
||||||
@@ -116,3 +251,58 @@ jobs:
|
|||||||
echo "Node version is not ${{ matrix.version }}. It is $NODE_VERSION"
|
echo "Node version is not ${{ matrix.version }}. It is $NODE_VERSION"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
nsolid-rpm-minimal:
|
||||||
|
name: "NSolid ${{ matrix.version }}(${{ matrix.os }})"
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
version: [ 18, 20, 22, 24 ]
|
||||||
|
os: [ "rockylinux:9-minimal", "redhat/ubi9-minimal:latest" ]
|
||||||
|
container:
|
||||||
|
image: ${{ matrix.os }}
|
||||||
|
defaults:
|
||||||
|
run:
|
||||||
|
shell: bash
|
||||||
|
steps:
|
||||||
|
- name: Patch Rocky repos (avoid broken mirror)
|
||||||
|
if: contains(matrix.os, 'rocky')
|
||||||
|
run: |
|
||||||
|
set -euxo pipefail
|
||||||
|
for f in /etc/yum.repos.d/Rocky-*.repo; do
|
||||||
|
[ -f "$f" ] || continue
|
||||||
|
sed -i 's|^baseurl=.*|# baseurl disabled by CI|' "$f" || true
|
||||||
|
if grep -q '^mirrorlist=' "$f"; then
|
||||||
|
sed -i 's|^mirrorlist=.*|mirrorlist=https://mirrors.rockylinux.org/mirrorlist?arch=$basearch&repo=$repo&release=$releasever|g' "$f" || true
|
||||||
|
else
|
||||||
|
echo 'mirrorlist=https://mirrors.rockylinux.org/mirrorlist?arch=$basearch&repo=$repo&release=$releasever' >> "$f" || true
|
||||||
|
fi
|
||||||
|
if ! grep -qi '^skip_if_unavailable=' "$f"; then
|
||||||
|
echo 'skip_if_unavailable=True' >> "$f"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
(dnf clean all || microdnf clean all || true)
|
||||||
|
(dnf -y makecache || microdnf -y makecache || true)
|
||||||
|
- name: install git
|
||||||
|
run: |
|
||||||
|
microdnf update -y
|
||||||
|
microdnf install git -y
|
||||||
|
|
||||||
|
- name: Checkout Repo
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Run Installation Script
|
||||||
|
run: ./scripts/rpm/setup_${{ matrix.version }}.x
|
||||||
|
|
||||||
|
- name: Install NSolid
|
||||||
|
run: |
|
||||||
|
microdnf install nsolid -y
|
||||||
|
|
||||||
|
- name: Validate NSolid Version
|
||||||
|
run: |
|
||||||
|
nsolid -e "console.log(process.version)"
|
||||||
|
NSOLID_VERSION=$(nsolid -e "console.log((process.version).split('.')[0])")
|
||||||
|
if [[ ${NSOLID_VERSION} != "v${{ matrix.version }}" ]]; then
|
||||||
|
echo "NSolid version is not ${{ matrix.version }}. It is $NSOLID_VERSION"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|||||||
@@ -16,8 +16,8 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
version: [16]
|
version: [ 16 ]
|
||||||
os: ["ubuntu:20.04", "debian:10"]
|
os: [ "ubuntu:20.04", "debian:10" ]
|
||||||
container:
|
container:
|
||||||
image: ${{ matrix.os }}
|
image: ${{ matrix.os }}
|
||||||
defaults:
|
defaults:
|
||||||
@@ -27,29 +27,34 @@ jobs:
|
|||||||
- name: Checkout Repo
|
- name: Checkout Repo
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
- name: Run Istallation Script
|
- name: Fix sources.list for Debian 10
|
||||||
|
if: contains(matrix.os, 'debian:10')
|
||||||
|
run: |
|
||||||
|
echo "deb http://archive.debian.org/debian buster main" > /etc/apt/sources.list
|
||||||
|
apt-get -o Acquire::Check-Valid-Until=false -o Acquire::AllowInsecureRepositories=true update
|
||||||
|
|
||||||
|
- name: Run Installation Script
|
||||||
run: ./scripts/deb/setup_${{ matrix.version }}.x
|
run: ./scripts/deb/setup_${{ matrix.version }}.x
|
||||||
|
|
||||||
- name: Install Nodejs
|
- name: Install Nodejs
|
||||||
run: |
|
run: |
|
||||||
apt-get install nodejs -y
|
apt install nodejs -y
|
||||||
|
|
||||||
- name: Validate Node Version
|
- name: Validate Node Version
|
||||||
run: |
|
run: |
|
||||||
node -e "console.log(process.version)"
|
node -e "console.log(process.version)"
|
||||||
NODE_VERSION=$(node -e "console.log((process.version).split('.')[0])")
|
NODE_VERSION=$(node -e "console.log(process.version.split('.')[0])")
|
||||||
if [[ ${NODE_VERSION} != "v${{ matrix.version }}" ]]; then
|
if [[ ${NODE_VERSION} != "v${{ matrix.version }}" ]]; then
|
||||||
echo "Node version is not ${{ matrix.version }}. It is $NODE_VERSION"
|
echo "Node version is not ${{ matrix.version }}. It is $NODE_VERSION"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
rpm:
|
rpm:
|
||||||
name: "NodeJS ${{ matrix.version }}(${{ matrix.os }})"
|
name: "NodeJS ${{ matrix.version }}(${{ matrix.os }})"
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
version: [16]
|
version: [ 16 ]
|
||||||
os: ["fedora:29", "amazonlinux:2023"]
|
os: [ "fedora:29", "amazonlinux:2023" ]
|
||||||
container:
|
container:
|
||||||
image: ${{ matrix.os }}
|
image: ${{ matrix.os }}
|
||||||
defaults:
|
defaults:
|
||||||
|
|||||||
+1365
File diff suppressed because it is too large
Load Diff
+6
-6
@@ -19,18 +19,18 @@ The relevant bits of our build scripts to install the needed compilers looks lik
|
|||||||
|
|
||||||
if [ "x${DIST}" == "xprecise" ]; then
|
if [ "x${DIST}" == "xprecise" ]; then
|
||||||
echo "Calling $0"
|
echo "Calling $0"
|
||||||
apt-get update
|
apt update
|
||||||
apt-get install -y clang-3.4
|
apt install -y clang-3.4
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "x${DIST}" == "xwheezy" ]; then
|
if [ "x${DIST}" == "xwheezy" ]; then
|
||||||
echo "Calling $0"
|
echo "Calling $0"
|
||||||
apt-get update
|
apt update
|
||||||
apt-get -y install curl apt-transport-https ca-certificates
|
apt -y install curl apt-transport-https ca-certificates
|
||||||
echo "deb https://deb.nodesource.com/clang-3.4 wheezy main" >> /etc/apt/sources.list
|
echo "deb https://deb.nodesource.com/clang-3.4 wheezy main" >> /etc/apt/sources.list
|
||||||
curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -
|
curl -s https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add -
|
||||||
apt-get update
|
apt update
|
||||||
apt-get install -y clang-3.4
|
apt install -y clang-3.4
|
||||||
fi
|
fi
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
+17
-17
@@ -163,14 +163,14 @@ NodeSource will maintain support for stable, testing and unstable releases of De
|
|||||||
|
|
||||||
```sh
|
```sh
|
||||||
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash - &&\
|
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash - &&\
|
||||||
sudo apt-get install -y nodejs
|
sudo apt install -y nodejs
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Using Debian, as root
|
##### Using Debian, as root
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
curl -fsSL https://deb.nodesource.com/setup_20.x | bash - &&\
|
curl -fsSL https://deb.nodesource.com/setup_20.x | bash - &&\
|
||||||
apt-get install -y nodejs
|
apt install -y nodejs
|
||||||
```
|
```
|
||||||
|
|
||||||
**Node.js v19.x**:
|
**Node.js v19.x**:
|
||||||
@@ -179,14 +179,14 @@ apt-get install -y nodejs
|
|||||||
|
|
||||||
```sh
|
```sh
|
||||||
curl -fsSL https://deb.nodesource.com/setup_19.x | sudo -E bash - &&\
|
curl -fsSL https://deb.nodesource.com/setup_19.x | sudo -E bash - &&\
|
||||||
sudo apt-get install -y nodejs
|
sudo apt install -y nodejs
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Using Debian, as root
|
##### Using Debian, as root
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
curl -fsSL https://deb.nodesource.com/setup_19.x | bash - &&\
|
curl -fsSL https://deb.nodesource.com/setup_19.x | bash - &&\
|
||||||
apt-get install -y nodejs
|
apt install -y nodejs
|
||||||
```
|
```
|
||||||
|
|
||||||
**Node.js v18.x**:
|
**Node.js v18.x**:
|
||||||
@@ -195,14 +195,14 @@ apt-get install -y nodejs
|
|||||||
|
|
||||||
```sh
|
```sh
|
||||||
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash - &&\
|
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash - &&\
|
||||||
sudo apt-get install -y nodejs
|
sudo apt install -y nodejs
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Using Debian, as root
|
##### Using Debian, as root
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
curl -fsSL https://deb.nodesource.com/setup_18.x | bash - &&\
|
curl -fsSL https://deb.nodesource.com/setup_18.x | bash - &&\
|
||||||
apt-get install -y nodejs
|
apt install -y nodejs
|
||||||
```
|
```
|
||||||
|
|
||||||
**Node.js v16.x**:
|
**Node.js v16.x**:
|
||||||
@@ -211,14 +211,14 @@ apt-get install -y nodejs
|
|||||||
|
|
||||||
```sh
|
```sh
|
||||||
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash - &&\
|
curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash - &&\
|
||||||
sudo apt-get install -y nodejs
|
sudo apt install -y nodejs
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Using Debian, as root
|
##### Using Debian, as root
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
curl -fsSL https://deb.nodesource.com/setup_16.x | bash - &&\
|
curl -fsSL https://deb.nodesource.com/setup_16.x | bash - &&\
|
||||||
apt-get install -y nodejs
|
apt install -y nodejs
|
||||||
```
|
```
|
||||||
|
|
||||||
**Node.js LTS (v18.x)**:
|
**Node.js LTS (v18.x)**:
|
||||||
@@ -227,14 +227,14 @@ apt-get install -y nodejs
|
|||||||
|
|
||||||
```sh
|
```sh
|
||||||
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash - &&\
|
curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash - &&\
|
||||||
sudo apt-get install -y nodejs
|
sudo apt install -y nodejs
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Using Debian, as root
|
##### Using Debian, as root
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - &&\
|
curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - &&\
|
||||||
apt-get install -y nodejs
|
apt install -y nodejs
|
||||||
```
|
```
|
||||||
|
|
||||||
**Node.js Current (v20.x)**:
|
**Node.js Current (v20.x)**:
|
||||||
@@ -243,14 +243,14 @@ apt-get install -y nodejs
|
|||||||
|
|
||||||
```sh
|
```sh
|
||||||
curl -fsSL https://deb.nodesource.com/setup_current.x | sudo -E bash - &&\
|
curl -fsSL https://deb.nodesource.com/setup_current.x | sudo -E bash - &&\
|
||||||
sudo apt-get install -y nodejs
|
sudo apt install -y nodejs
|
||||||
```
|
```
|
||||||
|
|
||||||
##### Using Debian, as root
|
##### Using Debian, as root
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
curl -fsSL https://deb.nodesource.com/setup_current.x | bash - &&\
|
curl -fsSL https://deb.nodesource.com/setup_current.x | bash - &&\
|
||||||
apt-get install -y nodejs
|
apt install -y nodejs
|
||||||
```
|
```
|
||||||
|
|
||||||
***Optional***: install build tools
|
***Optional***: install build tools
|
||||||
@@ -260,7 +260,7 @@ To compile and install native addons from npm you may also need to install build
|
|||||||
##### use `sudo` on Ubuntu or run this as root on debian
|
##### use `sudo` on Ubuntu or run this as root on debian
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
apt-get install -y build-essential
|
apt install -y build-essential
|
||||||
```
|
```
|
||||||
|
|
||||||
`<a name="debuninstall"></a>`
|
`<a name="debuninstall"></a>`
|
||||||
@@ -272,7 +272,7 @@ To completely remove Node.js installed from the deb.nodesource.com package metho
|
|||||||
##### use `sudo` on Ubuntu or run this as root on debian
|
##### use `sudo` on Ubuntu or run this as root on debian
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
apt-get purge nodejs &&\
|
apt purge nodejs &&\
|
||||||
rm -r /etc/apt/sources.list.d/nodesource.list
|
rm -r /etc/apt/sources.list.d/nodesource.list
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -290,7 +290,7 @@ This step is only required if you previously used Chris Lea's Node.js PPA.
|
|||||||
|
|
||||||
```sh
|
```sh
|
||||||
# add-apt-repository may not be present on some Ubuntu releases:
|
# add-apt-repository may not be present on some Ubuntu releases:
|
||||||
# sudo apt-get install python-software-properties
|
# sudo apt install python-software-properties
|
||||||
sudo add-apt-repository -y -r ppa:chris-lea/node.js &&\
|
sudo add-apt-repository -y -r ppa:chris-lea/node.js &&\
|
||||||
sudo rm -f /etc/apt/sources.list.d/chris-lea-node_js-*.list &&\
|
sudo rm -f /etc/apt/sources.list.d/chris-lea-node_js-*.list &&\
|
||||||
sudo rm -f /etc/apt/sources.list.d/chris-lea-node_js-*.list.save
|
sudo rm -f /etc/apt/sources.list.d/chris-lea-node_js-*.list.save
|
||||||
@@ -329,8 +329,8 @@ echo "deb-src [signed-by=$KEYRING] https://deb.nodesource.com/$VERSION $DISTRO m
|
|||||||
**4. Update package lists and install Node.js**
|
**4. Update package lists and install Node.js**
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
sudo apt-get update
|
sudo apt update
|
||||||
sudo apt-get install nodejs
|
sudo apt install nodejs
|
||||||
```
|
```
|
||||||
|
|
||||||
`<a name="rpm"></a>`
|
`<a name="rpm"></a>`
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<!-- Generator: Adobe Illustrator 22.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
<!-- Generator: Adobe Illustrator 22.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" x="0px"
|
||||||
viewBox="0 0 728 216" style="enable-background:new 0 0 728 216;" xml:space="preserve">
|
y="0px"
|
||||||
|
viewBox="0 0 728 216" style="enable-background:new 0 0 728 216;" xml:space="preserve">
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
.st0{fill:#A80030;}
|
.st0{fill:#A80030;}
|
||||||
.st1{fill:#DD4814;}
|
.st1{fill:#DD4814;}
|
||||||
@@ -19,12 +20,12 @@
|
|||||||
.st13{fill:#89A19C;}
|
.st13{fill:#89A19C;}
|
||||||
.st14{fill:none;stroke:#E1E7E6;stroke-miterlimit:10;}
|
.st14{fill:none;stroke:#E1E7E6;stroke-miterlimit:10;}
|
||||||
</style>
|
</style>
|
||||||
<path class="st0" d="M90.2,130.2c0.2,0,0.5,0.1,0.5,0.1C90.9,130.3,91,130.3,90.2,130.2"/>
|
<path class="st0" d="M90.2,130.2c0.2,0,0.5,0.1,0.5,0.1C90.9,130.3,91,130.3,90.2,130.2"/>
|
||||||
<polyline class="st0" points="90.7,130.4 90.5,130.4 90.6,130.4 90.7,130.4 "/>
|
<polyline class="st0" points="90.7,130.4 90.5,130.4 90.6,130.4 90.7,130.4 "/>
|
||||||
<path class="st0" d="M90.3,130c0.3-0.1,0.8-0.1,1.1-0.1c-0.4,0-0.8,0.1-1.3,0.1H90.3"/>
|
<path class="st0" d="M90.3,130c0.3-0.1,0.8-0.1,1.1-0.1c-0.4,0-0.8,0.1-1.3,0.1H90.3"/>
|
||||||
<g>
|
<g>
|
||||||
<circle class="st1" cx="230.1" cy="156.9" r="4.9"/>
|
<circle class="st1" cx="230.1" cy="156.9" r="4.9"/>
|
||||||
<path class="st2" d="M227.1,156.3c-0.3,0-0.6,0.3-0.6,0.6s0.3,0.6,0.6,0.6c0.3,0,0.6-0.3,0.6-0.6
|
<path class="st2" d="M227.1,156.3c-0.3,0-0.6,0.3-0.6,0.6s0.3,0.6,0.6,0.6c0.3,0,0.6-0.3,0.6-0.6
|
||||||
C227.7,156.5,227.4,156.3,227.1,156.3z M231.3,159c-0.3,0.2-0.4,0.5-0.2,0.8c0.2,0.3,0.5,0.4,0.8,0.2s0.4-0.5,0.2-0.8
|
C227.7,156.5,227.4,156.3,227.1,156.3z M231.3,159c-0.3,0.2-0.4,0.5-0.2,0.8c0.2,0.3,0.5,0.4,0.8,0.2s0.4-0.5,0.2-0.8
|
||||||
C232,158.9,231.6,158.8,231.3,159z M228.4,156.9c0-0.6,0.3-1.1,0.7-1.4l-0.4-0.7c-0.5,0.3-0.9,0.9-1.1,1.5c0.2,0.2,0.3,0.4,0.3,0.6
|
C232,158.9,231.6,158.8,231.3,159z M228.4,156.9c0-0.6,0.3-1.1,0.7-1.4l-0.4-0.7c-0.5,0.3-0.9,0.9-1.1,1.5c0.2,0.2,0.3,0.4,0.3,0.6
|
||||||
c0,0.3-0.1,0.5-0.3,0.6c0.2,0.6,0.5,1.2,1.1,1.5l0.4-0.7C228.6,158,228.4,157.4,228.4,156.9z M230.1,155.1c0.9,0,1.6,0.7,1.7,1.6
|
c0,0.3-0.1,0.5-0.3,0.6c0.2,0.6,0.5,1.2,1.1,1.5l0.4-0.7C228.6,158,228.4,157.4,228.4,156.9z M230.1,155.1c0.9,0,1.6,0.7,1.7,1.6
|
||||||
@@ -33,28 +34,28 @@
|
|||||||
c0.2,0,0.5,0,0.7-0.1c0-0.2,0.2-0.5,0.4-0.6c0.2-0.1,0.5-0.1,0.7-0.1c0.4-0.4,0.7-1,0.8-1.7h-0.8
|
c0.2,0,0.5,0,0.7-0.1c0-0.2,0.2-0.5,0.4-0.6c0.2-0.1,0.5-0.1,0.7-0.1c0.4-0.4,0.7-1,0.8-1.7h-0.8
|
||||||
C231.7,157.9,231,158.6,230.1,158.6z M231.3,154.8c0.3,0.2,0.6,0.1,0.8-0.2c0.2-0.3,0.1-0.6-0.2-0.8c-0.3-0.2-0.6-0.1-0.8,0.2
|
C231.7,157.9,231,158.6,230.1,158.6z M231.3,154.8c0.3,0.2,0.6,0.1,0.8-0.2c0.2-0.3,0.1-0.6-0.2-0.8c-0.3-0.2-0.6-0.1-0.8,0.2
|
||||||
C230.9,154.2,231,154.6,231.3,154.8z"/>
|
C230.9,154.2,231,154.6,231.3,154.8z"/>
|
||||||
<path d="M162.4,169.8c-0.5,0.1-1.2,0.3-2,0.4c-0.8,0.1-1.8,0.2-2.9,0.2c-0.9,0-1.7-0.1-2.4-0.4c-0.6-0.3-1.2-0.7-1.6-1.2
|
<path d="M162.4,169.8c-0.5,0.1-1.2,0.3-2,0.4c-0.8,0.1-1.8,0.2-2.9,0.2c-0.9,0-1.7-0.1-2.4-0.4c-0.6-0.3-1.2-0.7-1.6-1.2
|
||||||
c-0.4-0.5-0.7-1.1-0.8-1.8c-0.2-0.7-0.3-1.4-0.3-2.3v-6.9h2.2v6.4c0,1.5,0.2,2.6,0.7,3.2c0.5,0.6,1.3,1,2.4,1c0.2,0,0.5,0,0.7,0
|
c-0.4-0.5-0.7-1.1-0.8-1.8c-0.2-0.7-0.3-1.4-0.3-2.3v-6.9h2.2v6.4c0,1.5,0.2,2.6,0.7,3.2c0.5,0.6,1.3,1,2.4,1c0.2,0,0.5,0,0.7,0
|
||||||
c0.3,0,0.5,0,0.7-0.1c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.1,0.4-0.1v-10.2h2.2L162.4,169.8L162.4,169.8z"/>
|
c0.3,0,0.5,0,0.7-0.1c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.1,0.4-0.1v-10.2h2.2L162.4,169.8L162.4,169.8z"/>
|
||||||
<path d="M167.8,158.5c0.3-0.2,0.7-0.4,1.2-0.5c0.5-0.1,1.2-0.3,1.9-0.3c0.9,0,1.7,0.2,2.3,0.5c0.7,0.3,1.3,0.8,1.7,1.3
|
<path d="M167.8,158.5c0.3-0.2,0.7-0.4,1.2-0.5c0.5-0.1,1.2-0.3,1.9-0.3c0.9,0,1.7,0.2,2.3,0.5c0.7,0.3,1.3,0.8,1.7,1.3
|
||||||
c0.5,0.6,0.8,1.2,1.1,2c0.2,0.8,0.4,1.6,0.4,2.6s-0.1,1.9-0.4,2.7c-0.3,0.8-0.7,1.5-1.2,2s-1.2,1-1.9,1.3c-0.8,0.3-1.6,0.4-2.5,0.4
|
c0.5,0.6,0.8,1.2,1.1,2c0.2,0.8,0.4,1.6,0.4,2.6s-0.1,1.9-0.4,2.7c-0.3,0.8-0.7,1.5-1.2,2s-1.2,1-1.9,1.3c-0.8,0.3-1.6,0.4-2.5,0.4
|
||||||
c-1,0-1.9-0.1-2.7-0.2c-0.8-0.1-1.4-0.3-1.9-0.4v-17.6l2.2-0.4L167.8,158.5L167.8,158.5z M167.8,168.3c0.2,0.1,0.5,0.1,0.9,0.2
|
c-1,0-1.9-0.1-2.7-0.2c-0.8-0.1-1.4-0.3-1.9-0.4v-17.6l2.2-0.4L167.8,158.5L167.8,158.5z M167.8,168.3c0.2,0.1,0.5,0.1,0.9,0.2
|
||||||
c0.4,0.1,0.9,0.1,1.5,0.1c1.2,0,2.1-0.4,2.8-1.2s1.1-1.9,1.1-3.3c0-0.6-0.1-1.2-0.2-1.8c-0.1-0.5-0.3-1-0.6-1.4
|
c0.4,0.1,0.9,0.1,1.5,0.1c1.2,0,2.1-0.4,2.8-1.2s1.1-1.9,1.1-3.3c0-0.6-0.1-1.2-0.2-1.8c-0.1-0.5-0.3-1-0.6-1.4
|
||||||
c-0.3-0.4-0.6-0.7-1.1-0.9c-0.4-0.2-1-0.3-1.6-0.3s-1.1,0.1-1.6,0.3s-0.9,0.4-1.2,0.6L167.8,168.3L167.8,168.3z"/>
|
c-0.3-0.4-0.6-0.7-1.1-0.9c-0.4-0.2-1-0.3-1.6-0.3s-1.1,0.1-1.6,0.3s-0.9,0.4-1.2,0.6L167.8,168.3L167.8,168.3z"/>
|
||||||
<path d="M188.6,169.8c-0.5,0.1-1.2,0.3-2,0.4c-0.8,0.1-1.8,0.2-2.9,0.2c-0.9,0-1.7-0.1-2.4-0.4c-0.6-0.3-1.2-0.7-1.6-1.2
|
<path d="M188.6,169.8c-0.5,0.1-1.2,0.3-2,0.4c-0.8,0.1-1.8,0.2-2.9,0.2c-0.9,0-1.7-0.1-2.4-0.4c-0.6-0.3-1.2-0.7-1.6-1.2
|
||||||
c-0.4-0.5-0.7-1.1-0.8-1.8c-0.2-0.7-0.3-1.4-0.3-2.3v-6.9h2.2v6.4c0,1.5,0.2,2.6,0.7,3.2c0.5,0.6,1.3,1,2.4,1c0.2,0,0.5,0,0.7,0
|
c-0.4-0.5-0.7-1.1-0.8-1.8c-0.2-0.7-0.3-1.4-0.3-2.3v-6.9h2.2v6.4c0,1.5,0.2,2.6,0.7,3.2c0.5,0.6,1.3,1,2.4,1c0.2,0,0.5,0,0.7,0
|
||||||
c0.3,0,0.5,0,0.7-0.1c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.1,0.4-0.1v-10.2h2.2L188.6,169.8L188.6,169.8z"/>
|
c0.3,0,0.5,0,0.7-0.1c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.1,0.4-0.1v-10.2h2.2L188.6,169.8L188.6,169.8z"/>
|
||||||
<path d="M191.7,158.3c0.5-0.1,1.2-0.3,2-0.4c0.8-0.1,1.8-0.2,2.9-0.2c1,0,1.8,0.1,2.4,0.4s1.2,0.7,1.5,1.2c0.4,0.5,0.7,1.1,0.8,1.8
|
<path d="M191.7,158.3c0.5-0.1,1.2-0.3,2-0.4c0.8-0.1,1.8-0.2,2.9-0.2c1,0,1.8,0.1,2.4,0.4s1.2,0.7,1.5,1.2c0.4,0.5,0.7,1.1,0.8,1.8
|
||||||
c0.2,0.7,0.2,1.5,0.2,2.3v6.9h-2.2v-6.4c0-0.8-0.1-1.4-0.2-1.9s-0.3-1-0.5-1.3s-0.5-0.6-0.9-0.7c-0.4-0.1-0.9-0.2-1.5-0.2
|
c0.2,0.7,0.2,1.5,0.2,2.3v6.9h-2.2v-6.4c0-0.8-0.1-1.4-0.2-1.9s-0.3-1-0.5-1.3s-0.5-0.6-0.9-0.7c-0.4-0.1-0.9-0.2-1.5-0.2
|
||||||
c-0.2,0-0.5,0-0.7,0c-0.3,0-0.5,0-0.7,0.1c-0.2,0-0.4,0.1-0.6,0.1s-0.3,0.1-0.4,0.1v10.3h-2.2v-12.1H191.7z"/>
|
c-0.2,0-0.5,0-0.7,0c-0.3,0-0.5,0-0.7,0.1c-0.2,0-0.4,0.1-0.6,0.1s-0.3,0.1-0.4,0.1v10.3h-2.2v-12.1H191.7z"/>
|
||||||
<path d="M206.6,157.9h4.6v1.8h-4.6v5.6c0,0.6,0,1.1,0.1,1.5c0.1,0.4,0.2,0.7,0.4,0.9c0.2,0.2,0.4,0.4,0.7,0.5
|
<path d="M206.6,157.9h4.6v1.8h-4.6v5.6c0,0.6,0,1.1,0.1,1.5c0.1,0.4,0.2,0.7,0.4,0.9c0.2,0.2,0.4,0.4,0.7,0.5
|
||||||
c0.3,0.1,0.6,0.1,1,0.1c0.7,0,1.2-0.1,1.6-0.2c0.4-0.1,0.7-0.3,0.8-0.3l0.5,1.8c-0.2,0.1-0.6,0.3-1.2,0.4c-0.6,0.2-1.2,0.3-1.9,0.3
|
c0.3,0.1,0.6,0.1,1,0.1c0.7,0,1.2-0.1,1.6-0.2c0.4-0.1,0.7-0.3,0.8-0.3l0.5,1.8c-0.2,0.1-0.6,0.3-1.2,0.4c-0.6,0.2-1.2,0.3-1.9,0.3
|
||||||
c-0.8,0-1.5-0.1-2.1-0.3c-0.5-0.2-1-0.5-1.3-1c-0.3-0.4-0.6-0.9-0.7-1.6c-0.1-0.6-0.2-1.3-0.2-2.2v-10.7l2.2-0.4L206.6,157.9
|
c-0.8,0-1.5-0.1-2.1-0.3c-0.5-0.2-1-0.5-1.3-1c-0.3-0.4-0.6-0.9-0.7-1.6c-0.1-0.6-0.2-1.3-0.2-2.2v-10.7l2.2-0.4L206.6,157.9
|
||||||
L206.6,157.9z"/>
|
L206.6,157.9z"/>
|
||||||
<path d="M223.2,169.8c-0.5,0.1-1.2,0.3-2,0.4c-0.8,0.1-1.8,0.2-2.9,0.2c-0.9,0-1.7-0.1-2.4-0.4c-0.6-0.3-1.2-0.7-1.6-1.2
|
<path d="M223.2,169.8c-0.5,0.1-1.2,0.3-2,0.4c-0.8,0.1-1.8,0.2-2.9,0.2c-0.9,0-1.7-0.1-2.4-0.4c-0.6-0.3-1.2-0.7-1.6-1.2
|
||||||
s-0.7-1.1-0.8-1.8c-0.2-0.7-0.3-1.4-0.3-2.3v-6.9h2.2v6.4c0,1.5,0.2,2.6,0.7,3.2c0.5,0.6,1.3,1,2.4,1c0.2,0,0.5,0,0.7,0
|
s-0.7-1.1-0.8-1.8c-0.2-0.7-0.3-1.4-0.3-2.3v-6.9h2.2v6.4c0,1.5,0.2,2.6,0.7,3.2c0.5,0.6,1.3,1,2.4,1c0.2,0,0.5,0,0.7,0
|
||||||
c0.3,0,0.5,0,0.7-0.1c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.1,0.4-0.1v-10.2h2.2L223.2,169.8L223.2,169.8z"/>
|
c0.3,0,0.5,0,0.7-0.1c0.2,0,0.4,0,0.6-0.1c0.2,0,0.3-0.1,0.4-0.1v-10.2h2.2L223.2,169.8L223.2,169.8z"/>
|
||||||
<path class="st3" d="M312.9,169.2c-0.7-0.2-1.5-0.3-2.3-0.3c-1.3,0-2.6,0.2-3.5,0.6c-0.1,0-0.2,0.2-0.2,0.3v0.1
|
<path class="st3" d="M312.9,169.2c-0.7-0.2-1.5-0.3-2.3-0.3c-1.3,0-2.6,0.2-3.5,0.6c-0.1,0-0.2,0.2-0.2,0.3v0.1
|
||||||
c0.1,0.3-0.1,0.6-0.9,0.8c-1.3,0.3-2.1,1.6-2.6,2.1s-2.1,0.8-1.9,0.5c0.2-0.2,0.9-1,1.3-1.8c0.4-0.7,0.7-0.9,1.2-1.6
|
c0.1,0.3-0.1,0.6-0.9,0.8c-1.3,0.3-2.1,1.6-2.6,2.1s-2.1,0.8-1.9,0.5c0.2-0.2,0.9-1,1.3-1.8c0.4-0.7,0.7-0.9,1.2-1.6
|
||||||
c0.1-0.2,0.7-0.9,0.8-1.5c0.2-0.6,0.1-1.2,0.2-1.5c0.1-0.4,0.5-1.3,0.5-1.8c0-0.3-1.2,0.4-1.8,0.4s-1.1-0.3-1.6-0.4
|
c0.1-0.2,0.7-0.9,0.8-1.5c0.2-0.6,0.1-1.2,0.2-1.5c0.1-0.4,0.5-1.3,0.5-1.8c0-0.3-1.2,0.4-1.8,0.4s-1.1-0.3-1.6-0.4
|
||||||
c-0.6,0-1,0.5-1.6,0.4c-0.3-0.1-0.6-0.3-1.2-0.4c-0.8,0-1.8,0.5-3.7,0.4c-1.8-0.1-3.5-2.3-3.8-2.7s-0.6-0.4-1-0.1s-0.8,0.1-0.9-0.1
|
c-0.6,0-1,0.5-1.6,0.4c-0.3-0.1-0.6-0.3-1.2-0.4c-0.8,0-1.8,0.5-3.7,0.4c-1.8-0.1-3.5-2.3-3.8-2.7s-0.6-0.4-1-0.1s-0.8,0.1-0.9-0.1
|
||||||
@@ -62,47 +63,47 @@
|
|||||||
c-0.1,0.3-0.5,0.3-0.7,0.3c-0.5,0-0.9-0.1-1.2-0.3c-0.3-0.2-0.6-0.5-0.8-0.9c-0.3-0.5-0.8-0.7-1.4-0.7c-0.3,0-0.5,0.1-0.8,0.2
|
c-0.1,0.3-0.5,0.3-0.7,0.3c-0.5,0-0.9-0.1-1.2-0.3c-0.3-0.2-0.6-0.5-0.8-0.9c-0.3-0.5-0.8-0.7-1.4-0.7c-0.3,0-0.5,0.1-0.8,0.2
|
||||||
c-0.9,0.5-2,0.8-3.2,0.8h-1.3c-0.6-1.9-1-3.9-1-6.1c0-10.5,8.5-18.9,18.9-18.9c10.5,0,18.9,8.5,18.9,18.9
|
c-0.9,0.5-2,0.8-3.2,0.8h-1.3c-0.6-1.9-1-3.9-1-6.1c0-10.5,8.5-18.9,18.9-18.9c10.5,0,18.9,8.5,18.9,18.9
|
||||||
C315.9,162.7,314.8,166.2,312.9,169.2z"/>
|
C315.9,162.7,314.8,166.2,312.9,169.2z"/>
|
||||||
<path class="st3" d="M301.1,167.4c0.1,0.1,0.3,0.4,0.1,0.8c-0.1,0.2-0.2,0.4-0.5,0.5c-0.3,0.2-0.8,0.5-1.5,0
|
<path class="st3" d="M301.1,167.4c0.1,0.1,0.3,0.4,0.1,0.8c-0.1,0.2-0.2,0.4-0.5,0.5c-0.3,0.2-0.8,0.5-1.5,0
|
||||||
c-0.4-0.2-0.4-0.3-0.9-0.3c-0.4,0-0.5-0.3-0.4-0.7c0.1-0.3,0.7-0.6,1.4-0.2c0.3,0.2,0.8,0.6,1.2,0.2
|
c-0.4-0.2-0.4-0.3-0.9-0.3c-0.4,0-0.5-0.3-0.4-0.7c0.1-0.3,0.7-0.6,1.4-0.2c0.3,0.2,0.8,0.6,1.2,0.2
|
||||||
C300.7,167.8,300.8,167.7,301.1,167.4L301.1,167.4L301.1,167.4z"/>
|
C300.7,167.8,300.8,167.7,301.1,167.4L301.1,167.4L301.1,167.4z"/>
|
||||||
<path class="st4" d="M307.6,153.9c-0.2,0.6-0.5,1.4-1.6,2c-0.2,0.1-0.2-0.1-0.2-0.2c0.4-0.8,0.5-1,0.7-1.3c0.2-0.4,0.3-1.1-0.1-2.4
|
<path class="st4" d="M307.6,153.9c-0.2,0.6-0.5,1.4-1.6,2c-0.2,0.1-0.2-0.1-0.2-0.2c0.4-0.8,0.5-1,0.7-1.3c0.2-0.4,0.3-1.1-0.1-2.4
|
||||||
c-0.7-2.6-2.2-6-3.3-7.1c-1-1.1-2.9-1.4-4.6-0.9c-0.6,0.2-1.9,0.8-4.1,0.3c-3.9-0.9-4.5,1.1-4.8,1.9c-0.2,0.9-0.8,3.3-0.8,3.3
|
c-0.7-2.6-2.2-6-3.3-7.1c-1-1.1-2.9-1.4-4.6-0.9c-0.6,0.2-1.9,0.8-4.1,0.3c-3.9-0.9-4.5,1.1-4.8,1.9c-0.2,0.9-0.8,3.3-0.8,3.3
|
||||||
c-0.2,1-0.4,2.7,5.7,3.9c2.9,0.5,3,1.3,3.1,1.8c0.2,1,0.6,1.5,1,1.8s0,0.5-0.5,0.5c-1.2,0.1-5.7-1.2-8.4-2.7
|
c-0.2,1-0.4,2.7,5.7,3.9c2.9,0.5,3,1.3,3.1,1.8c0.2,1,0.6,1.5,1,1.8s0,0.5-0.5,0.5c-1.2,0.1-5.7-1.2-8.4-2.7
|
||||||
c-2.2-1.3-2.2-2.5-1.7-3.5c-3.3-0.4-5.7,0.3-6.2,1.9c-0.8,2.7,5.9,7.2,13.4,9.5c7.9,2.4,16.1,0.7,17-4.3
|
c-2.2-1.3-2.2-2.5-1.7-3.5c-3.3-0.4-5.7,0.3-6.2,1.9c-0.8,2.7,5.9,7.2,13.4,9.5c7.9,2.4,16.1,0.7,17-4.3
|
||||||
C312.8,156.3,310.9,154.6,307.6,153.9z"/>
|
C312.8,156.3,310.9,154.6,307.6,153.9z"/>
|
||||||
<path class="st3" d="M315.2,168.4h0.1l0.2,0.3h0.1l-0.2-0.3c0.1,0,0.2-0.1,0.2-0.2c0-0.1-0.1-0.2-0.3-0.2H315v0.7h0.1L315.2,168.4
|
<path class="st3" d="M315.2,168.4h0.1l0.2,0.3h0.1l-0.2-0.3c0.1,0,0.2-0.1,0.2-0.2c0-0.1-0.1-0.2-0.3-0.2H315v0.7h0.1L315.2,168.4
|
||||||
L315.2,168.4z M315.2,168.3v-0.2h0.2c0.1,0,0.2,0,0.2,0.1c0,0.1-0.1,0.1-0.2,0.1H315.2z"/>
|
L315.2,168.4z M315.2,168.3v-0.2h0.2c0.1,0,0.2,0,0.2,0.1c0,0.1-0.1,0.1-0.2,0.1H315.2z"/>
|
||||||
<path class="st3" d="M316,168.3c0,0.4-0.3,0.7-0.7,0.7c-0.4,0-0.7-0.3-0.7-0.7c0-0.4,0.3-0.7,0.7-0.7
|
<path class="st3" d="M316,168.3c0,0.4-0.3,0.7-0.7,0.7c-0.4,0-0.7-0.3-0.7-0.7c0-0.4,0.3-0.7,0.7-0.7
|
||||||
C315.7,167.6,316,167.9,316,168.3z M315.3,167.7c-0.3,0-0.6,0.3-0.6,0.6c0,0.3,0.3,0.6,0.6,0.6c0.3,0,0.6-0.3,0.6-0.6
|
C315.7,167.6,316,167.9,316,168.3z M315.3,167.7c-0.3,0-0.6,0.3-0.6,0.6c0,0.3,0.3,0.6,0.6,0.6c0.3,0,0.6-0.3,0.6-0.6
|
||||||
C315.9,168,315.6,167.7,315.3,167.7z"/>
|
C315.9,168,315.6,167.7,315.3,167.7z"/>
|
||||||
<path class="st3" d="M295.5,149c-2.2,0.2-2.4,0.4-2.8,0.8c-0.6,0.6-1.3-0.8-1.3-0.8c-0.5-0.1-1-0.8-0.7-1.5s0.8-0.5,1-0.3
|
<path class="st3" d="M295.5,149c-2.2,0.2-2.4,0.4-2.8,0.8c-0.6,0.6-1.3-0.8-1.3-0.8c-0.5-0.1-1-0.8-0.7-1.5s0.8-0.5,1-0.3
|
||||||
c0.2,0.3,0.6,0.7,1.2,0.7s1.2-0.1,2.2-0.1c0.9,0,1.6,0.3,1.6,0.6C296.6,148.7,296.5,148.9,295.5,149z"/>
|
c0.2,0.3,0.6,0.7,1.2,0.7s1.2-0.1,2.2-0.1c0.9,0,1.6,0.3,1.6,0.6C296.6,148.7,296.5,148.9,295.5,149z"/>
|
||||||
<path class="st3" d="M297.8,145.4L297.8,145.4L297.8,145.4L297.8,145.4c0.4-0.3,1.1-0.5,1.8-0.6c0.2,0,0.4,0,0.6,0h0.1
|
<path class="st3" d="M297.8,145.4L297.8,145.4L297.8,145.4L297.8,145.4c0.4-0.3,1.1-0.5,1.8-0.6c0.2,0,0.4,0,0.6,0h0.1
|
||||||
c1.2,0,2.2,0.5,2.2,1.1c0,0.6-1,1-2.2,1c-0.4,0-0.8-0.1-1.1-0.2l-0.1-0.1l0.1-0.1c0.8-0.2,1.3-0.5,1.2-0.7c0-0.4-1-0.6-2.2-0.4
|
c1.2,0,2.2,0.5,2.2,1.1c0,0.6-1,1-2.2,1c-0.4,0-0.8-0.1-1.1-0.2l-0.1-0.1l0.1-0.1c0.8-0.2,1.3-0.5,1.2-0.7c0-0.4-1-0.6-2.2-0.4
|
||||||
C298,145.3,297.9,145.4,297.8,145.4z"/>
|
C298,145.3,297.9,145.4,297.8,145.4z"/>
|
||||||
<path class="st3" d="M325.8,160.8c0-1.7,0-3-0.1-4.1h2.8l0.1,2.4h0.1c0.6-1.8,2.1-2.7,3.5-2.7c0.3,0,0.5,0,0.8,0.1v3
|
<path class="st3" d="M325.8,160.8c0-1.7,0-3-0.1-4.1h2.8l0.1,2.4h0.1c0.6-1.8,2.1-2.7,3.5-2.7c0.3,0,0.5,0,0.8,0.1v3
|
||||||
c-0.3-0.1-0.6-0.1-1-0.1c-1.5,0-2.6,1-2.9,2.4c-0.1,0.3-0.1,0.6-0.1,1v6.7h-3.2L325.8,160.8z"/>
|
c-0.3-0.1-0.6-0.1-1-0.1c-1.5,0-2.6,1-2.9,2.4c-0.1,0.3-0.1,0.6-0.1,1v6.7h-3.2L325.8,160.8z"/>
|
||||||
<path class="st3" d="M336.8,164c0.1,2.3,1.9,3.3,3.9,3.3c1.5,0,2.5-0.2,3.5-0.6l0.5,2.2c-1.1,0.5-2.6,0.8-4.4,0.8
|
<path class="st3" d="M336.8,164c0.1,2.3,1.9,3.3,3.9,3.3c1.5,0,2.5-0.2,3.5-0.6l0.5,2.2c-1.1,0.5-2.6,0.8-4.4,0.8
|
||||||
c-4.1,0-6.5-2.5-6.5-6.4c0-3.5,2.1-6.8,6.2-6.8s5.5,3.4,5.5,6.2c0,0.6-0.1,1.1-0.1,1.4L336.8,164z M342.4,161.7
|
c-4.1,0-6.5-2.5-6.5-6.4c0-3.5,2.1-6.8,6.2-6.8s5.5,3.4,5.5,6.2c0,0.6-0.1,1.1-0.1,1.4L336.8,164z M342.4,161.7
|
||||||
c0-1.2-0.5-3.1-2.6-3.1c-2,0-2.8,1.8-2.9,3.1H342.4z"/>
|
c0-1.2-0.5-3.1-2.6-3.1c-2,0-2.8,1.8-2.9,3.1H342.4z"/>
|
||||||
<path class="st3" d="M382.9,166.5c0,1,0,2,0.2,3H382l-0.2-1.8h-0.1c-0.6,1-2,2.1-4,2.1c-2.5,0-3.7-1.8-3.7-3.4
|
<path class="st3" d="M382.9,166.5c0,1,0,2,0.2,3H382l-0.2-1.8h-0.1c-0.6,1-2,2.1-4,2.1c-2.5,0-3.7-1.8-3.7-3.4
|
||||||
c0-2.9,2.5-4.6,7.6-4.6v-0.3c0-1.2-0.2-3.7-3.2-3.7c-1.1,0-2.2,0.3-3.1,0.9l-0.4-0.9c1.1-0.8,2.5-1.1,3.7-1.1
|
c0-2.9,2.5-4.6,7.6-4.6v-0.3c0-1.2-0.2-3.7-3.2-3.7c-1.1,0-2.2,0.3-3.1,0.9l-0.4-0.9c1.1-0.8,2.5-1.1,3.7-1.1
|
||||||
c3.6,0,4.3,2.7,4.3,4.9L382.9,166.5L382.9,166.5z M381.7,162.8c-2.7-0.1-6.3,0.3-6.3,3.3c0,1.8,1.2,2.6,2.5,2.6
|
c3.6,0,4.3,2.7,4.3,4.9L382.9,166.5L382.9,166.5z M381.7,162.8c-2.7-0.1-6.3,0.3-6.3,3.3c0,1.8,1.2,2.6,2.5,2.6
|
||||||
c2.1,0,3.3-1.3,3.7-2.5c0.1-0.3,0.1-0.5,0.1-0.8L381.7,162.8L381.7,162.8z"/>
|
c2.1,0,3.3-1.3,3.7-2.5c0.1-0.3,0.1-0.5,0.1-0.8L381.7,162.8L381.7,162.8z"/>
|
||||||
<path class="st3" d="M388,154.2v2.8h3.6v1H388v8.1c0,1.6,0.5,2.6,1.8,2.6c0.6,0,1.1-0.1,1.4-0.2l0.2,1c-0.4,0.2-1,0.3-1.7,0.3
|
<path class="st3" d="M388,154.2v2.8h3.6v1H388v8.1c0,1.6,0.5,2.6,1.8,2.6c0.6,0,1.1-0.1,1.4-0.2l0.2,1c-0.4,0.2-1,0.3-1.7,0.3
|
||||||
c-0.9,0-1.7-0.3-2.2-0.9c-0.6-0.7-0.8-1.7-0.8-3V158h-2.1v-1h2.1v-2.3L388,154.2z"/>
|
c-0.9,0-1.7-0.3-2.2-0.9c-0.6-0.7-0.8-1.7-0.8-3V158h-2.1v-1h2.1v-2.3L388,154.2z"/>
|
||||||
<path class="st3" d="M367.6,156.7c-1,0-1.8,0.3-2.5,0.7c-0.7,0.4-1.4,1.1-1.7,1.8h-0.1V153l-1.2-0.3v16.8h1.2v-7.7
|
<path class="st3" d="M367.6,156.7c-1,0-1.8,0.3-2.5,0.7c-0.7,0.4-1.4,1.1-1.7,1.8h-0.1V153l-1.2-0.3v16.8h1.2v-7.7
|
||||||
c0-0.5,0-0.9,0.2-1.2c0.5-1.6,2-2.8,3.8-2.8c2.6,0,3.4,2.1,3.4,4.3v7.4h1.2V162C372,157.2,368.8,156.7,367.6,156.7z"/>
|
c0-0.5,0-0.9,0.2-1.2c0.5-1.6,2-2.8,3.8-2.8c2.6,0,3.4,2.1,3.4,4.3v7.4h1.2V162C372,157.2,368.8,156.7,367.6,156.7z"/>
|
||||||
<path class="st3" d="M359.2,151.9L356,151v7.1h-0.1c-0.6-0.9-1.8-1.7-3.6-1.7c-3.1,0-5.7,2.5-5.7,6.8c0,3.9,2.4,6.5,5.4,6.5
|
<path class="st3" d="M359.2,151.9L356,151v7.1h-0.1c-0.6-0.9-1.8-1.7-3.6-1.7c-3.1,0-5.7,2.5-5.7,6.8c0,3.9,2.4,6.5,5.4,6.5
|
||||||
c1.8,0,3.4-0.9,4.1-2.3h0.1l0.1,2h2.9c-0.1-0.9-0.1-2.3-0.1-3.6v-13.9H359.2z M356,164c0,0.3,0,0.7-0.1,0.9
|
c1.8,0,3.4-0.9,4.1-2.3h0.1l0.1,2h2.9c-0.1-0.9-0.1-2.3-0.1-3.6v-13.9H359.2z M356,164c0,0.3,0,0.7-0.1,0.9
|
||||||
c-0.3,1.4-1.5,2.3-2.8,2.3c-2,0-3.2-1.7-3.2-4c0-2.4,1.1-4.2,3.2-4.2c1.4,0,2.5,1,2.8,2.3c0.1,0.3,0.1,0.6,0.1,0.8V164z"/>
|
c-0.3,1.4-1.5,2.3-2.8,2.3c-2,0-3.2-1.7-3.2-4c0-2.4,1.1-4.2,3.2-4.2c1.4,0,2.5,1,2.8,2.3c0.1,0.3,0.1,0.6,0.1,0.8V164z"/>
|
||||||
<path class="st3" d="M393.3,168.9h0.2l0.2,0.4h0.1l-0.2-0.4c0.1,0,0.2-0.1,0.2-0.2c0-0.2-0.1-0.2-0.3-0.2h-0.3v0.9h0.1L393.3,168.9
|
<path class="st3" d="M393.3,168.9h0.2l0.2,0.4h0.1l-0.2-0.4c0.1,0,0.2-0.1,0.2-0.2c0-0.2-0.1-0.2-0.3-0.2h-0.3v0.9h0.1L393.3,168.9
|
||||||
L393.3,168.9z M393.3,168.8v-0.3h0.2c0.1,0,0.2,0,0.2,0.1c0,0.1-0.1,0.1-0.2,0.1L393.3,168.8L393.3,168.8z"/>
|
L393.3,168.9z M393.3,168.8v-0.3h0.2c0.1,0,0.2,0,0.2,0.1c0,0.1-0.1,0.1-0.2,0.1L393.3,168.8L393.3,168.8z"/>
|
||||||
<path class="st3" d="M394.3,168.8c0,0.5-0.4,0.9-0.9,0.9s-0.9-0.4-0.9-0.9s0.4-0.9,0.9-0.9C393.9,168,394.3,168.4,394.3,168.8z
|
<path class="st3" d="M394.3,168.8c0,0.5-0.4,0.9-0.9,0.9s-0.9-0.4-0.9-0.9s0.4-0.9,0.9-0.9C393.9,168,394.3,168.4,394.3,168.8z
|
||||||
M393.5,168.1c-0.4,0-0.7,0.3-0.7,0.7c0,0.4,0.3,0.7,0.7,0.7c0.4,0,0.7-0.3,0.7-0.7C394.2,168.5,393.8,168.1,393.5,168.1z"/>
|
M393.5,168.1c-0.4,0-0.7,0.3-0.7,0.7c0,0.4,0.3,0.7,0.7,0.7c0.4,0,0.7-0.3,0.7-0.7C394.2,168.5,393.8,168.1,393.5,168.1z"/>
|
||||||
<path class="st5" d="M663.5,148.7c0-4.2-3.4-7.6-7.6-7.6c-4.2,0-7.6,3.4-7.6,7.6l0,0v5.8l0,0c0,0.9,0.8,1.7,1.7,1.7l0,0l0,0h5.8
|
<path class="st5" d="M663.5,148.7c0-4.2-3.4-7.6-7.6-7.6c-4.2,0-7.6,3.4-7.6,7.6l0,0v5.8l0,0c0,0.9,0.8,1.7,1.7,1.7l0,0l0,0h5.8
|
||||||
C660.1,156.2,663.5,152.8,663.5,148.7"/>
|
C660.1,156.2,663.5,152.8,663.5,148.7"/>
|
||||||
<path class="st6" d="M658.2,142.9c-2,0-3.5,1.6-3.5,3.5v1.9h-1.9c-2,0-3.5,1.6-3.5,3.5c0,2,1.6,3.5,3.5,3.5c2,0,3.5-1.6,3.5-3.5
|
<path class="st6" d="M658.2,142.9c-2,0-3.5,1.6-3.5,3.5v1.9h-1.9c-2,0-3.5,1.6-3.5,3.5c0,2,1.6,3.5,3.5,3.5c2,0,3.5-1.6,3.5-3.5
|
||||||
v-1.9h1.9c2,0,3.5-1.6,3.5-3.5C661.7,144.5,660.1,142.9,658.2,142.9z M658.2,144.6c1,0,1.9,0.8,1.9,1.9c0,1-0.8,1.9-1.9,1.9l0,0
|
v-1.9h1.9c2,0,3.5-1.6,3.5-3.5C661.7,144.5,660.1,142.9,658.2,142.9z M658.2,144.6c1,0,1.9,0.8,1.9,1.9c0,1-0.8,1.9-1.9,1.9l0,0
|
||||||
h-1.6c-0.1,0-0.3-0.1-0.3-0.3v-1.6C656.3,145.4,657.1,144.6,658.2,144.6z M609.5,149.3c-0.7,0-1.4,0.6-1.4,1.3v7.1
|
h-1.6c-0.1,0-0.3-0.1-0.3-0.3v-1.6C656.3,145.4,657.1,144.6,658.2,144.6z M609.5,149.3c-0.7,0-1.4,0.6-1.4,1.3v7.1
|
||||||
c-0.7-1.3-2.2-2.1-3.9-2.1c-3.6,0-6,2.7-6,6.3s2.5,6.3,6,6.3c1.6,0,2.9-0.6,3.7-1.8l0.3,0.8c0.2,0.5,0.7,0.9,1.3,0.9
|
c-0.7-1.3-2.2-2.1-3.9-2.1c-3.6,0-6,2.7-6,6.3s2.5,6.3,6,6.3c1.6,0,2.9-0.6,3.7-1.8l0.3,0.8c0.2,0.5,0.7,0.9,1.3,0.9
|
||||||
@@ -124,16 +125,17 @@
|
|||||||
C615.7,159.8,617.1,158,619.3,158z M642.7,158c2.2,0,3.6,1.8,3.6,3.9c0,2.1-1.4,3.9-3.6,3.9c-2.2,0-3.6-1.8-3.6-3.9
|
C615.7,159.8,617.1,158,619.3,158z M642.7,158c2.2,0,3.6,1.8,3.6,3.9c0,2.1-1.4,3.9-3.6,3.9c-2.2,0-3.6-1.8-3.6-3.9
|
||||||
C639,159.8,640.5,158,642.7,158z M649.3,166.4L649.3,166.4l0.1,0.1v0.4h0.1v-0.4h0.1v-0.1H649.3z M649.8,166.4v0.5h0.1v-0.3v-0.1
|
C639,159.8,640.5,158,642.7,158z M649.3,166.4L649.3,166.4l0.1,0.1v0.4h0.1v-0.4h0.1v-0.1H649.3z M649.8,166.4v0.5h0.1v-0.3v-0.1
|
||||||
l0,0l0.1,0.3l0.1-0.3l0,0v0.1v0.3h0.1v-0.5h-0.1l-0.1,0.3v0.1v-0.1L649.8,166.4L649.8,166.4z"/>
|
l0,0l0.1,0.3l0.1-0.3l0,0v0.1v0.3h0.1v-0.5h-0.1l-0.1,0.3v0.1v-0.1L649.8,166.4L649.8,166.4z"/>
|
||||||
<path class="st2" d="M654.6,148.3v-1.8l0,0c0-2,1.6-3.5,3.5-3.5c0.3,0,0.5,0,0.8,0.1c0.4,0.1,0.7,0.4,0.7,0.8
|
<path class="st2" d="M654.6,148.3v-1.8l0,0c0-2,1.6-3.5,3.5-3.5c0.3,0,0.5,0,0.8,0.1c0.4,0.1,0.7,0.4,0.7,0.8
|
||||||
c0,0.5-0.3,0.8-0.8,0.8c-0.2,0-0.3,0-0.7,0c-1,0-1.9,0.8-1.9,1.9v1.6l0,0c0,0.1,0.1,0.3,0.3,0.3l0,0h1.2c0.5,0,0.8,0.4,0.8,0.8
|
c0,0.5-0.3,0.8-0.8,0.8c-0.2,0-0.3,0-0.7,0c-1,0-1.9,0.8-1.9,1.9v1.6l0,0c0,0.1,0.1,0.3,0.3,0.3l0,0h1.2c0.5,0,0.8,0.4,0.8,0.8
|
||||||
c0,0.5-0.4,0.8-0.8,0.8h-1.5v1.9l0,0c0,2-1.6,3.5-3.5,3.5c-0.3,0-0.5,0-0.8-0.1c-0.4-0.1-0.7-0.4-0.7-0.8c0-0.5,0.3-0.8,0.8-0.8
|
c0,0.5-0.4,0.8-0.8,0.8h-1.5v1.9l0,0c0,2-1.6,3.5-3.5,3.5c-0.3,0-0.5,0-0.8-0.1c-0.4-0.1-0.7-0.4-0.7-0.8c0-0.5,0.3-0.8,0.8-0.8
|
||||||
c0.2,0,0.3,0,0.7,0c1,0,1.9-0.8,1.9-1.9v-1.6c0-0.1-0.1-0.3-0.3-0.3l0,0h-1.2c-0.5,0-0.8-0.4-0.8-0.8c0-0.5,0.4-0.8,0.8-0.8
|
c0.2,0,0.3,0,0.7,0c1,0,1.9-0.8,1.9-1.9v-1.6c0-0.1-0.1-0.3-0.3-0.3l0,0h-1.2c-0.5,0-0.8-0.4-0.8-0.8c0-0.5,0.4-0.8,0.8-0.8
|
||||||
L654.6,148.3"/>
|
L654.6,148.3"/>
|
||||||
<path class="st0" d="M91.9,154.4c-0.5,0,0.1,0.2,0.7,0.3c0.2-0.1,0.3-0.3,0.4-0.4C92.6,154.4,92.3,154.4,91.9,154.4"/>
|
<path class="st0"
|
||||||
<path class="st0" d="M94.3,153.8c0.3-0.4,0.5-0.8,0.5-1.2c-0.1,0.3-0.2,0.6-0.4,0.8c-0.9,0.5-0.1-0.3,0-0.6
|
d="M91.9,154.4c-0.5,0,0.1,0.2,0.7,0.3c0.2-0.1,0.3-0.3,0.4-0.4C92.6,154.4,92.3,154.4,91.9,154.4"/>
|
||||||
|
<path class="st0" d="M94.3,153.8c0.3-0.4,0.5-0.8,0.5-1.2c-0.1,0.3-0.2,0.6-0.4,0.8c-0.9,0.5-0.1-0.3,0-0.6
|
||||||
C93.6,153.9,94.4,153.5,94.3,153.8"/>
|
C93.6,153.9,94.4,153.5,94.3,153.8"/>
|
||||||
<path class="st0" d="M95.2,151.4c0.1-0.8-0.2-0.6-0.2-0.2C95.1,151.2,95.2,151.8,95.2,151.4"/>
|
<path class="st0" d="M95.2,151.4c0.1-0.8-0.2-0.6-0.2-0.2C95.1,151.2,95.2,151.8,95.2,151.4"/>
|
||||||
<path class="st0" d="M98.2,151.8c0,0.7-0.2,1.1-0.4,1.7l-0.4,0.2c-0.3,0.6,0,0.4-0.2,0.9c-0.5,0.4-1.5,1.4-1.9,1.5
|
<path class="st0" d="M98.2,151.8c0,0.7-0.2,1.1-0.4,1.7l-0.4,0.2c-0.3,0.6,0,0.4-0.2,0.9c-0.5,0.4-1.5,1.4-1.9,1.5
|
||||||
c-0.2,0,0.2-0.3,0.2-0.4c-0.7,0.5-0.5,0.7-1.6,1v-0.1c-2.5,1.2-6.1-1.2-6-4.4c0,0.2-0.1,0.2-0.1,0.2c-0.1-1.7,0.8-3.3,2.3-4
|
c-0.2,0,0.2-0.3,0.2-0.4c-0.7,0.5-0.5,0.7-1.6,1v-0.1c-2.5,1.2-6.1-1.2-6-4.4c0,0.2-0.1,0.2-0.1,0.2c-0.1-1.7,0.8-3.3,2.3-4
|
||||||
c1.5-0.7,3.2-0.4,4.3,0.6c-0.6-0.8-1.7-1.6-3.1-1.5c-1.3,0-2.6,0.9-3,1.8c-0.7,0.4-0.8,1.7-1.1,1.9c-0.4,3,0.8,4.3,2.7,5.8
|
c1.5-0.7,3.2-0.4,4.3,0.6c-0.6-0.8-1.7-1.6-3.1-1.5c-1.3,0-2.6,0.9-3,1.8c-0.7,0.4-0.8,1.7-1.1,1.9c-0.4,3,0.8,4.3,2.7,5.8
|
||||||
c0.3,0.2,0.1,0.2,0.1,0.4c-0.7-0.3-1.3-0.8-1.7-1.3c0.3,0.4,0.5,0.8,0.9,1c-0.6-0.2-1.4-1.5-1.7-1.5c1.1,1.9,4.3,3.3,6,2.6
|
c0.3,0.2,0.1,0.2,0.1,0.4c-0.7-0.3-1.3-0.8-1.7-1.3c0.3,0.4,0.5,0.8,0.9,1c-0.6-0.2-1.4-1.5-1.7-1.5c1.1,1.9,4.3,3.3,6,2.6
|
||||||
@@ -150,85 +152,85 @@
|
|||||||
c0.2,0.3,0.4,0.3,0.5,0.4c-1-2.5-1.1-0.1-1.8-2.5H81c-0.1-0.2-0.2-0.4-0.3-0.6l0.1-0.7c-0.7-0.8-0.2-3.5-0.1-5
|
c0.2,0.3,0.4,0.3,0.5,0.4c-1-2.5-1.1-0.1-1.8-2.5H81c-0.1-0.2-0.2-0.4-0.3-0.6l0.1-0.7c-0.7-0.8-0.2-3.5-0.1-5
|
||||||
c0.1-0.6,0.6-1.2,1-2.3h-0.2c0.5-0.8,2.7-3.3,3.7-3.2c0.5-0.6-0.1,0-0.2-0.2c1.1-1.1,1.4-0.8,2.2-1c0.8-0.5-0.7,0.2-0.3-0.2
|
c0.1-0.6,0.6-1.2,1-2.3h-0.2c0.5-0.8,2.7-3.3,3.7-3.2c0.5-0.6-0.1,0-0.2-0.2c1.1-1.1,1.4-0.8,2.2-1c0.8-0.5-0.7,0.2-0.3-0.2
|
||||||
c1.4-0.4,1-0.8,2.8-1c0.2,0.1-0.4,0.2-0.6,0.3c1.1-0.6,3.6-0.4,5.2,0.3c1.9,0.9,4,3.4,4,5.9h0.1c0,1,0.1,2.1-0.2,3.1L98.2,151.8"/>
|
c1.4-0.4,1-0.8,2.8-1c0.2,0.1-0.4,0.2-0.6,0.3c1.1-0.6,3.6-0.4,5.2,0.3c1.9,0.9,4,3.4,4,5.9h0.1c0,1,0.1,2.1-0.2,3.1L98.2,151.8"/>
|
||||||
<path class="st0" d="M86.9,155l-0.1,0.3c0.3,0.4,0.5,0.8,0.9,1.2C87.5,156,87.3,155.8,86.9,155"/>
|
<path class="st0" d="M86.9,155l-0.1,0.3c0.3,0.4,0.5,0.8,0.9,1.2C87.5,156,87.3,155.8,86.9,155"/>
|
||||||
<path class="st0" d="M87.6,155c-0.2-0.2-0.3-0.4-0.4-0.6c0.1,0.4,0.3,0.7,0.5,1L87.6,155"/>
|
<path class="st0" d="M87.6,155c-0.2-0.2-0.3-0.4-0.4-0.6c0.1,0.4,0.3,0.7,0.5,1L87.6,155"/>
|
||||||
<path class="st0" d="M100.2,152.3l-0.1,0.2c-0.1,0.9-0.4,1.7-0.8,2.5C99.7,154.1,100,153.2,100.2,152.3"/>
|
<path class="st0" d="M100.2,152.3l-0.1,0.2c-0.1,0.9-0.4,1.7-0.8,2.5C99.7,154.1,100,153.2,100.2,152.3"/>
|
||||||
<path class="st0" d="M79.4,145.8c0.1,0.7-0.5,0.9,0.1,0.5C79.9,145.5,79.4,146,79.4,145.8"/>
|
<path class="st0" d="M79.4,145.8c0.1,0.7-0.5,0.9,0.1,0.5C79.9,145.5,79.4,146,79.4,145.8"/>
|
||||||
<path class="st0" d="M78.7,148.8c0.1-0.4,0.2-0.7,0.2-1C78.5,148.4,78.8,148.5,78.7,148.8"/>
|
<path class="st0" d="M78.7,148.8c0.1-0.4,0.2-0.7,0.2-1C78.5,148.4,78.8,148.5,78.7,148.8"/>
|
||||||
<path d="M77.4,178.1c0,0,0,2.3,0,2.9c0,0.5-0.1,1.5-1.1,1.5s-1.3-1.2-1.4-1.7c-0.1-0.6-0.1-1.1-0.1-1.3c0-0.7,0-2.6,1.6-2.6
|
<path d="M77.4,178.1c0,0,0,2.3,0,2.9c0,0.5-0.1,1.5-1.1,1.5s-1.3-1.2-1.4-1.7c-0.1-0.6-0.1-1.1-0.1-1.3c0-0.7,0-2.6,1.6-2.6
|
||||||
c0.5,0,0.7,0.1,1,0.3V178.1z M73.3,179.8c0,4,2.1,4,2.4,4c0.9,0,1.4-0.5,1.7-1.3v1.3c0.3,0,0.5,0,1,0c0.2,0,0.3,0,0.4,0
|
c0.5,0,0.7,0.1,1,0.3V178.1z M73.3,179.8c0,4,2.1,4,2.4,4c0.9,0,1.4-0.5,1.7-1.3v1.3c0.3,0,0.5,0,1,0c0.2,0,0.3,0,0.4,0
|
||||||
c0.1,0,0.2,0,0.4,0c-0.2-0.5-0.4-1.5-0.4-3.7c0-2.1,0-5.8,0.2-6.9c-0.5,0.2-0.9,0.4-1.9,0.5c0.4,0.4,0.4,0.6,0.4,2.5
|
c0.1,0,0.2,0,0.4,0c-0.2-0.5-0.4-1.5-0.4-3.7c0-2.1,0-5.8,0.2-6.9c-0.5,0.2-0.9,0.4-1.9,0.5c0.4,0.4,0.4,0.6,0.4,2.5
|
||||||
c-0.3-0.1-0.6-0.2-1.2-0.2C73.7,176,73.3,178.2,73.3,179.8"/>
|
c-0.3-0.1-0.6-0.2-1.2-0.2C73.7,176,73.3,178.2,73.3,179.8"/>
|
||||||
<path d="M81,179.1c0-1.2,0.3-2.2,1.3-2.2c1.1,0,1.2,1.2,1.2,2.2H81z M84.8,179.2c0-1.7-0.3-3.3-2.4-3.3c-2.9,0-2.9,3.2-2.9,3.9
|
<path d="M81,179.1c0-1.2,0.3-2.2,1.3-2.2c1.1,0,1.2,1.2,1.2,2.2H81z M84.8,179.2c0-1.7-0.3-3.3-2.4-3.3c-2.9,0-2.9,3.2-2.9,3.9
|
||||||
c0,2.9,1.3,4,3.4,4c1,0,1.4-0.1,1.7-0.2c0-0.5,0.1-0.8,0.1-1.3c-0.3,0.2-0.7,0.4-1.5,0.4c-2.2,0-2.2-2-2.2-2.7h3.8L84.8,179.2"/>
|
c0,2.9,1.3,4,3.4,4c1,0,1.4-0.1,1.7-0.2c0-0.5,0.1-0.8,0.1-1.3c-0.3,0.2-0.7,0.4-1.5,0.4c-2.2,0-2.2-2-2.2-2.7h3.8L84.8,179.2"/>
|
||||||
<path d="M89.4,179.8c0,1.3-0.2,3.1-1.9,3.1c-0.2,0-0.5,0-0.7-0.1c0-0.5,0-1.4,0-2.4c0-1.2,0.1-1.8,0.2-2.2c0.3-1,1-1,1.1-1
|
<path d="M89.4,179.8c0,1.3-0.2,3.1-1.9,3.1c-0.2,0-0.5,0-0.7-0.1c0-0.5,0-1.4,0-2.4c0-1.2,0.1-1.8,0.2-2.2c0.3-1,1-1,1.1-1
|
||||||
C89.2,177.2,89.4,178.7,89.4,179.8z M85.3,181.4c0,1,0,1.6-0.2,2.1c0.6,0.2,1.3,0.4,2.2,0.4c0.6,0,2.1,0,3-1.8
|
C89.2,177.2,89.4,178.7,89.4,179.8z M85.3,181.4c0,1,0,1.6-0.2,2.1c0.6,0.2,1.3,0.4,2.2,0.4c0.6,0,2.1,0,3-1.8
|
||||||
c0.4-0.8,0.6-1.9,0.6-2.8c0-0.5-0.1-1.6-0.5-2.3c-0.4-0.7-1-1-1.7-1c-1.4,0-1.8,1.1-2,1.7c0-0.7,0-3.2,0.1-4.5
|
c0.4-0.8,0.6-1.9,0.6-2.8c0-0.5-0.1-1.6-0.5-2.3c-0.4-0.7-1-1-1.7-1c-1.4,0-1.8,1.1-2,1.7c0-0.7,0-3.2,0.1-4.5
|
||||||
c-0.9,0.4-1.5,0.5-2.1,0.6c0.6,0.2,0.6,1.2,0.6,4.2L85.3,181.4"/>
|
c-0.9,0.4-1.5,0.5-2.1,0.6c0.6,0.2,0.6,1.2,0.6,4.2L85.3,181.4"/>
|
||||||
<path d="M93.6,183.7c-0.3,0-0.5-0.1-0.9-0.1c-0.5,0-0.8,0-1.1,0.1c0.1-0.3,0.2-0.4,0.2-1.3c0.1-1.3,0.1-4.6,0-5.3
|
<path d="M93.6,183.7c-0.3,0-0.5-0.1-0.9-0.1c-0.5,0-0.8,0-1.1,0.1c0.1-0.3,0.2-0.4,0.2-1.3c0.1-1.3,0.1-4.6,0-5.3
|
||||||
c-0.1-0.5-0.2-0.6-0.4-0.8c1.2-0.1,1.5-0.2,2-0.5c-0.1,0.6-0.1,0.9-0.1,1.9C93.3,182.6,93.3,183.1,93.6,183.7"/>
|
c-0.1-0.5-0.2-0.6-0.4-0.8c1.2-0.1,1.5-0.2,2-0.5c-0.1,0.6-0.1,0.9-0.1,1.9C93.3,182.6,93.3,183.1,93.6,183.7"/>
|
||||||
<path d="M98.1,179.7c0,0.9,0,1.5-0.3,2c-0.3,0.6-0.8,0.8-1.2,0.8c-0.8,0-1-0.7-1-1.4c0-1.3,1.2-1.4,1.7-1.4H98.1z M94.2,181.5
|
<path d="M98.1,179.7c0,0.9,0,1.5-0.3,2c-0.3,0.6-0.8,0.8-1.2,0.8c-0.8,0-1-0.7-1-1.4c0-1.3,1.2-1.4,1.7-1.4H98.1z M94.2,181.5
|
||||||
c0,0.9,0.3,1.8,1.1,2.2c0.4,0.2,0.7,0.2,0.8,0.2c1.3,0,1.7-1,2-1.6c0,0.6,0,1,0,1.5c0.3,0,0.5,0,0.9,0c0.2,0,0.5,0,0.7,0
|
c0,0.9,0.3,1.8,1.1,2.2c0.4,0.2,0.7,0.2,0.8,0.2c1.3,0,1.7-1,2-1.6c0,0.6,0,1,0,1.5c0.3,0,0.5,0,0.9,0c0.2,0,0.5,0,0.7,0
|
||||||
c-0.2-0.2-0.2-0.4-0.3-0.9c0-0.5,0-1.1,0-1.8v-2.9c0-1.1-0.3-2.1-2.4-2.1c-1.4,0-2.2,0.4-2.6,0.6c0.2,0.3,0.3,0.6,0.4,1.2
|
c-0.2-0.2-0.2-0.4-0.3-0.9c0-0.5,0-1.1,0-1.8v-2.9c0-1.1-0.3-2.1-2.4-2.1c-1.4,0-2.2,0.4-2.6,0.6c0.2,0.3,0.3,0.6,0.4,1.2
|
||||||
c0.6-0.5,1.3-0.7,2-0.7c1.2,0,1.2,0.8,1.2,1.9c-0.3,0-0.5,0-0.9,0C95.4,178.9,94.2,179.6,94.2,181.5"/>
|
c0.6-0.5,1.3-0.7,2-0.7c1.2,0,1.2,0.8,1.2,1.9c-0.3,0-0.5,0-0.9,0C95.4,178.9,94.2,179.6,94.2,181.5"/>
|
||||||
<path d="M106.2,182.3c0,0.5,0,1,0.2,1.4c-0.3,0-0.5-0.1-1.1-0.1c-0.3,0-0.5,0-0.8,0.1c0.1-0.2,0.1-0.3,0.1-0.5
|
<path d="M106.2,182.3c0,0.5,0,1,0.2,1.4c-0.3,0-0.5-0.1-1.1-0.1c-0.3,0-0.5,0-0.8,0.1c0.1-0.2,0.1-0.3,0.1-0.5
|
||||||
c0-0.3,0.1-1.4,0.1-1.8v-1.5c0-0.7,0-1.6,0-2c0-0.2-0.1-0.9-0.9-0.9c-0.8,0-1.1,0.6-1.2,1.1c-0.1,0.5-0.1,1-0.1,3.1
|
c0-0.3,0.1-1.4,0.1-1.8v-1.5c0-0.7,0-1.6,0-2c0-0.2-0.1-0.9-0.9-0.9c-0.8,0-1.1,0.6-1.2,1.1c-0.1,0.5-0.1,1-0.1,3.1
|
||||||
c0,1.8,0,2,0.2,2.5c-0.2,0-0.5-0.1-1-0.1c-0.3,0-0.6,0-0.8,0.1c0.1-0.2,0.2-0.3,0.2-1.1s0.1-4.6,0-5.5c-0.1-0.6-0.2-0.7-0.4-0.8
|
c0,1.8,0,2,0.2,2.5c-0.2,0-0.5-0.1-1-0.1c-0.3,0-0.6,0-0.8,0.1c0.1-0.2,0.2-0.3,0.2-1.1s0.1-4.6,0-5.5c-0.1-0.6-0.2-0.7-0.4-0.8
|
||||||
c1.1-0.1,1.5-0.2,1.9-0.4v1.5c0.2-0.4,0.5-1.4,1.9-1.4c1.8,0,1.8,1.3,1.8,2.1L106.2,182.3"/>
|
c1.1-0.1,1.5-0.2,1.9-0.4v1.5c0.2-0.4,0.5-1.4,1.9-1.4c1.8,0,1.8,1.3,1.8,2.1L106.2,182.3"/>
|
||||||
<polyline class="st0" points="93.7,173.9 92.5,175 91.4,173.9 92.5,172.7 93.7,173.9 "/>
|
<polyline class="st0" points="93.7,173.9 92.5,175 91.4,173.9 92.5,172.7 93.7,173.9 "/>
|
||||||
<path class="st7" d="M472.9,167.4H467c-0.6,0-1.2-0.1-1.8-0.2c-1.1-0.3-2-1.1-2.7-2.4c-0.6-1.1-0.9-2.4-0.9-3.9
|
<path class="st7" d="M472.9,167.4H467c-0.6,0-1.2-0.1-1.8-0.2c-1.1-0.3-2-1.1-2.7-2.4c-0.6-1.1-0.9-2.4-0.9-3.9
|
||||||
c0-1.4,0.3-2.7,0.8-3.8c0.6-1.2,1.4-2.1,2.5-2.5c0.8-0.3,1.7-0.5,2.6-0.5h5.4v2.6h-5.6c-0.9,0-1.6,0.5-2,1.5
|
c0-1.4,0.3-2.7,0.8-3.8c0.6-1.2,1.4-2.1,2.5-2.5c0.8-0.3,1.7-0.5,2.6-0.5h5.4v2.6h-5.6c-0.9,0-1.6,0.5-2,1.5
|
||||||
c-0.3,0.8-0.5,1.8-0.5,3c0,1,0.2,1.9,0.6,2.7c0.5,0.9,1.1,1.3,2,1.3h5.5V167.4L472.9,167.4z"/>
|
c-0.3,0.8-0.5,1.8-0.5,3c0,1,0.2,1.9,0.6,2.7c0.5,0.9,1.1,1.3,2,1.3h5.5V167.4L472.9,167.4z"/>
|
||||||
<path class="st7" d="M483,167.5h-4.7c-1.1,0-2.1-0.5-3-1.5c-0.8-1-1.2-2.1-1.2-3.4c0-1.4,0.5-2.6,1.4-3.6s1.9-1.5,3.1-1.5h4.4v2
|
<path class="st7" d="M483,167.5h-4.7c-1.1,0-2.1-0.5-3-1.5c-0.8-1-1.2-2.1-1.2-3.4c0-1.4,0.5-2.6,1.4-3.6s1.9-1.5,3.1-1.5h4.4v2
|
||||||
h-3.3c-0.4,0-0.8,0-1.1,0.1c-0.3,0.1-0.5,0.2-0.8,0.4c-0.4,0.4-0.7,1-0.7,1.6h5.7v2.1h-5.7c0,0.3,0,0.5,0.1,0.7s0.2,0.4,0.4,0.6
|
h-3.3c-0.4,0-0.8,0-1.1,0.1c-0.3,0.1-0.5,0.2-0.8,0.4c-0.4,0.4-0.7,1-0.7,1.6h5.7v2.1h-5.7c0,0.3,0,0.5,0.1,0.7s0.2,0.4,0.4,0.6
|
||||||
c0.2,0.2,0.5,0.3,0.8,0.4c0.3,0.1,0.7,0.1,1.1,0.1h3.4v2C482.9,167.5,483,167.5,483,167.5z"/>
|
c0.2,0.2,0.5,0.3,0.8,0.4c0.3,0.1,0.7,0.1,1.1,0.1h3.4v2C482.9,167.5,483,167.5,483,167.5z"/>
|
||||||
<path class="st7" d="M494.1,167.4h-2.7v-6.5c0-0.2,0-0.3-0.1-0.4c-0.1-0.1-0.2-0.3-0.3-0.4c-0.3-0.2-0.5-0.3-0.9-0.3h-2.6v7.7h-2.6
|
<path class="st7" d="M494.1,167.4h-2.7v-6.5c0-0.2,0-0.3-0.1-0.4c-0.1-0.1-0.2-0.3-0.3-0.4c-0.3-0.2-0.5-0.3-0.9-0.3h-2.6v7.7h-2.6
|
||||||
v-10h5.1c0.9,0,1.6,0.1,2,0.2c0.6,0.2,1.1,0.5,1.5,1c0.4,0.6,0.7,1.3,0.7,2v6.7C494.2,167.4,494.1,167.4,494.1,167.4z"/>
|
v-10h5.1c0.9,0,1.6,0.1,2,0.2c0.6,0.2,1.1,0.5,1.5,1c0.4,0.6,0.7,1.3,0.7,2v6.7C494.2,167.4,494.1,167.4,494.1,167.4z"/>
|
||||||
<path class="st7" d="M502.2,159.6h-2.6v4.5c0,0.4,0.1,0.7,0.4,1c0.3,0.3,0.7,0.4,1.3,0.4h0.8v1.9h-2.5c-0.7,0-1.6-0.3-2.1-0.8
|
<path class="st7" d="M502.2,159.6h-2.6v4.5c0,0.4,0.1,0.7,0.4,1c0.3,0.3,0.7,0.4,1.3,0.4h0.8v1.9h-2.5c-0.7,0-1.6-0.3-2.1-0.8
|
||||||
c-0.3-0.3-0.5-0.7-0.6-1.1c-0.1-0.4-0.1-0.8-0.1-1.4v-4.6h-1.7v-2h1.7V154h2.8v3.5h2.6L502.2,159.6L502.2,159.6z"/>
|
c-0.3-0.3-0.5-0.7-0.6-1.1c-0.1-0.4-0.1-0.8-0.1-1.4v-4.6h-1.7v-2h1.7V154h2.8v3.5h2.6L502.2,159.6L502.2,159.6z"/>
|
||||||
<path class="st7" d="M518.1,160.7c0,2.6-0.7,4.5-2.2,5.6c-1.2,0.9-2.9,1.4-5.1,1.4c-2.5,0-4.3-0.5-5.5-1.6c-1.3-1.1-2-3-2-5.5
|
<path class="st7" d="M518.1,160.7c0,2.6-0.7,4.5-2.2,5.6c-1.2,0.9-2.9,1.4-5.1,1.4c-2.5,0-4.3-0.5-5.5-1.6c-1.3-1.1-2-3-2-5.5
|
||||||
c0-2.1,0.6-3.7,1.7-4.9c1.3-1.3,3.2-1.9,5.7-1.9c2.8,0,4.7,0.6,5.9,1.8C517.6,156.7,518.1,158.4,518.1,160.7L518.1,160.7z
|
c0-2.1,0.6-3.7,1.7-4.9c1.3-1.3,3.2-1.9,5.7-1.9c2.8,0,4.7,0.6,5.9,1.8C517.6,156.7,518.1,158.4,518.1,160.7L518.1,160.7z
|
||||||
M514.6,160.6c0-1.3-0.3-2.4-0.9-3.1c-0.7-0.9-1.7-1.3-3.1-1.3c-1.4,0-2.4,0.5-3.1,1.4c-0.6,0.8-0.9,1.8-0.9,3
|
M514.6,160.6c0-1.3-0.3-2.4-0.9-3.1c-0.7-0.9-1.7-1.3-3.1-1.3c-1.4,0-2.4,0.5-3.1,1.4c-0.6,0.8-0.9,1.8-0.9,3
|
||||||
c0,1.4,0.2,2.5,0.7,3.2c0.6,1,1.8,1.4,3.5,1.4c1.5,0,2.5-0.5,3.1-1.4C514.4,163.1,514.6,162.1,514.6,160.6L514.6,160.6z"/>
|
c0,1.4,0.2,2.5,0.7,3.2c0.6,1,1.8,1.4,3.5,1.4c1.5,0,2.5-0.5,3.1-1.4C514.4,163.1,514.6,162.1,514.6,160.6L514.6,160.6z"/>
|
||||||
<path class="st7" d="M533.7,163.3c0,1.2-0.4,2.2-1.2,3s-1.8,1.2-3,1.2H520v-2.4h7.8c0.5,0,1-0.1,1.3-0.4c0.4-0.3,0.6-0.7,0.6-1.1
|
<path class="st7" d="M533.7,163.3c0,1.2-0.4,2.2-1.2,3s-1.8,1.2-3,1.2H520v-2.4h7.8c0.5,0,1-0.1,1.3-0.4c0.4-0.3,0.6-0.7,0.6-1.1
|
||||||
c0-1.1-0.8-1.7-2.4-1.7h-3.9c-1.1,0-2.1-0.4-3-1.1s-1.3-1.6-1.3-2.7c0-1.2,0.4-2.2,1.2-2.9c0.8-0.8,1.9-1.1,3.3-1.1h9.1v2.3h-8
|
c0-1.1-0.8-1.7-2.4-1.7h-3.9c-1.1,0-2.1-0.4-3-1.1s-1.3-1.6-1.3-2.7c0-1.2,0.4-2.2,1.2-2.9c0.8-0.8,1.9-1.1,3.3-1.1h9.1v2.3h-8
|
||||||
c-0.4,0-0.7,0.2-1.1,0.5c-0.4,0.3-0.5,0.6-0.5,1.1s0.2,0.8,0.5,1.2c0.4,0.3,0.8,0.5,1.3,0.5h4.3c1.4,0,2.4,0.4,3.2,1.1
|
c-0.4,0-0.7,0.2-1.1,0.5c-0.4,0.3-0.5,0.6-0.5,1.1s0.2,0.8,0.5,1.2c0.4,0.3,0.8,0.5,1.3,0.5h4.3c1.4,0,2.4,0.4,3.2,1.1
|
||||||
C533.3,161.2,533.7,162.1,533.7,163.3L533.7,163.3z"/>
|
C533.3,161.2,533.7,162.1,533.7,163.3L533.7,163.3z"/>
|
||||||
<polygon class="st8" points="443.8,160.4 438.5,165.5 433.3,160.4 438.5,155.2 "/>
|
<polygon class="st8" points="443.8,160.4 438.5,165.5 433.3,160.4 438.5,155.2 "/>
|
||||||
<polygon class="st2" points="443.8,160.4 443.4,160 438.5,164.8 434,160.4 438.5,155.9 443.4,160.7 443.8,160.4 443.4,160
|
<polygon class="st2" points="443.8,160.4 443.4,160 438.5,164.8 434,160.4 438.5,155.9 443.4,160.7 443.8,160.4 443.4,160
|
||||||
443.8,160.4 444.1,160 438.5,154.5 432.6,160.4 438.5,166.2 444.5,160.4 444.1,160 "/>
|
443.8,160.4 444.1,160 438.5,154.5 432.6,160.4 438.5,166.2 444.5,160.4 444.1,160 "/>
|
||||||
<polygon class="st9" points="444.9,159.3 439.7,154.1 444.9,149 450,154.1 "/>
|
<polygon class="st9" points="444.9,159.3 439.7,154.1 444.9,149 450,154.1 "/>
|
||||||
<polygon class="st2" points="444.9,159.3 445.2,159 440.4,154.1 444.9,149.7 449.3,154.1 444.5,159 444.9,159.3 445.2,159
|
<polygon class="st2" points="444.9,159.3 445.2,159 440.4,154.1 444.9,149.7 449.3,154.1 444.5,159 444.9,159.3 445.2,159
|
||||||
444.9,159.3 445.2,159.7 450.7,154.1 444.9,148.2 439,154.1 444.9,160 445.2,159.7 "/>
|
444.9,159.3 445.2,159.7 450.7,154.1 444.9,148.2 439,154.1 444.9,160 445.2,159.7 "/>
|
||||||
<polygon class="st10" points="450,166.6 444.8,171.8 439.6,166.6 444.8,161.5 "/>
|
<polygon class="st10" points="450,166.6 444.8,171.8 439.6,166.6 444.8,161.5 "/>
|
||||||
<polygon class="st2" points="450,166.6 449.7,166.3 444.8,171.1 440.3,166.6 444.8,162.2 449.7,167 450,166.6 449.7,166.3
|
<polygon class="st2" points="450,166.6 449.7,166.3 444.8,171.1 440.3,166.6 444.8,162.2 449.7,167 450,166.6 449.7,166.3
|
||||||
450,166.6 450.4,166.3 444.8,160.8 438.8,166.6 444.8,172.5 450.7,166.6 450.4,166.3 "/>
|
450,166.6 450.4,166.3 444.8,160.8 438.8,166.6 444.8,172.5 450.7,166.6 450.4,166.3 "/>
|
||||||
<polygon class="st7" points="451.1,165.6 446,160.4 451.1,155.2 456.3,160.4 "/>
|
<polygon class="st7" points="451.1,165.6 446,160.4 451.1,155.2 456.3,160.4 "/>
|
||||||
<polygon class="st2" points="451.1,165.6 451.5,165.2 446.7,160.4 451.1,155.9 455.6,160.4 450.8,165.2 451.1,165.6 451.5,165.2
|
<polygon class="st2" points="451.1,165.6 451.5,165.2 446.7,160.4 451.1,155.9 455.6,160.4 450.8,165.2 451.1,165.6 451.5,165.2
|
||||||
451.1,165.6 451.5,165.9 457,160.4 451.1,154.5 445.3,160.4 451.1,166.3 451.5,165.9 "/>
|
451.1,165.6 451.5,165.9 457,160.4 451.1,154.5 445.3,160.4 451.1,166.3 451.5,165.9 "/>
|
||||||
<rect x="436.8" y="152.3" class="st11" width="7" height="7"/>
|
<rect x="436.8" y="152.3" class="st11" width="7" height="7"/>
|
||||||
<rect x="445.9" y="161.4" class="st9" width="7" height="7"/>
|
<rect x="445.9" y="161.4" class="st9" width="7" height="7"/>
|
||||||
<rect x="445.9" y="152.3" class="st8" width="7" height="7"/>
|
<rect x="445.9" y="152.3" class="st8" width="7" height="7"/>
|
||||||
<rect x="436.5" y="152" class="st10" width="7.3" height="7.3"/>
|
<rect x="436.5" y="152" class="st10" width="7.3" height="7.3"/>
|
||||||
<polygon class="st2" points="436.5,152 436.5,152.5 443.3,152.5 443.3,158.8 437,158.8 437,152 436.5,152 436.5,152.5 436.5,152
|
<polygon class="st2" points="436.5,152 436.5,152.5 443.3,152.5 443.3,158.8 437,158.8 437,152 436.5,152 436.5,152.5 436.5,152
|
||||||
436,152 436,159.8 444.3,159.8 444.3,151.5 436,151.5 436,152 "/>
|
436,152 436,159.8 444.3,159.8 444.3,151.5 436,151.5 436,152 "/>
|
||||||
<polygon class="st2" points="445.9,161.4 445.9,161.9 452.6,161.9 452.6,168.2 446.4,168.2 446.4,161.4 445.9,161.4 445.9,161.9
|
<polygon class="st2" points="445.9,161.4 445.9,161.9 452.6,161.9 452.6,168.2 446.4,168.2 446.4,161.4 445.9,161.4 445.9,161.9
|
||||||
445.9,161.4 445.4,161.4 445.4,169.2 453.6,169.2 453.6,160.9 445.4,160.9 445.4,161.4 "/>
|
445.9,161.4 445.4,161.4 445.4,169.2 453.6,169.2 453.6,160.9 445.4,160.9 445.4,161.4 "/>
|
||||||
<polygon class="st2" points="445.9,152.1 445.9,152.6 452.7,152.6 452.7,158.8 446.4,158.8 446.4,152.1 445.9,152.1 445.9,152.6
|
<polygon class="st2" points="445.9,152.1 445.9,152.6 452.7,152.6 452.7,158.8 446.4,158.8 446.4,152.1 445.9,152.1 445.9,152.6
|
||||||
445.9,152.1 445.4,152.1 445.4,159.8 453.7,159.8 453.7,151.6 445.4,151.6 445.4,152.1 "/>
|
445.9,152.1 445.4,152.1 445.4,159.8 453.7,159.8 453.7,151.6 445.4,151.6 445.4,152.1 "/>
|
||||||
<rect x="436.5" y="161.4" class="st7" width="7.3" height="7.3"/>
|
<rect x="436.5" y="161.4" class="st7" width="7.3" height="7.3"/>
|
||||||
<polygon class="st2" points="436.5,161.4 436.5,161.9 443.3,161.9 443.3,168.2 437,168.2 437,161.4 436.5,161.4 436.5,161.9
|
<polygon class="st2" points="436.5,161.4 436.5,161.9 443.3,161.9 443.3,168.2 437,168.2 437,161.4 436.5,161.4 436.5,161.9
|
||||||
436.5,161.4 436,161.4 436,169.2 444.3,169.2 444.3,160.9 436,160.9 436,161.4 "/>
|
436.5,161.4 436,161.4 436,169.2 444.3,169.2 444.3,160.9 436,160.9 436,161.4 "/>
|
||||||
<polygon class="st2" points="443.8,160.4 443.4,160 438.5,164.8 434,160.4 438.5,155.9 443.4,160.7 443.8,160.4 443.4,160
|
<polygon class="st2" points="443.8,160.4 443.4,160 438.5,164.8 434,160.4 438.5,155.9 443.4,160.7 443.8,160.4 443.4,160
|
||||||
443.8,160.4 444.1,160 438.5,154.5 432.6,160.4 438.5,166.2 444.5,160.4 444.1,160 "/>
|
443.8,160.4 444.1,160 438.5,154.5 432.6,160.4 438.5,166.2 444.5,160.4 444.1,160 "/>
|
||||||
<polygon class="st2" points="444.9,159.3 445.2,159 440.4,154.1 444.9,149.7 449.3,154.1 444.5,159 444.9,159.3 445.2,159
|
<polygon class="st2" points="444.9,159.3 445.2,159 440.4,154.1 444.9,149.7 449.3,154.1 444.5,159 444.9,159.3 445.2,159
|
||||||
444.9,159.3 445.2,159.7 450.7,154.1 444.9,148.2 439,154.1 444.9,160 445.2,159.7 "/>
|
444.9,159.3 445.2,159.7 450.7,154.1 444.9,148.2 439,154.1 444.9,160 445.2,159.7 "/>
|
||||||
<polygon class="st2" points="450,166.6 449.7,166.3 444.8,171.1 440.3,166.6 444.8,162.2 449.7,167 450,166.6 449.7,166.3
|
<polygon class="st2" points="450,166.6 449.7,166.3 444.8,171.1 440.3,166.6 444.8,162.2 449.7,167 450,166.6 449.7,166.3
|
||||||
450,166.6 450.4,166.3 444.8,160.8 438.8,166.6 444.8,172.5 450.7,166.6 450.4,166.3 "/>
|
450,166.6 450.4,166.3 444.8,160.8 438.8,166.6 444.8,172.5 450.7,166.6 450.4,166.3 "/>
|
||||||
<polygon class="st2" points="451.1,165.6 451.5,165.2 446.7,160.4 451.1,155.9 455.6,160.4 450.8,165.2 451.1,165.6 451.5,165.2
|
<polygon class="st2" points="451.1,165.6 451.5,165.2 446.7,160.4 451.1,155.9 455.6,160.4 450.8,165.2 451.1,165.6 451.5,165.2
|
||||||
451.1,165.6 451.5,165.9 457,160.4 451.1,154.5 445.3,160.4 451.1,166.3 451.5,165.9 "/>
|
451.1,165.6 451.5,165.9 457,160.4 451.1,154.5 445.3,160.4 451.1,166.3 451.5,165.9 "/>
|
||||||
</g>
|
</g>
|
||||||
<g>
|
<g>
|
||||||
<g>
|
<g>
|
||||||
<path class="st12" d="M316.7,46.8v14.4c0,0.4-0.3,0.8-0.6,0.9c-0.1,0-0.2,0.1-0.3,0.1c-0.3,0-0.6-0.1-0.7-0.4l-9.7-12.3v11.7
|
<path class="st12" d="M316.7,46.8v14.4c0,0.4-0.3,0.8-0.6,0.9c-0.1,0-0.2,0.1-0.3,0.1c-0.3,0-0.6-0.1-0.7-0.4l-9.7-12.3v11.7
|
||||||
c0,0.5-0.4,0.9-0.9,0.9s-0.9-0.4-0.9-0.9V46.8c0-0.4,0.3-0.8,0.6-0.9c0.4-0.1,0.8,0,1.1,0.3l9.7,12.3V46.8c0-0.5,0.4-0.9,0.9-0.9
|
c0,0.5-0.4,0.9-0.9,0.9s-0.9-0.4-0.9-0.9V46.8c0-0.4,0.3-0.8,0.6-0.9c0.4-0.1,0.8,0,1.1,0.3l9.7,12.3V46.8c0-0.5,0.4-0.9,0.9-0.9
|
||||||
@@ -268,7 +270,7 @@
|
|||||||
c-0.1,0-0.2,0-0.3,0c-0.2,0-0.4,0-0.6-0.1c-0.3,0-0.7-0.1-1.1-0.3c-0.8-0.3-1.6-0.7-2.2-1.3c-0.7-0.6-1.3-1.3-1.7-2.2
|
c-0.1,0-0.2,0-0.3,0c-0.2,0-0.4,0-0.6-0.1c-0.3,0-0.7-0.1-1.1-0.3c-0.8-0.3-1.6-0.7-2.2-1.3c-0.7-0.6-1.3-1.3-1.7-2.2
|
||||||
c-0.4-0.9-0.6-1.8-0.6-2.8l0-0.4C437.6,53.5,437.6,53.4,437.6,53.2z"/>
|
c-0.4-0.9-0.6-1.8-0.6-2.8l0-0.4C437.6,53.5,437.6,53.4,437.6,53.2z"/>
|
||||||
</g>
|
</g>
|
||||||
<path class="st13" d="M291.3,44.1l-11.4-6.6c-0.6-0.3-1.2-0.5-1.9-0.5c-0.7,0-1.3,0.2-1.9,0.5l-11.4,6.6c-1.2,0.7-1.9,1.9-1.9,3.3
|
<path class="st13" d="M291.3,44.1l-11.4-6.6c-0.6-0.3-1.2-0.5-1.9-0.5c-0.7,0-1.3,0.2-1.9,0.5l-11.4,6.6c-1.2,0.7-1.9,1.9-1.9,3.3
|
||||||
l0,13.2c0,1.4,0.7,2.6,1.9,3.3l11.4,6.6c0.6,0.3,1.2,0.5,1.9,0.5c0.7,0,1.3-0.2,1.9-0.5l11.4-6.6c1.2-0.7,1.9-1.9,1.9-3.3l0-13.2
|
l0,13.2c0,1.4,0.7,2.6,1.9,3.3l11.4,6.6c0.6,0.3,1.2,0.5,1.9,0.5c0.7,0,1.3-0.2,1.9-0.5l11.4-6.6c1.2-0.7,1.9-1.9,1.9-3.3l0-13.2
|
||||||
C293.2,46.1,292.5,44.8,291.3,44.1z M276.8,38.7c0.2-0.1,0.4-0.2,0.6-0.2V44c0,0.4,0.3,0.7,0.7,0.7c0.4,0,0.7-0.3,0.7-0.7v-5.6
|
C293.2,46.1,292.5,44.8,291.3,44.1z M276.8,38.7c0.2-0.1,0.4-0.2,0.6-0.2V44c0,0.4,0.3,0.7,0.7,0.7c0.4,0,0.7-0.3,0.7-0.7v-5.6
|
||||||
c0.2,0.1,0.4,0.1,0.6,0.3l11.4,6.6c0.2,0.1,0.4,0.2,0.5,0.4l-6.9,4c-1.4-2-3.7-3.3-6.3-3.3c-2.6,0-4.9,1.3-6.3,3.3l-6.9-4
|
c0.2,0.1,0.4,0.1,0.6,0.3l11.4,6.6c0.2,0.1,0.4,0.2,0.5,0.4l-6.9,4c-1.4-2-3.7-3.3-6.3-3.3c-2.6,0-4.9,1.3-6.3,3.3l-6.9-4
|
||||||
@@ -280,5 +282,5 @@
|
|||||||
c0-1.2-0.3-2.3-0.7-3.2l6.9-4c0.1,0.2,0.1,0.4,0.1,0.6l0,13.2c0,0.2,0,0.4-0.1,0.7l-4.4-2.6c-0.3-0.2-0.7-0.1-0.9,0.2
|
c0-1.2-0.3-2.3-0.7-3.2l6.9-4c0.1,0.2,0.1,0.4,0.1,0.6l0,13.2c0,0.2,0,0.4-0.1,0.7l-4.4-2.6c-0.3-0.2-0.7-0.1-0.9,0.2
|
||||||
c-0.2,0.3-0.1,0.7,0.2,0.9l4.4,2.6c-0.1,0.1-0.3,0.3-0.5,0.4L279.2,69.3z"/>
|
c-0.2,0.3-0.1,0.7,0.2,0.9l4.4,2.6c-0.1,0.1-0.3,0.3-0.5,0.4L279.2,69.3z"/>
|
||||||
</g>
|
</g>
|
||||||
<line class="st14" x1="51.2" y1="108" x2="676.8" y2="108"/>
|
<line class="st14" x1="51.2" y1="108" x2="676.8" y2="108"/>
|
||||||
</svg>
|
</svg>
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
File diff suppressed because one or more lines are too long
|
Before Width: | Height: | Size: 24 KiB After Width: | Height: | Size: 24 KiB |
@@ -24,7 +24,7 @@ Each script in this repository performs the following steps:
|
|||||||
|
|
||||||
1. Checks if the system is an Debian based Linux distribution.
|
1. Checks if the system is an Debian based Linux distribution.
|
||||||
2. Configures the NodeSource Node.js DEB repository for the specified version of Node.js.
|
2. Configures the NodeSource Node.js DEB repository for the specified version of Node.js.
|
||||||
3. Logs a message indicating that the repository is configured and updated, and instructs the user to run `apt-get install nodejs -y` to complete the installation.
|
3. Logs a message indicating that the repository is configured and updated, and instructs the user to run `apt install nodejs -y` to complete the installation.
|
||||||
|
|
||||||
The `setup_current` and `setup_latest` scripts are special scripts that install the current and latest versions of Node.js, respectively. The current version is 20.x and the latest version is 21.x.
|
The `setup_current` and `setup_latest` scripts are special scripts that install the current and latest versions of Node.js, respectively. The current version is 20.x and the latest version is 21.x.
|
||||||
|
|
||||||
|
|||||||
@@ -42,13 +42,13 @@ check_os() {
|
|||||||
install_pre_reqs() {
|
install_pre_reqs() {
|
||||||
log "Installing pre-requisites" "info"
|
log "Installing pre-requisites" "info"
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Run 'apt-get install'
|
# Run 'apt install'
|
||||||
if ! apt-get install -y apt-transport-https ca-certificates curl gnupg; then
|
if ! apt install -y apt-transport-https ca-certificates curl gnupg; then
|
||||||
handle_error "$?" "Failed to install packages"
|
handle_error "$?" "Failed to install packages"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -75,8 +75,8 @@ configure_repo() {
|
|||||||
local node_version=$1
|
local node_version=$1
|
||||||
|
|
||||||
arch=$(dpkg --print-architecture)
|
arch=$(dpkg --print-architecture)
|
||||||
if [ "$arch" != "amd64" ] && [ "$arch" != "arm64" ] && [ "$arch" != "armhf" ]; then
|
if [ "$arch" != "amd64" ] && [ "$arch" != "arm64" ]; then
|
||||||
handle_error "1" "Unsupported architecture: $arch. Only amd64, arm64, and armhf are supported."
|
handle_error "1" "Unsupported architecture: $arch. Only amd64, arm64 are supported. Contact Nodesource for an extended support version https://nodesource.com/pages/contact-us.html."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "deb [arch=$arch signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$node_version nodistro main" | tee /etc/apt/sources.list.d/nodesource.list > /dev/null
|
echo "deb [arch=$arch signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$node_version nodistro main" | tee /etc/apt/sources.list.d/nodesource.list > /dev/null
|
||||||
@@ -91,14 +91,14 @@ configure_repo() {
|
|||||||
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
else
|
else
|
||||||
log "Repository configured successfully."
|
log "Repository configured successfully."
|
||||||
log "To install Node.js, run: apt-get install nodejs -y" "info"
|
log "To install Node.js, run: apt install nodejs -y" "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
log "To install N|solid Runtime, run: apt-get install nsolid -y \n" "success"
|
log "To install N|solid Runtime, run: apt install nsolid -y \n" "success"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ if [ ! -f "$base_script" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# List of versions
|
# List of versions
|
||||||
versions=("18" "20" "22" "23" "24")
|
versions=("23" "24" "25")
|
||||||
|
|
||||||
# Iterate over the versions and create scripts
|
# Iterate over the versions and create scripts
|
||||||
for version in "${versions[@]}"; do
|
for version in "${versions[@]}"; do
|
||||||
@@ -33,8 +33,8 @@ for version in "${versions[@]}"; do
|
|||||||
done
|
done
|
||||||
|
|
||||||
# Define LTS and current Node.js versions
|
# Define LTS and current Node.js versions
|
||||||
lts_version="22"
|
lts_version="24"
|
||||||
current_version="24"
|
current_version="25"
|
||||||
|
|
||||||
# Create setup_lts and setup_current scripts
|
# Create setup_lts and setup_current scripts
|
||||||
create_script "$lts_version" "lts"
|
create_script "$lts_version" "lts"
|
||||||
|
|||||||
@@ -113,13 +113,13 @@ check_os() {
|
|||||||
install_pre_reqs() {
|
install_pre_reqs() {
|
||||||
log "Installing pre-requisites" "info"
|
log "Installing pre-requisites" "info"
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Run 'apt-get install'
|
# Run 'apt install'
|
||||||
if ! apt-get install -y apt-transport-https ca-certificates curl gnupg; then
|
if ! apt install -y apt-transport-https ca-certificates curl gnupg; then
|
||||||
handle_error "$?" "Failed to install packages"
|
handle_error "$?" "Failed to install packages"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -152,11 +152,11 @@ configure_repo() {
|
|||||||
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
else
|
else
|
||||||
log "Repository configured successfully. To install Node.js, run: apt-get install nodejs -y" "success"
|
log "Repository configured successfully. To install Node.js, run: apt install nodejs -y" "success"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+37
-10
@@ -1,5 +1,31 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Send deprecation Warning
|
||||||
|
node_deprecation_warning() {
|
||||||
|
log "
|
||||||
|
===============================================================================
|
||||||
|
DEPRECATION WARNING
|
||||||
|
===============================================================================
|
||||||
|
Node.js 18.x is no longer actively supported!
|
||||||
|
You will not receive security or critical stability updates for this version.
|
||||||
|
|
||||||
|
You should migrate to a supported version of Node.js as soon as possible.
|
||||||
|
|
||||||
|
Please see https://nodesource.com/products/distributions for details about which
|
||||||
|
version may be appropriate for you.
|
||||||
|
|
||||||
|
The NodeSource Node.js distributions site contains
|
||||||
|
information both about supported versions of Node.js and N|Solid supported Linux
|
||||||
|
distributions. To learn more about usage, see:
|
||||||
|
https://nodesource.com/products/distributions
|
||||||
|
|
||||||
|
===============================================================================
|
||||||
|
|
||||||
|
Continuing in 10 seconds ...
|
||||||
|
" "error"
|
||||||
|
sleep 10
|
||||||
|
}
|
||||||
|
|
||||||
# Logger Function
|
# Logger Function
|
||||||
log() {
|
log() {
|
||||||
local message="$1"
|
local message="$1"
|
||||||
@@ -42,13 +68,13 @@ check_os() {
|
|||||||
install_pre_reqs() {
|
install_pre_reqs() {
|
||||||
log "Installing pre-requisites" "info"
|
log "Installing pre-requisites" "info"
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Run 'apt-get install'
|
# Run 'apt install'
|
||||||
if ! apt-get install -y apt-transport-https ca-certificates curl gnupg; then
|
if ! apt install -y apt-transport-https ca-certificates curl gnupg; then
|
||||||
handle_error "$?" "Failed to install packages"
|
handle_error "$?" "Failed to install packages"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -91,14 +117,14 @@ configure_repo() {
|
|||||||
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
else
|
else
|
||||||
log "Repository configured successfully."
|
log "Repository configured successfully."
|
||||||
log "To install Node.js, run: apt-get install nodejs -y" "info"
|
log "To install Node.js, run: apt install nodejs -y" "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
log "To install N|solid Runtime, run: apt-get install nsolid -y \n" "success"
|
log "To install N|solid Runtime, run: apt install nsolid -y \n" "success"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -109,5 +135,6 @@ NODE_VERSION="18.x"
|
|||||||
check_os
|
check_os
|
||||||
|
|
||||||
# Main execution
|
# Main execution
|
||||||
|
node_deprecation_warning
|
||||||
install_pre_reqs || handle_error $? "Failed installing pre-requisites"
|
install_pre_reqs || handle_error $? "Failed installing pre-requisites"
|
||||||
configure_repo "$NODE_VERSION" || handle_error $? "Failed configuring repository"
|
configure_repo "$NODE_VERSION" || handle_error $? "Failed configuring repository"
|
||||||
|
|||||||
+10
-10
@@ -42,13 +42,13 @@ check_os() {
|
|||||||
install_pre_reqs() {
|
install_pre_reqs() {
|
||||||
log "Installing pre-requisites" "info"
|
log "Installing pre-requisites" "info"
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Run 'apt-get install'
|
# Run 'apt install'
|
||||||
if ! apt-get install -y apt-transport-https ca-certificates curl gnupg; then
|
if ! apt install -y apt-transport-https ca-certificates curl gnupg; then
|
||||||
handle_error "$?" "Failed to install packages"
|
handle_error "$?" "Failed to install packages"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -91,14 +91,14 @@ configure_repo() {
|
|||||||
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
else
|
else
|
||||||
log "Repository configured successfully."
|
log "Repository configured successfully."
|
||||||
log "To install Node.js, run: apt-get install nodejs -y" "info"
|
log "To install Node.js, run: apt install nodejs -y" "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
log "To install N|solid Runtime, run: apt-get install nsolid -y \n" "success"
|
log "To install N|solid Runtime, run: apt install nsolid -y \n" "success"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+10
-10
@@ -42,13 +42,13 @@ check_os() {
|
|||||||
install_pre_reqs() {
|
install_pre_reqs() {
|
||||||
log "Installing pre-requisites" "info"
|
log "Installing pre-requisites" "info"
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Run 'apt-get install'
|
# Run 'apt install'
|
||||||
if ! apt-get install -y apt-transport-https ca-certificates curl gnupg; then
|
if ! apt install -y apt-transport-https ca-certificates curl gnupg; then
|
||||||
handle_error "$?" "Failed to install packages"
|
handle_error "$?" "Failed to install packages"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -91,14 +91,14 @@ configure_repo() {
|
|||||||
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
else
|
else
|
||||||
log "Repository configured successfully."
|
log "Repository configured successfully."
|
||||||
log "To install Node.js, run: apt-get install nodejs -y" "info"
|
log "To install Node.js, run: apt install nodejs -y" "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
log "To install N|solid Runtime, run: apt-get install nsolid -y \n" "success"
|
log "To install N|solid Runtime, run: apt install nsolid -y \n" "success"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+10
-10
@@ -42,13 +42,13 @@ check_os() {
|
|||||||
install_pre_reqs() {
|
install_pre_reqs() {
|
||||||
log "Installing pre-requisites" "info"
|
log "Installing pre-requisites" "info"
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Run 'apt-get install'
|
# Run 'apt install'
|
||||||
if ! apt-get install -y apt-transport-https ca-certificates curl gnupg; then
|
if ! apt install -y apt-transport-https ca-certificates curl gnupg; then
|
||||||
handle_error "$?" "Failed to install packages"
|
handle_error "$?" "Failed to install packages"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -91,14 +91,14 @@ configure_repo() {
|
|||||||
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
else
|
else
|
||||||
log "Repository configured successfully."
|
log "Repository configured successfully."
|
||||||
log "To install Node.js, run: apt-get install nodejs -y" "info"
|
log "To install Node.js, run: apt install nodejs -y" "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
log "To install N|solid Runtime, run: apt-get install nsolid -y \n" "success"
|
log "To install N|solid Runtime, run: apt install nsolid -y \n" "success"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+12
-12
@@ -42,13 +42,13 @@ check_os() {
|
|||||||
install_pre_reqs() {
|
install_pre_reqs() {
|
||||||
log "Installing pre-requisites" "info"
|
log "Installing pre-requisites" "info"
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Run 'apt-get install'
|
# Run 'apt install'
|
||||||
if ! apt-get install -y apt-transport-https ca-certificates curl gnupg; then
|
if ! apt install -y apt-transport-https ca-certificates curl gnupg; then
|
||||||
handle_error "$?" "Failed to install packages"
|
handle_error "$?" "Failed to install packages"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -75,8 +75,8 @@ configure_repo() {
|
|||||||
local node_version=$1
|
local node_version=$1
|
||||||
|
|
||||||
arch=$(dpkg --print-architecture)
|
arch=$(dpkg --print-architecture)
|
||||||
if [ "$arch" != "amd64" ] && [ "$arch" != "arm64" ] && [ "$arch" != "armhf" ]; then
|
if [ "$arch" != "amd64" ] && [ "$arch" != "arm64" ]; then
|
||||||
handle_error "1" "Unsupported architecture: $arch. Only amd64, arm64, and armhf are supported."
|
handle_error "1" "Unsupported architecture: $arch. Only amd64, arm64 are supported. Contact Nodesource for an extended support version https://nodesource.com/pages/contact-us.html."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "deb [arch=$arch signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$node_version nodistro main" | tee /etc/apt/sources.list.d/nodesource.list > /dev/null
|
echo "deb [arch=$arch signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$node_version nodistro main" | tee /etc/apt/sources.list.d/nodesource.list > /dev/null
|
||||||
@@ -91,14 +91,14 @@ configure_repo() {
|
|||||||
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
else
|
else
|
||||||
log "Repository configured successfully."
|
log "Repository configured successfully."
|
||||||
log "To install Node.js, run: apt-get install nodejs -y" "info"
|
log "To install Node.js, run: apt install nodejs -y" "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
log "To install N|solid Runtime, run: apt-get install nsolid -y \n" "success"
|
log "To install N|solid Runtime, run: apt install nsolid -y \n" "success"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+12
-12
@@ -42,13 +42,13 @@ check_os() {
|
|||||||
install_pre_reqs() {
|
install_pre_reqs() {
|
||||||
log "Installing pre-requisites" "info"
|
log "Installing pre-requisites" "info"
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Run 'apt-get install'
|
# Run 'apt install'
|
||||||
if ! apt-get install -y apt-transport-https ca-certificates curl gnupg; then
|
if ! apt install -y apt-transport-https ca-certificates curl gnupg; then
|
||||||
handle_error "$?" "Failed to install packages"
|
handle_error "$?" "Failed to install packages"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -75,8 +75,8 @@ configure_repo() {
|
|||||||
local node_version=$1
|
local node_version=$1
|
||||||
|
|
||||||
arch=$(dpkg --print-architecture)
|
arch=$(dpkg --print-architecture)
|
||||||
if [ "$arch" != "amd64" ] && [ "$arch" != "arm64" ] && [ "$arch" != "armhf" ]; then
|
if [ "$arch" != "amd64" ] && [ "$arch" != "arm64" ]; then
|
||||||
handle_error "1" "Unsupported architecture: $arch. Only amd64, arm64, and armhf are supported."
|
handle_error "1" "Unsupported architecture: $arch. Only amd64, arm64 are supported. Contact Nodesource for an extended support version https://nodesource.com/pages/contact-us.html."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "deb [arch=$arch signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$node_version nodistro main" | tee /etc/apt/sources.list.d/nodesource.list > /dev/null
|
echo "deb [arch=$arch signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$node_version nodistro main" | tee /etc/apt/sources.list.d/nodesource.list > /dev/null
|
||||||
@@ -91,14 +91,14 @@ configure_repo() {
|
|||||||
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
else
|
else
|
||||||
log "Repository configured successfully."
|
log "Repository configured successfully."
|
||||||
log "To install Node.js, run: apt-get install nodejs -y" "info"
|
log "To install Node.js, run: apt install nodejs -y" "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
log "To install N|solid Runtime, run: apt-get install nsolid -y \n" "success"
|
log "To install N|solid Runtime, run: apt install nsolid -y \n" "success"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Executable
+113
@@ -0,0 +1,113 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Logger Function
|
||||||
|
log() {
|
||||||
|
local message="$1"
|
||||||
|
local type="$2"
|
||||||
|
local timestamp=$(date '+%Y-%m-%d %H:%M:%S')
|
||||||
|
local color
|
||||||
|
local endcolor="\033[0m"
|
||||||
|
|
||||||
|
case "$type" in
|
||||||
|
"info") color="\033[38;5;79m" ;;
|
||||||
|
"success") color="\033[1;32m" ;;
|
||||||
|
"error") color="\033[1;31m" ;;
|
||||||
|
*) color="\033[1;34m" ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
echo -e "${color}${timestamp} - ${message}${endcolor}"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Error handler function
|
||||||
|
handle_error() {
|
||||||
|
local exit_code=$1
|
||||||
|
local error_message="$2"
|
||||||
|
log "Error: $error_message (Exit Code: $exit_code)" "error"
|
||||||
|
exit $exit_code
|
||||||
|
}
|
||||||
|
|
||||||
|
# Function to check for command availability
|
||||||
|
command_exists() {
|
||||||
|
command -v "$1" &> /dev/null
|
||||||
|
}
|
||||||
|
|
||||||
|
check_os() {
|
||||||
|
if ! [ -f "/etc/debian_version" ]; then
|
||||||
|
echo "Error: This script is only supported on Debian-based systems."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Function to Install the script pre-requisites
|
||||||
|
install_pre_reqs() {
|
||||||
|
log "Installing pre-requisites" "info"
|
||||||
|
|
||||||
|
# Run 'apt update'
|
||||||
|
if ! apt update -y; then
|
||||||
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Run 'apt install'
|
||||||
|
if ! apt install -y apt-transport-https ca-certificates curl gnupg; then
|
||||||
|
handle_error "$?" "Failed to install packages"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! mkdir -p /usr/share/keyrings; then
|
||||||
|
handle_error "$?" "Makes sure the path /usr/share/keyrings exist or run ' mkdir -p /usr/share/keyrings' with sudo"
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -f /usr/share/keyrings/nodesource.gpg || true
|
||||||
|
rm -f /etc/apt/sources.list.d/nodesource.list || true
|
||||||
|
|
||||||
|
# Run 'curl' and 'gpg' to download and import the NodeSource signing key
|
||||||
|
if ! curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /usr/share/keyrings/nodesource.gpg; then
|
||||||
|
handle_error "$?" "Failed to download and import the NodeSource signing key"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Explicitly set the permissions to ensure the file is readable by all
|
||||||
|
if ! chmod 644 /usr/share/keyrings/nodesource.gpg; then
|
||||||
|
handle_error "$?" "Failed to set correct permissions on /usr/share/keyrings/nodesource.gpg"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Function to configure the Repo
|
||||||
|
configure_repo() {
|
||||||
|
local node_version=$1
|
||||||
|
|
||||||
|
arch=$(dpkg --print-architecture)
|
||||||
|
if [ "$arch" != "amd64" ] && [ "$arch" != "arm64" ]; then
|
||||||
|
handle_error "1" "Unsupported architecture: $arch. Only amd64, arm64 are supported. Contact Nodesource for an extended support version https://nodesource.com/pages/contact-us.html."
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "deb [arch=$arch signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$node_version nodistro main" | tee /etc/apt/sources.list.d/nodesource.list > /dev/null
|
||||||
|
|
||||||
|
# N|solid Config
|
||||||
|
echo "Package: nsolid" | tee /etc/apt/preferences.d/nsolid > /dev/null
|
||||||
|
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nsolid > /dev/null
|
||||||
|
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nsolid > /dev/null
|
||||||
|
|
||||||
|
# Nodejs Config
|
||||||
|
echo "Package: nodejs" | tee /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
|
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
|
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
|
|
||||||
|
# Run 'apt update'
|
||||||
|
if ! apt update -y; then
|
||||||
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
|
else
|
||||||
|
log "Repository configured successfully."
|
||||||
|
log "To install Node.js, run: apt install nodejs -y" "info"
|
||||||
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
|
log "To install N|solid Runtime, run: apt install nsolid -y \n" "success"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Define Node.js version
|
||||||
|
NODE_VERSION="25.x"
|
||||||
|
|
||||||
|
# Check OS
|
||||||
|
check_os
|
||||||
|
|
||||||
|
# Main execution
|
||||||
|
install_pre_reqs || handle_error $? "Failed installing pre-requisites"
|
||||||
|
configure_repo "$NODE_VERSION" || handle_error $? "Failed configuring repository"
|
||||||
+13
-13
@@ -42,13 +42,13 @@ check_os() {
|
|||||||
install_pre_reqs() {
|
install_pre_reqs() {
|
||||||
log "Installing pre-requisites" "info"
|
log "Installing pre-requisites" "info"
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Run 'apt-get install'
|
# Run 'apt install'
|
||||||
if ! apt-get install -y apt-transport-https ca-certificates curl gnupg; then
|
if ! apt install -y apt-transport-https ca-certificates curl gnupg; then
|
||||||
handle_error "$?" "Failed to install packages"
|
handle_error "$?" "Failed to install packages"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -75,8 +75,8 @@ configure_repo() {
|
|||||||
local node_version=$1
|
local node_version=$1
|
||||||
|
|
||||||
arch=$(dpkg --print-architecture)
|
arch=$(dpkg --print-architecture)
|
||||||
if [ "$arch" != "amd64" ] && [ "$arch" != "arm64" ] && [ "$arch" != "armhf" ]; then
|
if [ "$arch" != "amd64" ] && [ "$arch" != "arm64" ]; then
|
||||||
handle_error "1" "Unsupported architecture: $arch. Only amd64, arm64, and armhf are supported."
|
handle_error "1" "Unsupported architecture: $arch. Only amd64, arm64 are supported. Contact Nodesource for an extended support version https://nodesource.com/pages/contact-us.html."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "deb [arch=$arch signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$node_version nodistro main" | tee /etc/apt/sources.list.d/nodesource.list > /dev/null
|
echo "deb [arch=$arch signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$node_version nodistro main" | tee /etc/apt/sources.list.d/nodesource.list > /dev/null
|
||||||
@@ -91,19 +91,19 @@ configure_repo() {
|
|||||||
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
else
|
else
|
||||||
log "Repository configured successfully."
|
log "Repository configured successfully."
|
||||||
log "To install Node.js, run: apt-get install nodejs -y" "info"
|
log "To install Node.js, run: apt install nodejs -y" "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
log "To install N|solid Runtime, run: apt-get install nsolid -y \n" "success"
|
log "To install N|solid Runtime, run: apt install nsolid -y \n" "success"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# Define Node.js version
|
# Define Node.js version
|
||||||
NODE_VERSION="24.x"
|
NODE_VERSION="25.x"
|
||||||
|
|
||||||
# Check OS
|
# Check OS
|
||||||
check_os
|
check_os
|
||||||
|
|||||||
+13
-13
@@ -42,13 +42,13 @@ check_os() {
|
|||||||
install_pre_reqs() {
|
install_pre_reqs() {
|
||||||
log "Installing pre-requisites" "info"
|
log "Installing pre-requisites" "info"
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Run 'apt-get install'
|
# Run 'apt install'
|
||||||
if ! apt-get install -y apt-transport-https ca-certificates curl gnupg; then
|
if ! apt install -y apt-transport-https ca-certificates curl gnupg; then
|
||||||
handle_error "$?" "Failed to install packages"
|
handle_error "$?" "Failed to install packages"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -75,8 +75,8 @@ configure_repo() {
|
|||||||
local node_version=$1
|
local node_version=$1
|
||||||
|
|
||||||
arch=$(dpkg --print-architecture)
|
arch=$(dpkg --print-architecture)
|
||||||
if [ "$arch" != "amd64" ] && [ "$arch" != "arm64" ] && [ "$arch" != "armhf" ]; then
|
if [ "$arch" != "amd64" ] && [ "$arch" != "arm64" ]; then
|
||||||
handle_error "1" "Unsupported architecture: $arch. Only amd64, arm64, and armhf are supported."
|
handle_error "1" "Unsupported architecture: $arch. Only amd64, arm64 are supported. Contact Nodesource for an extended support version https://nodesource.com/pages/contact-us.html."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "deb [arch=$arch signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$node_version nodistro main" | tee /etc/apt/sources.list.d/nodesource.list > /dev/null
|
echo "deb [arch=$arch signed-by=/usr/share/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$node_version nodistro main" | tee /etc/apt/sources.list.d/nodesource.list > /dev/null
|
||||||
@@ -91,19 +91,19 @@ configure_repo() {
|
|||||||
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin: origin deb.nodesource.com" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
echo "Pin-Priority: 600" | tee -a /etc/apt/preferences.d/nodejs > /dev/null
|
||||||
|
|
||||||
# Run 'apt-get update'
|
# Run 'apt update'
|
||||||
if ! apt-get update -y; then
|
if ! apt update -y; then
|
||||||
handle_error "$?" "Failed to run 'apt-get update'"
|
handle_error "$?" "Failed to run 'apt update'"
|
||||||
else
|
else
|
||||||
log "Repository configured successfully."
|
log "Repository configured successfully."
|
||||||
log "To install Node.js, run: apt-get install nodejs -y" "info"
|
log "To install Node.js, run: apt install nodejs -y" "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
log "To install N|solid Runtime, run: apt-get install nsolid -y \n" "success"
|
log "To install N|solid Runtime, run: apt install nsolid -y \n" "success"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
# Define Node.js version
|
# Define Node.js version
|
||||||
NODE_VERSION="22.x"
|
NODE_VERSION="24.x"
|
||||||
|
|
||||||
# Check OS
|
# Check OS
|
||||||
check_os
|
check_os
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ module_hotfixes=1"
|
|||||||
echo "$NODEJS_REPO_CONTENT" | tee /etc/yum.repos.d/nodesource-nodejs.repo > /dev/null
|
echo "$NODEJS_REPO_CONTENT" | tee /etc/yum.repos.d/nodesource-nodejs.repo > /dev/null
|
||||||
|
|
||||||
# Check if Node.js version is an LTS version
|
# Check if Node.js version is an LTS version
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
# Repository content for N|Solid
|
# Repository content for N|Solid
|
||||||
NSOLID_REPO_CONTENT="[nodesource-nsolid]
|
NSOLID_REPO_CONTENT="[nodesource-nsolid]
|
||||||
name=N|Solid Packages for Linux RPM based distros - $SYS_ARCH
|
name=N|Solid Packages for Linux RPM based distros - $SYS_ARCH
|
||||||
@@ -88,7 +88,7 @@ if command_exists dnf; then
|
|||||||
dnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
dnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
# Update N|Solid repository if it's LTS
|
# Update N|Solid repository if it's LTS
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
dnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
dnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
log "Repository is configured and updated." "info"
|
log "Repository is configured and updated." "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
@@ -104,7 +104,7 @@ elif command_exists yum; then
|
|||||||
yum makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
yum makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
# Update N|Solid repository if it's LTS
|
# Update N|Solid repository if it's LTS
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
yum makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
yum makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
log "Repository is configured and updated." "info"
|
log "Repository is configured and updated." "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
@@ -119,7 +119,7 @@ elif command_exists microdnf; then
|
|||||||
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
# Update N|Solid repository if it's LTS
|
# Update N|Solid repository if it's LTS
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
log "Repository is configured and updated. Run 'microdnf install nsolid -y' to complete the installation." "info"
|
log "Repository is configured and updated. Run 'microdnf install nsolid -y' to complete the installation." "info"
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ if [ ! -f "$base_script" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# List of versions
|
# List of versions
|
||||||
versions=("18" "20" "22" "23" "24")
|
versions=("23" "24" "25")
|
||||||
|
|
||||||
# Iterate over the versions and create scripts
|
# Iterate over the versions and create scripts
|
||||||
for version in "${versions[@]}"; do
|
for version in "${versions[@]}"; do
|
||||||
@@ -33,8 +33,8 @@ for version in "${versions[@]}"; do
|
|||||||
done
|
done
|
||||||
|
|
||||||
# Define LTS and current Node.js versions
|
# Define LTS and current Node.js versions
|
||||||
lts_version="22"
|
lts_version="24"
|
||||||
current_version="24"
|
current_version="25"
|
||||||
|
|
||||||
# Create setup_lts and setup_current scripts
|
# Create setup_lts and setup_current scripts
|
||||||
create_script "$lts_version" "lts"
|
create_script "$lts_version" "lts"
|
||||||
|
|||||||
@@ -1,5 +1,31 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Send deprecation Warning
|
||||||
|
node_deprecation_warning() {
|
||||||
|
log "
|
||||||
|
===============================================================================
|
||||||
|
DEPRECATION WARNING
|
||||||
|
===============================================================================
|
||||||
|
Node.js 18.x is no longer actively supported!
|
||||||
|
You will not receive security or critical stability updates for this version.
|
||||||
|
|
||||||
|
You should migrate to a supported version of Node.js as soon as possible.
|
||||||
|
|
||||||
|
Please see https://nodesource.com/products/distributions for details about which
|
||||||
|
version may be appropriate for you.
|
||||||
|
|
||||||
|
The NodeSource Node.js distributions site contains
|
||||||
|
information both about supported versions of Node.js and N|Solid supported Linux
|
||||||
|
distributions. To learn more about usage, see:
|
||||||
|
https://nodesource.com/products/distributions
|
||||||
|
|
||||||
|
===============================================================================
|
||||||
|
|
||||||
|
Continuing in 10 seconds ...
|
||||||
|
" "error"
|
||||||
|
sleep 10
|
||||||
|
}
|
||||||
|
|
||||||
# Logger Function
|
# Logger Function
|
||||||
log() {
|
log() {
|
||||||
local message="$1"
|
local message="$1"
|
||||||
@@ -36,6 +62,9 @@ if ! [ -f /etc/redhat-release ] && ! grep -q "Amazon Linux" /etc/system-release
|
|||||||
handle_error 1 "This script is intended for RPM-based systems. Please run it on an RPM-based system."
|
handle_error 1 "This script is intended for RPM-based systems. Please run it on an RPM-based system."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Send deprecation Warning
|
||||||
|
node_deprecation_warning
|
||||||
|
|
||||||
log "Cleaning up old repositories..." "info"
|
log "Cleaning up old repositories..." "info"
|
||||||
rm -f /etc/yum.repos.d/nodesource*.repo
|
rm -f /etc/yum.repos.d/nodesource*.repo
|
||||||
log "Old repositories removed" "info"
|
log "Old repositories removed" "info"
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ module_hotfixes=1"
|
|||||||
echo "$NODEJS_REPO_CONTENT" | tee /etc/yum.repos.d/nodesource-nodejs.repo > /dev/null
|
echo "$NODEJS_REPO_CONTENT" | tee /etc/yum.repos.d/nodesource-nodejs.repo > /dev/null
|
||||||
|
|
||||||
# Check if Node.js version is an LTS version
|
# Check if Node.js version is an LTS version
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
# Repository content for N|Solid
|
# Repository content for N|Solid
|
||||||
NSOLID_REPO_CONTENT="[nodesource-nsolid]
|
NSOLID_REPO_CONTENT="[nodesource-nsolid]
|
||||||
name=N|Solid Packages for Linux RPM based distros - $SYS_ARCH
|
name=N|Solid Packages for Linux RPM based distros - $SYS_ARCH
|
||||||
@@ -88,7 +88,7 @@ if command_exists dnf; then
|
|||||||
dnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
dnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
# Update N|Solid repository if it's LTS
|
# Update N|Solid repository if it's LTS
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
dnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
dnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
log "Repository is configured and updated." "info"
|
log "Repository is configured and updated." "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
@@ -104,7 +104,7 @@ elif command_exists yum; then
|
|||||||
yum makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
yum makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
# Update N|Solid repository if it's LTS
|
# Update N|Solid repository if it's LTS
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
yum makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
yum makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
log "Repository is configured and updated." "info"
|
log "Repository is configured and updated." "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
@@ -119,7 +119,7 @@ elif command_exists microdnf; then
|
|||||||
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
# Update N|Solid repository if it's LTS
|
# Update N|Solid repository if it's LTS
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
log "Repository is configured and updated. Run 'microdnf install nsolid -y' to complete the installation." "info"
|
log "Repository is configured and updated. Run 'microdnf install nsolid -y' to complete the installation." "info"
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ module_hotfixes=1"
|
|||||||
echo "$NODEJS_REPO_CONTENT" | tee /etc/yum.repos.d/nodesource-nodejs.repo > /dev/null
|
echo "$NODEJS_REPO_CONTENT" | tee /etc/yum.repos.d/nodesource-nodejs.repo > /dev/null
|
||||||
|
|
||||||
# Check if Node.js version is an LTS version
|
# Check if Node.js version is an LTS version
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
# Repository content for N|Solid
|
# Repository content for N|Solid
|
||||||
NSOLID_REPO_CONTENT="[nodesource-nsolid]
|
NSOLID_REPO_CONTENT="[nodesource-nsolid]
|
||||||
name=N|Solid Packages for Linux RPM based distros - $SYS_ARCH
|
name=N|Solid Packages for Linux RPM based distros - $SYS_ARCH
|
||||||
@@ -88,7 +88,7 @@ if command_exists dnf; then
|
|||||||
dnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
dnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
# Update N|Solid repository if it's LTS
|
# Update N|Solid repository if it's LTS
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
dnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
dnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
log "Repository is configured and updated." "info"
|
log "Repository is configured and updated." "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
@@ -104,7 +104,7 @@ elif command_exists yum; then
|
|||||||
yum makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
yum makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
# Update N|Solid repository if it's LTS
|
# Update N|Solid repository if it's LTS
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
yum makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
yum makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
log "Repository is configured and updated." "info"
|
log "Repository is configured and updated." "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
@@ -119,7 +119,7 @@ elif command_exists microdnf; then
|
|||||||
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
# Update N|Solid repository if it's LTS
|
# Update N|Solid repository if it's LTS
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
log "Repository is configured and updated. Run 'microdnf install nsolid -y' to complete the installation." "info"
|
log "Repository is configured and updated. Run 'microdnf install nsolid -y' to complete the installation." "info"
|
||||||
else
|
else
|
||||||
|
|||||||
Executable
+132
@@ -0,0 +1,132 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Logger Function
|
||||||
|
log() {
|
||||||
|
local message="$1"
|
||||||
|
local type="$2"
|
||||||
|
local timestamp=$(date '+%Y-%m-%d %H:%M:%S')
|
||||||
|
local color
|
||||||
|
local endcolor="\033[0m"
|
||||||
|
|
||||||
|
case "$type" in
|
||||||
|
"info") color="\033[38;5;79m" ;;
|
||||||
|
"success") color="\033[1;32m" ;;
|
||||||
|
"error") color="\033[1;31m" ;;
|
||||||
|
*) color="\033[1;34m" ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
echo -e "${color}${timestamp} - ${message}${endcolor}"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Error handler function
|
||||||
|
handle_error() {
|
||||||
|
local exit_code=$1
|
||||||
|
local error_message="$2"
|
||||||
|
log "Error: $error_message (Exit Code: $exit_code)" "error"
|
||||||
|
exit $exit_code
|
||||||
|
}
|
||||||
|
|
||||||
|
# Function to check for command availability
|
||||||
|
command_exists() {
|
||||||
|
command -v "$1" &> /dev/null
|
||||||
|
}
|
||||||
|
|
||||||
|
# Check if we are on an RPM-based system
|
||||||
|
if ! [ -f /etc/redhat-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then
|
||||||
|
handle_error 1 "This script is intended for RPM-based systems. Please run it on an RPM-based system."
|
||||||
|
fi
|
||||||
|
|
||||||
|
log "Cleaning up old repositories..." "info"
|
||||||
|
rm -f /etc/yum.repos.d/nodesource*.repo
|
||||||
|
log "Old repositories removed" "info"
|
||||||
|
|
||||||
|
# Define Node.js version
|
||||||
|
NODE_VERSION="25.x"
|
||||||
|
|
||||||
|
# Get system architecture
|
||||||
|
SYS_ARCH=$(uname -m)
|
||||||
|
|
||||||
|
# Validate system architecture
|
||||||
|
case "$SYS_ARCH" in
|
||||||
|
aarch64|x86_64) log "Supported architecture: $SYS_ARCH" "info" ;;
|
||||||
|
*) handle_error 1 "Unsupported architecture: $SYS_ARCH. Only aarch64 and x86_64 are supported." ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
# Repository content for Node.js
|
||||||
|
NODEJS_REPO_CONTENT="[nodesource-nodejs]
|
||||||
|
name=Node.js Packages for Linux RPM based distros - $SYS_ARCH
|
||||||
|
baseurl=https://rpm.nodesource.com/pub_${NODE_VERSION}/nodistro/nodejs/$SYS_ARCH
|
||||||
|
priority=9
|
||||||
|
enabled=1
|
||||||
|
gpgcheck=1
|
||||||
|
gpgkey=https://rpm.nodesource.com/gpgkey/ns-operations-public.key
|
||||||
|
module_hotfixes=1"
|
||||||
|
|
||||||
|
# Write Node.js repository content
|
||||||
|
echo "$NODEJS_REPO_CONTENT" | tee /etc/yum.repos.d/nodesource-nodejs.repo > /dev/null
|
||||||
|
|
||||||
|
# Check if Node.js version is an LTS version
|
||||||
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
|
# Repository content for N|Solid
|
||||||
|
NSOLID_REPO_CONTENT="[nodesource-nsolid]
|
||||||
|
name=N|Solid Packages for Linux RPM based distros - $SYS_ARCH
|
||||||
|
baseurl=https://rpm.nodesource.com/pub_${NODE_VERSION}/nodistro/nsolid/$SYS_ARCH
|
||||||
|
priority=9
|
||||||
|
enabled=1
|
||||||
|
gpgcheck=1
|
||||||
|
gpgkey=https://rpm.nodesource.com/gpgkey/ns-operations-public.key
|
||||||
|
module_hotfixes=1"
|
||||||
|
|
||||||
|
# Write N|Solid repository content
|
||||||
|
echo "$NSOLID_REPO_CONTENT" | tee /etc/yum.repos.d/nodesource-nsolid.repo > /dev/null
|
||||||
|
log "Added N|Solid repository for LTS version: $NODE_VERSION" "info"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check for availability of dnf, yum or microdnf
|
||||||
|
if command_exists dnf; then
|
||||||
|
log "dnf available, updating..." "info"
|
||||||
|
dnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
|
# Update N|Solid repository if it's LTS
|
||||||
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
|
dnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
|
log "Repository is configured and updated." "info"
|
||||||
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
|
log "To install N|solid Runtime, run: dnf install nsolid -y" "success"
|
||||||
|
else
|
||||||
|
log "Repository is configured and updated." "info"
|
||||||
|
fi
|
||||||
|
|
||||||
|
log "Run 'dnf install nodejs -y' to complete the installation." "info"
|
||||||
|
exit 0
|
||||||
|
elif command_exists yum; then
|
||||||
|
log "yum available, updating..." "info"
|
||||||
|
yum makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
|
# Update N|Solid repository if it's LTS
|
||||||
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
|
yum makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
|
log "Repository is configured and updated." "info"
|
||||||
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
|
log "Run 'yum install nsolid -y' to complete the installation." "success"
|
||||||
|
else
|
||||||
|
log "Repository is configured and updated." "info"
|
||||||
|
fi
|
||||||
|
|
||||||
|
log "Run 'yum install nodejs -y' to complete the installation." "info"
|
||||||
|
elif command_exists microdnf; then
|
||||||
|
log "microdnf available, updating..." "info"
|
||||||
|
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
|
# Update N|Solid repository if it's LTS
|
||||||
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
|
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
|
log "Repository is configured and updated. Run 'microdnf install nsolid -y' to complete the installation." "info"
|
||||||
|
else
|
||||||
|
log "Repository is configured and updated." "info"
|
||||||
|
fi
|
||||||
|
|
||||||
|
log "Run 'microdnf install nodejs -y' to complete the installation." "info"
|
||||||
|
else
|
||||||
|
handle_error 1 "Neither yum, dnf nor microdnf package manager was found. Please update your system using your package manager."
|
||||||
|
fi
|
||||||
@@ -41,7 +41,7 @@ rm -f /etc/yum.repos.d/nodesource*.repo
|
|||||||
log "Old repositories removed" "info"
|
log "Old repositories removed" "info"
|
||||||
|
|
||||||
# Define Node.js version
|
# Define Node.js version
|
||||||
NODE_VERSION="24.x"
|
NODE_VERSION="25.x"
|
||||||
|
|
||||||
# Get system architecture
|
# Get system architecture
|
||||||
SYS_ARCH=$(uname -m)
|
SYS_ARCH=$(uname -m)
|
||||||
@@ -66,7 +66,7 @@ module_hotfixes=1"
|
|||||||
echo "$NODEJS_REPO_CONTENT" | tee /etc/yum.repos.d/nodesource-nodejs.repo > /dev/null
|
echo "$NODEJS_REPO_CONTENT" | tee /etc/yum.repos.d/nodesource-nodejs.repo > /dev/null
|
||||||
|
|
||||||
# Check if Node.js version is an LTS version
|
# Check if Node.js version is an LTS version
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
# Repository content for N|Solid
|
# Repository content for N|Solid
|
||||||
NSOLID_REPO_CONTENT="[nodesource-nsolid]
|
NSOLID_REPO_CONTENT="[nodesource-nsolid]
|
||||||
name=N|Solid Packages for Linux RPM based distros - $SYS_ARCH
|
name=N|Solid Packages for Linux RPM based distros - $SYS_ARCH
|
||||||
@@ -88,7 +88,7 @@ if command_exists dnf; then
|
|||||||
dnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
dnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
# Update N|Solid repository if it's LTS
|
# Update N|Solid repository if it's LTS
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
dnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
dnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
log "Repository is configured and updated." "info"
|
log "Repository is configured and updated." "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
@@ -104,7 +104,7 @@ elif command_exists yum; then
|
|||||||
yum makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
yum makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
# Update N|Solid repository if it's LTS
|
# Update N|Solid repository if it's LTS
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
yum makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
yum makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
log "Repository is configured and updated." "info"
|
log "Repository is configured and updated." "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
@@ -119,7 +119,7 @@ elif command_exists microdnf; then
|
|||||||
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
# Update N|Solid repository if it's LTS
|
# Update N|Solid repository if it's LTS
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
log "Repository is configured and updated. Run 'microdnf install nsolid -y' to complete the installation." "info"
|
log "Repository is configured and updated. Run 'microdnf install nsolid -y' to complete the installation." "info"
|
||||||
else
|
else
|
||||||
|
|||||||
@@ -41,7 +41,7 @@ rm -f /etc/yum.repos.d/nodesource*.repo
|
|||||||
log "Old repositories removed" "info"
|
log "Old repositories removed" "info"
|
||||||
|
|
||||||
# Define Node.js version
|
# Define Node.js version
|
||||||
NODE_VERSION="22.x"
|
NODE_VERSION="24.x"
|
||||||
|
|
||||||
# Get system architecture
|
# Get system architecture
|
||||||
SYS_ARCH=$(uname -m)
|
SYS_ARCH=$(uname -m)
|
||||||
@@ -66,7 +66,7 @@ module_hotfixes=1"
|
|||||||
echo "$NODEJS_REPO_CONTENT" | tee /etc/yum.repos.d/nodesource-nodejs.repo > /dev/null
|
echo "$NODEJS_REPO_CONTENT" | tee /etc/yum.repos.d/nodesource-nodejs.repo > /dev/null
|
||||||
|
|
||||||
# Check if Node.js version is an LTS version
|
# Check if Node.js version is an LTS version
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
# Repository content for N|Solid
|
# Repository content for N|Solid
|
||||||
NSOLID_REPO_CONTENT="[nodesource-nsolid]
|
NSOLID_REPO_CONTENT="[nodesource-nsolid]
|
||||||
name=N|Solid Packages for Linux RPM based distros - $SYS_ARCH
|
name=N|Solid Packages for Linux RPM based distros - $SYS_ARCH
|
||||||
@@ -88,7 +88,7 @@ if command_exists dnf; then
|
|||||||
dnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
dnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
# Update N|Solid repository if it's LTS
|
# Update N|Solid repository if it's LTS
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
dnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
dnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
log "Repository is configured and updated." "info"
|
log "Repository is configured and updated." "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
@@ -104,7 +104,7 @@ elif command_exists yum; then
|
|||||||
yum makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
yum makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
# Update N|Solid repository if it's LTS
|
# Update N|Solid repository if it's LTS
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
yum makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
yum makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
log "Repository is configured and updated." "info"
|
log "Repository is configured and updated." "info"
|
||||||
log "You can use N|solid Runtime as a node.js alternative" "info"
|
log "You can use N|solid Runtime as a node.js alternative" "info"
|
||||||
@@ -119,7 +119,7 @@ elif command_exists microdnf; then
|
|||||||
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nodejs"
|
||||||
|
|
||||||
# Update N|Solid repository if it's LTS
|
# Update N|Solid repository if it's LTS
|
||||||
if [[ "$NODE_VERSION" == "18.x" ]] || [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]]; then
|
if [[ "$NODE_VERSION" == "20.x" ]] || [[ "$NODE_VERSION" == "22.x" ]] || [[ "$NODE_VERSION" == "24.x" ]]; then
|
||||||
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
microdnf makecache --disablerepo="*" --enablerepo="nodesource-nsolid"
|
||||||
log "Repository is configured and updated. Run 'microdnf install nsolid -y' to complete the installation." "info"
|
log "Repository is configured and updated. Run 'microdnf install nsolid -y' to complete the installation." "info"
|
||||||
else
|
else
|
||||||
|
|||||||
Reference in New Issue
Block a user