Commit graph

3892 commits

Author SHA1 Message Date
Joey Hess
66a961b1b7 remove cabal file 2012-06-12 11:35:24 -04:00
Nathan Collins
fd40af6e62 Merge branch 'master' into cabal-man-pages 2012-06-12 02:54:27 -07:00
Nathan Collins
000bbba3c0 Clean up Setup.hs.
Remove post-copy hook 'myPostCopy': it's easy to write one based on
'myPostInst', so just wait until someone complains that it's missing.

Remove most comments.

Put long type sigs on one line like in the other source files.
2012-06-12 02:50:09 -07:00
Nathan Collins
2e0965eba9 Generate sdist tarball name from git-annex.cabal 'Version:'.
Instead of generating with `cabal sdist`.
2012-06-12 02:45:53 -07:00
Nathan Collins
79a71d9ba6 Simplify git-annex.cabal and generate sdist with make-sdist.sh.
The `cabal install` is happy as long as the files it needs are
present, but `cabal sdist` will only package up files you tell it to.
So, generate the source tarball ourselves.

The source tarball is generated by make-sdist.sh, which uses cabal
sdist to calculate the package name.  Could also generate the name
from the 'Version:' field in git-annex.cabal.
2012-06-12 02:36:05 -07:00
Nathan Collins
72b0054931 Get ready for a simple git-annex.cabal.
I have a new idea: instead of the template-based approaches that work
around cabals requirement that you list all files to put in the sdist,
we can simply generate the sdist ourselves, with the files we
want. Take that cabal!
2012-06-12 00:53:51 -07:00
Nathan Collins
9fe433390d Remove .dir-locals.el and add doc/contributing.mdwn.
Add link CONTRIBUTING -> doc/contributing.mdwn, so that it's easy to
find (many files in doc/).

Add .dir-locals.el to .gitignore, now that it's no longer versioned.

The CONTRIBUTING file gives a reference to a page on the Emacs wiki
that shows how to set up a .dir-locals.el that sets up tabs for
indentation.  I updated the wiki page to include the
`(highlight-regexp "^ *")` part, which had been the hardest to
discover.
2012-06-12 00:43:42 -07:00
Nathan Collins
236ae1fbc4 Add link COPYRIGHT -> debian/copyright; add COPYRIGHT to sdist. 2012-06-11 23:27:00 -07:00
Joey Hess
48dd2ff264 blog for the day 2012-06-11 16:44:45 -04:00
Joey Hess
5642e189b7 add news item for git-annex 3.20120611 2012-06-11 10:45:33 -04:00
Joey Hess
5a7b7d67f7 releasing version 3.20120611 2012-06-11 10:44:16 -04:00
Joey Hess
7f70767bfb uninit: Refuse to run in a subdirectory. Closes: #677076 2012-06-11 10:33:58 -04:00
Nathan Collins
6eb4f35c03 Merge branch 'master' into cabal-man-pages 2012-06-11 00:18:48 -07:00
Nathan Collins
7753b33c88 Refactor generation of git-annex.cabal and incorporate man pages.
The existing `sed | find | perl` hack in the Makefile was not
including the man pages in the generated git-annex.cabal.  I couldn't
figure out why it didn't work; running the `find | perl` part of the
command *did* list the man pages ...

So, I set up a new hack. It produces a cleaner .cabal file and
includes the man pages in the sdist.  I changed git-annex.cabal and
its generation as follows:

- git-annex.cabal is now generated by a here document in
  git-annex.cabal.template.sh.  The here document has inline file list
  insertion, whereas before the file lists were inserted with sed.

- The 'Extra-Source-Files:' field now only includes the non-source
  files: the man pages, plain text documentation, and license.

- The source dependencies are now listed in 'Other-Modules' sections
  in the 'Executable' and 'Test-Suite' sections.  The list of
  dependencies is generated by `gen-other-modules.sh`.

- The ./debian and ./doc are no longer included in the sdist package.
  These were not installed anywhere by `cabal install`.  A user that
  wants them could clone the git repo.

Running the tests with cabal is not yet working, i.e.

  cabal configure --enable-tests && cabal build && cabal test

and

  cabal install --enable-tests

fail to find Utility.Touch.  However, I did not break this: it doesn't
work for the git-annex package on Hackage either.  Next step is to
figure out how to deal with HSC in cabal ... or not bother, because
`make test` works.  I'm worried this is a cabal bug.

To test building from sdist, I've been running

  cd ../.. ; cabal sdist ; cd dist ; tar xf git-annex-3.20120605.tar.gz && cd git-annex-3.20120605 && rm -fr /tmp/git-annex && cabal install --prefix=/tmp/git-annex && tree -A /tmp/git-annex

in the dist directory.  Using `cabal-dev install` is a better test,
but is very slow.
2012-06-11 00:12:11 -07:00
Joey Hess
28242b3bf8 note 2012-06-11 02:13:04 -04:00
Joey Hess
31065fa4e2 Merge branch 'master' of ssh://git-annex.branchable.com 2012-06-11 02:10:18 -04:00
Joey Hess
aba425fb2b update 2012-06-11 02:09:22 -04:00
http://joeyh.name/
d2dbb59539 Added a comment: re: cloud 2012-06-11 04:48:08 +00:00
Nathan Collins
b86f201bdf Rename git-annex.cabal. 2012-06-10 19:17:51 -07:00
https://www.google.com/accounts/o8/id?id=AItOawkq0-zRhubO6kR9f85-5kALszIzxIokTUw
d271383d31 Added a comment: Cloud Service Limitations 2012-06-11 02:15:06 +00:00
Nathan Collins
721de7067c Add cabal-dev to .gitignore. 2012-06-10 19:03:35 -07:00
Nathan Collins
f4b82e31b4 Fix Makefile dependencies for make test. 2012-06-10 18:59:16 -07:00
Joey Hess
b20c270d00 update 2012-06-10 19:11:04 -04:00
Joey Hess
39b9aaa7a9 typo 2012-06-10 16:44:22 -04:00
Joey Hess
a0e29b214f blog for the day 2012-06-10 16:33:42 -04:00
Sergei Trofimovich
3bb58afd59 Makefile: ignore monads-tf in favour of mtl
Fixes build breakage when both 'mtl' and 'monads-tf' are present:
$ make git-annex
> ghc -O2 -Wall -ignore-package monads-fd -outputdir tmp -IUtility -DWITH_S3 --make git-annex Utility/libdiskfree.o
>
> Common.hs:6:8:
>    Ambiguous module name `Control.Monad.State.Strict':
>      it was found in multiple packages: monads-tf-0.1.0.0 mtl-2.1.1
> make: *** [git-annex] Error 1

Signed-off-by: Sergei Trofimovich <slyfox@gentoo.org>
2012-06-10 12:11:30 -04:00
Nathan Collins
d76afc8152 Replace indentation spaces by tabs in Setup.hs. 2012-06-10 02:21:13 -07:00
Nathan Collins
4453351ca4 Add a .dir-locals.el that configures emacs' treatment of tabs.
The Haskell code uses tabs for indentation, and displays well with
tab-width set to 2.  So, I created a .dir-locals.el (applies to all
files opened in emacs at or below ./), which sets 'tab-width' to 2,
turns on 'indent-tabs-mode', and highlights leading spaces in
'haskell-mode'.
2012-06-10 02:11:40 -07:00
https://www.google.com/accounts/o8/id?id=AItOawkSq2FDpK2n66QRUxtqqdbyDuwgbQmUWus
3d6dc33563 2012-06-10 09:03:28 +00:00
https://www.google.com/accounts/o8/id?id=AItOawkSq2FDpK2n66QRUxtqqdbyDuwgbQmUWus
ba62741e5a 2012-06-10 08:58:48 +00:00
Nathan Collins
6c8507ee1b Combine post install commands in 'postInst' and add 'postCopy' hook.
The creation of the 'git-annex-shell' symlink was in 'postInst' hook.
I combined it with the man-page installation in a 'postInst' hook and
a 'postCopy' hook.  I don't understand how to use the `cabal copy`
command, but the examples I looked at defined both hooks.

Relevant comments from the source:

* man-page installation:

  See http://www.haskell.org/haskellwiki/Cabal/Developer-FAQ#Installing_manpages.

  Based on pandoc's and lhs2tex's 'Setup.installManpages' and
  'postInst' hooks.

  My understanding: 'postCopy' is run for `cabal copy`, 'postInst' is
  run for `cabal inst`, and copy is not a generalized install, so you
  have to write two nearly identical hooks.

  Summary of hooks:
  http://www.haskell.org/cabal/release/cabal-latest/doc/API/Cabal/Distribution-Simple-UserHooks.htm--
  Other people are also confused:

  * Bug: 'postCopy' and 'postInst' are confusing:
  http://hackage.haskell.org/trac/hackage/ticket/718

  * A cabal maintainer suggests using 'postCopy' instead of
  'postInst', because `cabal install` is `cabal copy` followed by
  `cabal register`:
  http://www.haskell.org/pipermail/libraries/2008-March/009416.html
  Although that sounds desirable, it's not true, as the reply and
  experiments indicate.

* the `cabal copy` command:

  ???: Not sure how you're supposed to use this.  E.g., when I do

     cabal install --prefix=/tmp/git-annex-install
     cabal copy --deistdir=/tmp/git-annex-copy

  I get the copy under

    /tmp/git-annex-copy/tmp/git-annex-install

  Also, `cabal install` fails when given a relative --prefix.
2012-06-09 23:39:51 -07:00
Nathan Collins
7eb649612a Merge branch 'master' into cabal-man-pages 2012-06-09 20:48:32 -07:00
Nathan Collins
2b29a02285 Make man pages when making sdist. 2012-06-09 20:46:41 -07:00
http://joeyh.name/
6a71a9729f Added a comment 2012-06-09 23:01:29 +00:00
https://www.google.com/accounts/o8/id?id=AItOawldKnauegZulM7X6JoHJs7Gd5PnDjcgx-E
3a213ced1e Added a comment: open source? 2012-06-09 22:34:31 +00:00
Joey Hess
affd52be0e response 2012-06-09 17:07:40 -04:00
http://rmunn.myopenid.com/
6c8f76ca28 New idea: using youtube-dl to download video URLs 2012-06-09 18:54:14 +00:00
http://joeyh.name/
3141c36f2e Added a comment 2012-06-09 18:07:51 +00:00
https://www.google.com/accounts/o8/id?id=AItOawkSq2FDpK2n66QRUxtqqdbyDuwgbQmUWus
c388e90dc9 Added a comment 2012-06-08 15:21:21 +00:00
https://www.google.com/accounts/o8/id?id=AItOawkSq2FDpK2n66QRUxtqqdbyDuwgbQmUWus
12afa8fb56 Added a comment 2012-06-08 07:22:34 +00:00
Nathan Collins
817a42056b Add note about lhs2tex's man page installation. 2012-06-07 19:01:49 -07:00
http://joeyh.name/
63290903aa Added a comment 2012-06-08 01:56:52 +00:00
Joey Hess
4f6b522d8c update 2012-06-07 21:40:31 -04:00
Joey Hess
109bd9c08b blog for the day 2012-06-07 21:37:59 -04:00
https://www.google.com/accounts/o8/id?id=AItOawkSq2FDpK2n66QRUxtqqdbyDuwgbQmUWus
3f03e58dc6 removed 2012-06-07 20:25:14 +00:00
https://www.google.com/accounts/o8/id?id=AItOawkSq2FDpK2n66QRUxtqqdbyDuwgbQmUWus
b778b9b345 Added a comment 2012-06-07 20:23:09 +00:00
https://www.google.com/accounts/o8/id?id=AItOawkSq2FDpK2n66QRUxtqqdbyDuwgbQmUWus
021325ce71 Added a comment 2012-06-07 20:22:58 +00:00
Joey Hess
4d1c114e4d initremote: Automatically describe a remote when creating it.
This ensures that all special remotes show up in git annex status.
Before, a special remote that was not manually described, and was not
a current git remote, did not show up there, although initremote did list
it.
2012-06-07 11:16:48 -04:00
Joey Hess
8408a91082 fixie 2012-06-07 10:37:06 -04:00
http://joeyh.name/
2478aca3c5 Added a comment 2012-06-07 04:48:15 +00:00