CI to automate build of cargo lockfiles on different Alpine releases for git-annex aports
https://gitlab.alpinelinux.org/alpine/aports/-/tree/master/community/git-annex
![]() 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. |
||
---|---|---|
Annex | ||
Backend | ||
Build | ||
Command | ||
Common | ||
debian | ||
doc | ||
Git | ||
Logs | ||
Messages | ||
Remote | ||
Types | ||
Upgrade | ||
Utility | ||
.ghci | ||
.gitattributes | ||
.gitignore | ||
Annex.hs | ||
Backend.hs | ||
CHANGELOG | ||
Checks.hs | ||
CmdLine.hs | ||
Command.hs | ||
Common.hs | ||
Config.hs | ||
configure.hs | ||
Crypto.hs | ||
git-annex.cabal | ||
git-annex.hs | ||
git-union-merge.hs | ||
Git.hs | ||
GitAnnex.hs | ||
GitAnnexShell.hs | ||
GPL | ||
Init.hs | ||
INSTALL | ||
Limit.hs | ||
Locations.hs | ||
Makefile | ||
mdwn2man | ||
Messages.hs | ||
NEWS | ||
Option.hs | ||
README | ||
Remote.hs | ||
Seek.hs | ||
Setup.hs | ||
test.hs | ||
Types.hs | ||
Upgrade.hs | ||
Usage.hs |
git-annex allows managing files with git, without checking the file contents into git. While that may seem paradoxical, it is useful when dealing with files larger than git can currently easily handle, whether due to limitations in memory, checksumming time, or disk space. For documentation, see doc/ or <http://git-annex.branchable.com/>