Users frequently hit issues because a path unique to their environment isn't covered by a built-in profile. Today, fixing this requires a code change to policy.json, a new release, and users to upgrade. This feedback loop is too slow for something that's inherently environment-specific.
While nono does support some customization today — users can place a profile JSON file in ~/.config/nono/profiles/ to fully replace a built-in profile, pass --profile /path/to/custom.json for an arbitrary profile, use --allow/--read/--write CLI flags to add paths, and use profile inheritance via "extends" — the policy primitives themselves are not editable. Specifically:
- Group definitions (
policy.json): The actual paths inside groups likedeny_credentials,python_runtime,system_read_macosare embedded in the binary. If a group has the wrong path for your system (e.g., Homebrew installed at/opt/homebrewinstead of/usr/local/Homebrew), you cannot fix it withou