boxafe
Boxafe mounts EncFS filesystems or "boxes" that you define in a configuration file with a friendly DSL.
It can also mount them on startup. EncFS must be installed separately.
Note: Currently supports OS X. Partial Linux support.
Requirements
Installation
gem install boxafe
Configuration
Location: ~/.boxafe.rb
box do
name 'A box'
root '/secure/abox'
mount '/Volumes/abox'
end
box do
name 'Password file box'
root '/secure/password-file-box'
mount '/Volumes/password-file-box'
password_file '/secret/password'
end
box do
name 'Keychain box'
root '/secure/keychain-box'
mount '/Volumes/keychain-box'
keychain 'keychain-box-password'
end
box do
name 'Custom box'
root '/secure/custom-box'
mount '/Volumes/custom-box'
encfs_config '/secure/.custom-box.encfs6.xml'
end
box do
name 'Volume box'
root '/secure/volume-box'
mount '/Volumes/volume-box'
volume 'Secure Volume'
end
config = {
name: 'Hash box',
root: '/secure/hash-box',
mount: '/Volumes/hash-box'
}
box config
box env(:box_name, :box_root, :box_mount)
encfs '/opt/local/bin/encfs'
umount '/usr/local/bin/umount'
Usage
boxafe mount
boxafe unmount
boxafe mount 'A box'
boxafe unmount 'A box'
boxafe status
boxafe start
boxafe stop
Compatibility
Boxafe is currently geared towards OS X with partial Linux support.
Cron scheduling is partially implemented with whenever,
and other extpass methods like a password file would be helpful.
Contributing
- Fork
- Create a topic branch -
git checkout -b my_branch
- Push to your branch -
git push origin my_branch
- Create a pull request from your branch
Please add a changelog entry for new features and bug fixes.
Writing specs will get your code pulled faster.
Roadmap
This is the list of planned features/changes:
- Complete test suite.
- Growl/OS X notifications.
- "Repair" feature to un-quarantine files on OS X.
- Cron scheduling with whenever.
Meta
- Author: Simon Oulevay (Alpha Hydrae)
- License: MIT (see LICENSE.txt)