Fluxbox — последняя перезагрузка.

После системного сбоя следует перезагрузка Матрица часть 2 RELOADED

Почему Fluxbox? А вот надоело мне читать блоги и статьи на тему "Как сделать загрузку Убунты за 40 сек" и тому подобные вещи. KDE и Gnome безусловно заслуживают уважения, но:

  • Это рабочие среды призванные удовлетворить максимальное количество юзерских требований, громоздкие и универсальные. Швейцарским ножом можно забивать гвозди, но добрый старый молоток сумеет это лучше. Если вы точно знаете что вам нужно, и как это делать, лучше использовать специализированный инструмент.
  • Количество глюков и багов в рабочей среде прямо пропорционально размеру кода этой среды.

→ Читать дальше...

2010-01-02

Fluxbox — красная таблетка

Синяя таблетка — так себе, ни в дугу ни в Красную Армию, зато красная — чистый термояд. (Эпиграф из Матрицы (В переводе Гоблина))

Для того, что бы настаивать что-то нужно знать, что и где настраивать, ну или хотя бы представлять конечный результат. Цель сего опуса — настроить Fluxbox так, чтобы обеспечить комфортную работу, разумеется все нижеприведенное исключительно моё ИМХО, буду рад если это будет кому-нибудь полезным.

→ Читать дальше...

2010-01-02

Список тем для обучения преподавателей работе со СПО (список программ)

Настоящая статья содержит список основных программ, поставляемых в рамках пакета СПО для школ и вузов. Список ПО взят из "Соглашения об организации работ по внедрению в общеобразовательных учреждениях РФ пакета СПО". Полный текст здесь.

Рассматриваемый пакет основан на дистрибутиве AltLinux с KDE (Русскоязычное сообщество) в качестве основной среды.

→ Читать дальше...

2009-12-14

Описание ключевых значений стандарта FreeDesktop

Ключевые значения могут быть опциональными(OPTIONAL) или обязательными(REQUIRED). Если ключ опционален, то он может быть, а может и не быть представлен в файле. Однако, если его нет, то реализация стандарта должна корректно обрабатывать данную ситуацию и подставлять некоторое значение по-умолчанию.

Некоторые ключи зависят от других, специфических ключей и имеют значение только если этот специфический ключ так же представлен и установлен в специальное значение. Такие ключи не должны быть использованы, если специфический ключ не представлен или установлен в отличное от необходимого значение. Например, ключ Terminal может быть использован, только когда значение ключа Type установлено в Application.

Если требующий ключ действителен в контексте другого ключа, установленного в специальное значение, то он должен быть представлен, если другой ключ установлен в специальное значение. Например, ключ URL представлен тогда и только тогда, когда ключ Type установлен в значение Link.

Примеры ключей: Name[C], Comment[it].

Таблица 2. Стандартные ключи

| Ключ | Описание | Тип значения | Ключ обязателен? | Тип |
| ''Type'' | Эта спецификация определяет 3 типа элементов рабочего стола: ''Application''(тип 1 - приложение), ''Link''(тип 2 - ссылка) и ''Directory''(тип 3 - директория). Для возможности добавить новые тип в будущем, реализации стандарта должны игнорировать элементы неизвестного типа. | строковый | ДА | |
| ''Version'' | Версия Спецификации Элементов Рабочего стола которой отвечают элементы рабочего стола. Элементы отвечающие с этой версией спецификации должны использовать ''1.0''. Примечание: поле версии не является обязательным. | строковый | НЕТ | 1-3 |
| ''Name'' | Имя приложения, например, "Mozilla" | строка в системной локали | ДА | 1-3 |
| ''GenericName'' | Название класса приложения, например, "Web Browser" | строка в системной локали | НЕТ | 1-3 |
| ''NoDisplay'' | ''NoDisplay'' означает, что "это приложение создано, но не будет отображено в меню". Это может быть полезно для ассоциирования с приложениями по MIME типа, и это дает возможность запускать его прямо из файлового менеджера(или другого приложения), без необходимости создавать пункт в меню для него(есть тысячи хороших причин для этого, включающие такие штуки, как ''netscape -remote'' или ''kfmclient openURL'') | булево | НЕТ | 1-3 |
| ''Comment'' | Подсказка для пункта меню, например "Просмотр страниц в интернете". Значение должно отличаться от значений ключей ''Name'' и ''GenericName''. | строка в системной локали | НЕТ | 1-3 |
| ''Icon'' | Иконка для отображения в менеджере файлов, меню и тд. Если имя является абсллютным путем, будет использован этот файл. Если имя это не абсолютный путь, то будет выбран алгоритм поиска иконки, описанный в [[http://freedesktop.org/wiki/Standards/icon-theme-spec|Спецификации Тем Иконок]]. | строка в системной локали | НЕТ | 1-3 |
| ''Hidden'' | ''Hidden''(скрытый) должно называться ''Deleted''(удаленный). Это означает что-то удаленное пользователем (на этом уровне), что было представлено (на более высоком уровне, например, в системной директории). Это эквивалентно тому, что .desktop-файл не создан ввиду участия пользователя. Это так же может быть использовано для "удаления" созданных файлов (например, в результате переименования) - давая ''make install'' установливать файлы с ключем ''Hidden=true'' в них. | булево | ДА | 1-3 |
| ''OnlyShowIn'', ''NotShowIn'' | Список строк, определяющий в каких окружениях элемент должен/не должен быть показан. Только один из этих ключей может присутствовать в группе (смотри возможные значения [[http://www.freedesktop.org/Standards/menu-spec|здесь]]) | строка(и) | НЕТ | 1 |
| ''TryExec'' | Путь до исполняемого файла, используемый, чтобы определить, действительно ли установлена программа. Если это не абсолютный путь, файл ищется в местах, указанной переменной окружения $PATH. Если файла не существует, или если он не имеет прав на исполнение, элемент может быть проигнорирован. (например не показан в меню) | строка | НЕТ | 1 |
| ''Exec'' | Программа для выполнения, может быть с параметрами. | строка | ДА | 1 |
| ''Path'' | Устанавливает рабочую директорию для запуска для элементов типа ''Application''(приложение). | строка | НЕТ | 1 |
| ''Terminal'' | Устанавливает, должна ли программа запускаться в терминале. | булево | НЕТ | 1 |
| ''MimeType'' | Тип(ы) MIME, поддерживаемые приложением. | булево | НЕТ | 1 |
| ''Categories'' | Группы меню, в которых элемент должен показываться (возможные значения смотри [[http://www.freedesktop.org/Standards/menu-spec| здесь]]) | строка(и) | НЕТ | 1 |
| ''StartupNotify'' | Если ''true'', приложение отправит сообщение ''remove''(об удалении), когда запускается с установленной переменной окружения ''DESKTOP_STARTUP_ID''. Если ''false'', приложение не будет использовать оповещение при запуске (не будут показываться какие-либо окна, прерываться при использовании ''StartupWMClass'' и тд). Если отсутствует, то действия зависят от реализации (считается равным ''false'', используется ''StartupWMClass'' и тд). (дополнительную информацию смотри в [[http://www.freedesktop.org/Standards/startup-notification-spec|Протоколе Оповещения при Запуске]]). | булево | НЕТ | 1 |
| ''StartupWMClass'' | Если определено, то приложение отобразит как минимум одно окно с переданной строкой в качестве ''WM Class'' или ''WM name'' (подробнее смотри в [[http://www.freedesktop.org/Standards/startup-notification-spec|Протоколе Оповещения при Запуске]]). | строка | НЕТ | 1 |
| ''URL'' | Если элемент типа ''Link'', определяет его URL. | строка(и) | ДА | 2 |

Это перевод страницы из спецификации FreeDesktop. Ссылка на оригинал.

2009-12-03

Настройка Сканера (USB, LPT) в ОС Linux

Это документ расчитан, прежде всего, на начинающего пользователя ОС Linux, а так же на тех, кому лень самому читать документацию к указанным пакетам.

Отмечу, что я не являюсь экспертом в данной области и операционной системе Linux, поэтому возможно при аписании этого документа были допущены ошибки и неточности. Лучшим источником информации по прежнему остается документация к описываемым пакетам и соответствующие man-страницы. Со всеми замечаниями и предложениями обращайтесь сюда: 4rayven [ at ] gmail [ dot ] com

Настройка ядра для LPT сканера

В ядре Вам необходимо включить поддержку параллельного порта:

Конфигурация ядра 2.4.x

Parallel port support --->
  <*> Parallel port support

Конфигурация ядра 2.6.x

Device Drivers --->
  Parallel port support --->
      <*> Parallel port support

Если Вы любитель модульного ядра - ваше право, хотя в документации к ядру все же рекомендуют включить этот драйвер монолитно. Модуль будет называться parport.

Настройка ядра для USB сканера

Конфигурация ядра 2.4.x

General setup --->
  [*] Support for hot-pluggable devices

(Эта опция дает возможность подключать устройства на уже запущенной машине)

File systems --->
  [*] /proc file system support

USB support --->
  <*> Support for USB
  [*] Preliminary USB device filesystem

Поддержка host-контроллера:

<*> UHCI (Intel PIIX4, VIA, ...) support

или

<*> OHCI (Compaq, iMacs, OPTi, SiS, ALi, ...) support

Что из них следует выбрать Вам зависит от Вашего чипсета. Можно включить сразу оба - хуже не будет, хотя и некрасиво это выглядит.

<*> USB Scanner support

(собственно поддержка USB-сканера)

Конфигурация ядра 2.6.x

General setup --->

  [*] Support for hot-pluggable devices
  (пояснения см. выше)

File systems --->
  Pseudo filesystems --->
  [*] /proc file system support

Device Drivers --->
  USB support --->
    <*> Support for Host-side USB
    [*] USB device filesystem
    <*> OHCI HCD support</code>
    или
    <*> UHCI HCD (most Intel and VIA) support
   (об этом сказано выше)

На этом конфигурация ядра завершена. Пересобираем ядро и перезагружаем машину.

Установка необходимого программного обеспечения

libusb

Для USB-сканера необходимо скачать и установить библиотеку libusb.

Распаковываем и устанавливаем как обычно:

$ tar -zxvf libusb.tar.gz
$ cd libusb
$ ./configure
$ make
$ make install

(X)SANE

Непосредственно для сканирования существует замечательный программный пакет SANE (с интерфейсом командной строки) и графический интерфейс пользователя для него(на GTK+): XSANE. Любителям командной строки последний пакет не понадобится. Скачать последнюю версию можно отсюда: http://www.sane-project.org/ Обращу Ваше внимание, что мне так и не удалось заставить работать XSANE версии младше 0.92 под ядром 2.6.x.

Распаковываем и устанавливаем как обычно:

$ tar -zxvf sane.tar.gz
$ cd sane
$ ./configure
$ make
$ make install</code>

Если вам нужен GUI, тогда ставим и его:

$ tar -zxvf xsane.tar.gz
$ cd xsane
$ ./configure
$ make
$ make install

Конфигурация sane

Вообще говоря проблематично дать какие-то конкретные рекомендации ввиду того, что сканеры от разных производителей конфигурируются по-разному. Для получения более подробной информации следует набрать команду man sane

В разделе "BACKENDS FOR SCANNERS" этого документа Вcы найдете список всех фирм производителей, сканеры которых поддерживаются, а так же ссылку на конкретную man-страницу для каждого из них. Хочется пожелать Вам удачи. Но все же я попробую помочь и дам несколько примеров из моей практики.

Счастливые обладатели USB-сканеров Mustek теперь могут набрать команду sane-find-scanner

Смотрим что она нам написала. Если среди всего вывода есть вот такое:

# No USB scanners found. If you expected something different, make sure that
# you have loaded a driver for your USB host controller and have installed a # kernel scanner module.

То либо читаем все сначала, либо читаем документацию. man sane все победит! =)

Если же Вы получили что-то подобное:

Можете начинать радоваться жизни и читать ман по scanimage(это для любителей командной строки), ну или просто под иксами дать комманду xsane - там все понятно. Остальные за мной. ----

Опыт подключения LPT-сканера Mustek-1200CP+

С LPT сканерами существует ряд проблем и сложностей, ввиду того, что отвечающие за их работу модули еще находится в стадии разработки. Но, тем не менее, эти устройства вполне работоспособны.

[!] Внимание! Если во время Ваших экспериментов со сканером вы услышите низкий щелкающий звук, НЕМЕДЛЕННО ВЫКЛЮЧИТЕ СКАНЕР!!! [!]

LPT-сканерам Mustek посвящена man-страница sane-mustek_pp. В любом случае, вам лучше прочитать ее пред тем, как что-то делать.

Этот сканер мне удалось победить так: В файле /etc/sane.d/dll.conf я раскомментировал строку mustek_pp и в файле /etc/sane.d/mustek_pp.conf раскоммнетировал строку scanner Mustek-1200CP+ 0x378 cis1200+ Здесь 0x378 - адрес LPT-порта. Возможно вам понадобится указать другое значение(например 0x278 или 0x3BC). Cis1200+ - название драйвера, котрый следует использовать. Указание неправильного драйвера может повредить ваш сканер(но мне повезло, когда я перепутал %) )!

Формат строки можно узнать среди комментариев этого же файла, либо на странице man sane-mustek_pp

После того, как я проделал все вышеуказанные действия сканер заработал! Хочу обратить ваше внимание, что программа sane-find-scanner не способна увидеть LPT-сканер и один из способов проверить его работоспособность - это запустить scanimage или xsane. ----

Опыт подключения сканера Epson Perfection 1670 со слайд модулем

Настройка этого сканера несколько отличается от примеров приведенных выше, но все различия заключаются лишь в необходимости использования дополнительного бинарного файа: ESFW30.BIN который можно взять на диске с драйверами сканера. Мне удалось найти его в интернете.

Этот сканер подключается бо USB интерфейсу, поэтому файл /etc/sane.d/epson.conf у меня имеет такой вид: usb /dev/usb/scanner0

Да, всего одна строка! В зависимости от вашего дистрибутива файл устройства, отвечающий за USB сканер может называться и так: /dev/usbscanner0. Проверьте наличие того или иного файла и исправьте соответствующим образом файл epson.conf.

Осталось подправить файл /etc/sane.d/snapscan.conf. Раскомментируйте строки: firmware /etc/sane.d/ESFW30.BIN /dev/usb/scanner0 bus=usb

и измените соответствующим образом путь к указанному файлу.

Вот, собственно, и вся настройка. Сканером можно пользоваться. Слайд адаптер тоже работал можно сказать "как в винде" :) Дело в том, что попавший ко мне экземпляр сканера в режиме сканирования слайдов безбожно глючил как под линуксом, так и под виндой. Причину проявившегося глюка установить так и не удалось, но проблема, видимо, заключалась именно в железе так как проявлялась с прогревом сканера и при сканировании обычных документов все было отлично.

На этом пока все. Больше подопытных сканеров мне пока найти не удалось. Будут еще сканеры - будут и описания их настройки.

Удачи. © Rayven, 2004.

2009-12-03