Same configuration across different machines (apart from hardware.nix). I have a configuration.nix, networking.nix and packages.nix that pretty much covers everything. Then there's my .emacs, bashrc and my i3/config files. There's probably a way to get those last three into my NixOS config, but I haven't really investigated that.
I only use i3. Haven't found a reason to install another WM yet. I tend to use xrandr, pavucontrol and wpa_supplicant quite happily for most of the stuff people use a GUI WM for.