An ebuild for the VCS version of Mercurial. It works for me on amd64. This tracks the stable repo of Mercurial. The ebuild still needs working slotting, though (instant file collision). But I don't know how to do that cleanly. Reproducible: Always
Created attachment 175465 [details] mercurial-9999.ebuild
Created attachment 175467 [details] mercurial-9999.ebuild Just setting slot to 0 works, but it deinstalls the older mercurial, so the hg-stable had better be really stable. It is just a modified copy of mercurial-1.1.ebuild This one only claims ~amd64 testing.
This ebuild is also missing a way to set the Mercurial version to the hg-stable repo changeset ID.
I've been using this ebuild in production for a few weeks now and I didn't yet run into any problems. Should I open a forum thread for improving the ebuild?
As it is exactly the same as officially released sources (versioned tarballs) I really don't see a point in having this.
Welcome back! Would it be useful for you if I switched it over to the crew repository? If yes: should I add a new bug for that?
Created attachment 177852 [details] mercurial-9999.ebuild I switched the ebuild over to track the crew repository instead.
(In reply to comment #6) > Welcome back! Thank you :) > Would it be useful for you if I switched it over to the crew repository? If > yes: should I add a new bug for that? Switching the VCS ebuild to track main development branch is a good idea, and no - you don't need to open a new bug -- I'll reopen this one.
I also updated the title and URL. Do you know how to fix the remaining issue? * This ebuild is missing a way to set the Mercurial version to the hg repo changeset ID. What I'd like to do is the the rev and changeset ID. You can get that via the Mercurial command $ hg tip --template "{rev} - {node|short}\n" For example the 1.1.3 release would be "7509 - 89207edf3973" This would allow to directly compare the age of two versions, and it would still be an exact identifier. To issue the command from outside of the repo, just do $ hg -R PATH_TO_REPO tip --template "{rev} - {node|short}\n" Best wishes, Arne
I just hacked on the Mercurial eclass to allow Mercurials setup.py to extract the version from the repo. Changes: - The initial clone to distfiles doesn't have a working copy anymore - Copying to workdir is done via cloning. Other than allowing Mercurials setup.py to get the exact hg version this should also speed up the build process if both distfiles and tmp/portage are on the same filesystem, because in that case the cloning of the .hg repo is done locally via hardlinks and so we only create the repository files once instead of creating them in distfiles and then rsyncing them to the workdir. Also it saves space in distfiles :) I'll attach it as diff in a blink (this is just a simple diff file1 file2. If you want another diff format, please tell me!). Would you review it?
Created attachment 178673 [details, diff] mercurial.eclass.diff
This patch belongs to separate bug, not this one.
I created a new bug for the eclass: http://bugs.gentoo.org/255560
Another shortcoming of the current ebuild is that it doesn't install the man pages, yet.
One fix: I just found that the beuilds doesn't yet point to the crew repo, but to the main development repo which is managed by mpm: - http://www.selenic.com/mercurial/wiki/index.cgi/DeveloperRepos I think that's a good thing, though... Sorry for the earlier muddled up terminology.
Created attachment 182413 [details] mercurial-9999.2.ebuild An ebuild which (now really) tracks the (not necessarily stable) crew repository. dev-util/mercurial-9999 is the version maintaned by Matt Mackall dev-util/mercurial-9999.2 is the crew version.
Version tracking official repo added.
Sidenote: I just wrote a blog post about the eclass overhaul (bug #259898) and the live ebuild. Is there some place where we should add this text to make people aware of the overhaul, or is all that done automatically? - http://draketo.de/light/english/mercurial/gentoo-live-ebuild-mercurial