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

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

Currently the only supported game is OpenMW, via the openmw-mods repository.

See the Wiki for details on Installation and Setup.

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: 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.

Installation, Setup and Usage

See the Guide on the wiki.

Future Plans

This list is updated infrequently. See the Issues for up-to-date information.

  • Mod packaging and submission: Support for build files being distributed with mods and automatically submitted to a repository using a cli tool.

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

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.0.2.tar.gz (226.9 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

portmod-2.0.2-cp39-cp39-win_amd64.whl (988.7 kB view details)

Uploaded CPython 3.9Windows x86-64

portmod-2.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

portmod-2.0.2-cp39-cp39-macosx_10_15_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.9macOS 10.15+ x86-64

portmod-2.0.2-cp38-cp38-win_amd64.whl (988.1 kB view details)

Uploaded CPython 3.8Windows x86-64

portmod-2.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

portmod-2.0.2-cp38-cp38-macosx_10_15_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.8macOS 10.15+ x86-64

portmod-2.0.2-cp37-cp37m-win_amd64.whl (984.4 kB view details)

Uploaded CPython 3.7mWindows x86-64

portmod-2.0.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.17+ x86-64

portmod-2.0.2-cp37-cp37m-macosx_10_15_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.7mmacOS 10.15+ x86-64

portmod-2.0.2-cp36-cp36m-win_amd64.whl (984.4 kB view details)

Uploaded CPython 3.6mWindows x86-64

portmod-2.0.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.17+ x86-64

portmod-2.0.2-cp36-cp36m-macosx_10_15_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.6mmacOS 10.15+ x86-64

File details

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

File metadata

  • Download URL: portmod-2.0.2.tar.gz
  • Upload date:
  • Size: 226.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.6.14

File hashes

Hashes for portmod-2.0.2.tar.gz
Algorithm Hash digest
SHA256 97a47e68ea7ebb8117729295699d65cec014d6bc5c3f4d13d045ca4db23f18ef
MD5 0f5d4bdf6a2952f5c4bd4a937784d8c7
BLAKE2b-256 776a6c2f2f04e83dac4db7099182d2332bb5dad0d54fa5cd026cb9089239093e

See more details on using hashes here.

File details

Details for the file portmod-2.0.2-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: portmod-2.0.2-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 988.7 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.6.8

File hashes

Hashes for portmod-2.0.2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 5e0bb589c83374c939ff2cf99b41ebdf8dbfc06f934edc45567090ca727d08d7
MD5 084c9b9bb1cb68978c9f84ef2d2e84c5
BLAKE2b-256 4415a5dc37a6694ceab1e496687b47e54cb161c607b03e84246a6f633b2f14c1

See more details on using hashes here.

File details

Details for the file portmod-2.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for portmod-2.0.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e66156882f44dfef6ee1bf89a346baef1b10abc4625d9ed886519bab38c310bd
MD5 39c6f19fd45c3070a23919a1371dd53c
BLAKE2b-256 9b17e4ba255113fd5ce6ebaf15c79299fda86a2892c029d134922ee828be7019

See more details on using hashes here.

File details

Details for the file portmod-2.0.2-cp39-cp39-macosx_10_15_x86_64.whl.

File metadata

  • Download URL: portmod-2.0.2-cp39-cp39-macosx_10_15_x86_64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.9, macOS 10.15+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/57.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for portmod-2.0.2-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 3e719b3bc70627d55f3dfd6d01606cef1611afd831f893065709a7eddaf96478
MD5 e202d1c0da03a07d9814af1148aa6a4b
BLAKE2b-256 83d96c808ce280c34a2655f5eccb083c597542d376366fe387a0166040b07e6c

See more details on using hashes here.

File details

Details for the file portmod-2.0.2-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: portmod-2.0.2-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 988.1 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.6.8

File hashes

Hashes for portmod-2.0.2-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 073288ee111a667593c107b85a6ea257ee057ed5c57563e10238d3dc561a89cf
MD5 3e18e24eab49a76afe0a7cdce73bd23d
BLAKE2b-256 4f5fb09ffb8e4ef59fa914b76697275aae79084c9edbe4daef4837eaa78f5e1a

See more details on using hashes here.

File details

Details for the file portmod-2.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for portmod-2.0.2-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2ecc06816f516ec20e2cedfbb4ffcd2699b0ad465653e437ba12c1b7a839a173
MD5 03a57931b1fa495afb4fc7d26131c3bf
BLAKE2b-256 1e2bbf7ca21a754c5c65fc323c04169cf6ef78232fcce30e4920331638ada425

See more details on using hashes here.

File details

Details for the file portmod-2.0.2-cp38-cp38-macosx_10_15_x86_64.whl.

File metadata

  • Download URL: portmod-2.0.2-cp38-cp38-macosx_10_15_x86_64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.8, macOS 10.15+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/57.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for portmod-2.0.2-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 fcb83e9c2fa1842af8717ad4238360c963a67159e5626f37888bbf157c9d7e53
MD5 9cfdc02440fda2989414bacccd1ff6ac
BLAKE2b-256 6ee78758ce8c59294ec9ed85aff64bac381e88fdd86760532cc0c74f5fe546b3

See more details on using hashes here.

File details

Details for the file portmod-2.0.2-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: portmod-2.0.2-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 984.4 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.6.8

File hashes

Hashes for portmod-2.0.2-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 a631718e27f5e53764bc1298439633597481fdcd434cd5980b75d75c04abd435
MD5 251ceeeafe96a089673b6127f4a280fb
BLAKE2b-256 b68cbaac2a985b0c638ca80aab79ba13965b39886c0599a97c44c4156ebe0246

See more details on using hashes here.

File details

Details for the file portmod-2.0.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for portmod-2.0.2-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 73efaea9a364a6e600a4092776e163ed102b9e99f103601abdddad2b66404a6a
MD5 ed661f8119374c2353a069762a054912
BLAKE2b-256 1be2aaa9a046bbd88a3cb01f756593280c9abf31baa2fb1711a6846446cb215b

See more details on using hashes here.

File details

Details for the file portmod-2.0.2-cp37-cp37m-macosx_10_15_x86_64.whl.

File metadata

  • Download URL: portmod-2.0.2-cp37-cp37m-macosx_10_15_x86_64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.7m, macOS 10.15+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/57.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for portmod-2.0.2-cp37-cp37m-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 045f670bf9f9531777a6da696817a579858756e603a8c577e4cf1d80112c2c28
MD5 1795198c5e96592c647f1efe7934209b
BLAKE2b-256 60bee9fbf931baec1f75ec75fe8ca8627b8f1253a9ba0a00610a12645a7571ce

See more details on using hashes here.

File details

Details for the file portmod-2.0.2-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: portmod-2.0.2-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 984.4 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.6.8

File hashes

Hashes for portmod-2.0.2-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 68bd804ee4b0fd99a9a708ccd8238b35ffb4d01cd7cc9908a4ddbb08902bfeab
MD5 8a6f475068fbedd2563707bc2cb77611
BLAKE2b-256 70c82982fbc000077624727990efc639c3259a4b36637b05ab6d75416bf74216

See more details on using hashes here.

File details

Details for the file portmod-2.0.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for portmod-2.0.2-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 0d8875c8d25209f76f5232bd5f356134f23a9fd974747caf541add28134afd58
MD5 ebe762d1cbd2ebbc39ac23c2b38cd619
BLAKE2b-256 cbdce7de54caae78085d7a00b062cb8e6f3c38e6e0974706a4ad917b4fd71043

See more details on using hashes here.

File details

Details for the file portmod-2.0.2-cp36-cp36m-macosx_10_15_x86_64.whl.

File metadata

  • Download URL: portmod-2.0.2-cp36-cp36m-macosx_10_15_x86_64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.6m, macOS 10.15+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/57.1.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for portmod-2.0.2-cp36-cp36m-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 5f49eae78a91191d4e78291423d6bd6bc42c7b01519007d349dca63609d756fa
MD5 895bcdb00792e0adfb0cf2839523dc65
BLAKE2b-256 5e1c03319614a93fa2f33b43f9084d1244e2842f3f99ab6a4dbe1465caf6e8ed

See more details on using hashes here.

Supported by

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