From 098af8fc8b07fbb9f118b7883bc13a864c995414 Mon Sep 17 00:00:00 2001 From: CherryKitten Date: Fri, 22 Nov 2019 14:49:06 +0100 Subject: [PATCH 1/5] Use osx_defaults module to configure .osx --- tasks/osx.yml | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/tasks/osx.yml b/tasks/osx.yml index b952d90db..95e03ae84 100644 --- a/tasks/osx.yml +++ b/tasks/osx.yml @@ -1,5 +1,9 @@ --- -# TODO: Use sudo once .osx can be run via root with no user interaction. -- name: Run .osx dotfiles. - shell: "{{ osx_script }}" - changed_when: false +- name: Run .osx defaults + osx_defaults: + domain: "{{ item.domain }}" + key: "{{ item.key }}" + type: "{{ item.type }}" + value: "{{ item.value }}" + state: "{{ item.state | default('present') }}" + with_items: "{{ osx_defaults }}" From 4e497eb0cf340ed2465af7b1865824f064ad2614 Mon Sep 17 00:00:00 2001 From: CherryKitten Date: Fri, 22 Nov 2019 15:05:33 +0100 Subject: [PATCH 2/5] Add empty osx defaults variable to default config --- default.config.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/default.config.yml b/default.config.yml index cbf4ec40f..db560a83a 100644 --- a/default.config.yml +++ b/default.config.yml @@ -71,6 +71,7 @@ mas_email: "" mas_password: "" osx_script: "~/.osx --no-restart" +osx_defaults: [] # Install packages from other package managers. # Note: You are responsible for making sure the required package managers are From 7961d26b22a27d6ff81296fd20332c3b987f5340 Mon Sep 17 00:00:00 2001 From: CherryKitten Date: Fri, 22 Nov 2019 15:06:04 +0100 Subject: [PATCH 3/5] Make "legacy" .osx dotfiles script default for now. For now, only part of the .osx dotfile script is covered by the defaults module. Until other commands like 'pmset' are added, the old script should be the default. --- default.config.yml | 1 + tasks/osx.yml | 8 +++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/default.config.yml b/default.config.yml index db560a83a..98d7973b7 100644 --- a/default.config.yml +++ b/default.config.yml @@ -71,6 +71,7 @@ mas_email: "" mas_password: "" osx_script: "~/.osx --no-restart" +osx_legacy: true osx_defaults: [] # Install packages from other package managers. diff --git a/tasks/osx.yml b/tasks/osx.yml index 95e03ae84..9f012a315 100644 --- a/tasks/osx.yml +++ b/tasks/osx.yml @@ -1,5 +1,5 @@ --- -- name: Run .osx defaults +- name: Run .osx defaults. osx_defaults: domain: "{{ item.domain }}" key: "{{ item.key }}" @@ -7,3 +7,9 @@ value: "{{ item.value }}" state: "{{ item.state | default('present') }}" with_items: "{{ osx_defaults }}" + when: not osx_legacy + +- name: Run legacy .osx dotfiles. + shell: "{{ osx_script }}" + changed_when: false + when: osx_legacy From 62f1f5e12451a335dd568ab91766ed42216dc491 Mon Sep 17 00:00:00 2001 From: CherryKitten Date: Fri, 22 Nov 2019 22:22:10 +0100 Subject: [PATCH 4/5] Allow usage of defaults task and dotfiles script together --- default.config.yml | 3 ++- tasks/osx.yml | 8 ++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/default.config.yml b/default.config.yml index 98d7973b7..9001099c7 100644 --- a/default.config.yml +++ b/default.config.yml @@ -71,7 +71,8 @@ mas_email: "" mas_password: "" osx_script: "~/.osx --no-restart" -osx_legacy: true +osx_use_dotfile: true +osx_use_defaults: false osx_defaults: [] # Install packages from other package managers. diff --git a/tasks/osx.yml b/tasks/osx.yml index 9f012a315..ddc724527 100644 --- a/tasks/osx.yml +++ b/tasks/osx.yml @@ -1,5 +1,5 @@ --- -- name: Run .osx defaults. +- name: Run macOS defaults. osx_defaults: domain: "{{ item.domain }}" key: "{{ item.key }}" @@ -7,9 +7,9 @@ value: "{{ item.value }}" state: "{{ item.state | default('present') }}" with_items: "{{ osx_defaults }}" - when: not osx_legacy + when: osx_use_defaults -- name: Run legacy .osx dotfiles. +- name: Run .osx dotfiles. shell: "{{ osx_script }}" changed_when: false - when: osx_legacy + when: osx_use_dotfile From 30989ed9004ffe423e954f3bb7be6ed0719c3d9b Mon Sep 17 00:00:00 2001 From: CherryKitten Date: Fri, 22 Nov 2019 22:37:04 +0100 Subject: [PATCH 5/5] Readd the comment that has been deleted accidentally --- tasks/osx.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/tasks/osx.yml b/tasks/osx.yml index ddc724527..fbad9e06d 100644 --- a/tasks/osx.yml +++ b/tasks/osx.yml @@ -9,6 +9,7 @@ with_items: "{{ osx_defaults }}" when: osx_use_defaults +# TODO: Use sudo once .osx can be run via root with no user interaction. - name: Run .osx dotfiles. shell: "{{ osx_script }}" changed_when: false