Skip to content

Commit 3d595f5

Browse files
committed
Perform optimization rewrite and extend testing
1 parent b692226 commit 3d595f5

File tree

3 files changed

+408
-228
lines changed

3 files changed

+408
-228
lines changed

README.md

Lines changed: 6 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -21,43 +21,30 @@ pip install globaleaks-eph-fs
2121
To mount the filesystem from the command line:
2222

2323
```bash
24-
globaleaks-eph-fs <mountpoint> [--storage_directory <directory>]
24+
globaleaks-eph-fs [--storage_directory <directory>] <mountpoint>
2525
```
2626

27+
- `--storage_directory STORAGE_DIRECTORY` (optional): The directory used for storage. If not provided, a temporary directory will be used.
2728
- `<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.
2929

3030
### Python API
3131

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

3434
```python
35-
import argparse
36-
from globaleaks_eph_fs import EphemeralFS
35+
from globaleaks_eph_fs import mount_globaleaks_eph_fs
3736

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()
37+
eph_fs_thread = mount_globaleaks_eph_fs("/mnt/globaleaks-eph-fs")
4338

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

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-
5642
## Features
5743

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

6249
## Requirements
6350

0 commit comments

Comments
 (0)