Я шукав простий спосіб створити .deb пакети для речей, які не мають вихідного коду для компіляції (конфігурації, оболонки оболонок, власне програмне забезпечення). Це було досить проблемою, оскільки більшість навчальних посібників з пакетом передбачають, що у вас є вихідний тарбол, який ви хочете скласти. Тоді я знайшов цей короткий підручник (німецька).
Згодом я створив невеликий сценарій для створення простого сховища. Подобається це:
rm /export/my-repository/repository/*
cd /home/tdeutsch/deb-pkg
for i in $(ls | grep my); do dpkg -b ./$i /export/my-repository/repository/$i.deb; done
cd /export/avanon-repository/repository
gpg --armor --export "My Package Signing Key" > PublicKey
apt-ftparchive packages ./ | gzip > Packages.gz
apt-ftparchive packages ./ > Packages
apt-ftparchive release ./ > /tmp/Release.tmp; mv /tmp/Release.tmp Release
gpg --output Release.gpg -ba Release
Я додав ключ до підходящої брелоки та включив джерело на зразок цього:
deb http://my.default.com/my-repository/ ./
Схоже, саме РЕПО працює добре (я зіткнувся з деякими проблемами, щоб їх виправити, мені потрібно було двічі додати пакети та вирішити тимчасовий файл для випуску файла Release). Я також помістив кілька завантажених файлів .deb у репо, схоже, вони також працюють без проблем. Але мої самостійно створені пакети не стали ... Wenn I do sudo apt-get update
, вони викликають такі помилки:
E: Problem parsing dependency Depends
E: Error occurred while processing my-printerconf (NewVersion2)
E: Problem with MergeList /var/lib/apt/lists/my.default.com_my-repository_._Packages
E: The package lists or status file could not be parsed or opened.
Хтось має уявлення, що я зробив не так?
ОНОВЛЕННЯ 2012-03-06: Просто підказка для іншої людини, яка шукає простий спосіб створення DEB: Погляньте на FPM .