Move permissions lines.
Fix virtualenv permissions.
Replace py-bcrypt with bcrypt.

Almost a drop-in replacement, only needed some str - byte conversions.

The former has not seen a release since 2013, the latter is active with
a last release on Aug. 16th 2020.

Signed-off-by: Ben Sturmfels <ben@sturm.com.au>
Add instructions to set permissions on installation directories.
Fix docs RST formatting.
Note the need to wrap PDF-related binaries for Guix.
Fix typos.

Signed-off-by: Ben Sturmfels <ben@sturm.com.au>
Add cc0 license to guix package.

`license:` as a prefix is a common convention for imported license
names in guix upstream code.

licenses in guix are modeled as variables that point to the
instantiation of a particular license record.

See (guix licenses) module for more info.

Signed-off-by: Ben Sturmfels <ben@sturm.com.au>
Fix some unused imports and local variables.
Update deploying docs to require Python 3.6+.
Add Ubuntu 20.04 CI build, reinstate Debian 10 build.
Upgrade jinja2 to fix issue installing old markupsafe on Ubuntu 18.04.

This also aligns with our requirement of Python 3.6 or greater due to recent
jinja2 versions requiring f-strings.
Fix old references to Debian 10 in deployment docs.
Apply pyupgrade --py36-plus.

This removes some 'u' prefixes and converts simple format() calls to f-strings.
Mention building docs in contributing.
Add a stub "contributing" page to documentation.
Don't ignore .patch files.

I like to be able to see these in Magit.
Actually add the page. :)