elevate
Python library for requesting root privileges
Decision gist · record as of 2026-08-14
No. The package has not been updated since 2018-05-22 and is dormant, raising serious concerns about compatibility with modern Python versions and contemporary privilege escalation mechanisms. While the MIT license is permissive and there are no known vulnerabilities, the age and lack of maintenance make it a poor choice for new projects. Consider using platform-specific elevation mechanisms directly or evaluating actively maintained alternatives.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires system privilege escalation tools (sudo, pkexec, UAC, or AppleScript) to be available and configured; behavior differs significantly across Windows, macOS, and Linux.
- High install friction: the package has not been updated since its latest release on 2018-05-22 and is marked dormant.
- No runtime dependencies, but the underlying mechanism depends on system-level privilege escalation tools being available.
License · maintenance · safety
MIT (permissive) — MIT license is permissive and imposes no significant restrictions on use, modification, or distribution.
last release 2018-05-22 (3006 days) · last repo commit 2024-07-01 · 129 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 111,879 downloads/mo, #12,392 on PyPI
Alternatives
Verify before relying
import os
from elevate import elevate
elevate()
print(os.getuid() == 0) # True if now running as root- Whether the package works correctly with modern Python versions (no explicit version support declared).
- Current compatibility with contemporary UAC, AppleScript, and Linux privilege escalation mechanisms.
- Whether dormancy since 2018-05-22 indicates unresolved bugs or simply stable, feature-complete code.
What it is and what it does
Elevate is a small library that re-launches your Python process with elevated privileges, handling the platform-specific details of privilege escalation. When you call elevate() early in your script, it checks whether the process is already running as root; if not, it uses the appropriate system mechanism for your platform to request elevation and replace or restart the process. On Windows it uses UAC, on macOS it tries AppleScript before falling back to sudo, and on Linux it tries graphical tools like pkexec before sudo.
The library has no runtime dependencies and is designed to be called once at script startup. Its main constraint is that it depends entirely on system-level privilege escalation infrastructure, which varies across platforms and may not be available in all environments. The package has received no updates since its initial release.
Use it for
- System administration scripts that need to perform privileged operations but should prompt for elevation only once at startup.
- Cross-platform tools that require root access on Unix-like systems and admin access on Windows.
- Installation or configuration utilities that need to modify system files or settings.
- Daemon or service launchers that must run with elevated privileges from a user-initiated script.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
No.
The package has not been updated since 2018-05-22 and is dormant, raising serious concerns about compatibility with modern Python versions and contemporary privilege escalation mechanisms. While the MIT license is permissive and there are no known vulnerabilities, the age and lack of maintenance make it a poor choice for new projects. Consider using platform-specific elevation mechanisms directly or evaluating actively maintained alternatives.
Install
elevate on PyPI
Before you install
High install friction: the package has not been updated since its latest release on 2018-05-22 and is marked dormant. No runtime dependencies, but the underlying mechanism depends on system-level privilege escalation tools being available.
Requires system privilege escalation tools (sudo, pkexec, UAC, or AppleScript) to be available and configured; behavior differs significantly across Windows, macOS, and Linux.
License in practice
MIT license is permissive and imposes no significant restrictions on use, modification, or distribution.
Quickstart
import os
from elevate import elevate
elevate()
print(os.getuid() == 0) # True if now running as root
Verify before relying
- Whether the package works correctly with modern Python versions (no explicit version support declared).
- Current compatibility with contemporary UAC, AppleScript, and Linux privilege escalation mechanisms.
- Whether dormancy since 2018-05-22 indicates unresolved bugs or simply stable, feature-complete code.
Package facts
| License | MIT permissive |
| Python support | Not specified |
| Install friction | High. Source build required |
| Runtime dependencies | None |
| Maintenance | Dormant 3,006 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 111,879 / month, #12,392 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
Evidence: elevate-0.1.3.tar.gz
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 › “request root privileges python”
- elevateElevate re-launches the current Python process with root or admin…
- oslo.privseposlo.privsep helps applications safely perform privileged operations…
- google-cloud-privilegedaccessmanagerPython client library for Google Cloud Privileged Access Manager,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Utilities packages
Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.
Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.
Detects and normalizes text encoding from unknown or ambiguous sources, supporting all IANA character sets that Python's core library provides codecs for, with the ability to register custom codecs.
Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.
Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.
Install it if you're building an extensible application or framework.
Pygments is a syntax highlighter that colorizes source code and text in over 500 languages and formats, outputting to HTML, LaTeX, RTF, SVG, images, or ANSI terminal sequences.
Install it if you need to display or transform source code.
Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.
See also pypsexec · oslo.rootwrap · oslo.privsep · py-machineid · django-prbac · bar-raiser · pyobjc-framework-OSAKit · iterm2 · pyobjc-framework-ScriptingBridge · google-cloud-privilegedaccessmanager