Import the fonts role.
This commit is contained in:
parent
1f408202f1
commit
ad8fc734f6
@ -16,4 +16,5 @@
|
|||||||
- build
|
- build
|
||||||
- graphics
|
- graphics
|
||||||
- gpg
|
- gpg
|
||||||
|
- fonts
|
||||||
- sway
|
- sway
|
||||||
|
88
ansible/roles/fonts/files/fonts.conf
Normal file
88
ansible/roles/fonts/files/fonts.conf
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
|
||||||
|
<fontconfig>
|
||||||
|
<!-- reject all bitmap fonts, with the exception of 'terminus' -->
|
||||||
|
<selectfont>
|
||||||
|
<!-- <acceptfont> -->
|
||||||
|
<!-- <pattern> -->
|
||||||
|
<!-- <patelt name="family"> <string>Terminus</string> </patelt> -->
|
||||||
|
<!-- </pattern> -->
|
||||||
|
<!-- </acceptfont> -->
|
||||||
|
<rejectfont>
|
||||||
|
<pattern>
|
||||||
|
<patelt name="scalable"> <bool>false</bool> </patelt>
|
||||||
|
</pattern>
|
||||||
|
</rejectfont>
|
||||||
|
<rejectfont>
|
||||||
|
<!-- You don't want ghostscript fonts in your web browsing because of annoying ligatures like ffi -->
|
||||||
|
<glob>/usr/share/fonts/gsfonts/*</glob>
|
||||||
|
</rejectfont>
|
||||||
|
</selectfont>
|
||||||
|
|
||||||
|
<!-- preferred aliases -->
|
||||||
|
<alias>
|
||||||
|
<family>serif</family>
|
||||||
|
<prefer>
|
||||||
|
<family>Source Serif Pro</family>
|
||||||
|
<family>Source Sans Pro</family>
|
||||||
|
</prefer>
|
||||||
|
</alias>
|
||||||
|
|
||||||
|
<!-- preferred aliases -->
|
||||||
|
<alias>
|
||||||
|
<family>sans-serif</family>
|
||||||
|
<prefer>
|
||||||
|
<family>Source Sans Pro</family>
|
||||||
|
<family>Source Serif Pro</family>
|
||||||
|
</prefer>
|
||||||
|
</alias>
|
||||||
|
|
||||||
|
<!-- preferred aliases -->
|
||||||
|
<alias>
|
||||||
|
<family>monospace</family>
|
||||||
|
<prefer>
|
||||||
|
<family>Cascadia Mono</family>
|
||||||
|
<family>Cascadia Code</family>
|
||||||
|
</prefer>
|
||||||
|
</alias>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- Screw it. Force Liberation Mono to be source code pro. -->
|
||||||
|
<match target="pattern">
|
||||||
|
<test qual="any" name="family"><string>Liberation Mono</string></test>
|
||||||
|
<edit name="family" mode="assign" binding="same"><string>Cascadia Mono</string></edit>
|
||||||
|
</match>
|
||||||
|
|
||||||
|
<!-- Dejavu Sans Mono keeps coming back when I query "monospace". Doesn't happen when I'm using Souce Code Pro but does happen with cascadia... force it to cascadia -->
|
||||||
|
<match target="pattern">
|
||||||
|
<test qual="any" name="family"><string>monospace</string></test>
|
||||||
|
<edit name="family" mode="assign" binding="same"><string>Cascadia Mono</string></edit>
|
||||||
|
</match>
|
||||||
|
|
||||||
|
<!-- Font Display Settings -->
|
||||||
|
<match target="font" >
|
||||||
|
<edit mode="assign" name="rgba" >
|
||||||
|
<const>rgb</const>
|
||||||
|
</edit>
|
||||||
|
</match>
|
||||||
|
<match target="font" >
|
||||||
|
<edit mode="assign" name="hinting" >
|
||||||
|
<bool>true</bool>
|
||||||
|
</edit>
|
||||||
|
</match>
|
||||||
|
<match target="font" >
|
||||||
|
<edit mode="assign" name="hintstyle" >
|
||||||
|
<const>hintslight</const>
|
||||||
|
</edit>
|
||||||
|
</match>
|
||||||
|
<match target="font" >
|
||||||
|
<edit mode="assign" name="antialias" >
|
||||||
|
<bool>true</bool>
|
||||||
|
</edit>
|
||||||
|
</match>
|
||||||
|
<match target="font" >
|
||||||
|
<edit mode="assign" name="lcdfilter" >
|
||||||
|
<const>lcddefault</const>
|
||||||
|
</edit>
|
||||||
|
</match>
|
||||||
|
</fontconfig>
|
2
ansible/roles/fonts/meta/main.yaml
Normal file
2
ansible/roles/fonts/meta/main.yaml
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
dependencies:
|
||||||
|
- users
|
14
ansible/roles/fonts/tasks/common.yaml
Normal file
14
ansible/roles/fonts/tasks/common.yaml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
- 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 }}"
|
||||||
|
loop: "{{ users | dict2items | community.general.json_query('[?value.initialize==`true`].key') }}"
|
||||||
|
loop_control:
|
||||||
|
loop_var: initialize_user
|
10
ansible/roles/fonts/tasks/freebsd.yaml
Normal file
10
ansible/roles/fonts/tasks/freebsd.yaml
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
- name: Install packages
|
||||||
|
package:
|
||||||
|
name:
|
||||||
|
- sourcecodepro-ttf
|
||||||
|
- sourcesanspro-ttf
|
||||||
|
- cascadia-code
|
||||||
|
- noto
|
||||||
|
- noto-emoji
|
||||||
|
- noto-extra
|
||||||
|
state: present
|
13
ansible/roles/fonts/tasks/linux.yaml
Normal file
13
ansible/roles/fonts/tasks/linux.yaml
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
- name: Install packages
|
||||||
|
pacman:
|
||||||
|
name:
|
||||||
|
- adobe-source-code-pro-fonts
|
||||||
|
- adobe-source-sans-fonts
|
||||||
|
# - ttf-cascadia-code # ttf existing at all breaks fonts in emacs
|
||||||
|
- otf-cascadia-code # ttf cascadia broken in emacs
|
||||||
|
- noto-fonts
|
||||||
|
- noto-fonts-cjk
|
||||||
|
- noto-fonts-emoji
|
||||||
|
- noto-fonts-extra
|
||||||
|
state: present
|
||||||
|
update_cache: true
|
2
ansible/roles/fonts/tasks/main.yaml
Normal file
2
ansible/roles/fonts/tasks/main.yaml
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
- import_tasks: tasks/common.yaml
|
||||||
|
when: graphics_driver is defined
|
29
ansible/roles/fonts/tasks/peruser.yaml
Normal file
29
ansible/roles/fonts/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/fontconfig"
|
||||||
|
|
||||||
|
- 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: fonts.conf
|
||||||
|
dest: .config/fontconfig/fonts.conf
|
||||||
|
|
||||||
|
- import_tasks: tasks/peruser_freebsd.yaml
|
||||||
|
when: 'os_flavor == "freebsd"'
|
||||||
|
|
||||||
|
- import_tasks: tasks/peruser_linux.yaml
|
||||||
|
when: 'os_flavor == "linux"'
|
0
ansible/roles/fonts/tasks/peruser_freebsd.yaml
Normal file
0
ansible/roles/fonts/tasks/peruser_freebsd.yaml
Normal file
0
ansible/roles/fonts/tasks/peruser_linux.yaml
Normal file
0
ansible/roles/fonts/tasks/peruser_linux.yaml
Normal file
Loading…
x
Reference in New Issue
Block a user