Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Linux x64 Installation

MediaGit-Core provides pre-built binaries and package manager support for Linux x64 systems.

curl -fsSL https://raw.githubusercontent.com/winnyboy5/mediagit-core/main/install.sh | sh

This script automatically detects your architecture and downloads the correct binary from GitHub Releases.

Direct Download (x86_64)

curl -fsSL https://github.com/winnyboy5/mediagit-core/releases/download/v0.2.6-beta.1/mediagit-0.2.6-beta.1-x86_64-linux.tar.gz \
  | sudo tar xz -C /usr/local/bin
mediagit --version

The archive contains both mediagit and mediagit-server binaries.

Distribution-Specific Installation

Ubuntu / Debian

Using APT Repository

# Add MediaGit repository
curl -fsSL https://apt.mediagit.dev/gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/mediagit-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/mediagit-archive-keyring.gpg] https://apt.mediagit.dev stable main" | sudo tee /etc/apt/sources.list.d/mediagit.list

# Update and install
sudo apt update
sudo apt install mediagit-core

Using .deb Package

# Download latest release
wget https://github.com/winnyboy5/mediagit-core/releases/download/v0.2.6-beta.1/mediagit_0.2.6-beta.1_amd64.deb

# Install
sudo dpkg -i mediagit_0.2.6-beta.1_amd64.deb

# Fix dependencies if needed
sudo apt-get install -f

Fedora / RHEL / CentOS

Using DNF/YUM

# Add MediaGit repository
sudo dnf config-manager --add-repo https://rpm.mediagit.dev/mediagit.repo

# Install
sudo dnf install mediagit-core

# For older systems using yum
sudo yum install mediagit-core

Using .rpm Package

# Download latest release
wget https://github.com/winnyboy5/mediagit-core/releases/download/v0.2.6-beta.1/mediagit-0.2.6-beta.1-1.x86_64.rpm

# Install
sudo rpm -i mediagit-0.2.6-beta.1-1.x86_64.rpm

Arch Linux

# Install from AUR
yay -S mediagit-core

# Or using paru
paru -S mediagit-core

# Manual AUR installation
git clone https://aur.archlinux.org/mediagit-core.git
cd mediagit-core
makepkg -si

openSUSE

# Add repository
sudo zypper addrepo https://download.opensuse.org/repositories/home:mediagit/openSUSE_Tumbleweed/home:mediagit.repo

# Install
sudo zypper refresh
sudo zypper install mediagit-core

Manual Binary Installation

If package managers aren’t available, install manually:

# Download archive
wget https://github.com/winnyboy5/mediagit-core/releases/download/v0.2.6-beta.1/mediagit-0.2.6-beta.1-x86_64-linux.tar.gz

# Verify checksum
wget https://github.com/winnyboy5/mediagit-core/releases/download/v0.2.6-beta.1/mediagit-0.2.6-beta.1-x86_64-linux.tar.gz.sha256
sha256sum -c mediagit-0.2.6-beta.1-x86_64-linux.tar.gz.sha256

# Extract (contains mediagit + mediagit-server)
tar -xzf mediagit-0.2.6-beta.1-x86_64-linux.tar.gz

# Move to bin directory
sudo mv mediagit mediagit-server /usr/local/bin/

# Verify installation
mediagit --version

Post-Installation Setup

Shell Completions

Bash

mediagit completions bash > ~/.local/share/bash-completion/completions/mediagit

Zsh

mediagit completions zsh > ~/.zfunc/_mediagit
echo 'fpath=(~/.zfunc $fpath)' >> ~/.zshrc

Fish

mediagit completions fish > ~/.config/fish/completions/mediagit.fish

Environment Variables

Add to ~/.bashrc or ~/.zshrc:

# Optional: Set default backend
export MEDIAGIT_DEFAULT_BACKEND=local

# Optional: Set storage path
export MEDIAGIT_STORAGE_PATH=~/.mediagit/storage

# Optional: Enable debug logging
export MEDIAGIT_LOG=debug

Verify Installation

# Check version
mediagit --version

# Run self-test
mediagit fsck --self-test

# Create test repository
mkdir test-repo
cd test-repo
mediagit init

Expected output:

mediagit-core 0.2.6-beta.1
✓ Initialized empty MediaGit repository in .mediagit/

System Requirements

  • CPU: x86_64 processor (Intel, AMD)
  • RAM: 512MB minimum, 2GB recommended
  • Disk: 100MB for binaries
  • OS: Linux kernel 4.4+ (glibc 2.17+)
  • Dependencies: None (statically linked)

Verified Distributions

DistributionVersionStatus
Ubuntu20.04, 22.04, 24.04✅ Tested
Debian10, 11, 12✅ Tested
Fedora38, 39, 40✅ Tested
RHEL8, 9✅ Tested
CentOS7, 8, Stream 9✅ Tested
Arch LinuxRolling✅ Tested
openSUSELeap 15.5, Tumbleweed✅ Tested

Troubleshooting

Permission Denied

# If standard install fails, try user-local install
curl -fsSL https://raw.githubusercontent.com/winnyboy5/mediagit-core/main/install.sh | sh -s -- --no-sudo

# Add to PATH
export PATH="$HOME/.local/bin:$PATH"

GLIBC Version Too Old

If you see: version 'GLIBC_2.17' not found:

# Check your glibc version
ldd --version

# Solution 1: Upgrade your system
sudo apt update && sudo apt upgrade

# Solution 2: Build from source
# See: Building from Source guide

Command Not Found

# Check if binary exists
which mediagit

# If not found, add to PATH
export PATH="/usr/local/bin:$PATH"
echo 'export PATH="/usr/local/bin:$PATH"' >> ~/.bashrc

SSL Certificate Errors

# Update CA certificates
sudo apt update
sudo apt install ca-certificates

# Or for Fedora/RHEL
sudo dnf install ca-certificates

Updating

APT/DNF Repository

# Ubuntu/Debian
sudo apt update && sudo apt upgrade mediagit-core

# Fedora/RHEL
sudo dnf update mediagit-core

Manual Update

# Re-run install script (downloads latest)
curl -fsSL https://raw.githubusercontent.com/winnyboy5/mediagit-core/main/install.sh | sh

# Or download specific version manually
wget https://github.com/winnyboy5/mediagit-core/releases/download/v0.2.6-beta.1/mediagit-0.2.6-beta.1-x86_64-linux.tar.gz
tar -xzf mediagit-0.2.6-beta.1-x86_64-linux.tar.gz
sudo mv mediagit mediagit-server /usr/local/bin/

Uninstalling

APT

sudo apt remove mediagit-core

DNF/YUM

sudo dnf remove mediagit-core

Manual

sudo rm /usr/local/bin/mediagit
rm -rf ~/.mediagit

Next Steps