I have been using NixOS for about a year now. My daily driver is a Mac Mini M4,
which I manage with nix (the package manager). I also have several NixOS
machines that host my homelab, and a NixOS cirtual machine that I have started
to use as my own fully-customized development environment.
All that said, the majority of my time using Nix & NixOS has involved minimal
exploration of modules. I relied heavily on the use of the usual suspects:
home-manager for managing my user packages and dotfiles and nix-darwin for
declarative management of my MacOS environment. I never found an ideal
replacement for my Neovim configurations, so I relied on the trusty
mkOutOfStoreSymlink.