Compare commits
13 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
06de3fb0ac | ||
|
eaa05e13d0 | ||
|
98f6ca10ff | ||
|
675652044f | ||
|
c901defbf3 | ||
|
8bf7b7d489 | ||
|
6e772f1137 | ||
|
d7f99659f1 | ||
|
023e362896 | ||
|
c66327a31f | ||
|
423d057abd | ||
|
6061f61c16 | ||
|
f6bc39a7fb |
@ -18,6 +18,7 @@ hwpstate: false
|
||||
build_user:
|
||||
name: talexander
|
||||
group: talexander
|
||||
devfs_rules: "homeserver_devfs.rules"
|
||||
jail_zfs_dataset: zmass/encrypted/jails
|
||||
jail_zfs_dataset_mountpoint: /jail/main
|
||||
jail_canmount: "on"
|
||||
|
@ -14,9 +14,9 @@ loader_conf: "odofreebsd_loader.conf"
|
||||
install_graphics: true
|
||||
graphics_driver: "intel"
|
||||
cputype: "intel"
|
||||
cpu_opt: tigerlake
|
||||
cpu_opt: skylake
|
||||
hwpstate: true
|
||||
cores: 8
|
||||
cores: 4
|
||||
build_user:
|
||||
name: talexander
|
||||
group: talexander
|
||||
|
@ -32,7 +32,7 @@ enabled_wireguard:
|
||||
- colo
|
||||
cputype: "intel"
|
||||
hwpstate: true
|
||||
cores: 8
|
||||
cores: 4
|
||||
sway_conf_files:
|
||||
- rofimoji
|
||||
docker_storage_driver: overlay2 # alternatively zfs
|
||||
|
35
ansible/environments/laptop/host_vars/pixellinux
Normal file
35
ansible/environments/laptop/host_vars/pixellinux
Normal file
@ -0,0 +1,35 @@
|
||||
os_flavor: "linux"
|
||||
users:
|
||||
talexander:
|
||||
initialize: true
|
||||
uid: 11235
|
||||
gid: 1000
|
||||
groups:
|
||||
- name: wheel
|
||||
- name: users
|
||||
- name: docker
|
||||
- name: libvirt
|
||||
- name: uucp
|
||||
authorized_keys:
|
||||
- yubikey
|
||||
- main_fido
|
||||
- backup_fido
|
||||
- homeassistant
|
||||
gitconfig: "gitconfig_home"
|
||||
zfs_snapshot_datasets:
|
||||
- path: zroot/linux/archmain/be
|
||||
install_graphics: true
|
||||
graphics_driver: "intel"
|
||||
build_user:
|
||||
name: talexander
|
||||
group: talexander
|
||||
wireguard_directory: pixel
|
||||
enabled_wireguard:
|
||||
- wgh
|
||||
cputype: "intel"
|
||||
hwpstate: true
|
||||
cores: 4
|
||||
sway_conf_files:
|
||||
- rofimoji
|
||||
docker_storage_driver: overlay2 # alternatively zfs
|
||||
docker_zfs_dataset: zroot/linux/archmain/docker
|
@ -1,3 +1,4 @@
|
||||
[gui]
|
||||
odolinux ansible_connection=local ansible_host=127.0.0.1
|
||||
odofreebsd ansible_connection=local ansible_host=127.0.0.1
|
||||
pixellinux ansible_connection=local ansible_host=127.0.0.1
|
||||
|
@ -1,5 +1,5 @@
|
||||
os_flavor: "freebsd"
|
||||
cpu_opt: tigerlake
|
||||
cpu_opt: skylake
|
||||
build_user:
|
||||
name: root
|
||||
group: wheel
|
||||
|
@ -52,6 +52,7 @@
|
||||
- javascript
|
||||
- launch_keyboard
|
||||
- lvfs
|
||||
- restaurant_health_rating
|
||||
|
||||
- hosts: nat_dhcp:homeserver_nat_dhcp:mrmanager_nat_dhcp
|
||||
vars:
|
||||
@ -120,6 +121,12 @@
|
||||
roles:
|
||||
- framework_laptop
|
||||
|
||||
- hosts: pixellinux
|
||||
vars:
|
||||
ansible_become: True
|
||||
roles:
|
||||
- pixelbook
|
||||
|
||||
- hosts: odofreebsd
|
||||
vars:
|
||||
ansible_become: True
|
||||
@ -135,3 +142,9 @@
|
||||
- fstab
|
||||
- build
|
||||
- freebsd_update_server
|
||||
|
||||
- hosts: homeserver
|
||||
vars:
|
||||
ansible_become: True
|
||||
roles:
|
||||
- homeserver
|
||||
|
@ -1,4 +1,3 @@
|
||||
# $FreeBSD$
|
||||
#
|
||||
# Automounter master map, see auto_master(5) for details.
|
||||
#
|
||||
|
@ -7,7 +7,6 @@
|
||||
# This file controls resource limits, accounting limits and
|
||||
# default user environment settings.
|
||||
#
|
||||
# $FreeBSD$
|
||||
#
|
||||
|
||||
# Default settings effectively disable resource limits, see the
|
||||
|
@ -1,34 +1,27 @@
|
||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||
|
||||
mDMEXZwWGhYJKwYBBAHaRw8BAQdAfv7qozKkmf4D+5PDzADsMm4aAKDGLha7+Cu0
|
||||
0H+RsWG0HVRvbSBBbGV4YW5kZXIgPHRvbUBmaXp6LmJ1eno+iJAEExYIADgWIQS4
|
||||
SBWTY8KHeReVS+En3kDZuEVcGwUCXZwWGgIbAwULCQgHAgYVCAkKCwIEFgIDAQIe
|
||||
AQIXgAAKCRAn3kDZuEVcG9glAQDX3Bzaz9sQpycc40LeLxSKQsWplfJigfr8wWOg
|
||||
C15TywEAqkTtCrTNsltdZERLMre7qnv/6RSo54OW0C4pdN7UUAa0HlRvbSBBbGV4
|
||||
YW5kZXIgPHdvcmtAZml6ei5idXp6PoiQBBMWCAA4FiEEuEgVk2PCh3kXlUvhJ95A
|
||||
2bhFXBsFAl+w+R0CGwMFCwkIBwIGFQoJCAsCBBYCAwECHgECF4AACgkQJ95A2bhF
|
||||
XBt6fgD+NOYnw9gz5K/q3H5LE/JvqzCSHezJmeGgif0CuU4m1/MA+gPDKME7syEt
|
||||
JsTpELEMrxWWpDW0tD/W1iJE7roGYPQPtB9Ub20gQWxleGFuZGVyIDx0b21AaGFy
|
||||
bW9uaWMuYWk+iJAEExYIADgWIQS4SBWTY8KHeReVS+En3kDZuEVcGwUCX7D5RAIb
|
||||
AwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAAKCRAn3kDZuEVcGzjDAP9pM1ScstOk
|
||||
ti+oRAsNSk8qsjIsCT9O5voDS0Q7plWlcwD/btKVFO9tPLsXhyvdB+NSwueVs7TA
|
||||
kRVjlW3hktpefg24OARdnBYaEgorBgEEAZdVAQUBAQdArbTYQgDBMG7EBFTKA6+f
|
||||
4CWgwl26Lf2b6cyCGfUw2j4DAQgHiHgEGBYIACAWIQS4SBWTY8KHeReVS+En3kDZ
|
||||
uEVcGwUCXZwWGgIbDAAKCRAn3kDZuEVcG03MAQCrkjrE+MhtvbfGaHGHlwz9QnF0
|
||||
Z519YzK8Xr8m0O+09QEA9BFCfkAzBM4D4JKeWJh/tmN9U6UexzLrRdY+W9cugAm4
|
||||
MwRdnBbKFgkrBgEEAdpHDwEBB0A/IgvgQaDhPkk72raSlUPLZaMyJfPedlfBhbgY
|
||||
uhNiSIj1BBgWCAAmAhsCFiEEuEgVk2PCh3kXlUvhJ95A2bhFXBsFAl+w+hYFCQe4
|
||||
fcwAgXYgBBkWCAAdFiEEgeZEOZZ1UC6xJRa606F5yaU8Dt4FAl2cFsoACgkQ06F5
|
||||
yaU8Dt6MngD+Krs3aYyHH6i85ebVESgBI8XeXhgACM4exepw+0UcoYkBAKK4DvV3
|
||||
oJD6o1ku6Rr8pUH962SQm8PO9pO2JBBAb6ADCRAn3kDZuEVcG9uAAP43vUsbe24/
|
||||
6tjEezAW0a4L2E1u4HNU8t53lolngs1kswEAy1HBdYEMR9TovX/kMeBHLcz1J2pM
|
||||
VRSV0JnJhj5eZwa4MwRdnBcBFgkrBgEEAdpHDwEBB0BrvpOZa4q6JHVuc1XUVQTq
|
||||
hDgLwD5SJBvzHSTXPYOZMoh+BBgWCAAmAhsgFiEEuEgVk2PCh3kXlUvhJ95A2bhF
|
||||
XBsFAl+w+hYFCQe4fZUACgkQJ95A2bhFXBs3NgEA3SFYTgRVstidfoEpEZV4DdSL
|
||||
kXaOwN3Eyba4UniClyMA/2CCxQt24vu19TyvUtOXWCp9Zi8SyIqoeiXQ4ZmhhnQO
|
||||
uDgEXZwXKBIKKwYBBAGXVQEFAQEHQA7S3cFTEu6iROopVyF4UBl3hQrEAbOc9CW+
|
||||
xXKFZYgSAwEIB4h+BBgWCAAmAhsMFiEEuEgVk2PCh3kXlUvhJ95A2bhFXBsFAl+w
|
||||
+hcFCQe4fW4ACgkQJ95A2bhFXBtUXAEAyEJCUNVSJ7qvQv5IXuwbYTX2Mh7JU3+F
|
||||
GJHO7AWBXCQA/2aLAi9kYmz9ba770XYwTeBZIv9Y6UIwIwVmFdYHC/EM
|
||||
=a/z4
|
||||
0H+RsWG0HlRvbSBBbGV4YW5kZXIgPHdvcmtAZml6ei5idXp6PoiQBBMWCAA4FiEE
|
||||
uEgVk2PCh3kXlUvhJ95A2bhFXBsFAl+w+R0CGwMFCwkIBwIGFQoJCAsCBBYCAwEC
|
||||
HgECF4AACgkQJ95A2bhFXBt6fgD+NOYnw9gz5K/q3H5LE/JvqzCSHezJmeGgif0C
|
||||
uU4m1/MA+gPDKME7syEtJsTpELEMrxWWpDW0tD/W1iJE7roGYPQPtB1Ub20gQWxl
|
||||
eGFuZGVyIDx0b21AZml6ei5idXp6PoiQBBMWCAA4FiEEuEgVk2PCh3kXlUvhJ95A
|
||||
2bhFXBsFAl2cFhoCGwMFCwkIBwIGFQgJCgsCBBYCAwECHgECF4AACgkQJ95A2bhF
|
||||
XBvYJQEA19wc2s/bEKcnHONC3i8UikLFqZXyYoH6/MFjoAteU8sBAKpE7Qq0zbJb
|
||||
XWRESzK3u6p7/+kUqOeDltAuKXTe1FAGuDMEXZwWyhYJKwYBBAHaRw8BAQdAPyIL
|
||||
4EGg4T5JO9q2kpVDy2WjMiXz3nZXwYW4GLoTYkiI9QQYFggAJgIbAhYhBLhIFZNj
|
||||
wod5F5VL4SfeQNm4RVwbBQJlC4ZhBQkLMdaXAIF2IAQZFggAHRYhBIHmRDmWdVAu
|
||||
sSUWutOhecmlPA7eBQJdnBbKAAoJENOhecmlPA7ejJ4A/iq7N2mMhx+ovOXm1REo
|
||||
ASPF3l4YAAjOHsXqcPtFHKGJAQCiuA71d6CQ+qNZLuka/KVB/etkkJvDzvaTtiQQ
|
||||
QG+gAwkQJ95A2bhFXBtRDgEAqymMavroD5c/4+M/EZ3/d8wxfA9E3Fb/1mt4c2Zr
|
||||
NnkBAKYOM+pz/pncFnV+kF7h7TQEEYuGw1JhJVT/duA4lwsLuDMEXZwXARYJKwYB
|
||||
BAHaRw8BAQdAa76TmWuKuiR1bnNV1FUE6oQ4C8A+UiQb8x0k1z2DmTKIfgQYFggA
|
||||
JgIbIBYhBLhIFZNjwod5F5VL4SfeQNm4RVwbBQJlC4ZwBQkLMdZgAAoJECfeQNm4
|
||||
RVwb8TkA/RkBu9Ev8iDE5nvn8YF8FRiY56Z5d+SBPG4VvrCzXrmlAP46wUjIRpkM
|
||||
rTbb1GMbvYnkeOrBs/qiWjEtHHc3ZLMWD7g4BF2cFygSCisGAQQBl1UBBQEBB0AO
|
||||
0t3BUxLuokTqKVcheFAZd4UKxAGznPQlvsVyhWWIEgMBCAeIfgQYFggAJgIbDBYh
|
||||
BLhIFZNjwod5F5VL4SfeQNm4RVwbBQJlC4ZwBQkLMdY5AAoJECfeQNm4RVwbXscA
|
||||
/A8zRRTCwQKxJ8iz5jmTcVFAhl2vD781Dtv8NvcWd5t8APwIwcuFVZZA3yayhIxi
|
||||
3aqYpMRxpn2t6Nswax1MIM8DBQ==
|
||||
=dzEV
|
||||
-----END PGP PUBLIC KEY BLOCK-----
|
||||
|
@ -4,27 +4,27 @@
|
||||
- powertop
|
||||
state: present
|
||||
|
||||
- name: Install tmpfiles.d configuration
|
||||
copy:
|
||||
src: "files/{{ item }}_tmpfiles.conf"
|
||||
dest: "/etc/tmpfiles.d/{{ item }}.conf"
|
||||
mode: 0644
|
||||
owner: root
|
||||
group: wheel
|
||||
loop:
|
||||
- disable_turboboost
|
||||
# - name: Install tmpfiles.d configuration
|
||||
# copy:
|
||||
# src: "files/{{ item }}_tmpfiles.conf"
|
||||
# dest: "/etc/tmpfiles.d/{{ item }}.conf"
|
||||
# mode: 0644
|
||||
# owner: root
|
||||
# group: wheel
|
||||
# loop:
|
||||
# - disable_turboboost
|
||||
|
||||
- name: Favor energy efficiency for Speed Shift
|
||||
when: hwpstate is defined and hwpstate and cores is defined
|
||||
template:
|
||||
src: "templates/{{ item.src }}.j2"
|
||||
dest: "{{ item.dest }}"
|
||||
mode: 0755
|
||||
owner: root
|
||||
group: wheel
|
||||
loop:
|
||||
- src: energy_performance_preference.conf
|
||||
dest: /etc/tmpfiles.d/energy_performance_preference.conf
|
||||
# - name: Favor energy efficiency for Speed Shift
|
||||
# when: hwpstate is defined and hwpstate and cores is defined
|
||||
# template:
|
||||
# src: "templates/{{ item.src }}.j2"
|
||||
# dest: "{{ item.dest }}"
|
||||
# mode: 0755
|
||||
# owner: root
|
||||
# group: wheel
|
||||
# loop:
|
||||
# - src: energy_performance_preference.conf
|
||||
# dest: /etc/tmpfiles.d/energy_performance_preference.conf
|
||||
|
||||
- name: Install scripts
|
||||
when: hwpstate is defined and hwpstate
|
||||
|
19
ansible/roles/devfs/files/homeserver_devfs.rules
Normal file
19
ansible/roles/devfs/files/homeserver_devfs.rules
Normal file
@ -0,0 +1,19 @@
|
||||
# [localrules=10]
|
||||
# add path 'input/*' mode 0660 group video
|
||||
# add path 'usb/*' mode 0660 group usb
|
||||
|
||||
[tajailwg=13]
|
||||
add include $devfsrules_hide_all
|
||||
add include $devfsrules_unhide_basic
|
||||
add include $devfsrules_unhide_login
|
||||
add path 'bpf*' unhide
|
||||
add path pf unhide
|
||||
add path pflog unhide
|
||||
add path pfsynv unhide
|
||||
add path 'tun*' unhide
|
||||
|
||||
[tajaildhcp=14]
|
||||
add include $devfsrules_hide_all
|
||||
add include $devfsrules_unhide_basic
|
||||
add include $devfsrules_unhide_login
|
||||
add path 'bpf*' unhide
|
10
ansible/roles/homeserver/files/decrypt_disks.bash
Normal file
10
ansible/roles/homeserver/files/decrypt_disks.bash
Normal file
@ -0,0 +1,10 @@
|
||||
#!/usr/bin/env bash
|
||||
#
|
||||
# Decrypt and mount the disks after a fresh reboot.
|
||||
set -euo pipefail
|
||||
IFS=$'\n\t'
|
||||
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
||||
|
||||
zfs load-key -r zmass/encrypted
|
||||
zfs mount -a
|
||||
service bemount start
|
55
ansible/roles/homeserver/tasks/common.yaml
Normal file
55
ansible/roles/homeserver/tasks/common.yaml
Normal file
@ -0,0 +1,55 @@
|
||||
# - name: Create directories
|
||||
# file:
|
||||
# name: "{{ item }}"
|
||||
# state: directory
|
||||
# mode: 0755
|
||||
# owner: root
|
||||
# group: wheel
|
||||
# loop:
|
||||
# - /foo/bar
|
||||
|
||||
# - name: Install scripts
|
||||
# copy:
|
||||
# src: "files/{{ item.src }}"
|
||||
# dest: "{{ item.dest }}"
|
||||
# mode: 0755
|
||||
# owner: root
|
||||
# group: wheel
|
||||
# loop:
|
||||
# - src: foo.bash
|
||||
# dest: /usr/local/bin/foo
|
||||
|
||||
# - name: Install Configuration
|
||||
# copy:
|
||||
# src: "files/{{ item.src }}"
|
||||
# dest: "{{ item.dest }}"
|
||||
# mode: 0600
|
||||
# owner: root
|
||||
# group: wheel
|
||||
# loop:
|
||||
# - src: foo.conf
|
||||
# dest: /usr/local/etc/foo.conf
|
||||
|
||||
# - name: Clone Source
|
||||
# git:
|
||||
# repo: "https://foo.bar/baz.git"
|
||||
# dest: /foo/bar
|
||||
# version: "v1.0.2"
|
||||
# force: true
|
||||
# diff: false
|
||||
|
||||
- import_tasks: tasks/freebsd.yaml
|
||||
when: 'os_flavor == "freebsd"'
|
||||
|
||||
- import_tasks: tasks/linux.yaml
|
||||
when: 'os_flavor == "linux"'
|
||||
|
||||
- include_tasks:
|
||||
file: tasks/peruser.yaml
|
||||
apply:
|
||||
become: yes
|
||||
become_user: "{{ initialize_user }}"
|
||||
when: users is defined
|
||||
loop: "{{ users | dict2items | community.general.json_query('[?value.initialize==`true`].key') }}"
|
||||
loop_control:
|
||||
loop_var: initialize_user
|
10
ansible/roles/homeserver/tasks/freebsd.yaml
Normal file
10
ansible/roles/homeserver/tasks/freebsd.yaml
Normal file
@ -0,0 +1,10 @@
|
||||
- name: Install scripts
|
||||
copy:
|
||||
src: "files/{{ item.src }}"
|
||||
dest: "{{ item.dest }}"
|
||||
mode: 0755
|
||||
owner: root
|
||||
group: wheel
|
||||
loop:
|
||||
- src: decrypt_disks.bash
|
||||
dest: /usr/local/bin/decrypt_disks
|
29
ansible/roles/homeserver/tasks/linux.yaml
Normal file
29
ansible/roles/homeserver/tasks/linux.yaml
Normal file
@ -0,0 +1,29 @@
|
||||
# - name: Build aur packages
|
||||
# register: buildaur
|
||||
# become_user: "{{ build_user.name }}"
|
||||
# command: "aurutils-sync --no-view {{ item }}"
|
||||
# args:
|
||||
# creates: "/var/cache/pacman/custom/{{ item }}-*.pkg.tar.*"
|
||||
# loop:
|
||||
# - foo
|
||||
|
||||
# - name: Update cache
|
||||
# when: buildaur.changed
|
||||
# pacman:
|
||||
# name: []
|
||||
# state: present
|
||||
# update_cache: true
|
||||
|
||||
# - name: Install packages
|
||||
# package:
|
||||
# name:
|
||||
# - foo
|
||||
# state: present
|
||||
|
||||
# - name: Enable services
|
||||
# systemd:
|
||||
# enabled: yes
|
||||
# name: "{{ item }}"
|
||||
# daemon_reload: yes
|
||||
# loop:
|
||||
# - foo.service
|
2
ansible/roles/homeserver/tasks/main.yaml
Normal file
2
ansible/roles/homeserver/tasks/main.yaml
Normal file
@ -0,0 +1,2 @@
|
||||
- import_tasks: tasks/common.yaml
|
||||
# when: foo is defined
|
29
ansible/roles/homeserver/tasks/peruser.yaml
Normal file
29
ansible/roles/homeserver/tasks/peruser.yaml
Normal file
@ -0,0 +1,29 @@
|
||||
- include_role:
|
||||
name: per_user
|
||||
|
||||
# - name: Create directories
|
||||
# file:
|
||||
# name: "{{ account_homedir.stdout }}/{{ item }}"
|
||||
# state: directory
|
||||
# mode: 0700
|
||||
# owner: "{{ account_name.stdout }}"
|
||||
# group: "{{ group_name.stdout }}"
|
||||
# loop:
|
||||
# - ".config/foo"
|
||||
|
||||
# - name: Copy files
|
||||
# copy:
|
||||
# src: "files/{{ item.src }}"
|
||||
# dest: "{{ account_homedir.stdout }}/{{ item.dest }}"
|
||||
# mode: 0600
|
||||
# owner: "{{ account_name.stdout }}"
|
||||
# group: "{{ group_name.stdout }}"
|
||||
# loop:
|
||||
# - src: foo.conf
|
||||
# dest: .config/foo/foo.conf
|
||||
|
||||
- import_tasks: tasks/peruser_freebsd.yaml
|
||||
when: 'os_flavor == "freebsd"'
|
||||
|
||||
- import_tasks: tasks/peruser_linux.yaml
|
||||
when: 'os_flavor == "linux"'
|
0
ansible/roles/homeserver/tasks/peruser_freebsd.yaml
Normal file
0
ansible/roles/homeserver/tasks/peruser_freebsd.yaml
Normal file
0
ansible/roles/homeserver/tasks/peruser_linux.yaml
Normal file
0
ansible/roles/homeserver/tasks/peruser_linux.yaml
Normal file
@ -1,3 +1,4 @@
|
||||
wlans_ath0="wlan0"
|
||||
#wlans_ath0="wlan0"
|
||||
wlans_iwm0="wlan0"
|
||||
ifconfig_wlan0="WPA DHCP"
|
||||
ifconfig_wlan0_ipv6="inet6 accept_rtadv"
|
||||
|
4
ansible/roles/pixelbook/files/61-eve-keyboard.hwdb
Normal file
4
ansible/roles/pixelbook/files/61-eve-keyboard.hwdb
Normal file
@ -0,0 +1,4 @@
|
||||
evdev:atkbd:dmi:bvn*:bvr*:bd*:svnGoogle:pnEve:pvr*
|
||||
KEYBOARD_KEY_5d=delete
|
||||
KEYBOARD_KEY_d8=leftmeta
|
||||
KEYBOARD_KEY_db=capslock
|
BIN
ansible/roles/pixelbook/files/9d71-GOOGLE-EVEMAX-0-tplg.bin
Normal file
BIN
ansible/roles/pixelbook/files/9d71-GOOGLE-EVEMAX-0-tplg.bin
Normal file
Binary file not shown.
129
ansible/roles/pixelbook/files/HiFi.conf
Normal file
129
ansible/roles/pixelbook/files/HiFi.conf
Normal file
@ -0,0 +1,129 @@
|
||||
SectionVerb {
|
||||
EnableSequence [
|
||||
cdev "hw:kblr55145663max"
|
||||
|
||||
cset "name='codec1_out mo hs_pb_in mi Switch' on"
|
||||
cset "name='Left DAI Sel Mux' Left"
|
||||
cset "name='Right DAI Sel Mux' Right"
|
||||
cset "name='Left Speaker Volume' 3"
|
||||
cset "name='Right Speaker Volume' 3"
|
||||
cset "name='Left Digital Volume' 60"
|
||||
cset "name='Right Digital Volume' 60"
|
||||
cset "name='Left Spk Switch' on"
|
||||
cset "name='Right Spk Switch' on"
|
||||
cset "name='Left Boost Output Voltage' 0"
|
||||
cset "name='Right Boost Output Voltage' 0"
|
||||
cset "name='Left Current Limit' 7"
|
||||
cset "name='Right Current Limit' 7"
|
||||
cset "name='Headphone Playback Volume' 16"
|
||||
cset "name='Headset Mic Switch' off"
|
||||
cset "name='DMIC Switch' on"
|
||||
cset "name='STO1 ADC MIXL ADC1 Switch' on"
|
||||
cset "name='Pin5-Port0 Mux' 2"
|
||||
cset "name='Pin5-Port1 Mux' 2"
|
||||
cset "name='Pin5-Port2 Mux' 2"
|
||||
cset "name='Pin6-Port0 Mux' 1"
|
||||
cset "name='Pin6-Port1 Mux' 1"
|
||||
cset "name='Pin6-Port2 Mux' 1"
|
||||
cset "name='Pin7-Port0 Mux' 3"
|
||||
cset "name='Pin7-Port1 Mux' 3"
|
||||
cset "name='Pin7-Port2 Mux' 3"
|
||||
cset "name='ADC Capture Volume' 35"
|
||||
cset "name='ADC1 Capture Volume' 55"
|
||||
cset "name='ADC2 Capture Volume' 55"
|
||||
cset "name='DAC L Mux' STO DAC MIXL"
|
||||
cset "name='DAC R Mux' STO DAC MIXR"
|
||||
cset "name='STO1 DAC MIXL DAC L Switch' on"
|
||||
cset "name='STO1 DAC MIXR DAC R Switch' on"
|
||||
cset-tlv "name='spk_pb_in dsm 0 dsm_params params' /opt/google/dsm/dsmparam.bin"
|
||||
]
|
||||
}
|
||||
|
||||
SectionDevice."Speaker" {
|
||||
Comment "Speaker"
|
||||
|
||||
Value {
|
||||
PlaybackPCM "hw:kblr55145663max,0"
|
||||
DspName "speaker_eq"
|
||||
}
|
||||
}
|
||||
|
||||
SectionDevice."Headphones" {
|
||||
Comment "Headphones"
|
||||
|
||||
Value {
|
||||
PlaybackPCM "hw:kblr55145663max,2"
|
||||
MixerName "DAC"
|
||||
JackDev "kbl-r5514-5663-max Headset Jack"
|
||||
|
||||
}
|
||||
|
||||
EnableSequence [
|
||||
cset "name='Headphone Jack Switch' on"
|
||||
]
|
||||
|
||||
DisableSequence [
|
||||
cset "name='Headphone Jack Switch' off"
|
||||
]
|
||||
}
|
||||
|
||||
SectionDevice."Internal Mic" {
|
||||
Comment "Internal Microphone"
|
||||
|
||||
Value {
|
||||
CapturePCM "hw:kblr55145663max,4"
|
||||
CaptureChannelMap "2 3 0 1 -1 -1 -1 -1 -1 -1 -1"
|
||||
MixerName "ADC2"
|
||||
DefaultNodeGain "2700"
|
||||
CaptureChannels "4"
|
||||
}
|
||||
|
||||
EnableSequence [
|
||||
cset "name='Sto1 ADC MIXL DMIC Switch' on"
|
||||
cset "name='Sto1 ADC MIXR DMIC Switch' on"
|
||||
cset "name='Sto2 ADC MIXL DMIC Switch' on"
|
||||
cset "name='Sto2 ADC MIXR DMIC Switch' on"
|
||||
]
|
||||
|
||||
DisableSequence [
|
||||
cset "name='Sto1 ADC MIXL DMIC Switch' off"
|
||||
cset "name='Sto1 ADC MIXR DMIC Switch' off"
|
||||
cset "name='Sto2 ADC MIXL DMIC Switch' off"
|
||||
cset "name='Sto2 ADC MIXR DMIC Switch' off"
|
||||
]
|
||||
}
|
||||
|
||||
SectionDevice."Mic" {
|
||||
Comment "Headset Microphone"
|
||||
|
||||
Value {
|
||||
CapturePCM "hw:kblr55145663max,1"
|
||||
JackDev "kbl-r5514-5663-max Headset Jack"
|
||||
}
|
||||
|
||||
EnableSequence [
|
||||
cset "name='Headset Mic Switch' on"
|
||||
]
|
||||
|
||||
DisableSequence [
|
||||
cset "name='Headset Mic Switch' off"
|
||||
]
|
||||
}
|
||||
|
||||
SectionDevice."HDMI1" {
|
||||
Comment "HDMI 1"
|
||||
|
||||
Value {
|
||||
PlaybackPCM "hw:kblr55145663max,6"
|
||||
JackDev "kbl-r5514-5663-max HDMI/DP,pcm=6 Jack"
|
||||
}
|
||||
}
|
||||
|
||||
SectionDevice."HDMI2" {
|
||||
Comment "HDMI 2"
|
||||
|
||||
Value {
|
||||
PlaybackPCM "hw:kblr55145663max,7"
|
||||
JackDev "kbl-r5514-5663-max HDMI/DP,pcm=7 Jack"
|
||||
}
|
||||
}
|
BIN
ansible/roles/pixelbook/files/dsmparam.bin
Normal file
BIN
ansible/roles/pixelbook/files/dsmparam.bin
Normal file
Binary file not shown.
Binary file not shown.
BIN
ansible/roles/pixelbook/files/dsp_lib_dsm_core_spt_release.bin
Normal file
BIN
ansible/roles/pixelbook/files/dsp_lib_dsm_core_spt_release.bin
Normal file
Binary file not shown.
6
ansible/roles/pixelbook/files/kbl-r5514-5663-.conf
Normal file
6
ansible/roles/pixelbook/files/kbl-r5514-5663-.conf
Normal file
@ -0,0 +1,6 @@
|
||||
Syntax 3
|
||||
|
||||
SectionUseCase."HiFi" {
|
||||
File "HiFi.conf"
|
||||
Comment "Default"
|
||||
}
|
@ -0,0 +1,2 @@
|
||||
# Enable the pixelbook keyboard backlight. This seems to persist without needing the tmpfiles.d entry but it is here for clean installs of the machine.
|
||||
w- /sys/class/leds/chromeos::kbd_backlight/brightness - - - - 100
|
55
ansible/roles/pixelbook/tasks/common.yaml
Normal file
55
ansible/roles/pixelbook/tasks/common.yaml
Normal file
@ -0,0 +1,55 @@
|
||||
# - name: Create directories
|
||||
# file:
|
||||
# name: "{{ item }}"
|
||||
# state: directory
|
||||
# mode: 0755
|
||||
# owner: root
|
||||
# group: wheel
|
||||
# loop:
|
||||
# - /foo/bar
|
||||
|
||||
# - name: Install scripts
|
||||
# copy:
|
||||
# src: "files/{{ item.src }}"
|
||||
# dest: "{{ item.dest }}"
|
||||
# mode: 0755
|
||||
# owner: root
|
||||
# group: wheel
|
||||
# loop:
|
||||
# - src: foo.bash
|
||||
# dest: /usr/local/bin/foo
|
||||
|
||||
# - name: Install Configuration
|
||||
# copy:
|
||||
# src: "files/{{ item.src }}"
|
||||
# dest: "{{ item.dest }}"
|
||||
# mode: 0600
|
||||
# owner: root
|
||||
# group: wheel
|
||||
# loop:
|
||||
# - src: foo.conf
|
||||
# dest: /usr/local/etc/foo.conf
|
||||
|
||||
# - name: Clone Source
|
||||
# git:
|
||||
# repo: "https://foo.bar/baz.git"
|
||||
# dest: /foo/bar
|
||||
# version: "v1.0.2"
|
||||
# force: true
|
||||
# diff: false
|
||||
|
||||
- import_tasks: tasks/freebsd.yaml
|
||||
when: 'os_flavor == "freebsd"'
|
||||
|
||||
- import_tasks: tasks/linux.yaml
|
||||
when: 'os_flavor == "linux"'
|
||||
|
||||
- include_tasks:
|
||||
file: tasks/peruser.yaml
|
||||
apply:
|
||||
become: yes
|
||||
become_user: "{{ initialize_user }}"
|
||||
when: users is defined
|
||||
loop: "{{ users | dict2items | community.general.json_query('[?value.initialize==`true`].key') }}"
|
||||
loop_control:
|
||||
loop_var: initialize_user
|
5
ansible/roles/pixelbook/tasks/freebsd.yaml
Normal file
5
ansible/roles/pixelbook/tasks/freebsd.yaml
Normal file
@ -0,0 +1,5 @@
|
||||
# - name: Install packages
|
||||
# package:
|
||||
# name:
|
||||
# - foo
|
||||
# state: present
|
57
ansible/roles/pixelbook/tasks/linux.yaml
Normal file
57
ansible/roles/pixelbook/tasks/linux.yaml
Normal file
@ -0,0 +1,57 @@
|
||||
# Audio firmware from instructions at https://wiki.gentoo.org/wiki/Google_Pixelbook_(2017)#Audio
|
||||
|
||||
- name: Create directories
|
||||
file:
|
||||
name: "{{ item }}"
|
||||
state: directory
|
||||
mode: 0755
|
||||
owner: root
|
||||
group: wheel
|
||||
loop:
|
||||
- /opt/google/dsm
|
||||
- /usr/share/alsa/ucm2/Intel/kbl-r5514-5663-
|
||||
- /usr/share/alsa/ucm2/conf.d/kbl-r5514-5663-
|
||||
|
||||
- name: Install tmpfiles.d configuration
|
||||
copy:
|
||||
src: "files/{{ item }}_tmpfiles.conf"
|
||||
dest: "/etc/tmpfiles.d/{{ item }}.conf"
|
||||
mode: 0644
|
||||
owner: root
|
||||
group: wheel
|
||||
loop:
|
||||
- pixelbook_keyboard_backlight
|
||||
|
||||
- name: Install Configuration
|
||||
copy:
|
||||
src: "files/{{ item.src }}"
|
||||
dest: "{{ item.dest }}"
|
||||
mode: 0600
|
||||
owner: root
|
||||
group: wheel
|
||||
loop:
|
||||
- src: 61-eve-keyboard.hwdb
|
||||
dest: /etc/udev/hwdb.d/61-eve-keyboard.hwdb
|
||||
- src: 9d71-GOOGLE-EVEMAX-0-tplg.bin
|
||||
dest: /lib/firmware/9d71-GOOGLE-EVEMAX-0-tplg.bin
|
||||
- src: dsp_lib_dsm_core_spt_release.bin
|
||||
dest: /lib/firmware/dsp_lib_dsm_core_spt_release.bin
|
||||
- src: dsp_fw_C75061F3-F2B2-4DCC-8F9F-82ABB4131E66.bin
|
||||
dest: /lib/firmware/intel/dsp_fw_C75061F3-F2B2-4DCC-8F9F-82ABB4131E66.bin
|
||||
- src: dsmparam.bin
|
||||
dest: /opt/google/dsm/dsmparam.bin
|
||||
- src: HiFi.conf
|
||||
dest: /usr/share/alsa/ucm2/Intel/kbl-r5514-5663-/HiFi.conf
|
||||
- src: kbl-r5514-5663-.conf
|
||||
dest: /usr/share/alsa/ucm2/Intel/kbl-r5514-5663-/kbl-r5514-5663-.conf
|
||||
|
||||
- name: Create symlinks
|
||||
file:
|
||||
src: "{{ item.src }}"
|
||||
dest: "{{ item.dest }}"
|
||||
owner: root
|
||||
group: wheel
|
||||
state: link
|
||||
loop:
|
||||
- src: /usr/share/alsa/ucm2/Intel/kbl-r5514-5663-/kbl-r5514-5663-.conf
|
||||
dest: /usr/share/alsa/ucm2/conf.d/kbl-r5514-5663-/kbl-r5514-5663-.conf
|
2
ansible/roles/pixelbook/tasks/main.yaml
Normal file
2
ansible/roles/pixelbook/tasks/main.yaml
Normal file
@ -0,0 +1,2 @@
|
||||
- import_tasks: tasks/common.yaml
|
||||
# when: foo is defined
|
29
ansible/roles/pixelbook/tasks/peruser.yaml
Normal file
29
ansible/roles/pixelbook/tasks/peruser.yaml
Normal file
@ -0,0 +1,29 @@
|
||||
- include_role:
|
||||
name: per_user
|
||||
|
||||
# - name: Create directories
|
||||
# file:
|
||||
# name: "{{ account_homedir.stdout }}/{{ item }}"
|
||||
# state: directory
|
||||
# mode: 0700
|
||||
# owner: "{{ account_name.stdout }}"
|
||||
# group: "{{ group_name.stdout }}"
|
||||
# loop:
|
||||
# - ".config/foo"
|
||||
|
||||
# - name: Copy files
|
||||
# copy:
|
||||
# src: "files/{{ item.src }}"
|
||||
# dest: "{{ account_homedir.stdout }}/{{ item.dest }}"
|
||||
# mode: 0600
|
||||
# owner: "{{ account_name.stdout }}"
|
||||
# group: "{{ group_name.stdout }}"
|
||||
# loop:
|
||||
# - src: foo.conf
|
||||
# dest: .config/foo/foo.conf
|
||||
|
||||
- import_tasks: tasks/peruser_freebsd.yaml
|
||||
when: 'os_flavor == "freebsd"'
|
||||
|
||||
- import_tasks: tasks/peruser_linux.yaml
|
||||
when: 'os_flavor == "linux"'
|
0
ansible/roles/pixelbook/tasks/peruser_freebsd.yaml
Normal file
0
ansible/roles/pixelbook/tasks/peruser_freebsd.yaml
Normal file
0
ansible/roles/pixelbook/tasks/peruser_linux.yaml
Normal file
0
ansible/roles/pixelbook/tasks/peruser_linux.yaml
Normal file
@ -4,7 +4,7 @@
|
||||
#
|
||||
# Example from bottom of /usr/share/examples/etc/make.conf
|
||||
.if ${.CURDIR:N*/lang/gcc48*} && ${.CURDIR:N*/lang/gcc10*} && ${.CURDIR:N*/devel/qt6-base*}
|
||||
CPUTYPE?=tigerlake
|
||||
CPUTYPE?=skylake
|
||||
# CPUTYPE?=x86-64-v4
|
||||
.endif
|
||||
|
||||
|
@ -20,6 +20,7 @@ dns/coredns
|
||||
editors/emacs
|
||||
editors/mg
|
||||
ftp/wget
|
||||
graphics/ImageMagick
|
||||
graphics/drm-kmod
|
||||
graphics/evince
|
||||
graphics/gimp
|
||||
|
55
ansible/roles/restaurant_health_rating/tasks/common.yaml
Normal file
55
ansible/roles/restaurant_health_rating/tasks/common.yaml
Normal file
@ -0,0 +1,55 @@
|
||||
# - name: Create directories
|
||||
# file:
|
||||
# name: "{{ item }}"
|
||||
# state: directory
|
||||
# mode: 0755
|
||||
# owner: root
|
||||
# group: wheel
|
||||
# loop:
|
||||
# - /foo/bar
|
||||
|
||||
# - name: Install scripts
|
||||
# copy:
|
||||
# src: "files/{{ item.src }}"
|
||||
# dest: "{{ item.dest }}"
|
||||
# mode: 0755
|
||||
# owner: root
|
||||
# group: wheel
|
||||
# loop:
|
||||
# - src: foo.bash
|
||||
# dest: /usr/local/bin/foo
|
||||
|
||||
# - name: Install Configuration
|
||||
# copy:
|
||||
# src: "files/{{ item.src }}"
|
||||
# dest: "{{ item.dest }}"
|
||||
# mode: 0600
|
||||
# owner: root
|
||||
# group: wheel
|
||||
# loop:
|
||||
# - src: foo.conf
|
||||
# dest: /usr/local/etc/foo.conf
|
||||
|
||||
# - name: Clone Source
|
||||
# git:
|
||||
# repo: "https://foo.bar/baz.git"
|
||||
# dest: /foo/bar
|
||||
# version: "v1.0.2"
|
||||
# force: true
|
||||
# diff: false
|
||||
|
||||
- import_tasks: tasks/freebsd.yaml
|
||||
when: 'os_flavor == "freebsd"'
|
||||
|
||||
- import_tasks: tasks/linux.yaml
|
||||
when: 'os_flavor == "linux"'
|
||||
|
||||
- include_tasks:
|
||||
file: tasks/peruser.yaml
|
||||
apply:
|
||||
become: yes
|
||||
become_user: "{{ initialize_user }}"
|
||||
when: users is defined
|
||||
loop: "{{ users | dict2items | community.general.json_query('[?value.initialize==`true`].key') }}"
|
||||
loop_control:
|
||||
loop_var: initialize_user
|
@ -0,0 +1,5 @@
|
||||
- name: Install packages
|
||||
package:
|
||||
name:
|
||||
- ImageMagick7
|
||||
state: present
|
6
ansible/roles/restaurant_health_rating/tasks/linux.yaml
Normal file
6
ansible/roles/restaurant_health_rating/tasks/linux.yaml
Normal file
@ -0,0 +1,6 @@
|
||||
- name: Install packages
|
||||
package:
|
||||
name:
|
||||
- imagemagick
|
||||
- web-ext
|
||||
state: present
|
2
ansible/roles/restaurant_health_rating/tasks/main.yaml
Normal file
2
ansible/roles/restaurant_health_rating/tasks/main.yaml
Normal file
@ -0,0 +1,2 @@
|
||||
- import_tasks: tasks/common.yaml
|
||||
# when: foo is defined
|
29
ansible/roles/restaurant_health_rating/tasks/peruser.yaml
Normal file
29
ansible/roles/restaurant_health_rating/tasks/peruser.yaml
Normal file
@ -0,0 +1,29 @@
|
||||
- include_role:
|
||||
name: per_user
|
||||
|
||||
# - name: Create directories
|
||||
# file:
|
||||
# name: "{{ account_homedir.stdout }}/{{ item }}"
|
||||
# state: directory
|
||||
# mode: 0700
|
||||
# owner: "{{ account_name.stdout }}"
|
||||
# group: "{{ group_name.stdout }}"
|
||||
# loop:
|
||||
# - ".config/foo"
|
||||
|
||||
# - name: Copy files
|
||||
# copy:
|
||||
# src: "files/{{ item.src }}"
|
||||
# dest: "{{ account_homedir.stdout }}/{{ item.dest }}"
|
||||
# mode: 0600
|
||||
# owner: "{{ account_name.stdout }}"
|
||||
# group: "{{ group_name.stdout }}"
|
||||
# loop:
|
||||
# - src: foo.conf
|
||||
# dest: .config/foo/foo.conf
|
||||
|
||||
- import_tasks: tasks/peruser_freebsd.yaml
|
||||
when: 'os_flavor == "freebsd"'
|
||||
|
||||
- import_tasks: tasks/peruser_linux.yaml
|
||||
when: 'os_flavor == "linux"'
|
@ -21,4 +21,6 @@
|
||||
- pipewire-pulse
|
||||
- wireplumber
|
||||
- pavucontrol
|
||||
- pipewire-jack
|
||||
- lib32-pipewire-jack
|
||||
state: present
|
||||
|
@ -89,7 +89,7 @@ KbdInteractiveAuthentication no
|
||||
#AllowAgentForwarding yes
|
||||
#AllowTcpForwarding yes
|
||||
#GatewayPorts no
|
||||
#X11Forwarding yes
|
||||
#X11Forwarding no
|
||||
#X11DisplayOffset 10
|
||||
#X11UseLocalhost yes
|
||||
#PermitTTY yes
|
||||
@ -106,7 +106,7 @@ KbdInteractiveAuthentication no
|
||||
#PermitTunnel no
|
||||
#ChrootDirectory none
|
||||
#UseBlacklist no
|
||||
#VersionAddendum FreeBSD-20230316
|
||||
#VersionAddendum FreeBSD-20231004
|
||||
|
||||
# no default banner path
|
||||
#Banner none
|
||||
|
BIN
ansible/roles/wireguard/files/wireguard_configs/pixel/wgf.conf
Normal file
BIN
ansible/roles/wireguard/files/wireguard_configs/pixel/wgf.conf
Normal file
Binary file not shown.
BIN
ansible/roles/wireguard/files/wireguard_configs/pixel/wgh.conf
Normal file
BIN
ansible/roles/wireguard/files/wireguard_configs/pixel/wgh.conf
Normal file
Binary file not shown.
@ -17,6 +17,7 @@
|
||||
command: "gpg --recv-key '{{ item }}'"
|
||||
loop:
|
||||
- "0AB9E991C6AF658B"
|
||||
- "6AD860EED4598027"
|
||||
|
||||
- name: Build aur packages
|
||||
register: buildaur
|
||||
|
@ -22,6 +22,8 @@ elif [ "$target" = "odolinux" ]; then
|
||||
ansible-playbook -v -i environments/laptop playbook.yaml --diff --limit odolinux "${@}"
|
||||
elif [ "$target" = "odofreebsd" ]; then
|
||||
ansible-playbook -v -i environments/laptop playbook.yaml --diff --limit odofreebsd "${@}"
|
||||
elif [ "$target" = "pixellinux" ]; then
|
||||
ansible-playbook -v -i environments/laptop playbook.yaml --diff --limit pixellinux "${@}"
|
||||
elif [ "$target" = "jail_nat_dhcp" ]; then
|
||||
ansible-playbook -v -i environments/jail playbook.yaml --diff --limit nat_dhcp "${@}"
|
||||
elif [ "$target" = "jail_homeserver_nat_dhcp" ]; then
|
||||
|
Loading…
Reference in New Issue
Block a user