Skip to main content

A CLI package manager for mods

Project description

Portmod

pipeline Build status coverage PyPI Code style: black Supported Python versions Chat Checked with mypy Imports: isort pre-commit Contributor Covenant Translation status Rust Version

A cross-platform cli package manager for mods. Based on Gentoo's Portage package manager.

See the Documentation for details on Installation and Setup, and the Wiki for supported Game Engines.

Portmod is a community more than it is a single tool. As there are far more mods in existence than could possibly be packaged by the developers of portmod, we rely on community contributions from users to keep the mod package repositories accurate, up to date and relevant. See the game-specific guides on the Wiki for details regarding how to contribute.

Features

  • Automatic Downloads (where possible): If direct links are available to mod archive files, portmod will fetch them automatically. As many mods have restrictive licenses and are distributed via sites which do not provide direct links, this is not always possible.
  • Automatic patching: Mods are organized into packages which contain both the base mod and any necessary patches. Patches can be configured (in the package) to only be installed when certain other packages are installed, so that all you need to do when installing packages is choose the ones you want and all necessary patches will be included automatically.
  • Automatic Configuration: Mod packages can declare optional features (called Use Flags), which can either be independently enabled/disabled (local flags), or enabled/disabled along with other packages which share the same feature (global flags).
  • Structure Awareness: Portmod's package files contain information about the directory structure of the archives which explain precisely how the mod should be installed.
  • Automatic sorting (OpenMW): The install order and the load order of plugin and fallback archive files are sorted automatically based on rules defined in the packages. These rules can be customized with user rules.
  • Automatic updates: When mod updates are released and new package files are created in the portmod repository, you can find and update all your installed mods using a single command. Due to portmod requiring more information than upstream sources usually provide, will be a delay after the upstream mod is updated while new package files are created.
  • Dependencies: Portmod will automatically install dependencies for the mods you ask it to install.
  • Mod collections: Portmod supports both metapackages (packages containing lists of other packages which are distributed in the repository), as well as custom package sets (easy to set-up package lists that exist in the user's configuration).
  • Multiple Game Engines: Portmod just defines the package format and installation process, and has a programmable interface to allow custom game-engine-specific configuration. A list of supported Game Engines can be found on the Wiki.

Communication

Release announcements and other major news will be posted to the announcement mailing list. This list is read-only (see below for the list you can contact).

There are a number of ways to communicate with the developers and with other users:

Packaging status

Project details


Release history Release notifications | RSS feed

This version

2.8.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

portmod-2.8.0.tar.gz (416.0 kB view details)

Uploaded Source

Built Distributions

portmod-2.8.0-cp38-abi3-win_amd64.whl (3.4 MB view details)

Uploaded CPython 3.8+ Windows x86-64

portmod-2.8.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.6 MB view details)

Uploaded CPython 3.8+ manylinux: glibc 2.17+ x86-64

portmod-2.8.0-cp38-abi3-macosx_14_0_arm64.whl (6.3 MB view details)

Uploaded CPython 3.8+ macOS 14.0+ ARM64

File details

Details for the file portmod-2.8.0.tar.gz.

File metadata

  • Download URL: portmod-2.8.0.tar.gz
  • Upload date:
  • Size: 416.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.19

File hashes

Hashes for portmod-2.8.0.tar.gz
Algorithm Hash digest
SHA256 099c816b46f5e3fe1a6527b4343d82e67cdfa2f2dcb8d34fa73db7695d56e7be
MD5 806a5053799865fd74486b4f285d56fc
BLAKE2b-256 2bda7bbd436859f42309233a7ca052e3b8e1ed0adaa582022bc3623a7d267452

See more details on using hashes here.

File details

Details for the file portmod-2.8.0-cp38-abi3-win_amd64.whl.

File metadata

  • Download URL: portmod-2.8.0-cp38-abi3-win_amd64.whl
  • Upload date:
  • Size: 3.4 MB
  • Tags: CPython 3.8+, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.8.10

File hashes

Hashes for portmod-2.8.0-cp38-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 abb005d4ce4db6a200140a935e48a2e91f2347b922cf467638426efc8138025b
MD5 dd91b32eb403d45ff7aa1c7826453939
BLAKE2b-256 02bab0ce98799de603fbb8c301dd24a9cce999a330768418cad8a44fe0daaa6a

See more details on using hashes here.

File details

Details for the file portmod-2.8.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for portmod-2.8.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 58073464171335ad16fadc8eb2a9dd79f0b5f48e20f29d8f2404c1e9b85452ec
MD5 5bf57cc69e18a39d3bdedd1ec8d89c76
BLAKE2b-256 8fa0062d971fa3d86c2c40bd18247cb1910cb1fd3717638166cb40eabf15c308

See more details on using hashes here.

File details

Details for the file portmod-2.8.0-cp38-abi3-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for portmod-2.8.0-cp38-abi3-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 b92c96ad685c0a698dd4afb6988dc25ea1f4c5e547618c18a3f45ccf7a601b4a
MD5 c8737ea01ac236257907f3e5cd1a9ca8
BLAKE2b-256 1add5e60fd9b12f29566ff46d8b58b80e6f2af33504eef1c080d76236bcff701

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page