Архив рубрики: unix

Забывчивый верстак

MySQL Workbench — графический клиент к популярной СУБД MySQL — штука хорошая. Я, пожалуй, поставил бы его на второе место среди известных мне клиентов, но в связи с тем, что самый с моей точки зрения лучший клиент — EMS Studio for MySQL — сейчас выпускается только под винду, приходится использовать всё-таки верстак воркбенч.

Среди нужных мне функций — сохранение паролей к базам данных и SSH-туннелям до них: достаточно ввести один раз, поставить галочку, что пароль должен быть сохранён, и всё — пароль сохранится в Gnome Keyring. Точнее, сохранялся в предыдущих версиях, а в 6.2 эта штука сломалась. Пишут, что в версиях 6.2.5 и 6.3.0 проблема устранена, но у меня установлена более древняя версия.

Проблема решается путём присваивания переменной окружения GNOME_KEYRING_CONTROL значения 1 — можно сделать это прямо в файле /usr/bin/mysql-workbench

#!/bin/bash

# Uncomment the following line if you're having trouble with gnome-keyring lockups.
# This will cause passwords to be stored only temporarily for the session.
#WB_NO_GNOME_KEYRING=1
export GNOME_KEYRING_CONTROL=1

/usr/bin/workbench

После этого MySQL Workbench пароли всё-таки запоминает.

Мелкими шажочками

Надоело, что под Убунту 12.04 LTS не всегда есть свежие версии софта даже в сторонних хранилищах — решил наконец-то обновить домашнюю систему прямо сейчас, не дожидаясь семнадцатого года.

Выяснил, что Убунту теперь предлагает обновляться не до следующей версии, а до ближайшей LTS-версии, что, конечно, в четыре раза лучше, чем было когда-то, но ещё в два раза медленнее, чем хотелось бы. Но делать нечего — обновляемся, как предлагают, в несколько этапов — 12.04 LTS (Precise Pangolin) → 14.04 LTS (Trusty Tahr) → 16.04 LTS (Xenial Xerus).

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

Терминал

Быстрое переключение рабочих столов в третьем гноме

С тех пор, как я из-под Windows переехал под юниксоподобные ОС, я в оконных средах стал использовать несколько рабочих столов, число коих в конце концов дошло до шести — стол для всяких задач, для редактора, терминала, браузера, почты∕аськи∕скайпа и для графики. Естественно, что между столами я переключаюсь с помощью клавиатуры, а не мыши — так быстрее.

Когда вышел Gnome 3, в нём пропала возможность задать через графический интерфейс сочетания клавиш для переключения на конкретный стол — осталась лишь возможность переходить к соседним, что для меня не совсем удобно. Именно это и мешало переходить к третьему гному, вынуждая сидеть на втором либо на его форке MATE.

Однако, нашёлся способ — он описан на https://github.com/linuxmint/Cinnamon/issues/544 — можно нужные последовательности задать с помощью dconf-editor, настройки клавиатурных команд хранятся в org.gnome.desktop.wm.keybindings

dconf-editor

UPDATE∕20:00: оказывается, полтора года назад я на эти грабли уже наступал.

И слово было — два байта

Когда-то давно мельком заметил я, что счётчик кадров в фотоаппарате Nikon D70s какой-то странный: номер не всегда возрастает. Порывшись в фотоархиве, нашёл я пачку кадров, где номер сбрасывается, проверил:

#!/bin/sh
for file in `ls 442*jpg`
do
    echo  -n $file
    exiftool $file | grep 'Shutter Count' | cut -c33-44
done

Так и есть!

4420.jpg: 65534
4421.jpg: 65535
4422.jpg: 0
4423.jpg: 1
4424.jpg: 2
4425.jpg: 3
4426.jpg: 4
4427.jpg: 5
4428.jpg: 6
4429.jpg: 7

Выходит, счётчик всего-навсего двухбайтовый. Что же, предполагалось, что камера не может сделать больше, чем 65535 кадров? И ведь ме́ста-то в EXIF для нормального счётчика хватает — поле имеет тип LONG (32-битное беззнаковое целое), но используется лишь наполовину.

Кстати, geeqie показывает некоторые тэги, которые exiftool не отображает и среди них есть Shutter Count 1 (Exif.NikonSi01xx.ShutterCount1), в котором хранятся целые числа со значениями около 869×10⁶ (хотя есть и другие, сильно отличающиеся значения), а также поле Shutter Count 2 (Exif.NikonSi01xx.ShutterCount2), где лежат па́ры небольших целых чисел. Что это за числа — не вышло ни понять, ни нагуглить.

Атомный редактор

Пробую очередной текстовый редактор — Atom. Поначалу не удавалось его запустить — на сайте выложена версия для архитектуры amd64, а собрать из исходников не получилось (не очень-то и хотелось), однако нашёлся вариант для ленивых — PPA с поддержкой 32-битных версий убунты.

Проверка синтаксиса в редакторе Atom

Хоть, конечно, и требует напильника, но пока нравится: работает шустро, клавиатурные сочетания для основных операций с текстом по умолчанию вполне подходящие плюс можно легко скачиватьи ставить модули для функций, которых по умолчанию нет. Вот, например, модуль linter-perl позволяет проверить синтаксис перловых файлов, а svn подсвечивает изменённые строки и файлы при использовании Subversion — до полноценного клиента, правда, ещё далеко.

И зрелищ!

Наконец-то разобрался, как в Pitivi растянуть выражения лиц бардам до нормальных пропорций и как прикрыть заглушкой те места, где изображение пропадало совсем. Собрал тестовую запись — концерт КСП «Моримоша» на открытии Лесной площадки XXXIX Ильменского фестиваля. Кому невтерпёж — можно смотреть прямо сейчас, со всеми глюками. Как дотянусь до файлов, что писались самими камерами — переделаю.

Настройки масштабирования в Pitivi

Видеозаписи трансляции с Лесной площадки XXXIX Ильменского фестиваля будут потихоньку выкладываться на video.mineralogy.ru/video/ilmenyfest/album/284

Закончу с этим годом — займусь прошлым.

Перловые модули вставали не туда

Только сейчас обнаружил интересную штуковину: если в убунте выполнять общесистемную установку перловых модулей командой

sudo cpan Имя::Модуля

то модуль встаёт куда надо — в моём случае это /usr/local/share/perl/5.18.2 (а мануалы ложатся в /usr/local/man/man3), но если сначала взять себе рутовую консоль командой

sudo bash

и из такой консоли запускать cpan — модули встанут в ~/perl5/lib/perl5, чего я не ожидал.

P. S. Про sudo apt-get install libимя-модуля-perl я в курсе.