anchor.diff:  
   let
   
  -  inherit (pkgs) plymouth nixos-icons;
  +  inherit (pkgs) nixos-icons;
  +  plymouth = pkgs.plymouth.override {
  +    systemd = config.boot.initrd.systemd.package;
  +  };
   
     cfg = config.boot.plymouth;
     opt = options.boot.plymouth;
  
positive.code:       EOF
      '';
  
      boot.initrd.extraUtilsCommandsTest = ''
        $out/bin/plymouthd --help >/dev/null
        $out/bin/plymouth --help >/dev/null
      '';
  
      boot.initrd.extraUdevRulesCommands = ''
        cp ${config.systemd.package}/lib/udev/rules.d/{70-uaccess,71-seat}.rules $out
        sed -i '/loginctl/d' $out/71-seat.rules
      '';
  
      # We use `mkAfter` to ensure that LUKS password prompt would be shown earlier than the splash screen.
      boot.initrd.preLVMCommands = mkAfter ''
        mkdir -p /etc/plymouth
        mkdir -p /run/plymouth
        ln -s ${configFile} /etc/plymouth/plymouthd.conf
  
negative.code: 
        plymouthd --mode=boot --pid-file=/run/plymouth/pid --attach-to-session
        plymouth show-splash
      '');
  
      boot.initrd.postMountCommands = mkIf (!config.boot.initrd.enable) ''
        plymouth update-root-fs --new-root-dir="$targetRoot"
      '';
  
      # `mkBefore` to ensure that any custom prompts would be visible.
      boot.initrd.preFailCommands = mkIf (!config.boot.initrd.enable) (mkBefore ''
        plymouth quit --wait
      '');
  
    };
  
  