СофтХабрахабр

[Перевод] Мой седьмой день с Haiku: распечатка, сканирование, сети

Сканирование удивительно "просто работает", по крайней мере при подключении USB. TL;DR: Распечатка выглядит как привет из 90-х, Windows 3.x вызывает свои принтеры обратно. Поддержка сети вызывает смешанные чувства. 3D печать в разработке. Устройства с последовательным интерфейсом USB, в основном, работают. Смартфоны у меня пока не заработали.

Сегодня мне интересно выяснить, как она обеспечивает поддержку оборудования, особенно в областях распечатки, сканирования, 3D печати, работы сетевого оборудования, смартфонов, устройств с последовательными USB портами, к примеру Arduino. Недавно я открыл для себя Haiku, неожиданно хорошую систему. Да начнется праздник втыкательства! Есть только один способ это выяснить — взять и попробовать!

Распечатка

Сетевое МФУ HP

Даже в последних версиях Ubuntu принтер распознался полностью автоматически. На Mac, МФУ HP LaserJet Pro 200 color, подключенный к местной локальной сети, просто появился как доступный принтер безо всякого моего вмешательства. Благодаря IPPEverywhere не нужно устанавливать драйвера. Я могу загрузиться с LiveISO и принтер появится в диалогах на распечатку без каких-либо действий.

Первый сюрприз: браузер WebPositive по умолчанию даже не дает команду "Печать". На Haiku? Когда я жму в нем Alt+P — выскакивает окно с установкой принтера по умолчанию.
Согласен, конечно же. А вот StyledEdit — да. Появившийся список принтеров отображает "Предпросмотр" и "Сохранить как PDF", но моего МФУ HP LaserJet Pro 200 color со всем его волшебством Zeroconf и IPPEverywhere не видать.


Мне бы хотелось "простого появления тут" HP LaserJet Pro 200 color МФУ, как это произошло в других современных операционных системах, включая Linux.

Так что я щелкаю "Добавить..."

Я выбрал "IPP".
Надо быть мастером-кудесником распечатки, чтобы понять это.

В этот момент я как будто вернулся на Windows 3.x. Далее: оно не распознает имеющийся у меня принтер. Оно бы еще дискетку переставить попросило.


Здесь нет МФУ "HP LaserJet Pro 200 color"

Слишком новый? Не находится "HP LaserJet Pro"? Ну что же, выберу тогда схожий "HP Color LaserJet CM2320 МФУ". Вряд ли, машине как минимум лет 5.

Что это? В предвкушении возвращаюсь в StyledEdit, жму Alt+P. Шутка?

Ну, знаете, мало ли.
Диалоговое окно спрашивает у меня "URL".

Погуглив, нахожу сообщение в блоге, где кто-то сообщает, что "в настоящее время я работаю над браузером служб, все почти готово". Иду в терминал, но только для того, чтобы узнать, что безотказная команда avahi-browse, натуральный швейцарский нож, позволяющий узнать соответствие ip-адресов устройствам, отсутствует, и даже command-not-found не знает, где его найти. Я не могу найти программу, использующую указанную библиотеку. Поиск в HaikuPorts выдает только qmdnsengine, библиотеку. Тут я и сдался, потому что в конце концов печать не так уж и важна для меня.

Быстрое решение: внедрить глубоко в систему mDNS\Zeroconf и использовать для распечатки что-то вроде CUPS (его, в конце концов, Apple использует).

Сканирование

CanoScan LiDE 60 USB

С тех пор, как появились смартфоны с многопиксельными камерами, особой нужды в нем больше нет. Ожидая худшего, достаю и сдуваю пыль с моего древнего планшетного сканера CanoScan LiDE 60 USB. Подключаю его к компьютеру с Haiku через USB, запускаю приложение Sanity для сканирования и, в шоке, вижу спустя пару секунд такое вот приветствие:


CanoScan LiDE 60 успешно сканирует в Haiku

Сетевое МФУ HP

Я думаю, что Mac его распознает и автоматически настроит, используя Zeroconf ("Bonjour"), одну из моих любимых "просто работающих" все время технологий. Не-а, программа Sanity не видит встроенный в МФУ сканер. Смотрите раздел "Распечатка" выше. Haiku так не смогла.

3D печать

Программы для нарезки слоев

Но с момента прошлой публикации есть рабочая CLI программа. До сих пор нет программ с GUI для нарезки слоев. Спасибо, Герасим Троеглазов, отличное начало, но без GUI — неприкольно.

Все отлично работает. @probonopd, спрашивал о #CureEngine для haikuOS? Скоро добавлю в HaikuPorts.

Контроллер принтера

В программах нарезки Ultimaker Cura и PrusaSlicer он встроенный. Контроллер принтера — сущность для отправки данных 3D принтеру через последовательный порт. Я видел Atelier на снимке экрана выше. Что из этого есть для Haiku? Предполагаю, данный вопрос решен.

Sender

В программах Ultimaker Cura и PrusaSlicer он встроенный. Sender — сущность для отправки данных сетевому 3D принтеру или контроллеру принтера через проводную или беспроводную сеть.

Работа с смартфонами

Я нашел в HaikuDepot программу PhotoGrabber для скачивания и удаления изображений с цифровых камер, подключенных через USB по протоколу PTP. Смартфоны на Android используют Media Transfer Protocol (MTP) и\или Picture Transfer Protocol (PTP) при соединении с компьютером. А потом я узнал, что нужно вручную переключиться на подключаемый модуль PTP. Сначала она не заработала с моим смартфоном.

Быстрое решение: включать все подключаемые модули по умолчанию одновременно.

Тем не менее, все еще не получилось использовать, программа показала часть изображений с устройства, а потом споткнулась.

bdcpPTP - Transaction: Session 1, Transaction 3c5, Code: 100a.
bdcpPTP - GetData: Expected data container, received 0003.

Я мог только надеятся, что она не удалит все мои фотографии с устройства.

Правильное решение: монтировать PTP и другие схожие устройства как тома.

Именно это мне и не нравится в продуктах Apple, спасибо ей. iPhone и iPad используют (конечно же) что-то собственное, согласно этому сообщению на форуме они (пока что) не работают с Haiku.
Однако не стоит винить в этом Haiku: на Linux, если взять старую iOS и достаточно свежий дистрибутив, есть шанс, что оно заработает… а потом опять начнутся кошки-мышки.

Сети

Встроенная сетевая карта Ethernet

Работает на всех моих машинах

Сетевая карта Axis USB Ethernet

Предполагается, что работает, но не у меня.

Встроенная беспроводная карта Intel

У меня работает.

Встроенная беспроводная карта Broadcom (Mac)

[этот производитель и на Linux тот еще подарочек… — прим. Известно что не работает (пока?). переводчика]

Устройства с последовательным интерфейсом USB

переводчика]. Многие устройства содержат, насколько мне известно, мост последовательный интерфейс — USB [COM порт, доступный через USB, — прим. Примерами таких устройств выступают различные устройства, включая 3D принтеры и платы Arduino.

Все они поддерживаются в Haiku: Наиболее часто используемые мостовые чипы это CDC, Prolific, FTDI и Silicon Labs.

KERN: usb_serial: CDC ACM compatible device (0x2341/0x0036) added
KERN: usb_serial: PL2303 Serial adapter (ATEN/IOGEAR UC232A) (0x067b/0x2303) added
KERN: usb_serial: FTDI 8U232AM serial converter (0x0403/0x6001) added
KERN: usb_serial: Silicon Labs CP210x USB UART converter (0x10c4/0xea60) added

Прошивка 3D принтера работает при использовании avrdude (хотя пришлось обходить известную ошибку с отсутствующими зависимостями). Тем не менее, я получаю воспроизводимую панику ядра, для исправления которой есть обходной путь. Так что инструменты, основанные на libusb, работают.


Прошивка 3D принтера программой avrdude с использованием программатора USBASP

В поисках: подключение съемных носителей в режиме только для чтения

Создание съемных носителей только для чтения

Это одна из причин, по которым я использую LiveISO для Linux, которые после перезагрузки возвращаются к своему исходному состоянию. Мне нравятся системы, работающие без сохранения состояния, в режиме только для чтения. Как мне достичь такого же результата для Haiku?

Я нашел эти инструкции для diskpart, очевидно рассчитанные на Windows:

  • запустить CMD от имени администратора, запустить в нем diskpart
  • дождаться его загрузки и написать list disk
  • выбрать нужное устройство используя команду select disk 1, (где 1 — номер нужного устройства USB)
  • для пометки устройства только для чтения запустить attributes disk set readonly

Согласно этой заметке, на Unix системах можно использовать hdparm для установки параметров SATA\IDE устройств:

  • проверка доступа только для чтения для устройства: hdparm -r /dev/sdX
  • включение доступа только для чтения: hdparm -r1 /dev/sdX
  • выключение доступа только для чтения: hdparm -r0 /dev/sdX

Задался вопросом, можно ли сделать такое же на Haiku.

Заключение

Да, местами есть нюансы, но ведь, как вы помните, система все еще даже не версии 1. Поддержка оборудования в Haiku намного лучше, чем я ожидал. Распечатка оставляет желать лучшего, но честно говоря, мне она сейчас не так уж и важна. 0. Хотелось бы более глубокой и утонченной интеграции Zeroconf в систему, поскольку он один из тех "волшебных" ингредиентов, которые "просто работают".

Моя неделя с Haiku

Изначальная задумка была простым тестом, который настолько затянул меня, что я просто не мог оторваться от игры с ним. На этом я заканчиваю неделю с Haiku. Т.е. Сейчас я задаюсь вопросом: может ли Haiku превратиться в ту операционку "Hello", которую я представлял? изначальный Mac, только в виде открытого кода?


Может ли она стать изначальным Mac, только в виде открытого кода?

Я сам не заметил, как стал участником: (оставил 3 заявки и 10 заявок в HaikuPorts).

Как бы сделал лично я: Мне кажется, что для приемлемого результата команда должна сосредоточиться и расставить приоритеты.

  1. Починить оставшиеся проблемы с загрузкой и зависаниями (к примеру, работа над XHCI)
  2. Провести оптимизацию производительности веб-браузера
  3. Ускорение видео (читай: поддержка 4к видео с youtube в браузере)
  4. Ускорение 3D (читай: поддержка TinkerCAD и Onshape в браузере)
  5. Все остальное

Огромная благодарность им за ответы на все мои вопросы, за то, что мирились с моими экспериментами и делились идеями. Команда разработки Haiku весьма приветлива и терпелива с новичком вроде меня.

переводчика]. Но подождите, есть еще кое-что [будет еще одна переведенная статья… — прим.

Ведь проект Haiku предоставляет образы для загрузки с DVD или USB, формируемые ежедневно. Попробуйте сами! Для установки достаточно скачать образ и записать его на флешку с помощью Etcher

Приглашаем вас в русскоязычный telegram-канал. Появились вопросы?

Сборник рецептов Haiku OS Обзор ошибок: Как выстрелить себе в ногу в C и C++.

От автора перевода: это седьмая статья из цикла про Haiku.

Список статей: Первая Вторая Третья Четвертая Пятая Шестая

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть