This guide covers all available package manager and binary installation methods for Bedrud - both the server and the desktop client.


Server Installation

apt Repository (Ubuntu / Debian)

The easiest way to install the Bedrud server on Debian-based systems is via the self-hosted apt repository hosted on GitHub Pages.

1. Add the repository and GPG key:

curl -fsSL https://bedrud-ir.github.io/bedrud/bedrud.gpg.key \
  | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/bedrud.gpg
 
echo "deb https://bedrud-ir.github.io/bedrud stable main" \
  | sudo tee /etc/apt/sources.list.d/bedrud.list

2. Install:

sudo apt update && sudo apt install bedrud

The package installs the binary to /usr/local/bin/bedrud and registers a systemd service. After installing, run the interactive installer:

sudo bedrud install

See the Installation Guide for all configuration options.


AUR (Arch Linux)

yay -S bedrud-bin

After installing, run:

sudo bedrud install

DNF / RPM Repository (Fedora / RHEL / openSUSE)

1. Add the repository:

sudo curl -fsSL https://bedrud-ir.github.io/bedrud/dnf/bedrud.gpg.key \
  -o /etc/pki/rpm-gpg/RPM-GPG-KEY-bedrud
 
sudo curl -fsSL https://bedrud-ir.github.io/bedrud/dnf/bedrud.repo \
  -o /etc/yum.repos.d/bedrud.repo

2. Install:

sudo dnf install bedrud

Direct .deb Download

Download the .deb package directly from the latest GitHub release:

wget https://github.com/bedrud-ir/bedrud/releases/latest/download/bedrud_amd64.deb
sudo dpkg -i bedrud_amd64.deb
sudo apt-get install -f   # resolve any missing dependencies
wget https://github.com/bedrud-ir/bedrud/releases/latest/download/bedrud_arm64.deb
sudo dpkg -i bedrud_arm64.deb
sudo apt-get install -f

Direct .rpm Download

Download the .rpm package from the latest GitHub release:

sudo dnf install https://github.com/bedrud-ir/bedrud/releases/latest/download/bedrud-*.x86_64.rpm
sudo dnf install https://github.com/bedrud-ir/bedrud/releases/latest/download/bedrud-*.aarch64.rpm

Manual Binary Download

Download the compressed tarball and extract it anywhere on your $PATH:

curl -L https://github.com/bedrud-ir/bedrud/releases/latest/download/bedrud_linux_amd64.tar.xz \
  | tar xJ
sudo mv bedrud /usr/local/bin/
curl -L https://github.com/bedrud-ir/bedrud/releases/latest/download/bedrud_linux_arm64.tar.xz \
  | tar xJ
sudo mv bedrud /usr/local/bin/

Docker

Pull the pre-built image from GitHub Container Registry:

docker pull ghcr.io/bedrud-ir/bedrud:latest
docker run -d \
  --name bedrud \
  -p 8090:8090 \
  -p 7880:7880 \
  -v bedrud-data:/var/lib/bedrud \
  ghcr.io/bedrud-ir/bedrud:latest

See the Docker Guide for full details including volume mounts and reverse proxy setup.


Desktop Client Installation

Linux

Add the apt repository first (see Server - apt Repository above), then:

sudo apt install bedrud-desktop

The package installs a .desktop launcher and registers the app in your application menu.

yay -S bedrud-desktop-bin

Add the DNF repository first (see Server - DNF Repository above), then:

sudo dnf install bedrud-desktop
sudo snap install bedrud-desktop

Snap is available on any Linux distribution that supports the Snap daemon (snapd).

Install from the Flatpak bundle:

flatpak install https://github.com/bedrud-ir/bedrud/releases/latest/download/bedrud-desktop-linux-x86_64.flatpak
flatpak run ir.bedrud.Desktop

The AppImage is self-contained and works on any Linux distribution without installation.

wget https://github.com/bedrud-ir/bedrud/releases/latest/download/bedrud-desktop-linux-x86_64.AppImage
chmod +x bedrud-desktop-linux-x86_64.AppImage
./bedrud-desktop-linux-x86_64.AppImage

To integrate AppImage into your application launcher, use a tool like AppImageLauncher.

Extract and run from any directory:

tar xf bedrud-desktop-linux-x86_64.tar.xz
./bedrud-desktop

macOS

Pre-built portable tarballs are available for both Intel and Apple Silicon. The app is unsigned - after extracting you may need to allow it in System Settings → Privacy & Security.

curl -L https://github.com/bedrud-ir/bedrud/releases/latest/download/bedrud-desktop-macos-arm64.tar.gz \
  | tar xz
# Allow the binary if macOS blocks it:
xattr -d com.apple.quarantine bedrud-desktop
./bedrud-desktop
curl -L https://github.com/bedrud-ir/bedrud/releases/latest/download/bedrud-desktop-macos-x86_64.tar.gz \
  | tar xz
xattr -d com.apple.quarantine bedrud-desktop
./bedrud-desktop
brew tap bedrud-ir/bedrud
brew install bedrud-desktop

macOS releases are code-signed and notarized when MACOS_CERTIFICATE is configured in CI (see Secrets Reference). Without those secrets the binary is unsigned - use the xattr workaround above or right-click → Open in Finder.

Unsigned macOS Gatekeeper warning: either run the xattr command above, or open System Settings → Privacy & Security and click Open Anyway after the first blocked launch attempt.


Windows

Download and run the installer from the latest release:

ArchitectureFile
x86_64bedrud-desktop-windows-x86_64-setup.exe
ARM64bedrud-desktop-windows-arm64-setup.exe

The installer registers the app in the Start Menu and Add/Remove Programs.

No installation required - extract and run:

ArchitectureFile
x86_64bedrud-desktop-windows-x86_64.zip
ARM64bedrud-desktop-windows-arm64.zip
choco install bedrud-desktop
winget install Bedrud.BedrudDesktop

Summary Table

PlatformServerDesktop Client
Ubuntu / Debian (apt)apt install bedrudapt install bedrud-desktop
Fedora / RHEL (dnf)dnf install bedruddnf install bedrud-desktop
Arch Linux (AUR)yay -S bedrud-binyay -S bedrud-desktop-bin
Any LinuxAppImage / tar.xz binaryAppImage / Flatpak / Snap / tar.xz
macOStar.xz binaryHomebrew tap / portable tar.gz
Windows-WinGet / Chocolatey / NSIS installer / portable .zip
Dockerghcr.io/bedrud-ir/bedrud-

Secrets Reference

These GitHub Actions secrets unlock the optional distribution channels:

SecretChannelDescription
AUR_SSH_PRIVATE_KEYAURSSH key for aur.archlinux.org push
APT_GPG_PRIVATE_KEYapt repoGPG key for signing Release file
APT_GPG_KEY_IDapt repoKey ID of the above
RPM_GPG_PRIVATE_KEYDNF repoGPG key for signing RPM packages
SNAPCRAFT_STORE_CREDENTIALSSnap StoreLogin from snapcraft export-login
CHOCOLATEY_API_KEYChocolateyAPI key from chocolatey.org
HOMEBREW_TAP_TOKENHomebrew tapGitHub PAT with write access to bedrud-ir/homebrew-bedrud
WINGET_GITHUB_TOKENWinGetGitHub PAT for submitting PR to microsoft/winget-pkgs
MACOS_CERTIFICATEmacOS signingBase64-encoded Developer ID .p12 certificate
MACOS_CERTIFICATE_PWDmacOS signingPassword for the .p12 file
MACOS_TEAM_IDmacOS signing / notarizeApple Developer Team ID
MACOS_APPLE_IDmacOS notarizeApple ID email address
MACOS_APP_PWDmacOS notarizeApp-specific password for notarytool
IOS_P12_BASE64iOS IPAiOS distribution certificate
TELEGRAM_BOT_TOKENTelegramBot token for release notifications
TELEGRAM_CHAT_IDTelegramTarget channel/group ID

All secrets are optional - if absent, that channel’s job is silently skipped.