From mboxrd@z Thu Jan  1 00:00:00 1970
Received: from lists.gentoo.org ([140.105.134.102] helo=robin.gentoo.org)
	by nuthatch.gentoo.org with esmtp (Exim 4.54)
	id 1FJ8RH-0003us-44
	for garchives@archives.gentoo.org; Tue, 14 Mar 2006 12:15:48 +0000
Received: from robin.gentoo.org (localhost [127.0.0.1])
	by robin.gentoo.org (8.13.5.20060308/8.13.5) with SMTP id k2ECEWdP010565;
	Tue, 14 Mar 2006 12:14:32 GMT
Received: from nproxy.gmail.com (nproxy.gmail.com [64.233.182.193])
	by robin.gentoo.org (8.13.5.20060308/8.13.5) with ESMTP id k2ECEVoq022612
	for <gentoo-portage-dev@lists.gentoo.org>; Tue, 14 Mar 2006 12:14:31 GMT
Received: by nproxy.gmail.com with SMTP id c29so1079754nfb
        for <gentoo-portage-dev@lists.gentoo.org>; Tue, 14 Mar 2006 04:14:31 -0800 (PST)
DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws;
        s=beta; d=gmail.com;
        h=received:message-id:date:from:to:subject:in-reply-to:mime-version:content-type:references;
        b=ISPLAZoEXD9Rx9T9l8A1TCi2bmViFBnPJ4wVD5kkENkrFhmpm+wXF5AJNOUg9tvnpwtXxPbYetmNei0mM2HWADYGR8dD3rzfQEXADost81C8OzbQ24hQSHiLSmnEiC9Md95mIJ0+NJMCw++OD39ZGVOkiIhleMxllce5JdoouXw=
Received: by 10.49.75.12 with SMTP id c12mr31196nfl;
        Tue, 14 Mar 2006 04:14:31 -0800 (PST)
Received: by 10.49.29.4 with HTTP; Tue, 14 Mar 2006 04:14:31 -0800 (PST)
Message-ID: <cea53e3c0603140414o705db70dt@mail.gmail.com>
Date: Tue, 14 Mar 2006 14:14:31 +0200
From: tvali <qtvali@gmail.com>
To: gentoo-portage-dev@lists.gentoo.org
Subject: Re: [gentoo-portage-dev] Few things, which imho would make portage better
In-Reply-To: <cea53e3c0603140353o7f85f16bx@mail.gmail.com>
Precedence: bulk
List-Post: <mailto:gentoo-portage-dev@lists.gentoo.org>
List-Help: <mailto:gentoo-portage-dev+help@gentoo.org>
List-Unsubscribe: <mailto:gentoo-portage-dev+unsubscribe@gentoo.org>
List-Subscribe: <mailto:gentoo-portage-dev+subscribe@gentoo.org>
List-Id: Gentoo Linux mail <gentoo-portage-dev.gentoo.org>
X-BeenThere: gentoo-portage-dev@gentoo.org
Reply-to: gentoo-portage-dev@lists.gentoo.org
MIME-Version: 1.0
Content-Type: multipart/alternative; 
	boundary="----=_Part_15775_15040931.1142338471246"
References: <cea53e3c0603140302g4df4c72cp@mail.gmail.com>
	 <4416A4C1.6090903@gentoo.org>
	 <cea53e3c0603140324k691219cbo@mail.gmail.com>
	 <cea53e3c0603140353o7f85f16bx@mail.gmail.com>
X-Archives-Salt: 61c0c114-3902-4528-b828-66be1988dfcc
X-Archives-Hash: e407ad5ba58c04fe56dc9b2c4c74c592

------=_Part_15775_15040931.1142338471246
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

Another place, where it would be good, is that it could interact well with
GUI and it's Apply button.

Another thing, what would be imho improved, is the speed of following
functions:
* emerge -s, emerge -S
They should be cached somehow.

Also, i think that when speaking about *speed* of portage, which is imho
notably slow right now (speed of searching, building trees and so on),
sql-support should be considered. In /usr/portage/, i see many folders and
files, which tend to contain one or two words, lists of hashes and so on.
Actually i see relational database there. With many caches and other
optimizations it could be tuned fast, but having SQL doing all that, it
would be achieved very simply (maybe it would be a jump to have all linux
configurations in one SQL "filesystem"? ...ok, just fantasy:))

There are several small and simple SQL databases. With such tool, big parts
of portage become unnessecary, but it's speed will become much faster. This
should be optional if one uses some tiny sql, mysql or big clustered sql
with nas and load-balancer, but by default some tiny version of SQL should
be built.

Also, i currently dont see a possibility to see dependency tree of installe=
d
package.

2006/3/14, tvali <qtvali@gmail.com>:
>
> I did think about some priorities too, so that it could be perfect for me=
.
>
> It should be possible to add package with a priority. I will give you an
> use case and explanation how i would use portage.
>
> emerge --justadd kdebase-meta kicker --priority 10
> emerge --justadd kdenetwork-meta kdeutils-meta kdeadmin-meta --priority 9
> emerge --justadd kdeedu-meta kdetoys-meta kdegames-meta kdeartwork-meta
> --priority 1
> emerge --justadd koffice-meta kdegraphics-meta kdemultimedia-meta
> --priority 5
> emerge --justadd kdewebdev-meta kdevelop htmltidy kompare cervisia
> --priority 7
> emerge --justadd  kdepim-meta --priority 3
> emerge --justadd kdeaddons-meta kde-meta --priority 20
> emerge --changepriority kdeaddons-meta kde-meta --priority 0
>
> Now, when i run emerge --update, it should:
>
> * Sort packages in such order that packages with highest priority would b=
e
> installed as soon as possible
> * Start installing
> * If something goes wrong, then skip this package and all, which depend o=
n
> it. This should be optional, if those, which dont depend on it, but are
> needed by same package, will stay in their positions (go to end of same
> priority packages) or go to end.
>
> When i need to use my computer and need much resources, i will press
> ctrl-c, use it, then start (continue) emerge --update.
>
> 2006/3/14, tvali <qtvali@gmail.com>:
> >
> > 2006/3/14, Simon Stelling <blubb@gentoo.org>:
> > >
> > > tvali wrote:
> > > > * Add package to "world" checking all dependencies, but not emergin=
g
> > > > * Remove package from "world" without unmerging
> > >
> > > Uhm, why would you want that?
> > >
> >
> > On my computer, building takes several hours on some packages. I have
> > used it in such way that it builds in several windows on the same time,=
 but
> > i guess that that's not at all the best practice, especially with some
> > combinations of packages. So i would like to add all packages, seeing a=
ll
> > blocks and inter dependencies, then start building when ready (and go o=
ut of
> > home, when it builds, and be sure that it will do it's best when i'm aw=
ay).
> >
> > > * Save all important messages into file instead of beeping (i may be
> > > away
> > > > from home); optionally replay them at end of update
> > >
> > > elog can do this.
> >
> >
> > Will check out.
> >
> > > * When updating or installing new package, if something goes wrong,
> > > still
> > > > emerge other packages, which havent failed packages as dependencies
> > > -- in my
> > > > case, for example, when i do --update, for example, then the fact
> > > that
> > > > update of first package fails does not definitely mean that i dont
> > > want to
> > > > update others
> > >
> > > --resume
> >
> >
> > I know --resume, but that's not what i meant.
> >
> > Imagine the situation:
> > emerge -p package1 package2
> >
> > part1 (needed by package1)
> > part2 (needed by part3)
> > part3 (needed by package2)
> > part4 (needed by package2)
> > part5 (needed by both package1 and package2)
> > package1
> > package2
> >
> > now i start "emerge package1 package2" and go to work (or sleep or part=
y
> > or sauna).
> >
> > part2 fails -- some bug or misconfiguration.
> >
> > currently it means that when i came back home, i see that part1 is
> > built, but nothing more and 4-5 hours are actually just wasted.
> >
> > There should be a way to have all those built when i came home:
> >
> > part1 (needed by package1)
> > part4 (needed by package2)
> > part5 (needed by both package1 and package2)
> > package1
> >
> > There should be an error message listing all others. Also, i would add
> > them to world and then emerge so that --update would try to emerge them
> > again, asking me about all previously failed packages when i start it, =
if i
> > want to retry this time (yes, no, all, none).
> >
> > --
> > > Kind Regards,
> > >
> > > Simon Stelling
> > > Gentoo/AMD64 Developer
> > > --
> > > gentoo-portage-dev@gentoo.org mailing list
> > >
> > >
> >
> >
> > --
> > tvali
> > (e-mail: " qtvali@gmail.com"; msn: " qtvali@gmail.com";
> > icq: "317-492-912")
> >
> > =DChe eesti internetifirma lehel kohtasin tsitaati:
> > If you don't do it excellently, dont do it at all. Because if it's not
> > excellent, it won't be profitable or fun, and if you're not in business=
 for
> > fun or profit, what the hell are you doing here?
> > Robert Townsend
> >
>
>
>
> --
> tvali
> (e-mail: "qtvali@gmail.com"; msn: "qtvali@gmail.com";
> icq: "317-492-912")
>
> =DChe eesti internetifirma lehel kohtasin tsitaati:
> If you don't do it excellently, dont do it at all. Because if it's not
> excellent, it won't be profitable or fun, and if you're not in business f=
or
> fun or profit, what the hell are you doing here?
> Robert Townsend
>



--
tvali
(e-mail: "qtvali@gmail.com"; msn: "qtvali@gmail.com";
icq: "317-492-912")

=DChe eesti internetifirma lehel kohtasin tsitaati:
If you don't do it excellently, dont do it at all. Because if it's not
excellent, it won't be profitable or fun, and if you're not in business for
fun or profit, what the hell are you doing here?
Robert Townsend

------=_Part_15775_15040931.1142338471246
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

Another place, where it would be good, is that it could interact well with =
GUI and it's Apply button.<br>
<br>
Another thing, what would be imho improved, is the speed of following funct=
ions:<br>
* emerge -s, emerge -S<br>
They should be cached somehow.<br>
<br>
Also, i think that when speaking about *speed* of portage, which is
imho notably slow right now (speed of searching, building trees and so
on), sql-support should be considered. In /usr/portage/, i see many
folders and files, which tend to contain one or two words, lists of
hashes and so on. Actually i see relational database there. With many
caches and other optimizations it could be tuned fast, but having SQL
doing all that, it would be achieved very simply (maybe it would be a
jump to have all linux configurations in one SQL &quot;filesystem&quot;? ..=
.ok,
just fantasy:))<br>
<br>
There are several small and simple SQL databases. With such tool, big
parts of portage become unnessecary, but it's speed will become much
faster. This should be optional if one uses some tiny sql, mysql or big
clustered sql with nas and load-balancer, but by default some tiny
version of SQL should be built.<br>
<br>
Also, i currently dont see a possibility to see dependency tree of installe=
d package.<br><br><div><span class=3D"gmail_quote">2006/3/14, tvali &lt;<a =
href=3D"mailto:qtvali@gmail.com">qtvali@gmail.com</a>&gt;:</span><blockquot=
e class=3D"gmail_quote" style=3D"border-left: 1px solid rgb(204, 204, 204);=
 margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
I did think about some priorities too, so that it could be perfect for me.<=
br>
<br>
It should be possible to add package with a priority. I will give you an us=
e case and explanation how i would use portage.<br>
<br>
emerge --justadd kdebase-meta kicker --priority 10<br>
emerge --justadd kdenetwork-meta kdeutils-meta kdeadmin-meta --priority 9<b=
r>
emerge --justadd kdeedu-meta kdetoys-meta kdegames-meta kdeartwork-meta --p=
riority 1<br>
emerge --justadd koffice-meta kdegraphics-meta kdemultimedia-meta --priorit=
y 5<br>
emerge --justadd kdewebdev-meta kdevelop htmltidy kompare cervisia --priori=
ty 7<br>
emerge --justadd&nbsp; kdepim-meta --priority 3<br>
emerge --justadd kdeaddons-meta kde-meta --priority 20<br>
emerge --changepriority kdeaddons-meta kde-meta --priority 0<br>
<br>
Now, when i run emerge --update, it should:<br>
<br>
* Sort packages in such order that packages with highest priority would be =
installed as soon as possible<br>
* Start installing<br>
* If something goes wrong, then skip this package and all, which depend
on it. This should be optional, if those, which dont depend on it, but
are needed by same package, will stay in their positions (go to end of
same priority packages) or go to end.<br>
<br>
When i need to use my computer and need much resources, i will press ctrl-c=
, use it, then start (continue) emerge --update.<br>
<br>
<div><span class=3D"gmail_quote">2006/3/14, tvali &lt;<a href=3D"mailto:qtv=
ali@gmail.com" target=3D"_blank" onclick=3D"return top.js.OpenExtLink(windo=
w,event,this)">qtvali@gmail.com</a>&gt;:</span><div><span class=3D"e" id=3D=
"q_109f89a3053b45f9_1">
<blockquote class=3D"gmail_quote" style=3D"border-left: 1px solid rgb(204, =
204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
2006/3/14, Simon Stelling &lt;<a href=3D"mailto:blubb@gentoo.org" target=3D=
"_blank" onclick=3D"return top.js.OpenExtLink(window,event,this)">blubb@gen=
too.org</a>&gt;:<div><span><span class=3D"gmail_quote"></span><blockquote c=
lass=3D"gmail_quote" style=3D"border-left: 1px solid rgb(204, 204, 204); ma=
rgin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">


tvali wrote:<br>&gt; * Add package to &quot;world&quot; checking all depend=
encies, but not emerging<br>&gt; * Remove package from &quot;world&quot; wi=
thout unmerging<br><br>Uhm, why would you want that?<br>
</blockquote></span><div><br>
On my computer, building takes several hours on some packages. I have
used it in such way that it builds in several windows on the same time,
but i guess that that's not at all the best practice, especially with
some combinations of packages. So i would like to add all packages,
seeing all blocks and inter dependencies, then start building when
ready (and go out of home, when it builds, and be sure that it will do
it's best when i'm away).<br>
<br>
</div><span><blockquote class=3D"gmail_quote" style=3D"border-left: 1px sol=
id rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">&gt; =
* Save all important messages into file instead of beeping (i may be away
<br>&gt; from home); optionally replay them at end of update
<br><br>elog can do this.</blockquote></span><div><br>
Will check out.<br>
<br>
</div><span><blockquote class=3D"gmail_quote" style=3D"border-left: 1px sol=
id rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">&gt; =
* When updating or installing new package, if something goes wrong, still
<br>&gt; emerge other packages, which havent failed packages as dependencie=
s -- in my
<br>&gt; case, for example, when i do --update, for example, then the fact =
that<br>&gt; update of first package fails does not definitely mean that i =
dont want to<br>&gt; update others<br><br>--resume</blockquote></span>

<div><br>

I know --resume, but that's not what i meant.<br>
<br>
Imagine the situation:<br>
emerge -p package1 package2<br>
<br>
part1 (needed by package1)<br>
part2 (needed by part3)<br>
part3 (needed by package2)<br>
part4 (needed by package2)<br>
part5 (needed by both package1 and package2)<br>
package1<br>
package2<br>
</div><br>
now i start &quot;emerge package1 package2&quot; and go to work (or sleep o=
r party or sauna).<br>
<br>
part2 fails -- some bug or misconfiguration.<br>
<br>
currently it means that when i came back home, i see that part1 is
built, but nothing more and 4-5 hours are actually just wasted.<br>
<br>
There should be a way to have all those built when i came home:<br>
<br>
part1 (needed by package1)<br>
part4 (needed by package2)<br>

part5 (needed by both package1 and package2)<br>

package1<br>
<br>
There should be an error message listing all others. Also, i would add
them to world and then emerge so that --update would try to emerge them
again, asking me about all previously failed packages when i start it,
if i want to retry this time (yes, no, all, none).<br>
<br><blockquote class=3D"gmail_quote" style=3D"border-left: 1px solid rgb(2=
04, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">--<span><br>K=
ind Regards,<br><br>Simon Stelling<br>Gentoo/AMD64 Developer<br>
--<br><a href=3D"mailto:gentoo-portage-dev@gentoo.org" target=3D"_blank" on=
click=3D"return top.js.OpenExtLink(window,event,this)">
gentoo-portage-dev@gentoo.org</a> mailing list<br><br></span></blockquote><=
/div><br><br clear=3D"all"><div><span><br>-- <br>tvali<br>(e-mail: &quot;<a=
 href=3D"mailto:qtvali@gmail.com" target=3D"_blank" onclick=3D"return top.j=
s.OpenExtLink(window,event,this)">

qtvali@gmail.com</a>&quot;; msn: &quot;<a href=3D"mailto:qtvali@gmail.com" =
target=3D"_blank" onclick=3D"return top.js.OpenExtLink(window,event,this)">
qtvali@gmail.com</a>&quot;;<br>icq: &quot;317-492-912&quot;)<br><br>=DChe e=
esti internetifirma lehel kohtasin tsitaati:<br>If
you don't do it excellently, dont do it at all. Because if it's not
excellent, it won't be profitable or fun, and if you're not in business
for fun or profit, what the hell are you doing here?<br>Robert Townsend

</span></div></blockquote></span></div></div><div><span class=3D"e" id=3D"q=
_109f89a3053b45f9_3"><br><br clear=3D"all"><br>-- <br>tvali<br>(e-mail: &qu=
ot;<a href=3D"mailto:qtvali@gmail.com" target=3D"_blank" onclick=3D"return =
top.js.OpenExtLink(window,event,this)">
qtvali@gmail.com</a>&quot;; msn: &quot;<a href=3D"mailto:qtvali@gmail.com" =
target=3D"_blank" onclick=3D"return top.js.OpenExtLink(window,event,this)">=
qtvali@gmail.com</a>&quot;;
<br>icq: &quot;317-492-912&quot;)<br><br>=DChe eesti internetifirma lehel k=
ohtasin tsitaati:<br>If
you don't do it excellently, dont do it at all. Because if it's not
excellent, it won't be profitable or fun, and if you're not in business
for fun or profit, what the hell are you doing here?<br>Robert Townsend

</span></div></blockquote></div><br><br clear=3D"all"><br>-- <br>tvali<br>(=
e-mail: &quot;<a href=3D"mailto:qtvali@gmail.com">qtvali@gmail.com</a>&quot=
;; msn: &quot;<a href=3D"mailto:qtvali@gmail.com">qtvali@gmail.com</a>&quot=
;;
<br>icq: &quot;317-492-912&quot;)<br><br>=DChe eesti internetifirma lehel k=
ohtasin tsitaati:<br>If
you don't do it excellently, dont do it at all. Because if it's not
excellent, it won't be profitable or fun, and if you're not in business
for fun or profit, what the hell are you doing here?<br>Robert Townsend

------=_Part_15775_15040931.1142338471246--
-- 
gentoo-portage-dev@gentoo.org mailing list