Installation
Installers, package managers, and first-time setup.
There are several ways to install Portal. If you just want the tool working quickly, use one of the release installers. Build from source only if you are actively developing Portal or you need full control over the binary.
Recommended install paths
Use the automated installer script:
curl -fsSL https://portal.biuld.app/install.sh | shRun the PowerShell script:
powershell -ExecutionPolicy Bypass -c "irm https://portal.biuld.app/install.ps1 | iex"Run the Termux script:
curl -fsSL https://portal.biuld.app/install.sh | shInstall globally via npm:
npm install -g @hiverra/portal@0.12.0Build from source
Use this when you are working on the codebase itself:
git clone https://github.com/Spectra010s/portal.git
cd portal
cargo build --release -p hiverra-portalVerify the install
After installation, confirm the binary is available:
portal --versionIf that works, the next command you should care about is portal config setup.
First-time setup actually matters
Portal is usable without a giant onboarding flow, but it is not a zero-config tool. The setup command writes the defaults the rest of the CLI relies on.
What the code currently asks for:
- Your username
- Your default listening port
- Your download directory for received files
What the code currently does with those answers:
- It appends
@portalto your username if you did not type it. - It defaults to port
7878. - It defaults the download location to your home
Downloadsfolder. - It writes the result to
~/.portal/config.toml. - If
config.tomlalready exists, it asks before overwriting it.
Step-by-Step Walkthrough
Run the setup command to begin:
$ portal config setup
Welcome to Portal! Let's get you set up.1. Choose Username
Choose a unique username to identify yourself during transfers:
? What is your username? spectraPortal automatically appends @portal if you omit it, saving it as spectra@portal.
2. Choose Listening Port
Select the port for listening to incoming TCP connections (7878 is the default):
? Which port should Portal use? 7878Selected ports must be above 1024 to avoid root permission conflicts.
3. Choose Download Location
Specify where Portal should save incoming files:
? Where should Portal save downloaded files? /home/spectra/DownloadsLeaving this blank defaults to your user profile's Downloads folder.
What setup creates
After you finish answering the prompts, Portal automatically creates and writes your configuration to ~/.portal/config.toml.
A typical config file looks like this:
[user]
username = "spectra@portal"
[network]
default_port = 7878
[storage]
download_dir = "/home/spectra/Downloads"When not to rerun setup
If you only want to change one value, rerunning setup is heavier than necessary. Use the targeted config commands instead:
portal config set user.username spectra
portal config set network.default_port 9000
portal config set storage.download_dir /path/to/folderThat distinction matters because config setup is an onboarding flow, while config set is the maintenance path.