General Notes
Basic Tools
We assume a couple of tools already exists on your system:
git
make
imagemagick
(for making thefavicon.ico
)cwebp
(for making thecover.webp
)python
uv
(for managingPython
projects)cfv
(for making checksum files)
You can use chocolatey, scoop and pipx
to
install and manage these applications:
choco install git imagemagick make
scoop install libwebp python pipx uv
pipx install cfv
Cloning the project
This project is meant to be used as a placeholder for the actual Wabbajack compilation, though most of the files that go into the compilation are ignored, and not store in the git repository. Only these files are stored:
- the documentation files (mostly in the
docs/
folder) - the meta files for the downloads (in the
mo2/downloads
folder) - the MO2 profiles (in the
mo2/profiles
folder) - some MO2 text config files
- the compile settings (in the
Gio's Skyrim.compiler_settings
file)
If you want to reuse the project, clone it and follow the steps in this docs for populating the MO2 and your compilation:
git clone https://github.com/gio-gianny/gio_skyrim_stock_game GioSkyrim
Makefile jobs
A couple of helper make
jobs are defined in the top Makefile
.
VSCode
If you are using VSCode, some of the make
helper hobs can be run via the Task Runner.
Project images
cover.webp
Wabbajack compilations require the image in .webp
format, but our cover image source is
in .png
format. We use cwebp
to convert from .png
to .webp
.
You can regenerate or changed the cover by overwriting the docs/images/cover.png
image
with another .png
image and then running make cover
:
make cover
Under the hood
Running make cover
is equivalent to running:
cwebp -q 80 docs/images/cover.png -o docs/images/cover.webp
favicon.ico
The docs site favicon.ico
is located in docs/images/favicon.ico
and is generated with
imagemagick
from the docs/images/favicon.svg
.
You can regenerate or changed the cover by overwriting the docs/images/favicon.svg
image
with another .svg
image and the running make favicon
:
make favicon
Under the hood
Running make cover
is equivalent to running:
magick \
-density 300 \
-define icon:auto-resize=256,128,96,64,48,32,16 \
-background transparent \
docs/images/favicon.svg docs/images/favicon.ico
Viewing the docs locally
Documentation is created with mkdocs and mkdocs-material.
You can view the documentation locally, on http://127.0.0.1:8000 by installing the required packages
and then run mkdocs serve
:
uv sync
make docs_serve
Tree snapshots
The mo2_tree_snapshot
job uses cfv
to generate a checksum file with all the files
under the mo2
folder. These files can be used to check if and what changes when running
some tool or application.
make mo2_tree_snapshot
Using tree snapshots to find changes
- create a snapshot before running an application, copying files or extracting an archive
- make your changes
- when done, create a new snapshot
- select both snapshots in VSCode and compare them
VSCode
In VSCode, click make mo2_tree_snapshot
in Task Runner to make a new tree
snapshot.