По-перше, заголовок питання: якщо припустити, що каталог debian вже є, перейдіть у вихідний каталог (каталог, що містить каталог debian) та виклик dpkg-buildpackage. Мені подобається запускати його з такими параметрами:
dpkg-buildpackage -us -uc -nc
що означає не підписувати результат і не чистити.
Як я можу перевірити, чи правильно я перерахував усі залежності?
Отримати залежності - це чорне мистецтво. "Офіційний" спосіб перевірки залежності збірки полягає в тому, якщо пакет будується лише з базовою системою, з пакетами "необхідний для складання" та залежностями побудови, які ви вказали. Не знаю загальної відповіді на регулярні залежності, просто прошивайся :)
Як я можу запобігти встановленню системи оновлення старішої версії в репо на оновлення? Як я можу запобігти встановленню нової версії системи (коли її немає), замінивши мій спеціальний пакет?
Мої знання можуть бути застарілими в цьому, але для вирішення обох питань: Використовуйте dpkg --set-select. Якщо припустити, що nullidentd - це той пакет, який ви хотіли залишитися, запустіть як root
echo 'nullidentd hold' | dpkg --set-selections
Крім того, оскільки ви будуєте з джерела, ви можете використовувати епоху, щоб встановити номер версії на штучному рівні і ніколи більше не турбуватися. Щоб використовувати епоху, додайте новий запис у файл debian / changelog та поставте 99: перед номером версії. З огляду на мій недійсний приклад, перший рядок оновленого журналу змін буде таким:
nullidentd (99:1.0-4) unstable; urgency=low
Посилання Бернарда добре, особливо якщо вам доведеться самостійно створювати каталог debian - також корисні посилання розробників та загальна сторінка ресурсів . Посилання Адама також виглядає добре, але я з ним не знайомий.