pyprctl
An interface to Linux's prctl() syscall written in pure Python using ctypes.
Decision gist · record as of 2026-08-14
No. The project is abandoned with last commit on 2021-10-26 and no active maintenance or security patches. While it has low install friction and a permissive MIT license, the lack of updates means it may not work correctly with modern Linux kernels, and any bugs or security issues will not be fixed. Use only if you are certain your target environment is compatible and you can maintain a fork yourself.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires Linux; will not work on Windows, macOS, or other non-Linux systems.
- Also requires Python 3.6 or later.
- Low install friction with a pure-Python wheel, but the project is abandoned—last commit was 2021-10-26.
License · maintenance · safety
MIT (permissive) — MIT license is permissive; you can use this package freely in commercial and private projects with minimal restrictions.
last release 2021-10-26 (1753 days) · last repo commit 2021-10-26 · 12 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 194,527 downloads/mo, #9,832 on PyPI
Alternatives
Verify before relying
pip install pyprctl
import pyprctl
# Example: query process capabilities
caps = pyprctl.cap_get_proc()
print(caps)- Whether the package works correctly on modern Linux kernels and distributions released after 2021-10-26.
- Whether all prctl() operations and Linux capabilities are fully supported or only a subset.
- Whether there are known incompatibilities with Python versions beyond 3.10.
What it is and what it does
pyprctl wraps Linux's prctl() system call in pure Python, letting you read and modify process attributes and capabilities directly from your code. It uses ctypes to call the underlying C function without requiring compiled extensions, making it portable across Python versions that support ctypes.
The package targets system-level operations—process scheduling hints, capability management, security attributes—that are typically needed in containerization, privilege management, or low-level process control. Because it is abandoned and has not been updated since 2021-10-26, it may not reflect changes to the prctl() API or Linux capabilities in newer kernels, and no security patches are forthcoming.
Use it for
- Drop or restrict Linux capabilities in a containerized application to reduce attack surface.
- Set process dumpability or other security attributes before executing untrusted code.
- Query or modify process scheduling hints and resource control attributes at runtime.
- Implement privilege-dropping logic in a Python daemon without calling external commands.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
No.
The project is abandoned with last commit on 2021-10-26 and no active maintenance or security patches. While it has low install friction and a permissive MIT license, the lack of updates means it may not work correctly with modern Linux kernels, and any bugs or security issues will not be fixed. Use only if you are certain your target environment is compatible and you can maintain a fork yourself.
Install
pyprctl on PyPI
Before you install
Low install friction with a pure-Python wheel, but the project is abandoned—last commit was 2021-10-26. No active maintenance or security updates should be expected.
Requires Linux; will not work on Windows, macOS, or other non-Linux systems. Also requires Python 3.6 or later.
License in practice
MIT license is permissive; you can use this package freely in commercial and private projects with minimal restrictions.
Quickstart
pip install pyprctl
import pyprctl
# Example: query process capabilities
caps = pyprctl.cap_get_proc()
print(caps)
Verify before relying
- Whether the package works correctly on modern Linux kernels and distributions released after 2021-10-26.
- Whether all prctl() operations and Linux capabilities are fully supported or only a subset.
- Whether there are known incompatibilities with Python versions beyond 3.10.
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.6 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packagedataclasses |
| Maintenance | Abandoned 1,753 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 194,527 / month, #9,832 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | License :: OSI Approved :: MIT LicenseOperating System :: POSIX :: LinuxProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: pyprctl-0.1.3-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “linux prctl system call”
- pyprctlProvides a pure-Python interface to Linux's prctl() system call and…
- sdbusPython library for D-Bus communication with asyncio and blocking call…
- python-pamPython wrapper for Linux PAM (Pluggable Authentication Modules) that…
Give your agent the search over MCP, or paste the wish link into any chat.
More Monitoring packages
Wraps any iterable to display a real-time progress bar in the terminal or Jupyter notebook, showing iteration count, elapsed time, and estimated time remaining.
Provides generated Python code for OpenTelemetry semantic conventions, enabling standardized attribute naming and constant definitions for instrumentation and telemetry collection.
Install it if you are using OpenTelemetry and want to follow semantic conventions correctly.
Provides the reference implementation of the OpenTelemetry API for collecting and exporting traces, metrics, and logs from Python applications.
Provides the abstract API and interfaces for OpenTelemetry instrumentation in Python, defining how to emit traces, metrics, and logs without tying code to a specific SDK implementation.
Exports OpenTelemetry observability data to an OpenTelemetry Collector using Protobuf-encoded messages over HTTP.
Install it if you are using OpenTelemetry in Python and need to send data to a Collector over HTTP.
Provides automatic instrumentation commands and programmatic APIs to inject distributed tracing into Python applications without code changes, detecting and instrumenting packages used by your program.
Install it if you need distributed tracing without code changes and have compatible instrumented packages in your environment.
See also pyseccomp · jaraco.windows · PyRIC · pywin32-ctypes · ghostscript · pyftdi · cwrap · python-xmp-toolkit · comtypes · libpci