Commit graph

28964 commits

Author SHA1 Message Date
Joey Hess
47b7028d7c
pass Len to writeKeyFile so it can detect short reads 2016-11-17 21:32:09 -04:00
Joey Hess
505d1df8ab
refactor 2016-11-17 21:04:35 -04:00
Joey Hess
ae403be24b
avoid setPresent when sending to a peer
This mirrors how git-annex-shell works; recvKey updates location
tracking, but sendKey does not.
2016-11-17 20:54:14 -04:00
Joey Hess
65e903397c
implementation of peer-to-peer protocol
For use with tor hidden services, and perhaps other transports later.

Based on Utility.SimpleProtocol, it's a line-based protocol,
interspersed with transfers of bytestrings of a specified size.

Implementation of the local and remote sides of the protocol is done
using a free monad. This lets monadic code be included here, without
tying it to any particular way to get bytes peer-to-peer.

This adds a dependency on the haskell package "free", although that
was probably pulled in transitively from other dependencies already.

This commit was sponsored by Jeff Goeke-Smith on Patreon.
2016-11-17 18:30:50 -04:00
Joey Hess
e830285431
Merge branch 'master' into tor 2016-11-17 13:40:01 -04:00
Joey Hess
6a5592c05f
avoid tab warnings from ghc 8 2016-11-17 13:39:30 -04:00
Joey Hess
95916b2ecf
Merge branch 'master' into tor 2016-11-17 12:56:27 -04:00
Joey Hess
9cc9bd8a10
Merge branch 'master' of ssh://git-annex.branchable.com 2016-11-16 18:06:44 -04:00
Joey Hess
aedec5d08d
arm build uses 32kb page size
(Change was made in gitannexbuilder scripts not here.)
2016-11-16 18:05:42 -04:00
https://anarc.at/openid/
c9d51f6064 Added a comment: how about reusing the special remote protocol? 2016-11-16 21:58:08 +00:00
Joey Hess
2e4edee607
Merge branch 'master' of ssh://git-annex.branchable.com 2016-11-16 16:18:11 -04:00
Joey Hess
c8a0eb03a5
devblog 2016-11-16 16:17:09 -04:00
Joey Hess
10703dc817
improve comment 2016-11-16 16:03:23 -04:00
Joey Hess
2577f1c0a2
fsck --all --from was checking the content of files in the local repository, rather than on the special remote.
Straight up forgot to handle this case!

This commit was sponsored by Fernando Jimenez on Patreon.
2016-11-16 15:33:57 -04:00
Joey Hess
b4b970d5f2
moreinfo needed 2016-11-16 15:12:46 -04:00
Joey Hess
bd4cf0f663
comment 2016-11-16 15:01:49 -04:00
Joey Hess
2f192583ba
comment 2016-11-16 14:49:47 -04:00
Joey Hess
b868e931a6
moreinfo 2016-11-16 14:43:45 -04:00
Joey Hess
1b71d920e4
comment 2016-11-16 14:43:33 -04:00
Joey Hess
d7b8be75a4
comment 2016-11-16 14:40:28 -04:00
Joey Hess
6d1039822e
already fixed 2016-11-16 14:35:22 -04:00
Joey Hess
681a4e5a58
comment 2016-11-16 14:33:33 -04:00
andrew
887e167937 2016-11-16 15:55:44 +00:00
andrew
4276e713be Added a comment: how to investigate 2016-11-16 15:37:01 +00:00
Joey Hess
2542fb58ed
fix giveup shadowing 2016-11-16 00:28:10 -04:00
Joey Hess
2493c2c5a4
allow Utility.Exception to still be used when not building with cabal 2016-11-15 22:01:55 -04:00
Joey Hess
d2b49090b8
remove debug print 2016-11-15 21:52:10 -04:00
Joey Hess
3b3868fbf7
Merge branch 'master' of ssh://git-annex.branchable.com 2016-11-15 21:31:01 -04:00
Joey Hess
0a4479b8ec
Avoid backtraces on expected failures when built with ghc 8; only use backtraces for unexpected errors.
ghc 8 added backtraces on uncaught errors. This is great, but git-annex was
using error in many places for a error message targeted at the user, in
some known problem case. A backtrace only confuses such a message, so omit it.

Notably, commands like git annex drop that failed due to eg, numcopies,
used to use error, so had a backtrace.

This commit was sponsored by Ethan Aubin.
2016-11-15 21:29:54 -04:00
David_K
057ee30429 removed 2016-11-16 01:28:32 +00:00
David_K
08ca407e67 Added a comment 2016-11-16 01:28:14 +00:00
David_K
6c1f0c6b02 Added a comment 2016-11-16 01:28:04 +00:00
Joey Hess
69915c6c9b
fix tricky warning with ghc 8
Whether Route was exported from Assistant.WebApp.Types
or not depended on the version of ghc. So, explictly export it.
2016-11-15 18:51:07 -04:00
Joey Hess
65c9485c3a
Merge branch 'master' of ssh://git-annex.branchable.com 2016-11-15 18:26:58 -04:00
Joey Hess
556b2ded2b
sync: Pass --allow-unrelated-histories to git merge when used with git git 2.9.0 or newer.
This makes merging a remote into a freshly created direct mode repository
work the same as it works in indirect mode.

The git-annex branches would get merged in any case by a sync,
since that doesn't use git merge.

This might need to be revisited later to better mirror git's behavior.
2016-11-15 18:26:17 -04:00
grawity@2ea26be48562f66fcb9b66307da72b1e2e37453f
501c29a2ad Added a comment 2016-11-15 18:01:18 +00:00
Joey Hess
6416ae9c09
unbreak all the autobuilders
git-annex.cabal: Loosen bounds on persistent to allow 2.5, which on Debian
has been patched to work with esqueleto. This may break cabal's resolver on
non-Debian systems; if so, either use stack to build, or run cabal with
--constraint='persistent ==2.2.4.1' Hopefully this mess with esqueleto will
be resolved soon.

https://github.com/prowdsponsor/esqueleto/issues/137
2016-11-15 11:19:57 -04:00
Joey Hess
aa0da3663a
close 2016-11-15 11:02:21 -04:00
Joey Hess
852c4700f3
Merge branch 'master' of ssh://git-annex.branchable.com 2016-11-15 11:00:04 -04:00
christopher@5845ecd3cef9edadd4dc084df00e1fa60ce311eb
23a8134e0d Added a comment 2016-11-15 12:15:37 +00:00
https://launchpad.net/~stephane-gourichon-lpad
eaf86f4ff5 Added a comment: "Hmm, guyz? Are you serious with these scripts?" Well, what's the matter? 2016-11-15 10:58:32 +00:00
thowz
4805b6e31d 2016-11-15 02:27:52 +00:00
Joey Hess
67c1e87f05
local lan detection 2016-11-14 18:37:56 -04:00
Joey Hess
b9a68957cc
Merge branch 'master' of ssh://git-annex.branchable.com 2016-11-14 16:50:14 -04:00
Joey Hess
35116c5d04
devblog 2016-11-14 16:49:18 -04:00
Joey Hess
57d33f7923
use socket for tor hidden service
This avoids needing to bind to the right port before something else
does.

The socket is in /var/run/user/$uid/ which ought to be writable by only
that uid. At least it is on linux systems using systemd.

For Windows, may need to revisit this and use ports or something.

The first version of tor to support sockets for hidden services
was 0.2.6.3. That is not in Debian stable, but is available in
backports.

This commit was sponsored by andrea rota.
2016-11-14 16:47:56 -04:00
Joey Hess
61fe128bbc
no-xmpp branch 2016-11-14 15:04:16 -04:00
Joey Hess
07ad19f421
git-annex enable-tor command
Tor unfortunately does not come out of the box configured to let hidden
services register themselves on the fly via the ControlPort.

And, changing the config to enable the ControlPort and a particular type
of auth for it may break something already using the ControlPort, or
lessen the security of the system.

So, this leaves only one option to us: Add a hidden service to the
torrc. git-annex enable-tor does so, and picks an unused high port for
tor to listen on for connections to the hidden service.

It's up to the caller to somehow pick a local port to listen on
that won't be used by something else. That may be difficult to do..

This commit was sponsored by Jochen Bartl on Patreon.
2016-11-14 13:48:35 -04:00
Joey Hess
a7fd200440
updated design
more details on using tor and pairing
2016-11-14 12:10:09 -04:00
gfa@1e86118cd41fbfea50004af221471ad97b55af18
c20505f02a Added a comment: same on Debian 2016-11-14 09:13:20 +00:00