diff options
-rw-r--r-- | roles/_workstation/smartcard/tasks/main.yml | 21 | ||||
-rw-r--r-- | roles/_workstation/smartcard/templates/pcscd-restart.service.j2 | 10 | ||||
-rw-r--r-- | roles/_workstation/smartcard/templates/pcscd-sleep.service.j2 | 10 | ||||
-rw-r--r-- | site.workstation.yml | 1 |
4 files changed, 37 insertions, 5 deletions
diff --git a/roles/_workstation/smartcard/tasks/main.yml b/roles/_workstation/smartcard/tasks/main.yml index 4037b5c..8baea2e 100644 --- a/roles/_workstation/smartcard/tasks/main.yml +++ b/roles/_workstation/smartcard/tasks/main.yml @@ -9,8 +9,19 @@ name: "{{ smartcard_packages }}" state: present -# - name: start and enable pcscd service -# ansible.builtin.service: -# name: pcscd -# state: started -# enabled: true +- name: start and enable pcscd service + ansible.builtin.service: + name: pcscd + state: started + enabled: true + +- name: generate pcscd-restart system service + ansible.builtin.template: + src: pcscd-restart.service.j2 + dest: "/etc/systemd/system/pcscd-restart.service" + mode: "0755" + +- name: enable pcscd-restart system service + ansible.builtin.service: + name: pcscd-restart.service + enabled: true diff --git a/roles/_workstation/smartcard/templates/pcscd-restart.service.j2 b/roles/_workstation/smartcard/templates/pcscd-restart.service.j2 new file mode 100644 index 0000000..eab6dac --- /dev/null +++ b/roles/_workstation/smartcard/templates/pcscd-restart.service.j2 @@ -0,0 +1,10 @@ +[Unit] +Description=restart pcscd on sleep +After=suspend.target + +[Service] +Type=oneshot +ExecStart=/usr/bin/systemctl --no-block restart pcscd.service + +[Install] +WantedBy=suspend.target diff --git a/roles/_workstation/smartcard/templates/pcscd-sleep.service.j2 b/roles/_workstation/smartcard/templates/pcscd-sleep.service.j2 new file mode 100644 index 0000000..14848ae --- /dev/null +++ b/roles/_workstation/smartcard/templates/pcscd-sleep.service.j2 @@ -0,0 +1,10 @@ +[Unit] +Description=stop pcscd on sleep +After=sleep.target + +[Service] +Type=oneshot +ExecStart=/usr/bin/systemctl --no-block stop pcscd.service + +[Install] +WantedBy=sleep.target diff --git a/site.workstation.yml b/site.workstation.yml index 76fc3a6..16cc9be 100644 --- a/site.workstation.yml +++ b/site.workstation.yml @@ -14,6 +14,7 @@ syncthing_workstation_user: "{{ _workstation_user }}" yay_workstation_user: "{{ _workstation_user }}" makepkg_user: "{{ _workstation_user }}" + smartcard_user: "{{ _workstation_user }}" pre_tasks: - name: verify running as root |