Skip to main content

xdgpspconf - XDG Platform Suited Project configuration

Project description

XDG Platform Suited Project CONFiguration

Gist

Source Code Repository

source Repository

pages Documentation

Badges

Pipeline Coverage PyPI - version PyPI - format PyPi - pyversion

Description

Handle platform suited xdg-base to

  • Read configuration from standard locations.

    • supported formats:
      • yaml

      • json

      • toml

      • conf (ini)

  • Write configuration to most general, writable xdg-location

  • Locate standard directories:
    • xdg_cache

    • xdg_config

    • xdg_data

    • xdg_state

XDG Specification

View xdg specifications here.

What does it do

  • Lists possible xdg-locations (existing and prospective)

CACHE

XDG_CACHE_HOME

DATA

  • XDG_DATA_HOME

  • XDG_DATA_DIRS

STATE

  • XDG_STATE_HOME

  • XDG_STATE_DIRS

CONFIG

  • Reads configuration files from standard Windows/POSIX locations, current folder and optionally all ancestors and custom locations.

Platform-specific
Windows
  • %LOCALAPPDATA%\<PROJECT>\config

  • %USERPROFILE%\AppData\Local\<PROJECT>\config

POSIX

[Linux/MacOS]

  • ${XDG_CONFIG_HOME:-${HOME}/.config}/<PROJECT>/config

  • ${XDG_CONFIG_HOME:-${HOME}/.config}/<PROJECT>

  • ${XDG_CONFIG_HOME:-${HOME}/.config}/<PROJECT>rc

  • $DIR/<PROJECT>/config for each $DIR in $XDG_CONFIG_DIRS

Environment

  • declared variable: %<PROJECT>RC% for Windows or $<PROJECT> for POSIX

Improper

  • ${HOME}/.<PROJECT>rc

Custom

  • configuration path: supplied in function

Relative

./.<PROJECT>rc

Ancestors

Any of the parents, till project root or mountpoint, that contains __init__.py, where,

  • project root is the directory that contains setup.cfg or setup.py

  • mountpoint is checked using pathlib.Path.drive on windows or pathlib.Path.is_mount() on POSIX

TODO

  • Implementation for following variables:
    • XDG_RUNTIME_DIR

    • Other XDG specifications.

    • Arbitrarily defined XDG_.* environment variables

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

xdgpspconf-1.1.1.tar.gz (27.3 kB view details)

Uploaded Source

Built Distribution

xdgpspconf-1.1.1-py3-none-any.whl (25.2 kB view details)

Uploaded Python 3

File details

Details for the file xdgpspconf-1.1.1.tar.gz.

File metadata

  • Download URL: xdgpspconf-1.1.1.tar.gz
  • Upload date:
  • Size: 27.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for xdgpspconf-1.1.1.tar.gz
Algorithm Hash digest
SHA256 92447739b32939278cd82c66b52a9dc248f19d76d1a72ec0c44f7aad3abab077
MD5 d6e14026ccebd7f0a49294d18107080a
BLAKE2b-256 40ca5aec1fe2c53115316640dcb280230ef0a4c2f430652dd729fea6e82cfe4b

See more details on using hashes here.

File details

Details for the file xdgpspconf-1.1.1-py3-none-any.whl.

File metadata

  • Download URL: xdgpspconf-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 25.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for xdgpspconf-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 30409ee66035f79213de7920ad5956e7fd232352c6ea5721df9aa657fc6fff70
MD5 a3bd5a7dd38a94489803385598a01067
BLAKE2b-256 bda82846336252ba78c27b4b657b3604516017ca943fa055c5d1bd4a8e98bef8

See more details on using hashes here.

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