Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 4 Sep 2005 11:40:24 +0200
From:      Alexander Leidinger <Alexander@Leidinger.net>
To:        Boris Samorodov <bsam@ipt.ru>
Cc:        freebsd-emulation@freebsd.org
Subject:   Re: linux directory hier
Message-ID:  <20050904114024.3864b603@Magellan.Leidinger.net>
In-Reply-To: <62142359@srv.sem.ipt.ru>
References:  <08559700@srv.sem.ipt.ru> <20050903114015.38238e72@Magellan.Leidinger.net> <62142359@srv.sem.ipt.ru>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 03 Sep 2005 15:18:16 +0400
Boris Samorodov <bsam@ipt.ru> wrote:

> Right now we install (almost?) all linux programs to LINUXBASE. Do we
> have an example of your approach at ports?

Quick examples: linux-opera and linux-firefox install into X11BASE. I
haven't looked further.

> To use linux programs we replace at run time root to LINUXBASE. Hence
> all that programms needed is there. Wouldn't it me a pain to decide at
> run time where to look needed files? For example, conf files, paths,
> etc. Besides, we will have to use /opt and other linux hiers at
> FreeBSD's /...

No. We first look into LINUXBASE, if the file isn't there, the
linuxolator looks in the FreeBSD path. Therefore it's possible to look
at /home/foobar even if LINUXBASE doesn't contain a "home".

> > > The task is to create a static plist for emulation/linux_base-8
> > > port. Now I should decide which directories are used only by
> > > linux_base port and which may be used by other programms. Seems to me
>=20
> > As long as the dependency is correctly registered, one shouldn't
> > remove the dependency. If he removes it, it's ok to get errors (e.g.
> > from dirrm). The only big no-no is to overwrite existing files. If this
> > is the case we have to find the right solution (somethimes we have to
> > allow such behavior -- like with ld.so.cache -- and look how to solve
> > this cleanly).
>=20
> Well, thats right. At normal conditions all does well. If we install
> packages with dependencies and remove them in revers order. Then no
> files and directories should remain. But pointyhat doesn't remove
> packages in revers order. Look at
>=20
> http://pointyhat.freebsd.org/errorlogs/i386-errorlogs/a.7.2005072221/acro=
read7-7.0.1.log
>=20
> after the line "Deleting acroread7-7.0.1". We see deleting rpm, popt,
> linux_base(!)... leaving all other linux stuff to later deletion.

The line reads "Deleting rpm-3.0.6_10 popt-1.7 linux_base-8-8.0_6
linux-tiff-3.6.1_3 linux-png-1.2.7_6 linux-pango-1.2.1_3"...

I'm not sure if this is the order in which pointyhat removes the
files... can someone from portmgr clarify this issue?

=46rom a quick look the reverse order in which the packages are listed
would make sense. I've never looked into the scripts for this, since it
only makes sense to remove them in reverse dependency order and I
always assumed this is the case.

> > The acroread port is not a good example how to do a linux port. It
> > generates a plist at install time, it isn't PREFIX clean, and it plays
> > tricks in the plist (setting the cwd). All of this isn't necessary and
> > could be done cleanly.
>=20
> It seems to me that the problem should be quite common for linux programs
> if pointyhat is not removing packages in revers order. Why does only
> acroread suffer it?

I would change the question to: What's wrong in the dependency chain of
the acroread port?

> BTW, at my patch I used "@exec mkdir" to create some empty directories
> needed by the port. FreeBSD's package manager can't deal with empty
> dirs when creating a package. If you like, I'll do it at pkg-install
> script.

I don't have a preference here.

Bye,
Alexander.

--=20
            0 and 1. Now what could be so hard about that?

http://www.Leidinger.net                       Alexander @ Leidinger.net
  GPG fingerprint =3D C518 BC70 E67F 143F BE91  3365 79E2 9C60 B006 3FE7



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050904114024.3864b603>