Size: 2324
Comment: Possibilties until now
|
Size: 4030
Comment: use internal link
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
= Automated Build of the gpg4win installer = | = Automated Build of the gpg4win installer |
Line 3: | Line 3: |
<<TableOfContents(3)>> | You can build ~Gpg4win on a Debian system using the list of build dependency packages. You have to setup a system, install those dependencies and follow [[Gpg4win/build|the instructions]]. To simplify the process and give all users the possibility to compile a gpg4win Installer on their own, we provide an automated solution that simplifies the process for all stakeholders. |
Line 5: | Line 5: |
At the moment, you can only build gpg4win on a Debian system with special dependencies. You have to setup a system by your own, install those dependencies and follow [[https://wiki.gnupg.org/Gpg4win/build|the instructions]]. To simplify the process and give all users the possibility to compile a gpg4win Installer on their own, we want to provide an automated solution that simplifies the process for all steakholders. It will be easier for the developers, because they don't have to maintain a list of system dependencies, they just have to add them to a script, they use by themselves. And it will be easier for the users, because they don't have to care about technical details that aren't important for the process or the product itself. | == Environments |
Line 7: | Line 7: |
== Evaluating possibilities == | We choose two different environment which can handle the same tasks. It depends on your platform which of the provided solutions you want to use. If you are on a Linux machine and you trust in the provided docker images, you will probably want to use Docker to build your gpg4win installer. If you are on Windows or if you don't trust the provided Docker Images, you may want to use Vagrant. |
Line 9: | Line 9: |
=== Docker === | === Docker |
Line 11: | Line 11: |
There is a Dockerfile that automatically creates an installer, you can find it on [[https://bitbucket.org/jsaalfeld/gpg4win-docker|BitBucket]]. The Problem with Docker itself is, that we can't trust the origin of the base images that are used to create the containers. We could create [[https://github.com/phusion/baseimage-docker|our own base images]], but that again would require a lot of webspace and we have to additionally maintain a base image. | You have only one dependency to build gpg4win with docker: [[https://www.docker.com/|Docker itself]]. Docker currently is only stable for some Linux distributions and in beta for Mac and Windows. So if you are on one of those Systems, you may want to checkout the vagrant method. There is a Dockerfile that automatically creates an installer, you can find it [[https://hg.intevation.de/gpg4win-automation/archive/default.zip|zipped]] or if you want to check it out by yourself, you can find it [[https://hg.intevation.de/gpg4win-automation/|here]]. To start building gpg4win you have to download the latest archive and unzip it to a destination folder of your choice. The folder will contain two subfolders, one to build the latest stable release and one to build the latest checkout from the master branch. Choose one of the builds you want to make and follow the steps provided in the README.md file. |
Line 13: | Line 14: |
=== Vagrant === | ==== Own base Image |
Line 15: | Line 16: |
Vagrant works very similar to Docker. But Vagrant uses other virtualization providers to create an Image, so the user needs Vagrant on the one side and a vivirtuli Provider (like Virtualbox) on the other side. Like with Docker, you [[https://atlas.hashicorp.com/boxes/search|pull an Image from a server]], but different than Docker, you can check where the image is coming from and where it is hosted. Also, the Images in the Vagrant System are directly maintained by [[https://wiki.debian.org/Teams/Cloud/VagrantBaseBoxes|a Debian Team]]. So the trust in that image is bigger. Of course, you can also create your own box image. But there again would be cause to use additional webspace and we need to maintain that separate box. | If you don't trust the base images provided by Docker, you can build your own, using this [[https://docs.docker.com/engine/userguide/eng-image/baseimages/|Tutorial]]. |
Line 17: | Line 18: |
=== Self-Scripted (w. Vagrant and Virtualbox) === | === Vagrant |
Line 19: | Line 20: |
Of course we can create a Box by our own. We "just" need to create a full Image based on an available iso, export it on the local Machine as a "box" file and use it further on as base image. | To build gpg4win with Vagrant you have two software-dependencies: [[https://www.vagrantup.com/|Vagrant]] and [[https://www.virtualbox.org/|Virtualbox]]. Additionally, you need to make sure, that your VT-X or AMD-V is enabled in your BIOS Settings. Vagrant basically creates an easy-to-use interface for Virtualbox and other virtualisation providers. It sets up a basic image of a pre-defined system and executes commands in it. After you downloaded and installed Vagrant and Virtualbox, you download the [[https://hg.intevation.de/gpg4win-automation/archive/default.zip|zipped]] archive from our server ([[https://hg.intevation.de/gpg4win-automation/|sources]]). When you unzip it, you will find 2 Folders in the archive. With one folder you can build the latest stable release of gpg4win and with the other one you can build the latest head from master. Choose one of the builds you want to have and navigate with a console to the folder. Open up the README.md-File in the Folder and follow the instructions. ==== Own base Image The base Images from Vagrant [[https://wiki.debian.org/Teams/Cloud/VagrantBaseBoxes|are build by Debian directly]]. If you still want to build one by yourself, use this [[https://www.vagrantup.com/docs/virtualbox/boxes.html|Tutorial]] ==== Troubleshooting If you got an empty Error message back and you are on Windows 10, after trying to execute //vagrant up// then you need to install the Microsoft C++ Redistributables **86 bit** environment (see the GitHub Issue [[https://github.com/mitchellh/vagrant/issues/6852|here]]) If you got a error message during //vagrant up// that state, that rsnyc is not installed or added to your path, you should install a provider for ssh and rsync. [[https://www.cygwin.com/|cygwin]] or [[http://www.mingw.org/|mingw]] contain these. If you don't want to or can't install anything in your system, get [[https://www.itefix.net/content/cwrsync-free-edition|cwRsync]], unzip the archiv, place the folder somewhere and add the bin folder to your System Environment "PATH" Variable. |
Automated Build of the gpg4win installer
You can build Gpg4win on a Debian system using the list of build dependency packages. You have to setup a system, install those dependencies and follow the instructions. To simplify the process and give all users the possibility to compile a gpg4win Installer on their own, we provide an automated solution that simplifies the process for all stakeholders.
Environments
We choose two different environment which can handle the same tasks. It depends on your platform which of the provided solutions you want to use. If you are on a Linux machine and you trust in the provided docker images, you will probably want to use Docker to build your gpg4win installer. If you are on Windows or if you don't trust the provided Docker Images, you may want to use Vagrant.
Docker
You have only one dependency to build gpg4win with docker: Docker itself. Docker currently is only stable for some Linux distributions and in beta for Mac and Windows. So if you are on one of those Systems, you may want to checkout the vagrant method. There is a Dockerfile that automatically creates an installer, you can find it zipped or if you want to check it out by yourself, you can find it here. To start building gpg4win you have to download the latest archive and unzip it to a destination folder of your choice. The folder will contain two subfolders, one to build the latest stable release and one to build the latest checkout from the master branch. Choose one of the builds you want to make and follow the steps provided in the README.md file.
Own base Image
If you don't trust the base images provided by Docker, you can build your own, using this Tutorial.
Vagrant
To build gpg4win with Vagrant you have two software-dependencies: Vagrant and Virtualbox. Additionally, you need to make sure, that your VT-X or AMD-V is enabled in your BIOS Settings. Vagrant basically creates an easy-to-use interface for Virtualbox and other virtualisation providers. It sets up a basic image of a pre-defined system and executes commands in it. After you downloaded and installed Vagrant and Virtualbox, you download the zipped archive from our server (sources). When you unzip it, you will find 2 Folders in the archive. With one folder you can build the latest stable release of gpg4win and with the other one you can build the latest head from master. Choose one of the builds you want to have and navigate with a console to the folder. Open up the README.md-File in the Folder and follow the instructions.
Own base Image
The base Images from Vagrant are build by Debian directly. If you still want to build one by yourself, use this Tutorial
Troubleshooting
If you got an empty Error message back and you are on Windows 10, after trying to execute vagrant up then you need to install the Microsoft C++ Redistributables 86 bit environment (see the GitHub Issue here)
If you got a error message during vagrant up that state, that rsnyc is not installed or added to your path, you should install a provider for ssh and rsync. cygwin or mingw contain these. If you don't want to or can't install anything in your system, get cwRsync, unzip the archiv, place the folder somewhere and add the bin folder to your System Environment "PATH" Variable.