Opened 11 years ago
Closed 5 years ago
#41466 closed submission (fixed)
port request: 'git-annex'
Reported by: | KurtPfeifle (Kurt Pfeifle) | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | |
Keywords: | Cc: | cooljeanius (Eric Gallager), ci42, mojca (Mojca Miklavec), pixilla (Bradley Giesbrecht), lpsinger (Leo Singer), grosshei@…, dliessi (Davide Liessi), ryandesign (Ryan Carsten Schmidt), samuel@…, dgsb (David Bariod) | |
Port: | git-annex |
Description
'git-annex' can manage files with Git, but without needing them to be checked into Git. Recent versions of git-annex come with an assistant which makes it very easy to create and manage synchronised folders (with identical contents everywhere) on each of one's Mac, Linux or Android computers or cloud services used.
Upstream sources are here: http://git-annex.branchable.com/
(For those unfamiliar with git-annex, it's worth while to watch this introduction screencast: https://downloads.kitenet.net/videos/git-annex/git-annex-assistant-intro.ogv )
Attachments (1)
Change History (33)
comment:1 Changed 11 years ago by cooljeanius (Eric Gallager)
Cc: | egall@… added |
---|
comment:2 Changed 11 years ago by cooljeanius (Eric Gallager)
It has a lot of dependencies for building from source: http://git-annex.branchable.com/install/fromscratch/
Haskell stuff:
Dependency | Status in MacPorts |
---|---|
The Haskell Platform (GHC 7.4 or newer) | Our ghc port is at version 7.6.3 |
mtl (2.1.1 or newer) | Our hs-mtl port (a subport of the haskell-platform) is at version 2.1.2 |
MissingH | we have a missingh port (now known as hs-missingh) |
utf8-string | we have a port for hs-utf8-string |
SHA | we have a port for hs-sha |
cryptohash (optional but recommended) | |
dataenc | we have port for hs-dataenc |
monad-control | |
QuickCheck 2 | we have a port for hs-quickcheck (a subport of the haskell-platform), which is at version 2.6... |
json | we have a port for hs-json |
aeson | |
IfElse | |
dlist | we have a port for hs-dlist |
bloomfilter | |
edit-distance | |
hS3 (optional) | |
DAV (optional) | nothing close |
SafeSemaphore | nothing close |
UUID | we have a port for ossp-uuid, but not for the haskell bindings to it... |
regex-tdfa | we have a port for hs-regex-tdfa |
extensible-exceptions | we have a port for hs-extensible-exceptions |
feed | nothing close |
async | we have a port for hs-async (which is a subport of the haskell-platform) |
Optional haskell stuff, used by the assistant and its webapp
Dependency | Status in MacPorts |
---|---|
stm (version 2.3 or newer) | Our hs-stm port (a subport of the haskell-platform) is version 2.4.2 |
hinotify (Linux only) | N/A |
dbus | we have a dbus port, but not one for haskell bindings to it |
yesod | nothing close |
yesod-static | nothing close |
yesod-default | nothing close |
data-default | we have a port for hs-data-default |
case-insensitive | we have a port for hs-case-insensitive (as a subport for the haskell-platform) |
http-types | we have a port for just hs-http (as part of the haskell-platform), but not for hs-http-types |
wai | nothing close |
wai-logger | nothing close |
warp | no haskell ports are close |
blaze-builder | we have a port for hs-blaze-builder |
crypto-api | I mentioned above that we have a port for hs-crypto-api |
hamlet | nothing close |
clientsession | nothing close |
network-multicast | we have a port for just hs-network (subport of haskell-platform), but not hs-network-multicast |
network-info | we have a port for just hs-network (subport of haskell-platform), but not hs-network-info |
network-protocol-xmpp | we have a port for just hs-network (subport of haskell-platform), but not hs-network-protocol-xmpp |
dns | no haskell ports are close |
xml-types | we have a port for just hs-xml, but not hs-xml-types |
HTTP | as above, we have a port for hs-http as a subport of the haskell-platform |
unix-compat | nothing close |
MonadCatchIO-transformers | nothing close |
Shell commands
git | git comes with Xcode as of Xcode 4; we also have a port for git called "git-core"
|
xargs | part of OS X; MacPorts provides a gxargs as part of its findutils port, which has a symlink to its un-g-prefixed name in /opt/local/libexec/gnubin
|
rsync | part of OS X; MacPorts also has a port for rsync |
curl (optional, but recommended) | part of OS X; MacPorts also has a port for curl |
wget (optional) | Removed from OS X as of 10.1 Puma; MacPorts has a port for wget |
sha1sum (optional, but recommended; a sha1 command will also do) | MacPorts's sha1sum command is provided by the md5sha1sum port.
|
gpg (optional; needed for encryption) | MacPorts has a gnupg port |
lsof (optional; recommended for watch mode) | part of OS X; MacPorts does not provide its own version |
gcrypt (optional) | MacPorts has a libgcrypt port and perl bindings to it... it is not the exact thing linked to here, though... |
multicast DNS support, provided on linux by nss-mdns (optional; recommended for the assistant to support pairing well) | OS X has bonjour built-in for multicast dns support. I forked nss-mdns with the intention of bringing it to MacPorts, but failed to get it to build for OS X, and as such, I have not been able to write a Portfile for it yet... MacPorts does have a port for mdnsd, though, which is another software package that provides multicast DNS support (I also have my own fork of the mdnsd Portfile, which points to my own fork of the entire mdnsd package itself). |
ikiwiki (optional; used to build the docs) | we have a port for ikiwiki |
I suppose we could just have MacPorts download the pre-built app bundle (if adding ports for all of these haskell dependencies is too much of an issue): http://downloads.kitenet.net/git-annex/OSX/current/
comment:3 Changed 11 years ago by cooljeanius (Eric Gallager)
OK, I should be done updating my table in the previous post now... you should probably also consider cc-ing cal on this, seeing as he is the maintainer for most of the Haskell ports...
comment:4 follow-up: 5 Changed 11 years ago by neverpanic (Clemens Lang)
Adding haskell ports is rather easy. You'd start by copying one of the haskell portfiles, e.g. hs-utf8-string
, modifying the haskell.setup
line, removing the revision, if any and generating the correct checksums using port -v checksum
.
comment:5 Changed 11 years ago by cooljeanius (Eric Gallager)
Replying to cal@…:
Adding haskell ports is rather easy. You'd start by copying one of the haskell portfiles, e.g.
hs-utf8-string
, modifying thehaskell.setup
line, removing the revision, if any and generating the correct checksums usingport -v checksum
.
Yeah, but I wouldn't be able to test them properly... my installed haskell ports are kind of broken...
comment:9 Changed 11 years ago by cooljeanius (Eric Gallager)
comment:14 Changed 11 years ago by neverpanic (Clemens Lang)
comment:18 follow-up: 22 Changed 10 years ago by lpsinger (Leo Singer)
I'm attaching a minimal Portfile; it may be missing some dependencies. Note that I am stuck on building hs-missingh; see #47384.
comment:21 Changed 10 years ago by mf2k (Frank Schima)
Port: | git-annex added |
---|---|
Type: | request → submission |
comment:22 Changed 10 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | ryandesign@… added |
---|
comment:23 follow-up: 24 Changed 10 years ago by lpsinger (Leo Singer)
Yes, lots. I started descending down the tree of dependencies and manually updating or adding ports as needed. My local ports repo has the following updated/new ports in it:
hs-asn1-encoding hs-asn1-parse hs-asn1-types hs-bloomfilter hs-cipher-des hs-clock hs-connection hs-crypto-cipher-types hs-crypto-pubkey hs-crypto-pubkey-types hs-esqueleto hs-git-annex hs-hourglass hs-http-client hs-http-client-conduit hs-http-client-tls hs-http-conduit hs-mime-types hs-network-info hs-streaming-commons hs-tls hs-tls-extra hs-unix hs-unix-compat hs-uuid hs-uuid-types hs-x509 hs-x509-store hs-x509-system hs-x509-validation
and there are still some missing. Is there a script for scraping the Haskell web site to generate these ports?
comment:24 Changed 10 years ago by pixilla (Bradley Giesbrecht)
Replying to aronnax@…:
... Is there a script for scraping the Haskell web site to generate these ports?
Not that I'm aware of, however, there is a MacPorts GSoC 2015 "Generating Portfiles" project that aims to create one.
comment:27 follow-up: 29 Changed 9 years ago by neverpanic (Clemens Lang)
This isn't happening until we've automated creating Haskell ports from cabal. I've seen other projects do it, so it's basically a matter of writing a few day's worth of Haskell. It's on my todo list, but pretty far at the bottom. Help would be welcome.
comment:28 Changed 8 years ago by dgsb (David Bariod)
Cc: | dgsb added |
---|
comment:29 follow-up: 30 Changed 8 years ago by dgsb (David Bariod)
Replying to neverpanic:
This isn't happening until we've automated creating Haskell ports from cabal. I've seen other projects do it, so it's basically a matter of writing a few day's worth of Haskell. It's on my todo list, but pretty far at the bottom. Help would be welcome.
Hi Clemens,
I'm pretty illiterate in haskell ecosystem, is there any other way we can help to make this topic pop up on your todo ?
Best, David
comment:30 Changed 8 years ago by neverpanic (Clemens Lang)
Replying to dgsb:
I'm pretty illiterate in haskell ecosystem,
So am I, so writing a tool that does the job also involves learning quite a bit more of Haskell than I currently know.
is there any other way we can help to make this topic pop up on your todo?
I'm afraid not.
comment:31 Changed 7 years ago by avdyk (Arnaud Vandyck)
I've just discover this tool and use it on my Debian@work. I'd like to use it on my MacBook too ;-)
Is there still a lot of job to do to get git-annex in Mac Ports?
Cheers,
comment:32 Changed 5 years ago by neverpanic (Clemens Lang)
Resolution: | → fixed |
---|---|
Status: | new → closed |
Cc Me!