2018-11-09 06:35:48 +08:00
|
|
|
# Build RabbitMQ Packages using Linux
|
|
|
|
|
|
|
|
|
|
|
|
## Environment
|
|
|
|
|
|
|
|
Debian Jesse using this `Vagrantfile`:
|
|
|
|
|
|
|
|
```
|
2018-11-09 07:16:51 +08:00
|
|
|
$script = <<SCRIPT
|
2018-11-09 06:35:48 +08:00
|
|
|
export LANG='C.UTF-8'
|
|
|
|
export DEBIAN_FRONTEND=noninteractive
|
|
|
|
|
2019-03-20 16:22:38 +08:00
|
|
|
echo 'deb http://cdn-fastly.deb.debian.org/debian jessie-backports main' >> /etc/apt/sources.list.d/backports.list
|
2018-11-09 06:35:48 +08:00
|
|
|
|
|
|
|
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'
|
2018-11-09 07:16:51 +08:00
|
|
|
config.vm.provision 'shell', inline: $script
|
2018-11-09 06:35:48 +08:00
|
|
|
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.
|