Optimized desk-copyq draft and implemented server to use in gnome

This commit is contained in:
Kevin Veen-Birkenbach 2025-07-20 11:20:49 +02:00
parent be675d5f9e
commit e84c7e5612
No known key found for this signature in database
GPG Key ID: 44D8F11FD62F878E
5 changed files with 46 additions and 18 deletions

View File

@ -1,4 +1,4 @@
# CopyQ Role for Ansible
# CopyQ
## 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.
@ -8,20 +8,6 @@ This role installs the CopyQ clipboard manager on Pacman-based systems (e.g. Arc
- 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/)

View File

@ -0,0 +1,2 @@
# Set to true to install and start the CopyQ server as a systemd user service
server_enabled: true

View File

@ -1,7 +1,6 @@
- name: Install CopyQ clipboard manager
community.general.pacman:
name:
- copyq
name: copyq
state: present
- name: Ensure autostart directory exists
@ -25,3 +24,7 @@
Comment=Advanced clipboard manager with searchable and editable history
mode: '0644'
become: false
- name: Include CopyQ server systemduser service setup
import_tasks: server.yml
when: copyq_server_enabled | bool

View File

@ -0,0 +1,36 @@
- name: Ensure systemd user unit directory exists
file:
path: "{{ ansible_env.HOME }}/.config/systemd/user"
state: directory
mode: '0755'
become: false
- name: Install CopyQ user service unit
copy:
dest: "{{ ansible_env.HOME }}/.config/systemd/user/copyq.service"
content: |
[Unit]
Description=CopyQ Clipboard Manager Server
[Service]
ExecStart=/usr/bin/copyq --start-server
Restart=on-failure
[Install]
WantedBy=default.target
mode: '0644'
become: false
- name: Reload systemd user daemon
systemd:
user: true
daemon_reload: yes
become: false
- name: Enable and start CopyQ user service
systemd:
name: copyq.service
user: true
enabled: yes
state: started
become: false

View File

@ -1 +1,2 @@
application_id: desk-copyq
application_id: desk-copyq
copyq_server_enabled: "{{ applications | get_app_conf(application_id, 'server_enabled') }}"