On Fri, May 23, 2008 at 11:43 AM, Peter Nixon
When you put another project as a dependency of your project in the metadata it will allow your packages to build, but then when someone tries to use your repo to install your package those dependencies will not be supplied if they are needed as "Requires" forcing the user to go off in search of those dependencies too.
When you "link" a particular package into your project it is rebuilt which takes up resources on the Build Service but is usefull if you want one of IT'S dependencies to be supplied by a package in your project without touching its spec, or if you want to build for a target which is not enable in it's home project. Once built the package is uploaded to the mirrors which also takes up mirror resources, and it also will have a different build version number which means that you may (or may not) randomly upgrade existing packages of the same name on your users system..
When you "aggregate" a particular package into your project it is not rebuilt, but rather copied directly from its home project. It keeps the same version number, so when it is uploaded to mirrors it does take up resources on them but it will not replace the same package if already installed on a users system (from the parent project). This is the preferred and cleanest way of sucking in a few extra dependencies to your project.
Peter, Thanks for the very clear and helpful description. This description seems to be missing from the wiki, so I added it, under a new section titled "Terminology". Hopefully I didn't include any wrong information. I'd appreciate a review from the OBS experts (I'm cc'ing the OBS list): http://en.opensuse.org/Build_Service/Tutorial Thanks, -Archie -- Archie L. Cobbs --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org