My desktop Background image is a famous wallpaper from Unsplash by Samuel Ferrara:

To achieve consistent theming, I am using the Stylix module:

stylix.url = "github:danth/stylix";
flake.nix:inputs

It provides a NixOS module which also auto-loads Home-Manager integration:

inputs.stylix.nixosModules.stylix
nixos
{ lib, pkgs, ... }:
 
{
  stylix = {
    enable = true;
    base16Scheme = "${pkgs.base16-schemes}/share/themes/rose-pine-moon.yaml";
    image = ../assets/aerial-photography-of-mountain-and-river.jpg;
    cursor = {
      package = pkgs.cz-Hickson-cursors;
      name = "cz-Hickson-white";
      size = 24;
    };
    fonts = {
      monospace = {
        package = pkgs.berkeley-mono-typeface;
        name = "Berkeley Mono";
      };
    };
  };
 
  boot.plymouth.enable = true;
 
  home-manager.sharedModules = [
    {
      dconf.settings."org/gnome/desktop/interface".color-scheme = lib.mkForce "prefer-dark";
    }
    {
      stylix.iconTheme = {
        enable = true;
        package = pkgs.papirus-icon-theme;
        dark = "Papirus-Dark";
        light = "Papirus-Light";
      };
    }
  ];
 
  specialisation.day.configuration = {
    stylix = {
      polarity = lib.mkForce "light";
      base16Scheme = lib.mkForce "${pkgs.base16-schemes}/share/themes/rose-pine-dawn.yaml";
      cursor.name = lib.mkForce "cz-Hickson-black";
    };
    home-manager.sharedModules = [
      {
        dconf.settings."org/gnome/desktop/interface".color-scheme = lib.mkOverride 49 "prefer-light";
      }
    ];
  };
}
nixos

The cursor and monospace font configured are not part of nixpkgs, their definition are cz-Hickson Cursors and Berkeley Mono Font.

{ pkgs, ... }:
 
{
  fonts.packages = [
    pkgs.nerd-fonts.symbols-only
  ];
}
nixos

Stylix currently doesn’t support Niri background setting, so we need to do it ourselves:

{ lib, pkgs, config, ... }:
 
{
  programs.niri.settings = {
    spawn-at-startup = [
      { command = [ (lib.getExe pkgs.swaybg) "--image" "${config.stylix.image}" "--mode" config.stylix.imageScalingMode ]; }
    ];
  };
}
home-manager
{ lib, pkgs, config, ... }:
 
{
  services.darkman = {
    enable = true;
    settings.usegeoclue = true;
 
    darkModeScripts.color-scheme-dark = ''
      doas /nix/var/nix/profiles/system/bin/switch-to-configuration test
      echo dark > $XDG_RUNTIME_DIR/color-scheme
    '';
 
    lightModeScripts.color-scheme-light = ''
      doas /nix/var/nix/profiles/system/specialisation/day/bin/switch-to-configuration test
      echo light > $XDG_RUNTIME_DIR/color-scheme
    '';
  };
}
home-manager
{
  security.doas.extraRules = [
    {
      groups = [ "wheel" ];
      cmd = "/nix/var/nix/profiles/system/bin/switch-to-configuration";
      args = [ "test" ];
      noPass = true;
      keepEnv = true;
    }
    {
      groups = [ "wheel" ];
      cmd = "/nix/var/nix/profiles/system/specialisation/day/bin/switch-to-configuration";
      args = [ "test" ];
      noPass = true;
      keepEnv = true;
    }
  ];
}
nixos

References