diff -up hplip-3.23.3/setup.py.hpsetup-noscanjets hplip-3.23.3/setup.py --- hplip-3.23.3/setup.py.hpsetup-noscanjets 2023-05-29 14:16:26.148133678 +0200 +++ hplip-3.23.3/setup.py 2023-05-29 14:16:26.220133253 +0200 @@ -399,9 +399,19 @@ else: # INTERACTIVE_MODE #log.warning("Cannot setup fax - device does not have fax feature.") setup_fax = False + norm_model = models.normalizeModelName(model).lower() + + # get out if the found model is standalone scanner, hp-setup is printer/fax setup tool + if 'scanjet' in norm_model: + log.error('The device {} is a standalone scanner. ' + 'hp-setup is a printer/MFD setup tool, ' + 'not scanner installation tool. '.format(model)) + log.info(log.bold('Scanners do not need a installation, but they may ' + 'require a binary plugin (install by \'hp-plugin -i\').')) + clean_exit(1) + # ******************************* PLUGIN - norm_model = models.normalizeModelName(model).lower() plugin = mq.get('plugin', PLUGIN_NONE) if ignore_plugin_check is False and plugin > PLUGIN_NONE: diff -up hplip-3.23.3/ui5/setupdialog.py.hpsetup-noscanjets hplip-3.23.3/ui5/setupdialog.py --- hplip-3.23.3/ui5/setupdialog.py.hpsetup-noscanjets 2023-05-29 14:16:26.220133253 +0200 +++ hplip-3.23.3/ui5/setupdialog.py 2023-05-29 14:18:12.475041454 +0200 @@ -1391,6 +1391,18 @@ class SetupDialog(QDialog, Ui_Dialog): back_end, is_hp, bus, model, serial, dev_file, host, zc, port = device.parseDeviceURI( self.device_uri) self.model = models.normalizeModelName(model).lower() + if 'scanjet' in self.model: + FailureUI(self, + self.__tr('The device {} is a standalone ' + 'scanner.
\'hp-setup\' is a tool ' + 'for installing printers and multifunction ' + 'devices. Scanners supported by HPLIP ' + 'work out-of-the-box after HPLIP installation, ' + 'or they may require a binary plugin, which you ' + 'can install by \'hp-plugin -i\'.
'.format(model))) + self.displayPage(PAGE_DEVICES) + return + self.showAddPrinterPage() elif p == PAGE_ADD_PRINTER: