Haskell executables dynamic vs static linking
by Jens-Ulrik Petersen
For a long time I was quite "proud" that Fedora Haskell
is using dynamic Haskell linking on primary intel architectures
(ghc-7.8 should support shared libs also on ARM,
but it and cabal 1.18 still default to static linking.)
But of course there are pros and cons for dynamic linking
against Haskell libraries.
pros:
- smaller lighter executables
- enforces rebuilding of reverse deps
(though this can also be a cons)
- makes use of shared libs to share Haskell object code in memory
- faster linking
cons:
- harder to deploy
- less portable
- dynamically linked tools makes testing/building (for) newer ghc harder
Today I decided to make hscolour statically linked against
Haskell libs in Rawhide. This will make bootstrapping ghc-7.8.1
or snapshots easier for example, or building ghc rpms for any other version. [1]
I think this is less problematic anyway for BinLib packages
like hscolour, since ghc-hscolour will pick up any potential
dependency breakage anyway.
I would like to have a static executable for cabal-install too.
Maybe a cleaner alternative is to provide both
a dynamic and a static subpackage, but I am not sure yet
on the best way to do that. Using alternatives might
be the only realistic way currently perhaps?
Should we do that for more executables packages?
Currently in Fedora because cabal-install is dynamically linked
it is some work to build cabal-install for a new ghc version
which makes testing newer ghc harder. If we had a statically
linked cabal-install package we could just use it with
any (recent) version of ghc... ie it would be more portable.
Any thoughts or opinions on this?
AFAIK Fedora is the only big distro that packages executables
dynamically linked to Haskell libraries.
Jens
[1] Actually I wish hscolour was just included in ghc.
It would make life easier. And likewise cabal-install actually.
10 years, 2 months
mbuf's packages
by Jens-Ulrik Petersen
Hi,
I got a message from Shakthi Kannan that he has changed job and
doesn't really have time now for maintaining Fedora Haskell packages,
and he has already orphaned his packages!:
ghc-ForSyDe (*)
ghc-HSH (*)
ghc-IOSpec
ghc-MonadCatchIO-mtl (*)
ghc-MonadRandom
ghc-Stream
ghc-ansi-terminal (*)
ghc-arrows
ghc-blaze-textual
ghc-data-inttrie
ghc-data-memocombinators
ghc-data-reify
ghc-dotgen
ghc-lambdabot-utils
ghc-lazysmallcheck
ghc-logict
ghc-netlist
ghc-netlist-to-vhdl
ghc-numbers
ghc-oeis
ghc-parameterized-data (*)
ghc-readline
ghc-show
ghc-sized-types
ghc-smallcheck (*)
ghc-type-level (*)
unlambda
Most of them are for Fedora only and if you are interested in
owning any of them you can grab them in Fedora Pkgdb.
I will probably take the remaining ones next week,
but if there are any that particularly interest you
or that you would like to comaintain do let us know!
Many of them are related to his interest in Electronics
and also his packaging of lambdabot: anyone interested
in having lambdabot in Fedora?
Jens
(*) I grabbed these earlier but then thought I should ask
here if others are interested in any of these packages
before taking any more.
10 years, 2 months
Package Reviews and Ready
by Jens-Ulrik Petersen
Hi,
I re-arranged the Package Review bugzilla links on
https://fedoraproject.org/wiki/Haskell_SIG#Package_reviews
so we no longer really need to rely on Ready in
the Whiteboard field. The 3-way split is now:
* New unassigned bugs (previously: New Ready) [1]
* Assigned bugs (previously: neither Ready nor NotReady)
* NotReady stalled bugs (unchanged)
I think I was the main (only?) person using Ready
in the whiteboard anyway so hopefully this should
simplify and streamline the workflow and tracking of reviews.
Of course Ready can still be added to the Whiteboard
to encourage reviewers but it won't affect the new links.
Jens
[1] new bitly link http://bit.ly/fedora-haskell-new-reviews2
10 years, 3 months
How to help?
by Sébastien Willmann
Hi, I would like to help packaging haskell rpms for fedora. Is any specific
help needed, or do I just start packaging the packages I wish?
I’m interested in yesod, and I see that a review request already exists,
but it seems inactive. Is there any problem?
Regards,
Sébastien Willmann (FAS: wilqu)
10 years, 3 months