Add document describing how to set up an env for Linux packaging

This commit is contained in:
Luke Bakken 2018-11-08 14:35:48 -08:00
parent cb6c45dbfe
commit 5e5b0d4cb0
No known key found for this signature in database
GPG Key ID: B707DD932540186E
2 changed files with 64 additions and 0 deletions

60
PKG_LINUX.md Normal file
View File

@ -0,0 +1,60 @@
# Build RabbitMQ Packages using Linux
## Environment
Debian Jesse using this `Vagrantfile`:
```
$script = <<SCRIPT
export LANG='C.UTF-8'
export DEBIAN_FRONTEND=noninteractive
echo 'deb http://httpredir.debian.org/debian jessie-backports main' >> /etc/apt/sources.list.d/backports.list
wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb
dpkg -i erlang-solutions_1.0_all.deb
apt-get clean
apt-get update
apt-get install -y --fix-missing --no-install-recommends \
build-essential \
ca-certificates \
debhelper \
dh-systemd \
elinks \
esl-erlang \
elixir \
fakeroot \
git \
libfile-fcntllock-perl \
mandoc \
nsis \
python-lxml \
python-markdown \
python-simplejson \
rpm \
rsync \
tofrodos \
unzip \
xmlto \
xsltproc \
zip \
curl
date > /etc/vagrant_provisioned_at
SCRIPT
Vagrant.configure('2') do |config|
config.vm.box = "debian/jessie64"
config.vm.hostname = 'DEBIAN-JESSIE64'
config.vm.provision 'shell', inline: $script
end
```
## Instructions
Bring up a Debian Jesse instance using Vagrant, or, use the provisioning script
on a Debian Jesse server of your own. When it is done running, all necessary
package build requirements for either `apt`-based or `rpm`-based distros will
be present. See the [`README.md`](README.md#tldr) document for instructions on
building packages.

View File

@ -38,6 +38,10 @@ make package-standalone-macosx
make -C packaging package-standalone-macosx SOURCE_DIST_FILE=/path/to/rabbitmq-server-3.8.1-rc.1.tar.xz
```
The instructions in the [`PKG_LINUX.md`](PKG_LINUX.md) document include a
script to install the necessary pre-requisites for building package archives as
well as `deb` and `rpm` packages.
## Source archive
### How to create it