Gentoo Archives: gentoo-dev

From: "Thomas Rösner" <Thomas.Roesner@××××××××××××××.de>
To: gentoo-dev@l.g.o
Subject: Re: [gentoo-dev] A major change coming in the rox packages
Date: Thu, 08 Feb 2007 17:51:00
Message-Id: 45CB6361.5030600@digital-trauma.de
In Reply to: [gentoo-dev] A major change coming in the rox packages by Jim Ramsay
1 Jim Ramsay schrieb:
2 > I am planning on moving the install locations of all the rox-base/* and
3 > rox-extra/* applications from their current location (/usr/lib/rox) to
4 > something a little more FHS-correct[1] and tolerant of multilib support.
5 >
6 > The main reason for this change is that I got a bug from amd64 because
7 > the /usr/lib path is hard-coded all over the place (ie, not multilib
8 > compliant), but it's always sort of bugged me that these packages are
9 > in /usr/lib - They're not actually libaries (except for rox-clib).
10 > These rox applications are a new special case that don't fit into the
11 > FHS, called "Application Directories"[2], and I need a good place to
12 > put them.
13 >
14
15 Let's see, /usr:
16
17 AFAIR App Dirs provide internal arch distinction, so why not just put it
18 in /usr/share/rox?
19 <fhs>
20 This hierarchy is intended to be shareable among all architecture
21 platforms of a given OS; thus, for example, a
22 site with i386, Alpha, and PPC platforms might maintain a single
23 /usr/share directory that is
24 centrally-mounted.
25 </fhs>
26
27 If you don't follow that rationale, as far as I read the FHS, Rox should
28 stay in /usr/lib/rox:
29 <fhs>
30 /usr/lib includes object files, libraries, and internal binaries that
31 are not intended to be executed directly by
32 users or shell scripts.
33 *Applications may use a single subdirectory under /usr/lib. If an
34 application uses a subdirectory, all
35 architecture-dependent data exclusively used by the application must be
36 placed within that subdirectory. *
37 </fhs>
38 Note that in that case, the Help files etc. would be aliens there.
39
40 The fact that Rox Apps can compile themselves on demand would make them
41 go into /var/, but I trust that all ebuilds precompile everything as
42 needed, so no write access is necessary.
43
44 If Gentoo hadn't the (useful) binary/from source distinction, I'd vote
45 for opt.
46
47 > I'd like input from any interested parties on where the proper
48 > location may be. Here are some ideas with their justifications and
49 > problems, as I see them:
50 >
51 > /usr/libexec/rox - libexec isn't actually in the FHS (that I could
52 > see), and /usr/libexec is usually assumed to contain executable
53 > code, so it may be a "safe" place to put things. That said, libexec
54 > is considered by some to be dead or about to disappear[3], so it may
55 > not be the right place to go.
56 >
57
58 If your motivation is FHS, dont use libexec.
59
60 > /usr/rox - This isn't in the FHS either, I would be creating it. The
61 > problem is that the FHS specifically says "Large software packages
62 > must not use a direct subdirectory under the /usr hierarchy."
63 >
64
65 With a good reason (see below).
66
67 > /usr/bin/rox-desktop - This may be the most correct, since the FHS
68 > does allow subdirectories here, and doesn't explicitly prohibit new
69 > ones. Also, these are actually executable commands. The problem is
70 > that (at least considering my currently installed packages) no one
71 > else has created any subdirectories in /usr/bin. I don't know if
72 > that's a problem. Also, I can't use the name 'rox' in this place
73 > because that conflicts with a filename from rox-base/rox.
74 >
75
76 Everything in /usr/bin is assumed to be a user callable executable. If
77 you follow the notion that an App Dir is a large bin that happens to be
78 in directory form (it could be a .jar, after all), this would make
79 sense. But again, for multiple Archs you'd have tons of duplicates.
80
81 If you read the FHS and don't concentrate on following it to the letter,
82 though, but read the motivation why it even exists and what it tries to
83 accomplish, namely to make the directory tree shareable as far as
84 possible, I'd really consider /usr/share/rox. If my assumption is
85 correct (that it would work).
86
87 I guess if you'd ask the FHS guys, they'd say "Chop those app dirs up to
88 the proper locations and symlink them together in one place if needed",
89 which would be much work for little gain.
90
91 Regards,
92 Thomas
93 --
94 gentoo-dev@g.o mailing list

Replies

Subject Author
Re: [gentoo-dev] A major change coming in the rox packages "Diego 'Flameeyes' Pettenò" <flameeyes@g.o>