OnWorks favicon

coinst - Online in the Cloud

Run coinst in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command coinst that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator



Coinst - computes the co-installability kernel of a package repostory


coinst [options]


coinst reads a package repository in debian format or RPM format from standard input, and
computes the co-installability kernel of the repository (see below). The graph of the
kernel is written in dot format to a file, and a diagnostic is written to standard output.
This diagnostic consists by default of:

- the list of equivalence classes of packages

- the list of non-installable packages

- the list of not co-installable pairs of packages


A set of packages is called co-installable with respect to a repository R if it can be
extended to a set of packages from R that satisfies all inter-package relations
(dependencies, conflicts, etc.). In particular, a package p is installable if the set {p}
consisting of p only is co-installable.

This tool reduces a repository R to a much smaller one, its so-called co-installability
kernel R', that behaves exactly the same as far as co-installability of package is
concerned: Any set of packages P is co-installable with respect to P iff it co-installable
with respect to R'. This is achieved by

- dropping all relations that are not relevant for this purpose. For instance,
dependencies that do not lead directly or indirectly to any conflicts are dropped.

- identifying all packages that behave the same. For instance, packages that are not in
conflict with any other package (even not through dependency chains) behave the same
since they are co-installable together with any other co-installable set of packages,
and packages that are not installable at all behave the same since they may never be
part of any co-installable set of packages.

A more precise explanation can be found in the original research article underlying this

The interest of computing the kernel is that it is typically orders of magnitude smaller
than the original repository.


Options controlling the input
-deb expect input in the format of a debian Packages file (default).

-rpm expect input in the format of an RPM hdlist.cz file.

-ignore package
ignore the package named package.

Options controlling the graph output
-o file
write the graph to file instead of graph.dot

-all include all packages in the coinstallability graph

-root p
draw only the relevant portion of the graph around package p.

Options controlling the diagnostic output
explain the list of non-installable pairs of packages.

-stats show statistics regarding the input and output repositories

Miscellaneous options
-help, --help
show command synopsis


Reduce a current debian Packages file to its kernel:

coinst -all -o raw.dot < sid_main_binary-amd64_Packages

Layout the graph:

dot raw.dot -o layout.dot:

View the graph with dotty, or the viewer from the coinst_viewer package:

dotty layout.dot
coinst_viewer layout.dot

Use coinst online using onworks.net services

Free Servers & Workstations

Download Windows & Linux apps

  • 1
    OfficeFloor provides inversion of
    coupling control, with its: - dependency
    injection - continuation injection -
    thread injection For more information
    visit the...
    Download OfficeFloor
  • 2
    DivKit is an open source Server-Driven
    UI (SDUI) framework. It allows you to
    roll out server-sourced updates to
    different app versions. Also, it can be
    used fo...
    Download DivKit
  • 3
    Utility to convert between various
    subscription format. Shadowrocket users
    should use ss, ssr or v2ray as target.
    You can add &remark= to
    Telegram-liked HT...
    Download subconverter
  • 4
    SWASH is a general-purpose numerical
    tool for simulating unsteady,
    non-hydrostatic, free-surface,
    rotational flow and transport phenomena
    in coastal waters as ...
    Download SWASH
  • 5
    VBA-M (Archived - Now on Github)
    VBA-M (Archived - Now on Github)
    Project has moved to
    Features:Cheat creationsave statesmulti
    system, supports gba, gbc, gb, sgb,
    Download VBA-M (Archived - Now on Github)
  • 6
    Linux System Optimizer and Monitoring
    Github Repository:
    Audience: End Users/Desktop. User
    interface: Qt. Programming La...
    Download Stacer
  • More »

Linux commands