I just had an idea for a simple way to allow users to disable config files shipped and updated with other software without needing complex logic in NM or the other tools.
I'm thinking of adding a config entry hide:<config_file_basename> entry which will hide all entries from that config file. This will be intended to only be used by end-users, and will hide all entries from that config file. It will not disable other options like the experimental ones.
I could also extend this implementation to add an option to toggle/hide/show items from that config file, which could have some interesting uses.
An alternative implementation of this would be a .nmignore file with gitignore syntax. This would have the advantage of being in on place without the ability to be abused by people shipping NM entries with their stuff, and it might also be easier to reason about. But, this will be slightly more complex to implement, and it may be harder for some people to use.
I just had an idea for a simple way to allow users to disable config files shipped and updated with other software without needing complex logic in NM or the other tools.
I'm thinking of adding a config entry
hide:<config_file_basename>
entry which will hide all entries from that config file. This will be intended to only be used by end-users, and will hide all entries from that config file. It will not disable other options like the experimental ones.I could also extend this implementation to add an option to toggle/hide/show items from that config file, which could have some interesting uses.
An alternative implementation of this would be a .nmignore file with gitignore syntax. This would have the advantage of being in on place without the ability to be abused by people shipping NM entries with their stuff, and it might also be easier to reason about. But, this will be slightly more complex to implement, and it may be harder for some people to use.