Building kicad with "sci-electronics/kicad **" in /etc/portage/package.keywords on a stable x86 system fails with: >>> Emerging (1 of 1) sci-electronics/kicad-99999999 >>> Failed to emerge sci-electronics/kicad-99999999, Log file: >>> '/var/log/portage/sci-electronics:kicad-99999999:20110311-193301.log' >>> Jobs: 0 of 1 complete, 1 failed Load avg: 0.35, 0.40, 0.42 * Package: sci-electronics/kicad-99999999 * Repository: gentoo * Maintainer: sci-electronics@gentoo.org * USE: dev-doc doc elibc_glibc examples kernel_linux python userland_GNU x86 * bzr branch start --> * repository: lp:~kicad-testing-committers/kicad/testing => /usr/portage/distfiles/bzr-src/kicad You have not informed bzr of your Launchpad ID, and you must do this to write to Launchpad or access private data. See "bzr help launchpad-login". Branched 2888 revision(s).ing revisions:Finishing stream:Done 72975/729752975 * exporting ... * revision 2888 is now in /var/tmp/portage/sci-electronics/kicad-99999999/work/kicad-99999999 * bzr pull start --> * repository: lp:~kicad-lib-committers/kicad/library You have not informed bzr of your Launchpad ID, and you must do this to write to Launchpad or access private data. See "bzr help launchpad-login". http://bazaar.launchpad.net/~kicad-lib-committers/kicad/library is permanently redirected to http://bazaar.launchpad.net/~kicad-lib-committers/kicad/library/changes You have not informed bzr of your Launchpad ID, and you must do this to write to Launchpad or access private data. See "bzr help launchpad-login". bzr: ERROR: These branches have diverged. Use the missing command to see how. Use the merge command to reconcile them. * ERROR: sci-electronics/kicad-99999999 failed: * bzr.eclass: can't pull from lp:~kicad-lib-committers/kicad/library * * Call stack: * ebuild.sh, line 56: Called src_unpack * environment, line 3501: Called bzr_fetch * environment, line 668: Called bzr_update 'lp:~kicad-lib-committers/kicad/library' '/usr/portage/distfiles/bzr-src/kicad' * environment, line 711: Called die * The specific snippet of code: * ${EBZR_UPDATE_CMD} ${EBZR_OPTIONS} "${repo_uri}" || die "${EBZR}: can't pull from ${repo_uri}"; Which seems to indicate a branch divergence. There have been many important bug-fixes since the last formal release, so the ability to do a bleeding-edge merge is useful.
Actually, the problem not in branch diverge, but in this part of code: # FIXME: we need to send patches for bzr.eclass, to avoid the weird # declarations of ${P} below. EBZR_REPO_URI="lp:~kicad-testing-committers/kicad/testing" bzr_fetch if ! use minimal; then EBZR_REPO_URI="lp:~kicad-lib-committers/kicad/library" \ export P="${P}/kicad-library" \ EBZR_CACHE_DIR="kicad-library" bzr_fetch fi Error message indicates that hack, described in FIXME, stopped working. === Called bzr_update 'lp:~kicad-lib-committers/kicad/library' '/usr/portage/distfiles/bzr-src/kicad' === it must be == bzr_update 'lp:~kicad-lib-committers/kicad/library' '/usr/portage/distfiles/bzr-src/kicad-library'
Porting the features from the previous kicad live ebuild using cvs to bzr required extensive modifications of bzr.eclass. I had almost finished doing that but due to a number of factors I wasn't able to commit my work and now the eclass has changed so much that it needs to be redone from scratch. In the meantime Rafael made a quick hack to keep it working and I will let him fix that. In the longer term, I will try to port my kicad.exlib from Exherbo to Gentoo because it works so much better. Just don't be in a hurry because it isn't trivial. If you feel like doing it, it's available at [1]. Denis. [1] https://github.com/Calchan/exheres/raw/bc2830ba5fb60dff4ef399680c1ebc331e0ce3e0/packages/sci-electronics/kicad/kicad.exlib
Created attachment 273857 [details, diff] patch to fix ebuild Oops! :) I think I fixed this bug. Here is the patch. It seems that everything work fine.
Is there any chance this could make its way into portage soon?
+ 24 May 2011; Rafael G. Martins <rafaelmartins@gentoo.org> + kicad-99999999.ebuild: + Fixed live ebuild. Thanks to Dmitry Olyenyov (bug #358459). +
Thank you, this works beautifully.