skillfed

patchwork

Deployment/sysadmin operations, powered by Fabric

patchwork v1.0.1 89.4K downloads/30d#13,660 on PyPI
Permissive license BSD Abandoned released

What it is and what it does

Patchwork is a mid-level library of system administration primitives designed to run over SSH via Fabric. It provides functions like package installation and user account creation that are built to be idempotent—safe to call repeatedly without accumulating unwanted side effects. Unlike larger configuration management frameworks, Patchwork is just an API with no concept of recipes or roles; it leaves organizational structure to the user or wrapping libraries. Functions expect a context object and can run either locally or remotely depending on the context supplied.

The library is implemented through shell calls, typically sent over SSH from a local workstation. It sits between raw shell scripting and full configuration management systems, offering a lightweight alternative for teams that want programmatic control over deployment operations without the overhead of a complete framework.

Use it for:

  • Automating package installation and system configuration on remote servers via SSH from a Python script.
  • Building custom deployment workflows that need idempotent operations without adopting a full configuration management framework.
  • Writing ad-hoc system administration tasks that can be safely re-run without causing errors or duplicate changes.
  • Wrapping Patchwork primitives in higher-level deployment or provisioning tools tailored to specific organizational needs.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Patchwork provides idempotent Unix system administration primitives—such as package installation and user account creation—built on top of Fabric for remote execution over SSH.

No. While Patchwork offers a useful lightweight alternative to full configuration management frameworks, it has been abandoned since 2018 with no maintenance. The package is unlikely to work reliably on modern Python versions or current system environments. For new projects, consider actively maintained alternatives.

Install

patchwork on PyPI

pip

pip install patchwork

uv

uv add patchwork

poetry

poetry add patchwork

Installing patchwork

Before you install

Low friction installation. However, the package has been abandoned since 2018 with no recent maintenance, so it may not work reliably with modern Python or system environments.

License in practice

BSD license is permissive, allowing commercial and private use with minimal restrictions, making it suitable for most deployment contexts.

Quickstart

pip install patchwork

from patchwork.files import exists

if exists(ctx, '/etc/hosts'):
    print('File exists')

Requires Fabric; designed for remote execution over SSH, typically called with a remote context object rather than local execution.

Verify before relying

  • Whether Patchwork's Fabric dependency still installs and functions on modern Python versions given the package's abandonment since 2018.
  • Compatibility with current SSH implementations and modern Unix/Linux distributions.
  • Whether the idempotency guarantees hold across different system configurations and package managers.

Package facts

License BSD (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 1 — fabric
Maintenance abandoned — 2,977 days since the last release
First released
Downloads 89,424/month — #13,660 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: patchwork-1.0.1-py2.py3-none-any.whl

Development Status :: 5 - Production/StableEnvironment :: ConsoleIntended Audience :: DevelopersIntended Audience :: System AdministratorsLicense :: OSI Approved :: BSD LicenseOperating System :: MacOS :: MacOS XOperating System :: Microsoft :: WindowsOperating System :: POSIXOperating System :: UnixProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Topic :: Software DevelopmentTopic :: Software Development :: Build ToolsTopic :: Software Development :: LibrariesTopic :: Software Development :: Libraries :: Python ModulesTopic :: System :: Software DistributionTopic :: System :: Systems Administration

Tags

unix system administration primitivesidempotent deployment operationsfabric-based remote sysadminssh system configurationpackage installation automationremote server provisioningdeployment automation library
sysadmin-automationssh-deploymentabandoned

More Software Development packages