Skip to content
This repository has been archived by the owner on Aug 10, 2020. It is now read-only.
Mriyam Tamuli edited this page Feb 13, 2019 · 13 revisions

The Process

WARNING: Before starting go through the links on the reference page.

NOTE: This guide is for building the version 1.10.3 of Nginx. You might need to change the commands according to the latest stable version of Nginx.

  1. Start the container.
mkdir ~/nginx-build
cd ~/nginx-build
docker run --name=nginx-build -dit -v $PWD:/root/data rtcamp/nginx-build bash
  1. Copy the GPG keys(both public and private) to ~/nginx-build and if you don't have one, you can check here, how to create one.

  2. Enter the container.

docker exec -it nginx-build bash
  1. Import the your GPG keys.
cd /root/data/
gpg --import public.key
gpg --import --allow-secret-key-import private.key
  1. Clone the repo.
git clone https://github.com/EasyEngine/nginx-build
cd nginx-build
  1. Set your name as the Package Maintainer.
export DEBFULLNAME="rtCamp"
  1. Run the script with the latest stable release and your email id.
bash ppa.sh nginx 1.10.3 [email protected]
  1. At the end of the script’s run, you will find the CHANGELOG open in vim.

    nginx (1.10.3-2ppa~stable) stable; urgency=high
    
    * Update version to 1.10.3
    
    -- rtCamp <[email protected]>  Sat, 04 Feb 2017 03:05:53 +0530
    

    This revision number of the build in bold has to be changed to build it successfully.
    (1.10.3-2ppa~stable)
    This will download the latest Nginx source, the modules from their respective Github links, modify the changelog and create the whole directory structure at ~/PPA/nginx

  2. Go to the nginx directory (check the latest version)

cd ~/PPA/nginx/nginx-1.10.3
  1. Start the packaging with the GPG keys that you have exported. If in doubt about GPGKEY, you can check this page.
debuild -S -sa -k88649AAD

This is the key ID for rtCamp's GPG key. You will be asked for a password. Get the password for the GPG key.

  1. Checkout the repository. If you don't have a repository, go to Opensuse Build Service, and create one
cd ~
osc co home:rtCamp:EasyEngine

Warning: The repository name is case sensitive.

  1. Remove the current files from the nginx repo.
cd home:rtCamp:EasyEngine/nginx
osc rm *
  1. The files that need to be uploaded will be generated in the ~/PPA/nginx directory. Only the files you already see here will be necessary.
    Copy the files from ~/PPA/nginx to ~/home:rtCamp:EasyEngine.
rsync -avzP --exclude="modules" --exclude="nginx-1.10.3" ~/PPA/nginx ~/home:rtCamp:EasyEngine/nginx/
  1. Add the new files to the repo.
osc add *
  1. Commit and push the changes.
osc ci -m “Revision message describing any changes”
  1. Pat yourself on the back for a job well done. :)
Clone this wiki locally