anchor.diff:          description = "Defines environment variables.";
         };
   
  -      autoExtract = mkOption {
  -        type = types.bool;
  -        default = true;
  +      lessopen = mkOption {
  +        type = types.nullOr types.str;
  +        default = "|${pkgs.lesspipe}/bin/lesspipe.sh %s";
           description = ''
  -          When enabled less automatically extracts .gz .xz .bz2 files before reading them.
  +          Before less opens a file, it first gives your input preprocessor a chance to modify the way the contents of the file are displayed.
  +        '';
  +      };
  +
  +      lessclose = mkOption {
  +        type = types.nullOr types.str;
  +        default = null;
  +        description = ''
  +          When less closes a file opened in such a way, it will call another program, called the input postprocessor, which may  perform  any  desired  clean-up  action (such  as deleting the replacement file created by LESSOPEN).
           '';
         };
       };
  
positive.code: 
      environment.systemPackages = [ pkgs.less ];
  
      environment.variables."LESSKEY_SYSTEM" = toString lessKey;
      environment.variables."LESSOPEN" = "|${lessPipe}/bin/lesspipe.sh %s";
  
      warnings = optional (
        cfg.clearDefaultCommands && (all (x: x != "quit") (attrValues cfg.commands))
  
negative.code:   lessKey = pkgs.runCommand "lesskey"
              { src = pkgs.writeText "lessconfig" configFile; }
              "${pkgs.less}/bin/lesskey -o $out $src";
  
  in
  
  