Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Arch Linux was able to achieve this years ago.


Arch Linux has a package manager written in C, instead of Python, for example.


APT is written in C++ and YUM is written in Python.

Besides the Python2->3 thing, are there actually any practical advantages to using a lower-level language for managing packages?


Pacman is, subjectively, the fastest package manager I’ve ever used. Not sure if it’s C vs python though, apt is also much slower on many tasks.


This could easily be simply because Pacman doesn’t do as much as apt. For instance apt tracks symbols exported by shared libraries. Pacman doesn't.


I've never heard of that. In what situations is that tracking used?


As far as I know, only RPM-based package managers do symbol tracking at dependency resolution time. Neither Debian nor Arch package managers do this.


I think Void's is faster. Less ergonomic though.

Would be fun to see some benchmarks.


Agreed, so is "apk" from Alpine Linux.


Yes, there is:

A smaller binary and no external dependencies is more audit-able, has fewer dependencies for bootstrapping itself on a server or a container image.

When you multiply this by the total number of images, this makes a big difference.


I wasn't saying there was a disadvantage, I'm just giving a potential look into why it took longer than, say, Arch. Yum is a huge Python project, and it took a while to comb through it all.


It wasn't YUM that held back OpenMandriva's switch (OpenMandriva never used YUM), but some of the build infrastructure tools that wound up being replaced as part of the migration from urpmi to DNF.

Those legacy tools never were updated for Python 3 because they had no maintainers or developers. When the distribution switched to DNF, they were able to adopt actively maintained software that replaced those that were ported to Python 3.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: