{"id":13579109,"url":"https://github.com/SUPERCILEX/forkfs","last_synced_at":"2025-04-05T20:33:02.761Z","repository":{"id":65143752,"uuid":"404459915","full_name":"SUPERCILEX/forkfs","owner":"SUPERCILEX","description":"ForkFS allows you to sandbox a process's changes to your file system.","archived":false,"fork":false,"pushed_at":"2025-03-12T01:23:49.000Z","size":183,"stargazers_count":77,"open_issues_count":1,"forks_count":3,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-28T21:07:31.983Z","etag":null,"topics":["cli","files","isolation","rust","sandboxing"],"latest_commit_sha":null,"homepage":"https://crates.io/crates/forkfs","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SUPERCILEX.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"SUPERCILEX"}},"created_at":"2021-09-08T18:48:43.000Z","updated_at":"2025-03-12T01:23:52.000Z","dependencies_parsed_at":"2024-01-07T21:02:24.248Z","dependency_job_id":"7f71bcc3-76fb-47ce-93e5-885ebfb8ed63","html_url":"https://github.com/SUPERCILEX/forkfs","commit_stats":{"total_commits":70,"total_committers":1,"mean_commits":70.0,"dds":0.0,"last_synced_commit":"86cc74fc7b1fb09b9973abe670d41a270040a6c7"},"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SUPERCILEX%2Fforkfs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SUPERCILEX%2Fforkfs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SUPERCILEX%2Fforkfs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SUPERCILEX%2Fforkfs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SUPERCILEX","download_url":"https://codeload.github.com/SUPERCILEX/forkfs/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247256112,"owners_count":20909240,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","files","isolation","rust","sandboxing"],"created_at":"2024-08-01T15:01:36.612Z","updated_at":"2025-04-05T20:33:02.716Z","avatar_url":"https://github.com/SUPERCILEX.png","language":"Rust","readme":"# ForkFS\n\nForkFS allows you to sandbox a process's changes to your file system.\n\nYou can think of it as a lightweight container: programs still have access to your real system\n(and can therefore jump out of the sandbox), but their disk changes are re-routed to special\ndirectories without changing the real file system.\n\nA brief technical overview of the project is available at https://alexsaveau.dev/blog/forkfs.\n\n## Installation\n\n\u003e Note: ForkFS is Linux-only.\n\n### Use prebuilt binaries\n\nBinaries for a number of platforms are available on the\n[release page](https://github.com/SUPERCILEX/forkfs/releases/latest).\n\n### Build from source\n\n```console,ignore\n$ cargo +nightly install forkfs\n```\n\n\u003e To install cargo, follow\n\u003e [these instructions](https://doc.rust-lang.org/cargo/getting-started/installation.html).\n\n## Usage\n\nRun a command in the sandbox:\n\n```sh\n$ forkfs run -- \u003cyour command\u003e\n```\n\nAll file system changes the command makes will only exist within the sandbox and will not modify\nyour real file system.\n\nYou can also start a bash shell wherein any command you execute has its file operations sandboxed:\n\n```sh\n$ forkfs run bash\n```\n\nMore details:\n\n```console\n$ forkfs --help\nA sandboxing file system emulator\n\nYou can think of ForkFS as a lightweight container: programs still have access to your real system\n(and can therefore jump out of the sandbox), but their disk changes are re-routed to special\ndirectories without changing the real file system. Under the hood, ForkFS is implemented as a\nwrapper around OverlayFS.\n\nWarning: we make no security claims. Do NOT use this tool with potentially malicious software.\n\nPS: you might also be interested in Firejail: \u003chttps://firejail.wordpress.com/\u003e.\n\nUsage: forkfs \u003cCOMMAND\u003e\n\nCommands:\n  run       Run commands inside the sandbox\n  sessions  Manage sessions\n  help      Print this message or the help of the given subcommand(s)\n\nOptions:\n  -h, --help\n          Print help (use `-h` for a summary)\n\n  -V, --version\n          Print version\n\n$ forkfs sessions --help\nManage sessions\n\nEach session has its own separate view of the file system that is persistent. That is, individual\ncommand invocations build upon each other.\n\nActives sessions are those that are mounted, while inactive sessions remember the changes that were\nmade within them, but are not ready to be used.\n\nNote: weird things may happen if the real file system changes after establishing a session. You may\nwant to delete all sessions to restore clean behavior in such cases.\n\nUsage: forkfs sessions \u003cCOMMAND\u003e\n\nCommands:\n  list    List sessions\n  stop    Unmount active sessions\n  delete  Delete sessions\n  help    Print this message or the help of the given subcommand(s)\n\nOptions:\n  -h, --help\n          Print help (use `-h` for a summary)\n\n```\n","funding_links":["https://github.com/sponsors/SUPERCILEX"],"categories":["Rust","\u003ca name=\"file-handling\"\u003e\u003c/a\u003eFile and file system handling"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSUPERCILEX%2Fforkfs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FSUPERCILEX%2Fforkfs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FSUPERCILEX%2Fforkfs/lists"}