Sasha Sorokin f41235b04c
Fix ignore file inconsistencies (#88)
* Fix ignore file inconsistencies

.packwizignore is supposed to work like .gitignore, yet it fails
miserably at doing so, being able to ignore only global patterns like
*.zip, and failing at patterns like /*.zip.

This commit introduces two changes to fix the issue:

- First, it uses a more up-to-date library. denormal/go-gitignore has
  not been updated since 2018 and has long open issues and pull
  requests, one of which tries to address leading slash ignoring, a-la
  /*.zip. denormal account seems to be abandoned since around the same
  year, so it makes sense to find a new library that does roughly the
  same thing.

  Gladly so, there's actually a library by sabhiram that shares the same
  name (but not the package name itself - which is just ignore - so it
  probably requires aliasing when importing).

- Secondly, it checks relative paths against ignore file instead of the
  absolute ones, which makes it possible to use leading slash (and
  probably some other features) with the new library.

From personal tests, it seems to address most - if not all - of the
inconsistencies. However, since it's a different library more throughout
testing probably wouldn't hurt to make sure it didn't break anything.

* Move dependency to main block
2022-01-23 21:05:34 +00:00
2021-12-28 16:28:34 +00:00
2021-12-28 22:32:18 +00:00
2021-12-28 16:28:34 +00:00
2022-01-23 21:05:34 +00:00
2022-01-23 21:05:34 +00:00
2019-02-18 13:23:09 +00:00
2021-12-28 16:28:34 +00:00
2021-12-28 23:20:41 +00:00

packwiz

packwiz is a command line tool for creating Minecraft modpacks. Instead of managing JAR files directly, packwiz creates TOML metadata files which can be easily version-controlled and shared with git (see an example pack here). You can then export it to a CurseForge or Modrinth modpack, or use packwiz-installer for an auto-updating MultiMC instance.

packwiz is great for...

  • Distributing private modpacks for servers
  • Creating modpacks for CurseForge and Modrinth

packwiz is not so great for...

Join my Discord server if you need help here!

Features

  • Git-friendly TOML-based metadata format
  • MultiMC pack installer/updater, with support for optional mods and fast automatic updates - perfect for servers!
  • Pack distribution with HTTP servers, with a built in local server for testing
  • Easy installation and updating of multiple mods at once from CurseForge and Modrinth
  • Exporting to CurseForge and Modrinth packs
  • Importing from CurseForge packs
  • Server-only and Client-only mod handling
  • Creation of remote file metadata from JAR files for CurseForge mods

Installation

Prebuilt binaries are available from GitHub Actions - the UI is a bit terrible, but essentially select the top build, then download the artifact ZIP for your system at the bottom of the page. To run the executable, add the folder where you downloaded it to your PATH environment variable (see tutorial for Windows here) or move it to where you want to use it.

In future I will have a lot more installation options, but you can also compile from source:

  1. Install Go (1.17 or newer) from https://golang.org/dl/
  2. Run go install github.com/packwiz/packwiz@latest. Be patient, it has to download and compile dependencies as well!

Documentation

See https://packwiz.infra.link/ for the full packwiz documentation!

Description
A command line tool for editing and distributing Minecraft modpacks, using a git-friendly TOML format. Supports CurseForge and Modrinth mods with automated updates! packwiz.infra.link/
Readme MIT 7.6 MiB
Languages
Go 98.1%
Nix 1.3%
HTML 0.6%