anchor.diff:            '';
         };
   
  +      accelProfile = mkOption {
  +        type = types.enum [ "flat" "adaptive" ];
  +        default = "flat";
  +        example = "adaptive";
  +        description =
  +          ''
  +            Sets  the pointer acceleration profile to the given profile. Permitted values are adaptive, flat.
  +            Not all devices support this option or all profiles. If a profile is unsupported, the default profile
  +            for this is used. For a description on the profiles and their behavior, see the libinput documentation.
  +          '';
  +      };    
  +      
         accelSpeed = mkOption {
           type = types.nullOr types.string;
           default = null;
  
positive.code:           MatchIsTouchpad "on"
            ${optionalString (cfg.dev != null) ''MatchDevicePath "${cfg.dev}"''}
            Driver "libinput"
            ${optionalString (cfg.accelSpeed != null) ''Option "AccelSpeed" "${cfg.accelSpeed}"''}
            ${optionalString (cfg.buttonMapping != null) ''Option "ButtonMapping" "${cfg.buttonMapping}"''}
            ${optionalString (cfg.calibrationMatrix != null) ''Option "CalibrationMatrix" "${cfg.calibrationMatrix}"''}
            ${optionalString cfg.naturalScrolling ''Option "NaturalScrolling" "on"''}
            ${if cfg.tapping then ''Option "Tapping" "1"'' else ""}
            ${if cfg.tappingDragLock then ''Option "TappingDragLock" "1"'' else ""}
            Option "ScrollMethod" "${cfg.scrollMethod}"
            ${optionalString cfg.disableWhileTyping ''Option "DisableWhileTyping" "on"''}
            ${cfg.additionalOptions}
          EndSection
        '';
  
negative.code:           '';
        };
  
        horizontalScrolling = mkOption {
          type = types.bool;
          default = true;
          example = false;
          description =
            ''
              Disables horizontal scrolling. When disabled, this driver will discard any horizontal scroll
              events from libinput. Note that this does not disable horizontal scrolling, it merely
              discards the horizontal axis from any scroll events.
            '';
        };
  
        sendEventsMode = mkOption {
          type = types.enum [ "disabled" "enabled" "disabled-on-external-mouse" ];
          default = "enabled";
          example = "disabled";
          description =
            ''
              Sets the send events mode to disabled, enabled, or "disable when an external mouse is connected".
            '';
        };
  
        tapping = mkOption {
          type = types.bool;
          default = true;
          example = false;
          description =
            ''
              Enables or disables tap-to-click behavior.
            '';
        };
  
        tappingDragLock = mkOption {
          type = types.bool;
  