punkfairie
ef473137c7
Change attributes of .config/drapeau/catppuccin-frappe.toml Change attributes of .config/drapeau/catppuccin-latte.toml Change attributes of .config/drapeau/catppuccin-macchato.toml Change attributes of .config/drapeau/catppuccin-mocha.toml
47 lines
1.8 KiB
Python
47 lines
1.8 KiB
Python
#!/usr/bin/python
|
|
import os
|
|
import toml
|
|
|
|
def main():
|
|
# Chech if config file exists
|
|
chezmoi_config_dir = os.path.join(os.environ["HOME"], ".config", "chezmoi")
|
|
if os.path.exists(os.path.join(chezmoi_config_dir, "chezmoi.toml")):
|
|
chezmoi_config_file = os.path.join(chezmoi_config_dir, "chezmoi.toml")
|
|
else:
|
|
return "=== ERROR: No chezmoi.toml found ==="
|
|
|
|
# Load config file into memory
|
|
chezmoi_config_dict = toml.load(chezmoi_config_file)
|
|
|
|
# Extract drapeau data
|
|
if "drapeau" not in chezmoi_config_dict["data"]:
|
|
chezmoi_config_dict["data"]["drapeau"] = {}
|
|
|
|
# Get colorscheme
|
|
if "colorscheme" in chezmoi_config_dict["data"]["drapeau"]:
|
|
drapeau_color_scheme = chezmoi_config_dict["data"]["drapeau"]["colorscheme"]
|
|
else:
|
|
drapeau_color_scheme = "default"
|
|
chezmoi_config_dict["data"]["drapeau"]["colorscheme"] = drapeau_color_scheme
|
|
|
|
# Find colorscheme files
|
|
# Produce dict of {"name": "path"} for all schemes
|
|
drapeau_config_dir = os.path.join(os.environ["HOME"], ".config", "drapeau")
|
|
if os.path.exists(drapeau_config_dir):
|
|
drapeau_color_scheme_files = {".".join(scheme.split(".")[:-1]): os.path.join(drapeau_config_dir, scheme) for scheme in os.listdir(drapeau_config_dir) if os.path.isfile(os.path.join(drapeau_config_dir, scheme))}
|
|
else:
|
|
drapeau_color_scheme_files = {}
|
|
|
|
# Extract colorscheme data from desired scheme
|
|
drapeau_color_scheme_dict = toml.load(drapeau_color_scheme_files[drapeau_color_scheme])
|
|
|
|
# Add colorscheme to chezmoi config data
|
|
chezmoi_config_dict["data"]["drapeau"]["colors"] = drapeau_color_scheme_dict
|
|
|
|
# Write out modified dict to chezmoi config file
|
|
with open(chezmoi_config_file, 'w') as f:
|
|
toml.dump(chezmoi_config_dict, f)
|
|
|
|
return "=== SUCCESS ==="
|
|
|
|
main()
|