aboutsummaryrefslogtreecommitdiffstats
path: root/roles/workstation/tasks/_openbsd.yml
diff options
context:
space:
mode:
authorbinary <me@rgoncalves.se>2021-02-17 16:54:09 +0100
committerbinary <me@rgoncalves.se>2021-02-17 16:54:09 +0100
commite3a63f27b69b18b59ff61c563a31de8b7fbe8482 (patch)
tree9788e25e51654df8065dee2f5e273be951aa22db /roles/workstation/tasks/_openbsd.yml
parent473987f9e0ed2d6fe7585ea30634ed8d0a1dc721 (diff)
downloadinfrastructure-e3a63f27b69b18b59ff61c563a31de8b7fbe8482.tar.gz
Add openbsd setup for workstation
Diffstat (limited to 'roles/workstation/tasks/_openbsd.yml')
-rw-r--r--roles/workstation/tasks/_openbsd.yml90
1 files changed, 90 insertions, 0 deletions
diff --git a/roles/workstation/tasks/_openbsd.yml b/roles/workstation/tasks/_openbsd.yml
new file mode 100644
index 0000000..48630bb
--- /dev/null
+++ b/roles/workstation/tasks/_openbsd.yml
@@ -0,0 +1,90 @@
+
+# workstation ~~ roles/workstation/tasks/main.yml
+# init openbsd based workstation
+
+---
+
+- name: install packages
+ shell: pkg_add -z {{ item | join(" ") }}
+ loop:
+ - "{{ pkgs_common }}"
+ - "{{ pkgs_openbsd }}"
+ register: out
+ tags: ws_tag_pkgs
+
+- name: packages installation output
+ debug:
+ msg: |
+ {% for item in out.results %}
+ - {{ item.cmd }}
+ {% for type in ["stdout_lines", "stderr_lines"] if item[type] %}
+ -- {{ type }}
+ {% for line in item[type] %}
+ --- {{ line }}
+ {% endfor %}
+ {% endfor %}
+ {% endfor %}
+ when: out is defined
+
+- name: ensure wsconsctl config file exists
+ file:
+ path: /etc/wsconsctl.conf
+ owner: root
+ group: wheel
+ mode: 0644
+ state: touch
+
+- name: append configuration to wsconsctl
+ lineinfile:
+ path: /etc/wsconsctl.conf
+ regexp: "^{{ item[0] }}"
+ line: "{{ item[0] }}={{ item[1] }}"
+ loop:
+ - [screen.brightness, 80]
+ - [keyboard.repeat.del1, 180]
+ - [keyboard.repeat.deln, 50]
+ - [keyboard.bell.volume, 0]
+ - [mouse.tp.tapping, 1]
+
+- name: ensure Xorg subdirectory for configuration exists
+ file:
+ path: /etc/X11/xorg.conf.d
+ owner: root
+ mode: 0644
+ state: directory
+
+- name: generate Xorg configuration for intel gpu and screen tearing
+ template:
+ src: etc-X11-xorg.conf.d-intel.conf
+ dest: /etc/X11/xorg.conf.d/intel.conf
+
+- name: ensure sysctl configuration file exists
+ file:
+ path: /etc/sysctl.conf
+ owner: root
+ mode: 0644
+
+- name: ensure sysctl memory optimizations
+ blockinfile:
+ path: /etc/sysctl.conf
+ block: |
+ kern.shminfo.shmall=3145728
+ kern.shminfo.shmmax=1073741823
+ kern.shminfo.shmmni=1024
+ kern.shminfo.shmseg=1024
+ kern.seminfo.semmns=4096
+ kern.seminfo.semmni=1024
+ marker: "# memory - managed by Ansible"
+
+- name: ensure sysctl process optimizations
+ blockinfile:
+ path: /etc/sysctl.conf
+ block: |
+ kern.maxfiles=102400
+ kern.maxproc=32768
+ kern.maxfiles=65535
+ kern.bufcachepercent=90
+ kern.maxvnodes=262144
+ kern.somaxconn=2048
+ marker: "# process - managed by Ansible"
+
remember that computers suck.