Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 58571 - Manually maintaining a list of categories using RSYNC_EXCLUDEFROM is too tedious
Summary: Manually maintaining a list of categories using RSYNC_EXCLUDEFROM is too tedious
Status: RESOLVED DUPLICATE of bug 44526
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Enhancement/Feature Requests (show other bugs)
Hardware: All Linux
: High enhancement (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-07-27 11:13 UTC by Gavin
Modified: 2005-07-17 13:06 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Gavin 2004-07-27 11:13:22 UTC
I'm currently using RSYNC_EXCLUDEFROM in /etc/make.conf with a hand-edited list of patterns describing files that are irrelevant to my platform/config/needs/etc., to almost cut in half the number of files sync'd by 'emerge sync'.  I started by identifying numerous packages that required X.  I don't use X, so I listed these in my RSYNC_EXCLUDEFROM file.

Is there a better way of avoiding the wasted bandwidth incurred by emerge sync'ing without resorting to a manually maintained list referenced by RSYNC_EXCLUDEFROM?  If a mechanism for assigning multiple classifications (hereafter referred to as "dimensions"), instead of the 1 dimensional /usr/portage/<classification>, then an exclusion mechanism (similar to using RSYNC_EXCLUDEFROM) might simply list the "dimensions" that are irrelevant to a particular system, and safe to exclude when performing "emerge sync".

If every ebuild had one or more type/kind/purpose/etc. "dimension" classifications, then I could define combinations of "dimensions" with different update (emerge sync) priorities/frequencies, vastly reducing both bandwidth consumption and my time required to maintain this bandwidth reduction system for emerge sync's.  Obviously, such a system needs "smarts" to know what which ebuilds must be fetched, regardless of classification priorities (e.g. depends on which packages are already emerged and their current/new dependencies).

If I define /usr/portage/<categories> as a set of categorized ebuilds for various software "packages", then I can define "dimensions" as abstract groupings of existing Gentoo portage "<categories>".  Using this terminology, for the purposes of my prior suggestion/question regarding filtering out the "bloat" (unnecessary bandwidth consumed) during an "emerge sync", I further define the following as descriptions of candidate "dimensions":

o TYPE, as in "drivers-${TYPE}"
o "<categories>"
o requires X
o requires KDE
o requires Gnome
o requires "platform"
o requires a specific type of kernel (e.g. linux, freebsd, openbsd), or subtype (e.g. linux/mm)
.
.
o many other possibilities

I'm primarily interested in using Gentoo as a server platform.  Large portions of the portage tree might be irrelevant to those with various specialized purposes.  My hypothesis centers around the idea that "<categories>" form an inadequate set of "dimensions" by which users might utilize as criteria for exclusion during "emerge sync".  Furthermore, as more "<categories>" and ebuilds are added, the manual effort required to update a RSYNC_EXCLUDEFROM list rises along with the bandwidth consumed

Reproducible: Always
Steps to Reproduce:
1.
2.
3.
Comment 1 Rick Jenkins 2004-09-29 09:23:41 UTC
As a first and relatively simple step, when the reason for the sync is just a system update, an option to sync only packages in the "world" file and their dependencies would save a lot of time and bandwidth. Some simple invocation such as:

emerge sync world

would make it easy to use.
Comment 2 Brian Harring (RETIRED) gentoo-dev 2005-02-28 01:22:05 UTC

*** This bug has been marked as a duplicate of 44526 ***