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.0rc2.tar.gz (202.0 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.0rc2-cp39-cp39-win_amd64.whl (989.7 kB view details)

Uploaded CPython 3.9Windows x86-64

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

Uploaded CPython 3.9

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

Uploaded CPython 3.9macOS 10.15+ x86-64

portmod-2.0rc2-cp38-cp38-win_amd64.whl (989.7 kB view details)

Uploaded CPython 3.8Windows x86-64

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

Uploaded CPython 3.8

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

Uploaded CPython 3.8macOS 10.15+ x86-64

portmod-2.0rc2-cp37-cp37m-win_amd64.whl (989.7 kB view details)

Uploaded CPython 3.7mWindows x86-64

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

Uploaded CPython 3.7m

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

Uploaded CPython 3.7mmacOS 10.15+ x86-64

portmod-2.0rc2-cp36-cp36m-win_amd64.whl (990.4 kB view details)

Uploaded CPython 3.6mWindows x86-64

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

Uploaded CPython 3.6m

portmod-2.0rc2-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.0rc2.tar.gz.

File metadata

  • Download URL: portmod-2.0rc2.tar.gz
  • Upload date:
  • Size: 202.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/51.3.3 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.6.12

File hashes

Hashes for portmod-2.0rc2.tar.gz
Algorithm Hash digest
SHA256 575fdbd77efe6d6ef0a285844c03edff83fac9211142967ba3b832161e321944
MD5 e551e72ab2baffef88f609c4049e20a2
BLAKE2b-256 a9b6f573cb8f9d69b8aaf8dbbd93eb9d3d944120a7a1378f49cbed1e8cb18fee

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for portmod-2.0rc2-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 45205f21ba9b0e2a129c16549f85c588979eb95af3862649374fff416163a187
MD5 c077f9be533ca87775439ab8959d38a0
BLAKE2b-256 9d1f4514fd63b6ce1178b0980001303d67588901e06156349f3a28911f364788

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc2-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.7.0 requests/2.25.1 setuptools/51.3.3 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.6.12

File hashes

Hashes for portmod-2.0rc2-cp39-cp39-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 912d5da60b54e98120e1a6a7e743df8d9f02fcbc31f7ff5f3de56901eec15e93
MD5 4510c252b547fb973b9e51604ea184c5
BLAKE2b-256 6bc2b9afdc3d83c44cfd8b61c0b8e09a32662137636d3eb37dda5f3aacecd3b4

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc2-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.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/51.3.3 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for portmod-2.0rc2-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 fce65ef5cd8136731c26389ac7b49585968efbc7a1b1694c5c0ddb93b8eb0f08
MD5 414fcd5ebba85158a99289108d2d3839
BLAKE2b-256 879855b7dcafe1b1303e4b89926e52eeecbbcc7f87e6db14cd140c8e1239dfc7

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for portmod-2.0rc2-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 12f6da938d7db660fb686fe894dcd6f19e6ce69c1ee4664890202e085f8cb3ed
MD5 2498ddf1050243abf1185c4dabfa8439
BLAKE2b-256 9a4c2d52a8d5fa1b0e080e191a4b5cc28cf21fd2babe108da6f79952793643fd

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc2-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.7.0 requests/2.25.1 setuptools/51.3.3 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.6.12

File hashes

Hashes for portmod-2.0rc2-cp38-cp38-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 743a9265ccb9f91bde170259365874f6d4f8b49a4187b88539047114e474b79d
MD5 d9f69dbee6ee9148311b8e7ddf5d98a4
BLAKE2b-256 7668b90882205f5ceb5b37b827e89d05bc3ce06503d0d58fc70868bb78555436

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc2-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.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/51.3.3 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for portmod-2.0rc2-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 d9dcb2aa84e39ea6775078b2a86616fb10fd3bd801c432628a6347d0e8a7fbd5
MD5 a4f019e1639520e58250193091509899
BLAKE2b-256 6fe8561a899169e4802b2381a2a25dc0ac62dacbb8f5798ebd228c116fa7f695

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for portmod-2.0rc2-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 4182581b3803fe8c3f7132f5c23318d05a90330f42c099fe2b181a5fec3d3428
MD5 0636f2f181047a363eca39d9ae952950
BLAKE2b-256 08a9239156b258eec9f17e5e021b339c09ea5f8e8bbf81717cf70d3aa0d2f551

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc2-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.7.0 requests/2.25.1 setuptools/51.3.3 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.6.12

File hashes

Hashes for portmod-2.0rc2-cp37-cp37m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 846b7c4d71541d5c5e4663772a50546860087c9c2830961c05e26b1777e63fda
MD5 e3ca6e5d8c5d8335ae772398bca95f24
BLAKE2b-256 1b5edee3492d4bb8f2036f355c13dd81aadae419dbc515462e554720933c0ffb

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc2-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.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/51.3.3 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for portmod-2.0rc2-cp37-cp37m-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 bec92ffcaee3a6d808db363519ff5af2d6a80f2190ca98b4c38123df324d1399
MD5 3495c0668a6bbecfd759e5f3b3ccf6d4
BLAKE2b-256 247d83d73afab8f1674fd0f9d761622afefc454bf3f568dfa020c30aff079948

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for portmod-2.0rc2-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 6915154ae2e942bda40f1dd40573c6abea0ba323a398ce716de00ffeb806446e
MD5 a0750cdb56baf1e12c91c12808e26c32
BLAKE2b-256 95d775f204eb3f6f207e3dcb3bcc516f329044e96f6d4e678bae21e0a1978361

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc2-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.7.0 requests/2.25.1 setuptools/51.3.3 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.6.12

File hashes

Hashes for portmod-2.0rc2-cp36-cp36m-manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 620f9684cb0507df85ec359c613c35df39a762243eb56b5331734db3e0cc4fb5
MD5 3163e4be7639c75c968c4bb33aec1058
BLAKE2b-256 a687b8b424f65c061d9049791f78b65c52d4aa532dfb18d1edb6e67b9eeabafe

See more details on using hashes here.

File details

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

File metadata

  • Download URL: portmod-2.0rc2-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.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/51.3.3 requests-toolbelt/0.9.1 tqdm/4.56.0 CPython/3.9.1

File hashes

Hashes for portmod-2.0rc2-cp36-cp36m-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 0f0d31259952f609b9b0cf54feee6af62fd8c1e652028ee26c543c849ed9d804
MD5 e11d60c745abe3300449ee478dcfe805
BLAKE2b-256 91025dfcc92c296708aa1c1701ad168e727ec94593b9eb58ba0beda56519a116

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