LXC для локальной разработки программного обеспечения

О чем это я

Со временем на рабочей машине разработчика может скопиться целая масса всякого нужного и не нужного софта, библиотек и сервисов. Например, если Вы веб-разработчик, то в разное время, помимо, например, php или ruby (а иногда и то и другое и третье, коли Вы «полиглот»), на машине может появиться mysql, postgresql, mongodb, redis, rabbitmq, apache, nginx и в придачу куча разных библиотек, используемых вышеперечисленным софтом, и это с учетом того, что перечислено далеко не все, что может понадобится разработчику в процессе работы над проектами.

Не знаю как Вам, а мне такой бардак не нравится, более того, в моей практике приходится иметь дело не только с зоопарком софта, но еще и с обилием версий этого софта, как пример: сегодня я работаю над проектом, использующим php 5.4 + postgres 9.3, завтра латаю дыры в дремучем legacy, которое работает поверх php 5.2 и mysql 5.1, послезавтра вообще ковыряю библиотеку на ruby или python. На боевом сервере работать не комильфо, так что желательно иметь локальную версию не только приложения, но и его окружения.
Continue reading «LXC для локальной разработки программного обеспечения»

LXC для локальной разработки программного обеспечения

Skype и Pulseaudio. Отсутствие звука при уведомлениях.

Последние версии Skype для Linux, начиная где-то с 4.3.0.37, настойчиво просит pulseaudio для работы, ну да и леший с ним. Однако обратил внимание, что когда Skype выдает звуковое уведомление, все остальные звуки в системе на этот момент отрубаются: проигрывание мультимедиа файлов, звуковые уведомления freedesktop и прочие пропадают, пока виновник не «выговорится». Причина как оказалось проста, и, в некотором роде, логична.
Continue reading «Skype и Pulseaudio. Отсутствие звука при уведомлениях.»

Skype и Pulseaudio. Отсутствие звука при уведомлениях.

XDG Base Directory Specification

Довольно давно меня подзадолбала мусорка в домашней директории, постепенно получилось заставить почти весь софт гадить в строго определенное место, а именно в .config, .cache и .local, как и завещано в XDG Base Directory Specification.
Continue reading «XDG Base Directory Specification»

XDG Base Directory Specification

Запуск нескольких версий php

Дано

Дистрибутив — Debian Jessie (systemd) x86_64
Php — 5.6
Nginx — 1.6.1

Проблема

Запустить на одном сервере/рабочей станции кучу разного кода, в том числе дремучего legacy

Решаем

Сразу оговорюсь, все версии php собираем руками, пакеты готовить не будем. Так как будем собирать довольно древний софт, то заранее подготовим некоторые моменты
Continue reading «Запуск нескольких версий php»

Запуск нескольких версий php

Как собрать .deb пакет

В любом дистрибутиве GNU/Linux, имеющем на борту пакетный менеджер, приветствуется установка программного обеспечения строго из пакетов. В какой-то момент может возникнуть ситуация, что проще собрать пакет, чем компилировать и устанавливать классическим методом «./configure && make && sudo make install», например, если некоторая программа необходима нескольким коллегам, среди которых не каждый в состоянии понять почему сборка из сорцов не удалась.

Если Вы намереваетесь создавать пакеты, которые могу/будут входить в официальный репозиторий Debian, то для начала стоит ознакомится со следующими материалами:

Но, если Вам просто нужно понять, как собрать .deb пакет, здесь и сейчас, то добро пожаловать под кат.

Continue reading «Как собрать .deb пакет»

Как собрать .deb пакет