On Thu, 11 Nov 2010 20:02:16 +0100, Peter Hercek <[email protected]> wrote: > On 11/11/2010 06:07 PM, Nicolas Pouillard wrote: > > On Thu, Nov 11, 2010 at 5:59 PM, Peter Hercek<[email protected]> wrote: > >> On 11/11/2010 05:44 PM, Magnus Therning wrote: > >>> On Thu, Nov 11, 2010 at 16:41, Peter Hercek<[email protected]> wrote: > >>>> > >>>> Hmm, what we would need is so that when haskell-pandoc is being built > >>>> it's > >>>> PKGFILE is updated so that it requires haskell-http 4000.0.9 exactly. > >>>> Then > >>>> an attempt to uninstall haskell-hp-http later would require an > >>>> uninstallation of haskell-pandoc too. > >>>> > >>>> Can pacman be forced to do this? We would need something like a new > >>>> option > >>>> in PKGFILE which would have meaning: "fix versions of dependencies of > >>>> these > >>>> packages exactly to the versions which are currently installed (installed > >>>> during building)." > >>> Just for reference, this is basically what the Debian policy on > >>> Haskell packages is. > >>> > >> Good policy, if they can have it automated. If pacman (or I should rather > >> say makepkg) has such a option then great. If not we should check whether > >> we > >> can add it there. We want the final exact version for dependency to be > >> fixed > >> during build time. The PKGBUILD files need to contain the version ranges as > >> the cabal files. > >> > >> If we cannot have this late version fix during makepkg then I say just let > >> it be as it is. If a user wants to go into the troubles with the source > >> packages then he/she should be able to take care about knowing and obeying > >> the haskell quirks. > >> > >> Well maybe we could try to provide a small wraper over makepkg (something > >> like haskell-makepkg) which should be used for haskell source packages ... > >> if we cannot get this fixed in the makepkg itself. > > A few weeks I hacked makepkg to add this very feature, I didn't took > > time to test > > it exhaustively nor to propose it to the authors. > > > > As an attachment here is a diff against the makepkg found in pacman-3.4.1-1, > > it adds the --freeze-deps flag that change the package versions to be > > exactly > > the one on the build system. > > > > I would be glad to see this feature used here, and then proposed to the > > authors > > on the behalf of the Arch-Haskell team. > > I did not test it, but it looks like it fixes all dependencies or none. > That is not what would be good for us. We want to fix only haskell > dependencies. We typically do not want to freeze dependencies on C libs > (e.g. in the case of gtk2hs we do not want freeze our dependency on gtk > exactly). > > So something like a possibility to add a line like this to PKGBUILD file > would be fine: > FREEZEDEPS=('haskell-http' 'haskell-pandoc') > or better something like: > FREEZEDEPS_REGEX=('haskel-hp-.*' 'haskell-.*')
Indeed this was a really rough hack. But has you've seen a very small one as well. My motivation was to share binary packages built from AUR (where dependencies are often loosy), and see when an upgrade wants to break my packages. -- Nicolas Pouillard http://nicolaspouillard.fr _______________________________________________ arch-haskell mailing list [email protected] http://www.haskell.org/mailman/listinfo/arch-haskell
