Installation ¶
markata-go is distributed as a single binary with no dependencies. Choose the installation method that works best for you.
Quick Install (Recommended) ¶ #
One-liner Install Script ¶ #
The easiest way to install markata-go on Linux and macOS:
curl -sSL https://waylonwalker.github.io/markata-go/install.sh | bash
This script:
- Automatically detects your OS and architecture
- Downloads the correct binary from GitHub releases
- Installs to
/usr/local/binor~/.local/bin - Verifies the installation
Custom installation directory:
INSTALL_DIR=/opt/bin curl -sSL https://waylonwalker.github.io/markata-go/install.sh | bash
Install a specific version:
VERSION=v0.1.0 curl -sSL https://waylonwalker.github.io/markata-go/install.sh | bash
Using jpillora/installer ¶ #
The fastest way to install on Linux and macOS:
curl -sL https://i.jpillora.com/WaylonWalker/markata-go | bash
This automatically detects your OS and architecture and installs the latest release.
Using eget ¶ #
eget is a convenient tool for downloading pre-built binaries:
# Install eget first (if you haven't)
go install github.com/zyedidia/eget@latest
# Install markata-go
eget WaylonWalker/markata-go
Using mise ¶ #
mise is a polyglot runtime manager that can install tools directly from GitHub releases:
# Install globally
mise use -g github:WaylonWalker/markata-go
# Or add to your project's mise.toml
mise use github:WaylonWalker/markata-go
This uses mise’s GitHub backend which automatically detects the correct binary for your platform from GitHub releases.
Package Managers ¶ #
Homebrew (macOS/Linux) ¶ #
Coming soon! For now, use one of the methods above.
# Future support planned:
# brew install example/tap/markata-go
Go Install ¶ #
If you have Go 1.22+ installed:
go install github.com/WaylonWalker/markata-go/cmd/markata-go@latest
Note: This installs to $GOPATH/bin (usually ~/go/bin). Ensure this is in your PATH.
Manual Download ¶ #
Download the appropriate archive for your platform from the GitHub Releases page.
Available Platforms ¶ #
| OS | Architecture | Archive |
|---|---|---|
| Linux | x86_64 (amd64) | markata-go_*_linux_x86_64.tar.gz |
| Linux | ARM64 | markata-go_*_linux_arm64.tar.gz |
| Linux | ARMv7 | markata-go_*_linux_armv7.tar.gz |
| macOS | x86_64 (Intel) | markata-go_*_darwin_x86_64.tar.gz |
| macOS | ARM64 (Apple Silicon) | markata-go_*_darwin_arm64.tar.gz |
| Windows | x86_64 | markata-go_*_windows_x86_64.zip |
| FreeBSD | x86_64 | markata-go_*_freebsd_x86_64.tar.gz |
| Android | ARM64 (Termux) | markata-go_*_android_arm64.tar.gz |
Manual Installation Steps ¶ #
# Download (replace VERSION and PLATFORM)
curl -LO https://github.com/WaylonWalker/markata-go/releases/download/v0.1.0/markata-go_0.1.0_linux_x86_64.tar.gz
# Verify checksum (recommended)
curl -LO https://github.com/WaylonWalker/markata-go/releases/download/v0.1.0/checksums.txt
sha256sum -c checksums.txt --ignore-missing
# Extract
tar xzf markata-go_*.tar.gz
# Move to PATH
sudo mv markata-go /usr/local/bin/
# Verify installation
markata-go version
Windows ¶ #
- Download the
.zipfile from releases - Extract the archive
- Move
markata-go.exeto a directory in your PATH - Or add the extraction directory to your PATH
Building from Source ¶ #
Requirements:
- Go 1.22 or later
- Git
# Clone the repository
git clone https://github.com/WaylonWalker/markata-go.git
cd markata-go
# Build with version info
go build -ldflags="-s -w" -o markata-go ./cmd/markata-go
# Or use just (if installed)
just build
# Install to GOPATH/bin
just install
Development Build ¶ #
For development with full version information:
# Using just
just build
# Or manually with ldflags
VERSION=$(git describe --tags --always --dirty)
COMMIT=$(git rev-parse --short HEAD)
DATE=$(date -u +"%Y-%m-%dT%H:%M:%SZ")
go build -ldflags "-s -w \
-X github.com/WaylonWalker/markata-go/cmd/markata-go/cmd.Version=$VERSION \
-X github.com/WaylonWalker/markata-go/cmd/markata-go/cmd.Commit=$COMMIT \
-X github.com/WaylonWalker/markata-go/cmd/markata-go/cmd.Date=$DATE" \
-o markata-go ./cmd/markata-go
Verifying Installation ¶ #
After installation, verify it works:
# Check version
markata-go version
# Show help
markata-go --help
Expected output:
markata-go 0.1.0
commit: abc1234
built: 2024-01-15T12:00:00Z
go: go1.22.2
os/arch: linux/amd64
Updating ¶ #
Quick Update ¶ #
# Using jpillora/installer
curl -sL https://i.jpillora.com/WaylonWalker/markata-go | bash
# Using eget
eget WaylonWalker/markata-go
# Using mise
mise upgrade github:WaylonWalker/markata-go
Go Install Update ¶ #
go install github.com/WaylonWalker/markata-go/cmd/markata-go@latest
Uninstalling ¶ #
Remove the binary from your system:
# If installed to /usr/local/bin
sudo rm /usr/local/bin/markata-go
# If installed via go install
rm $(go env GOPATH)/bin/markata-go
# If using mise
mise uninstall github:WaylonWalker/markata-go
Troubleshooting ¶ #
“command not found” ¶ #
Ensure the installation directory is in your PATH:
# Check if markata-go is in PATH
which markata-go
# Add to PATH (bash)
echo 'export PATH="$PATH:/usr/local/bin"' >> ~/.bashrc
source ~/.bashrc
# Add Go bin to PATH
echo 'export PATH="$PATH:$(go env GOPATH)/bin"' >> ~/.bashrc
source ~/.bashrc
Permission Denied ¶ #
# Make binary executable
chmod +x markata-go
# Or use sudo for system-wide install
sudo mv markata-go /usr/local/bin/
macOS Security Warning ¶ #
If macOS blocks the binary:
- Go to System Preferences > Security & Privacy
- Click “Allow Anyway” for markata-go
- Or remove the quarantine attribute:
xattr -d com.apple.quarantine markata-go
Next Steps ¶ #
- Quick Start Guide - Build your first site
- [[configuration-guide|Configuration]] - Configure your site
- [[cli-reference|CLI Reference]] - All available commands