anchor.diff:      kernel = modulesTree;
       allowMissing = true;
     };
  +
  +
  +  enableSplashScreen =
  +    config.boot.initrd.enableSplashScreen && kernelPackages.splashutils != null;
   
   
     # Some additional utilities needed in stage 1, like mount, lvm, fsck
  
positive.code:   # The closure of the init script of boot stage 1 is what we put in
    # the initial RAM disk.
    initialRamdisk = pkgs.makeInitrd {
      contents = [
        { object = bootStage1;
          symlink = "/init";
        }
      ] ++
        pkgs.lib.optionals
          (config.boot.initrd.enableSplashScreen && kernelPackages.splashutils != null)
          [
            { object = pkgs.runCommand "splashutils" {allowedReferences = []; buildInputs = [pkgs.nukeReferences];} ''
                ensureDir $out/bin
                cp ${kernelPackages.splashutils}/${kernelPackages.splashutils.helperName} $out/bin/splash_helper
                nuke-refs $out/bin/*
              '';
              suffix = "/bin/splash_helper";
              symlink = "/${kernelPackages.splashutils.helperName}";
            } # */
            { object = import ../../../lib/unpack-theme.nix {
                inherit (pkgs) stdenv;
                theme = config.services.ttyBackgrounds.defaultTheme;
  
negative.code: 
      boot.initrd.postDeviceCommands = mkOption {
        default = "";
        merge = mergeStringOption;
        description = ''
          Shell commands to be executed immediately after stage 1 of the
          boot has loaded kernel modules and created device nodes in
  