RU Linux

The Ultimate ImageMagick Resize Spell

Предыдущая команда для пакетного ресайза изображений была слабой. Вот как надо:

mogrify -resize 200x150^ -gravity center -extent 200x150 -quality 85  +profile "*" *.jpg

Счастье наступает практически сразу от крышки ^, которую любители окон должны еще и бережно экранировать. При этом крышка недоступна пользователям Debian 4 Stable, обитает только в ImageMagick >= 6.3.8-3 и за ней мне впервые понадобилось отправиться в репозитарий Experimental! Но она того стоит...

Заклинание такое: "Для каждой jpg-картинки в текущем каталоге измени размер с сохранением пропорций так, чтобы она поместилась в прямоугольник 200x150 и полностью заполнила его, даже если придется что-нибудь обрезать, что нужно сделать равномерно отрезав по краям по ширине или высоте в зависимости от пропорций исходной картинки. Потом выбрось EXIF-превью и все EXIF-параметры и сохрани поверх того-же файла в JPEG с качеством 85".

Для вебмастера, часто публикующего по несколько фотографий разных размеров и пропорций на сайте, это заклинание способно продлить жизнь на многие часы клацаний мышью. Аналогично, используя convert, можно сделать код подготовки превьюшек на сайтах компактнее.

Блог: RU Linux

Новый SliTaz Cooking 20080716, русский язык в SliTaz Linux

Недавно вышел новый образ дистрибутива Linux SliTaz Cooking 20080716. Образ поддерживает веб-загрузку свежей версии с исправлениями. Добавлен Mplayer с возможностью полноэкранной работы через Xv. PCManFM обновлен до версии 0.5, в которой появился поиск, выполненный в виде отдельного приложения. В игры добавлены пасьянсы :)

В меню SliTaz в списке программ, как и положено для неттопного дистрибутива, наравне с локальными приложениями появились ссылки на веб-сайты, которые при выборе открываются в Firefox: Wikipedia в разделе Office, бесплатный hg-хостинг FreeHG в разделе Development, каталог свободной музыки Jamendo в разделе Multimedia.

Mplayer, русское меню и программы в SliTaz Linux

Присоединяются новые контрибьюторы, в Cooking-репозитарии количество пакетов перевалило за 800.

Русский язык в SliTaz

После выхода 20080716 немного позанимался прикручиванием русского и настройкой i18n вообще. Текущий прогресс и задачи собраны в девелоперской вики.

Теперь у SliTaz есть русская вики, где пока собраны инструкции по установке русской локали, русских букв в именах файлов в GTK-приложениях, русской клавиатуры в xorg.

Кристоф также обещал сделать русский раздел форума, но уехал на каникулы и не успел. Кому интересен проект, засветитесь на форуме чтобы он по приезду не передумал :)

Исправления, связанные с русскими буквами в именах файлов в GTK-приложениях, попали в апстрим и будут в новом Cooking.

Поправлен перевод категорий меню, изменения будут видны в следующем Cooking.

Кристоф собрал пакет для xruskb, эта программа должна помочь настроить русскую клавиатуру (не только русскую) и переключалку в KDrive Xvesa без использования xorg/xkb. Уже можно установить из репозитариев Cooking. Довести до ума мы ее не успели, Кристоф уехал и у меня сейчас нет времени, при запуске xrus не находятся шрифты:

XrusKB в SliTaz

Кто может пофиксить, отпишитесь в топике форума про i18n.

Блог: RU Linux

Быстрый запуск OpenOffice в KDE

Вот заметил что у меня нет включения апплета быстрого запуска в OpenOffice под Debian в KDE. Под Gnome ставится пакетом ooqstart-gnome, под KDE был раньше пакет oooqs-kde, но он совместим только с OpenOffice 1.x. Погуглил проблему. Оказалось есть новая версия QuickStarter 2, но в репозитариях Debian ее нет. Поставил пакет oooqs2-kde от Ubuntu, нормально работает:

Блог: RU Linux

VIA Padlock для ускорения шифрования под Linux

Тут на LOR проскочила новость про открытие спецификаций на VIA Padlock. При этом про Падлок автор написал, что это всего лишь аппаратный генератор случайных чисел. В статье по ссылке конечно написано более корректно. Я с недавних пор собираю информацию про использование Padlock для ускорения шифрования под Linux, вот решил опубликовать небольшое описание возможностей и подбор ссылок.

На самом деле спецификации на эту часть процессоров VIA C3 и C7 давно открыты, судя по тому, что соответствующие драйвера входят в ядро линукс давным-давно. Сначала, как водится, драйвера жили в виде патчей к ядру, а для их использования требовалось патчить криптопрограммы и криптобиблиотеки. Теперь все в апстримах и включается загрузкой нужных модулей ядра и простой конфигурацией криптобиблиотек.

Что такое Padlock?

Из официального сайта... Эти возможности включают реализацию квантового генератора случайных чисел VIA PadLock RNG (Random Number Generator) и VIA PadLock ACE (Advanced Cryptography Engine) с поддержкой стандарта шифрования AES, хешей SHA-1/SHA-256 и ускоренного вычисления алгоритма RSA (через включение Montgomery Multiplier). Элементы VIA PadLock Security Engine были интегрированы в процессоры VIA C7, VIA C7-M, VIA Eden™ ESP, Eden™-N, VIA C3®-M и VIA C3®.

Все эти процессоры известны, прежде всего, как интегрированные компоненты плат Mini-ITX и баребонов.

Какие программы поддерживают VIA Padlock под Linux и как включить поддержку?

Поддержка есть как минимум в OpenSSL, OpenSSH и OpenVPN. На сайте про VIA Padlock под Linux можно получить последнюю информацию о программной поддержке.

Рандомный генератор включается загрузкой модуля via_rng. После этого становится доступен файл /dev/hwrng с этими самыми квантовыми случайными числами. Я так понимаю это рандом на основе температурного датчика процессора. Чтобы заменить псевдослучайный рандом ядра /dev/random на хардварный, нужно установить переадресующий демон rngd пакетом rng-tools под Debian/Ubuntu и в /etc/default/rng-tools выставить:

RNGDOPTIONS="--hrng=via"

После этого ssh-keygen, dnssec, генерация сертификатов openssl и pgp становится быстрее.

В OpenSSL 0.9.8 поддержка акселерации AES из коробки. Поддержка PadLock прозрачна. Все что нужно сделать -- использовать модуль ядра padlock.ko вместо aes.ko. С этого момента можно использовать шифрование AES как обычно.

Однако для использования ускорения хешей SHA1, SHA224 или SHA256 на VIA C7 раньше нужно было патчить OpenSSL, в некоторых случаях можно было обойтись настройкой /etc/ssl/openssl.cnf, а недавно баг исправлен в OpenSSH 4.9p1 и OpenSSL 0.9.8h и все работает включением padlock в конфигах и параметрах команд. В новых ядрах нужно загрузить модули padlock_aes и padlock_sha. Подробнее про Настройку и бенчмаркинг OpenSSL и Padlock в Ubuntu.

Насколько быстро работает Padlock?

Впечатляющие цифры и набор возможностей для столь недорогих камней. Конечно на десктопе это не особо нужно, тем более, что Mozilla/Firefox похоже не использует OpenSSL для шифрования. А вот для создания VPN-шлюзов на VIA Mini-ITX подумываю применить.

Блог: RU Linux

Поисковик по свободным программам

Когда мне нужно найти программу под новую задачу я ищу по описаниям пакетов в репозитариях Debian. Дистрибутив хоть и большой, но вне его еще полно свободного софта. Большинство свободных программ живут на sourceforge.net и подобных сервисах а только потом попадают в дистрибутивы. Надоело листать гугль, вот сделал на основе Google CSE поиск свободных программ по сайтам хостинга проектов.

Для начала забил туда SourceForge, FreshMeat, GnomeFiles, KDE Apps, Savannah GNU/nonGNU, Launchpad и Google Code. Никого не забыл?

Больше всего времени заняла настройка фильтрации чтоб исключить из поиска вики, багтрекеры, форумы и прочие лишние при поиске программ страницы. Удалось добиться, чтобы в поисковую выдачу попадали только главные странички проектов (если это где-то не так, то шлите баг-репорт :).

Заголовки на страницах поисковой выдачи обычно содержат название программы, а сниппеты показывают куски текста описания с подсвеченными словами -- суть проекта понятна уже при просмотре страниц результатов поиска. Так что поиск получился более удобным, чем по репозитариям, и гораздо более полным.

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

<form action="http://rulinux.net.ru/search-soft" id="cse-search-box">
  <div>
    <input type="hidden" name="cx" value="partner-pub-6177218069462574:hzbbxeh48e1" />
    <input type="hidden" name="cof" value="FORID:11" />
    <input type="hidden" name="ie" value="UTF-8" />
    <input type="text" name="query" size="25" />
    <input type="submit" name="sa" value="Поиск" />
  </div>
</form>
<script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=cse-search-box&lang=ru">
</script>
Блог: RU Linux

Пакетное изменение размера изображений

Для ресайза большого количества картинок я пользуюсь командой mogrify из imagemagick. В Debian нужно установить пакет imagemagick. Работает примерно так:

mogrify -resize 800x600 *.jpeg

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

Так вот с некоторыми файлами в формате tif это не работает -- на выходе нечитаемые файлы. А если tif конвертировать в jpg добавив опцию -format jpg, то часто получаются жипеги с искаженными цветами.

Кто вообще чем ресайзит/конвертит?

Блог: RU Linux

Работа с мобильными телефонами по USB под Linux

Если сотовый с Mini-USB разъемом подключить к USB-порту компьютера под управлением ОС на основе современного ядра Linux, то в выводе команды просмотра сообщений ядра dmesg можно увидеть такое:

cdc_acm 2-1:1.0: ttyACM0: USB ACM device
usbcore: registered new interface driver cdc_acm
drivers/usb/class/cdc-acm.c: v0.25:USB Abstract Control Model driver for USB modems and ISDN adapters

После этого в системе появляется файл /dev/ttyACM0, через который с телефоном можно делать разные штуки.

Подключение к интернету в Linux по GPRS

Нужна звонилка, например kppp, в качестве адреса устройства модема указываем /dev/ttyACM0.

Указываем строку инициализации модема для Билайн AT+CGDCONT=1,"IP","internet.beeline.ru", для МТС AT+CGDCONT=1,"IP","internet.mts.ru" и для Мегафон AT+CGDCONT=1,"IP","internet"

В качестве номера звонка используем *99# или *99***1#.

Логин/пароль всегда beeline/beeline, mts/mts или gdata/gdata для Билайна, МТС и Мегафона соответственно.

UPD: В Debian/Ubuntu не забываем добавиться в группу dip и, при использовании kppp, раскомментировать noauth в файле /etc/ppp/peers/kppp-options

Синхронизация адресной книги с компьютером, отправка и просмотр СМС в KMobileToos

Программе KMobileToos требуются библиотеки KDE для работы, в Debian/Ubuntu устанавливается пакетом kmobiletools, выглядит так:
KMobileToos для синхронизации адресной книги мобильного телефона и компьютера в Linux
В настройках нужно указать все тот же файл /dev/ttyACM0 и выбрать тип телефона: Generic GSM, Nokia, Motorolla, Erisson. Программа умеет показывать уровень заряда батареи и дзынькать при полной зарядке телефона, показывать уровень связи, синхронизировать контакты с KAddressBook, читать контакты в телефоне, читать сохраненные СМС, отправлять СМС и делать звонки с компьютера. Последнее я не понял зачем нужно. Работает это все через AT-команды для большинства телефонов.

Аналог под Gnome называется Gnome Phone Manager. Более мощная порграмма на GTK для синхронизации мобильника и компьютером с поддержкой туду-листа и календаря называется Wammu, работает через консольную программу gammu. Интеграция с gammu появилась в KMobileToos в версии 0.5, которая пока находится в стадии беты.

Скачивание и загрузка файлов в телефоны Motorola с помощью Moto4lin

Это бывает полезно для установки J2ME-приложений, картинок/рингтонов на телефоны, где это нельзя сделать в режиме USB Mass Storage. Программа Moto4lin в Debian/Ubuntu устанавливается одноименным пакетом и умеет работать с файловой системой большинства современных телефонов Motorola через фирменный протокол P2K. Написана на Qt3, не требует KDE, выглядит так:

Moto4lin для работы с файлами телефонов Motorola под Linux

Программа работает нормально только под root, поэтому для запуска из под пользователя нужно выставить suid-бит на исполняемый файл командой:

# chmod u+s /usr/bin/moto4lin

В настройках нужно указать ACM Device /dev/ttyACM0, Set P2K Vendor ID 22b8, Set P2K Product ID 4901:

Настройки Moto4lin для работы в режиме P2K

После этого в логе внизу должно быть написано Phone pluged as P2K, нажимаем Connect, потом Update list и можно гонять файлы.

Аналог на GTK для телефонов Nokia называется gMobileMedia, работает на gammu.

Блог: RU Linux
RSS-материал