IPFire 3 will come with a totally new package management system that is written from scratch. It is supposed to replace the old Pakfire system which only implemented adding certain packages (add-ons) and could apply system updates as a whole. The new version is taking ideas from popular systems like RPM and DPKG, but as those have not been feeling right for our purpose, with Pakfire, we are going to implement a new system from scratch.
This project is now in an early beta stage. The vast majority of the features below have been implemented, but there will be bugs to be found as it has not been tested by many developers or end-users, yet. As development is moving quite fast, there is currently no tracker bug for any milestones, but there is an extra product on Bugzilla.
Pakfire is a package management systems written in C. On top of that, it is also the build system for IPFire and implements various novel ideas which are supposed to help make development faster and easier for everyone involved. It will come with these features:
Since RPM and APT/DPKG were not found suitable at the time, Pakfire was started as a new project. In writing our own implementation, we are independent from these projects as there has been some motivation to make larger changes to them. As IPFire does not want to keep following fast-paced upstream projects for something as fundamental as the package management system, we believe that this is the better option for the future.
We believe that this is the way forward to overcome a lot of shortcomings of the old build system which is fragile, slow and difficult to use. Testers will have a great way to dip into recent builds and try out new features, if there are any problems, changes can be rolled back immediately and the system can be restored to the latest "official" release.
TBD