Kodachi Repository Manager
Browse signed Kodachi packages, compare Stable, Beta, and authenticated Dev channels, inspect hashes and repository trust, manage every APT source, apply system updates, and install favourite Debian applications.
Open it from Cairo Dock
Choose More -> Kodachi Repository Manager. The application opens as a normal user. It reads package and source state without privilege, then delegates only approved mutations to kodachi-repo-apt through PolicyKit.
Four full destinations
Packages
Search, filter, sort, inspect, install, upgrade, remove, and switch signed Kodachi packages between channels.
System sources
Read every Debian, security, backports, Whonix, Kodachi, and custom APT source. Enable, disable, add, or remove supported entries.
System updates
Simulate what APT would upgrade, show origin details, then apply all reviewed updates.
Favourite apps
Install or remove commonly useful applications from configured Debian repositories without hunting for downloads.
The command log stays visible across all four destinations. If you switch pages during an operation, progress and recovery output remain available.
Browse the package storefront
- Choose Stable, Beta, or Dev in the compact channel selector.
- Search by package name, summary, or SHA256, or select a rail filter.
- Read each card's state dot and legend. Select a card to open its slide-over datasheet.
- Review version, channel, size, state, and action label before pressing Install, Upgrade, Switch channel, or Remove.
Filters
Sort controls
| Control | Forward order | Second press |
|---|---|---|
| A to Z | Component, then package name | Z to A |
| Newest | Fetched package Last-Modified date | Oldest |
| Largest | Selected channel download size | Smallest |
| State | Update, downgrade, installed, available, absent | Reverse state order |
Newest is honest about partial data
Upload dates come from package HTTP Last-Modified headers already fetched by this window. Packages whose date has not been fetched are grouped at the far end in name order instead of receiving an invented date.
Card state words
UPDATE means the selected channel is newer. DOWNGRADE means it is older. INSTALLED means current for that channel. AVAILABLE means not installed. NOT HERE means that channel does not publish the package.
Read the four tabs before changing a package
About
What the package is for and whether the description came from the signed index or a local fallback.
Version & dates
Installed and candidate versions, Stable and Beta cards, optional Dev record, index sync time, build date, and fetched upload time.
Integrity
SHA256, package pool location, download source, byte equality across channels, and the observed repository-key result.
Dependencies
The package relationships APT would resolve. A long list scrolls without hiding the fixed action area.
What the action buttons mean
| Button | Result |
|---|---|
| Install | Installs the selected package from the selected channel. |
| Upgrade | Moves the installed package to a newer candidate in the selected channel. |
| Install older build | Explicitly downgrades to the selected channel candidate after confirmation. |
| Switch channel | Selects the other channel build and pins later upgrades to that channel. |
| Remove | Runs APT remove for the package while retaining package configuration files. |
Read every Repository Manager confirmation
The manager confirms downgrades, Kodachi package removals, package or whole-system channel moves, repository add or remove, source enable or disable, and installing all updates. The dialog names the exact scope. Favourite-app install and remove run from their row without that confirmation, so review the listed package set before pressing either button.
The fixed command area says either What the button runs or Why the button is unavailable. Read it when a card action is grey.
Stable, Beta, and Dev
| Channel | Use | Important behavior |
|---|---|---|
| Stable | Default production packages | A version can differ from Beta. Compare the datasheet rather than assuming either one is newer. |
| Beta | Published test channel | Switching can upgrade or downgrade depending on the exact package versions. |
| Dev | Internal authenticated packages | Package actions stay disabled until a non-empty authentication file exists and the source is configured. |
Repository trust is observed, not assumed
The Integrity tab first reads the live official source and requires its Signed-By field to resolve to the pinned Kodachi archive keyring. A missing, alternate, or additional binding is reported as a source-binding mismatch before the key file is judged. With the expected binding, the installed keyring has one of seven exact states: absent, unreadable, unparseable, no keys, mismatch, extra keys, or pinned. Only pinned means exactly one matching key. Unparseable remains unknown until GPG verifies a real InRelease; no keys fails closed. A package hash and a repository signature answer different questions, so both are shown.
Do not embed credentials in a source URL
The manager rejects APT URIs containing user information. Dev credentials are collected separately and stored in APT's protected authentication configuration through the privileged helper.
Move the system versus switch one package
Switch channel acts on the selected package and pins it. Move system to channel acts on every Kodachi package. Review the confirmation carefully because moving to Beta can be a downgrade when Stable currently carries a newer build.
System sources
Each row represents an APT source file or stanza the machine actually reads. Expand a row to inspect format, suites, components, keyring, enabled state, and mutation availability. A source in /etc/apt/sources.list can be displayed but is not removed as though it were a standalone file.
- Enable or Disable changes whether APT reads a supported source.
- Add validates the URI, release name, components, and keyring selection before writing a new source.
- Remove repository file deletes the chosen standalone source definition after confirmation. It does not uninstall packages obtained from it.
- An unreadable or invalid source remains visible with mutation controls disabled and the reason stated.
System updates
- Open System updates and refresh the simulation.
- Review package, installed version, candidate version, and origin.
- If the read failed, correct the displayed APT error first.
- Use Recount only for a fresh read without applying changes.
- Press Install all updates, review the total and security-update count, authenticate through PolicyKit, and keep the window open while the command log runs.
Favourite apps
The eight rows cover VLC, Audacity, GIMP, Inkscape, Bluefish, Docker with Compose, a QEMU plus Virt Manager bundle, and Dropbox. A row can be installed, partial, available, or unavailable. Install adds its package set; Remove removes only the installed subset; Recheck refreshes the reading. This is separate from Kodachi package channels and does not download arbitrary installers from websites.
Whole-system strip and console
The fixed strip exposes six operations: Export JSON, Move system, Dev credentials, add or remove the selected channel, Update all, and Refresh. The command console provides Follow, Stop waiting, Wrap, Copy, and Clear. Stop waiting returns the interface to you, but a root-owned APT child may still be finishing, so inspect the log before starting another mutation.
Recover without making package state worse
| Symptom | Next step |
|---|---|
| Button is grey | Read the reason line above the fixed command area. Configure the selected channel, add Dev credentials, select a published package, or wait for the catalog read. |
| Channel not configured | Use Add channel on the selected channel. The manager writes the supported source through its helper. |
| Catalog or source read failed | Read the command log. Invalid source syntax, unreachable repositories, or an APT lock can prevent a trustworthy catalog. |
| Operation is silent | The window has an idle timeout and a wall timeout. Keep it open until it reports completion or abandonment. |
| Stop was pressed | The GUI stops reading and gives control back, but it cannot promise that a root-owned APT child stopped immediately. Read the final log before starting another operation. |
| dpkg was interrupted | Run the exact recovery instruction shown by the window, commonly sudo dpkg --configure -a, before another install or update. |
| Closing while busy | Prefer Keep waiting. Close anyway can cut APT off mid-operation and leave dpkg requiring recovery. |
One package manager owns Kodachi files
On Kodachi Desktop, use Repository Manager or APT for packaged binaries. Do not run the portable tarball installer over the same files because two installation systems would then compete for ownership.
Return to Cairo Dock or Desktop Controls.