docs: add English and Russian README
Add comprehensive documentation for the Kyocera SANE driver package in English and Russian.
This commit is contained in:
@@ -0,0 +1,218 @@
|
|||||||
|
<!--
|
||||||
|
SPDX-FileCopyrightText: 2026 Contributors to kyocera-sane
|
||||||
|
|
||||||
|
SPDX-License-Identifier: CC0-1.0
|
||||||
|
-->
|
||||||
|
|
||||||
|
# Kyocera SANE Driver for Arch Linux
|
||||||
|
|
||||||
|
An Arch Linux package for the proprietary Kyocera SANE scanner driver.
|
||||||
|
|
||||||
|
The package repackages the Kyocera Linux SANE driver distributed as a Debian package and integrates it with the Arch Linux filesystem layout and device-management mechanisms.
|
||||||
|
|
||||||
|
Kyocera publishes the Linux scanner driver as a ZIP archive. The current upstream download listed by Kyocera is **SANE Driver 2.2.1511** for Linux.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
The package provides the Kyocera SANE backends:
|
||||||
|
|
||||||
|
```text
|
||||||
|
kyocera
|
||||||
|
kyocera_gdi_a3
|
||||||
|
kyocera_wc3
|
||||||
|
kyocera_wc3_usb
|
||||||
|
```
|
||||||
|
|
||||||
|
The corresponding SANE configuration is installed as:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/etc/sane.d/dll.d/kyocera.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
The package supports the following 32-bit and 64-bit x86 architectures:
|
||||||
|
|
||||||
|
```text
|
||||||
|
i386
|
||||||
|
i486
|
||||||
|
i586
|
||||||
|
i686
|
||||||
|
x86_64
|
||||||
|
```
|
||||||
|
|
||||||
|
The architecture-specific Debian package supplied by Kyocera is selected automatically during the package build.
|
||||||
|
|
||||||
|
## USB Scanning
|
||||||
|
|
||||||
|
The Kyocera SANE backend requires direct access to the USB device through `libusb`.
|
||||||
|
|
||||||
|
For this reason, the package installs:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/usr/lib/modprobe.d/kyocera-sane.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
with:
|
||||||
|
|
||||||
|
```text
|
||||||
|
blacklist usblp
|
||||||
|
```
|
||||||
|
|
||||||
|
This prevents the `usblp` kernel driver from claiming the USB printer interface required by the Kyocera backend.
|
||||||
|
|
||||||
|
A udev rule is also installed for the Kyocera **FS-1020MFP** USB device:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/usr/lib/udev/rules.d/71-kyocera-sane.rules
|
||||||
|
```
|
||||||
|
|
||||||
|
The rule grants the active desktop user access to USB device:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Vendor ID: 0482
|
||||||
|
Product ID: 0495
|
||||||
|
```
|
||||||
|
|
||||||
|
without requiring applications to run as root.
|
||||||
|
|
||||||
|
## Installation
|
||||||
|
|
||||||
|
Clone the repository and build the package with `makepkg`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://debver.com/debug-version/kyocera-sane.git
|
||||||
|
cd kyocera-sane
|
||||||
|
|
||||||
|
makepkg -si
|
||||||
|
```
|
||||||
|
|
||||||
|
The package version is determined automatically from the Kyocera support page instead of being hard-coded in `PKGBUILD`.
|
||||||
|
|
||||||
|
After installation, reload the udev rules:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo udevadm control --reload-rules
|
||||||
|
sudo udevadm trigger
|
||||||
|
```
|
||||||
|
|
||||||
|
Reconnect the scanner if necessary.
|
||||||
|
|
||||||
|
## Verifying the SANE Backend
|
||||||
|
|
||||||
|
Check that the Kyocera backend configuration exists:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cat /etc/sane.d/dll.d/kyocera.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
Expected output:
|
||||||
|
|
||||||
|
```text
|
||||||
|
kyocera
|
||||||
|
kyocera_gdi_a3
|
||||||
|
kyocera_wc3
|
||||||
|
kyocera_wc3_usb
|
||||||
|
```
|
||||||
|
|
||||||
|
Then check whether SANE can detect the scanner:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
scanimage -L
|
||||||
|
```
|
||||||
|
|
||||||
|
For more detailed diagnostics:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
SANE_DEBUG_KYOCERA=255 scanimage -L
|
||||||
|
```
|
||||||
|
|
||||||
|
The exact debug variable supported by a particular Kyocera backend may depend on the upstream driver version.
|
||||||
|
|
||||||
|
## Temporary Files
|
||||||
|
|
||||||
|
The proprietary Kyocera backend creates temporary files in the hard-coded directory:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/usr/local/kyocera/scanner
|
||||||
|
```
|
||||||
|
|
||||||
|
The package therefore sets its permissions to:
|
||||||
|
|
||||||
|
```text
|
||||||
|
1777
|
||||||
|
```
|
||||||
|
|
||||||
|
This allows the backend to create and remove its temporary files while preventing users from deleting files belonging to other users.
|
||||||
|
|
||||||
|
## udev Rule Changes
|
||||||
|
|
||||||
|
The original Kyocera package contains the following vendor udev rule:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/etc/udev/rules.d/40-scanner-permissions.rules
|
||||||
|
```
|
||||||
|
|
||||||
|
The package does not install this rule as-is because it grants `0666` permissions to all USB devices.
|
||||||
|
|
||||||
|
Instead, the original rule is preserved as documentation:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/usr/share/doc/kyocera-sane/40-scanner-permissions.rules
|
||||||
|
```
|
||||||
|
|
||||||
|
and a device-specific rule is installed for the supported Kyocera scanner.
|
||||||
|
|
||||||
|
## Installed Files
|
||||||
|
|
||||||
|
The package installs or modifies the following relevant paths:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/etc/sane.d/dll.d/kyocera.conf
|
||||||
|
/usr/lib/modprobe.d/kyocera-sane.conf
|
||||||
|
/usr/lib/udev/rules.d/71-kyocera-sane.rules
|
||||||
|
/usr/local/kyocera/scanner
|
||||||
|
/usr/share/doc/kyocera-sane/README.txt
|
||||||
|
/usr/share/doc/kyocera-sane/40-scanner-permissions.rules
|
||||||
|
/usr/share/licenses/kyocera-sane/COPYRIGHT
|
||||||
|
```
|
||||||
|
|
||||||
|
The upstream documentation is installed under `/usr/share/doc/kyocera-sane/README.txt`.
|
||||||
|
|
||||||
|
## Packaging Notes
|
||||||
|
|
||||||
|
This repository does not contain a reimplementation of the Kyocera scanner backend. It packages the proprietary Kyocera driver supplied by the vendor.
|
||||||
|
|
||||||
|
The upstream package is downloaded from Kyocera's official download infrastructure during the Arch package build.
|
||||||
|
|
||||||
|
The package is currently marked as proprietary in `PKGBUILD`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
license=('LicenseRef-proprietary')
|
||||||
|
```
|
||||||
|
|
||||||
|
## Source
|
||||||
|
|
||||||
|
Kyocera Document Solutions — product support and downloads:
|
||||||
|
|
||||||
|
https://www.kyoceradocumentsolutions.eu/
|
||||||
|
|
||||||
|
The Linux SANE driver is distributed by Kyocera as a ZIP archive containing architecture-specific Debian packages.
|
||||||
|
|
||||||
|
## Repository Structure
|
||||||
|
|
||||||
|
```text
|
||||||
|
kyocera-sane/
|
||||||
|
├── PKGBUILD
|
||||||
|
└── kyocera-sane.install
|
||||||
|
```
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
The package contains proprietary software distributed by Kyocera.
|
||||||
|
|
||||||
|
See the installed:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/usr/share/licenses/kyocera-sane/COPYRIGHT
|
||||||
|
```
|
||||||
|
|
||||||
|
for the upstream copyright and license information.
|
||||||
+216
@@ -0,0 +1,216 @@
|
|||||||
|
<!--
|
||||||
|
SPDX-FileCopyrightText: 2026 Contributors to kyocera-sane
|
||||||
|
|
||||||
|
SPDX-License-Identifier: CC0-1.0
|
||||||
|
-->
|
||||||
|
|
||||||
|
# Драйвер Kyocera SANE для Arch Linux
|
||||||
|
|
||||||
|
Пакет Arch Linux для проприетарного драйвера сканера Kyocera для SANE.
|
||||||
|
|
||||||
|
Пакет перепаковывает Linux-драйвер Kyocera SANE, распространяемый в виде Debian-пакета, и интегрирует его со структурой файловой системы Arch Linux и механизмами управления устройствами.
|
||||||
|
|
||||||
|
Kyocera распространяет Linux-драйвер сканера в ZIP-архиве. В официальном разделе загрузок Kyocera для Linux указан драйвер **SANE Driver 2.2.1511**.
|
||||||
|
|
||||||
|
## Возможности
|
||||||
|
|
||||||
|
Пакет предоставляет следующие SANE-бэкенды Kyocera:
|
||||||
|
|
||||||
|
```text
|
||||||
|
kyocera
|
||||||
|
kyocera_gdi_a3
|
||||||
|
kyocera_wc3
|
||||||
|
kyocera_wc3_usb
|
||||||
|
```
|
||||||
|
|
||||||
|
Конфигурация SANE устанавливается в:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/etc/sane.d/dll.d/kyocera.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
Пакет поддерживает следующие архитектуры x86:
|
||||||
|
|
||||||
|
```text
|
||||||
|
i386
|
||||||
|
i486
|
||||||
|
i586
|
||||||
|
i686
|
||||||
|
x86_64
|
||||||
|
```
|
||||||
|
|
||||||
|
Архитектурный Debian-пакет, предоставляемый Kyocera, автоматически выбирается при сборке пакета.
|
||||||
|
|
||||||
|
## Сканирование по USB
|
||||||
|
|
||||||
|
Бэкенд Kyocera SANE требует прямого доступа к USB-устройству через `libusb`.
|
||||||
|
|
||||||
|
По этой причине пакет устанавливает:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/usr/lib/modprobe.d/kyocera-sane.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
со следующим содержимым:
|
||||||
|
|
||||||
|
```text
|
||||||
|
blacklist usblp
|
||||||
|
```
|
||||||
|
|
||||||
|
Это предотвращает захват нужного USB-интерфейса принтера драйвером ядра `usblp`, который необходим бэкенду Kyocera.
|
||||||
|
|
||||||
|
Также устанавливается правило udev для USB-устройства Kyocera **FS-1020MFP**:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/usr/lib/udev/rules.d/71-kyocera-sane.rules
|
||||||
|
```
|
||||||
|
|
||||||
|
Правило предоставляет активному пользователю рабочего стола доступ к USB-устройству:
|
||||||
|
|
||||||
|
```text
|
||||||
|
Vendor ID: 0482
|
||||||
|
Product ID: 0495
|
||||||
|
```
|
||||||
|
|
||||||
|
без необходимости запускать приложения от имени `root`.
|
||||||
|
|
||||||
|
## Установка
|
||||||
|
|
||||||
|
Склонируйте репозиторий и соберите пакет с помощью `makepkg`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://debver.com/debug-version/kyocera-sane.git
|
||||||
|
cd kyocera-sane
|
||||||
|
|
||||||
|
makepkg -si
|
||||||
|
```
|
||||||
|
|
||||||
|
Версия пакета автоматически определяется по странице поддержки Kyocera, а не задаётся жёстко в `PKGBUILD`.
|
||||||
|
|
||||||
|
После установки перезагрузите правила udev:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo udevadm control --reload-rules
|
||||||
|
sudo udevadm trigger
|
||||||
|
```
|
||||||
|
|
||||||
|
При необходимости переподключите сканер.
|
||||||
|
|
||||||
|
## Проверка SANE-бэкенда
|
||||||
|
|
||||||
|
Проверьте наличие конфигурации Kyocera:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cat /etc/sane.d/dll.d/kyocera.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
Ожидаемый вывод:
|
||||||
|
|
||||||
|
```text
|
||||||
|
kyocera
|
||||||
|
kyocera_gdi_a3
|
||||||
|
kyocera_wc3
|
||||||
|
kyocera_wc3_usb
|
||||||
|
```
|
||||||
|
|
||||||
|
Затем проверьте, обнаруживает ли SANE сканер:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
scanimage -L
|
||||||
|
```
|
||||||
|
|
||||||
|
Для более подробной диагностики:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
SANE_DEBUG_KYOCERA=255 scanimage -L
|
||||||
|
```
|
||||||
|
|
||||||
|
Конкретная переменная отладки, поддерживаемая бэкендом Kyocera, может зависеть от версии драйвера.
|
||||||
|
|
||||||
|
## Временные файлы
|
||||||
|
|
||||||
|
Проприетарный бэкенд Kyocera создаёт временные файлы в жёстко заданном каталоге:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/usr/local/kyocera/scanner
|
||||||
|
```
|
||||||
|
|
||||||
|
Поэтому пакет устанавливает для него права:
|
||||||
|
|
||||||
|
```text
|
||||||
|
1777
|
||||||
|
```
|
||||||
|
|
||||||
|
Это позволяет бэкенду создавать и удалять свои временные файлы, предотвращая при этом удаление файлов, принадлежащих другим пользователям.
|
||||||
|
|
||||||
|
## Изменения правил udev
|
||||||
|
|
||||||
|
Оригинальный пакет Kyocera содержит следующее правило udev:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/etc/udev/rules.d/40-scanner-permissions.rules
|
||||||
|
```
|
||||||
|
|
||||||
|
Пакет не устанавливает это правило как есть, поскольку оно назначает права `0666` всем USB-устройствам.
|
||||||
|
|
||||||
|
Вместо этого исходное правило сохраняется в качестве документации:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/usr/share/doc/kyocera-sane/40-scanner-permissions.rules
|
||||||
|
```
|
||||||
|
|
||||||
|
и устанавливается отдельное правило только для поддерживаемого сканера Kyocera.
|
||||||
|
|
||||||
|
## Устанавливаемые файлы
|
||||||
|
|
||||||
|
Пакет устанавливает или изменяет следующие важные пути:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/etc/sane.d/dll.d/kyocera.conf
|
||||||
|
/usr/lib/modprobe.d/kyocera-sane.conf
|
||||||
|
/usr/lib/udev/rules.d/71-kyocera-sane.rules
|
||||||
|
/usr/local/kyocera/scanner
|
||||||
|
/usr/share/doc/kyocera-sane/README.txt
|
||||||
|
/usr/share/doc/kyocera-sane/40-scanner-permissions.rules
|
||||||
|
/usr/share/licenses/kyocera-sane/COPYRIGHT
|
||||||
|
```
|
||||||
|
|
||||||
|
Документация из исходного пакета устанавливается в `/usr/share/doc/kyocera-sane/README.txt`.
|
||||||
|
|
||||||
|
## Примечания по упаковке
|
||||||
|
|
||||||
|
Этот репозиторий не содержит собственной реализации бэкенда сканера Kyocera. Он упаковывает проприетарный драйвер Kyocera, предоставляемый производителем.
|
||||||
|
|
||||||
|
Исходный пакет загружается с официальной инфраструктуры Kyocera во время сборки Arch-пакета.
|
||||||
|
|
||||||
|
В `PKGBUILD` пакет помечен как проприетарный:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
license=('LicenseRef-proprietary')
|
||||||
|
```
|
||||||
|
|
||||||
|
## Источник
|
||||||
|
|
||||||
|
Kyocera Document Solutions — поддержка продуктов и загрузки:
|
||||||
|
|
||||||
|
https://www.kyoceradocumentsolutions.eu/
|
||||||
|
|
||||||
|
Linux SANE-драйвер распространяется Kyocera в виде ZIP-архива, содержащего Debian-пакеты для отдельных архитектур.
|
||||||
|
|
||||||
|
## Структура репозитория
|
||||||
|
|
||||||
|
```text
|
||||||
|
kyocera-sane/
|
||||||
|
├── PKGBUILD
|
||||||
|
└── kyocera-sane.install
|
||||||
|
```
|
||||||
|
|
||||||
|
## Лицензия
|
||||||
|
|
||||||
|
Пакет содержит проприетарное программное обеспечение, распространяемое Kyocera.
|
||||||
|
|
||||||
|
Информацию об авторских правах и лицензии исходного ПО см. в установленном файле:
|
||||||
|
|
||||||
|
```text
|
||||||
|
/usr/share/licenses/kyocera-sane/COPYRIGHT
|
||||||
|
```
|
||||||
Reference in New Issue
Block a user