Category: tech
HipChat на Windows XP
Под хрюшкой работает только эта версия - http://downloads.hipchat.com/windows/HipChat-2.2.1164-win32.msi
В последующих версиях поддержка Шиндовс ХР была убрана.
rsync + ssh on different port
Если на удалённой машине порт ssh переназначен - rsync'у надо передать следующий параметр (для примера с портом 2222):
--rsh='ssh -p2222'
Elasticsearch + MongoDB river
MongoDB River Plugin для ElasticSearch не заработает, пока монга, из которой надо читать - не будет иметь коллекции rs.oplog
Именно эта коллекция нужна плагину, для того чтобы подхватывать изменения в монге и складывать их в индекс ElasticSearch'a.
Синхронизация личных данных
Кажется, таки нашел то самое решение, которое отвечает всем запросам, предъявляемым к софту для синка данных. Всё началось с того, что dropbox не захотел синкать мои симлинки.
Долгая дорога к счастью:
Dropbox - с него всё началось. Но у него обнаружились следующие проблемы - он медленный; из-за того что данные хранятся на серверах дропбокса - пришлось выдумывать шифрование данных в дропбоксе при помощи fuse модуля encfs и последующего монтирования этой зашифрованной директории. Из-за зашифрованных имён возникали некоторые трудности в поиске файлов, которые дропбокс не мог синхронизировать (например из-за отсутствующих прав на чтение). И дропбокс не мог симлинки. А мне симлинки нужны. А ещё у меня так и не заработал LAN sync.
ownCloud - клёвый, но тоже не может симлинки. Если для использования в компании, как аналог гугла - то клёвый. Если для всяких девопсеров, которые любят симлинки - то нет :) Еще - нет консольной утилиты, либо демона, который синкал бы данные в фоновом режиме.
Unison - не рассматривал, много нюансов, мало плюшек. Сойдёт для двух серверов, которые видят друг-дружку.
BitTorrent Sync - Это оно! Btsync умеет симлинки. Из-за того что он построен по технологии p2p - данные быстрее синкаются, если много сидов. Не хранит данные на чужих серверах. Наконец-то можно не дрочиться с шифрованием. Есть мелкие баги, но терпимые.
UPD: Всё хуйня Миша, давай по-новой :) Btsync, после пары недель использования, оказался не таким распрекрасным. Не умеет корректно удалять файлы у всех пиров при удалении файлов на одном из них.
Теперь юзаю Unison, он - то что нужно.После включения ноды, которая была выключена на протяжении месяца - на все остальные прилетело 15 гигов данных, которые были ранее удалены. Unison тоже говно.
Нужно искать какое-то решение с хранилищем метаданных.
UPD 2021.01.23: Последние три года - юзаю Syncthing и вполне доволен.
Awesome DM. Один конфиг и разный автозапуск на разных машинах. И ещё немного conky :)
Так вышло, что у меня конфиги софта на рабочем и домашней пеке - идентичны. Это удобно, всё синкается. Изменив что-то на рабочем пеке и придя домой - попадаешь на идентичное рабочее место.
Но у каждой машины есть свои особенности, которые нужно учитывать в конфигах. Например conky рисует графики для двух процессоров на рабочей машине, а дома всего один процессор.
Ещё - дома не нужно в автозапуске всё то что есть на работе.
Поскольку везде вокруг меня не винда - я сделал себе заебись. В винде пришось бы делать дофига телодвижений. :)
В conky всё вышло безболезненно, там в конфиге просто было нужно было сотворить конструкцию вида:
some code ${if_match "$nodename" == "homepc"} some individual code #1 ${endif} ${if_match "$nodename" == "workpc"} some individual code #2 ${endif}
А вот в Awesome пришлось повозиться, но решение было найдено. Так как конфиги авесома написаны на Lua, то найти способ получения хостнейма - не проблема.
Вот что вышло:
function getHostname() local f = io.popen ("/bin/hostname") local hostname = f:read("*a") or "" f:close() hostname =string.gsub(hostname, "\n$", "") return hostname end hostname = getHostname() if hostname == "homepc" then run_once("conky") run_once("psi") run_once("claws-mail") run_once("/opt/google/chrome/chrome") elseif hostname == "workpc" then run_once("xscreensaver -no-splash") awful.util.spawn_with_shell("xrandr --output VGA1 --mode 1920x1080 --right-of HDMI1") run_once("conky") run_once("psi") run_once("skype") run_once("iceweasel") run_once("claws-mail") run_once("/opt/google/chrome/chrome") run_once("/usr/bin/python","/usr/bin/nagstamon") else run_once("conky") end
Command line xorg modeline generator
Example:
gtf 1280 1024 60
Save the resulting output as an example:
Section "Monitor" Identifier "Monitor0" Modeline "1280x1024_60.00" 108.88 1280 1360 1496 1712 1024 1025 1028 1060 -HSync +Vsync EndSection Section "Device" Identifier "Card0" EndSection Section "Screen" Identifier "Screen0" Device "Card0" Monitor "Monitor0" SubSection "Display" Modes "1280x1024_60.00" EndSubSection EndSection
Firefox: Копируем нормальный URL из адресной строки
Если копировать URL из адресной строки фуррифокса - он копируется как Percent-encoding и при вставке куда-нибудь - его читабельность теряется.
Плагинов для исправления этой фичи/бага я не нашел, изменение через about:config параметров network.standard-url.escape-utf8 и network.standard-url.encode-utf8 на false - не помогло.
Нашел тут решение. Перед копированием надо ввести перед URI scheme тире. Например вот так:
"-https://support.mozilla.com/en-US/questions/760105"
Disabling F10 key in Terminator
binding "NoKeyboardNavigation" { unbind "<shift>F10" } class "*" binding "NoKeyboardNavigation"
Forwarding ssh key
eval `ssh-agent` ssh-add .ssh/id_rsa ssh-add -l ssh -A example.com