12 releases (5 stable)

1.3.2 Jan 17, 2025
1.3.1 May 4, 2024
1.2.0 Apr 8, 2024
1.1.0 Dec 25, 2023
0.1.12 Jan 27, 2023

#96 in Compression

Download history 6/week @ 2024-12-08 95/week @ 2025-01-12 32/week @ 2025-01-19 5/week @ 2025-02-02

132 downloads per month

MIT license

13KB
211 lines

Rust Factorio Mod Packer

Idea behind this project was to create a compiled and fast replacement to my shell script that packed factorio mods (very useful in my Factorio mod development pipeline). This program packs all files in current direcory (excluding unix-style hidden directories to ignore git stuff) into a properly-formatted mod and puts it into mods folder ($HOME/.factorio/mods on Linux or %AppData%\Factorio\mods on Windows). Works on Linux and Windows, builds are included on Releases page. MacOS support isn't planned.

All versions are available on GitHub releases page.

Mod File Structure Example

<mod_name> and <mod_version> are "name" and "version" values from mod's info.json file.

  • <mod_name>_<mod_version>.zip
    • <mod_name>_<mod_version>
      • info.json
      • data.lua
      • control.lua
      • etc

Speed

This program manages to outperform (i.e. do the job faster) my 7zip-based build script on my machine (Ryzen 5 3600). This is achieved by using library mtzip (also made by me). It splits the file compression jobs into tasks that can be run concurrently.

Rayon support

rayon is supported as an alternative to mtzip's thread management. It can be enabled with rayon feature, replaces the default behavior. From my personal testing, it results in a lightly lower performance in extreme situations, but nothing that can be noticed without timing the execution time.

Dependencies

~2–14MB
~112K SLoC

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy