While getting started with OpenLayers, I get the error: "Received request for map layer 's2o' which failed to load"

I am following the guide here: Getting started with OpenLayers – Switch2OSM

This is my /etc/renderd.conf and every directory looks fine:

[renderd]
stats_file=/run/renderd/renderd/stats
socketname=/run/renderd/renderd.sock
num_threads=4
tile_dir=/var/cache/renderd/tiles

[mapnik]
plugins_dir=/usr/lib/mapnik/3.1/input
font_dir=/usr/share/fonts/truetype
font_dir_recurse=true

; ADD YOUR LAYERS:
[s2o]
URI=/hot/
XML=/home/vboxuser/src/openstreetmap-carto/mapnik.xml
HOST=localhost
TILESIZE=256
MAXZOOM=20

I have no idea what the issue is. I made all of the databases using the postgres user and they were all created successfully, plus all of the extensions I created were also created successfully.

In the logs somewhere above “Received request for map layer ‘s2o’ which failed to load” will be the actual error that occurred. Try restarting “renderd” in order to cause that original error to occur again. It’s not an OpenLayers issue - you’ll get the same problem at https://youripaddress/hot/0/0/0.png.

I found out what the issue is:
Dec 02 13:38:07 OSM renderd[584]: ** (process:584): ERROR **: 13:38:07.637: An error occurred while loading the map layer 's2o': boost::filesystem::status: Permission denied: "/home/vboxuser/src/openstreetmap-carto/mapnik.xml"

I tried chmodding the src directory with 755 but that didn’t work.

Quoting from one of the guides:

Next, we need to make sure that the “_renderd” user can access the stylesheet. In order to do this it needs access to wherever you downloaded it, and by default it won’t have access to your home directory. If it’s in “src” below your user account then

chmod o+rx ~

will work. If you don’t want to do this you can move it and amend references to the file locations in subsequent commands.