Tools to review the Flake trusted list #1146

Open
opened 2026-03-02 23:04:46 +00:00 by raito · 2 comments
Owner

Flakes introduced a concept of trusted list which are list of Flakes which are allowed to mess with your nixConfig, they are allowed to set options such as sandbox = false; or new substituters or their keys.

Lix documented a couple of times that this capability is a gigantic risk and you should never run with --accept-flake-config blindly, if you are not willing to be pwned, that is.

That being said, if you allow permanently a well chosen set of Flakes, you should be able to review this list. It's a simple JSON file that lives into your ~/.local/share/nix/trusted-settings.json usually but Lix offers no tool to manipulate it: read it, clear it, etc.

This shall be fixed.

Flakes introduced a concept of trusted list which are list of Flakes which are allowed to mess with your `nixConfig`, they are allowed to set options such as `sandbox = false;` or new substituters or their keys. Lix documented a couple of times that this capability is a gigantic risk and [you should never run with `--accept-flake-config` blindly](https://sourcegraph.com/search?q=context:global+%22--accept-flake-config%22&patternType=keyword&sm=0), if you are not willing to be pwned, that is. That being said, if you allow permanently a well chosen set of Flakes, you should be able to review this list. It's a simple JSON file that lives into your `~/.local/share/nix/trusted-settings.json` usually but Lix offers no tool to manipulate it: read it, clear it, etc. This shall be fixed.
Member

This seems like an interesting project with a reasonably contained scope. I'm interested in taking it on. What sort of interface would be best here? On the most minimal end, we could have a visudo-like tool that simply opens the file in a text editor and validates it before saving. On the other end this could be a GUI application, and in the middle a TUI app, which could be run without a graphical environment. Or all of the above.

Does there exist existing documentation or schema on everything the file could contain, or should I just read lix sources to see what it does with it?

This seems like an interesting project with a reasonably contained scope. I'm interested in taking it on. What sort of interface would be best here? On the most minimal end, we could have a visudo-like tool that simply opens the file in a text editor and validates it before saving. On the other end this could be a GUI application, and in the middle a TUI app, which could be run without a graphical environment. Or all of the above. Does there exist existing documentation or schema on everything the file could contain, or should I just read lix sources to see what it does with it?
Member

Is this something that should be part of Lix's existing CLI or be its own thing? I'll prototype something that others can give feedback on.

Is this something that should be part of Lix's existing CLI or be its own thing? I'll prototype something that others can give feedback on.
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
lix-project/lix#1146
No description provided.