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

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.

  • Support for other game engines: Support for other engines is already feasible (portmod's implementation is fairly generic), but restricted by the lack of support for installing into a single data directory. Currently games must support per-mod data directories.
  • 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.0rc10.tar.gz (221.3 kB view details)

Uploaded Source

Built Distributions

portmod-2.0rc10-cp39-cp39-win_amd64.whl (973.1 kB view details)

Uploaded CPython 3.9 Windows x86-64

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

Uploaded CPython 3.9 manylinux: glibc 2.17+ x86-64

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

Uploaded CPython 3.9 macOS 10.15+ x86-64

portmod-2.0rc10-cp38-cp38-win_amd64.whl (985.8 kB view details)

Uploaded CPython 3.8 Windows x86-64

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

Uploaded CPython 3.8 manylinux: glibc 2.17+ x86-64

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

Uploaded CPython 3.8 macOS 10.15+ x86-64

portmod-2.0rc10-cp37-cp37m-win_amd64.whl (986.8 kB view details)

Uploaded CPython 3.7m Windows x86-64

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

Uploaded CPython 3.7m manylinux: glibc 2.17+ x86-64

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

Uploaded CPython 3.7m macOS 10.15+ x86-64

portmod-2.0rc10-cp36-cp36m-win_amd64.whl (987.1 kB view details)

Uploaded CPython 3.6m Windows x86-64

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

Uploaded CPython 3.6m manylinux: glibc 2.17+ x86-64

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

Uploaded CPython 3.6m macOS 10.15+ x86-64

File details

Details for the file portmod-2.0rc10.tar.gz.

File metadata

  • Download URL: portmod-2.0rc10.tar.gz
  • Upload date:
  • Size: 221.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.3.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.6.13

File hashes

Hashes for portmod-2.0rc10.tar.gz
Algorithm Hash digest
SHA256 74b04af6722802da9a531f43d0784f38ffe0f655e7840624e75ff2474f1f11ac
MD5 96bd86d92ddca89552ed5bb2024a7f8c
BLAKE2b-256 533890655edda7858479ed6db22e269e68a69efe59d83cc0d495dbb7ac699b66

See more details on using hashes here.

File details

Details for the file portmod-2.0rc10-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: portmod-2.0rc10-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 973.1 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.4.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.6.8

File hashes

Hashes for portmod-2.0rc10-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 fdf5e5e8e55bd5aa84a9e8e72b175fdef2e90541550174894f029722c4a9091d
MD5 ac1ef49e44e393eacd8d59bdbf09d4cc
BLAKE2b-256 7e8b9bdefd733ec9de04bbec6febca85156701ed1f3ca2ccda10b3e96601c0e3

See more details on using hashes here.

File details

Details for the file portmod-2.0rc10-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for portmod-2.0rc10-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e8ff113ca6e14bbace936067ebbe1428efaec55ce761911fd567db490c46ac9a
MD5 c41e469d4e540a99c714ca42ea2bbff7
BLAKE2b-256 e421259d99e8a6cffb25e00b0c7c68801e53dd9f8ddebec89931e2cddd0a4d2f

See more details on using hashes here.

File details

Details for the file portmod-2.0rc10-cp39-cp39-macosx_10_15_x86_64.whl.

File metadata

  • Download URL: portmod-2.0rc10-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.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for portmod-2.0rc10-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 5359448d80e59d2e96fac24dd92c56826ba40392ccc772d7fcd366907317c44c
MD5 84f9679cb6c36daa756adb3f111a7289
BLAKE2b-256 0488baad1e1d65fba1a74f23786a290750df465c29f48858f03784d0f0897b81

See more details on using hashes here.

File details

Details for the file portmod-2.0rc10-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: portmod-2.0rc10-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 985.8 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.4.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.6.8

File hashes

Hashes for portmod-2.0rc10-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 427c019bd44fb2633dd1940830c70145ffe37276ac0da903146f848a8d0c40b5
MD5 9be126c5a9dd4ab7872d6856cb941028
BLAKE2b-256 a5b55363c9344194076e4130b8dd8293222b43e3380fdb71b36918db1f8f90d4

See more details on using hashes here.

File details

Details for the file portmod-2.0rc10-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for portmod-2.0rc10-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 da148f8812c0d1bb0b4362a4640c521bdbd01aab60009bcb906f8647e134d73f
MD5 eaa4604380bb110d400344bb29a7d81c
BLAKE2b-256 d34f8d0a5a9980217e05caed9d3c5c581debb76b4ebb0a6b458367709cbbc433

See more details on using hashes here.

File details

Details for the file portmod-2.0rc10-cp38-cp38-macosx_10_15_x86_64.whl.

File metadata

  • Download URL: portmod-2.0rc10-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.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for portmod-2.0rc10-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 8676bb2a6345cf04e0469c3fd2e89d99548e6eed44858e56669f0752782bde71
MD5 def25f01edf4d41ab10b5100d1560b88
BLAKE2b-256 7692c8dba541957afaacea7481d32c0eeb03c8663d91a07f923c9b9b7e03cc8b

See more details on using hashes here.

File details

Details for the file portmod-2.0rc10-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: portmod-2.0rc10-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 986.8 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.4.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.6.8

File hashes

Hashes for portmod-2.0rc10-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 b701b37c1ac4e5157540ee0190c404a459fd767803d107e0947b5b23c36bb9a0
MD5 0d0f773a4cb54a381d090bc3c401e41d
BLAKE2b-256 23c3b5c80bc2426f398a2010415743ba2a9784346147b71b6f6d1b2c3b686397

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for portmod-2.0rc10-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 863135417ded2a9bbd2c20cce385afb43283f0db0a47618f3e9d02ade1e75124
MD5 e383cd66747b5265714da44c8c7ec0d1
BLAKE2b-256 3f5a69ec78e587d283f878e72f19c8aec6bf57bbb2fb0265bac6a439db50a4b2

See more details on using hashes here.

File details

Details for the file portmod-2.0rc10-cp37-cp37m-macosx_10_15_x86_64.whl.

File metadata

  • Download URL: portmod-2.0rc10-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.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for portmod-2.0rc10-cp37-cp37m-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 ad1273ab8188750f3224c24d03020be041d2e67231a35c85faf86fc0badb65e0
MD5 7905819f7cd37df9bc8ac5d8ed9cba7c
BLAKE2b-256 07405165f4a7e68b63c9879b8e0e5b7f45abc5bb9d53ec549572f0bc9e800951

See more details on using hashes here.

File details

Details for the file portmod-2.0rc10-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: portmod-2.0rc10-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 987.1 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.4.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.6.8

File hashes

Hashes for portmod-2.0rc10-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 85a5f611c7d0ee42d80a203668dc5ac310a94e5ddb5059ff537d4b05a28d3020
MD5 222780c6abf0bb8c9d43adc71fa9350f
BLAKE2b-256 5fafb94b631894cd2192b562f6a7e5990bb7f094e0d4e76bba7bce523fb761b3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for portmod-2.0rc10-cp36-cp36m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 341fe941582461090f7c34f29a97fa187a4a2441ec9bd49cc2b16b8085ce1091
MD5 e82316686b41e21fb7a3600b762ec855
BLAKE2b-256 28a384e2b68d5dd8852d2cdc6eaad13dff7c3e018a85d6c2d79701624dd1384d

See more details on using hashes here.

File details

Details for the file portmod-2.0rc10-cp36-cp36m-macosx_10_15_x86_64.whl.

File metadata

  • Download URL: portmod-2.0rc10-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.0.0 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for portmod-2.0rc10-cp36-cp36m-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 51c5a6a7948862223920ca2975b9d8cec67efb6d148bc06a78fb21db1e36a1eb
MD5 2dbabea8f7ea740de1c819a356b5bd08
BLAKE2b-256 1acc9d12a8008fdd53d56a51470d0e51c7bb85b2a0db3fab0e020c80c2fb9c09

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