[CentOS] Centos 6.3 - which repos to use?

Thu Jan 31 04:46:43 UTC 2013
Bry8 Star <bry8star at yahoo.com>

* Another way to use multiple repo, other than what i
mentioned in previous email (different repo with different
priority# ), is to:
* Set all repo's base, main/default, stable, extra, etc
sections/channels on priority 10, and set all repo's other
channels/sections like "testing", (source, debuginfo, )
etc on priority 15:
repo#1 main-sections priority 10, others  15
repo#2 main-sections priority 10, others  15
repo#3 main-sections priority 10, others  15
repo#4 main-sections priority 10, others  15
* Use only RHEL compatible channels of any repo. (Avoid
fedora, generic, other-non-Rhel-distro, etc, unless you
are getting source/src.rpm/SRPM for rebuilding on CentOS ).
* Since they all has same priority, highest/last version
will get highest preference.
* run : yum groupinfo "Base"
It will show Mandatory, Default, etc app list for CentOS.
And run this before adding other repo, so that you get a
fresh list related only to CentOS.
* run : yum check-update
or, run : yum list updates
--disableplugin=filter-data,priorities
--disableexcludes=all --enablerepo=\*
(First try without --enablerepo=\* option )
* You will see, (or If you see,) any other 3d party repo
(other than CentOS ) app/libs, is/are trying to replace
base/core components from CentOS Mandatory, Default, etc
category areas, then put those pkgs/apps/libs in
"exclude=pkg-name ..", inside those 3rd party repo, so
that those pkgs do not replace base/core CentOS components.
* And, if you choose a very specific app/lib from a very
specific repo, for example, postgresql from Postgresql
repo, then see my previous email for "exclude" list, place
those postgresql related pkgs/items in all repo in their
all sections/channels other than Postgresql repo itself,
including CentOS repo in all sections/channels.
* Do not do actual update, unless you see or you are 100%
sure, shown repo and apps/libs/pkg are coming from the
repo/channel which you want and safe, if you are not sure,
ask for help here but search on google, read more docs,
manuals, and research little bit first.
* If you search with words like these : "pkgname error
problem" or "pkgname error problem centos", then you
should/will see what kind of error or problem may occur
with that pkg. Take steps so that no error occurs.

Please correct my mistake(s) on these simple (above )
suggestions, info.
Thanks,
-- Bright Star.



Received from Bry8 Star, on 2013-01-30 4:08 AM:
> Sorry, mentioned [pgdg92] twice. Pls ignore/delete
> the [pgdg92] that has priority 15.
> 
> 
> 
> Received from Bry8 Star, on 2013-01-28 10:16 AM:
>> For PostgreSQL, i've done these (shown below) at
>> initial/test stage: (pls DO NOT follow/copy it,
>> try to understand pattern and do what fits for
>> your case/need).
>>
>> From a VE instance inside HN:
>>
>> yum has these plugins:
>> fastestmirror, filter-data, keys,
>> list-data, merge-conf, presto, priorities, security, verify.
>>
>> # CentOS-Base.repo
>> [CentOS-base]
>> #<...snip...>
>> enabled=1
>> # i do not want below set from centos repo
>> # as these exacts are released by postgre devs
>> # but other postgre portions from others i do want
>> exclude=postgresql.* postgresql-contrib*
>> postgresql-debuginfo* postgresql-devel* postgresql-docs*
>> postgresql-jdbc.* postgresql-jdbc-debuginfo* postgresql-libs*
>> postgresql-odbc.i686 postgresql-odbc-debuginfo*
>> postgresql-plperl* postgresql-plpython* postgresql-pltcl*
>> postgresql-server* postgresql-tcl.i686 postgresql-tcl-debuginfo*
>> postgresql-test*
>> priority=1
>>
>> [CentOS-updates]
>> #<...snip...>
>> enabled=1
>> exclude=postgresql.*
>> postgresql-contrib* postgresql-debuginfo* postgresql-devel*
>> postgresql-docs* postgresql-jdbc.* postgresql-jdbc-debuginfo*
>> postgresql-libs* postgresql-odbc.i686 postgresql-odbc-debuginfo*
>> postgresql-plperl* postgresql-plpython* postgresql-pltcl*
>> postgresql-server* postgresql-tcl.i686 postgresql-tcl-debuginfo*
>> postgresql-test*
>> priority=1
>>
>> [CentOS-extras]
>> #<...snip...>
>> enabled=1
>> exclude=postgresql.*
>> postgresql-contrib* postgresql-debuginfo* postgresql-devel*
>> postgresql-docs* postgresql-jdbc.* postgresql-jdbc-debuginfo*
>> postgresql-libs* postgresql-odbc.i686 postgresql-odbc-debuginfo*
>> postgresql-plperl* postgresql-plpython* postgresql-pltcl*
>> postgresql-server* postgresql-tcl.i686 postgresql-tcl-debuginfo*
>> postgresql-test*
>> priority=1
>>
>> [CentOSplus]
>> #<...snip...>
>> enabled=1
>> exclude=kernel.*
>> kernel-firmware.* kernel-headers.* postgresql.* 
>> postgresql-contrib* postgresql-debuginfo* postgresql-devel* 
>> postgresql-docs* postgresql-jdbc.* postgresql-jdbc-debuginfo* 
>> postgresql-libs* postgresql-odbc.i686 postgresql-odbc-debuginfo* 
>> postgresql-plperl* postgresql-plpython* postgresql-pltcl* 
>> postgresql-server* postgresql-tcl.i686 postgresql-tcl-debuginfo* 
>> postgresql-test*
>> priority=1
>>
>> # pgdg92-centos.repo
>> [pgdg92]
>> #<...snip...>
>> enabled=1 
>> priority=10
>>
>> [pgdg92-source]
>> #<...snip...>
>> enabled=1
>> priority=10
>>
>> #scntflnx.repo
>> [SciLnx-6x-os]
>> #<...snip...>
>> enabled=1 
>> exclude=redhat-rpm-config.* postgresql.* postgresql-devel* 
>> postgresql-docs* postgresql-contrib* postgresql-jdbc.* 
>> postgresql-libs* postgresql-odbc* postgresql-plperl* 
>> postgresql-plpython* postgresql-pltcl* postgresql-server* 
>> postgresql-test*
>> priority=13
>>
>> [SciLnx-6x-updates-fastbugs]
>> #<...snip...>
>> enabled=1 
>> exclude=postgresql.* postgresql-devel* postgresql-docs* 
>> postgresql-contrib* postgresql-jdbc.* postgresql-libs* 
>> postgresql-odbc* postgresql-plperl* postgresql-plpython* 
>> postgresql-pltcl* postgresql-server* postgresql-test* 
>> priority=13
>>
>> [SciLnx-6x-updates-security]
>> #<...snip...>
>> enabled=1 
>> exclude=postgresql.* postgresql-devel* postgresql-docs* 
>> postgresql-contrib* postgresql-jdbc.* postgresql-libs* 
>> postgresql-odbc* postgresql-plperl* postgresql-plpython* 
>> postgresql-pltcl* postgresql-server* postgresql-test* 
>> priority=13
>>
>> [SciLnx-6x-debuginfo]
>> #<...snip...>
>> enabled=0
>> priority=13
>>
>> [SciLnx-6x-SRPMS]
>> #<...snip...>
>> enabled=1
>> priority=13
>>
>> [pgdg92]
>> #<...snip...>
>> enabled=1
>> priority=15
>>
>> ... other repo & distro ...
>>
>> In above way, i get most from PosteGre repo, and other postgre 
>> related side packages from other repos. if i were to place 
>> exclude=postgre* then all packages would have gotten excluded,
>> and then the extra postgre pkg which are not released by postgre,
>> would get hidden/excluded as well, though, i could have used this
>> approach for to get that:
>>
>> includepkgs=related-extra-postgre-pkg
>>
>> to get those. but then i would need specific name, but what if
>> new extra pkg that i dont know yet, is included, but since i have
>> not specified specifically, those would get hidden/excluded. (my
>> repo inquiries have shown, many other repo has at-least 1 to 3 or
>> some up to 6 extra postgre related tools which are not released 
>> by postgre devs themselves).
>>
>> Few patterns/logics which i like to follow:
>>
>> repo#1, rpm priority 1, srpm priority 50
>> repo#2, rpm priority 10, srpm priority 40
>> repo#3, rpm priority 15, srpm priority 30 
>> repo#4, rpm priority 20, srpm priority 20
>> ...
>>
>> Priority numbering pattern/logic:
>> Since i'm using centos as my
>> base, so various DISTRO & REPO rpm/binary which are closest to
>> CentOS & CentOS's source RHEL, those distro & repo will get
>> lowest priority# close to centos. i like to think/visualize in
>> this way ... a LIST from top to down, now number them from top to
>> bottom 1, 2, 3.. CentOS is at position 1, the top-most position. 
>> The lowest priority number, is at highest, upper position in the
>> list, is chosen first by yum/installer, and has highest
>> priority, if it(yum) wants to install something.
>>
>> my knol is this (i could be wrong):
>> RHEL based source ->
>> |-> CentOS base.
>> |-> Scientific Linux.
>> |-> Oracle Linux.
>> |-> ClearOS
>> Linux.
>>
>> (Fedora stable source -> RHEL -> RHEL source).
>>
>> EPEL has extra small tools/apps/libs for RHEL base apps/libs, and
>> also for RHEL based clone/derivative distros (few mentioned
>> above).
>> RPMforge/dag has many perl related stuff.
>> REMI has latest+stable PHP, MySql related stuff.
>> ELrepo is for hardware latest+stable drivers, kernels.
>> kdeRedhat is mostly for latest+stable KDE, QT,
>> samba, etc.
>> RPMFusion has closed-source-free, open-source-free,
>> non-free etc apps.
>> ATrpms has MythTV, Scientific Apps, etc.
>> LnxTechNet has audio,video,etc apps.
>>
>> And Fedora 17, 18 source/src/SRPMS are needed to be re-built on 
>> cnetos for those apps/libs, then those can be used with centos.
>>
>> Pkg "Excluding" pattern/logic:
>> (means, Getting specific pkg from Non-Centos repo):
>> Now for example if i want something specific 
>> called "pkg-set-3" from repo#3, then i would have to place those
>> specific pkgs inside the "exclude" line in repo(s) which are
>> listed at upper position on the repo-list, so that will be
>> repo#2, repo#1, so it will be:
>> # repo_1.repo file inside /etc/yum.repos.d
>> [repo_1]
>> exclude=pkg-set-3
>>
>> # repo_2.repo file inside /etc/yum.repos.d
>> [repo_2]
>> exclude=pkg-set-3
>> # in 'exclude' pkgs are 'space' separated
>>
>> Where & How to tweak & apply intelligence/knowledge and
>> experience and tricks , etc for repo-config ? i like to call it
>> HI (Human Intelligence), multiple (or one) developer's initial HI
>> becomes AI in a software.
>>
>> Each repo file will most likely have one or more section/channel
>> like below:
>> [section-or-channel-name]
>> config_options=values
>> ...
>>
>> in repo#2, the "pkg-set-3" can be placed inside all
>> section/channel of that repo file.
>>
>> For setting repo#1 (in our case, this is centos), we will have to
>> do these:
>>
>> set "enabled=" to 0 in all new repo, (except centos.repo), or, by
>> using yum command-line options instruct "yum" to disable all
>> repo, then instruct yum to enable only 
>> centos-base,centos-updates, etc repo only and then do "yum
>> check-update", like this:
>>
>> yum --disablerepo=\* --enablerepo=base,update,centosplus,extra 
>> check-update
>>
>> ... above command will show if centos repo has new updates (or
>> no updates) for your system.
>>
>> then set enabled=1 in those section/channel which you need for
>> the app/lib (pk-set-3) which you wanted.
>>
>> then run do "yum check-update". ... It will show list of app/lib
>> which will be updated if you were to run "yum update" or "yum
>> upgrade".
>>
>> Also see other helpful yum commands.
>>
>> Since these yum commands will show app/lib name and which repo
>> has it, observe carefully and make a hand-written list first (or
>> write on a text file on the client computer from where you're
>> connecting to your centos server which you are trying to
>> configure), a list, apps/libs which you need to exclude from
>> which repo.
>>
>> Other helpful YUM COMMANDS:
>>
>> yum list updates '*' --disableplugin=filter-data,priorities 
>> --disableexcludes=all
>>
>> ... should show what updates will be in queue if all "excludes"
>> are ignored.
>>
>> yum list all available 'pkg-name*' 
>> --disableplugin=filter-data,priorities --disableexcludes=all
>>
>> ... should show which of your repos has any package that are
>> close to the name "pkg-name" and will also show their version #
>> and what repo has it.
>>
>> Anytime you change any "somename.repo" file, then its better to
>> do first: yum check-update (but do not update, unless you are
>> sure which app is coming from which exact repo and if that is
>> what you want or not).
>>
>> Please ADD/POST MORE/YOUR HELPFUL COMMANDS, and tell us what it
>> does, where useful.
>>
>> Since source/SRPMS is/are needed when you/i need to make src.rpm,
>> so distro & repo closest to CentOS gets higher priority, usually
>> that is in reverse order than the RPM/binaries.
>>
>> Please correct my mistakes and add your responses, ideas, 
>> suggestions, logics, patterns, etc.
>>
>> Thanks in advance,
>>
>> -- Bright Star.
>>
>>
>>
>> Received from Johnny Hughes,, on 2013-01-28 12:50 AM:
>>> On 01/27/2013 06:20 PM, Rob Kampen wrote:
>>>> On 01/28/2013 04:43 AM, Mark LaPierre wrote:
>>>>> On 01/27/2013 08:18 AM, Bry8 Star wrote:
>>>>>> Hi Anthony, it would be really great, to see various
>>>>>> types of repo-configs on centos wiki, now if few
>>>>>> helpful& experienced users can grab this idea and come
>>>>>> forward and share their repo config (and their case/usage
>>>>>> scenario along with that), then that would be great.
>>>>>>
>>>>>> <snip>
>>>>>>
>>>>>> (Sorry for spelling&   grammar mistakes in previous and
>>>>>> in this posting, pls kindly disregard, its not a grammar 
>>>>>> discussion thread).
>>>>>>
>>>>>> -- Bry8Star.
>>>>>>
>>>>>>
>>>>>>
>>>>>> Received from Anthony K, on 2013-01-27 2:48 AM:
>>>>>>> On 26/01/13 14:59, Bry8 Star wrote:
>>>>>>>> CentOS webpage/site should also show to all users,
>>>>>>>> some example of using multiple repos and how to
>>>>>>>> implement effective includepkgs, exclude, priority
>>>>>>>> etc directives properly for some certain last&
>>>>>>>> STABLE app(s) (which is by default not in CentOS), so
>>>>>>>> that others can understand the pattern, or have a
>>>>>>>> pointer for them. Just mentioning about, that, there
>>>>>>>> is such things called "includepkgs=...",
>>>>>>>> "exclude=..." ad now go do it yourself (and sorry no
>>>>>>>> example), obviously does not help that much to users,
>>>>>>>> and its CentOS's loss as well, users go away to other
>>>>>>>> distros, and ultimately many of them are lost in the
>>>>>>>> jungle. -- Bright Star (Bry8Star).
>>>>>>> But you appear to be missing the "C" part in CentOS
>>>>>>> (or Community Enterprise OS).  If you can contribute to
>>>>>>> the Wiki, then the immediate problem is solved in that
>>>>>>> such threads can be pointed to the Wiki and slows the
>>>>>>> growth of my CentOS list folder!
>>>>>>>
>>>>>>> Frankly, if you have a good point to make that would 
>>>>>>> benefit the masses and you have spare time, then it's 
>>>>>>> best to create a Wiki page for it.
>>>>>>>
>>>>>>> Cheers, ak.
>>>>>>>
>>>>> There is already a fine page on this subject on the wiki.
>>>>>
>>>>> http://wiki.centos.org/AdditionalResources/Repositories
>>>>>
>>>> The point being made is that various people have the
>>>> knowledge and experience to advise a startup setting for
>>>> priority= for each repo I know that what I'm using has caused
>>>> conflicts that have been quite time consuming to resolve -
>>>> what works for others would be most helpful I do recognise
>>>> that this will vary depending upon what tools are required
>>>> but as a start: 1. developer workstation - what repos and
>>>> what priority 2. LAMP server - probably just CentOS repos and
>>>> something which deals with later php / perl / ruby 3. web /
>>>> internet workstation - needs audio and video stuff working
>>>> just my thoughts for starters.
>>>
>>> That totally depends on what you need to install and what repo
>>> it is in.  Since 3rd party repos are constantly adding new
>>> packages that they did not have last week, it is impossible to
>>> say what would be the proper priorities.
>>>
>>> I already posted what I personally do, which is:
>>>
>>> Install CentOS and set Base, updates, extras, and fasttrack to
>>> a Priority=1
>>>
>>> I usually do not need to enable centosplus, but if I do, I set
>>> it to Priority=2 and I put "excludes=<pkg_names>" in the
>>> Priority=1 repos for the packages I want let CentOS plus
>>> replace in those repos.
>>>
>>> I then normally add EPEL and set the Priority=10 for that.
>>>
>>> Hopefully, that is all I need to add.
>>>
>>> If I have to add any more repositories, first make sure my 
>>> packages are currently all updated by doing a yum upgrade.
>>> Then I add the new repos one at a time and I make them
>>> Priority=10 (the same as EPEL) ... and after I add them , i do
>>> a "yum update".  If it tries to update, I look at the packages
>>> and decide if I am going to allow the update or not ... if I am
>>> ok to do the updates, then I do them and make sure it works.
>>> Then I would install the packages I need from that repo.  Then
>>> I would add the next new repo till I get to the end.
>>>
>>> The best scenario is that all your 3rd party repos can
>>> co-exist at the same Priority setting and that is where I start
>>> (at Priority=10) ... and if something does not work, I
>>> troubleshoot it and take individual action.
>>>
>>> Each individual machine is going to require a unique and
>>> separate group of settings based on what you want to install
>>> ... which is why there is no official recommendations.
>>>
>>> I personally am using the following repos right now on my main 
>>> Desktop, which is CentOS-6.3:
>>>
>>> adobe-linux-x86_64 |  951 B     00:00 base | 3.7 kB     00:00
>>> cr | 3.0 kB     00:00 elrepo | 1.9 kB     00:00 elrepo-extras |
>>> 1.9 kB     00:00 extras | 3.5 kB     00:00 fasttrack | 3.5 kB
>>> 00:00 google-chrome |  951 B     00:00 google-musicmanager |
>>> 951 B     00:00 livna | 1.3 kB     00:00 nux-dextop | 2.7 kB
>>> 00:00 rpmforge | 1.9 kB     00:00 updates | 3.5 kB     00:00
>>>
>>> All of the secondary repos are set to the same priorities and 
>>> everything seems to work.
>>>
>>> Right now I have an "exclude=wxGtk*" for rpmforge for some 
>>> reason. And an "exclude=nx freenx*" for Nux! repo.
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> CentOS mailing
>>> list CentOS at centos.org 
>>> http://lists.centos.org/mailman/listinfo/centos
>>>
>>
>>
>>
>> _______________________________________________
>> CentOS mailing
>> list CentOS at centos.org 
>> http://lists.centos.org/mailman/listinfo/centos
>>
> 
> 
> 
> _______________________________________________
> CentOS mailing list
> CentOS at centos.org
> http://lists.centos.org/mailman/listinfo/centos
> 

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: OpenPGP digital signature
URL: <http://lists.centos.org/pipermail/centos/attachments/20130131/0503a929/attachment-0004.sig>