Skip to main content

userdir-publish

License PyPI package Supported Python versions pre-commit.ci status CI status Test coverage Spelling checked code style: prettier uv Ruff ty

userdir-publish copies a built static website to a personal web directory, such as https://web.example.edu/~jdoe/, that Apache serves with mod_userdir. It uses rsync, either over SSH or to a local path when the web directory is mounted or you are logged in on the server. It removes stale files, sets permissions the web server can read, and refuses to publish a build that lacks index.html or the current .htaccess rules.

Installation

The tool requires rsync on your machine and on the server. On macOS, install GNU rsync (for instance with brew install rsync), because the built-in openrsync ignores the permission settings. Install it from PyPI:

uv tool install userdir-publish

or with pipx install userdir-publish. Then run userdir-publish --help.

Documentation

See rub-ep1.github.io/userdir-publish for other installation methods, configuration, group pages, and task runner integration.

Metadata

Release files for userdir-publish 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for userdir-publish 0.0.1
File Size Uploaded Provenance Actions
userdir_publish-0.0.1.tar.gz 31.9 kB With provenance Details for userdir_publish-0.0.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for userdir-publish 0.0.1
File Interpreter ABI Platform Actions
userdir_publish-0.0.1-py3-none-any.whl Python 3 none any Details for userdir_publish-0.0.1-py3-none-any.whl

Total release size: 44.7 kB

Release files / userdir_publish-0.0.1.tar.gz

Download URL userdir_publish-0.0.1.tar.gz
Size 31.9 kB
Tags Source
SHA-256 checksum
How to use checksums
a6a8b4474502df01127e3bc860bd839b0856849ec9323401213842914aa4cfaf
BLAKE2b-256 checksum
How to use checksums
d274fc462e57e3a663eb2a6606769b7fc758db97b3936d138676577460f5b5d5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.

Transparency log

Release files / userdir_publish-0.0.1-py3-none-any.whl

Download URL userdir_publish-0.0.1-py3-none-any.whl
Size 12.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
f504e067418b24003b849b51769afc99668e67a607180caff5d57d97b76f31c5
BLAKE2b-256 checksum
How to use checksums
adf080b82be60573c1504b4483af6c37ebe1154e64371e7ba660ca59b6664a5d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.

Transparency log

Security for userdir-publish 0.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

Both files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for userdir_publish-0.0.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Nov 4, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page