войти зарегистрироваться

Ненормальное программированиеУдалённое парное программирование с использованием GNU Screen

Перевод этой статьи может послужить хорошей пошаговой инструкцией для тех, кто регулярно пользуется парным программированием, или хотя бы совместным просмотром кода, и при этом знаком и готов использовать текстовые редакторы, работающие в текстовом режиме (Emacs, vi и т.п.). В статье дано много интересных ссылок, советую по ним пробежать глазами, а первый комментарий содержит ссылку на аналогичный опыт, но с более чистым аналогом GNU Screen — tmux.

У нас в Siyelo две распределённых команды, одна в Кейптауне, вторая в Скопье. Нам приходится придумывать, как заниматься удалённым парным программированием между офисами. Существует много возможностей (отличный обобщающий пост здесь).
Раньше мы постоянно пользовались Skype'ом для разделения экрана, но у нас при этом возникали следующие проблемы:

— нет контроля над экраном другого пользователя (странно, у меня такая возможность есть, возможно с помощью какого-то плагина)
— невозможно одновременно разделять экран и использовать видеоконференцию (о том, зачем это нужно подробнее есть в заметке по ссылке, данной несколькими строками выше)
— пропускная способность сети иногда может стать проблемой
— это не инструмент для парного программирования

Linux для всехПоддержка мышки в Midnight Commander запущенного из под tmux/screen

в топике про tmux был поднят вопрос о неработоспособность мыши в случае когда mc запущен в сессии tmux либо screen.

После небольшого исследования функции init_xterm_support, выяснилось что включить поддержку мыши, не прибегая к пересборке mc, можно прямо сейчас, достаточно «правильно» (как того ожидает mc) установить переменную COLORTERM.

image

Таким образом, если вам необходимо чтобы мышь работала в обычном режиме, поместите следующие строки в файл ~/.profile

if [ $TERM = "screen" ]; then
    export TERM=xterm
fi
if [ -n "$TMUX" ]; then
    export COLORTERM=rxvt
fi


Так же отследить решение проблемы можно будет в соответствующем тикете вот тут www.midnight-commander.org/ticket/2479

PS: Буду рад если кому то данная информация пригодится…

UPD: забыл добавить что желательно добавить в ~/.tmux.conf
следующую строку.
setw -g xterm-keys on


если этого не сделать то сочетание shift-стрелки, shift-Fx работать не будут…

Linux для всехСинхронизация профилей между linux-системами

Когда количество машин, на которые я постоянно заходил по ssh достигло 3х, я понял, что просто быстрой авторизации мне мало, и пора перетащить bash-алиасы, конфиги к редактору и прочие элементы окружения на удаленные системы. С другой стороны, нужен был способ не путаться в многочисленных вкладочках с терминалами. В итоге я пришел к связке из scp, screen и цветовой дифференциации хостов :)
Скриншоты результатов:
Домашняя система:

Одна из удаленных машин:

Команда для синхронизации профиля:
$ profsync
Подробности под катом.

Персональные блоги Удобная и безопасная работа с серверами по ssh

Так как по работе приходится много удалённо работать с unix серверами, то пришлось разобраться как это делать комфортно и безопасно и со временем возникло желание поделиться. Данная заметка не претендует на новизну информации, но мне показалось что нигде нет цельного руководства, нечто похожее есть только на английском.
Описание тестировалось под Debian GNU/Linux с KDE, но должно подходить под основную массу unix систем/дистрибутивов/оконных менеджеров и графических сред.

Linux для всехСкратчпад с mcabber в awesome WM

В этом топике я расскажу, как с помощью модуля scratch я настроил удобный вызов и скрытие консольного джаббер-клиента mcabber в оконном менеджере awesome по хоткею. Это позволило мне освободить целый тэг, который раньше был занят под чат-клиент, плюс не нужно убирать фокус с текущего тега, с которым сейчас работаешь. Yeahconsole для этой задачи мне не подошла, т.к. у нее нет поддержки true-transparency(alpha channel), и она иногда криво отображает ncurses приложения.

Софт, используемый в данной схеме: awesome, screen, urxvt, mcabber, модуль scratch.

GoogleВкусные скриншоты будущего интерфейса Chrome OS

Совсем недавно мы представляли вашему вниманию весеннюю сборку Chrome OS, а уже сейчас можно посмотреть как же должно это выглядеть в идеале.

Когда Chrome OS наконец будет готова для выхода на рынок, очевидно, что она будет сопровождаться широким спектром услуг гугловских сервисов по умолчанию. Для удобства использования разработчики постараются учесть все капризы будущего пользователя, чтобы интерфейс был интуитивно понятным. В этом призван помочь сам дизайн Chrome OS.

Панели
image

Linux для всехDIY SSH/SUDO Monitoring script

кортинко

Итак, родилась у меня как-то давным давно идея сделать свой собственный мониторинг с б/ж и ш.
Необходимо было мониторить успешные входы по ssh(и использование sudo) и сообщать мне об этом. Для оповещений был выбран мессенджер centerim (в дебиан и подобных пакет называется centericq-utf8). Так же понадобится пакет screen.
aptitude install screen centericq-utf8

Персональные блоги У кого какой PS1 в .bashrc и caption в .screenrc

Пока Gui'шники спорят у кого круче настроен KDE/Gnome/Fvwm/Fluxbox, решил спросить у тех, кто большую часть времени работает в command line interface. Как разукрашиваете или делаете удобнее/веселее command promt и screen.
У меня export PS1="\[\e[31;1m\]\u@\[\e[32;1m\]\h \e[33;1m\]# \e[33;0m\]" в .bashrc и
caption always "%{+b rk}%H%{gk} |%c %{yk}%d.%m.%Y | %{wk} %?%-Lw%?%{bw}%n*%f %t%?(%u)%?%{wk}%?%+Lw%? | %{rk} Load: %l %{wk}" в .screenrc

Виглядит так:

image

Персональные блоги Screen — текстовый оконный менеджер

Людям, которые в Линуксе часто работают с консолью приходилось сталкиваться с проблемой необходимости нескольких терминалов, например в одном из них пользователь правит текстовый файл, а в другом идет компиляция программы. Существует много способов решения данной проблемы, например открыть несколько псевдо-терминалов или открыть несколько вкладок. В данной статье я хотел бы рассмотреть способ, не связанный с каким-то конкретным терминалом: использовать консольный оконный менеджер Screen.

Итак, что же представляет из себя Screen?