FAQ¶
General Tips and Best Practices¶
1. Always Test in a VM First¶
Before applying changes to your production system, test in a safe environment:
2. Use Flake Inputs Follows¶
This ensures consistent nixpkgs versions:
By default, each flake input pins its own version of its dependencies, which means you could end up with multiple versions of nixpkgs. The follows directive tells Nix to use your nixpkgs instead of the one bundled with System Manager, ensuring consistent package versions across your entire configuration while reducing disk usage and evaluation time.
3. Modular Configuration¶
Split your configuration into multiple files:
4. Check Logs¶
Always check systemd logs after activation:
5. Garbage Collection¶
Regularly clean up old generations:
6. Rollback¶
If something goes wrong, you can rollback:
Troubleshooting¶
Service Won't Start¶
Package Not Found in PATH¶
If you just installed System Manager, and installed a package through it, try logging out and logging back in to pick up the PATH.
Permission Denied¶
Ensure you're running System Manager with sudo:
Configuration Won't Build¶
SELinux Issues¶
System Manager currently does not fully support SELinux. If you're on a system with SELinux enabled (like Fedora or RHEL), you may encounter permission issues.
Temporary workaround: Set SELinux to permissive mode:
For a permanent solution, see GitHub issue #115 for ongoing work on SELinux support.
Additional Resources¶
- System Manager GitHub Repository
- System Manager Documentation
- NixOS Module Options
- Nix Package Search
- PR #266: User Management with Userborn