summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--roles/nautilus/defaults/main.yml5
-rw-r--r--roles/nautilus/meta/argument_specs.yml32
-rw-r--r--roles/nautilus/meta/main.yml13
-rw-r--r--roles/nautilus/tasks/main.yml36
4 files changed, 86 insertions, 0 deletions
diff --git a/roles/nautilus/defaults/main.yml b/roles/nautilus/defaults/main.yml
new file mode 100644
index 00000000..c8f7d413
--- /dev/null
+++ b/roles/nautilus/defaults/main.yml
@@ -0,0 +1,5 @@
+---
+nautilus_folder_viewer: "list-view"
+nautilus_show_hidden_files: false
+nautilus_sort_order: "name"
+nautilus_always_use_location_entry: false
diff --git a/roles/nautilus/meta/argument_specs.yml b/roles/nautilus/meta/argument_specs.yml
new file mode 100644
index 00000000..73d20fcd
--- /dev/null
+++ b/roles/nautilus/meta/argument_specs.yml
@@ -0,0 +1,32 @@
+---
+argument_specs:
+ main:
+ short_description: "Install Nautilus file manager on ArchLinux"
+ description: "Install Nautilus file manager on ArchLinux"
+ options:
+ nautilus_folder_viewer:
+ type: "str"
+ description: "The default folder viewer mode"
+ default: "list-view"
+ choices:
+ - "list-view"
+ - "icon-view"
+ nautilus_show_hidden_files:
+ type: "bool"
+ description: "Whether to show hidden files by default"
+ default: false
+ nautilus_sort_order:
+ type: "str"
+ description: "The default sort order for files"
+ default: "name"
+ choices:
+ - "name"
+ - "size"
+ - "type"
+ - "date_modified"
+ - "date_accessed"
+ - "date_created"
+ nautilus_always_use_location_entry:
+ type: "bool"
+ description: "Whether to show the full path in the location bar"
+ default: false
diff --git a/roles/nautilus/meta/main.yml b/roles/nautilus/meta/main.yml
new file mode 100644
index 00000000..3a63f0b8
--- /dev/null
+++ b/roles/nautilus/meta/main.yml
@@ -0,0 +1,13 @@
+---
+dependencies:
+ - role: "git"
+galaxy_info:
+ author: "a14m"
+ description: "Install Nautilus file manager on ArchLinux"
+ company: "kartoffeln.work GmbH."
+ license: "MIT"
+ min_ansible_version: "2.18"
+ platforms:
+ - name: "ArchLinux"
+ versions:
+ - "all"
diff --git a/roles/nautilus/tasks/main.yml b/roles/nautilus/tasks/main.yml
new file mode 100644
index 00000000..82b6304a
--- /dev/null
+++ b/roles/nautilus/tasks/main.yml
@@ -0,0 +1,36 @@
+---
+- name: "Ensure nautilus packages are installed"
+ become: true
+ ansible.builtin.package:
+ name: "{{ item }}"
+ state: "present"
+ loop:
+ - "nautilus"
+
+- name: "Configure nautilus preferences"
+ ansible.builtin.command:
+ cmd: "gsettings set {{ item.key }} {{ item.value }}"
+ environment:
+ DBUS_SESSION_BUS_ADDRESS: "unix:path=/run/user/{{ ansible_user_uid }}/bus"
+ changed_when: false
+ loop:
+ - key: "org.gnome.nautilus.preferences default-folder-viewer"
+ value: "'{{ nautilus_folder_viewer }}'"
+ - key: "org.gnome.nautilus.preferences show-hidden-files"
+ value: "{{ nautilus_show_hidden_files | lower }}"
+ - key: "org.gnome.nautilus.preferences default-sort-order"
+ value: "'{{ nautilus_sort_order }}'"
+ - key: "org.gnome.nautilus.preferences always-use-location-entry"
+ value: "{{ nautilus_always_use_location_entry | lower }}"
+
+- name: "Configure nautilus default folders"
+ ansible.builtin.command:
+ cmd: "xdg-user-dirs-update --set {{ item.name }} {{ item.path }}"
+ changed_when: false
+ loop:
+ - { name: "DESKTOP", path: "{{ ansible_env.HOME }}/Desktop" }
+ - { name: "DOCUMENTS", path: "{{ ansible_env.HOME }}/Documents" }
+ - { name: "DOWNLOAD", path: "{{ ansible_env.HOME }}/Downloads" }
+ - { name: "MUSIC", path: "{{ ansible_env.HOME }}/Music" }
+ - { name: "PICTURES", path: "{{ ansible_env.HOME }}/Pictures" }
+ - { name: "VIDEOS", path: "{{ ansible_env.HOME }}/Videos" }