Joey Hess
1198b5444d
now builds with both yesod 1.2 and 1.1
2013-06-03 18:14:22 -04:00
Joey Hess
31753bad46
add liftH shim between yesod versions, to avoid needing zillions of ifdefs
2013-06-03 13:51:54 -04:00
Joey Hess
79fd677805
WIP yesod 1.2
2013-06-03 11:25:23 -04:00
Joey Hess
69bd8d0462
fix android build
2013-05-06 16:45:49 -04:00
Joey Hess
ad6fee422a
fix warning
2013-05-04 16:36:51 -04:00
Joey Hess
d35132810a
Got removable media mount detection working on Android.
...
Bionic has an amusing stub for `getmntent` that prints out
"FIX ME! implement getmntent()"
But, `/proc/mounts` is there, so I just parse it.
2013-05-04 16:19:25 -04:00
Joey Hess
d994f35937
disable hostname validation and canonicalization on android
2013-05-04 14:26:49 -04:00
Joey Hess
0ae8c82c53
per-IA-item content directories
2013-04-25 23:44:55 -04:00
Joey Hess
8a2d1988d3
expose Control.Monad.join
...
I think I've been looking for that function for some time.
Ie, I remember wanting to collapse Just Nothing to Nothing.
2013-04-22 20:24:53 -04:00
Joey Hess
e92a207df5
webapp: When told to add a git repository on a remote server, and the repository already exists as a non-bare repository, use it, rather than initializing a bare repository in the same directory.
2013-04-22 16:21:37 -04:00
Joey Hess
9a5f421768
detect when unwanted remote is empty and remove it
...
Needs fixes to build when the webapp is disabled.
2013-04-03 17:01:40 -04:00
Joey Hess
6fa0d0ecc8
webapp: Run ssh server probes in a way that will work when the login shell is a monstrosity that should have died 25 years ago, such as csh.
2013-03-29 13:09:30 -04:00
Joey Hess
140774a8c8
webapp: Switch all forms to POST.
2013-03-16 18:48:26 -04:00
Joey Hess
996e899acc
webapp: Encourage user to install git-annex on a server when adding a ssh server, rather than just funneling them through to rsync.
2013-03-16 12:58:59 -04:00
Joey Hess
c94c99942b
make liftAnnex and liftAssistant polymorphic, like liftIO
2013-03-16 00:19:56 -04:00
Joey Hess
9b657a2ccc
webapp: Set locally paired repositories to a lower cost than other network remotes.
2013-03-13 14:10:29 -04:00
Joey Hess
907b0c0d78
better liftAnnex, avoid using runAnnex undefined
2013-03-04 16:36:38 -04:00
Joey Hess
9d6fd5b927
webapp: Display any error message from git init if it fails to create a repository.
2013-02-26 13:04:37 -04:00
Joey Hess
7f7c31df1c
type based git config handling
...
Now there's a Config type, that's extracted from the git config at startup.
Note that laziness means that individual config values are only looked up
and parsed on demand, and so we get implicit memoization for all of them.
So this is not only prettier and more type safe, it optimises several
places that didn't have explicit memoization before. As well as getting rid
of the ugly explicit memoization code.
Not yet done for annex.<remote>.* configuration settings.
2012-12-29 23:10:18 -04:00
Joey Hess
551924e6be
webapp: Allow user to specify the ssh port when setting up a remote.
2012-12-06 17:09:38 -04:00
Joey Hess
4f4209b833
webapp: Added help buttons and links next to fields that require explanations.
2012-12-02 22:33:30 -04:00
Joey Hess
7b032dbbc8
webapp: Fix bad interaction between required fields and modals.
2012-12-02 17:32:54 -04:00
Joey Hess
3dfc9cadb0
simplify
2012-11-25 00:38:11 -04:00
Joey Hess
59733456ed
refactor
2012-11-25 00:27:17 -04:00
Joey Hess
0b8027e527
webapp: When setting up authorized_keys, use GIT_ANNEX_SHELL_DIRECTORY.
2012-11-05 12:35:05 -04:00
Joey Hess
33dbb19d99
webapp: Ensure that rsync special remotes are enabled using the same name they were originally created using.
...
It was creating a new special remote with a different name, unless
the stars perfectly aligned and the names matched.
2012-10-31 16:14:52 -04:00
Joey Hess
7fe077ec24
webapp: Fix creation of rsync.net repositories.
2012-10-31 13:58:31 -04:00
Joey Hess
88d1907278
where indentation
2012-10-31 02:34:03 -04:00
Joey Hess
93ffd47d76
finished pushing Assistant monad into all relevant files
...
All temporary and old functions are removed.
2012-10-30 17:14:51 -04:00
Joey Hess
5d57b28a34
lifted Assistant.Sync into Assistant monad
...
lots of nice cleanups
2012-10-29 16:22:14 -04:00
Joey Hess
4dbdc2b666
Assistant monad, stage 2.5
...
Converted several threads to run in the monad.
Added a lot of useful combinators for working with the monad.
Now the monad includes the name of the thread.
Some debugging messages are disabled pending converting other threads.
2012-10-29 02:21:04 -04:00
Joey Hess
4e765327ca
Assistant monad, stage 1
...
This adds the Assistant monad, and an AssistantData structure.
So far, none of the assistant's threads run in the monad yet.
2012-10-29 00:15:43 -04:00
Joey Hess
531f1d1446
add XMPP nudge alert, displayed after making a cloud repository
2012-10-27 12:25:29 -04:00
Joey Hess
7ee0ffaeb9
Use USER and HOME environment when set, and only fall back to getpwent, which doesn't work with LDAP or NIS.
2012-10-25 18:17:54 -04:00
Joey Hess
8932acb5d0
redirect to the new repository version of the end form
2012-10-14 16:11:21 -04:00
Joey Hess
f31d292ab1
after setting up a new repo, go to a special version of the configuration page
2012-10-11 17:35:08 -04:00
Joey Hess
39be7eea40
add standard group selector to repo edit form
2012-10-10 16:04:28 -04:00
Joey Hess
9da7dd8874
webapp: configure new repos to use the standard preferred content settings
2012-10-10 15:35:10 -04:00
Joey Hess
3490977d97
webapp: put new repos in standard groups
...
I'm using transfer for most things, both removable drives and cloud
storage, because it's the safest choice. We'll see if it makes sense
to prompt for the group when setting this up, or let the user pick
something else after the fact.
2012-10-10 15:27:25 -04:00
Joey Hess
a5781fd9ba
webapp automatic grouping
...
webapp: Adds newly created repositories to one of these groups:
clients, drives, servers
This is heuristic, but it's a pretty good heuristic, and can always be
configured.
2012-10-09 14:24:17 -04:00
Joey Hess
33fdcd59be
tweak
2012-09-29 16:22:53 -04:00
Joey Hess
cc0e5b7c52
use getAddrInfo, to support ipv6
2012-09-29 12:50:12 -04:00
Joey Hess
3979086035
use ~/.ssh/git-annex-shell wrapper
...
This was needed for the OSX self-contained app, but is a generally good
idea. It avoids needing perl; is probably faster; and could eventually
be replaced by something faster yet.
2012-09-26 18:59:18 -04:00
Joey Hess
cb3c9340f8
license the webapp under the AGPL 3+
...
This means that anyone serving up the webapp to users as a service
(ie, without providing any git-annex binary at all to the user) still needs
to provide a link to the source code for it, including any modifications
they may make.
This may make git-annex be covered by the AGPL as a whole when it is built
with the webapp. If in doubt, you should ask a lawyer.
When git-annex is built with the webapp disabled, no AGPLed code is used.
Even building in the assistant does not pull in AGPLed code.
2012-09-24 14:48:47 -04:00
Joey Hess
45a26175d6
renamed RsyncFile -> Rsync
2012-09-19 14:28:32 -04:00
Joey Hess
74906ed13f
UI for enabling special remotes
...
Now other repositories can configure special remotes, and when their
configuration has propigated out, they'll appear in the webapp's list of
repositories, with a link to enable them.
Added support for enabling rsync special remotes, and directory special
remotes that are on removable drives. However, encrypted directory special
remotes are not supported yet. The removable drive configuator doesn't
support them yet anyway.
2012-09-13 16:50:02 -04:00
Joey Hess
df337bb63b
hlint
2012-09-13 00:57:52 -04:00
Joey Hess
675621d903
clean up authorized_keys handling
...
Including rollback of adding the key when a pairing response
gets canceled by the user.
2012-09-11 00:23:34 -04:00
Joey Hess
d19bbd29d8
pairing probably works now (untested)
2012-09-10 21:55:59 -04:00
Joey Hess
c20d6f4189
responding to pair requests *almost* works
2012-09-10 17:53:51 -04:00
Joey Hess
b573d91aa2
broke out fairly generic ssh stuff to Assistant.Ssh so pairing can use it too
...
I'd rather Utility.Ssh, but the SshData type is not sufficiently clean and
generic for Utility.
2012-09-10 15:21:34 -04:00
Joey Hess
34a0e09d4b
split up ssh key generation and setup steps
2012-09-10 14:55:15 -04:00
Joey Hess
f62cc48482
reorg templates
2012-09-08 23:32:08 -04:00
Joey Hess
46fd6b54c7
rsync.net configurator tested and 100% working
2012-09-04 15:27:06 -04:00
Joey Hess
b584d96c13
rsync.net configurator display
...
Doesn't set up the repo yet.
2012-09-03 00:39:55 -04:00
Joey Hess
b6a91d7a4d
defer setting up ssh public key until after confirmation
2012-09-02 20:43:32 -04:00
Joey Hess
014974a7da
allow making encrypted rsync special remotes
...
wow, that was easy!
2012-09-02 17:32:24 -04:00
Joey Hess
9f403113dd
make bare repo on server
...
I think this makes sense.. Unless the assistant is running on the server,
the repo won't be updated, so it might as well be bare.
Non-bare repos will be handled by the pairing configurator, later.
2012-09-02 15:30:32 -04:00
Joey Hess
97ce4d24cb
adding ssh remote working
...
Rsync remote still needs work
2012-09-02 15:27:00 -04:00
Joey Hess
837cd79e4f
add ssh confirmation page
...
also broke out webapp types into a separate module
2012-09-02 00:49:25 -04:00
Joey Hess
53043999ac
don't set up authorized_keys during probe
2012-09-01 21:10:40 -04:00
Joey Hess
32ab049f9c
ssh connection testing and key setup
2012-09-01 20:37:35 -04:00
Joey Hess
54a492db5f
UI for adding a ssh or rsync remote
2012-08-31 18:59:57 -04:00
Joey Hess
86fb1305dc
split out local repo configurators
2012-08-31 15:17:12 -04:00