arch-haskell repo and ABS tree

Hi, I want to suggest that the Arch Haskell group create their own repo and ABS tree, and withdraw from the AUR. Requests to orphan neglected haskell packages come up relatively often on the aur-general mailing list and the lack of active support is a cause of frustration, even if it is understandable. Creating a separate binary repo and an ABS tree would provide consistency and could be made official (maybe hosted on archlinux.org and mirrored, or hackage). Users who wish to maintain haskell packages in the AUR could then do so without interfering with global consistency. Those who need newer packages could enable the AUR via e.g. bauerbill and those who simply wish to have access to the full set provided by Arch Haskell would enable the repo or build from its ABS tree. Maybe I could even provide support in bauerbill. Is this reasonable? Feasible? Regards, Xyne

xyne:
Hi,
I want to suggest that the Arch Haskell group create their own repo and ABS tree, and withdraw from the AUR.
Requests to orphan neglected haskell packages come up relatively often on the aur-general mailing list and the lack of active support is a cause of frustration, even if it is understandable.
Creating a separate binary repo and an ABS tree would provide consistency and could be made official (maybe hosted on archlinux.org and mirrored, or hackage). Users who wish to maintain haskell packages in the AUR could then do so without interfering with global consistency. Those who need newer packages could enable the AUR via e.g. bauerbill and those who simply wish to have access to the full set provided by Arch Haskell would enable the repo or build from its ABS tree. Maybe I could even provide support in bauerbill.
How do we manage the binary ABI incompatibilities? This was a problem last time we tried to maintain a large binary repo: each upgrade requires a topological rebuild of the downstream dependencies. Currently, I'm one week backed up on AUR updates -- but it is indeed getting out of hand: hackage is averaging 15 packages a day uploaded now, but spikes up to 30 packages a day. That's getting hard to stay on top of. The tools for tracking aren't yet in a state to support distrbuted maintainance either (though they're close)

On 2010-10-07 11:54 -0700 (40:4) Don Stewart wrote:
xyne:
Hi,
I want to suggest that the Arch Haskell group create their own repo and ABS tree, and withdraw from the AUR.
Requests to orphan neglected haskell packages come up relatively often on the aur-general mailing list and the lack of active support is a cause of frustration, even if it is understandable.
Creating a separate binary repo and an ABS tree would provide consistency and could be made official (maybe hosted on archlinux.org and mirrored, or hackage). Users who wish to maintain haskell packages in the AUR could then do so without interfering with global consistency. Those who need newer packages could enable the AUR via e.g. bauerbill and those who simply wish to have access to the full set provided by Arch Haskell would enable the repo or build from its ABS tree. Maybe I could even provide support in bauerbill.
How do we manage the binary ABI incompatibilities? This was a problem last time we tried to maintain a large binary repo: each upgrade requires a topological rebuild of the downstream dependencies.
Couldn't you handle that with build scripts that track dependency hierarchies and rebuild as necessary? For example, when a package is upgraded all packages that depend on it (directly or indirectly) could be automatically rebuilt. The idea would be to move all Haskell packages (i.e. including ghc and all others in the official repos) to this repo and manage them there. You would then have full control over the package hierarchy. Considering the recent creation of [multilib], [haskell] or [arch-haskell] should be a strong candidate for official status. The following is mostly thinking out loud, but this might also be a way to manage multiple versions of different packages. You could place all of the different versions in the same repo directory and then simply provide different databases container various subsets of those packages. I have an idea for a tool that could easily enable and disable databases on the user end so the user would not have to update pacman.conf manually. Meh, it's just a tangential idea... although I'm going to test something now.
Currently, I'm one week backed up on AUR updates -- but it is indeed getting out of hand: hackage is averaging 15 packages a day uploaded now, but spikes up to 30 packages a day. That's getting hard to stay on top of. The tools for tracking aren't yet in a state to support distrbuted maintainance either (though they're close)
That's why I wrote that the delays are understandable. The current approach does simply not scale well and I think it's worth considering other approaches. Just to be extra clear, I am in no way criticizing you. I think you've done a great job of supporting Haskell on Arch.

On Thu, Oct 7, 2010 at 21:33, Xyne
On 2010-10-07 11:54 -0700 (40:4) Don Stewart wrote:
xyne:
Hi,
I want to suggest that the Arch Haskell group create their own repo and ABS tree, and withdraw from the AUR.
Requests to orphan neglected haskell packages come up relatively often on the aur-general mailing list and the lack of active support is a cause of frustration, even if it is understandable.
Creating a separate binary repo and an ABS tree would provide consistency and could be made official (maybe hosted on archlinux.org and mirrored, or hackage). Users who wish to maintain haskell packages in the AUR could then do so without interfering with global consistency. Those who need newer packages could enable the AUR via e.g. bauerbill and those who simply wish to have access to the full set provided by Arch Haskell would enable the repo or build from its ABS tree. Maybe I could even provide support in bauerbill.
How do we manage the binary ABI incompatibilities? This was a problem last time we tried to maintain a large binary repo: each upgrade requires a topological rebuild of the downstream dependencies.
Couldn't you handle that with build scripts that track dependency hierarchies and rebuild as necessary? For example, when a package is upgraded all packages that depend on it (directly or indirectly) could be automatically rebuilt.
I think that would be possible, yes.
The idea would be to move all Haskell packages (i.e. including ghc and all others in the official repos) to this repo and manage them there. You would then have full control over the package hierarchy.
Considering the recent creation of [multilib], [haskell] or [arch-haskell] should be a strong candidate for official status.
It would be very nice to get that sort of recognition. I'd love being able to say that I run the most Haskell-friendly distro in the world ;-) One thing though, if ghc was taken out of [extra] then wouldn't this mean that no tool written in Haskell could ever make it into [extra]? (E.g. darcs)
The following is mostly thinking out loud, but this might also be a way to manage multiple versions of different packages. You could place all of the different versions in the same repo directory and then simply provide different databases container various subsets of those packages. I have an idea for a tool that could easily enable and disable databases on the user end so the user would not have to update pacman.conf manually. Meh, it's just a tangential idea... although I'm going to test something now.
Any ideas on how to bootstrap this, and also how to build a team for it? /M -- Magnus Therning (OpenPGP: 0xAB4DFBA4) magnus@therning.org Jabber: magnus@therning.org http://therning.org/magnus identi.ca|twitter: magthe

Hi Don,
I'm one week backed up on AUR updates.
according to http://hackage.haskell.org/package/numeric-prelude, the last update of that package happened on Sep 22. Yet, AUR doesn't have that update even though the package has been being marked out-of-date, etc. So clearly your statement that you lag one week behind cannot be true, can it?
Hackage is averaging 15 packages a day uploaded now, but spikes up to 30 packages a day. That's getting hard to stay on top of.
You make it sound as if that were a recent development, but the fact of the matter is that AUR has been lagging behind Hackage substantially for the last 9 months or so. It's not "getting hard to stay on top of". Rather, you haven't been able to stay on top of Hackage for the better part of a year.
The tools for tracking aren't yet in a state to support distrbuted maintainance either (though they're close).
If I had a penny every time you said that! Let's see: * May 25: http://www.haskell.org/pipermail/arch-haskell/2010-May/000407.html | > the AUR packages haskell-{hsdns,hsemail,funcmp} are out-of-date | > for quite a while now. According to gour, the reason is that the | > ArchHaskell team lacks developers to perform the updates. | > | > I would be happy to contribute some time and effort to the | > project. Can I help in some way? | | Yes, I think you can. I need to package up my scripts so that it is easy | for anyone to update our packages. Stay tuned for more details. * Aug 9: http://www.haskell.org/pipermail/arch-haskell/2010-August/000429.html | There are some other scripts that need to be in place. My timeline for | this is: | | * Release updated versions of cabal2arch and archlinux packages [done] | * GHC 6.12.3 into extra | * Release all additional scripts (i.e. for generating | http://www.galois.com/~dons/arch-haskell-status.html , and process for updating. | * Create group account. | * Hand over maintainership for packages. So, by now it's October, and you still say exactly the same thing as you did back in May. It's just that there's nothing happening to back those words up. Take care, Peter

simons:
Hi Don,
I'm one week backed up on AUR updates.
according to http://hackage.haskell.org/package/numeric-prelude, the last update of that package happened on Sep 22. Yet, AUR doesn't have that update even though the package has been being marked out-of-date, etc. So clearly your statement that you lag one week behind cannot be true, can it?
I'm about 1.5 weeks behind, due to ICFP travel. There are 299 packages in the queue, on top of the 8134 packages that I've updated over the past 2 years.
Hackage is averaging 15 packages a day uploaded now, but spikes up to 30 packages a day. That's getting hard to stay on top of.
You make it sound as if that were a recent development, but the fact of the matter is that AUR has been lagging behind Hackage substantially for the last 9 months or so. It's not "getting hard to stay on top of". Rather, you haven't been able to stay on top of Hackage for the better part of a year.
Well, actually, AUR was up to date on Sep 21. Please help with tools and processes. -- Don

dons:
simons:
Hi Don,
I'm one week backed up on AUR updates.
according to http://hackage.haskell.org/package/numeric-prelude, the last update of that package happened on Sep 22. Yet, AUR doesn't have that update even though the package has been being marked out-of-date, etc. So clearly your statement that you lag one week behind cannot be true, can it?
I'm about 1.5 weeks behind, due to ICFP travel. There are 299 packages in the queue, on top of the 8134 packages that I've updated over the past 2 years.
Hackage is averaging 15 packages a day uploaded now, but spikes up to 30 packages a day. That's getting hard to stay on top of.
You make it sound as if that were a recent development, but the fact of the matter is that AUR has been lagging behind Hackage substantially for the last 9 months or so. It's not "getting hard to stay on top of". Rather, you haven't been able to stay on top of Hackage for the better part of a year.
Well, actually, AUR was up to date on Sep 21.
Please help with tools and processes.
Actually, I think I'm done. I will step down as AUR and Arch Linux maintainer on Monday, to focus my efforts upstream, on Hackage itself. I'm going to release the rest of tools I have in a darcs repo this weekend, and try to document on the wiki any other processes that are active. Most of them you already know about (cabal2arch, the archlinux package, and the support scripts). I'll leave it up to this team to work out if they want to keep supporting: The cabal2arch tool http://code.haskell.org/~dons/code/cabal2arch/ The archlinux support package http://code.haskell.org/~dons/code/archlinux/ The IRC channel The mailing list The blog http://archhaskell.wordpress.com/ The package status page http://code.haskell.org/arch/arch-haskell-status.html The twitter account http://twitter.com/archhaskell The RSS feed http://code.haskell.org/arch/aur.xml The Hackage reverse package map http://www.galois.com/~dons/cabalArchMap.txt The wiki http://haskell.org/haskellwiki/Arch_Linux It's been an interesting 2 years running this stuff, and this group has led the Haskell community to demonstrate how well a distro can support Haskell, particularly through the use of automated tools taking advantage of the declarative nature of Cabal. But it's time for me to focus my energies higher up the stack. Those interested in picking up parts of the work, please let me know. -- Don

On 08/10/10 19:02, Don Stewart wrote: [...]
Actually, I think I'm done. I will step down as AUR and Arch Linux maintainer on Monday, to focus my efforts upstream, on Hackage itself.
I'm going to release the rest of tools I have in a darcs repo this weekend, and try to document on the wiki any other processes that are active.
Most of them you already know about (cabal2arch, the archlinux package, and the support scripts). I'll leave it up to this team to work out if they want to keep supporting:
The cabal2arch tool http://code.haskell.org/~dons/code/cabal2arch/
The archlinux support package http://code.haskell.org/~dons/code/archlinux/
The IRC channel
The mailing list
The blog http://archhaskell.wordpress.com/
The package status page http://code.haskell.org/arch/arch-haskell-status.html
The twitter account http://twitter.com/archhaskell
The RSS feed http://code.haskell.org/arch/aur.xml
The Hackage reverse package map http://www.galois.com/~dons/cabalArchMap.txt
The wiki http://haskell.org/haskellwiki/Arch_Linux
It's been an interesting 2 years running this stuff, and this group has led the Haskell community to demonstrate how well a distro can support Haskell, particularly through the use of automated tools taking advantage of the declarative nature of Cabal.
But it's time for me to focus my energies higher up the stack.
Those interested in picking up parts of the work, please let me know.
Thanks for your hard work, you have, largely single-handedly, made Arch into the best Linux distro for Haskell developers. Now we just have to figure out how many people are required to fill in for you :-) /M -- Magnus Therning (OpenPGP: 0xAB4DFBA4) magnus@therning.org Jabber: magnus@therning.org http://therning.org/magnus identi.ca|twitter: magthe

magnus:
But it's time for me to focus my energies higher up the stack.
Those interested in picking up parts of the work, please let me know.
Thanks for your hard work, you have, largely single-handedly, made Arch into the best Linux distro for Haskell developers.
Now we just have to figure out how many people are required to fill in for you :-)
I've started a wiki page here to capture the processes and resources: http://haskell.org/haskellwiki/Arch_Linux/Arch_Haskell_Group_Maintainership And I'll be around of course to assist with the transition. -- Don

On Fri, 08 Oct 2010 21:49:28 +0100
"Magnus" == Magnus Therning
wrote:
Magnus> Thanks for your hard work, you have, largely single-handedly, Magnus> made Arch into the best Linux distro for Haskell developers. Big THANK YOU to dons for everything he did for Arch and he does for Haskell! Magnus> Now we just have to figure out how many people are required to Magnus> fill in for you Magnus> :-) I'm a bit worried it won't be possible to replace him... Sincerely, Gour -- Gour | Hlapicina, Croatia | GPG key: CDBF17CA ----------------------------------------------------------------

Magnus Therning wrote:
Thanks for your hard work, you have, largely single-handedly, made Arch into the best Linux distro for Haskell developers.
Yes, this is absolutely true. No other distribution supports Haskell anywhere near as well as ArchLinux does, and this fact is entirely because of the amazing effort and devotion that Don has put into this project. I, too, would you like to use this occasion to express my gratitude and appreciation. Take care, Peter

Don Stewart wrote:
Actually, I think I'm done. I will step down as AUR and Arch Linux maintainer on Monday, to focus my efforts upstream, on Hackage itself.
*snip*
-- Don
Your efforts have been very much appreciated and you've done a great job. Thank you.
participants (5)
-
Don Stewart
-
Gour D.
-
Magnus Therning
-
Peter Simons
-
Xyne