From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1RbAfl-0000Eg-Qe for garchives@archives.gentoo.org; Thu, 15 Dec 2011 12:44:31 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 7A96F21C20E; Thu, 15 Dec 2011 12:44:11 +0000 (UTC) Received: from mail-ey0-f181.google.com (mail-ey0-f181.google.com [209.85.215.181]) by pigeon.gentoo.org (Postfix) with ESMTP id 9994521C207 for ; Thu, 15 Dec 2011 12:43:27 +0000 (UTC) Received: by eaaj12 with SMTP id j12so2146610eaa.40 for ; Thu, 15 Dec 2011 04:43:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; bh=vsHfq3RbC6pjIDuJkpuvcltODNZ7AUbIkanQHMzTp+o=; b=jBhJmQp3XDdx+T++hNwmMMBHg80h1wKp9RheqhftXFoDSw35CBEjJCY6TwcXF6UnIJ z8cx4ag5A6Ik5Tb/fJFE7jtL99gwb94vffbtZ7TAhg6/dUocuNjSRGnxHOSHEBMzoffC ht6TVChweTP6ht3WXdqsR4KA9FoT2pPMENEi4= Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org MIME-Version: 1.0 Received: by 10.204.152.27 with SMTP id e27mr816571bkw.45.1323953006771; Thu, 15 Dec 2011 04:43:26 -0800 (PST) Sender: freemanrich@gmail.com Received: by 10.204.121.2 with HTTP; Thu, 15 Dec 2011 04:43:26 -0800 (PST) In-Reply-To: References: <9778031.578.1323897944936.JavaMail.geo-discussion-forums@vbxw7> <201112141858.17365.vapier@gentoo.org> Date: Thu, 15 Dec 2011 07:43:26 -0500 X-Google-Sender-Auth: NsIV6zwyzJKr5MLeiBst8rIJwIo Message-ID: Subject: Re: [gentoo-dev] Six month major project on Gentoo From: Rich Freeman To: gentoo-dev@lists.gentoo.org Cc: Alec Warner , linux.gentoo.dev@googlegroups.com Content-Type: text/plain; charset=ISO-8859-1 X-Archives-Salt: 88d968c3-9128-4af6-906a-562247493e73 X-Archives-Hash: 82a3c543845c8b6ac0339162da478702 On Thu, Dec 15, 2011 at 12:39 AM, Nirbheek Chauhan wrote: > Nevertheless, the basic bug is about changing the distfile repository > format in such a way that a single repo can contain several distfiles > built with differing build conditions. Putting metadata in the > filename is only one way of ensuring that. Well, having the filename vary when the metadata changes is the only way of ensuring that. Putting the metadata in the filename is just one of many ways to make the filename vary. Another solution (which I can already sense the objections to), would be to content-hash the files and use that as the filename. Then use indexes to point to the files. You could use symlink indexes to point to the files so that superficially it looks the same as it does now for the last version emerged. Then people looking for a particular set of metadata could use more detailed indexes to find the right file. Portage could look for an exact match when trying to merge a binpkg since searching indexes is a trivial problem. The indexes could be anything from text files to binary files to databases to a couple of directory trees full of symlinks (like /dev/disk/by-*). The symlinks could get tricky with all the metadata - it might make more sense to just keep it simple and use something more like a database for the full details and symlinks for the basics. There are countless variations on this as well - like sticking a copy of the environment for each package in a separate text file with the same base name so that it is easy to grep/search/etc. You can also make it more user-friendly by keeping the PF in the filename followed by the hash - like gvim-1.23-r1-723ba298d92f. In such a case you probably don't even need to index the PFs. Rich