Gentoo Archives: gentoo-osx

From: Grobian <grobian@g.o>
To: gentoo-osx@l.g.o
Subject: Re: [gentoo-osx] env.d; perl with collision-protect
Date: Fri, 19 Aug 2005 07:59:36
Message-Id: 43508.192.16.196.142.1124438337.squirrel@webmail.orakel.ods.org
In Reply to: Re: [gentoo-osx] env.d; perl with collision-protect by Finn Thain
1 On Fri, August 19, 2005 06:13, Finn Thain wrote:
2 > Nice work!
3 Indeed!
4
5 >> ... '/etc/profile.gentoo'
6 >> appends the PATH from '/etc/profile.env' to the existing PATH, rather
7 >> than inserting to the beginning of the existing PATH.
8 >
9 > This is consistent with the intent of collision-protect. People (users,
10 > ISVs) care about the behaviour of Apple's OS X. That is, they care about
11 > avoiding collisions in the file system only in as much it preserves that
12 > behaviour.
13
14 I tend to disagree here. A user who installs Portage eh.. Gentoo for OSX
15 knows how to use a shell (Terminal.app) and uses portage to be able to use
16 those commands from his/her shell. We don't provide any (crappy) visual
17 oriented tool like FinkCommander, so if you are scared of a prompt, you
18 better look for something else. Since this perl install doesn't touch any
19 of Apple's files, and this install would typically only be 'activated' in
20 a shell, normal OSX applications would keep on using the OSX perl, while
21 the shell applications would use the Gentoo perl. I think this is what
22 the user meant when (s)he was emerging perl. With a prefix this won't be
23 any different IMHO.
24
25 >> I'm thinking that we should have a variable (perhaps in some file in
26 >> '/etc/conf.d', or perhaps just in /etc/profile before the line that
27 >> sources '/etc/profile.gentoo') that dictates whether or not the
28 >> '/etc/profile.env' PATH should take precedence over the default PATH.
29 >
30 > I think this is potentially confusing (for some), since you can now have
31 > FEATURES saying preserve behaviour yet have a variable saying the
32 > opposite.
33
34 Hmmm, the idea of pre/post fixing on the path is a bit messy, but I can't
35 think of anything better. Though I would think that anything you install
36 using portage would have a preference over the OS provided stuff, if I
37 follow my own reasoning as above.
38 I don't agree that FEATURES="collision-protect" means "preserve
39 behaviour", it means "don't screw up my system, make sure I can get back
40 to normal if I want to". Maybe it's just a todo to make this viewpoint
41 clear somewhere.
42
43 > Thing is, those people who don't like to change the behaviour of their OS
44 > X system will not put Gentoo perl early in the PATH anyway. And if they
45 > need Gentoo perl as a dep, then they need a prefixed install.
46
47 If you don't want to change the behaviour of your OSX machine, you
48 shouldn't install portage, fink, or whatsoever, because by adding software
49 you change it's behaviour. (It normally would say: "command not found")
50
51 > So, the easy answer is, let Gentoo's perl overwrite the OS X perl
52 > binaries.
53
54 What if some nifty app depends on Apple's perl? Sounds not like a good
55 plan, IMHO.
56
57 > People running collision-protect can just remove that FEATURE for perl
58 > (i.e. emerge --onlydeps with collision-protect, then emerge perl without).
59 >
60 > If you take this point of view, it becomes a question of, "how good is
61 > Apple's perl at satisfying deps?". If perl can't be effectively
62 > package.provided, then the compromise above may not be good enough for
63 > those who want both the perl dep and apple's behaviour, and yet can't wait
64 > for prefixed installs... Well, I think that is asking too much. I don't
65 > think adding potentially conflicting variables is a good response to such
66 > demands. I guess it depends on how broken apple's perl is.
67
68 Agreed, it is a workaround, but due to its setup it feels to me like an
69 early pilot to see how a prefixed install will be manageable...
70
71 > Also, I would caution you against making compromises that will be
72 > inappropriate once prefixed installs are available. Compromises in that
73 > direction will only have to be undone later. ebuilds that do tricks to
74 > avoid collisions will become problems later (for example, imagine you are
75 > building stuff under Gentoo/Darwin, and there is no #!/usr/bin/perl, for
76 > example, because it was installed in /System/Library/Perl/5.8.6/bin/perl)
77
78 Again agreed, but having a pilot is an attractive thing to me. It makes
79 us able to think about and experience the things we have to deal with when
80 prefixed installs become available.
81
82 --
83 gentoo-osx@g.o mailing list

Replies

Subject Author
Re: [gentoo-osx] env.d; perl with collision-protect Finn Thain <fthain@××××××××××××××××.au>