From 61bc98578b20c949606115961639ce990e637a6c Mon Sep 17 00:00:00 2001 From: Tom Alexander Date: Tue, 5 Sep 2023 20:43:12 -0400 Subject: [PATCH] Install CPU microcode updates on Intel on FreeBSD and switch from wf-recorder to wl-screenrec. --- ansible/roles/cpu/files/intel_microcode_loader.conf | 6 ++++++ ansible/roles/cpu/tasks/freebsd_intel.yaml | 2 ++ .../files/poudriere.d/13amd64-default-framework-pkglist | 3 ++- ansible/roles/sway/files/sway_config_files/screenshots.conf | 6 +++--- ansible/roles/sway/tasks/common.yaml | 1 - ansible/roles/sway/tasks/freebsd.yaml | 1 + ansible/roles/sway/tasks/linux.yaml | 2 ++ .../waybar_scripts/waybar_recording_indicator_freebsd.bash | 2 +- .../zfs/files/increase_transaction_timeout_loader.conf | 2 +- 9 files changed, 18 insertions(+), 7 deletions(-) create mode 100644 ansible/roles/cpu/files/intel_microcode_loader.conf diff --git a/ansible/roles/cpu/files/intel_microcode_loader.conf b/ansible/roles/cpu/files/intel_microcode_loader.conf new file mode 100644 index 0000000..c5affb1 --- /dev/null +++ b/ansible/roles/cpu/files/intel_microcode_loader.conf @@ -0,0 +1,6 @@ +# Load Intel microcode at boot before the kernel does feature detection. +# +# The alternative would have been /etc/rc.conf with: +# microcode_update_enable="YES" +cpu_microcode_load="YES" +cpu_microcode_name="/boot/firmware/intel-ucode.bin" diff --git a/ansible/roles/cpu/tasks/freebsd_intel.yaml b/ansible/roles/cpu/tasks/freebsd_intel.yaml index adadda8..6ba3a69 100644 --- a/ansible/roles/cpu/tasks/freebsd_intel.yaml +++ b/ansible/roles/cpu/tasks/freebsd_intel.yaml @@ -3,6 +3,7 @@ name: - lscpu # need to kldload cpuctl - powermon # need to kldload cpuctl + - cpu-microcode-intel state: present - name: Install loader.conf @@ -16,6 +17,7 @@ - coretemp - cpuctl - aesni + - intel_microcode - name: Install service configuration copy: diff --git a/ansible/roles/poudriere/files/poudriere.d/13amd64-default-framework-pkglist b/ansible/roles/poudriere/files/poudriere.d/13amd64-default-framework-pkglist index fcaafd9..bb55a96 100644 --- a/ansible/roles/poudriere/files/poudriere.d/13amd64-default-framework-pkglist +++ b/ansible/roles/poudriere/files/poudriere.d/13amd64-default-framework-pkglist @@ -44,7 +44,7 @@ multimedia/v4l-utils multimedia/v4l_compat multimedia/vdpauinfo multimedia/webcamd -multimedia/wf-recorder +multimedia/wl-screenrec net-mgmt/arpscan net-mgmt/ipcalc net/google-cloud-sdk @@ -75,6 +75,7 @@ sysutils/ansible sysutils/ansible-sshjail sysutils/bhyve-firmware sysutils/btop +sysutils/cpu-microcode sysutils/ddrescue sysutils/dsbmd sysutils/exfat-utils diff --git a/ansible/roles/sway/files/sway_config_files/screenshots.conf b/ansible/roles/sway/files/sway_config_files/screenshots.conf index 97ae3f4..8fa1835 100644 --- a/ansible/roles/sway/files/sway_config_files/screenshots.conf +++ b/ansible/roles/sway/files/sway_config_files/screenshots.conf @@ -3,7 +3,7 @@ bindsym $mod+print exec slurp | grim -g - "$HOME/$(date +'screenshot_%Y-%m-%d-%H%M%S.png')" bindsym print exec grim "$HOME/$(date +'screenshot_%Y-%m-%d-%H%M%S.png')" # Maybe add --audio flag? can optionally specify specific device name from `pactl list sources | grep Name` -bindsym $mod+Shift+print exec wf-recorder -g "$(slurp)" -f "$HOME/$(date +'screencast_%Y-%m-%d-%H%M%S.mkv')" -c h264_vaapi -d /dev/dri/renderD128 -bindsym Shift+print exec wf-recorder -f "$HOME/$(date +'screencast_%Y-%m-%d-%H%M%S.mkv')" -c h264_vaapi -d /dev/dri/renderD128 -bindsym $mod+ctrl+Shift+print exec killall -SIGINT wf-recorder +bindsym $mod+Shift+print exec wl-screenrec -g "$(slurp)" -f "$HOME/$(date +'screencast_%Y-%m-%d-%H%M%S.mkv')" +bindsym Shift+print exec wl-screenrec -f "$HOME/$(date +'screencast_%Y-%m-%d-%H%M%S.mkv')" +bindsym $mod+ctrl+Shift+print exec killall -SIGINT wl-sceenrec # Need to make a hotkey to end the recording diff --git a/ansible/roles/sway/tasks/common.yaml b/ansible/roles/sway/tasks/common.yaml index 1034901..f8d9e79 100644 --- a/ansible/roles/sway/tasks/common.yaml +++ b/ansible/roles/sway/tasks/common.yaml @@ -13,7 +13,6 @@ - slurp # screen coordinates for screenshots - libnotify # mako doesn't seem to work without it - pcmanfm # For mounting drives - - wf-recorder # screen recording - xdg-desktop-portal - xdg-desktop-portal-wlr # screen sharing - wtype # for rofimoji to be able to insert characters diff --git a/ansible/roles/sway/tasks/freebsd.yaml b/ansible/roles/sway/tasks/freebsd.yaml index 20a1e03..4e7af4a 100644 --- a/ansible/roles/sway/tasks/freebsd.yaml +++ b/ansible/roles/sway/tasks/freebsd.yaml @@ -7,6 +7,7 @@ - wlogout # Log out prompt - xhost # to launch gparted with root permissions - wlvncc + - wl-screenrec # screen recording state: present - name: Install service configuration diff --git a/ansible/roles/sway/tasks/linux.yaml b/ansible/roles/sway/tasks/linux.yaml index 997bfae..a170576 100644 --- a/ansible/roles/sway/tasks/linux.yaml +++ b/ansible/roles/sway/tasks/linux.yaml @@ -7,6 +7,7 @@ loop: - wev - wlvncc-git + - wl-screenrec-git - name: Update cache when: buildaur.changed @@ -24,6 +25,7 @@ - xorg-xwayland - rofimoji - wlvncc-git + - wl-screenrec-git # screen recording - name: Install scripts copy: diff --git a/ansible/roles/waybar/files/waybar_scripts/waybar_recording_indicator_freebsd.bash b/ansible/roles/waybar/files/waybar_scripts/waybar_recording_indicator_freebsd.bash index 8056ccb..78c7fad 100644 --- a/ansible/roles/waybar/files/waybar_scripts/waybar_recording_indicator_freebsd.bash +++ b/ansible/roles/waybar/files/waybar_scripts/waybar_recording_indicator_freebsd.bash @@ -31,7 +31,7 @@ function main { fi fi - if pgrep -q wf-recorder; then + if pgrep -q wl-screenrec; then local is_running=1 else local is_running=0 diff --git a/ansible/roles/zfs/files/increase_transaction_timeout_loader.conf b/ansible/roles/zfs/files/increase_transaction_timeout_loader.conf index 16aa0a4..07ebb6a 100644 --- a/ansible/roles/zfs/files/increase_transaction_timeout_loader.conf +++ b/ansible/roles/zfs/files/increase_transaction_timeout_loader.conf @@ -1 +1 @@ -vfs.zfs.txg.timeout=20 +vfs.zfs.txg.timeout=30