Installation of your GendL-based System
You have several options for developing and deploying applications using GendL and Genworks GDL. GendL refers to an open-source project hosted at common-lisp.net whose copyright is owned by Genworks and which is licensed under the GNU Affero General Public License The AGPL licensing means essentially that GendL and its derivatives can be used free of charge in any way you want, as long as you comply with AGPL by making available your application source code to your users. If you were to host or distribute a compiled GendL application without complying with AGPL requirements, you would be putting yourself and any company you're associated with into legal jeopardy.
Please do not be concerned about legal jeopardy, however, as there are several ways to make good use of GendL and KBE while avoiding this risk:
- Host your application source code at a public repository such as Github or a Gitlab instance.
- Host your running applications using our Hosting Infrastructure (coming soon), which will automatically take care of offering source code to users.
- Contact Genworks and arrange to purchase a commercial Genworks GDL seat (these seats are built with commercial Allegro Common Lisp and come with technical support as well as other Enterprise-oriented features.)
Up to date prebuilt GendL executable images, based on Clozure CL 1.12, are available for Windows and Linux on 64-bit Intel processors. For other Operating Systems and Processors, you can use the Docker container approach (see below), or build GendL from source on a compliant CL implementation such as Allegro CL, Clozure CL (CCL), Clasp, LispWorks, or SBCL, on your OS platform of choice (see below).
Prebuilt GendL for Windows and Linux
You can download the latest prebuilt 64-bit Gendl images for Windows or Linux according to the following build combinations:
OS | Lisp | File Type | Download | GPG Signature |
---|---|---|---|---|
Windows | SBCL | Zip | Download | GPG Signature * |
Windows | Clozure CL | Zip | Download | GPG Signature * |
Windows | SBCL | exe | Download | GPG Signature * |
Windows | Clozure CL | exe | Download | GPG Signature * |
Linux | SBCL | Zip | Download | GPG Signature * |
Linux | Clozure CL | Zip | Download | GPG Signature * |
Note the large Zip files which on Windows may take several minutes to extract using the "Extract All" action from Windows File Explorer. The free 7-zip program available from7-zip.org is much, much faster at extracting these archives than the built-in one in Windows File Explorer.
Once it is finished extracting, you may run the run-gdl[.bat] script which can be found at the toplevel of then extracted directory. This script will launch Gnu Emacs, which will in turn launch and initialize a GendL instance as a subprocess.
Note that you may have to override the default Windows security settings to allow the script to run, when running it for the first time. If Windows asks you about a certain service or port from your program, you can safely disallow it, if you plan to use only "localhost" to access your local Gendl server. If you plan to access your Gendl server from other computers on your network, you will need to allow the service or port through the Windows firewall.
GendL as a Docker container
You can run the latest development version of GendL on any operating system where you have a bash shell and Docker installed (free version sufficient). On Windows, the easiest way to get Docker and a bash shell is by installing the Microsoft-supported Windows System for Linux 2 (WSL2)
To get GendL running in a container, follow these steps:
- Clone the GendL repository, for example with the command git clone https://gitlab.common-lisp.net/gendl/gendl.git
- . This repository will contain a file docker/run [--sbcl]. Run this script. It will fetch and run a prebuilt container image matching the repository branch you have cloned.
You may choose your branch from the official GendL codebase branches:
- master
- The current official stable released version.
- devo
- The current version under active development. Contains newest features but may be unstable.
- release/1598
- The current release candidate for GendL 1598 (or other version), used for producing beta releases
- Load the file from the repository: emacs/gdl.el into your emacs (e.g. using M-x load-file)
- In emacs, connect to the GendL server using M-x slime-connect and specify the host as localhost and the port as 4200
GendL compiled from source
If you are already set up with Common Lisp and Quicklisp, you can load and start
GendL with the following commands: (ql:quickload :gendl) (gendl:start-gendl!). If you'd like to work with the latest development ("devo") version
of GendL, then you may clone its repository into your quicklisp/local-projects/ directory, then the above command will load it from there rather than its official distribution location (the
official distribution will typically be built from the latest master branch. In order to clone the devo branch, the commands would be:
git clone https://gitlab.common-lisp.net/gendl/gendl.git; cd gendl; git checkout devo
Commercial Genworks GDL
Genworks offers commercial Genworks GDL distributions built with the commercial Allegro Common Lisp system. These distributions require an encrypted license file to run and are available through an email-based download gateway.
If you would like to inquire about an entitlement for supported commercial Genworks GDL, then please contact Genworks at licensing@genworks.com and you will be provided with further information.