Cupt
Cupt is a work-in-progress re-implementation of APT suite from scratch using Perl. It consists of Perl modules and console front-end to them.
Why?
- to finally avoid some bugs in APT design;
- to introduce some useful features;
- to make an extensible and readable codebase;
The first announcement is here.
What infrastructure does Cupt use?
It uses the same APT infrastructure, e.g. index files, deb cache archive files, configuration files. It understands some of widely used APT options.
What useful features has Cupt already?
- full-case strict dependency problem resolver;
- command-line and APT-like option name checker;
- case-sensitive search;
- pinning by source package name;
- pinning by package groups using shell-like patterns;
- configurable 'depends' and 'rdepends' subcommands;
- support of LZMA-compressed indexes;
- 'satisfy' subcommand;
- support of external problem solvers;
- source versions synchronization.
What features will Cupt have in future?
See incomplete roadmap.
Why Perl?
- I like Perl
- code conciseness
- code extensibility
- several useful libraries available
Can I use Cupt along with libapt-based package managers?
Yes, you can mix apt-get/apt-cache/aptitude/etc. with cupt without bad consequences.
How to feedback?
- file bugs against 'cupt' package in Debian
- join #cupt or irc.debian.org
- mail me directly