app-text/texlive-2010 (bug 339098) will contain the BibLaTeX package, which recommends the Perl-based Biber (http://biblatex-biber.sourceforge.net/) over the traditional BibTeX tool. Biber's advantages in a nutshell: Unicode support, better scalability, XML import/export. Therefore, I suggest an ebuild dev-tex/biber.
Created attachment 255185 [details] biblatex-biber-0.6 ebuild biblatex-biber ebuild (version 0.6). It requires some perl modules not in the tree, which can be generated using g-cpan.
Since bug #376831 was fixed, biblatex-biber is no longer bundled with texlive-core-2011. I therefore wrote a new ebuild. Some remarks: - At the time of writing, 0.9.4 is the latest stable version but not compatible with texlive-2011. When I try to compile with 0.9.4 biber says: [..] WARN - Warning: Found biblatex control file version 1.5, expected version 1.6 [..] Use of uninitialized value $maxan in numeric gt (>) at /usr/lib64/perl5/vendor_perl/5.12.3/Biber.pm line 1306. Use of uninitialized value $visible_names_alpha in concatenation (.) or string at /usr/lib64/perl5/vendor_perl/5.12.3/Biber.pm line 1334. [..] Compilation of the latex-document does not work, (lua)latex aborts with several keyval errors. I therefore think 0.9.4 is no longer compatible, 0.9.3 works fine with my ebuild - biblatex-biber needs seven additional perl dependencies for which no ebuilds currently exist: + dev-perl/Config-AutoConf + dev-perl/ExtUtils-LibBuilder + dev-perl/File-Slurp-Unicode + dev-perl/List-AllUtils + dev-perl/Text-BibTeX + dev-perl/Unicode-Collate + dev-perl/XML-LibXML-Simple I have written these as well, you can find them in my personal overlay at https://github.com/cschwan/cschwan-overlay. If someone is interested, I can file bugs for these.
Created attachment 283529 [details] biblatex-biber 0.9.3 ebuild
One additional remark: I was not able to find out how to use the mirror:// syntax for sourceforge - everytime I tried it was fetching a development version. Maybe someone finds out how to do that.
TeXLive 2011 is in portage. Installed it, found biblatex, got excited, missed biber a lot! Please add biber. Biblatex + bibtex is like a car with a horse as an engine.
(In reply to comment #2) > - biblatex-biber needs seven additional perl dependencies for which no ebuilds > currently exist: > > + dev-perl/Config-AutoConf > + dev-perl/ExtUtils-LibBuilder > + dev-perl/File-Slurp-Unicode > + dev-perl/List-AllUtils > + dev-perl/Text-BibTeX > + dev-perl/Unicode-Collate > + dev-perl/XML-LibXML-Simple > yes! please! i'll need the perl team to add these packages before adding biber
OK, I filed a bug for every dependency; I also saw someone adding blockers for this bug.
This someone was myself - so sorry for the confusion; I added the necessary blockers.
Your 0.9.3 ebuild works fine for biblatex-biber-0.9.5. However, biblatex-1.6 is needed explicitly. (https://bugs.gentoo.org/show_bug.cgi?id=383613)
So you mean if I upgrade to 0.9.5 I will need biblatex as well?
(In reply to comment #10) > So you mean if I upgrade to 0.9.5 I will need biblatex as well? yes, biber-0.9.5 depends on >=dev-tex/biblatex-1.6
OK, I finally found some time to test it. Biblatex-biber-0.9.3 depends on biblatex-1.5 which is shipped with dev-texlive/texlive-bibtexextra-2011 and biblatex-biber-0.9.5 depends on dev-tex/biblatex-1.6, as you told me. Thank you very much! The following ebuild is updated accordingly and adds a new dependency on dev-perl/XML-LibXSLT which is needed in case one wants to use biber's --convert_control function.
Created attachment 289929 [details] updated ebuild for version 0.9.5
It should be possible to use biber with texlive-2010 now - I hope someone can verify that.
What is the status/progress on getting biber into Portage? I really want to remove bibtex from my life!
In the meantime 0.9.6, 0.9.7 and 0.9.8 were released. These require perl 5.14 which is currently marked testing; as soon as it goes unstable I am going to upload the latest release.
Any progress of getting this into portage?
Created attachment 308027 [details] updated ebuild for version 0.9.9 Hi, I created this ebuild from the earlier one and changed the depencies (some from the archlinux AUR) and some by reading the biber documentation. maybe some depencies are not realy needed. but it works on my machiene without any errors at configure and compile time. i even dont get any errors on calling it to create a bibliography
(In reply to comment #18) Thank you Michael and Christopher for providing these ebuilds. It seems to work fine with my TeX Live 2011 installation.
I tried to install biber-0.9.9 but was unable to find an ebuild for dev-perl/XML-Writer-String which is a dependency. I could neither find this in Bugzilla nor Google. Am I missing something obvious here?
(In reply to comment #20) > Am I missing something obvious here? cschwan-overlay, comment 2
Created attachment 310359 [details] XML-Writer-String Here is the ebuild for XML-Writer-String, which is a depency for biber 0.9.9
Comment on attachment 308027 [details] updated ebuild for version 0.9.9 ># Copyright 1999-2011 Gentoo Foundation ># Distributed under the terms of the GNU General Public License v2 ># $Header: $ > >EAPI="4" > >inherit perl-app > >DESCRIPTION="Biber is a BibTeX replacement for users of biblatex" >HOMEPAGE="http://biblatex-biber.sourceforge.net/" >SRC_URI="http://downloads.sourceforge.net/project/${PN}/${PN}/${PV}/${PN}.tar.gz -> ${P}.tar.gz" > >LICENSE="Artistic-2" >SLOT="0" >KEYWORDS="~amd64" > >RESTRICT="mirror" > >DEPEND=">=dev-lang/perl-5.14 > virtual/perl-Module-Build" >RDEPEND="dev-perl/config-general > dev-perl/Data-Dump > dev-perl/Data-Compare > dev-perl/Date-Simple > dev-perl/File-Slurp-Unicode > dev-perl/File-Which > dev-perl/IPC-Run3 > perl-core/IPC-Cmd > dev-perl/List-AllUtils > dev-perl/regexp-common > dev-perl/Log-Log4perl > dev-perl/Readonly > dev-perl/Readonly-XS > dev-perl/Unicode-String > dev-perl/XML-LibXML-Simple > dev-perl/XML-LibXSLT > dev-perl/libwww-perl > dev-perl/XML-Writer > >=dev-perl/Text-BibTeX-0.62 > >=dev-perl/Unicode-Collate-0.89 > >=dev-tex/biblatex-1.7" > >S="${WORKDIR}/${PN}-v${PV}" > >SRC_TEST="do"
this should work also
(In reply to comment #21) > (In reply to comment #20) > > Am I missing something obvious here? > > cschwan-overlay, comment 2 That overlay doesn't include 0.9.9.
No hope of 0.9.9 for x86?
Okay, the cschwan-overlay is hopeless, the biblatex-biber ebuild tries to pull all the dependencies from the main portage tree. (Thanks all the same, Christopher.) How far are we away from getting a functional ebuild for biber into the main tree? Biber is not a fringe package, lots of people use it...
(In reply to comment #27) > Okay, the cschwan-overlay is hopeless, the biblatex-biber ebuild tries to > pull all the dependencies from the main portage tree. (Thanks all the same, > Christopher.) I've put together the required ebuilds for biber 0.9.9 at my personal dumpspace at http://dzhus.org/hg/gentoo-overlay, you can plug it in and merge the fresh biber. `overlays` entry for layman is `http://dzhus.org/hg/gentoo-overlay/raw-file/tip/overlay.xml`
I checked the sources for biblatex-biber-0.9.9, and I cannot see why the following packages are listed as dependencies in the overlay's ebuild: dev-perl/config-general dev-perl/File-Which dev-perl/Unicode-String So maybe these dependencies can be removed? On the other hand, I found some dependencies which are missing: dev-perl/XML-LibXML virtual/perl-Digest-MD5 virtual/perl-Encode virtual/perl-File-Spec virtual/perl-File-Temp (Yes, XML-LibXML is an indirect dependency anyway, but it is also used directly by biblatex-biber-0.9.9. Moreover, the mentioned virtual packages are all satisfied in some version by perl-0.14.2, but it is probably cleaner to make this dependency explicit. Perhaps with these packages even perl-5.12.4 could be sufficient - I did not try this.)
Forgot to add: If dev-perl/XML-LibXSLT is really only needed for --convert_control, I suggest to make this dependency optional with a USE-Flag (perhaps USE=debug since --convert-control seems only useful for debugging - if at all.)
I think people now try to get biber 0.9.9 into the tree. I am fine with that, but it depends on >=perl-5.14. I did not follow the tracker bug 356171 for perl, does someone who did has an idea when we may expect it to get into ~arch?
(In reply to comment #31) > I think people now try to get biber 0.9.9 into the tree. I am fine with > that, but it depends on >=perl-5.14. I did not follow the tracker bug 356171 > for perl, does someone who did has an idea when we may expect it to get into > ~arch? perl 5.16 is in ~arch now.
(In reply to comment #32) > (In reply to comment #31) > > I think people now try to get biber 0.9.9 into the tree. I am fine with > > that, but it depends on >=perl-5.14. I did not follow the tracker bug 356171 > > for perl, does someone who did has an idea when we may expect it to get into > > ~arch? > > perl 5.16 is in ~arch now. Thats great! I will try to test it at the weekend.
Texlive-2012 is in the tree now. Therefore, biber needs to rdepend on || (>=dev-texlive/texlive-bibtexextra-2012 >=dev-tex/biblatex-1.7) instead of just biblatex. And, current version is now 1.0 by the way.
Created attachment 319858 [details] dev-tex/biber-1.1.ebuild Updated ebuild for v1.1
For those who did not look into the ebuild: The new biber also works with stable perl (5.14).
it'd be great to have biber in the tree but we are currently blocked because perl deps are not in the tree, can anyone go through the blocker bugs and see what needs to be done ?
Created attachment 319892 [details] dev-tex/biber-1.1.ebuild Biblatex got removed from dev-texlive/texlive-bibtexextra-2012 (see #428434), the || ( ... ) statement can be dropped.
(In reply to comment #36) > For those who did not look into the ebuild: The new biber also works with > stable perl (5.14). It works with 5.14, that's right. But 5.14 is not only not stable, it's even masked. Guess you mixed something up here... ;)
(In reply to comment #39) > (In reply to comment #36) > > For those who did not look into the ebuild: The new biber also works with > > stable perl (5.14). > > It works with 5.14, that's right. But 5.14 is not only not stable, it's even > masked. Guess you mixed something up here... ;) Err ... I upgraded from 5.12 to 5.16 and thought 5.14 was stable when I was finished :-/ Sorry for the confusion!
Until biber makes its way to the main portage tree, people who want to install it the easy way (TM) can also use my overlay at http://git.spheniscida.de/?p=spiderlay;a=summary . Here's the xml file for layman: http://git.spheniscida.de/?p=spiderlay;a=blob_plain;h=refs/tags/spiderlay-xml
This might be of use to you lynx, emerge =dev-perl/Gentoo-PerlMod-Version-0.5.0 gentoo-perlmod-version.pl 0.1 This will translate "upstreams" versions to normalised versions that gentoo can use consistently ( and what perl-herd will probably request / provide in terms of a packages version ) We use the normalised form in cat/pkg-v , and the upstream form in a MODULE_VERSION= ( ie: see dev-perl/Class-Load/Class-Load-0.200.0 for an example ) XML-Writer-String-0.1 -> XML-Writer-String-0.100.0 Business-ISSN-0.91 -> Business-ISSN-0.910.0 yes, this aught to be documented in the herd docs somewhere, just nobodys' had the tuits to =).
(In reply to comment #42) > ( ie: see dev-perl/Class-Load/Class-Load-0.200.0 for an example ) > > XML-Writer-String-0.1 -> XML-Writer-String-0.100.0 > Business-ISSN-0.91 -> Business-ISSN-0.910.0 > > yes, this aught to be documented in the herd docs somewhere, just nobodys' > had the tuits to =). Can you explain why this is done? Is it even correct? I mean, the version number 0.2 is clearly smaller than 0.11, however, according to your normailization example above, 0.2 would be normaled to 0.200.0 and 0.11 would be normalized to 0.110.0 - but 0.110.0 is smaller than 0.200.0.
(In reply to comment #43) > (In reply to comment #42) > > ( ie: see dev-perl/Class-Load/Class-Load-0.200.0 for an example ) > > > > XML-Writer-String-0.1 -> XML-Writer-String-0.100.0 > > Business-ISSN-0.91 -> Business-ISSN-0.910.0 > > > > yes, this aught to be documented in the herd docs somewhere, just nobodys' > > had the tuits to =). > > Can you explain why this is done? Is it even correct? > I mean, the version number 0.2 is clearly smaller than 0.11, however, > according to your normailization example above, 0.2 would be normaled to > 0.200.0 and 0.11 would be normalized to 0.110.0 - but 0.110.0 is smaller > than 0.200.0. No, not in Perl it is not. 0.2 is a decimal, 0.11 is a decimal. 0.20 > 0.11 . If you see 'v0.2' however, then thats equivalent to '0.002' in decimal, so 'v0.11 > v0.2' 0.2.0 and v0.2 are essentially both the same thing, they're both 0.002000 in decimal form. Versions are, needlessly complicated, enough there is a whole article on the mess: http://www.dagolden.com/index.php/369/version-numbers-should-be-boring/ This too both a) unifies all upstream versions into a singular scheme across all of portage. b) translates the numbers to be semantically the same in portage as they do upstream.
(In reply to comment #44) > Versions are, needlessly complicated, enough there is a whole article on the > mess: http://www.dagolden.com/index.php/369/version-numbers-should-be-boring/ Oh I see. Perl versions numbers (at least those for modules) are a mess. Thanks for the link.
(In reply to comment #42) > This might be of use to you lynx, Yes, it cleary is. Thanks for the tip! I updated the ebuilds in my overlay, but I hope I don't have to upload all these new ebuilds to the respective bugs?
Biber 1.2 is out. It still works with >=biblatex-1.1, so the ebuild doesn't need to be changed.
(In reply to comment #37) > it'd be great to have biber in the tree but we are currently blocked because > perl deps are not in the tree, can anyone go through the blocker bugs and > see what needs to be done ? Tove pushed some of the dependencies to the tree (thanks!), but there are still some left. Most of them (Business::ISBN, Mozilla::CA, XML::Writer::String) should be unproblematic. The deps of Text::BibTeX are already in perl-experimental, so that should be unproblematic, too. The only remaining problem is Unicode::Collate. It's also in perl-experimental (virtual/perl-Unicode-Collate & perl-core/Unicode-Collate), but it's hardmasked with the reason "experimental perl-core stuff". When everything is ready, I'd offer to proxy-maintain biber if no dev is willing to do that himself, so that shouldn't be a problem either.
On cygwin, they devliver a biber.exe which is a PAR binary, which mean that it contains a perl interpreter and all perl packages and native libraries that are needed to run biber. Now while that is a pretty crappy way of packaging biber (the executable is 14MB is size, and first time it is run, it unpacks itself to /tmp/..., the biber executable contaisn copies of some stuff which violates gentoo security guidelines), it works.
> The only remaining problem is Unicode::Collate. It's also in perl-experimental >(virtual/perl-Unicode-Collate & perl-core/Unicode-Collate), but it's hardmasked > with the reason "experimental perl-core stuff". You don't /need/ to depend on the virtual unless you need a specific minimum version of Unicode::Collate. Unicode::Collate has been part of perl itself since well before Perl 5.8, the only thing that is really "experimental" about it is the dual-lifing system, which we try not forcing into tree until something needs a specific minimum version.
Ah, ok, I didn't know this. Then I'll just remove the dep from the ebuild... Thanks!
Created attachment 323538 [details] Updated ebuild for biber-1.2
Created attachment 325746 [details] biber-1.2.ebuild Patched biber to remove the dep on Mozilla::CA, as requested by tove. I'm not 100% sure if it will work this way, but the source says "We have to explicitly set the cert path because otherwise the https module can't find the .pem when PAR::Packer'ed". We don't plan use PAR::Packer on the program, so it should be fine if we just dropped this part. Could some perl dev please look at this? If this patch works, the last thing which has to be done is to get Text-BibTeX in the tree...
Created attachment 325748 [details] biber-1.2-drop-Mozilla-CA.patch
biber-1.3 was released. @ Luis Have you notified upstream about your patch?
Created attachment 328794 [details] biber-1.3 ebuild They changed the source tarball without the version number. The ebuild in mrueg-overlay does not work. New Dependency: dev-perl/Data-Diver
> They changed the source tarball without the version number. The ebuild in > mrueg-overlay does not work. New Dependency: dev-perl/Data-Diver This is brecause after release tarballs were containing version 1.2 instead of 1.3. Now this is fixed and they contain 1.3 Also, biber asks for Text-BibTeX >= 0.65
> > They changed the source tarball without the version number. The ebuild in > > mrueg-overlay does not work. New Dependency: dev-perl/Data-Diver > > This is brecause after release tarballs were containing version 1.2 instead > of 1.3. Now this is fixed and they contain 1.3 > > Also, biber asks for Text-BibTeX >= 0.65 Thank you for your information. It worked for me, so I added it to the overlay. Now (with 1.3 sources) the Mozilla-CA patch doesn't apply anymore, so I dropped it and added Mozilla-CA as a dep.
(In reply to comment #58) > Thank you for your information. It worked for me, so I added it to the > overlay. Now (with 1.3 sources) the Mozilla-CA patch doesn't apply anymore, > so I dropped it and added Mozilla-CA as a dep. The patch doesn't apply anymore because upstream was so kind to introduce a possibilty for using external CA data instead of Mozilla::CA after I talked to them. I'll have a closer look at this tomorrow. The interaction with external CA data has to be tested, but apart from that, I don't see any blockers. @TeX Herd: Would you mind taking care of the package after we got it into the tree?
Created attachment 330934 [details] biber-1.4 ebuild biber 1.4 released, needs biblatex-2.4 from bug #437116
I've checked your ebuild. The following dependencies are still needed: - dev-perl/LWP-Protocol-https. Since USE=ssl is default in most desktop profiles, it is pulled in by libwww-perl[ssl]. So we should either depend on that or explicitly on dev-perl/LWP-Protocol-https. In my overlay I used the former method. Without that the tests fail, btw. - dev-perl/Mozilla-CA is needed as well, at least for the test to succeed. - dev-perl/URI. This is pulled in with libwww-perl again, but biber directly depends on it. See lib/Biber/Input/file/ris.pm Apart from that your ebuild is fine (at least as far as I see). It is also nice that you found some superfluous deps: - dev-perl/Config-AutoConf - dev-perl/ExtUtils-LibBuilder - dev-perl/List-MoreUtils
(In reply to comment #50) > > The only remaining problem is Unicode::Collate. It's also in perl-experimental > >(virtual/perl-Unicode-Collate & perl-core/Unicode-Collate), but it's hardmasked > > with the reason "experimental perl-core stuff". > > You don't /need/ to depend on the virtual unless you need a specific minimum > version of Unicode::Collate. > > Unicode::Collate has been part of perl itself since well before Perl 5.8, > the only thing that is really "experimental" about it is the dual-lifing > system, which we try not forcing into tree until something needs a specific > minimum version. I think it is needed now? * Using Module::Build * perl Build.PL --installdirs=vendor --libdoc= --destdir=/var/tmp/portage/dev-tex/biber-1.4/image/ --create_packlist=0 Checking prerequisites... requires: ! Unicode::Collate (0.89) is installed, but we need version >= 0.90 (Installed perl version: 5.16.1)
Biber 1.5 was released. What are the chances to see it added to the portage tree?
Created attachment 337648 [details] biber-1.5 ebuild I bumped the biber-1.4 ebuild to biber-1.5 and added the mentioned dependencies. Everything worked out fine.
This bugreport needs to depend on bug #386803, since dev-perl/ExtUtils-LibBuilder is currently not in the tree.
(In reply to comment #65) > This bugreport needs to depend on bug #386803, since > dev-perl/ExtUtils-LibBuilder is currently not in the tree. Sorry, the dependency is indirect and already tracked in bug #386811.
But there are actual issues with this ebuild: Checking prerequisites... requires: ! Mozilla::CA is not installed ! Unicode::Collate (0.89) is installed, but we need version >= 0.90
Created attachment 344370 [details, diff] Remove RDEPEND on Mozilla-CA I updated the patch that removes the dependency on Mozilla-CA. This should be used instead of "biber-1.2-drop-Mozilla-CA.patch". The patch also does not harm the tests. However, I noticed that there is one test (the "HTTPS Test" in t/remote-files.t) that fails randomly because the HTTPS server sends data that differs from time to time; but this is not related to this patch. I reported the behavior to upstream at https://sourceforge.net/p/biblatex-biber/bugs/142/ .
Biber-1.6 was released and added "Encode::EUCJPASCII" : "0", "Encode::HanExtra" : "0", "Encode::JIS2K" : "0", "Unicode::GCString" : "0", as new dependencies. (dev-perl/Encode-HanExtra is already available in tree) These deps have now raised versions: "Unicode::Collate" : "0.97", (0.90, currently available included in perl-5.16.3 is 0.89) "perl" : "v5.16.0" (was 5.14.0 before)
Created attachment 347206 [details] Ebuild for biber 1.6 There are a number of dependencies that are not referenced anywhere in the source. This includes the newly added Encode packages. Just ignore the warnings.
Created attachment 347208 [details, diff] Patch to get rid of Mozilla-CA and use the system-wide certificates instead
(In reply to comment #69) I installed from mrueg overlay. I tested (tool mode only) it and it works. Thanks for providing it; a bit more convenient than downloading from here. Some feedback: * There is a file-size mismatch (download file was changed?) * The pdf docs are not installed (perhaps this also holds for the ebuild attached to this bug?), while biber.pdf (for biber 1.0) from texlive is installed, creating a version mismatch.
(In reply to comment #72) > (In reply to comment #69) > I installed from mrueg overlay. I tested (tool mode only) it and it works. > Thanks for providing it; a bit more convenient than downloading from here. > Some feedback: > > * There is a file-size mismatch (download file was changed?) > > * The pdf docs are not installed (perhaps this also holds for the ebuild > attached to this bug?), while biber.pdf (for biber 1.0) from texlive is > installed, creating a version mismatch. Thanks for your report, I fixed the manifest and added a doc useflag, that installs the missing pdf.
biber 1.7 is released for use with biblatex 2.7
Version bumped in my overlay. Biblatex-2.7 is already in the tree. In the next week I'll add biber (including Mozilla-CA, as it is needed in a test) and its dependencies to the tree, if there are no objections against it.
I've added most of the missing depencies to the tree. Missing dependencies, will add them in the next days: Encode-EUCJPASCII Encode-JIS2K Mozilla-CA
Thanks for taking care of this, Manuel! Did you test my patch for getting rid of the Mozilla-CA? AFAIR everything worked, even the tests.
I rebased the patch so it applies to biber-1.7 and disabled the ssl-test. So after more than 2.5 years, it's time to close this bug. Many thanks for your help! *biber-1.7 (06 Aug 2013) 06 Aug 2013; Manuel Rüger <mrueg@gentoo.org> +biber-1.7.ebuild, +metadata.xml: Initial version. Thanks to Luis Ressel (original patch author) and all the other users in bug #340353 (which is fixed now)
(In reply to Manuel Rüger from comment #78) > *biber-1.7 (06 Aug 2013) Dear Manuel: I needed the live ebuild biber-9999 in your overlay, and still do (due to a regression in 1.7 that is fixed in the upcoming 1.8). It seems the live ebuild is gone. Would it be possible to revive it?
(In reply to Manuel Rüger from comment #78) > So after more than 2.5 years, it's time to close this bug. Many thanks for > your help! Let me, the original poster, say thanks to all of you for your hard work!