[haiku-development] Re: Question about /system and /boot/system

  • From: Oliver Tappe <zooey@xxxxxxxxxxxxxxx>
  • To: haiku-development@xxxxxxxxxxxxx
  • Date: Wed, 02 Mar 2011 19:41:03 +0100

On 2011-03-02 at 18:44:44 [+0100], Stephan Aßmus <superstippi@xxxxxx> wrote:
> On 02.03.2011 18:20, Truls Becken wrote:
> > On 2011-03-02, at 15:49, Stephan Aßmus wrote:
> [idea snipped]
> > The idea seems appealing. A few comments:
> >
> > 1) When Haiku goes multi-user, the single package-fs mount point would 
> > have to show different contents for each user.
> 
> Yes, Oliver mentioned that, too, and it didn't occur to me as a problem.
> I don't know how complicated the solution would be respectively how much
> effort... but it needs to be dealt with of course, should the idea be
> implemented.
> 
> > 2) I guess some system files, like the kernel, can't live in packages?
> 
> In fact I seem to recall only the boot loader (haiku_loader), which
> itself is package-fs aware, would not be inside a package.

Correct, haiku_loader comes as part of a package, but has to be copied to a 
place outside of packagefs, such that it can be found during boot. 
haiku_loader then mounts the packagefs mountpoints and continues with the 
normal booting process.

[ ... ]

> I think dropping packages into the right location will be discouraged,
> since then no dependency resolution takes place.

Dropping packages into the right place is perfectly fine and recommended for 
self-contained packages (apps). It's ok for other packages, too, but then one 
has to be prepared to manually trigger dependency resolution via the package 
manager.

> > 4) Ryan indicated that the system files should be in a single package 
> > (updated with binary diffs). I don't know if this is the consensus, but 
> > if so, it wouldn't make sense to put it in its own directory. You could 
> > simply have /boot/packages contain both the common packages and the 
> > read-only haiku_r1.hpkg or core_system.hpkg.
> 
> I don't think that's how it should be done. I'd personally prefer
> multiple packages based on part of the system. I'm thinking it would
> also be neat to keep multiple version of a package, and package-fs
> reveals the newest version. That would make rollbacks pretty easy. Not
> something mandatory, though.

I'm undecided on that one, either there'll be just one big package plus 
smaller system fix packages (each of which may overrule any set of the system 
files) or there will be separate system packages right from the start. 
Probably the latter, but it's unclear along which lines the system should be 
divided.
In general, during system upgrades, the full set of packages making up the 
current system will be kept in a separate folder, such that it's trivial to 
do a rollback via haiku_loader.

cheers,
        Oliver

Other related posts: