A package system for Linux · tester loop paused

An RPM that installs on Ubuntu. A DEB that installs on Fedora.

Conary keeps each package's exact RPM, Debian, or ALPM semantics, executes them against typed capabilities on the target host, and owns the resulting transaction and rollback — without invoking dnf, apt, or pacman.

  • RPM · DEB · Arch · CCS
  • Fedora 44 · Ubuntu 26.04 · Arch
Cross-format package executionRPM, Debian, and Arch packages each enter one Conary transaction that keeps the source package ABI, then execute against typed capabilities on a Fedora, Ubuntu, or Arch host.SOURCE PACKAGETARGET HOST.rpm.deb.pkg.tar.zstFedora 44Ubuntu 26.04Arch LinuxCONARYone transactionsource ABI preserved · typed target capabilitiesinstall · update · remove · rollback
A source package keeps its RPM, Debian, or ALPM semantics while typed target capabilities feed one Conary-owned package transaction.

The bet

A package format is a source input, not a wall.

A package belongs to the distribution that built it. If the software you need ships as an RPM and you run Ubuntu, you wait for a Debian maintainer, reach for a container, or change distributions. The work of packaging the same software gets repeated once per ecosystem, and the cost lands on maintainers and on anyone whose distro is not the popular one.

Conary's bet is that this boundary is mechanical, not fundamental. RPM, Debian, and ALPM each expose a finite, documented lifecycle ABI. Encode those exactly, express what a host provides as typed capabilities, and a package stops being the property of one distribution — while Conary, not the distro's package manager, owns the transaction and the way back.

Existing distro repositories become source inputs to one package engine.

Today that holds for RPM, DEB, Arch, and CCS packages on Fedora 44, Ubuntu 26.04 LTS, and Arch Linux. Everything below is labelled with how far it has actually been proven.

The Conary idea

One model, from package intent to a complete system.

Distribution differences are inputs, not walls. Conary preserves each source format's lifecycle, dependency, version, payload, and configuration rules, then executes them against the capabilities of the target Linux system.

foundation available

Install across package-format boundaries

Install an RPM on Ubuntu, a DEB on Fedora, or an Arch package on either without delegating the transaction to dnf, apt, or pacman.

preview today

Bring the existing system along

Adopt packages already owned by dnf, apt, or pacman as a reversible migration bridge, then transfer authority only through an explicit takeover.

available · growing

Treat packages as verifiable content

Store Conary-owned files by content hash, resolve dependencies as a graph, and build, sign, verify, and inspect the native CCS format.

active machinery

Describe the system you want

Compare a declarative model with a running host and develop a path toward planned package changes and cross-distribution replatforming.

VM evidence

Select complete system generations

Build content-reusing EROFS artifacts, select a generation for the next boot, and make recovery a system-level operation rather than a hopeful undo.

service today · wider horizon

Share package infrastructure

Use Remi as the package metadata and conversion service today, while federation, third-party publishing, and broader automation mature.

See the full feature map and maturity of each layer

Source proof active · packaged tester loop paused

Cross the package boundary deliberately.

The next public loop remains deliberately focused: inspect a foreign-format package, confirm its exact target capabilities, install it through Conary, and prove that query, update planning, removal, and rollback still agree. The published v0.16.1 artifact is the current immutable release, but this loop resumes only after #110's separate ordinary-package corpus gate passes and an exact tester release is assigned.

  1. Run a foreign package as its source format intended

    Keep RPM, Debian, or ALPM lifecycle arguments and ordering while Conary supplies the target root, users, services, and other typed interfaces.

    source exact
  2. Inspect a Conary-owned package change

    Sync Remi, resolve a supported package, and review the complete dry-run before approving a live install.

    dry-run first
  3. Use one package engine on three hosts

    Exercise the same RPM, DEB, Arch, and CCS pipeline on Fedora 44, Ubuntu 26.04 LTS, and Arch while retaining source-specific version and dependency rules.

    matrix proof

Cross-distro transaction preview

See the source ABI and target contract before apply.

Start with the documented dry-run. Conary shows the package's typed lifecycle, dependencies, payload, and required host capabilities before it mutates the selected root.

What changes

Conary owns the installed files, state, lifecycle transaction, and rollback record.

What stays source-native

The RPM, Debian, or ALPM ABI—not command-name guesses or the host's package manager.

$sudo conary install ./package.deb --dry-run $sudo conary install ./package.deb --yes $sudo conary list package --info $sudo conary update package --dry-run $sudo conary remove package --yes

Command-only illustration. Output varies by host; use the ordered install runbook to capture evidence.

Honest fit check

Evaluate package portability, then the migration path.

apt, dnf, pacman, and Nix are mature systems with much larger ecosystems. Conary's bet is different: existing distro repositories become source inputs to one package engine, while adoption remains the bridge for the machine you already have.

Compare the trade-offs

See the package bridge on a real host

Try a package your distro did not ship.

Use the pinned, checksum-verified preview on a disposable host and inspect the complete transaction before apply.