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 1FJ9vf-0008PH-T2 for garchives@archives.gentoo.org; Tue, 14 Mar 2006 13:51:16 +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 k2EDoJ0e010649; Tue, 14 Mar 2006 13:50:19 GMT Received: from nproxy.gmail.com (nproxy.gmail.com [64.233.182.197]) by robin.gentoo.org (8.13.5.20060308/8.13.5) with ESMTP id k2EDoIwr026864 for ; Tue, 14 Mar 2006 13:50:18 GMT Received: by nproxy.gmail.com with SMTP id a25so1092192nfc for ; Tue, 14 Mar 2006 05:50:18 -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:content-transfer-encoding:content-disposition:references; b=kP6vkiq/wgQsjoY6AvlUKKKXfO3Pyp2IvyGaXWNmSP9UEBP4lw2BTo/raH6/eUKRcu+9Nhr+vf/+A2ijWj9xooPCYTe8bzDBCo9u2HjXkgpfeWGkkLrZ7t49ssZtqruPJekZBXntNTr/TNWxTUYvE094rgwNQ6w6t1DaOBzGCg8= Received: by 10.48.48.14 with SMTP id v14mr261765nfv; Tue, 14 Mar 2006 05:50:18 -0800 (PST) Received: by 10.49.29.4 with HTTP; Tue, 14 Mar 2006 05:50:18 -0800 (PST) Message-ID: Date: Tue, 14 Mar 2006 15:50:18 +0200 From: tvali To: gentoo-portage-dev@lists.gentoo.org Subject: Re: [gentoo-portage-dev] Few things, which imho would make portage better In-Reply-To: Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-portage-dev@gentoo.org Reply-to: gentoo-portage-dev@lists.gentoo.org MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Disposition: inline References: <4416A4C1.6090903@gentoo.org> X-MIME-Autoconverted: from quoted-printable to 8bit by robin.gentoo.org id k2EDoIwr026864 Content-Transfer-Encoding: quoted-printable X-MIME-Autoconverted: from 8bit to quoted-printable by robin.gentoo.org id k2EDoJ1w010649 X-Archives-Salt: 8433ca6c-1958-4a7b-9198-df70d92ea500 X-Archives-Hash: 4c4ea09b187b73e333e8ccf7df492003 Another question now is about sync. I did read somewhere, that this is not good user behavior to sync more than once per day. I understand that as if this is a huge download even if there is nothing changed. Isnt it nice idea to have this database just optimized? I mean (assuming portage using SQL now) -- that would be really simple to log every change in portage tree as series of SQL queries, which would reproduce this change. There could be table, which contains two fields -- Id and query (for example -- in reality, it could be a bit more complex for whatever reason; datetime, for example -- or filename and it's content to support current portage filetree). If i do emerge --sync, then one query could be done, SELECT query FROM updates WHERE Id > LastDownloadedUpdateId ORDER BY Id, then run all queries. I guess that in such case, portage --sync would be faster and less server-expensive. I dont know about this cache it builds, but i suppose that this could be made faster, too :) Ok, i will work now a bit, but i hope you have time to explain to me, if something i tell here is stupid or not-so-important for whatever reason. 2006/3/14, tvali : > Thank you much! > > This is what i meant about searching :) Would it be now good to mix > this esearch code with emerge, then adding fields to db and making > emerge treebuilding fast, too? Or is there some utility to emerge, > which does all that? > > 2006/3/14, Devon Miller : > > Try "emerge esearch". Replace "emerge --sync" with "esync", "emerge -= s" with > > "esearch", and "emerge -S" with "esearch -S". > > After running "emerge --update ...", run "eupdatedb". > > > > As for dependency tree: "emerge --pretend --tree world" > > Or, to also check additional dependencies: "emerge --deep --pretend -= -tree > > world" > > And, if you want to see how *everything* relates: "emerge --deep --em= ptytree > > --pretend --tree" > > > > dcm > > > > > > > > On 3/14/06, tvali wrote: > > > > > > Another place, where it would be good, is that it could interact we= ll with > > GUI and it's Apply button. > > > > > > Another thing, what would be imho improved, is the speed of followi= ng > > 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 folder= s 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 l= inux > > configurations in one SQL "filesystem"? ...ok, just fantasy:)) > > > > > > There are several small and simple SQL databases. With such tool, b= ig > > 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 clust= ered > > sql with nas and load-balancer, but by default some tiny version of S= QL > > should be built. > > > > > > Also, i currently dont see a possibility to see dependency tree of > > installed package. > > > > > > > > > > > > 2006/3/14, tvali < qtvali@gmail.com>: > > > > I did think about some priorities too, so that it could be perfec= t 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 --pr= iority > > 9 > > > > emerge --justadd kdeedu-meta kdetoys-meta kdegames-meta kdeartwor= k-meta > > --priority 1 > > > > emerge --justadd koffice-meta kdegraphics-meta kdemultimedia-meta > > --priority 5 > > > > emerge --justadd kdewebdev-meta kdevelop htmltidy kompare cervisi= a > > --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 > > be installed as soon as possible > > > > * Start installing > > > > * 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, bu= t are > > needed by same package, will stay in their positions (go to end of sa= me > > priority packages) or go to end. > > > > > > > > When i need to use my computer and need much resources, i will pr= ess > > ctrl-c, use it, then start (continue) emerge --update. > > > > > > > > > > > > 2006/3/14, tvali : > > > > > > > > > 2006/3/14, Simon Stelling : > > > > > > > > > > > tvali wrote: > > > > > > > * Add package to "world" checking all dependencies, but not > > emerging > > > > > > > * 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 tim= e, but > > i guess that that's not at all the best practice, especially with som= e > > 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). > > > > > > > > > > > > > > > > > * 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 goe= s > > wrong, still > > > > > > > emerge other packages, which havent failed packages as > > dependencies -- in my > > > > > > > case, for example, when i do --update, for example, then th= e 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 > > party 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 wo= uld add > > them to world and then emerge so that --update would try to emerge th= em > > 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 i= t's not > > excellent, it won't be profitable or fun, and if you're not in busine= ss 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 busine= ss 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 busine= ss 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 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 for fun or profit, what the hell are you doing here? Robert Townsend --=20 gentoo-portage-dev@gentoo.org mailing list