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

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.0rc1.tar.gz (194.3 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.0rc1-cp39-cp39-win_amd64.whl (964.5 kB view details)

Uploaded CPython 3.9Windows x86-64

portmod-2.0rc1-cp39-cp39-manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.9

portmod-2.0rc1-cp39-cp39-macosx_10_15_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.9macOS 10.15+ x86-64

portmod-2.0rc1-cp38-cp38-win_amd64.whl (964.5 kB view details)

Uploaded CPython 3.8Windows x86-64

portmod-2.0rc1-cp38-cp38-manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.8

portmod-2.0rc1-cp38-cp38-macosx_10_15_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.8macOS 10.15+ x86-64

portmod-2.0rc1-cp37-cp37m-win_amd64.whl (964.4 kB view details)

Uploaded CPython 3.7mWindows x86-64

portmod-2.0rc1-cp37-cp37m-manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.7m

portmod-2.0rc1-cp37-cp37m-macosx_10_15_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.7mmacOS 10.15+ x86-64

portmod-2.0rc1-cp36-cp36m-win_amd64.whl (965.1 kB view details)

Uploaded CPython 3.6mWindows x86-64

portmod-2.0rc1-cp36-cp36m-manylinux2014_x86_64.whl (1.1 MB view details)

Uploaded CPython 3.6m

portmod-2.0rc1-cp36-cp36m-macosx_10_15_x86_64.whl (1.0 MB view details)

Uploaded CPython 3.6mmacOS 10.15+ x86-64

File details

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

File metadata

  • Download URL: portmod-2.0rc1.tar.gz
  • Upload date:
  • Size: 194.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.6.12

File hashes

Hashes for portmod-2.0rc1.tar.gz
Algorithm Hash digest
SHA256 6c15e94dce666a86a16d3c03bdcb9fcda1834f76bfef6ed556e21e77b11d8af9
MD5 74af690d4628d2081862ce1bbf95cd1c
BLAKE2b-256 464c6eaf2b9196bca375aead4a572cdd88fc803851b0f101d08f3d1c0d4535dd

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc1-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 964.5 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.6.8

File hashes

Hashes for portmod-2.0rc1-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 d62f3557efd0c6f718a5584d0533bb4293020e70a7688f7b4d03bb6a3d58c696
MD5 248b4b4f2115e7c1e6916d4b4bc9f2bd
BLAKE2b-256 3a2b8123659a75b9aaf14b429952bc6dc61c93756616b3a46c881be7356905dd

See more details on using hashes here.

File details

Details for the file portmod-2.0rc1-cp39-cp39-manylinux2014_x86_64.whl.

File metadata

  • Download URL: portmod-2.0rc1-cp39-cp39-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.9
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.6.12

File hashes

Hashes for portmod-2.0rc1-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 92322e16e5c5a7fe5da17e535852e4e74edba895456e7d34b4c9b1bb19a33253
MD5 3516812de3be41f61491bc3fea14184c
BLAKE2b-256 852c097dc1b9f08610959791f9e2126c2b428fbb5ba0729c663534c38599b3e8

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc1-cp39-cp39-macosx_10_15_x86_64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.9, macOS 10.15+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.3

File hashes

Hashes for portmod-2.0rc1-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 391d2c5ce493f2ff9fd31196a1ab3ea5242dcc480f67bec33a4db48a25db36cd
MD5 ebad3c54ca7d53b97bd1403e8bba9e9a
BLAKE2b-256 0d0e94cb2e3801f6544daa4a45fb6aa8ced9e25d1d5b31f2acb3bd5c90f537e3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc1-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 964.5 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.6.8

File hashes

Hashes for portmod-2.0rc1-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 4a264d32b3ba701687a03076f393a55f3949679a24c05918acd3c93b4b132ae3
MD5 6e2c05c000eb3874cd32f70c816d391f
BLAKE2b-256 b3e5d61b902c173765912890bab7ecfe200b524ec61ad0423ba0964a2ad027e9

See more details on using hashes here.

File details

Details for the file portmod-2.0rc1-cp38-cp38-manylinux2014_x86_64.whl.

File metadata

  • Download URL: portmod-2.0rc1-cp38-cp38-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.6.12

File hashes

Hashes for portmod-2.0rc1-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 b19577b56aae19ab15ae0f8f8cab72885aaf667cebc782c8527ee6058c3c9b1b
MD5 5667102d13383fbfe2c5da2198eac0f4
BLAKE2b-256 2b85ef15d5761b4aa0d9d110b88079c255e7e2e4870d644e084ef1ace4774657

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc1-cp38-cp38-macosx_10_15_x86_64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.8, macOS 10.15+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.3

File hashes

Hashes for portmod-2.0rc1-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 7f323086ee4a949ee17f92a32b62eaf7d55840201613b67eceedf60cc46ff67e
MD5 c1d684bae6e51bf46e43f00afceef73d
BLAKE2b-256 2a369e81d0f9d47712637a00f5e7a91786543996f07c3f10e778a89be35d229b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc1-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 964.4 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.6.8

File hashes

Hashes for portmod-2.0rc1-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 eaa54b23ff6f473eb9c6079b51ce818bbf609bc40e0616fd49317b2f67f427c6
MD5 a6b4d07c58475aa9b4d8c86300aa5e0b
BLAKE2b-256 731c7b738c83531036aed61d1414d17bdd7c9b311cb66b1b7c2d1c614b2a23d3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc1-cp37-cp37m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.6.12

File hashes

Hashes for portmod-2.0rc1-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 1c86f04728d8b704e4123d8d1d99201468390677615c150ee517884fea1d9d3c
MD5 bb8781ab041f34ddd2c45df0c955d012
BLAKE2b-256 f1d86d81c92a4bc6f3cef9128de277a7e2d2174471629d9fb4c645b98648be2d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc1-cp37-cp37m-macosx_10_15_x86_64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.7m, macOS 10.15+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.3

File hashes

Hashes for portmod-2.0rc1-cp37-cp37m-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 134918f2ee32cfd2efcaa79a00bc192530dbd452aea558dc810c612f33b7d1f4
MD5 bd4d7f6927d6981296c91116fd7c22f6
BLAKE2b-256 3ddc72084f9e201c58dd0ef1248d13ef1cd20bfa68050f4ac4722e0f9b3d126b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc1-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 965.1 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.6.8

File hashes

Hashes for portmod-2.0rc1-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 5ad236bd2a9a846ff630ad36d80b3030d49ff63f6278251a9e3873fb66f24ede
MD5 25ee32f3228047d0c1a5b5f572e8aa09
BLAKE2b-256 d2eb510968bee4e03d35bdcfce86139093118ec3c53fd5b11319254d526c0d62

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc1-cp36-cp36m-manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.6.1 requests/2.25.1 setuptools/51.1.0 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.6.12

File hashes

Hashes for portmod-2.0rc1-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 d0640de6de4470e98e449d16dd69046b25dda8a7fcd9dcc15d8338cdbaf418db
MD5 24daa45768cf4a609ad10ff8f92b6a78
BLAKE2b-256 0129a6ba742cbf5f1dbc5afb1bbd9f827cdf54ab6a876728a677af98bb2c2d3c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc1-cp36-cp36m-macosx_10_15_x86_64.whl
  • Upload date:
  • Size: 1.0 MB
  • Tags: CPython 3.6m, macOS 10.15+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/51.0.0 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.3

File hashes

Hashes for portmod-2.0rc1-cp36-cp36m-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 c82c4e64f711c26098c316b1d7885a296800b90cb159634ba7d69cebfbf0099a
MD5 f950ea3550b72e50620f95e2fd917525
BLAKE2b-256 60603cca8d78f79e82313942de04f5fbe8d6b3eb4f2ce912e14c0caafcd66747

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