Project home: https://bues.ch Original repository at: https://git.bues.ch/git/cms.git https://bues.ch

Michael Buesch 377a9cc35a cgi: Add mmap to seccomp il y a 6 mois
cms cb4f85cf4f cms: Fix header list data type il y a 6 mois
cms-cgi 377a9cc35a cgi: Add mmap to seccomp il y a 6 mois
cms-fsd 10fa8e7e1c fsd: Install seccomp filter il y a 6 mois
cms-ident 6ce05092ab Fix doc warnings il y a 6 mois
cms-postd cd1bae91f7 Increase postd nice il y a 6 mois
cms-seccomp b485ebe242 seccomp: Allow build time compilation il y a 6 mois
cms-socket 31b9282e6e socket: Simplify sync read il y a 6 mois
cms-socket-back ea5a54e5d3 cgi: Better 404 handling il y a 6 mois
cms-socket-db 91a686fc09 db: Add image fetching il y a 6 mois
cms-socket-post 0a6b819b7f postd: Forward handler exceptions to client il y a 6 mois
cms-systemd 6ce05092ab Fix doc warnings il y a 6 mois
cmsbackpy cd1bae91f7 Increase postd nice il y a 6 mois
example b3711f9a5c example: Add required images directory il y a 6 mois
submodules da4d696699 Update submodule 'multipart' il y a 1 an
test b06e8c31dc test: Force no-systemd il y a 6 mois
.gitignore 01c2824c22 Remove cython link il y a 6 mois
.gitmodules 9b65e4fc50 Remove usage of cgi module il y a 2 ans
Cargo.toml 4ccde4b0cb Add seccomp crate il y a 6 mois
README.md f7259ee6a2 Convert readme to md il y a 6 mois
TODO a4e0639a7f Remove header todo entry il y a 5 ans
build.sh 01c2824c22 Remove cython link il y a 6 mois
cleantree.sh ac5f73d090 Rewrite build script il y a 6 mois
install-users.sh 175bbb275c install: Stop backd il y a 6 mois
install.sh 1c7abcdad6 Fix cython install path il y a 6 mois
setup.py fae0f546a1 Remove WSGI il y a 6 mois
setup_cython.py 8b8da85246 Fix Cython 3.x build il y a 7 mois

README.md

Simple Rust and Python based CMS

Copyright (c) 2011-2024 Michael Buesch m@bues.ch

Building

Run the build.sh script to build the CMS system.

The build requires the cargo-audit and cargo-auditable Rust crates installed:

cargo install cargo-audit cargo-auditable

The Python part requires the Cython compiler installed:

apt install cython3 python3 build-essential

After installing all build dependencies, run the build script:

./build.sh

Installing

After building, run the install-users.sh script to create the user/group structure for CMS in the operating system:

./install-users.sh

After that, run the install.sh script. It will install the CMS system into /opt/cms/.

./install.sh

Then create the database inside of /opt/cms/etc/cms/db/. You may start with the example db:

cp -r ./example/db/* /opt/cms/etc/cms/db/

Configuring Apache httpd

Configure the CMS CGI binary as CGI ScriptAlias:

ScriptAlias /cms /opt/cms/libexec/cms-cgi/cms.cgi

<Directory /opt/cms/libexec/cms-cgi>
    AllowOverride None
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch -Indexes
    Require all granted
</Directory>

# Redirect all 404 to the CMS 404 handler (optional)
ErrorDocument 404 /cms/__nopage/__nogroup.html