Install Beskid
The stable channel changes only after maintainers promote a release. The unstable channel follows verified development delivery. Use an immutable cli-vX.Y.Z tag when a build must not move to a newer version.
Prerequisites
Section titled “Prerequisites”Confirm that your host is Linux AMD64, macOS ARM64, or Windows AMD64. Close terminals that use an older Beskid installation.
Actions
Section titled “Actions”-
Open Downloads.
-
Select your exact operating system and architecture.
-
Select the displayed release channel that fits the work. Stable is for routine work, and unstable is a pre-release build.
-
Use only an install command or package that the page displays. The direct installer puts the CLI at
~/.beskid/bin/beskidon Linux and macOS. It uses%USERPROFILE%\.beskid\bin\beskid.exeon Windows. -
On Linux or macOS, the POSIX installer only prints a
PATHinstruction. Add this line to the relevant shell profile. You can also run it in the current shell:Terminal window export PATH="$HOME/.beskid/bin:$PATH" -
The Windows installer adds
%USERPROFILE%\.beskid\binto the userPATH. Restart the terminal after the installer finishes. -
Reload the updated shell profile or open a new terminal on Linux and macOS.
-
Run the checks:
Terminal window beskid --versionbeskid --helpbeskid up host-target -
Match the language-server channel to the CLI channel:
CLI release LSP release cli-stablelsp-stablecli-unstablelsp-unstablecli-v0.4.0lsp-v0.4.0The matching tags identify a common source version only. They do not guarantee binary compatibility.
-
Install the matching language server. This example uses the stable channel:
beskid lsp install --release-tag lsp-stable- Replace the example version with the immutable tag that Downloads displays for a pinned direct installation:
curl -fsSL https://beskid-lang.org/install.sh | BESKID_RELEASE_TAG=cli-v0.4.0 bashOn Windows PowerShell, set $env:BESKID_RELEASE_TAG to the same CLI tag. Then run the displayed PowerShell installer. Install the matching LSP tag separately:
beskid lsp install --release-tag lsp-v0.4.0- Repeat the Downloads install command for the channel or immutable tag that you need. The corresponding LSP tag remains a separate installation.
flowchart TD
accTitle: Install decision
accDescr: Match the host and channel before you install and verify the CLI and language server.
A[Identify host] --> B{Artifact is listed?}
B -->|No| C[Stop and use a supported host]
B -->|Yes| D{Select release}
D -->|Routine use| E[Use stable]
D -->|Pre-release test| F[Use displayed unstable]
D -->|Reproducible use| G[Use immutable tag]
E --> H[Install and verify]
F --> H
G --> H
Diagram text
Section titled “Diagram text”- Match the host to an artifact that the Downloads page lists.
- Confirm whether Downloads shows stable or unstable. Use an immutable tag for reproducibility.
- Install the artifact, open a new terminal, and verify the CLI.
- Match
cli-stabletolsp-stableandcli-unstabletolsp-unstable. - Install the matching language server separately. Match immutable CLI and LSP tags by version. This identifies their common source version only. It does not guarantee binary compatibility.
Expected result
Section titled “Expected result”The CLI prints one version. Its help lists root commands such as analyze, format, run, test, and build. The host-target command prints the detected target triple. The matching LSP install command exits successfully.
Recovery
Section titled “Recovery”If a POSIX shell cannot find beskid, run the printed export command. Add it to the active shell profile for later terminals. On Windows, restart the terminal and confirm that the user PATH contains the Beskid directory.
If the host target does not match the artifact, remove that artifact and install the correct one. If an LSP download fails, keep the CLI installation. Retry with the LSP tag that corresponds to the selected CLI tag.
For a direct CLI uninstall on Linux or macOS, run rm -f ~/.beskid/bin/beskid. On Windows PowerShell, run Remove-Item "$env:USERPROFILE\.beskid\bin\beskid.exe". Use the operating-system package manager to remove a package installer.