[haiku-development] Re: What for does SAT solver needed for package management?

  • From: "Ingo Weinhold" <ingo_weinhold@xxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Mon, 18 Jun 2012 18:34:53 +0200

X512 wrote:
> On Mon, 18 Jun 2012 13:39:40 +0200, Oliver Tappe <zooey@xxxxxxxxxxxxxxx> 
> wrote:
> > Well, that's the root of the package management problem: *if* all 
> > packages 
> > declare their dependencies correctly, the package manager just picks 
> > and 
> > installs the right set of dependency packages and everything will 
> > work. 
> > However, in reality there will be incorrect and/or missing 
> > declarations in 
> > some packages, so your mileage may vary.
> If package hasn't packaged correctly, user should have ability to force 
> using specific package version at his own risk.

IIRC we considered such a thing, but haven't made any more concrete plans. This 
isn't a high priority ATM. And it is always possible to just edit the package's 
dependency attributes. A GUI tool to do that would be nice -- currently it can 
be done with the "package" command line tool, though not particularly 
conveniently.

> Also for commertical 
> packages it is important to show license during installation and to 
> have ability to enter serial/activation number for paid software. 

The latter is something I wouldn't do during package installation at all. 
Applications can simply do that when first started. We'll try to do without 
running any package provided scripts or programs during the installation. Not 
sure if that will always work, but we'll see when we have actual examples.

> Commertical developers usually don't publish software in repositories, 
> they usually publish software on their official site or distribute by 
> CD/DVD. Packages should be installed without repository without any 
> problems even if depedencies isn't stored in repository and user should 
> install it manually.

While that's usually the most convenient way, packages don't have to come from 
a repository. You can install a package manually as well. Its dependencies will 
be resolved from the configured repositories. We've also planned for something 
similar to application bundles. A package that is fully self-contained (i.e. 
doesn't have any dependencies other than the OS) wouldn't have to be installed 
at all. The contained application could be started by double clicking the 
package. The exact implementations details haven't been worked out yet, but 
there shouldn't be any fundamental problem with that feature.

CU, Ingo

Other related posts: