Linux like dependancy resolution
versioned library support so you can run older packages as well as the latest and so on…
packages are will be mounted as disk images and mapped onto the regular file system so pacakges install nearly instantly
So its simple enough to understand but has enough complexity that it can handle alot of different use cases.
[quote=cb88]Big difference… between impossible and virtually impossible no reason the packager couldn’t be able to generate download scripts that could be ran from your favorite other OS with a network connection.
[/quote]
This is exactly the scenario I meant. Download a package on windows machine then try to move it to target computer via memory stick.
If the dependency resolution was on the repository side it could just as easily create a stand-alone installer (via a web interface to the repository). The package manager could be used on your own haiku computer to update/install in linux type fashion. That download script is a smart idea.
Dropping a file into a folder is not elegant, its lazy.Pointe finale. It merely wreaks of a security model that is ill conceived at best. Were talking about precompiled binaries, this isn’t windows or ubuntu common now… seriously. Despite your beliefs, dropping a file in a directory - in this context - would be “software installation”. Your adding software ?!
I’ve read through Trac, it looks decent so far; yet it seems like its leaning towards redesigning a wheel were some existing solutions operate well.
I highly recommend devs take a look at the how of arch linux’ package management. Its employs alot the techniques that are being re-coded in Trac.
Packages are using LZMA2 compression. This has been proven stable and fast.
API is similar to zlib - http://tukaani.org/xz/
I’m still left wondering about the validity of xar type package format in this instance.
Nearly the whole ‘Package Management Infrastructure’ are/is how packages are handled, sans the daemon and folder structure.
As far as self hosted repos, there is nothing wrong with that in capable hands. Infact it should be fostered as a means of improvement, lets bolster more open source development. If one is not capable, no problem. Give them what works, the fastest.
Bundles and dependence are handled in arch via the PKGBUILDS;
I’m hoping this sheds some light on legacy alternatives literally taking a new look at whats working and why. Again, I’m all for striking out a new path; yet lets not ‘throw the baby out with the bath water’.
A package manager is a solution to a problem that Haiku should avoid having in the first place, which is a filesystem organization that encourages a single piece of software to scatter itself all over a disk. There are cases where an app depends on a library that needs a security update, but equally many cases where irrelevant library updates can break old code. All things considered, the arrangement most conducive to reliability is that software should come packaged with exactly the libraries it was designed, built, and tested against. At most there should be a system to track the libraries a package carries with it to support user-initiated injection of updated libraries, but ideally such updates should come from maintainers after full integration and regression testing.