Skip to content

tomrss/guile-nginx-module

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Guile NGINX module

Module for enabling NGINX extensions in GNU Guile Scheme.

The goal is to be able to extend NGINX in a interpreted and hackable language. Guile Scheme is chosen as standard extension language of the GNU project.

Status

WARNING: this module is under early stages of development and it is at the moment not usable in any practical case.

Don't use it in any case except for contributing or for experimenting.

Installation

Requirements:

  • nginx 1.24+
  • libguile 3.0

For using this module in nginx, you must compile nginx with a reference to this module source. You can find instruction below also in nginx docs about compiling modules.

Download nginx source code and, in nginx sources root, run configure to generate makefile:

./configure --add-module=<path/to/this/project>

If using GCC, run:

./configure --with-cc=gcc --add-module=<path/to/this/project>

Then compile with:

make

Development

You can generate a compile_commands.json for usage in common language servers like ccls for example using bear. Run .configure as shown above in nginx sources and then run in this folder:

bear -- make -C <path/to/nginx/sources/root>

Writing Scheme extensions

TODO

Contributing

Any type of contribution is welcome.

Releases

No releases published

Packages

No packages published

Languages