Skip to content

Commit c276738

Browse files
author
Derek
committed
feat: Add Nemo file manager and Window State Manager extension
- Install Nemo and set as default file manager (replaces Nautilus) - Add Window State Manager extension to remember/restore window positions - Works with both winlike and maclike desktop configurations
1 parent beb5315 commit c276738

3 files changed

Lines changed: 42 additions & 2 deletions

File tree

ansible/roles/dfe_developer/tasks/gnome_maclike.yml

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
# - Dash to Dock: macOS-style dock
77
# - Logo Menu: macOS-style Apple menu replacement
88
# - Compiz Magic Lamp Effect: macOS-style minimize animation
9+
# - Window State Manager: Remember/restore window positions across sessions
910
# - System Monitor: CPU/Memory in panel (from gnome_common.yml)
1011

1112
# ============================================================================
@@ -60,14 +61,25 @@
6061
- magic_lamp_install.rc != 0
6162
- "'already installed' not in magic_lamp_install.stdout"
6263

64+
- name: Install Window State Manager extension via gext
65+
ansible.builtin.command:
66+
cmd: "{{ dfe_user_home }}/.local/bin/gext -F install window-state-manager@kishorv06.github.io"
67+
become: true
68+
become_user: "{{ dfe_actual_user }}"
69+
register: window_state_install
70+
changed_when: "'already installed' not in window_state_install.stdout"
71+
failed_when:
72+
- window_state_install.rc != 0
73+
- "'already installed' not in window_state_install.stdout"
74+
6375
# ============================================================================
6476
# ENABLE EXTENSIONS VIA DCONF
6577
# ============================================================================
6678

6779
- name: Enable macOS-like extensions
6880
community.general.dconf:
6981
key: "/org/gnome/shell/enabled-extensions"
70-
value: "['system-monitor@gnome-shell-extensions.gcampax.github.com', 'dash-to-dock@micxgx.gmail.com', 'logomenu@aryan_k', 'compiz-alike-magic-lamp-effect@hermes83.github.com']"
82+
value: "['system-monitor@gnome-shell-extensions.gcampax.github.com', 'dash-to-dock@micxgx.gmail.com', 'logomenu@aryan_k', 'compiz-alike-magic-lamp-effect@hermes83.github.com', 'window-state-manager@kishorv06.github.io']"
7183
state: present
7284
become: false
7385

ansible/roles/dfe_developer/tasks/gnome_winlike.yml

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
#
55
# Extensions (all installed from extensions.gnome.org via gext):
66
# - Dash to Panel: Windows-style taskbar at bottom with Show Applications button
7+
# - Window State Manager: Remember/restore window positions across sessions
78
# - System Monitor: CPU/Memory in panel (from gnome_common.yml)
89

910
# ============================================================================
@@ -48,14 +49,29 @@
4849
changed_when: false
4950
failed_when: false
5051

52+
# ============================================================================
53+
# INSTALL WINDOW STATE MANAGER (remember/restore window positions)
54+
# ============================================================================
55+
56+
- name: Install Window State Manager extension via gext
57+
ansible.builtin.command:
58+
cmd: "{{ dfe_user_home }}/.local/bin/gext -F install window-state-manager@kishorv06.github.io"
59+
become: true
60+
become_user: "{{ dfe_actual_user }}"
61+
register: window_state_install
62+
changed_when: "'already installed' not in window_state_install.stdout"
63+
failed_when:
64+
- window_state_install.rc != 0
65+
- "'already installed' not in window_state_install.stdout"
66+
5167
# ============================================================================
5268
# ENABLE EXTENSIONS VIA DCONF
5369
# ============================================================================
5470

5571
- name: Enable Windows-like extensions
5672
community.general.dconf:
5773
key: "/org/gnome/shell/enabled-extensions"
58-
value: "['system-monitor@gnome-shell-extensions.gcampax.github.com', 'dash-to-panel@jderose9.github.com']"
74+
value: "['system-monitor@gnome-shell-extensions.gcampax.github.com', 'dash-to-panel@jderose9.github.com', 'window-state-manager@kishorv06.github.io']"
5975
state: present
6076
become: false
6177

ansible/roles/dfe_developer/tasks/utilities.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@
6161
- postgresql
6262
- ansible
6363
- parallel
64+
- nemo # file manager (better than Nautilus)
6465
state: present
6566
when: ansible_distribution == 'Fedora'
6667

@@ -92,9 +93,20 @@
9293
- postgresql-client
9394
- ansible
9495
- parallel
96+
- nemo # file manager (better than Nautilus)
9597
state: present
9698
when: ansible_distribution == 'Ubuntu'
9799

100+
# Set Nemo as default file manager (replaces Nautilus)
101+
- name: Set Nemo as default file manager
102+
ansible.builtin.command:
103+
cmd: xdg-mime default nemo.desktop inode/directory
104+
become: false
105+
changed_when: false
106+
when:
107+
- ansible_distribution in ['Fedora', 'Ubuntu']
108+
- dfe_has_gnome | default(false)
109+
98110
# yq - Binary download
99111
- name: Download yq
100112
ansible.builtin.get_url:

0 commit comments

Comments
 (0)