From a1ca4a2d859cde324f6bf52385b7b727c151a68e Mon Sep 17 00:00:00 2001 From: Ahmed Abdelhalim Date: Thu, 11 Dec 2025 23:56:04 +0100 Subject: Add the nautilus role (dependency of hyprland) --- roles/nautilus/defaults/main.yml | 5 +++++ roles/nautilus/meta/argument_specs.yml | 32 ++++++++++++++++++++++++++++++ roles/nautilus/meta/main.yml | 13 ++++++++++++ roles/nautilus/tasks/main.yml | 36 ++++++++++++++++++++++++++++++++++ 4 files changed, 86 insertions(+) create mode 100644 roles/nautilus/defaults/main.yml create mode 100644 roles/nautilus/meta/argument_specs.yml create mode 100644 roles/nautilus/meta/main.yml create mode 100644 roles/nautilus/tasks/main.yml 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" } -- cgit v1.2.3