From 908a510c312dc0102328fd1e3a6bb1728f36a194 Mon Sep 17 00:00:00 2001 From: Filip Znachor Date: Wed, 23 Nov 2022 18:32:42 +0100 Subject: [PATCH] Merged config files & improved script --- _scripts/import.py | 47 +++++++++++++++++++++++++--------------------- config.yml | 23 +++++++++++++++++++++++ dotfiles.yml | 11 ----------- gnome.yml | 6 ------ 4 files changed, 49 insertions(+), 38 deletions(-) create mode 100644 config.yml delete mode 100755 dotfiles.yml delete mode 100644 gnome.yml diff --git a/_scripts/import.py b/_scripts/import.py index 8282211..e98fdc8 100755 --- a/_scripts/import.py +++ b/_scripts/import.py @@ -50,25 +50,30 @@ def import_gnome_config(file: str, path: str): p = subprocess.Popen(f"dconf load {path} < {dconf}", shell=True) p.wait() -dotfiles = cwd / "dotfiles.yml" -if dotfiles.exists(): - config = yaml.safe_load(dotfiles.read_text()) - if config: - print("Installing dotfiles...") - for folder in config: - print(f" - {folder}") - set_dotfiles(folder, config[folder]) +# Main part -gnome = cwd / "gnome.yml" -if gnome.exists(): - config = yaml.safe_load(gnome.read_text()) - if "extensions" in config: - print("Installing GNOME extensions...") - for ext in config["extensions"]: - print(f" - {ext}") - install_gnome_extension(ext) - if "import" in config: - print("Importing GNOME settings...") - for file in config["import"]: - print(f" - {file}") - import_gnome_config(file, config["import"][file]) \ No newline at end of file +def main(): + config_file = cwd / "config.yml" + if not config_file.exists(): + return + config = yaml.safe_load(config_file.read_text()) + if not config: + return + if "dotfiles" in config: + print("Installing dotfiles...") + for folder in config["dotfiles"]: + print(f" - {folder}") + set_dotfiles(folder, config["dotfiles"][folder]) + if "gnome" in config: + if "extensions" in config["gnome"]: + print("Installing GNOME extensions...") + for ext in config["gnome"]["extensions"]: + print(f" - {ext}") + install_gnome_extension(ext) + if "import" in config["gnome"]: + print("Importing GNOME settings...") + for file in config["gnome"]["import"]: + print(f" - {file}") + import_gnome_config(file, config["gnome"]["import"][file]) + +main() \ No newline at end of file diff --git a/config.yml b/config.yml new file mode 100644 index 0000000..73ce2b0 --- /dev/null +++ b/config.yml @@ -0,0 +1,23 @@ +dotfiles: + bash: + $home: + - .bashrc + - .bash_logout + - .profile + etc: + $home: + - .selected_editor + git: + $home: + - .gitconfig + +gnome: + extensions: + - cpupower@mko-sl.de + - dash-to-panel@jderose9.github.com + - gnome-clipboard@b00f.github.io + - blur-my-shell@aunetx + - hibernate-status@dromi + import: + extensions/cpupower: /org/gnome/shell/extensions/cpupower/ + extensions/dash-to-panel: /org/gnome/shell/extensions/dash-to-panel/ \ No newline at end of file diff --git a/dotfiles.yml b/dotfiles.yml deleted file mode 100755 index b25ca32..0000000 --- a/dotfiles.yml +++ /dev/null @@ -1,11 +0,0 @@ -bash: - $home: - - .bashrc - - .bash_logout - - .profile -etc: - $home: - - "*" -git: - $home: - - .gitconfig diff --git a/gnome.yml b/gnome.yml deleted file mode 100644 index bd49c5e..0000000 --- a/gnome.yml +++ /dev/null @@ -1,6 +0,0 @@ -extensions: - - cpupower@mko-sl.de - - dash-to-panel@jderose9.github.com -import: - extensions/cpupower: /org/gnome/shell/extensions/cpupower/ - extensions/dash-to-panel: /org/gnome/shell/extensions/dash-to-panel/ \ No newline at end of file