summaryrefslogtreecommitdiff
path: root/Assistant
Commit message (Collapse)AuthorAge
* Fix nautilus script installation to not crash when the nautilus script dir ↵Gravatar Joey Hess2014-04-05
| | | | | | | does not exist. Instead, only install scripts when the directory already exists. nautilus creates this directory each time run, so this avoids putting cruft in user's home
* assistant: Adjust ssh authorized keys line generated in local pairing or for ↵Gravatar Joey Hess2014-04-02
| | | | a remote ssh server to set environment variables in an alternative way that works with the non-POSIX fix shell, as well as POSIX shells.
* Added required content configuration.Gravatar Joey Hess2014-03-29
| | | | | | | This includes checking when dropping files that any required content configuration is satisfied. However, it does not yet include an active check on the required content; the location log is trusted when checking the required content expression.
* reload preferred content when group preferred content log changesGravatar Joey Hess2014-03-29
|
* reorg matcher types; no non-type code changesGravatar Joey Hess2014-03-29
|
* use shebang libGravatar Joey Hess2014-03-23
|
* installNautilus: “exec” git-annex and protect params with “--”Gravatar Johan Kiviniemi2014-03-23
|
* webapp: Automatically install Nautilus integration scripts to get and drop ↵Gravatar Joey Hess2014-03-22
| | | | | | files. This commit was sponsored by Gian-Maria Daffre.
* add desktop notificationsGravatar Joey Hess2014-03-22
| | | | | | | Motivation: Hook scripts for nautilus or other file managers need to provide the user with feedback that a file is being downloaded. This commit was sponsored by THM Schoemaker.
* rename favicon.png to logo_16x16.pngGravatar Joey Hess2014-03-16
| | | | | This was never used as a favicon, it's just a png version of the favicon.ico. It's actually used for the freedesktop menu file.
* webapp: Use securemem for constant time auth token comparisons.Gravatar Joey Hess2014-03-12
| | | | | Debian stable does not have securemem, but neither does it have warp-tls, so just disable use of securemem when not building with https support.
* another old warp-tls workaroundGravatar Joey Hess2014-03-12
|
* use Monoid instance for OrderingGravatar Joey Hess2014-03-09
|
* assistant: Smarter log file rotation, which takes free disk space into account.Gravatar Joey Hess2014-03-05
|
* annex.startupscan can be set to false to disable the assistant's startup scan.Gravatar Joey Hess2014-03-05
|
* webapp: Include no-pty in ssh authorized_keys lines.Gravatar Joey Hess2014-03-05
| | | | | | git-annex-shell does not need a pty, so this speeds things up. Also, it may avoid weird misconfigured systems that try to run screen or tmux on every ssh login from doing so.
* sync: Automatically resolve merge conflict between and annexed file and a ↵Gravatar Joey Hess2014-03-04
| | | | | | | | | | | | | | | | | | | regular git file. This is a new feature, it was not handled before, since it's a bit of an edge case. However, it can be handled exactly the same as a file/dir conflict, just leave the non-annexed item alone. While implementing this, the core resolveMerge' function got a lot simpler and clearer. Note especially that where before there was an asymetric call to stagefromdirectmergedir, now graftin is called symmetrically in both cases. And, in order to add that `graftin us`, the current branch needed to be known (if there is no current branch, there cannot be a merge conflict). This led to some cleanups of how autoMergeFrom behaved when there is no current branch. This commit was sponsored by Philippe Gauthier.
* factor out Annex.AutoMerge from Command.SyncGravatar Joey Hess2014-03-04
|
* annex.listen can be configured, instead of using --listenGravatar Joey Hess2014-03-01
|
* use https when .git/annex/privkey.pem and .git/annex/certificate.pem exist ↵Gravatar Joey Hess2014-02-28
| | | | | | | (untested) I have not managed to generate a key that is accepted by the old version of warp-tls I have here.
* Put non-object tmp files in .git/annex/misctmp, leaving .git/annex/tmp for ↵Gravatar Joey Hess2014-02-26
| | | | | | | | | | | | | | | | | | | | only partially transferred objects. This allows eg, putting .git/annex/tmp on a ram disk, if the disk IO of temp object files is too annoying (and if you don't want to keep partially transferred objects across reboots). .git/annex/misctmp must be on the same filesystem as the git work tree, since files are moved to there in a way that will not work cross-device, as well as symlinked into there. I first wanted to put the tmp objects in .git/annex/objects/tmp, but that would pose transition problems on upgrade when partially transferred objects existed. git annex info does not currently show the size of .git/annex/misctemp, since it should stay small. It would also be ok to make something clean it out, periodically.
* only warn about no dbus when building on linuxGravatar Joey Hess2014-02-25
|
* fix all remaining -Wall warnings on WindowsGravatar Joey Hess2014-02-25
|
* add UrlOptions sum typeGravatar Joey Hess2014-02-24
|
* remove Read instance for RefGravatar Joey Hess2014-02-19
| | | | | | | | Removed instance, got it all to build using fromRef. (With a few things that really need to show something using a ref for debugging stubbed out.) Then added back Read instance, and made Logs.View use it for serialization. This changes the view log format.
* Revert "work around what is likely a bug in a new version of ssh"Gravatar Joey Hess2014-02-14
| | | | | | | This reverts commit 07ab0b85ce375c1882e13780e525aba8918c6fdf. Bug was fixed in -2 of debian package, and is fixed upstream (unsure what upstream release specificically)
* work around what is likely a bug in a new version of sshGravatar Joey Hess2014-02-14
| | | | | This avoids running into it for new setups, but does not transition old setups. Just a quick fix; I hope to get ssh fixed.
* windows: Fix process termination code.Gravatar Joey Hess2014-02-13
| | | | | | | | | | | The ctrl-c hack used before didn't actually seem to work. No haskell libraries expose TerminateProcess. I tried just calling it via FFI, but got segfaults, probably to do with the wacky process handle not being managed correctly. Moving it all into one C function worked. This was hell. The EvilLinker hack was just final icing on the cake. We all know what the cake was made of.
* fix windows buildGravatar Joey Hess2014-02-11
|
* plumb creds from webapp to initremoteGravatar Joey Hess2014-02-11
| | | | | Avoids abusing setting environment variables, which was always a hack and won't work on windows.
* Fix build on platforms not supporting the webapp.Gravatar Joey Hess2014-02-08
|
* remove some monkey facesGravatar Joey Hess2014-02-01
|
* improve sync with xmpp and annex-ignoreGravatar Joey Hess2014-02-01
| | | | | | * sync --content: Honor annex-ignore configuration. * sync: Don't try to sync with xmpp remotes, which are only currently supported when using the assistant.
* avoid using function named that conflicts with name used in newer version of ↵Gravatar Joey Hess2014-01-29
| | | | process library
* fix delay of daily sanity check (hacked for testing and accidentially committed)Gravatar Joey Hess2014-01-23
|
* try to drop unused object if it does not need to be transferred anywhereGravatar Joey Hess2014-01-23
|
* fix transfers of key with no associated fileGravatar Joey Hess2014-01-23
| | | | | | | | | | | | | | | | | Several places assumed this would not happen, and when the AssociatedFile was Nothing, did nothing. As part of this, preferred content checks pass the Key around. Note that checkMatcher is sometimes now called with Just Key and Just File. It currently constructs a FileMatcher, ignoring the Key. However, if it constructed a FileKeyMatcher, which contained both, then it might be possible to speed up parts of Limit, which currently call the somewhat expensive lookupFileKey to get the Key. I have not made this optimisation yet, because I am not sure if the key is always the same. Will need some significant checking to satisfy myself that's the case..
* add webapp UI to manage unused filesGravatar Joey Hess2014-01-23
|
* allow annex.expireunused to be set to false, as well as to a durationGravatar Joey Hess2014-01-22
|
* assistant unused file handlingGravatar Joey Hess2014-01-22
| | | | | | | | | | | | | | | | | | | Make sanity checker run git annex unused daily, and queue up transfers of unused files to any remotes that will have them. The transfer retrying code works for us here, so eg when a backup disk remote is plugged in, any transfers to it are done. Once the unused files reach a remote, they'll be removed locally as unwanted. If the setup does not cause unused files to go to a remote, they'll pile up, and the sanity checker detects this using some heuristics that are pretty good -- 1000 unused files, or 10% of disk used by unused files, or more disk wasted by unused files than is left free. Once it detects this, it pops up an alert in the webapp, with a button to take action. TODO: Webapp UI to configure this, and also the ability to launch an immediate cleanup of all unused files. This commit was sponsored by Simon Michael.
* assistant: Run the periodic git gc in batch mode.Gravatar Joey Hess2014-01-22
|
* reorganize numcopies code (no behavior changes)Gravatar Joey Hess2014-01-21
| | | | | | | Move stuff into Logs.NumCopies. Add a NumCopies newtype. Better names for various serialization classes that are specific to one thing or another.
* global numcopies settingGravatar Joey Hess2014-01-20
| | | | | | | | | | | | | | | | | | | | | | | * numcopies: New command, sets global numcopies value that is seen by all clones of a repository. * The annex.numcopies git config setting is deprecated. Once the numcopies command is used to set the global number of copies, any annex.numcopies git configs will be ignored. * assistant: Make the prefs page set the global numcopies. This global numcopies setting is needed to let preferred content expressions operate on numcopies. It's also convenient, because typically if you want git-annex to preserve N copies of files in a repo, you want it to do that no matter which repo it's running in. Making it global avoids needing to warn the user about gotchas involving inconsistent annex.numcopies settings. (See changes to doc/numcopies.mdwn.) Added a new variety of git-annex branch log file, that holds only 1 value. Will probably be useful for other stuff later. This commit was sponsored by Nicolas Pouillard.
* much better command action handling for sync --contentGravatar Joey Hess2014-01-20
|
* sync --content: New option that makes the content of annexed files be ↵Gravatar Joey Hess2014-01-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | transferred. Similar to the assistant, this honors any configured preferred content expressions. I am not entirely happpy with the implementation. It would be nicer if the seek function returned a list of actions which included the individual file gets and copies and drops, rather than the current list of calls to syncContent. This would allow getting rid of the somewhat reundant display of "sync file [ok|failed]" after the get/put display. But, do that, withFilesInGit would need to somehow be able to construct such a mixed action list. And it would be less efficient than the current implementation, which is able to reuse several values between eg get and drop. Note that currently this does not try to satisfy numcopies when getting/putting files (numcopies are of course checked when dropping files!) This makes it like the assistant, and unlike get --auto and copy --auto, which do duplicate files when numcopies is not yet satisfied. I don't know if this is the right decision; it only seemed to make sense to have this parallel the assistant as far as possible to start with, since I know the assistant works. This commit was sponsored by Øyvind Andersen Holm.
* assistant: Detect if .git/annex/index is corrupt at startup, and recover.Gravatar Joey Hess2014-01-14
|
* avoid needing a build-dep on hxt for Data.AssocListGravatar Joey Hess2014-01-14
|
* Fix a long-standing bug that could cause the wrong index file to be used ↵Gravatar Joey Hess2014-01-14
| | | | when committing to the git-annex branch, if GIT_INDEX_FILE is set in the environment. This typically resulted in git-annex branch log files being committed to the master branch and later showing up in the work tree. (These log files can be safely removed.)
* add GETAVAILABILITY to external special remote protocolGravatar Joey Hess2014-01-13
| | | | | And some reworking of types, and added an annex-availability git config setting.
* revert use of Data.Map.StrictGravatar Joey Hess2014-01-07
| | | | | memory profile shows this did not contribute to the memory leaks fixed in 4cf6d95c1a9d10cb59669eaceafce4c7a3155eb6