Dithering Tutorial:
LINK TO DITHERIT.COM
Write a Page in Markdown:
1. On your laptop, open up TextEdit (MacOS) users or Notepad

2. Write out a file in Markdown

(This is a lightweight web programming language that is used a lot in blogging. Pelican uses Python to parse out our Markdown page, convert it to HTML and incorporate whatever theme we chose.)

Here is the template for a Markdown page that will represent each entry in our archive, represented as a 'page' on the website.

Title: Your title
Date: 2026-09-12
Modified: 2026-09-12
Category: Python
Tags: pelican, solarsite, whatever tag you like,
Slug: my-entry-post
Authors: Your name here!
Summary: A summary of your entry

This is where you can write out content & add images.

You can also add any HTML to this section if you are more comfortable with that, but avoid using style & CSS as it could very well conflict with the style guidelines of the Pelican theme.

Add an image/gif to your entry with:
![alt text](images/image.jpg)

*

When you are ready, save your file as 'file_name.md'

*

Add any .md files and images to your pelican site by making an images + pages + articles folder in /content

Whatever we want to populate our web archive will be uploaded to ARTICLES!









To upload your dithered images and .md files, 1) add "/edit" to the website URL

2) Type in USERNAME: solarsite
and PASSWORD: solar12

3) You can drag and drop images & files into the site. Small file sizes please! :)

LINK TO MARKDOWN CHEAT SHEET
LINK TO W3SCHOOLS (HTML BASICS)
rtf
Now, switch the pelican site over to your apache2 webserver ->

17. In a terminal window outside of the virtual environment type in:

sudo nano /etc/apache2/sites-available/websitename.conf

Add the text:


ServerName 192.168.1.113
DocumentRoot /var/www/html/output
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined



18. cd /var/www/html/ -> sudo rm index.html -> cd /home

19. sudo cp -r /home/solarsite/curating/output/ /var/www/html/

20. sudo a2ensite website.conf

21. sudo a2dissite 000-default.conf

22. sudo chown -R www-data:www-data /home/user/website/output
sudo chmod -R 755 /home/user/website/output

23. sudo a2enmod rewrite

24. sudo a2enmod headers

25. sudo systemctl restart apache2










It is difficult to provide detailed instructions on port forwarding, as each router has different settings. Also, each Internet provider has different rules about port forwarding. I've had great experiences with start... Bell is the worst!

1. Log into your router at home by finding your router’s IP address. You will need the password to your router that you set when you installed your Internet.

2. In your router settings (and these are different depending on the router). There should be a setting section called WAN (Wide Area Network). In this section, you will find a subsection for Port Forwarding or sometimes called Virtual Server.

3. You will add a couple of lines to your Port Forward list:
Port Range: 443 -> your raspi’s IP address -> Local Port: 443 -> Protocol: BOTH
Port Range: 80 -> your raspi’s IP address -> Local Port: 80 -> Protocol: TCP

Then, you would purchase a domain name from a third party. And set the domain name to be associated with your raspberry pi’s IP address. Done!

4. If you aren’t precious about having a specific domain name, there are workarounds...










RESOURCES for making your solar archive
-> Kris De Decker, Marie Otsuka and Roel Roscam Abbing, “How to Build a Low Tech Magazine,” Low Tech Magazine,
https://solar.lowtechmagazine.com/2018/09/how-to-build-a-low-tech-website/

-> Anne Pasek and Benedetta Piantella “Solar-Powered Media,” Low Carbon Methods,
https://lowcarbonmethods.com/local/print-ready-zine.pdf

Slow Internet projects/websites:

->Slow Internet collective:
https://howtoslowinternet.com/

-> Permacomputing wiki:
https://permacomputing.net/

-> Solar Protocol Network:
https://solarprotocol.net/

-> Sun Shines Bright project (solar-powered Small Language Models):
https://solararchive.cmama.xyz/

Resources + Guides to Sustainable Web Work

->Measure the carbon footprint of your website:
https://www.websitecarbon.com/

-> Sustainable Web Design Guidelines:
https://sustainablewebdesign.org/guidelines/

Email me to ask Qs & stay in touch: solararchive@proton.me

Guide to Dithering + Web Hosting + Markdown







Instructions for Apache2 + Pelican


1. Enable SSH Access: Interfaces -> Control Centre -> Toggle SSH on

2. Make sure our packages are updated type in: sudo apt-get update

3. Let’s install Apache2. Apache2 is a free and open source HTTP web server. We use this platform to host our own web server from our raspberry pi. sudo apt-get install apache2 -y

4. Let’s also download this PHP general purpose scripting language for web development sudo apt-get install php libapache2-mod-php -y

5. MariaDB is an open source system software, it is a relational database management system that will help us with file storage on our raspberry pi web server. Let’s install MariaDB: sudo apt-get install mariadb-server

6. Next, restart apache2 so all changes are running: sudo service apache2 restart

7. Now we can test our server... hostname -I

This will find the IP address of our raspberry pi In a browser window, type in the IP address of your pi



Ok, we did it! Now on the installing Pelican Static Site Builder

Building our VIRTUAL ENVIRONMENT...

The VENV will isolate a Python environment for us. Pelican requires a number of different PACKAGES for Python3.8, and so by using Pelican in a virtual environment, it will help ensure that your packages don't conflict with one another.

It is also neater imo and helps you keep your site folders organized :)

8. Just before the virtual env. let's make a directory for our website...

mkdir /home/user/name_of_website/

cd /home/user/name_of_website/

Now we are in our directory

9. Now virtual environment time:

python3 -m venv venv

10. source venv/bin/activate

Note: to deactivate your virtual environment simply run command deactivate

Let's install Pelican in the magical virtual environment

11. Install Pelican in the VENV:

pip install pelican markdown

12. Pelican is installed, so let’s make our site!

pelican-quickstart

13. Now pelican will ask you some Qs...

-where do you want to install your site? a: /home/user/name_of_website

-title of our site? a: name_of_website

-authour? a: YOU!

-language? a: en (or other)

-URL prefix? a: no for now!

-article pagination? a: yes plz!

-articles per page? a: sure, whatever

-Timezone? a: America/Toronto

-tasks.py/makefile to automate generation? a: y

-do you want FTP? a: No thanks :)

-do you want to upload your site via SSH? a: yes plz

this will prompt some Qs about SSH, please ENTER for all of these.

DONE! :)

14. Go and take a look at themes -> https://github.com/getpelican/pelican-themes

15. Download the repository and then delete the themes we aren't going to use

git clone --recursive https://github.com/getpelican/pelican-themes ~/curating/pelican-themes

16. Assign one of the themes we've downloaded in our Pelican settings file pelicanconf.py

Add the line...

THEME = "/home/user/pelican-themes/theme_name"