diff --git a/roles/desk-copyq/README.md b/roles/desk-copyq/README.md new file mode 100644 index 00000000..bb8f5bd1 --- /dev/null +++ b/roles/desk-copyq/README.md @@ -0,0 +1,36 @@ +# CopyQ Role for Ansible + +## Overview +This role installs the CopyQ clipboard manager on Pacman-based systems (e.g. Arch Linux) and ensures it is started automatically for the current user. + +## Requirements +- Ansible 2.9 or higher +- Pacman package manager (Arch Linux or derivative) +- X11/Wayland desktop environment (for GUI) + +## Role Variables +No additional role variables are required. + +## Dependencies +No external dependencies. + +## Example Playbook + +```yaml +- hosts: all + roles: + - desk-copyq +``` + +## Further Resources + +- [CopyQ official site](https://hluk.github.io/CopyQ/) +- [Arch Wiki: Clipboard](https://wiki.archlinux.org/title/Clipboard) + +## Contributing + +Contributions are welcome. Please follow best practices. + +## Other Resources + +This role was created as part of a larger playbook. For more context on this role, you can refer to the related ChatGPT conversation [here](https://chat.openai.com/share/ae168ca0-5191-4bec-96a0-ffcfabca0024). diff --git a/roles/desk-copyq/meta/main.yml b/roles/desk-copyq/meta/main.yml new file mode 100644 index 00000000..2d46b80c --- /dev/null +++ b/roles/desk-copyq/meta/main.yml @@ -0,0 +1,27 @@ +--- +galaxy_info: + author: "Kevin Veen-Birchenbach" + description: "Installs CopyQ clipboard manager on Pacman-based systems and configures autostart for the current user." + license: "CyMaIS NonCommercial License (CNCL)" + license_url: "https://s.veen.world/cncl" + company: | + Kevin Veen-Birchenbach + Consulting & Coaching Solutions + https://www.veen.world + galaxy_tags: + - copyq + - clipboard + - manager + - gui + - cli + logo: + class: fa fa-clipboard + repository: "https://github.com/kevinveenbirkenbach/cymais" + issue_tracker_url: "https://github.com/kevinveenbirkenbach/cymais/issues" + documentation: "https://github.com/kevinveenbirkenbach/cymais/tree/main/roles/desk-copyq" + min_ansible_version: "2.9" + platforms: + - name: Archlinux + versions: + - all +dependencies: [] diff --git a/roles/desk-copyq/tasks/main.yml b/roles/desk-copyq/tasks/main.yml new file mode 100644 index 00000000..4b1d7372 --- /dev/null +++ b/roles/desk-copyq/tasks/main.yml @@ -0,0 +1,27 @@ +- name: Install CopyQ clipboard manager + community.general.pacman: + name: + - copyq + state: present + +- name: Ensure autostart directory exists + file: + path: "{{ ansible_env.HOME }}/.config/autostart" + state: directory + mode: '0755' + become: false + +- name: Add CopyQ to user autostart + copy: + dest: "{{ ansible_env.HOME }}/.config/autostart/copyq.desktop" + content: | + [Desktop Entry] + Type=Application + Exec=copyq + Hidden=false + NoDisplay=false + X-GNOME-Autostart-enabled=true + Name=CopyQ Clipboard Manager + Comment=Advanced clipboard manager with searchable and editable history + mode: '0644' + become: false diff --git a/roles/desk-copyq/vars/main.yml b/roles/desk-copyq/vars/main.yml new file mode 100644 index 00000000..689cdce4 --- /dev/null +++ b/roles/desk-copyq/vars/main.yml @@ -0,0 +1 @@ +application_id: desk-copyq