All the code required to generate the website of the 2024 edition of Pass the SALT conference.
apt install hugo
or visit https://gohugo.io/installation/linux/ and take the Extended edition.
Clone this Github repo: git clone https://github.com/pass-the-salt/2024.git
Some indications about the different directories and files:
config.toml: contains global parameters of the site (title, logo, lang, top and bottom menu content).data/en/homepage.yml: Yaml parameters to inject into homepage through Vex theme templates.themes/vex-hugo/layouts/: several directories containing all HTML templates of the Vex theme.themes/vex-hugo/layouts/index.html: structure of the homepage which calls HTML snippets located inpartialdirectory. If you want to add a section in the homepage, just add a call to a HTML snippet file and create the HTML file in thepartialdirectory.content/: Markdown content of individual pages.static/: images and files.public/: HTML pages generated by theHugoengine.
- run
hugo serverfrom the root of the repository to run the site locally in memory. Do it until you are satisfied by the result. - then, run
hugofrom the root of the repository to produce the static site pages inpublic/. - finally, commit and push changes to the Github repo:
git add * && git commit -m "your commit message" && git push origin main - hooking: each push on the Github repo will activate a webhook (URL:
https://2024.pass-the-salt.org/cgi-bin/update.cgi). The hook content is in thecgi-bin/update.cgifile. The script launched by the hook will check if updates exist on Github repo. If it is the case, it fetchs them to/var/www/2024directory on the server and then, rsync the content of thepublic/sub directory with the content of the website located in/var/www/2024-passthesalt.