Collection of setup and installation scripts for various development tools and services on Linux systems (Fedora, Ubuntu/Debian, and derivatives).
A complete OCR solution in two scripts — installation wizard + graphical frontend. See the dedicated OCR README for full documentation.
# 1. Install everything
sudo ./OCR/setup_ocr.sh
# 2. Run the graphical frontend
./OCR/ocr_gui.shInstall or upgrade Node.js from the official binaries on Linux systems. Supports installing specific versions or the latest in a major version series, automatically detects the system architecture, and handles version conflicts.
-
Version Selection:: Install a specific Node.js version (e.g.,
v18.17.0) or the latest in a major series (e.g.,20for the newest 20.x version). -
Architecture Detection:: Automatically detects x86_64, ARM64, ARMv7, etc., and downloads the appropriate binary.
-
Conflict Resolution:: Removes existing Node.js installations if they differ from the requested version.
-
Symlinks:: Creates symbolic links for
node,npm,npx, andnodejscommands in/usr/local/bin. -
Verification:: Tests all installed binaries after installation.
-
Logging:: Logs all operations to
/var/log/node_install.log.
sudo ./setup_nodeJs.sh [version]version-
Optional. Can be:
-
A full version string (e.g.,
v18.17.0) -
A major version number (e.g.,
20) to install the latest in that series -
If omitted, installs the latest LTS version
-
The upgrade script uses the same version selection rules as the installer, but it removes any existing node-* directories from /opt before installing the requested version.
sudo ./upgrade_nodeJs.sh [version]The upgrade log is written to /var/log/node_upgrade.log.
-
Purge System Packages – Removes any system-installed
nodejsandnpmpackages to avoid conflicts. -
Version Resolution – Determines the exact version to install based on input.
-
Architecture Check – Detects the system architecture and selects the correct binary.
-
Download – Fetches the Node.js tarball from
nodejs.org. -
Extraction – Extracts to
/opt/node-{version}-linux-{arch}/. -
Cleanup – Removes the downloaded tarball.
-
Symlinks – Creates symlinks in
/usr/local/binfor easy access. -
Testing – Verifies all commands work and logs versions.
- Binaries
-
/opt/node-{version}-linux-{arch}/bin/ - Symlinks
-
/usr/local/bin/(points to the above) - Log File
-
/var/log/node_install.log
-
Ensure you’re running with
sudo. -
Check that
/var/log,/opt, and/usr/local/binare writable by root.
-
Verify internet connection.
-
Check if the requested version exists on nodejs.org/dist/.
-
For major versions, ensure there are releases in that series.
-
The script supports x86_64, ARM64, and ARMv7.
-
Unknown architectures fall back to x64 with a warning.
Installs the Fish shell and sets it as the default login shell.
sudo ./setup_fish.sh