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

Michael Buesch 34404460b8 Relicense all Rust code under Apache2/MIT 2 days ago
cms ff017d95a7 fsd: No hard error on ident validation failure 5 days ago
cms-backd 34404460b8 Relicense all Rust code under Apache2/MIT 2 days ago
cms-cgi 34404460b8 Relicense all Rust code under Apache2/MIT 2 days ago
cms-fsd 34404460b8 Relicense all Rust code under Apache2/MIT 2 days ago
cms-ident 34404460b8 Relicense all Rust code under Apache2/MIT 2 days ago
cms-postd 34404460b8 Relicense all Rust code under Apache2/MIT 2 days ago
cms-seccomp 34404460b8 Relicense all Rust code under Apache2/MIT 2 days ago
cms-socket 34404460b8 Relicense all Rust code under Apache2/MIT 2 days ago
cms-socket-back 34404460b8 Relicense all Rust code under Apache2/MIT 2 days ago
cms-socket-db 34404460b8 Relicense all Rust code under Apache2/MIT 2 days ago
cms-socket-post 34404460b8 Relicense all Rust code under Apache2/MIT 2 days ago
cms-systemd 34404460b8 Relicense all Rust code under Apache2/MIT 2 days ago
cmsbackpy ea714e3cae backd: Add systemd files 1 month ago
example e8bfefa257 example: Update AUTOIMG 5 days ago
submodules da4d696699 Update submodule 'multipart' 7 months ago
test c35d65ff18 install: Add support for installing debug target 3 days ago
.gitignore dacf434427 Add Cargo.lock to the repository 1 month ago
.gitmodules 9b65e4fc50 Remove usage of cgi module 2 years ago
Cargo.lock e3f15a759a back: Call site map builder 3 days ago
Cargo.toml f7bbf1d31b Add empty frame for rust based backend 1 month ago
LICENSE-APACHE 33156c0d9c Add Apache 2.0 license 2 days ago
LICENSE-MIT 7cf8f7c655 Add MIT license 2 days ago
README.md f7259ee6a2 Convert readme to md 1 month ago
TODO a4e0639a7f Remove header todo entry 4 years ago
build.sh c54f6b8239 test: Run debug by default 1 week ago
cleantree.sh dacf434427 Add Cargo.lock to the repository 1 month ago
install-users.sh 665126587b permissions: Remove www-data group permission from git user 1 month ago
install.sh c35d65ff18 install: Add support for installing debug target 3 days ago
setup.py fae0f546a1 Remove WSGI 1 month ago
setup_cython.py 8b8da85246 Fix Cython 3.x build 2 months ago

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