How to install proximamp on Linux, Windows and in Docker
Install proximamp to open ports of a computer or a server from the terminal, without the ProximaClient app. It runs on Linux x86_64 and arm64 with glibc 2.28 or newer (Debian 10, Ubuntu 20.04, RHEL 8 and newer, a Raspberry Pi 3 or newer with a 64-bit system) and on 64-bit Windows.
Install
- Linux
- Debian, Ubuntu
- Fedora, RHEL
- Windows
- npm
- Docker
curl -fsSL https://s3.proximamp.com/cli/install.sh | sh
The script downloads the latest version for your processor and puts the program in /usr/local/bin, asking for your sudo password if needed. Without sudo the program goes to ~/.local/bin. PROXIMAMP_INSTALL_DIR sets another folder, and PROXIMAMP_VERSION a given version instead of the latest:
curl -fsSL https://s3.proximamp.com/cli/install.sh | PROXIMAMP_VERSION=1.0.0 sh
If you have no sudo rights, press Ctrl+C and put the program in your own folder:
curl -fsSL https://s3.proximamp.com/cli/install.sh | PROXIMAMP_INSTALL_DIR=~/.local/bin sh
If the script says the folder is not on PATH, add ~/.local/bin in bash and open a new terminal window:
echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
On RHEL, AlmaLinux, Rocky Linux and Oracle Linux, sudo doesn't see programs in /usr/local/bin: there, install the program from dnf or type sudo env "PATH=$PATH" proximamp instead of sudo proximamp, for example:
sudo env "PATH=$PATH" proximamp update
sudo apt update && sudo apt install -y curl ca-certificates
curl -fsSL https://s3.proximamp.com/cli/proximamp.gpg | sudo tee /usr/share/keyrings/proximamp.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/proximamp.gpg] https://s3.proximamp.com/cli/apt stable main" | sudo tee /etc/apt/sources.list.d/proximamp.list
sudo apt update && sudo apt install proximamp
New versions arrive with the rest of the system's packages.
sudo curl -fsSL -o /etc/yum.repos.d/proximamp.repo https://s3.proximamp.com/cli/rpm/proximamp.repo
sudo dnf install proximamp
When asked whether to import the ProximaMP key, answer y. The same works on AlmaLinux, Rocky Linux and Oracle Linux 8 and newer. New versions arrive with the rest of the system's packages.
In PowerShell:
$ProgressPreference = 'SilentlyContinue'
$dir = "$env:LOCALAPPDATA\Programs\proximamp"
New-Item -ItemType Directory -Force $dir | Out-Null
$v = (Invoke-RestMethod https://s3.proximamp.com/cli/latest.txt).Trim()
Invoke-WebRequest "https://s3.proximamp.com/cli/$v/proximamp.exe" -OutFile "$dir\proximamp.exe"
[Environment]::SetEnvironmentVariable('Path', [Environment]::GetEnvironmentVariable('Path', 'User') + ";$dir", 'User')
These commands download the latest version into your own programs folder and add it to your PATH. Open a new terminal window: the proximamp command works there.
If you have Node.js 18 or newer (in Windows PowerShell with scripts disabled, which is the default, use npm.cmd, npx.cmd and proximamp.cmd instead of npm, npx and proximamp):
npm i -g proximamp
If npm i -g answers EACCES on Linux, install it with sudo:
sudo npm i -g proximamp
Without installing, type npx -y proximamp@latest in place of proximamp on every page except the service: install that from a program installed with npm i -g. With -y npx asks nothing, and with @latest it takes the new version every time; npm may write lines of its own to standard error. For example, signing in:
npx -y proximamp@latest login
There is nothing to install: Docker pulls the proximamp/proximamp image for Linux x86_64 and arm64 from Docker Hub by itself. Check that the image runs:
docker run --rm proximamp/proximamp version
The command pulls the image and prints the name and the version number, for example proximamp 1.0.1.
Check
Check the program (for the Docker image, use the command in its tab):
proximamp version
npx -y proximamp@latest version # without installing
The command prints the name and the version number, for example proximamp 1.0.1. If the command is not found, open a new terminal window or run the program by its full path: after the script, the one it named; on Windows, from the %LOCALAPPDATA%\Programs\proximamp folder:
~/.local/bin/proximamp version # the script without administrator rights
& "$env:LOCALAPPDATA\Programs\proximamp\proximamp.exe" version # Windows
Next: the first tunnel, and in Docker, a tunnel next to a server.
Remove
To remove a Docker container, follow the steps on "How to open a server in Docker with proximamp". To remove the program from the computer:
-
If you installed the service, remove it first (on Windows without
sudo, in an administrator terminal):sudo proximamp service uninstallIt runs on its own copy of the program and won't stop without this step.
-
Sign out of the account:
proximamp logoutnpx -y proximamp@latest logout # without installing -
Remove the program the way you installed it:
sudo apt remove proximamp # aptsudo dnf remove proximamp # dnfnpm uninstall -g proximamp # npm (with sudo if installed with sudo)sudo rm /usr/local/bin/proximamp # the scriptrm ~/.local/bin/proximamp # the script without administrator rights# npx: step 2 is enoughIf you gave the script your own folder (
PROXIMAMP_INSTALL_DIR), deleteproximampfrom it.On Windows, stop the
proximampcommands, including ones started in a hidden window, then delete the program's folder and take it out of yourPATH, in PowerShell:$dir = "$env:LOCALAPPDATA\Programs\proximamp"Get-Process proximamp -ErrorAction SilentlyContinue | Where-Object { $_.Path -eq "$dir\proximamp.exe" } | Stop-Process -PassThru | Wait-ProcessRemove-Item -Recurse -Force $dir$p = ([Environment]::GetEnvironmentVariable('Path', 'User') -split ';') -ne $dir[Environment]::SetEnvironmentVariable('Path', ($p -join ';'), 'User')
Check:
proximamp version
The terminal says the command is not found.