Add bubblewrap path for running Nimi#14
Open
baileylu121 wants to merge 20 commits intobaileylu/restrict-systemsfrom
Open
Add bubblewrap path for running Nimi#14baileylu121 wants to merge 20 commits intobaileylu/restrict-systemsfrom
baileylu121 wants to merge 20 commits intobaileylu/restrict-systemsfrom
Conversation
Contributor
Author
|
Warning This pull request is not mergeable via GitHub because a downstack PR is open. Once all requirements are satisfied, merge this PR as a stack on Graphite.
This stack of pull requests is managed by Graphite. Learn more about stacking. |
nimi configs inside a bubblewrap wrapper
|
dc7c1ad to
32aff8e
Compare
nimi configs inside a bubblewrap wrapperbubblewrap path for running nimi
bubblewrap path for running nimi32aff8e to
4e498d4
Compare
d483225 to
6184974
Compare
6d5bc1a to
1d25ce9
Compare
1d25ce9 to
c078ea3
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Add Sandbox Feature Using Bubblewrap
This PR introduces a lightweight sandbox runner via
mkBwrapthat uses bubblewrap to run services in an isolated environment without requiring container runtimes like Docker or Podman.The sandbox offers:
Added:
docs/sandbox.mdwith examples and comparison to containersexamples/sandboxed.nixsettings.bubblewrapmodule with comprehensive configuration optionsnix/lib.nixthat wraps the nimi binary in bubblewrapThe sandbox requires Linux with user namespace support and is marked as incompatible with Darwin systems.
Note
Medium Risk
Introduces a new
mkBwrapexecution path that changes how services can be launched (bubblewrap namespaces/mounts) and adds new module options/tests; misconfiguration could break runtime behavior on Linux or in CI.Overview
Adds a new Bubblewrap-based sandbox runner (
mkBwrap/mkBwrapWithConfig) that wraps the generatednimirunner inbwrap, with a newsettings.bubblewrapmodule to configure mounts, env vars, working dir, and namespace/unshare flags (and marks the sandbox as unsupported on Darwin).Refactors the Nix API to avoid double module evaluation by introducing
mkNimiBinWithConfigandmkContainerImageWithConfig, and updates container defaults to setimageConfig.WorkingDirto/root.Includes new docs (
docs/sandbox.md+ SUMMARY entry), a minimal sandboxed Redis example, a NixOS test validating env/chdir/tmpfs behavior, and updatesflake.lockplus a small clap import cleanup insrc/cli.rs.Written by Cursor Bugbot for commit 8073c24. This will update automatically on new commits. Configure here.