.forgejo | ||
build/prism | ||
config | ||
kubejs | ||
mods | ||
scripts | ||
.editorconfig | ||
.envrc | ||
.gitattributes | ||
.gitignore | ||
.nvim.lua | ||
.packwizignore | ||
.pre-commit-config.yaml | ||
.prettierrc | ||
CHANGELOG.md | ||
CONTRIBUTING.md | ||
flake.lock | ||
flake.nix | ||
index.pw.toml | ||
LICENSE.md | ||
pack.toml | ||
PERMISSIONS.md | ||
pyproject.toml | ||
README.md | ||
renovate.json | ||
unsup.ini | ||
unsup.toml | ||
uv.lock |
GalacticFactory
GalacticFactory is a progression-centric modpack for Minecraft 1.21.1.
Installing
You can get release versions of the modpack from our Releases page.
Alternatively, if you want to help test the modpack, you can install from the trunk branch instead by downloading from our Actions page.
Developing
You'll need some prerequisites before you can make changes to the GalacticFactory modpack.
git - uv - packwiz
Additionally, I recommend a code editor of some variety. Visual Studio Code is a good, beginner-friendly option.
Installing Prerequisites
This section of the guide only applies to Windows systems. If you're on Linux, refer to the documentation of the projects listed above. We also offer a Nix Flake that contains all of the required prerequisites, if you're a Nix user.
git
You can download git from the git download page.
Alternatively, you can use winget
:
winget install --id=Git.Git -e --source=winget
uv
You can install uv with the following Powershell command:
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
Alternatively, you can use winget
:
winget install --id=astral-sh.uv -e
packwiz
You can download packwiz from nightly.link. Then, just extract the zip file, and put the packwiz.exe
executable in your PATH.
Getting the Source Code
Once you have git
installed, you can use the git clone
command to get a copy of the repository on your system.
git clone https://c.csw.im/GalacticFactory/GalacticFactory.git
Then, you can use uv
to install the Python dependencies required for development.
uv sync --frozen
Finally, we use some git hooks to ensure that some stylistic conventions are met. I'm not going to thoroughly explain the hooks we use here, but a git hook is basically a script that is run automatically by git
when you do a certain action, like committing changes. You can view all of the hooks we use in the .pre-commit-config.yaml
file. This is optional, so if you don't trust the hooks we use, you can skip this step! Just make sure to run packwiz refresh
manually before committing changes, to ensure you don't push an index file with incorrect hashes. Otherwise, you can install the git hooks with the following command:
uvx pre-commit install