1 |
On Wed, Dec 01, 2004 at 09:15:16PM -0500, Nicholas Jones after a spiritual call wrote : |
2 |
~> If '.tgz' has been reserved for slackware, that's a bit of a |
3 |
~> problem. The following suggestion requires some changes in portage, |
4 |
~> but they are on the way. I'd prefer if it detected the slackware |
5 |
~> info within the file. Portage should be able to handle any tarball |
6 |
~> given, regardless of it's metadata format. The reason I say the |
7 |
~> reservation is a problem stems from wanting xpaks on tgz files |
8 |
~> instead of restricting ourselves to tbz2 which is computationally |
9 |
~> intensive. |
10 |
|
11 |
The .tgz of Slackware doesn't keep information as the .tbz2 does. |
12 |
A tgz pkg is the image tar.gzipped with a doinst.sh script used to |
13 |
recreate the links. Btw, the installation is held by installpkg (it |
14 |
comes from pkgutil in Slackware). |
15 |
The changes in emerge permit to use the portage's db to check |
16 |
dependecies. When a dep is found it searches the relative .tgz in the |
17 |
specified PKGROOT, if it isn't found it merge the dep from the portage |
18 |
itself. |
19 |
|
20 |
~> > pfile: Emerde will apply the specified action to all the |
21 |
~> > packages listed in the pfile |
22 |
~> |
23 |
~> I don't know what this means. |
24 |
|
25 |
it loads the list of pkg to consider from a file (pfile) instead from |
26 |
the command line. |
27 |
|
28 |
~> > invulnerable: Updates all the packages which have suid binaries. |
29 |
~> Why? |
30 |
|
31 |
If the user wants to update all the suid binaries here it is. |
32 |
|
33 |
~> > maketgz: Emerde will build Slackware's tgz packages for all |
34 |
~> > ebuilds processed. |
35 |
~> |
36 |
~> Converting to an outside format, while good to be able to do, |
37 |
~> is better served in an outside application. You had mentioned |
38 |
~> in another message por2pkg or something like that. These would |
39 |
~> be in the package to which I am refering. |
40 |
|
41 |
por2pkg is used to convert the portage's vardb entry to the Slackware's one |
42 |
(/var/log/packages/) |
43 |
|
44 |
~> > quicksearch: The cp_all function in Emerde is rewritten to use |
45 |
~> > /var/cadb, there's a significant improvement in all |
46 |
~> > the functions that use cp_all (--search, sync, |
47 |
~> > update cache etc...) |
48 |
~> |
49 |
~> What is cadb? 'esearch' and it's friends compile the data into a |
50 |
~> db it uses to query from. The problem with portage's search is a |
51 |
~> locality problem. Seeks on disks are a major penalty. What benefit |
52 |
~> are you providing here? |
53 |
|
54 |
The /var/cadb is a simple index: |
55 |
[alpt@darkalpt alpt]$ cat /var/cadb |
56 |
app-accessibility SphinxTrain |
57 |
app-accessibility at-poke |
58 |
app-accessibility brltty |
59 |
... |
60 |
|
61 |
The current cp_all function generates each time the list of |
62 |
all packages... it's pretty slow because it does three nested "for" within |
63 |
the listdir function. Instead in the modified version it has already the list, |
64 |
so it can look up the relative category immediately. |
65 |
|
66 |
~> > skipit: Emerde allows you to skip to the next merge with the |
67 |
~> > SIGINT signal or by pressing CTRL+c. |
68 |
~> |
69 |
~> This probably isn't a good idea. It's liable to break 'automatic' |
70 |
~> configurations that the ebuild expects to be satisfied in a |
71 |
~> particular way. Do you use this often? |
72 |
|
73 |
I know, it can't be used if a dependece being processed is a must, but |
74 |
it's very usefull in some case. For example where you are processing a |
75 |
list of 50 pkgs without doing -u, you are in the middle of the list and |
76 |
you want to skip the current pkg. |
77 |
|
78 |
~> > Compilation resume: Emerde resumes an interrupted or aborted |
79 |
~> > compilation without rebuild the pkg and |
80 |
~> > restart the compilation. |
81 |
~> |
82 |
~> I commented on this elsewhere. |
83 |
|
84 |
so? what's the response? |
85 |
I find it very useful, expecially when I merge a big pkg (xfree). |
86 |
|
87 |
~> > LAN-sync: The syncing of the portage can be done using another |
88 |
~> > machine that had already done it. See ACTION:sync in |
89 |
~> > the emerge(1) man page. |
90 |
~> |
91 |
~> You can share your portage tree via NFS and 'emerge metadata'. |
92 |
~> What does this gain you beyond that? |
93 |
|
94 |
it's cool ;) You don't have to use NFS, but only your shell account. |
95 |
It might be more comfortable. |
96 |
that's all. |
97 |
|
98 |
~> > --searchcontents: Emerde matches the search string against the |
99 |
~> > contents field. The pkg's contents field |
100 |
~> > contains a list of files and directories |
101 |
~> > installed. This option is useful to know to |
102 |
~> > what pkg a file or a directory belong. |
103 |
~> |
104 |
~> External apps do this for us now. See 'etcat -b' and 'qpkg -f'. |
105 |
|
106 |
it shouldn't be an external app feature. If I have the portage I want to |
107 |
use only it. |
108 |
|
109 |
~> > --showcontents: This option is the same as the --search one except |
110 |
~> > that it shows all the contents file of the searched |
111 |
~> > packages. |
112 |
~> |
113 |
~> What's the use/benefit of this? |
114 |
|
115 |
you haven't to find the relative category, |
116 |
cd /var/db/pkg/CAT/PKG, |
117 |
cat CONTENTS. |
118 |
|
119 |
It is extremely handy when you do it often. |
120 |
|
121 |
~> > --searchinstalled: It filter only installed pkg in the search result. |
122 |
~> |
123 |
~> The idea is good. The number of flags that could be used here |
124 |
~> might be a problem though. Perhaps it's time we support '=' in |
125 |
~> arguments: |
126 |
|
127 |
It isn't mentioned but each option added has its short mapping. |
128 |
--searchinstalled == -L |
129 |
--showcontents == -T |
130 |
--searchcontents == -N |
131 |
... |
132 |
|
133 |
~> --search=description,installed,available,masked |
134 |
~> or something to that effect might be more effective. |
135 |
yes, but the short mapping it's lazier for the laziest people. |
136 |
|
137 |
~> > buildworld: Rebuilds or updates the "world" file (/var/cache/edb/world) |
138 |
~> |
139 |
~> /usr/lib/portage/bin/regenworld |
140 |
okay. |
141 |
|
142 |
~> > pordbcheck: Checks if the programs listed in the portage's db are |
143 |
~> > really installed. |
144 |
~> |
145 |
~> I know that qpkg can do this. I'm not overly fond of qpkg as it's |
146 |
~> in bash and generally annoying to fix. |
147 |
|
148 |
I created pordbcheck because in other distro from Slackware, emerde |
149 |
installs a prebuild /var/db/pkg. |
150 |
|
151 |
btw, I'd like to do something to see all the installed pkg without |
152 |
syncing with any pkg's db, but to do this it's necessary have the list |
153 |
of files which each ebuild will generate... |
154 |
|
155 |
~> > initd-cfg: /etc/init.d editor. |
156 |
~> |
157 |
~> Explanation would be nice... What exactly is it editing? |
158 |
the initd-cfg it's like ufed; you get a list of the files in |
159 |
/etc/init.d. Then you check or decheck the one you want to be |
160 |
executable. |
161 |
I made you a screen shot: http://hinezumilabs.org/alpt/shot-initd.png |
162 |
|
163 |
I didn't mentioned that for emerde I use a rc.emerde to control all the |
164 |
scripts in /etc/init.d. In the style of: |
165 |
rc.emerde start (and it starts all the scripts executable in |
166 |
/etc/init.d) |
167 |
rc.emerde stop |
168 |
rc.emerde restart |
169 |
|
170 |
then there's Semerde.stop in rc.d/rc[60].d |
171 |
Semerde.stop does this: |
172 |
/etc/rc.d/rc.emerde stop |
173 |
rm -f /var/lib/init.d/started/* |
174 |
|
175 |
I didn't included them in the patch, I don't know if they can be useful |
176 |
for gentoo too. |
177 |
|
178 |
~> > If I can jump in the coding with you, I can live in peace |
179 |
~> > with emerde because all the changes will be already built |
180 |
~> > in and in the near future emerde won't be needed anymore. |
181 |
~> > The goal is to make the portage distro independent. |
182 |
~> |
183 |
~> I've got no problem with more help, but as with everyone else, |
184 |
~> we need to look over what you've done, and how you've done it |
185 |
~> before bringing you on board. |
186 |
|
187 |
roger that, sir. |
188 |
|
189 |
Best Regards |
190 |
-- |
191 |
:wq! |
192 |
"I don't know nothing" The One Who reached the Thinking Matter '.' |
193 |
|
194 |
[ Alpt --- Freaknet Medialab ] |
195 |
[ GPG Key ID 441CF0EE ] |
196 |
[ Key fingerprint = 8B02 26E8 831A 7BB9 81A9 5277 BFF8 037E 441C F0EE ] |