Installing optional Nginx modules with apt-get

Solution 1:

Install dpkg-dev:

sudo apt-get install dpkg-dev

Add repository:

sudo add-apt-repository ppa:nginx/stable

Edit /etc/apt/sources.list.d/nginx-stable-lucid.list, add dpkg-src:

deb http://ppa.launchpad.net/nginx/stable/ubuntu lucid main
deb-src http://ppa.launchpad.net/nginx/stable/ubuntu lucid main

note: (the previous step may have already been automatically performed on Ubuntu >= 12.04 - also make sure that you change lucid to reflect your version)

Resynchronize the package index files:

sudo apt-get update

Get sources:

apt-get source nginx

Build dependencies:

sudo apt-get build-dep nginx

Edit nginx-0.8.54/debian/rules:

config.status.full: config.env.full config.sub config.guess
...
--add-module=path/to/nginx_uploadprogress_module

Build package:

cd nginx-0.8.54 && dpkg-buildpackage -b

Install packages:

sudo dpkg --install nginx-common_1.2.4-2ubuntu0ppa1~precise_all.deb

sudo dpkg --install nginx-full_1.2.4-2ubuntu0ppa1~precise_amd64.deb

Solution 2:

Since squeeze in Debian and since oneric in Ubuntu, there are some (like headers-more-module I needed) in

apt-get install nginx-extras