Для прикладу, спробуємо створити дистрибутив текстового редактору AbiWord, який би не потребував встановлення якихось додаткових пакетів. По аналогії з Windows.
Отже, для початку, очистимо кеш менеджера пакетів:
sudo apt-get clean
Тепер нам потрібно взнати, які пакети нам потрібні щоб abiword міг працювати:
apt-cache depends abiword
На жаль, я не зміг знайти як автоматично завантажити необхідні пакети без того щоб не писати для цього скрипт, тому завершу я даний пост тим, що викладу скрипт який робить це автоматично.
Далі робимо так:
sudo apt-get install --reinstall -d -y abiword
І повторюємо дану команду для всіх пакетів, що згадувалися у залежностях. Це муторно робити вручну, тому краще написати скрипт, наприклад на Python.
По завершенню, у каталозі /var/cache/apt/archives можна буде знайти всі завантажені щойно пакети. Зкопіюємо їх у нашу поточну папку:
cp /var/cache/apt/archives/* ./
Тепер запакуємо наші файли в архів:
tar cvvf abiword.tar ./
Таким чином ми отримали архів abiword.tar який містить всі необхідні пакети для встановлення AbiWord. Тепер у каталозі з архівом створимо файл self.ext (gedit self.ext) і напишемо у нього наступне:
mkdir temp
SKIP=`awk '/^__ARCHIVE_FOLLOWS__/ { print NR + 1; exit 0; }' $0`
tail -n +$SKIP $0 | tar xvv -C ./temp
cd temp
sudo dpkg -i *.deb
exit 0
__ARCHIVE_FOLLOWS__
А тепер створюємо безпосередньо архів, що сам розпаковується:
cat self.ext abiword.tar > abiword_install
І даємо йому права на виконання:
chmod +x abiword_install
Власне на цьому все й готово, ми отримали файл розміром 20,6 Мб який містить все необхідне. Тепер, нам достатньо зкопіювати файл abiword_install на будь-який інший комп'ютер з Ubuntu і просто його там запустити. В результаті отримаємо встановлений AbiWord.
Оскільки процедура дійсно не проста, то я викладаю свій щойно написаний скрипт на Python який автоматизує даний процес. Ви можете завантажити його прямо звідси:

Просто розпакуйте даний архів у /usr/bin (або куди захочете) і можете використовувати утиліту. Використовувати її дуже просто:
sudo deb-packer ім'я_програми
По завершенню, у поточному каталозі з'явиться файл *.install який і представлятиме собою готовий скрипт для встановлення програми.