Skip to main content

Convenient access to XDG Base Directory Specification variables

Project description

xdgspec Python package

pipeline status coverage report documentation PyPI

xdgspec is a simple Python package to provide convenient access to the variables defined in the XDG Base Directory Specification.

What can xdgspec do?

With xdgspec you can:

Access the XDG Base Directory variables with Appropriate Fallbacks

from xdgspec import XDGDirectory
print(XDGDirectory("XDG_CONFIG_HOME").path)
print(XDGDirectory("XDG_CACHE_HOME").path)
print(XDGDirectory("XDG_DATA_HOME").path)
# ...

Use a Context Manager to Automatically Create One of the XDG Base Directories if it doesn't exist

from xdgspec import XDGDirectory
with XDGDirectory("XDG_CONFIG_HOME") as path:
    print("{} is now definitely existing".format(path))

Access and Create Package Directories

from xdgspec import XDGPackageDirectory
with XDGPackageDirectory("XDG_CONFIG_HOME","mypackage") as path:
    # path = ~/.config/mypackage
    print("{} is now definitely existing".format(path))

Loop Over Existing XDG System Directories

from xdgspec import XDGDirectories
# variable content
print(XDGDirectories("XDG_CONFIG_DIRS").paths)
# generator of actually existing, unique directories
print(list(XDGDirectories("XDG_CONFIG_DIRS").existing_paths))

Installation

The xdgspec package is best installed via pip. Run from anywhere:

python3 -m pip install --user xdgspec

This downloads and installs the package from the Python Package Index.

You may also install xdgspec from the repository root:

python3 -m pip install --user .

Documentation

Documentation of the xdgspec package can be found here on GitLab.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xdgspec-0.1.2.tar.gz (3.8 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page