Показаны сообщения с ярлыком Linux. Показать все сообщения
Показаны сообщения с ярлыком Linux. Показать все сообщения

пятница, 1 декабря 2023 г.

NixOS 23.11

Поставил тут себе на ноутбук (в мае ещё) NixOS 23.05. Вчера вышла NixOS 23.11 - сделал апргейд. Некоторые вещи стали работать лучше, но вот дистрибутивный gnucash теперь падает. Пришлось заменить его на gnucash из flatpak.

Заодно в мае переехал на четвёртый Gnome. До этого все попытки заканичвались провалом. Сейчас уже стоит Gnome-45.1 и, надо сказать, этим уже можно пользоваться. Приятная фишка - если гном запущен под Wayland, то перемещение между рабочими столами можно делать быстро тремя пальцами по тачпаду. При таком управлении становится удобно иметь несколько тематических рабочих столов, а то и по одному приложению на рабочий стол (но я ещё психологически не дорос иметь 20 рабочих столов).

четверг, 11 января 2018 г.

Вывод курсов валют на Mate-панель (Gnome2)

Скрипт, вытаскивающий нужные валюты в одну строку:

#!/bin/sh

# Packages xmlstarlet and perl-libwww packages are required

USD_ID=R01235
EURO_ID=R01239

GET http://www.cbr.ru/scripts/XML_daily.asp |
     xml sel -t -v '//Valute[@ID="'$USD_ID'"]/Value' -o '$' -nl -t -v '//Valute[@ID="'$EURO_ID'"]/Value' -o '€' |
    xargs echo


Сохраняем скрипт в, например, /usr/local/bin/valutes.sh и делаем его запускаемым (chmod +x /usr/local/bin/valutes.sh).

Добавляем вывод на панель через аплет "Команда" (сейчас стоит Mate с русской локалью - в английском, наверное, Command).

По дефолту частота обновления стоит, кажется, одна секунда, что, конечно же, не подходит в данном случае. Поставил 600 секунд.

пятница, 31 марта 2017 г.

Запуск Hiri в Arch Linux через Docker

В виду того, что на новой работе для обмена почтой используется Microsoft Exchange, я настроил в своём Arch почтовик Evolution. Функционально вроде бы всё есть, но до MS Outlook немного не дотягивает.

Решил поискать, какие ещё программы могут работать с MS Exchange из Linux и наткнулся на неизвестную мне ранее Hiri. Судя по скриншотам, может быть чем-то интересным, но под Arch программа не запустилась. Запуск Hiri с env LIBGL_DEBUG=verbose показал, что ей чем-то не нравятся мои версии библиотек Arch.

Так как мне надо было всего лишь "на посмотреть" и как раз недавно ковырял Docker, решил немного попытать Docker на тему запуска GUI приложений. В итоге, можно считать, у меня всё получилось, хотя есть ещё косяк - Hiri не отображает картинки в письмах. Думаю, не хватает какой-то QT-либы в контейнере.

И так, для начала необходимо создать файл Dockerfile в котором пропишем:

FROM debian

RUN apt-get update && apt-get install -y sudo wget libxcursor1 libxss1 libasound2 libxcomposite1 libxtst6 libxaw7 libxft2 \
    libxcb-keysyms1 \
    libxcb-image0 \
    libxcb-shm0 \
    libxcb-icccm4 \
    libxcb-sync1 \
    libxcb-xfixes0 \
    libxcb-shape0 \
    libxcb-randr0 \
    libxcb-render-util0 \
    libfontconfig1 \
    libfreetype6 \
    libx11-6 \
    libxext6 \
    libxfixes3 \
    libxi6 \
    libxrender1 \
    libxcb1 \
    libx11-xcb1 \
    libxcb-glx0 \
    xauth \
    libglu1-mesa \
    libxkbcommon0 \
    libxcb-xkb1 \
    libxslt1.1 \
    libgstreamer-plugins-base0.10


# Set timezone
RUN echo "Asia/Novosibirsk" > /etc/timezone

# Replace 1000 with your user / group id
RUN export uid=1000 gid=1000 && \
    mkdir -p /home/user && \
    echo "user:x:${uid}:${gid}:User,,,:/home/user:/bin/bash" >> /etc/passwd && \
    echo "user:x:${uid}:" >> /etc/group && \
    echo "user ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/user && \
    chmod 0440 /etc/sudoers.d/user && \
    chown ${uid}:${gid} -R /home/user

# Install Hiri
RUN wget https://feedback.hiri.com/downloads/Hiri.tar.gz -O /tmp/Hiri.tar.gz --progress=dot:giga && \
    cd /opt/ && \
    tar oxf /tmp/Hiri.tar.gz && \
    rm -f /tmp/Hiri.tar.gz && \
    chmod -R go-w hiri

USER user
ENV HOME /home/user
WORKDIR /home/user
CMD /opt/hiri/hiri.sh

Необходимо заменить таймзону Asia/Novosibirsk на подходящую. Если этого не сделать, календарь будет показывать время неправильно, несмотря на установку таймзоны в профиле.

Теперь в каталоге с Dockerfile выполняем команду
docker build -t hiri .
Это создаст образ с именем hiri. Теперь создадим из этого образа рабочий контейнер с именем hiri:
docker run -ti -e DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix --name=hiri hiri

Контейнер будет создан и сразу запустится Hiri. По выходу из Hiri произвести запуск контейнера можно командой
docker start hiri
Не нужно опять запускать docker run!!! В этом случае вы получите исходную конфигурацию без персональных настроек.

Чтобы не проделывать самостоятельно работу  по созданию контейнера можно сразу скачать и запустить его с docker-hub:

docker run -e DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix --name=hiri ktak007/hiri

В целом Hiri показалась симпатичной программой, но для начала использования мне не хватило возможности подключить календари Гугл.

четверг, 7 апреля 2016 г.

Akregator

Вдруг нашёл устраивающую меня читалку RSS-новостей - Akregator. Она KDE-шная, а я как раз в последнее время в KDE5 сижу.

В последнее время читал RSS через Thunderbird, но "почтовость" Громоптицы накладывает отрицательный отпечаток. Да и просто глюки присутствуют - например, у меня почему-то не открываются ссылки на WEB без копипасты.

понедельник, 8 апреля 2013 г.

Mate 1.6 и флаг страны в индикаторе клавиатуры

Сегодня в обновил Mate с 1.4 до 1.6 и получил надписи ru/en вместо привычных флагов в индикаторе включенной раскладки. В комментах к одной из найденных статей есть упоминание, что вместо mate-conf-editor теперь необходимо применять dconf-editor.

В dconf-editor  необходимо в пути org/mate/desktop/peripherals/keyboard/indicator (schema org.mate.peripherals-keyboard-xkb.indicator) включить опцию show-flags.

Изображения флагов остались на месте:


$ ll ~/.icons/flags/
итого 8,0K
lrwxrwxrwx 1 ctac ctac   15 Янв 10 19:12 ru.png -> ru-symbolic.png
-rwxr-xr-x 1 ctac ctac 2,7K Авг 15  2012 ru-symbolic.png
lrwxrwxrwx 1 ctac ctac   15 Янв 10 19:12 us.png -> us-symbolic.png
-rwxr-xr-x 1 ctac ctac 3,2K Авг 15  2012 us-symbolic.png

среда, 17 октября 2012 г.

Настройка переключателя раскладок через Иксы в Debian Wheezy

Когда-то в стародавние времена, когда всяческие Гномы и KDE не умели сами менять переключатель раскладок, приходилось добавлять в файл /etc/X11/xorg.conf строку «Option      "XkbOptions" "grp:caps_toggle,grp:shifts_toggle,lv3:ralt_switch,grp_led:scroll,altwin:meta_win"» в секции настройки клавиатуры.

Переехав на awesome, я вспомнил о необходимости иногда редактировать конфиги Иксов, однако, к моему великому удивлению, при указанной конфигурации у меня работает только переключение по нажатию двух шифтов. Судя по логу /var/log/Xorg.0.log Иксы берут настройки клавиатуры из какого-то другого файла.

Не помню, в каких недрах Интернета нашёл я указание на то, что драйвер evdev заменят настройки на свои. Неясно только мне, почему всё-таки подключается grp:shifts_toggle - это теперь дефолтный переключатель или я где-то всё-таки его прописал? Один из способов решения - отключить драйвер evdev. Другой способ решения приведу здесь:

  1. Открываем файл /usr/share/X11/xorg.conf.d/10-evdev.conf
  2. Находим секцию настройки клавиатуры evdev
    Section "InputClass"
            Identifier "evdev keyboard catchall"
            MatchIsKeyboard "on"
            MatchDevicePath "/dev/input/event*"
            Driver "evdev"
    EndSection
  3. Добавляем туда уже упомянутую вначале строку XkbOptions:
    Section "InputClass"
            Identifier "evdev keyboard catchall"
            MatchIsKeyboard "on"
            MatchDevicePath "/dev/input/event*"
            Driver "evdev"
            Option      "XkbOptions" "grp:caps_toggle,grp:shifts_toggle,lv3:ralt_switch,grp_led:scroll,altwin:meta_win"
    EndSection
Кажется логичным прописать XkbOptions  в файле /etc/default/keyboard, но почему-то на моей системе это не помогает.

пятница, 17 августа 2012 г.

Awesome!

Утомили тормоза и глюки третьегнома и кде - вчера вечером решил попробовать что-то побыстрее, но необычное, т.к. различные Fluxbox и Openbox хотя и дают скорость, но при этом отбирают многие возможности DE, мало давая взамен.

И под руку попался менеджер окон Awesome. Я в восторге! Awesome - это, действительно, awesome! Скорость и возможности - а-ля Fluxbox. Плюс к этому возможность включить тайлинг - окна занимают весь экран, не перекрывая друг друга. Удобно, что можно комбинировать разные режимы. Отличная документация - мануал и web: http://awesome.naquadah.org/wiki/My_first_awesome/ru Поведение менеджера ровно такое, какое ожидаешь.

В общем, полный awesome!

среда, 15 августа 2012 г.

Установил Debian Wheezy на работе

На прошлой неделе установил Debian Wheezy вместо Squeeze на работе.

Надо сказать, вышла знатная эпопея. Сначала я попытался, как водится, обновить систему. Заменил в /etc/apt/sources.list упоминания squeeze на wheezy и после apt-get update набрал apt-get dist-upgrade. Сначала всё время что-то мешало выполняться этой команде. То одна зависимость не удовлетворена, то другая. Для обхода проблемы действовал проверенным способом - просто сносил проблемные пакеты. Пока не настала очередь glibc. Попробовал тогда сначала выполнить apt-get upgrade - и, ура, команда отработала успешно. Затем apt-get dist-upgrade, опять какие-то пакеты скачались, и опять, вроде бы, успешно. Но при перезагрузке система повисла - ядро почему-то осталось от squeeze. Кое-как вернувшись в систему, обнаружил, что ещё куча пакетов не установлена. Какого чёрта apt-get сообщил, что всё хорошо?! В итоге я несколько раз повторял операции upgrade и dist-upgrade, пока они не перестали что-то скачивать, и перезагрузился. Вроде бы система работала, но с какими-то страшными глюками. Gnome3 падал, KDE вовсе не запускался, а другие оболочки, типа Fluxbox, работали, но при нажатии Alt-F1 почему-то падали иксы (я давлю по привычке из Gnome2 в надежде увидеть меню).

Разбираться со всем этим глюкаловом мне было абсолютно лень, и я просто установил Wheezy с нуля. Ву-а-ля! Система оказалась в рабочем виде.

Так как ранее дома, не вынеся ужасов третьего гнома, я переехал на KDE, то и здесь я попытался работать в KDE. Во-первых, KDE почему-то жутко тормозил со включенными эффектами, хотя Compiz в squeeze до него на этой же машинке летал. Но и отключив эффекты, я не смог работать в KDE. Всё-таки, дома я в KDE не работаю, а только читаю статьи.

В результате опять ушёл в Gnome3. Надо сказать, он солидно оброс улучшающими жизнь расширениями, хотя не все из них работают нормально. Таких диких тормозов, как в KDE, не наблюдается.

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

Док сделал всегда видимым - вполне удобно на широком экране. Поставил плагин Evil Status Forever - имитация нормального трея. Теперь пытаюсь понять, как сделать скринсейвер.

В общем, недостаток третьего гнома - слишком о многом приходится думать о вещах, не имеющих отношения к делу, хотя в Гном2 то же самое было "из коробки". Работать в том, что идёт по дефолту - сверх неудобно. Такой интерфейс годится для людей, запускающих пару приложений и редко между них переключающихся.

понедельник, 2 апреля 2012 г.

Чем посмотреть swf-файл

Задался тут вопросом, чем посмотреть swf-файл, хранящийся на диске. Гугл вывел на LOR, а LOR отправил на страницу http://www.adobe.com/support/flashplayer/downloads.html, откуда я скачал Download the Linux Flash Player 11.2 Projector. Всё просто!

среда, 29 февраля 2012 г.

Emacs, JavaScript и Folding

При работе с js в emacs не хватало фолдинга (свёртки кусков кода). В php это решалось через outline-minor-mode, которая в js сворачивает далеко не всё. Возможно, если бы не навороченные конструкции extjs-3, то работа outline меня бы устроила. Вспомнил про js2-mode. Для установки в Debian достаточно дать команду apt-get install js2-mode и перезапустить emacs.

Фолдинг сразу навешан на кнопки C-c C-o, что я нашёл вполне удобным (outline у меня висит на F4).

Для автозапуска js2-mode на js-файлы добавил в ~/.emacs:
(setq auto-mode-alist
      (cons '("\\.js$" . js2-mode)
        auto-mode-alist))

Немного не устроил способ отступов по умолчанию в js2-mode. Исправил через js2-mode-customize, что привело к появлению такого кода в ~/.emacs:
(custom-set-variables
 '(js2-auto-indent-p t)
 '(js2-bounce-indent-p t)
 '(js2-enter-indents-newline t)
)

пятница, 3 июня 2011 г.

2gis NO_PUBKEY

Уже несколько раз устанавливал на Debian-ы 2gis и каждый раз мучительно вспоминаю, как установить ключи, чтобы apt-get не ругался. Решил записать:

# gpg --keyserver keyserver.ubuntu.com --recv 0984A1734DF6F320
# gpg --export --armor 0984A1734DF6F320 | apt-key add -
# apt-get update

P.S. Перед этим в файл /etc/apt/source.list необходимо добавить строку репозитория 2gis:


deb http://packages.redsolution.ru/2gis lenny non-free

lenny прописывать необходимо даже на wheezy

пятница, 20 мая 2011 г.

Как порезать .cue+flac на треки

Задался таким вопросом на днях. Вот что нашёл: http://www.gentoo.ru/node/9162#comment-62857

Переработал скрипт на свой вкус:
#!/bin/bash
#===============================================================================
#
#          FILE:  flac_split.sh
#
#         USAGE:  ./flac_split.sh ./flac_file.{flac,ape,wv} ./flack_file.cue
#===============================================================================
if [ $# -ne 2 ]; then
    echo "Usage: $0 ./flac_file.{flac,ape,wv} ./flack_file.cue"
    exit 1
fi
cuebreakpoints "$2" | shntool split -o flac "$1"
ALBUM=`cat "$2" | awk -F '"' '/^TITLE/{print $2}'`
ARTIST=`cat "$2" | awk -F '"' '/^PERFORMER/{print $2}'`DIR_READY="$ARTIST/$ALBUM"
mkdir -p "$DIR_READY"
cuetag "$2" split-track*
EXT=`echo $1 | awk -F "." '{print $NF}'`

for f in split-track*; do
    TRK=`metaflac --list $f | awk -F "=" '/TRACKNUMBER/{print $2}'`
    metaflac --list $f | awk -F '=' -v c=$TRK -v f="$f" -v dir="$DIR_READY" -v ext=$EXT '/TITLE/{printf("mv "f" \""dir"/%02d. "$2"."ext"\"\n", c)}'
done | sh

суббота, 26 февраля 2011 г.

LightScribe на amd64 работает!

Но не обошлось без напильника.

Поставил на новый компьютер Debian Squeeze amd64, после чего попытался создать картинку на диске LightScribe. Оказалось, что на сайте производителя дают только 32-разрядные версии библиотеки и в лоб пакет не устанавливается:

> dpkg -i lightscribe-1.18.21.1-linux-2.6-intel.deb
dpkg: не удалось обработать параметр lightscribe-1.18.21.1-linux-2.6-intel.deb (--install):
 архитектура пакета (i386) не соответствует архитектуре системы (amd64)


Проблема 64-разрядных систем обозначена на сайте 2007 годом, а воз и ныне там. Вот он, недостаток проприетарщины. Спасибо, что хоть deb-пакет дают (и rpm).

Небольшой гуглопоиск дал ссылки http://dominickpastore.com:192/www/Writings/lightscribe.html и http://www.solarum.com/2008/09/10/lightscribe-on-linux-and-amd64/ с немного разными рецептами победы. Итоговая последовательность действий:

> apt-get install ia32-libs rpm
> dpkg --force-architecture -i lightscribe-1.18.21.1-linux-2.6-intel.deb
> cd /usr/lib
> cp liblightscribe.so.1 /usr/lib32
> rm -f liblightscribe.so liblightscribe.so.1
> cd /usr/lib32
> ln -s liblightscribe.so.1 liblightscribe.so
> rpm --force-debian --nodeps -ivh LightScribe\ Host\ Software\ 1.8.15.1\ Linux.rpm
> rpm --force-debian --nodeps -ivh LaCie\ LightScribe\ Labeler\ 1.0\ Linux.rpm

Обращаю внимание на последние две строки. Я не стал заморачиваться с превращением в deb-пакеты через alien rpm-пакетов, взятых с http://www.lacie.com/support/drivers/driver.htm?id=10081 и http://www.lacie.com/support/drivers/driver.htm?id=10061, и установил их через rpm.

После перечисленных выше команд запустил 4L-gui и успешно записал картинку на рубашку диска.

среда, 9 февраля 2011 г.

OpenOffice & Arial CYR

Время от времени мне присылают документы в формате doc, в которых указан шрифт Arial CYR, которого не было в моём Debian, и всё отображалось криво. Обычно я просто менял шриф на Arial и документ выглядел хорошо. Однако сегодня прислали довольно сложно форматированный документ, и простая замена шрифта только портила документ, после чего решил разобраться.

В результате недолгого гугления, скачал на просторах Интернета файл с названием aricyr.ttf, создал каталог /usr/local/share/fonts/aricyr, в который и положил этот файлик. Затем, зайдя в этот каталог, выполнил команды mkfontdir и mkfontscale. Убдившись, что они породили абсолютно одинаковые fonts.dir и fonts.scale, не выходя из каталога, выполнил:
xset +fp $PWD
xset fp rehash

Ву-а-ля! OpenOffice теперь красиво оторбражает и печатает документ. В качестве бонуса в X-овых приложениях типа xfontsetl стал красивый шрифт.

Насколько понимаю, чтобы после перезагрузки X-ов новый шрифт не исчез, необходимо в /etc/X11/xorg.conf добавить строку
FontPath     "/usr/local/share/fonts/aricyr/"
в разделе Section "Files"

Хотя можно добавить и через xfstt.

понедельник, 6 декабря 2010 г.

StarDict -> GoldenDict

Сегодня заменил  некогда любимый StarDict на GoldenDict.

StarDict давно уже подглючивал - падал при выделении слова в режиме сканирования, не воспроизводил озвучивание слова.

Вычитал на LOR о другом словарике - GoldenDict - и решил его попробовать. Благо, в Debian этот пакет ставится лёгким движением руки: apt-get install goldendict

Приятно, что мне не пришлось ничего настраивать - новый словарик подхватил все настройки словарей от StarDict и хорошо с ними работает:


Сканирование есть, звук есть. Всё зашибись. Один недостаток - я в Гноме, а GoldenDict на Qt. Но на фоне поедания памяти фаерфоксом мне ничего не страшно :-)

P.S. 20 декабря обнаружил, что StarDict нормально сканирует и звук выдаёт. Наверное, какое-то обновление помогло. Но, всё равно, GoldenDict красивее.

четверг, 2 декабря 2010 г.

Паковать музыку в формате flac и CD "Два в одном"

Уже, наверное, несколько лет ничего сам не паковал. А тут вдруг решил паковать имеющиеся CD в формат flac - для удобства, чтобы всё было
под рукой.

При вставке CD мой Debian Squeeze автоиматически запускает программу Sound Juicer 2.28.2, которая, вроде бы, умеет паковать в формат flac. Попытка упаковать им оказалась неудачной - в файлах с расширением .flac оказалось нечто непрослушиваемое в формате, похожем на mp3.

Вспомнил, что когда-то грабил и паковал в формат mp3 программкой Grip. Поставил (apt-get install grip из-под рута) и запустил. Кажется, она совсем не изменилась, хотя я помню её со времён GTK1:


Видим, что Grip автоматически по базе freedb.freedb.org определил название диска, исполнителя и названия треков.

Чтобы начать паковать, необходимо:
  1. До запуска grip установить пакет flac: apt-get install flac из-под рута
  2. Выбрать требуемые треки. Чтобы выбрать все треки, надо кликнуть по слову "Извлечение" на скриншоте
  3. В разделе Конфигурация/Сжатие проверить, что выбрана программа сжатия flac
  4. Для корректного задания полей flac, командую строку рекомендую сделать такой: -V -8 -T "TITLE=%n" -T "ARTIST=%a" -T "ALBUM=%d" -T "DATE=%y" -T "TRACKNUMBER=%t" -T "GENRE=%G" -o %m %w (почему-то grip сам не умеет правильно подставлять поля во flac, хотя в mp3 теги расставляет корректно)
  5. Формат сжатого файла сделал таким: ~/music/%A/%d/%t. %n.%x (понять подставляемые значения %A, %d, %t и других можно в справке, в самом низу текста: Помощь/Конфигурирование Grip)
  6. Теперь переходим на вкладку Извлечение и нажимаем кнопку "Извлечь и сжать". Вуа-ля! Grip начинает читать диск и параллельно паковать.
Однако это не всё. Если бы диск содержал один альбом, я бы успокоился. Но на скриншоте можно видеть, что  я вставил в CDROM диск, на который записаны два альбома - "Paranoid" и "Technical Ecstasy". Grip создаёт структуру файлов по описанию. В итоге в каталоге ~/music/ у меня появился каталог "Black Sabbath" (это исполнитель), а в нём один каталог-название альбома "ParanoidTechnical Ecstasy" (слеш пропал из названия, т.к. grip по дефолту вырезает неудобные символы). А мне хотелось бы хранить эти альбомы по отдельности - так, как их выпустили в оригинале. Что бы провернуть сие, я воспользовался утилитой metaflac, входящей в уже установленный пакет flac.

Сначала я разделил каталог "ParanoidTechnical Ecstasy" на два: "Paranoid" и "Technical Ecstasy". В первый я переместил песни с 1-ой по 8-ую, во второй - все остальные.

Какие проблемы остались? Это неправильные теги. Просмотреть теги flac-файла можно командой metaflac --list <файл.flac>.

В альбоме Paranoid необходимо исправить только название альбома: 
metaflac --remove-tag=ALBUM *
metaflac --set-tag='ALBUM=Paranoid' *
Удаление необходимо т.к. --set-tag не заменяет тег, а добавляет второй.
С первым альбомом полностью разобрался.

В альбоме "Technical Ecstasy" так же просто, исправляем название альбома: 
metaflac --remove-tag=ALBUM *
metaflac --set-tag='ALBUM=Technical Ecstasy' *

И год выхода альбома (здесь проставился год выхода Paranoid - 1970):
metaflac --remove-tag=DATE *
metaflac --set-tag='DATE=1976' *

По аналогии так можно менять любые теги.

Теперь начинается самое интересное! В этом альбоме у меня файлы имеют вид:
09. Back Street Kids.flac
10. You Wont Change Me.flac
11. Its Alright.flac
12. Gypsy.flac
13. All Moving Parts Stand Still.flac
14. RocknRoll Doctor.flac
15. Shes Gone.flac
16. Dirty Women.flac

Надо заменить номера файлов. Выполняем с командной строки:
i=1; for f1 in *; do f2=`echo $f1 | sed 's/^[0-9][0-9]//'`; printf "mv '$f1' '%02d$f2'\n" $i; i=$((i+1)); done | sh

То же самое с номерами треков - они начинаются с девятки, а должны с единицы:
metaflac --remove-tag=TRACKNUMBER *
i=1; for f1 in *; do printf "metaflac --set-tag='TRACKNUMBER=%02d' '$f1'\n" $i; i=$((i+1)); done | sh

Вуа-ля! У меня два альбома из одного диска с правильными тегами!

Думаю, не упростить ли теперь процесс разбивки альбома на части - написать какую-нибудь GUI-прожку с кнопками. Или патч к Grip написать?

четверг, 18 ноября 2010 г.

Язык Си для скриптов

Читая статью Загрузка Linux без ядра за 25 секунд решил проверить, заработает ли такой код на языке Си:


Далее делаем программу запускаемой (chmod +x test.c) и можно запускать командой ./test.c

Действительно, работает!

Смысл такого подхода: иногда не хватает либо доступных средств скриптового языка, либо производительности. Но держать компилируемую программу там, где по сути нужен скрипт, неудобно.

А здесь в одном флаконе и мощь языка Си, и скорость запуска, и скриптовый подход "подправил-запустил", и компиляция в машинный код.

Осталось только попытаться применить это на практике.

пятница, 29 октября 2010 г.

Visio <=> Dia

Обалдеть! Оказывается, Microsoft Visio и Dia умеют обмениваться данными! Для этого всего лишь надо использовать формат файлов .vdx - обе программы понимают этот формат.

Правда, как в случае создания документа в Dia с передачей в Visio, так и в случае создания документа в Visio, с последующей передачей в Dia, вид документа получается, мягко говоря, неидеальный - потребуется редактирование. Но зачастую это лучше, чем рисовать схемы заново.

пятница, 6 августа 2010 г.

hp-setup и Bonjour

Сегодня подключал сетевой принтер с помощью утилиты hp-setup. Вообще говоря, подключать этой утилитой сетевые принтеры в Linux гораздо проще чем в Windows, благодаря использованию утилитой hp-setup протокола Bonjour. Однако, сегодня подключение было не таким простым. Сетевые принтеры были обнаружены, но подключение к ним не происходило. Как выяснилось, во время какого-то апгрейда системы (Debian Squeeze/Testing) был отключён запуск демона avahi, отвечающего за приём сообщений Bonjour. Видимо, процедуру поиска принтеров утилита hp-setup реализует самостоятельно, а для работы с найденным принтером уже требуется avahi-daemon. Почему создатели hp-setup не догадались проверять работоспособность avahi-daemon перед началом общения с принтером, для меня загадка.

Метод лечения был прост. В файле /etc/default/avahi-daemon значение AVAHI_DAEMON_DETECT_LOCAL=1 было заменено на AVAHI_DAEMON_DETECT_LOCAL=0 и выполнена команда /etc/init.d/avahi-daemon start