Skip to content

Commit 2a5b352

Browse files
committed
Perform optimization rewrite and extend testing
1 parent b692226 commit 2a5b352

File tree

3 files changed

+411
-227
lines changed

3 files changed

+411
-227
lines changed

README.md

Lines changed: 6 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -24,40 +24,28 @@ To mount the filesystem from the command line:
2424
globaleaks-eph-fs <mountpoint> [--storage_directory <directory>]
2525
```
2626

27+
- `--storage_directory STORAGE_DIRECTORY` (optional): The directory used for storage. If not provided, a temporary directory will be used.
28+
- `--unmount`, `-u` (optional): If this flag is specified, the program will attempt to unmount the filesystem from the specified `<mount_point>`.
2729
- `<mountpoint>`: The path where the filesystem will be mounted.
28-
- `--storage_directory` (optional): The directory used for storage. If not provided, a temporary directory will be used.
2930

3031
### Python API
3132

3233
You can also use `globaleaks-eph-fs` within your Python code. Here's an example:
3334

3435
```python
35-
import argparse
36-
from globaleaks_eph_fs import EphemeralFS
36+
from globaleaks_eph_fs import mount_globaleaks_eph_fs
3737

38-
def main():
39-
parser = argparse.ArgumentParser(description="GLOBALEAKS EPHEMERAL FS")
40-
parser.add_argument('mount_point', help="Path to mount the filesystem")
41-
parser.add_argument('--storage_directory', '-s', help="Optional storage directory. Defaults to a temporary directory.")
42-
args = parser.parse_args()
38+
eph_fs_thread = mount_globaleaks_eph_fs(/mnt/globaleaks-eph-fs)
4339

44-
EphemeralFS(args.mount_point, args.storage_directory, nothreads=True, foreground=True)
45-
46-
47-
if __name__ == '__main__':
48-
main()
40+
eph_fs_thread.join()
4941
```
5042

51-
### Arguments
52-
53-
- `mount_point` (required): The directory where the encrypted filesystem will be mounted.
54-
- `--storage_directory` (optional): Specify a custom storage directory for the filesystem. If not provided, a temporary directory will be used.
55-
5643
## Features
5744

5845
- **ChaCha20 Encryption**: All data stored in the filesystem is encrypted with ChaCha20.
5946
- **FUSE Integration**: Mount the filesystem as a virtual disk using FUSE.
6047
- **Temporary Storage**: The filesystem is ephemeral and can use a temporary directory for storage.
48+
- **Metadata Free**: The filesystem preserve only files content enforcing random uuid4 files' names.
6149

6250
## Requirements
6351

0 commit comments

Comments
 (0)