Merge branch 'master' into assistant

Conflicts:
	Makefile
	debian/copyright
This commit is contained in:
Joey Hess 2012-08-20 16:04:56 -04:00
commit 68f1be8f0a
15 changed files with 481 additions and 22 deletions

View file

@ -0,0 +1,9 @@
[[!comment format=mdwn
username="http://claimid.com/strager"
ip="173.228.13.253"
subject="comment 1"
date="2012-08-17T15:59:49Z"
content="""
It was fun to have you here! =]
"""]]

View file

@ -0,0 +1,40 @@
As I prepare to dive back into development, now is a good time to review
what I've built so far, and how well I'm keeping up with my planned
[[roadmap|assistant]].
I started working two and a half months ago, so am nearing the end of
the three months I originally asked to be funded for on Kickstarter.
I've built much of what I planned to build in the first three months --
[[inotify]] is done (and kqueue is basically working, but needs scalability
work), local [[syncing]] is done, the [[webapp]] works, and I've built some
of the first [[configurators]]. It's all functional in a narrow use case
involving syncing to removable drives.
[[progressbars]] still need to be dealt with, and network syncing needs to
be revisited soon, so that I can start building easy configurators for
further use cases, like using the cloud, or another machine on the local
network.
I think I'm a little behind my original schedule, but not too bad,
and at the same time, I think I've built things rather more solidly than I
expected them to be at this point. I'm particularly happy with how well
the inotify code works, no matter what is thrown at it, and how nice
the UI in the webapp is shaping up to be.
----
I also need to get started on fulfilling my Kickstarter rewards, and
I was happy to spend some time in the airport working on the main
blocker toward that, a lack of a scalable git-annex logo, which is needed
for printing on swag.
Turns out that inkscape has some amazing bitmap tracing capabilities.
I was able to come up with this scalable logo in short order, it
actually took longer to add back the colors, as the tracer generated a
black and white version.
With that roadblock out of the way, I am moving toward ordering large
quantities of usb drives, etc.
[[logo.svg]]

View file

@ -9,7 +9,7 @@ through setting up common use cases.
* Create a repository (run when the web app is started without a configured
repository too).
* Clone this repo to a USB drive.
* Clone this repo to a USB drive or other removable drive. **done**
* Clone this repo to another host. (Needs [[pairing]])
* Set up Amazon S3.
* Set up rsync remote.

View file

@ -1,6 +1,6 @@
Things that don't fit anywhere else:
* Automatically start daemon on boot or when user logs in.
* Automatically start daemon on boot or when user logs in. **done**
* Somehow get content that is unavailable. This is problematic with inotify,
since we only get an event once the user has tried (and failed) to read
from the file. This is only needed if all the files in the directory

View file

@ -1,27 +1,14 @@
The webapp is a web server that displays a shiny interface.
## security
* Listen only to localhost. **done**
* Instruct the user's web browser to open an url that contains a secret
token. This guards against other users on the same system. **done**
(I would like to avoid passwords or other authentication methods,
it's your local system.)
* Don't pass the url with secret token directly to the web browser,
as that exposes it to `ps`. Instead, write a html file only the user can read,
that redirects to the webapp. **done**
* Alternative for Linux at least would be to write a small program using
GTK+ Webkit, that runs the webapp, and can know what user ran it, avoiding
needing authentication.
## interface
* list of files uploading and downloading **done**
* button to open file browser on repo (`xdg-open $DIR`) **done**
* progress bars for each file (see [[progressbars]])
* drag and drop to reorder
* cancel and pause
* keep it usable w/o javascript, and accessible to blind, etc
* cancel, pause, and resume **done**
* keep it usable w/o javascript **done**
* keep it accessible to blind, etc
## other features
@ -42,3 +29,17 @@ The webapp is a web server that displays a shiny interface.
* record repository that was made, and use it next time run **done**
* write a pid file, to prevent more than one first-start process running
at once **done**
## security **acceptable/done**
* Listen only to localhost. **done**
* Instruct the user's web browser to open an url that contains a secret
token. This guards against other users on the same system. **done**
(I would like to avoid passwords or other authentication methods,
it's your local system.)
* Don't pass the url with secret token directly to the web browser,
as that exposes it to `ps`. Instead, write a html file only the user can read,
that redirects to the webapp. **done**
* Alternative for Linux at least would be to write a small program using
GTK+ Webkit, that runs the webapp, and can know what user ran it, avoiding
needing authentication.