1 # Armadillo File Manager
3 Armadillo is a web-based file manager. It allows you to list, move, rename,
4 delete, and download files through your browser. It's the ideal solution for a
5 home media center, allowing you to manage your files from your couch.
9 Installation requires the [Go runtime](http://golang.org/doc/install) because
10 there is no binary distribution yet.
12 After installing Go, clone this repository and type `make`:
14 $ git clone https://github.com/rsesek/armadillo
17 # Or to minify the JavaScript:
21 If you have Java installed, you can use the
22 [Closure Compiler](https://developers.google.com/closure/compiler/) to minify
23 and compile the frontend JavaScript code by typing `make release`.
25 After building, you will have a binary named `armadillo`.
29 Armadillo can either be configured using command line parameters, or via a JSON
30 configuration file in `~/.armadillo`. The two important directives are
31 "JailRoot" and "Port":
34 # No operations will be performed outside of this directory. Everything in
35 # this directory and below will be served by Armadillo.
36 "JailRoot": "/path/to/root",
38 # The port on which to run Armadillo.
42 You can specify these values on the command line. See `armadillo -help` for
47 Armadillo does not fork itself into a daemon process; it runs under the user
48 who started t. This is because it needs read and write permission to the file
51 **NOTE: Armadillo provides no form of authorization or authentication. It is
52 recommended to either only run it on your local network, or to place it behind
53 a reverse web proxy like [nginx](http://nginx.org) or
54 [Apache](http://httpd.apache.org) to provide security.** Configuring those
55 servers is beyond the scope of this document.
59 On Mac OS X, the recommended way to start Armadillo on launch is to use
60 launchd. Create a file called
61 `~/Library/LaunchAgents/org.bluestatic.armadillo.plist` with this content:
63 <?xml version="1.0" encoding="UTF-8"?>
64 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
68 <string>org.bluestatic.armadillo</string>
69 <key>ProgramArguments</key>
71 <string>/Users/your_name/Projects/armadillo/armadillo</string>
72 <string>-config=/path/to/config.json</string>
83 launchctl load ~/Library/LaunchAgents/org.bluestatic.armadillo.plist
85 And armadillo will start serving with the configuration file you specified in
86 the plist. The next time you log in, armadillo will run automatically.