Skip to content

Installation

RequirementVersionNotes
Docker CLIany recentRequired for build and sync operations
Package RegistryGitLab / Gitea / S3Stores build metadata; GitLab is the default
Go≥ 1.22Only needed when building from source

imglife itself is a single static binary with no runtime dependencies.

Pre-built binaries are published for each release in the GitLab Generic Package Registry.

Terminal window
curl -LO https://gitlab.com/imglife-project/imglife/-/releases/permalink/latest/downloads/imglife-linux-amd64
chmod +x imglife-linux-amd64 mv imglife-linux-amd64 ~/.local/bin/imglife

Ensure the install directory is in your PATH. For ~/.local/bin:

Terminal window
export PATH="$HOME/.local/bin:$PATH"
# Add to ~/.bashrc or ~/.zshrc for persistence
  1. Clone the repository

    Terminal window
    git clone https://gitlab.com/imglife-project/imglife.git
    cd imglife
  2. Build the binary

    Terminal window
    make build

    This compiles ./imglife in the project root with the current Git version embedded.

  3. Install (optional)

    Terminal window
    make install
    # Installs to $HOME/.local/bin by default
    # Override: make install INSTALL_DIR=/usr/local/bin

imglife is also distributed as a minimal Alpine-based Docker image (~20 MB):

Terminal window
docker pull registry.gitlab.com/imglife-project/imglife:latest
# Run a command
docker run --rm \
-v "$PWD/imglife.yaml:/app/imglife.yaml:ro" \
-e GITLAB_TOKEN \
registry.gitlab.com/imglife-project/imglife:latest \
sync --dry-run

This is the image used in GitLab CI jobs. See Base Images — GitLab CI for a complete pipeline example.

Terminal window
imglife version

Expected output:

imglife v0.8.0 (commit: abc1234, built: 2026-04-01T10:00:00Z)
Terminal window
imglife --config imglife.yaml --check

The --check flag parses and validates the configuration without executing any operation. Useful for CI pipelines and local development.

Terminal window
imglife completion bash > /etc/bash_completion.d/imglife
# Or for a single user:
imglife completion bash >> ~/.bash_completion