Simple Cross Platform creation of shortcuts and Persistent Environment Variables
Install and update using pip:
pip install pycrosskit
or
pip3 install pycrosskit
- Linux
- Windows
from pycrosskit.shortcuts import Shortcut
# Will Create shortcut
# * at Desktop if desktop is True
# * at Start Menu if start_menu is True
Shortcut(shortcut_name="My Spaghetti Shortcut", exec_path="/usr/bin/order_spaghetti", description="Such Yummy Spaghetti",
icon_path="/home/.../spaghetti.png", desktop=True, start_menu=True)
# Will Delete shortcut
# * at Desktop if desktop is True
# * at Start Menu if start_menu is True
Shortcut.delete(shortcut_name="My Spaghetti Shortcut", desktop=True, start_menu=True)
Accessing and write to environment variables is automatically handled based on your system Lin/Win SysEnv class is implemented as a singleton metaclass so don't be afraid about multiple instances
Support of Mac env variables on request
from pycrosskit.envariables import SysEnv
### ** Linux **
# Will Set Persistent Value for Variable in Systems bashrc file or custom one that you can pass
SysEnv().set(key="spaghetti", value="boloneys", shell_file="~/.zsh")
# Will Get Persistent Value for Variable in System
# * reg_path works only for windows as register path
# * registry works only for windows, if is False variable is obtained from User Environment Variables
SysEnv().get(key="spaghetti", shell_file="~/.zsh", shell="zsh")
# Will unset variable from your environment or registry
SysEnv().unset(key="spaghetti", shell_file="~/.zsh")
# For not having to override argument shell_file or shell
# This saves specs for every access, default arguments are ignored
SysEnv.save_shell_specs(shell="zsh", shell_file="~/.zsh")
### ** Windows **
# Will Set Persistent Value for Variable in System
# * subkey works only for windows like file in folder
# * reg_path works only for windows as register path (is ignored if registry=False)
# * registry works only for windows, if is False variable is saved to User Environment Variables
SysEnv().set(key="spaghetti", value="bologna", subkey="italian_food", reg_path="HKEY-...\\CustomPath",
registry=True)
# Will Get Persistent Value for Variable in System
# * reg_path works only for windows as register path
# * registry works only for windows, if is False variable is obtained from User Environment Variables
SysEnv().get(key="spaghetti", reg_path="HKEY-...\\CustomPath", registry=True)
# Will unset variable from your environment or registry
SysEnv().unset(key="spaghetti", registry=True)
Clone the repository, then:
# install dependencies and package in editable mode
python -m pip install -U -r requirements.txt
# install development dependencies
python -m pip install -U -e .[dev]
# install git hooks
pre-commit install
Did I made your life less painfull ?
Support my coffee addiction ;)