summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* Refactor generation of git-annex.cabal and incorporate man pages.Gravatar Nathan Collins2012-06-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Rename git-annex.cabal.Gravatar Nathan Collins2012-06-10
|
* Add cabal-dev to .gitignore.Gravatar Nathan Collins2012-06-10
|
* Fix Makefile dependencies for `make test`.Gravatar Nathan Collins2012-06-10
|
* Replace indentation spaces by tabs in Setup.hs.Gravatar Nathan Collins2012-06-10
|
* Add a .dir-locals.el that configures emacs' treatment of tabs.Gravatar Nathan Collins2012-06-10
| | | | | | | | 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'.
* Combine post install commands in 'postInst' and add 'postCopy' hook.Gravatar Nathan Collins2012-06-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Merge branch 'master' into cabal-man-pagesGravatar Nathan Collins2012-06-09
|\
* | Make man pages when making sdist.Gravatar Nathan Collins2012-06-09
| |
| * Added a commentGravatar http://joeyh.name/2012-06-09
| |
| * Added a comment: open source?Gravatar https://www.google.com/accounts/o8/id?id=AItOawldKnauegZulM7X6JoHJs7Gd5PnDjcgx-E2012-06-09
| |
| * responseGravatar Joey Hess2012-06-09
| |
| * New idea: using youtube-dl to download video URLsGravatar http://rmunn.myopenid.com/2012-06-09
| |
| * Added a commentGravatar http://joeyh.name/2012-06-09
| |
| * Added a commentGravatar https://www.google.com/accounts/o8/id?id=AItOawkSq2FDpK2n66QRUxtqqdbyDuwgbQmUWus2012-06-08
| |
| * Added a commentGravatar https://www.google.com/accounts/o8/id?id=AItOawkSq2FDpK2n66QRUxtqqdbyDuwgbQmUWus2012-06-08
| |
* | Add note about lhs2tex's man page installation.Gravatar Nathan Collins2012-06-07
| |
| * Added a commentGravatar http://joeyh.name/2012-06-08
| |
| * updateGravatar Joey Hess2012-06-07
| |
| * blog for the dayGravatar Joey Hess2012-06-07
| |
| * removedGravatar https://www.google.com/accounts/o8/id?id=AItOawkSq2FDpK2n66QRUxtqqdbyDuwgbQmUWus2012-06-07
| |
| * Added a commentGravatar https://www.google.com/accounts/o8/id?id=AItOawkSq2FDpK2n66QRUxtqqdbyDuwgbQmUWus2012-06-07
| |
| * Added a commentGravatar https://www.google.com/accounts/o8/id?id=AItOawkSq2FDpK2n66QRUxtqqdbyDuwgbQmUWus2012-06-07
| |
| * initremote: Automatically describe a remote when creating it.Gravatar Joey Hess2012-06-07
| | | | | | | | | | | | | | 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.
| * fixieGravatar Joey Hess2012-06-07
| |
| * Added a commentGravatar http://joeyh.name/2012-06-07
| |
| * Added a comment: WordingGravatar https://www.google.com/accounts/o8/id?id=AItOawnBJ6Dv1glxzzi4qIzGFNa6F-mfHIvv9Ck2012-06-07
| |
| * Added a commentGravatar http://joeyh.name/2012-06-06
| |
| * Added a comment: Dropbox InotifyGravatar https://www.google.com/accounts/o8/id?id=AItOawkmtR6oVColYKoU0SjBORLDGrwR10G-mKo2012-06-06
| |
| * blog for the dayGravatar Joey Hess2012-06-06
| |
| * updateGravatar Joey Hess2012-06-06
| |
| * updateGravatar Joey Hess2012-06-06
| |
| * updateGravatar Joey Hess2012-06-06
| |
| * thoughtsGravatar Joey Hess2012-06-06
| |
| * fixed 2 races! Only 1 serious race to go!Gravatar Joey Hess2012-06-06
| |
| * layoutGravatar Joey Hess2012-06-06
| |
* | WIP: Add man page installation to Setup.hsGravatar Nathan Collins2012-06-06
| | | | | | | | | | | | | | | | This works with `cabal-dev install .`, but `cabal sdist` does not yet include the man pages (tried adding a `make $(mans)` before `cabal sdist` in `make sdist`, but no luck). XXX: Need to go back and replace spaces with tabs.
* | Remove INSTALL note about man pages.Gravatar Nathan Collins2012-06-06
| |
| * move hashObject to HashObject library and generalize it to support all git ↵Gravatar Joey Hess2012-06-06
| | | | | | | | object types
| * factor out generic update-index code from unionmerge codeGravatar Joey Hess2012-06-06
| |
| * updateGravatar Joey Hess2012-06-06
| |
* | Make standalone man-page installation possibleGravatar Nathan Collins2012-06-05
|/ | | | | | The `cabal install git-annex` doesn't install the man pages, and the Makefile only installed the man pages as part of a full build/install. So, I factored out the documentation parts of the Makefile.
* daily blogGravatar Joey Hess2012-06-05
|
* closed a race, although a less likely similar one remainsGravatar Joey Hess2012-06-05
|
* add: Prevent (most) modifications from being made to a file while it is ↵Gravatar Joey Hess2012-06-05
| | | | | | | | | | | being added to the annex. Anything that tries to open the file for write, or delete the file, or replace it with something else, will not affect the add. Only if a process has the file open for write before add starts can it still change it while (or after) it's added to the annex. (fsck will catch this later of course)
* use createAnnexDirectory when setting up tmp dirGravatar Joey Hess2012-06-05
|
* update test suiteGravatar Joey Hess2012-06-05
|
* separate source of content from the filename associated with the key when ↵Gravatar Joey Hess2012-06-05
| | | | | | generating a key This already made migrate's code a lot simpler.
* updateGravatar Joey Hess2012-06-05
|
* one moreGravatar Joey Hess2012-06-05
|