восстановление пакетов и диспетчера пакетов на debian

Вам нужна запись CNAME.

Но я соглашаюсь; у нас должна быть некоторая более легкая функциональность для перемещения между сайтами StackExchange.

0
задан 8 August 2012 в 03:19
2 ответа

Specifically with Nginx, you will pass the configure script specific parameters as noted here.

A new version of Nginx means you will have to download the source and rebuild and install it again, each time. Once you build from source, your package manager has nothing to do with that package. This is almost a non-issue for you, though, because Debian moves at the speed of erosion. The brand-new source release today won't be in the Debian repositories any sooner than half a year from now.

Yes, this entire building-from-source business is a can of worms. It means that the nice startup scripts that Debian includes won't apply to your custom build of Nginx, and there will be a bit of reverse-engineering to get it to work right.

Do you need the absolute latest Nginx with special compile-time options, or can you settle for a version from Dotdeb?

If you absolutely, positively insist on building your own Nginx, at least turn it into a Debian package so you can reuse your custom build. Here are some instructions. There are a bunch of people that are way better at packaging software for Debian. Use their packages. Don't make your own.

UPDATE: Read this changelog for Nginx 1.2.3. They link to this spreadsheet where it indicates that the nginx-extras package offers MP4 module support.

1
ответ дан 4 December 2019 в 14:25

Джоэл упоминает несколько хороших альтернатив сборке пакета Debian, которые вам следует серьезно рассмотреть, поскольку они, скорее всего, больше подходят. Однако, чтобы прямо ответить на ваш вопрос, есть несколько способов сделать это.

Во-первых, вы можете скомпилировать и упаковать программное обеспечение с нуля. Это сложный процесс, и, вероятно, не то, что вы хотите делать, но если да, ознакомьтесь с Руководством нового сопровождающего Debian .

Во-вторых, вы можете распаковать существующий пакет, изменить исходный код и построить среду по мере необходимости, перестроить и переупаковать. Это довольно просто, хотя и чревато потенциальными опасностями. Шаги, как правило, следующие:

  1. Установите пакет build-essential , в котором есть инструменты, необходимые для сборки пакетов Debian.

  2. Загрузите исходный код пакета, запустив apt-get source nginx или другое подходящее имя пакета. Это загрузит и распакует исходный пакет, включая все исправления, в формате, готовом к перепаковке. Возможно, вам потребуется добавить или раскомментировать строки конфигурации deb-src в /etc/apt/sources.list для соответствующего раздела репозитория.

  3. Установите соответствующие зависимости сборки с помощью apt-get build-dep nginx .

  4. Внесите свои изменения. Здесь полезно обратиться к Руководству для новых сопровождающих, так как сборка будет автоматизирована и может отменить некоторые из ваших изменений. Обязательно увеличьте версию сборки, чтобы ваш пакет можно было установить поверх существующего.

  5. Скомпилируйте пакет с помощью dpkg-buildpackage -b . Флаг -b сообщает dpkg , что вы не хотите регенерировать исходный пакет.

  6. Установите свой пакет.

Более простой подход - использовать программу checkinstall , которая генерирует пакет Debian путем выполнения команды установки и создания пакета, который воспроизводит изменения, внесенные этой командой. Это работает для многих программных пакетов и довольно просто:

  1. Загрузите исходный код и внесите необходимые изменения.

  2. Создайте проект, как обычно ( make , например, но не make install ).

  3. Выполните sudo checkinstall -D make install . При необходимости вы можете изменить это для другой команды установки (например, python setup.py install для проектов Python).

  4. Следуйте интерактивным подсказкам, чтобы собрать пакет. Знание соглашений об упаковке Debian полезно для создания полезного пакета; вам, например, придется скопировать зависимости из существующего пакета.

Последний подход - использовать Alien ​​для преобразования существующего пакета (RPM, Slackware tgz и т. д.) в . пакет deb . Я сам не использовал этот подход, и для него требуется существующий пакет, который соответствует вашим потребностям с точки зрения конфигураций времени компиляции.

Все эти параметры должны работать для Debian или Ubuntu, но я пробовал их только на Ubuntu.

Последний подход - использовать Alien ​​для преобразования существующего пакета (RPM, Slackware tgz и т. Д.) В пакет .deb . Я сам не использовал этот подход, и для него требуется существующий пакет, который соответствует вашим потребностям с точки зрения конфигураций времени компиляции.

Все эти параметры должны работать для Debian или Ubuntu, но я пробовал их только на Ubuntu.

Последний подход - использовать Alien ​​для преобразования существующего пакета (RPM, Slackware tgz и т. Д.) В пакет .deb . Я сам не использовал этот подход, и для него требуется существующий пакет, который соответствует вашим потребностям с точки зрения конфигураций времени компиляции.

Все эти параметры должны работать для Debian или Ubuntu, но я пробовал их только на Ubuntu.

1
ответ дан 4 December 2019 в 14:25

Теги

Похожие вопросы