anchor.diff:  
         enable = mkOption {
           default = false;
  -        description = "Whether to enable the Wacom touchscreen/digitizer.";
  +        description = "Whether to enable the Wacom touchscreen/digitizer/tablet.";
         };
   
         device = mkOption {
  -        default = "/dev/ttyS0";
  -        description = "Device to use.";
  +        default = null;
  +        example = "/dev/ttyS0";
  +        description = "Device to use. Set to null for autodetect (think USB tablet).";
         };
   
         forceDeviceType = mkOption {
  -        default = "ISDV4";
  -        example = null;
  -        description = "Some models (think touchscreen) require the device type to be specified.";
  +        default = null;
  +        example = "ISDV4";
  +        description = "Some models (think touchscreen) require the device type to be specified. Set to null for autodetect (think USB tablet).";
  +      };
  +
  +      stylusExtraConfig = mkOption {
  +        default = "";
  +        example = ''
  +            Option "Button1" "2"
  +          '';
  +        description = "Lines to be added to Wacom_stylus InputDevice section.";
  +      };
  +
  +      eraserExtraConfig = mkOption {
  +        default = "";
  +        example = ''
  +            Option "Button2" "3"
  +          '';
  +        description = "Lines to be added to Wacom_eraser InputDevice section.";
  +      };
  +
  +      cursorExtraConfig = mkOption {
  +        default = "";
  +        example = "";
  +        description = "Lines to be added to Wacom_cursor InputDevice section.";
         };
   
       };
  
positive.code:     services.xserver.serverLayoutSection =
        ''
          InputDevice "Wacom_stylus"
          InputDevice "Wacom_cursor"
          InputDevice "Wacom_eraser"
        '';
  
      services.xserver.config =
  
negative.code:         Section "InputDevice"
            Driver "wacom"
            Identifier "Wacom_stylus"
            ${optionalString (cfg.device != null) ''
              Option "Device" "${cfg.device}"
            ''}
            Option "Type" "stylus"
            ${optionalString (cfg.forceDeviceType != null) ''
              Option "ForceDevice" "${cfg.forceDeviceType}"
            ''}
            ${cfg.stylusExtraConfig}
          EndSection
  
          Section "InputDevice"
            Driver "wacom"
            Identifier "Wacom_eraser"
            ${optionalString (cfg.device != null) ''
              Option "Device" "${cfg.device}"
            ''}
            Option "Type" "eraser"
            ${optionalString (cfg.forceDeviceType != null) ''
              Option "ForceDevice" "${cfg.forceDeviceType}"
            ''}
            ${cfg.eraserExtraConfig}
          EndSection
  
          Section "InputDevice"
            Driver "wacom"
            Identifier "Wacom_cursor"
            ${optionalString (cfg.device != null) ''
              Option "Device" "${cfg.device}"
            ''}
            Option "Type" "cursor"
            ${optionalString (cfg.forceDeviceType != null) ''
              Option "ForceDevice" "${cfg.forceDeviceType}"
            ''}
            ${cfg.cursorExtraConfig}
          EndSection
        '';
  
  