среда, 26 ноября 2014 г.

Как открыть новое окно в byobu с текущей директорией вместо домашней?

Я использую byobu с бэкендом tmux для упрощения работы с терминалом. byobu при помощи tmux позволяет делать много всего замечательного, но после того как tmux в openSUSE 13.2 обновился до версии 1.9 новое окно открывается в домашней директории вместо текущей (при нажатии F2) и это сильно замедляло рабочий процесс.

Но после небольшого поиска по интернету, я нашел в чем причина. Оказывается с версии 1.9 tmux открывает новое окно в домашней директории вместо текущей и убирает из списка доступных опций сервера default-path. Т.е. для того, чтоб вернуться к старому поведению tmux, надо будет явно задавать путь для нового окна, открываемого tmux.

Для этого нужно перебиндить нажатие F2-клавиши. И самый простой способ это сделать - это добавить строчку:

bind-key -n F2 new-window -c "#{pane_current_path}" \; rename-window "-"

в ~/.byobu/keybindings.tmux, ну или если byobu пользуется больше одного пользователя в системе то поправить биндинг в /usr/share/byobu/keybindings/f-keys.tmux.

После правки конфига и его сохранения, просто перезагрузите профиль byobu при помощи F5, изменения вступят в силу и новое окно будет опять открываться в текущей директории вместо домашней.

вторник, 25 ноября 2014 г.

Как обновить openSUSE с 13.1 на 13.2?

Обновление openSUSE - задача довольно тривиальная, но так как она не так проста, как do-release-upgrade в случае Ubuntu, я хотел бы оставить краткий список пунктов, которые нужно сделать для того, чтоб обновить openSUSE на примере перехода с версии 13.1 на недавно вышедшую версию 13.2.

  • Во-первых, нужно поменять версию для всех используемых репозиториев в системе, выполнив:
    # for file in /etc/zypp/repos.d/*.repo; do sed -i 's/13\.1/13\.2/g' "$file"; done
  • Теперь нужно обновить кеш zypper'а:
    # zypper ref
    и повыключать все репозитории, которые еще не поддерживаются новой версией openSUSE.
  • Далее следует обновить сам zypper:
    # zypper up zypper
    Так как при переходе с 13.1 на 13.2 возникают конфликты при обновлении zypper, лучше обновлять его в ручном, а не в автоматическом режиме.
  • И наконец система готова к обновлению. Запускайте:
    # zypper dup
    решайте возникшие конфликты, проверяйте список пакетов, которые удалятся/обновлятся в вашей системе и вуаля, через некоторое время ваша система будет обновлена.