Skip to content

Commit 3a814e2

Browse files
committed
chore(dotfiles): simplify codex cleanup and helm repo sync
1 parent d7e114b commit 3a814e2

File tree

7 files changed

+36
-60
lines changed

7 files changed

+36
-60
lines changed

group_vars/all.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ default_roles:
3838
- obsidian
3939
- opencode
4040
- podman
41-
- pwsh
41+
# - pwsh
4242
- python
4343
- raycast
4444
# - ruby

roles/codex/README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@ Install and configure the OpenAI Codex CLI with version-controlled user memory.
77
- Installs or upgrades `codex`:
88
- macOS: Homebrew cask (`codex`)
99
- Linux (Ubuntu/Fedora/Arch): compares installed version to latest GitHub release and installs `~/.local/bin/codex` when missing or outdated
10-
- Removes legacy `peon-ping` integration and local Peon artifacts from older Codex role versions
1110
- Ensures `~/.codex/AGENTS.md` is a symlink to `roles/codex/files/AGENTS.md`
1211
- Ensures `~/.codex/config.toml` is a symlink to `roles/codex/files/config.toml`
1312
- Symlinks custom skills from `roles/codex/files/skills/` into `~/.codex/skills/`

roles/codex/files/config.toml

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,13 @@ web_search = "live"
1212
model = "gpt-5.4"
1313
plan_mode_reasoning_effort = "xhigh"
1414
service_tier = "fast"
15+
suppress_unstable_features_warning = true
1516

1617
[features]
1718
guardian_approval = true
1819
multi_agent = true
1920
undo = true
20-
voice_transcription = false
21+
voice_transcription = true
2122
# # Improves compatibility on Linux hosts where Landlock is unavailable/restricted.
2223
# use_linux_sandbox_bwrap = true
2324

@@ -35,8 +36,8 @@ status_line = ["model-with-reasoning", "git-branch", "current-dir", "context-use
3536
theme = "catppuccin-mocha"
3637

3738
[mcp_servers.playwright]
38-
command = "npx"
39-
args = ["-y", "@playwright/mcp@latest"]
39+
command = "bunx"
40+
args = ["@playwright/mcp@latest"]
4041

4142
# Export Codex telemetry to OpenMonitor.
4243
# NOTE: Codex v0.106.0 does not interpolate env vars in [otel] fields.

roles/codex/tasks/MacOSX.yml

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,3 @@
33
community.general.homebrew_cask:
44
name: codex
55
state: present
6-
7-
- name: "{{ role_name }} | MacOSX | Remove legacy peon-ping"
8-
community.general.homebrew:
9-
name: peonping/tap/peon-ping
10-
state: absent
11-
12-
- name: "{{ role_name }} | MacOSX | Remove legacy peon-ping Homebrew tap"
13-
community.general.homebrew_tap:
14-
name: peonping/tap
15-
state: absent

roles/codex/tasks/main.yml

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -14,17 +14,6 @@
1414
state: directory
1515
mode: "0755"
1616

17-
- name: "{{ role_name }} | Configure | Remove legacy Peon artifacts"
18-
ansible.builtin.file:
19-
path: "{{ item }}"
20-
state: absent
21-
loop:
22-
- "{{ ansible_facts['env']['HOME'] }}/.codex/notify-peon.sh"
23-
- "{{ ansible_facts['env']['HOME'] }}/.openpeon"
24-
- "{{ ansible_facts['env']['HOME'] }}/.local/share/codex-peon"
25-
loop_control:
26-
label: "{{ item }}"
27-
2817
- name: "{{ role_name }} | Skills | Ensure ~/.codex/skills directory exists"
2918
ansible.builtin.file:
3019
path: "{{ codex_skills_dest }}"

roles/codex/uninstall.sh

Lines changed: 0 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -21,41 +21,13 @@ elif [ -L "$HOME/.codex/AGENTS.md" ]; then
2121
_task_done
2222
fi
2323

24-
if [ -L "$HOME/.codex/notify-peon.sh" ] || [ -f "$HOME/.codex/notify-peon.sh" ]; then
25-
__task "Removing legacy Codex peon notify hook"
26-
_cmd "rm -f $HOME/.codex/notify-peon.sh"
27-
_task_done
28-
fi
29-
30-
if [ -d "$HOME/.openpeon" ]; then
31-
__task "Removing legacy Peon data directory"
32-
_cmd "rm -rf $HOME/.openpeon"
33-
_task_done
34-
fi
35-
36-
if [ -d "$HOME/.local/share/codex-peon" ]; then
37-
__task "Removing legacy Codex peon install directory"
38-
_cmd "rm -rf $HOME/.local/share/codex-peon"
39-
_task_done
40-
fi
41-
4224
case "$(uname -s)" in
4325
Darwin)
4426
if command -v brew >/dev/null 2>&1 && brew list --cask codex >/dev/null 2>&1; then
4527
__task "Removing Codex via Homebrew cask"
4628
_cmd "brew uninstall --cask codex"
4729
_task_done
4830
fi
49-
if command -v brew >/dev/null 2>&1 && brew list peonping/tap/peon-ping >/dev/null 2>&1; then
50-
__task "Removing legacy peon-ping formula"
51-
_cmd "brew uninstall peonping/tap/peon-ping"
52-
_task_done
53-
fi
54-
if command -v brew >/dev/null 2>&1 && brew tap | grep -qx 'peonping/tap'; then
55-
__task "Removing legacy peon-ping tap"
56-
_cmd "brew untap peonping/tap"
57-
_task_done
58-
fi
5931
;;
6032
Linux)
6133
if [ -x "$HOME/.local/bin/codex" ]; then

roles/helm/tasks/main.yml

Lines changed: 31 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,34 @@
88
ansible.builtin.include_tasks: "{{ ansible_facts['distribution'] }}.yml"
99
when: distribution_config.stat.exists
1010

11-
- name: Helm | Add Helm Repos
12-
kubernetes.core.helm_repository:
13-
name: "{{ item.name }}"
14-
url: "{{ item.url }}"
15-
repo_state: present
16-
loop: "{{ helm.repos }}"
11+
- name: Helm | List configured repos
12+
ansible.builtin.command:
13+
argv:
14+
- helm
15+
- repo
16+
- list
17+
- --output
18+
- yaml
19+
register: helm_repo_list
20+
changed_when: false
21+
when: (helm.repos | default([])) | length > 0
22+
23+
- name: Helm | Build configured repo map
24+
ansible.builtin.set_fact:
25+
helm_configured_repos: "{{ (helm_repo_list.stdout | default('[]') | from_yaml | default([], true)) | items2dict(key_name='name', value_name='url') }}"
26+
when: (helm.repos | default([])) | length > 0
27+
28+
- name: Helm | Add Helm repos
29+
ansible.builtin.command:
30+
argv:
31+
- helm
32+
- repo
33+
- add
34+
- "{{ item.name }}"
35+
- "{{ item.url }}"
36+
- --force-update
37+
loop: "{{ helm.repos | default([]) }}"
38+
loop_control:
39+
label: "{{ item.name }}"
40+
when:
41+
- (helm_configured_repos | default({})).get(item.name, '') | regex_replace('/+$', '') != item.url | regex_replace('/+$', '')

0 commit comments

Comments
 (0)