Linux: ALAC to MP3

Создаём скрипт convert:

#!/bin/bash
input=$1
output=${input#.*}.mp3
ffmpeg -i "$input" -ac 2 -f wav - | lame -V 2 - "$output"

Добавляем ему права на исполнение. Затем устанавливаем parallel из moreutils, ffmpeg, lame и запускаем:

$ find ~/Music/ -type f -name '*.mp4' -print0 | xargs -0 parallel ./convert --

Источник: http://superuser.com/questions/339662/most-efficient-way-to-convert-a-large-alac-library-to-mp3

Debian: посмотреть размеры установленных пакетов

Чтобы узнать сколько места занимают установленные пакеты, можно выполнить следующую команду:
dpkg-query -Wf '${Installed-Size}\t${Package}\n' | sort -n

LM2596 — номиналы резисторов

Запишу, чтобы не считать каждый раз.
Для 5 Вольт — 1.00 k и 3.01 k 1% (4.93 В)
Для 3.3 Вольт — 1.62 k и 2.74 k 1% (3.31 В)

Формула: Vout = 1.23 * (1 + R2/R1)
R1: FB — GND
R2: FB — L1

Windows XP autologin

Постоянно забываю как это сделать. Запишу тут.

1. Run: control userpasswords2
2. Uncheck the box next to Users must enter a user name and password to use this computer.
3. Enter your account password in the two fields where it’s asked.

Источник: http://pcsupport.about.com/od/windowsxp/ht/auto-logon-xp.htm

OTRS: цитирование переписки в ответе

Открываем раздел: Ticket -> Frontend::Agent::Ticket::ViewCompose
Находим поле Ticket::Frontend::ResponseFormat
Добавляем/убираем строку $QData{«Body»}

При цитировании переписки содержимое текстового поля должно выглядеть так:

$QData{«Salutation»}
$QData{«Body»}
$QData{«StdResponse»}
$QData{«Signature»}

OTRS: смена почтового ящика

Меняя почтовый ящик в системе OTRS, помимо задания нового адреса и блокировки старого, неплохо бы не забыть сделать ещё две вещи:

  1. Очистить новый почтовый ящик, чтобы не получить кучу заявок по старым письмам.
  2. Изменить адрес системы NotificationSenderEmail на странице Framework -> Core, чтобы в качестве отправителя указывался новый адрес.
  3. Изменить логин и пароль пользователя на странице Framework -> Core::Sendmail.
  4. Проверить, что PostMasterMail Accounts и Адреса Email используют новый почтовый аккаунт.
  5. Изменить адрес исходящей почты для каждой очереди.

Надо ли говорить, что всё это я понял пост-фактум? 🙂

rsync + ssh

В скачивании файлов через scp один неприятный момент — при обрыве соединения scp начнёт перекачивать всё заново. Поэтому лучше использовать связку rsync и ssh:

rsync --progress -r -e 'ssh -p 2222 -l user' host:/source/path /dest/path

git: merge —squash

Чтобы при объединении веток получить только один коммит из вливаемой ветки, а не всю историю, нужно использовать параметр --squash:

git merge --squash branch -m "super commit"

Ссылки:

UPD: Как показала практика, с master’ом так лучше не делать, т.к. в этом случае другие ветки сообщают примерно следующее:

# Your branch and 'origin/master' have diverged,
# and have 336 and 1 different commit(s) each, respectively.

Т. е. пути вашей ветки и мастера разошлись. Учитывая, что в большинстве случаев разрабатываемые ветки в итоге вливаются обратно в master, это может привести к неприятным последствиям. К каким точно — не знаю, но для себя решил не использовать опцию --squash.

OTRS: время бездействия сессии

Не нравится мне, что спустя некоторое время бездействия OTRS завершает сессию и для продолжения работы нужно входить в систему снова. Настроить время бездействия сессии можно тут Core::Session -> SessionMaxIdleTime. Значение по умолчанию — 21600 секунд (6 часов). Я увеличил его до 24 часов (86400 секунд). Думаю, этого будет достаточно, чтобы прийти на следующий день и продолжить работу с того места, где закончил.

UPD: Как оказалось, максимальное время сессии так же ограничено 24-мя часами, т.е. не зависимо от активности через 24 часа сессия будет завершена и регистрироваться в системе придётся заново 🙁

GIT: удалить удалённую ветку

Долго не мог понять, почему git -r -d branchname не приводит к желаемому результату. Оказалось, надо делать так: git push origin :branchname

Вот я сейчас как почищу удалённую сторону 🙂

Ссылки: