selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

Attune logo

Self-host Attune

v0.2.2

Self-hosted APT repository publishing with local GPG signing

BetaOpen CoreApache-2.0
Updated10 months ago
LanguageRust
Setup difficultyAdvanced
Stars
210
Port
3000 (Attune control plane HTTP API)
Requires
MinIO (S3-compatible object storage), PostgreSQL
Install with Docker Compose

What is Attune?

Attune publishes and hosts Linux package repositories, currently supporting APT for Debian and Ubuntu. A self-hosted control plane runs via Docker Compose with PostgreSQL and MinIO for object storage. The CLI signs repository indexes locally so users keep control of their GPG keys. Incremental index rebuilds make adding and removing packages fast. Two editions exist: a free Community Edition and a paid Enterprise Edition with advanced security features. The CLI installs via Homebrew, .deb packages, or cargo, while the control plane uses the provided Docker Compose setup.

Should you self-host Attune?

Attune scores 43/100 on selfhost.directory (how scoring works) and ranks #8 of 11 in Package Management. It has 210 GitHub stars.

It shipped 2 stable releases in the past year. The latest, v0.2.2, came out on 26 November 2025. New versions land roughly every 1 days.

Setup is advanced: plan for several services and some ongoing maintenance. It is Apache-2.0-licensed and written mostly in Rust.

Its closest alternative on selfhost.directory is verdaccio (75/100, 17 953 stars). It scores higher overall, so compare the two before you pick. See Attune vs verdaccio side by side.

Features

  • APT repository publishing
  • CLI package management
  • Community and Enterprise editionsEnterprise Edition features are partial in self-hosted version
  • Incremental index rebuilds
  • Local GPG signing
  • Managed cloud option
  • Multiple installation methods
  • Repository index signing
  • S3-compatible storage backend
  • Self-hosted control plane
  • Software supply chain security

Attune README

How to install Attune

Install Attune with Docker Compose

Docker, Rust, GnuPG (gpg)
Environment variables
ATTUNE_API_TOKEN, ATTUNE_DATABASE_URL, ATTUNE_S3_BUCKET_NAME, AWS_REGION, AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_ENDPOINT_URL_S3, ATTUNE_API_ENDPOINT

git clone https://github.com/attunehq/attune.git cd attune cp .env.example .env

Modify values in .env as needed for your setup

docker compose up -d cargo install --path ./packages/attune

Runs control plane on port 3000, PostgreSQL on 5432, MinIO on 9000/9001

How to configure Attune

  • ATTUNE_API_ENDPOINThttp://localhost:3000Base URL of the control plane API

    Base URL of the control plane API

  • ATTUNE_API_TOKENINSECURE_TEST_TOKENAPI token for authentication between CLI and control plane

    API token for authentication between CLI and control plane

  • ATTUNE_DATABASE_URLpostgres://attune:attune@localhost:5432/attunePostgreSQL database connection URL

    PostgreSQL database connection URL

  • ATTUNE_S3_BUCKET_NAMEattune-dev-0S3 bucket name for package storage

    S3 bucket name for package storage

  • AWS_ACCESS_KEY_IDattuneminioS3 access key ID

    S3 access key ID

  • AWS_ENDPOINT_URL_S3http://localhost:9000S3 endpoint URL (for MinIO or other S3-compatible storage)

    S3 endpoint URL (for MinIO or other S3-compatible storage)

  • AWS_REGIONus-east-1AWS region for S3-compatible storage

    AWS region for S3-compatible storage

  • AWS_SECRET_ACCESS_KEYattuneminioS3 secret access key

    S3 secret access key

Attune releases & version history

More in Package Management

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…