haskell/cabal — pull request #1075 by 23Skidoo (2012-10-20 19:16:42+00:00)
Title: Replace the 'unpack' command with a more general 'get'.

This is @jmillikin's `cabal fork` implementation with the UI changes requested by @dcoutts.

The first patch contains John's original implementation of `cabal fork`. The only differences are cosmetic: UI commands `fork` and `unpack` are merged (this is the new `cabal get` command), and the code for forking and unpacking is moved to a single module (`Distribution.Client.Get`).

The second patch removes duplication between the functions `fork` and `unpack`.

The third patch adds support for the repo kind argument to `--source-repository` (`cabal get --source-repository=this PACKAGENAME` now works).