[arch-haskell] Fwd: Contributing - Getting started questions
Fabien Dubosson
fabien.dubosson at gmail.com
Thu Oct 24 22:40:14 UTC 2013
> Except that you have two points numbered 3, yes, that's pretty much
> correct.
Erf, I read many times the mail and I still missed some mistakes.
> You are aware though that you don't /need/ to build habs in order to
> use it, you can just use [haskell-core] right away.
Yes of course, but I also use some unpackaged haskell software such as
hledger, which I precisely want to package.
> Hmm, that's a bit worrying. The -d flag should automatically install
> the package in the chroot after building. It seems to have
> disappeared in newer versions of makechrootpkg.
I see. Eventually I can try tomorrow to revert to an old version to see if
it solves my other issues.
> How are you installing the package?
> That particular archive should be included in the package you are
> installing, so
> % pacman -Ql -p haskell-openglraw-1.4.0.0-2-x86_64.pkg.tar.xz|grep
libHS
>
> should result in a list of three libs/archives:
>
> /usr/lib/ghc-7.6.3/site-local/OpenGLRaw-1.4.0.0/
libHSOpenGLRaw-1.4.0.0-ghc7.6.3.so
>
/usr/lib/ghc-7.6.3/site-local/OpenGLRaw-1.4.0.0/libHSOpenGLRaw-1.4.0.0.a
>
/usr/lib/ghc-7.6.3/site-local/OpenGLRaw-1.4.0.0/libHSOpenGLRaw-1.4.0.0_p.a
Hum, the error appears in the chroot during the building. To show that
better, I start with a clean copy of habs, and tried to install
haskell-diff to keep things simple:
$ git clone git://github.com/archhaskell/habs.git
$ cd habs
$ cblrepo sync
$ cblrepo pkgbuild $(cblrepo build base|tail -n +2)
$ ./makeahpkg -c Diff
Here is the output of the last command (the part that create the chroot
environment is truncated) :
[[ TRUNCATED ]]
*** Cleaning up the build chroot (in 5 sec)...
*** starting...
*** Done
*** Building in /home/fabien/habs/haskell-diff
:: Synchronizing package databases...
haskell is up to date
core is up to date
extra is up to date
community is up to date
:: Starting full system upgrade...
there is nothing to do
==> Making package: haskell-diff 0.3.0-2 (ven oct 25 00:22:08 CEST 2013)
==> Retrieving sources...
-> Downloading Diff-0.3.0.tar.gz...
% Total % Received % Xferd Average Speed Time Time Time
Current
Dload Upload Total Spent Left
Speed
0 0 0 0 0 0 0 0 --:--:-- --:--:--
--:--:-- 0
0 0 0 4128 0 0 26324 0 --:--:-- --:--:--
--:--:-- 26324
==> Validating source files with sha256sums...
Diff-0.3.0.tar.gz ... Passed
==> Making package: haskell-diff 0.3.0-2 (Fri Oct 25 00:22:10 CEST 2013)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
-> Found Diff-0.3.0.tar.gz
==> Validating source files with sha256sums...
Diff-0.3.0.tar.gz ... Passed
==> Extracting sources...
-> Extracting Diff-0.3.0.tar.gz with bsdtar
==> Starting build()...
Configuring Diff-0.3.0...
Building Diff-0.3.0...
Preprocessing library Diff-0.3.0...
[1 of 2] Compiling Data.Algorithm.Diff ( src/Data/Algorithm/Diff.hs,
dist/build/Data/Algorithm/Diff.o )
[2 of 2] Compiling Data.Algorithm.DiffOutput (
src/Data/Algorithm/DiffOutput.hs, dist/build/Data/Algorithm/DiffOutput.o )
[1 of 2] Compiling Data.Algorithm.Diff ( src/Data/Algorithm/Diff.hs,
dist/build/Data/Algorithm/Diff.p_o )
[2 of 2] Compiling Data.Algorithm.DiffOutput (
src/Data/Algorithm/DiffOutput.hs, dist/build/Data/Algorithm/DiffOutput.p_o )
[1 of 2] Compiling Data.Algorithm.Diff ( src/Data/Algorithm/Diff.hs,
dist/build/Data/Algorithm/Diff.dyn_o )
[2 of 2] Compiling Data.Algorithm.DiffOutput (
src/Data/Algorithm/DiffOutput.hs,
dist/build/Data/Algorithm/DiffOutput.dyn_o )
In-place registering Diff-0.3.0...
Running Haddock for Diff-0.3.0...
Preprocessing library Diff-0.3.0...
Warning: The documentation for the following packages are not
installed. No
links will be generated to these packages: rts-1.0
Haddock coverage:
88% ( 7 / 8) in 'Data.Algorithm.Diff'
50% ( 3 / 6) in 'Data.Algorithm.DiffOutput'
Documentation created: dist/doc/html/Diff/index.html
Creating package registration script: register.sh
Unregistering Diff-0.3.0...
==> Entering fakeroot environment...
==> Starting package()...
Installing library in
/build/haskell-diff/pkg/haskell-diff/usr/lib/ghc-7.6.3/site-local/Diff-0.3.0
==> Tidying install...
-> Purging unwanted files...
-> Removing libtool files...
-> Removing static library files...
-> Compressing man and info pages...
-> Stripping unneeded symbols from binaries and libraries...
==> Creating package "haskell-diff"...
-> Generating .PKGINFO file...
-> Adding install file...
-> Generating .MTREE file...
-> Compressing package...
==> Leaving fakeroot environment.
==> Finished making: haskell-diff 0.3.0-2 (Fri Oct 25 00:22:34 CEST
2013)
==> Installing package haskell-diff with pacman -U...
loading packages...
resolving dependencies...
looking for inter-conflicts...
Packages (1): haskell-diff-0.3.0-2
Total Installed Size: 0.41 MiB
:: Proceed with installation? [Y/n]
(1/1) checking keys in
keyring
[####################################################] 100%
(1/1) checking package
integrity
[####################################################] 100%
(1/1) loading package
files
[####################################################] 100%
(1/1) checking for file
conflicts
[####################################################] 100%
(1/1) installing
haskell-diff
[####################################################] 100%
Reading package info from stdin ... done.
Diff-0.3.0: cannot find libHSDiff-0.3.0.a on library path (use --force
to override)
and then back in the habs folder, the output of
$ pacman -Ql -p haskell-diff/haskell-diff-0.3.0-2-x86_64.pkg.tar.xz |
grep libHS
is
haskell-diff /usr/lib/ghc-7.6.3/site-local/Diff-0.3.0/
libHSDiff-0.3.0-ghc7.6.3.so
Hope these informations will help.
Best regards,
Fabien
2013/10/24 Magnus Therning <magnus at therning.org>
> On Thu, Oct 24, 2013 at 10:23:21PM +0200, Fabien Dubosson wrote:
> > Hi everybody,
> >
> > I am starting with Arch-Haskell after one year of "cabal-install
> > only" philosophy, to clean up a bit my management of Haskell
> > softwares (and why not getting involved if I can be helpful). I have
> > some questions and I guess this is the right place to start.
> >
> > So first of all about the general workflow to be sure to understand
> > it correctly. As far I have understand/guessed that:
> >
> > 1. Someone writes a cabalized haskell library/executable and puts in
> > on hackage.
> > 2. Using the "cblrepo" tools (cblrepo add ...), hackage
> > libraries/executables can be added to "habs".
> > 3. PKGBUILD and archlinux packages can be builded from habs and then
> > installed on the system
> > 3. Finally some packages are integrated to the "main" habs and
> > Magnus (or someone else?) signs the package and puts it into the
> > [haskell-core] repository.
> >
> > Is that correct?
>
> Except that you have two points numbered 3, yes, that's pretty much
> correct.
>
> > Then, to start I followed exactly the build steps on the habs README
> > and I get an error:
>
> You are aware though that you don't /need/ to build habs in order to
> use it, you can just use [haskell-core] right away.
>
> > $ git clone git://github.com/archhaskell/habs.git
> > $ cd habs
> > $ cblrepo sync
> >
> > Everything is ok until here.
> >
> > $ cblrepo pkgbuild $(cblrepo build base|tail -n +2)
> > Failed patching /tmp/cblrepo.EJEnE3/PKGBUILD with
> /home/fabien/habs/patches/pango.pkgbuild
> > Failed patching /tmp/cblrepo.SFv6KO/PKGBUILD with
> /home/fabien/habs/patches/gtk.pkgbuild
> >
> > Here the command works, but two patch can not be applied (these
> > packages seem not to be the cause of he problem anyway).
>
> Yeah, in this case it happens because I haven't had to rebuild those
> packages since upgrading cblrepo to put all flags settings in the
> configure step
>
> > And finally I get an error with this last command:
> >
> > $ ./makeahpkg -c -- $(cblrepo build base | tail -n +2)
> > [[ TRUNKATED ]]
> > *** Building in /home/fabien/habs/haskell-diff
> > ==> ERROR: No chroot dir defined, or invalid path ''
> >
> > I played a bit with the makeahpkg script and removing the "-d"
> > option of makechrootpkg on line 71 seems to works a bit more.
>
> Hmm, that's a bit worrying. The -d flag should automatically install
> the package in the chroot after building. It seems to have
> disappeared in newer versions of makechrootpkg.
>
> > sudo setarch ${arch} makechrootpkg -u -l ${build_chrootdir} -r
> ${CHROOT_DIR} -- -i
> >
> > The first package (haskell-openglraw-1.4.0.0-2) builds correctly, it
> > asks me to install it (on the chroot), but during the install this
> > message appears:
> >
> > OpenGLRaw-1.4.0.0: cannot find libHSOpenGLRaw-1.4.0.0.a on library
> > path (use --force to override)
>
> How are you installing the package?
> That particular archive should be included in the package you are
> installing, so
>
> % pacman -Ql -p haskell-openglraw-1.4.0.0-2-x86_64.pkg.tar.xz|grep
> libHS
>
> should result in a list of three libs/archives:
>
> /usr/lib/ghc-7.6.3/site-local/OpenGLRaw-1.4.0.0/
> libHSOpenGLRaw-1.4.0.0-ghc7.6.3.so
>
> /usr/lib/ghc-7.6.3/site-local/OpenGLRaw-1.4.0.0/libHSOpenGLRaw-1.4.0.0.a
>
> /usr/lib/ghc-7.6.3/site-local/OpenGLRaw-1.4.0.0/libHSOpenGLRaw-1.4.0.0_p.a
>
> /M
>
> --
> Magnus Therning OpenPGP: 0xAB4DFBA4
> email: magnus at therning.org jabber: magnus at therning.org
> twitter: magthe http://therning.org/magnus
>
> Finagle's Second Law:
> Always keep a record of data -- it indicates you've been working.
>
> _______________________________________________
> arch-haskell mailing list
> arch-haskell at haskell.org
> http://www.haskell.org/mailman/listinfo/arch-haskell
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/arch-haskell/attachments/20131025/d70ce90f/attachment-0001.html>
More information about the arch-haskell
mailing list