# Simple Rust and Python based CMS Copyright (c) 2011-2024 Michael Buesch ## Building Run the `build.sh` script to build the CMS system. The build requires the `cargo-audit` and `cargo-auditable` Rust crates installed: ```sh cargo install cargo-audit cargo-auditable ``` The Python part requires the `Cython` compiler installed: ```sh apt install cython3 python3 build-essential ``` After installing all build dependencies, run the build script: ```sh ./build.sh ``` ## Installing After building, run the `install-users.sh` script to create the user/group structure for CMS in the operating system: ```sh ./install-users.sh ``` After that, run the `install.sh` script. It will install the CMS system into `/opt/cms/`. ```sh ./install.sh ``` Then create the database inside of `/opt/cms/etc/cms/db/`. You may start with the example db: ```sh 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 AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch -Indexes Require all granted # Redirect all 404 to the CMS 404 handler (optional) ErrorDocument 404 /cms/__nopage/__nogroup.html ```