diff options
Diffstat (limited to 'roles/obs/templates')
| -rw-r--r-- | roles/obs/templates/bashrc | 116 | ||||
| -rw-r--r-- | roles/obs/templates/global.ini | 36 | ||||
| -rw-r--r-- | roles/obs/templates/i3-config | 26 | ||||
| -rwxr-xr-x | roles/obs/templates/mpv-track | 2 | ||||
| -rw-r--r-- | roles/obs/templates/mpv.conf | 27 | ||||
| -rwxr-xr-x | roles/obs/templates/obs-track | 2 | ||||
| -rw-r--r-- | roles/obs/templates/scenes.json | 644 | ||||
| -rw-r--r-- | roles/obs/templates/vnc-track | 2 | ||||
| -rwxr-xr-x | roles/obs/templates/xstartup-track | 6 | 
9 files changed, 825 insertions, 36 deletions
diff --git a/roles/obs/templates/bashrc b/roles/obs/templates/bashrc new file mode 100644 index 0000000..3677017 --- /dev/null +++ b/roles/obs/templates/bashrc @@ -0,0 +1,116 @@ +# ~/.bashrc: executed by bash(1) for non-login shells. +# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) +# for examples + +# If not running interactively, don't do anything +case $- in +    *i*) ;; +      *) return;; +esac + +# don't put duplicate lines or lines starting with space in the history. +# See bash(1) for more options +HISTCONTROL=ignoreboth + +# append to the history file, don't overwrite it +shopt -s histappend + +# for setting history length see HISTSIZE and HISTFILESIZE in bash(1) +HISTSIZE=1000 +HISTFILESIZE=2000 + +# check the window size after each command and, if necessary, +# update the values of LINES and COLUMNS. +shopt -s checkwinsize + +# If set, the pattern "**" used in a pathname expansion context will +# match all files and zero or more directories and subdirectories. +#shopt -s globstar + +# make less more friendly for non-text input files, see lesspipe(1) +#[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)" + +# set variable identifying the chroot you work in (used in the prompt below) +if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then +    debian_chroot=$(cat /etc/debian_chroot) +fi + +# set a fancy prompt (non-color, unless we know we "want" color) +case "$TERM" in +    xterm-color|*-256color) color_prompt=yes;; +esac + +# uncomment for a colored prompt, if the terminal has the capability; turned +# off by default to not distract the user: the focus in a terminal window +# should be on the output of commands, not on the prompt +#force_color_prompt=yes + +if [ -n "$force_color_prompt" ]; then +    if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then +	# We have color support; assume it's compliant with Ecma-48 +	# (ISO/IEC-6429). (Lack of such support is extremely rare, and such +	# a case would tend to support setf rather than setaf.) +	color_prompt=yes +    else +	color_prompt= +    fi +fi + +if [ "$color_prompt" = yes ]; then +    PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' +else +    PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' +fi +unset color_prompt force_color_prompt + +# If this is an xterm set the title to user@host:dir +case "$TERM" in +xterm*|rxvt*) +    PS1="\[\e]0;${debian_chroot:+($debian_chroot)}\u@\h: \w\a\]$PS1" +    ;; +*) +    ;; +esac + +# enable color support of ls and also add handy aliases +if [ -x /usr/bin/dircolors ]; then +    test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)" +    alias ls='ls --color=auto' +    #alias dir='dir --color=auto' +    #alias vdir='vdir --color=auto' + +    #alias grep='grep --color=auto' +    #alias fgrep='fgrep --color=auto' +    #alias egrep='egrep --color=auto' +fi + +# colored GCC warnings and errors +#export GCC_COLORS='error=01;31:warning=01;35:note=01;36:caret=01;32:locus=01:quote=01' + +# some more ls aliases +#alias ll='ls -l' +#alias la='ls -A' +#alias l='ls -CF' + +# Alias definitions. +# You may want to put all your additions into a separate file like +# ~/.bash_aliases, instead of adding them here directly. +# See /usr/share/doc/bash-doc/examples in the bash-doc package. + +if [ -f ~/.bash_aliases ]; then +    . ~/.bash_aliases +fi + +# enable programmable completion features (you don't need to enable +# this, if it's already enabled in /etc/bash.bashrc and /etc/profile +# sources /etc/bash.bashrc). +if ! shopt -oq posix; then +  if [ -f /usr/share/bash-completion/bash_completion ]; then +    . /usr/share/bash-completion/bash_completion +  elif [ -f /etc/bash_completion ]; then +    . /etc/bash_completion +  fi +fi + +export PATH=$PATH:$HOME/bin +export DISPLAY=${DISPLAY:-:{{ item.vnc_id }}} diff --git a/roles/obs/templates/global.ini b/roles/obs/templates/global.ini new file mode 100644 index 0000000..c9b058f --- /dev/null +++ b/roles/obs/templates/global.ini @@ -0,0 +1,36 @@ +[Basic] +SceneCollection=dev +SceneCollectionFile=dev +Profile=emacsconf-dev +ProfileDir=Development + +[General] +Pre19Defaults=false +Pre21Defaults=false +Pre23Defaults=false +Pre24.1Defaults=false +FirstRun=true +LastVersion=469762051 + +[BasicWindow] +gridMode=false +geometry=AdnQywADAAAAAAAAAAAAEgAAAn8AAALPAAAAAgAAABIAAAJ9AAACzQAAAAAAAAAABQAAAAACAAAAEgAAAn0AAALN +DockState=AAAA/wAAAAD9AAAAAQAAAAMAAAJ8AAAA4PwBAAAABvsAAAAUAHMAYwBlAG4AZQBzAEQAbwBjAGsBAAAAAAAAAHwAAACgAP////sAAAAWAHMAbwB1AHIAYwBlAHMARABvAGMAawEAAACAAAAAfAAAAKAA////+wAAABIAbQBpAHgAZQByAEQAbwBjAGsBAAABAAAAAHwAAADeAP////sAAAAeAHQAcgBhAG4AcwBpAHQAaQBvAG4AcwBEAG8AYwBrAQAAAYAAAAB8AAAAoAD////7AAAAGABjAG8AbgB0AHIAbwBsAHMARABvAGMAawEAAAIAAAAAfAAAAJ4A////+wAAABIAcwB0AGEAdABzAEQAbwBjAGsCAAABIgAAAQQAAAK8AAAAyAAAAnwAAAGoAAAABAAAAAQAAAAIAAAACPwAAAAA +PreviewEnabled=true +AlwaysOnTop=false +SceneDuplicationMode=true +SwapScenesMode=true +EditPropertiesMode=false +PreviewProgramMode=false +DocksLocked=false + +[OBSWebSocket] +FirstLoad=false +ServerEnabled=true +ServerPort={{ item.obs_websocket_port }} +ServerPassword={{ obs_websocket_password }} +AlertsEnabled=false +AuthRequired=true + +[ScriptLogWindow] +geometry=AdnQywADAAAAAAAAAAAAFAAAAlcAAAGjAAAAAAAAABQAAAJXAAABowAAAAAAAAAABQAAAAAAAAAAFAAAAlcAAAGj diff --git a/roles/obs/templates/i3-config b/roles/obs/templates/i3-config index ce22fd3..1787b64 100644 --- a/roles/obs/templates/i3-config +++ b/roles/obs/templates/i3-config @@ -1,3 +1,4 @@ +# {{ ansible_managed }}  # i3 config file (v4)  #  # Please see https://i3wm.org/docs/userguide.html for a complete reference! @@ -189,18 +190,13 @@ bindsym Mod1+r mode "resize"  # Start i3bar to display a workspace bar (plus the system information i3status  # finds out, if available) -bar { -        status_command i3status -} - -####################################################################### -# automatically start i3-config-wizard to offer the user to create a -# keysym-based config which used their favorite modifier (alt or windows) -# -# i3-config-wizard will not launch if there already is a config file -# in ~/.config/i3/config (or $XDG_CONFIG_HOME/i3/config if set) or -# ~/.i3/config. -# -# Please remove the following exec line: -####################################################################### -exec i3-config-wizard +# bar { +#         status_command i3status +# } + +# EmacsConf tweaks +# Start with tabbed layout +workspace_layout tabbed +# MPV starts full-screen +for_window [class="mpv"] fullscreen enable +for_window [title=".*mpv"] fullscreen enable diff --git a/roles/obs/templates/mpv-track b/roles/obs/templates/mpv-track index b34df70..ee359f1 100755 --- a/roles/obs/templates/mpv-track +++ b/roles/obs/templates/mpv-track @@ -2,4 +2,4 @@  # Run MPV with the output set to the right sink and with an IPC socket  # {{ ansible_managed }} -mpv --input-ipc-server={{ emacsconf_home }}/mpv-socket-{{ emacsconf_id }}-{{ item.id }} --audio-device=pulse/{{ item.id }}-vid --profile={{ emacsconf_id }}-talks $* +DISPLAY="${DISPLAY:-:{{ item.vnc_id }}}" mpv --input-ipc-server={{ emacsconf_home }}/mpv-socket-{{ emacsconf_id }}-{{ item.id }} --audio-device=pulse/{{ item.id }}-vid --profile={{ emacsconf_id }}-talks $* & diff --git a/roles/obs/templates/mpv.conf b/roles/obs/templates/mpv.conf index 5c73681..9aff3ee 100644 --- a/roles/obs/templates/mpv.conf +++ b/roles/obs/templates/mpv.conf @@ -5,9 +5,34 @@  profile={{ emacsconf_id }}-talks  # Then you can load it with `--profile={{ emacsconf_id }}-talks` +# This puts the video in the top right so that there's room on the left for the logo and some text   [{{ emacsconf_id }}-talks]  # Positioning  video-zoom=-0.15 +video-align-x=1 +video-align-y=-1 +sub-use-margins=yes +sub-scale-by-window=yes +sub-pos=103 +sub-margin-x=120 +sub-margin-y=40 +sub-align-x=left +# Style +sub-font="{{ emacsconf_font }}" +sub-color="1/0.82/0" +sub-blur=0.2 +sub-scale=0.9 +sub-font-size=40 +sub-border-size=0 +sub-border-color=0/1 +sub-shadow-color=0/1 +sub-shadow-offset=1.2 +sub-ass-force-style=Kerning=yes +sub-ass-line-spacing=0 + +[{{ emacsconf_id }}-old] +# Positioning +video-zoom=-0.15  video-pan-y=-0.055  sub-use-margins=yes  sub-scale-by-window=yes @@ -15,7 +40,7 @@ sub-pos=103  sub-margin-x=150  sub-margin-y=40  # Style -sub-font="Clear Sans Bold" +sub-font="{{ emacsconf_font }}"  sub-color="1/0.82/0"  sub-blur=0.2  sub-scale=0.9 diff --git a/roles/obs/templates/obs-track b/roles/obs/templates/obs-track index 5763d30..3029715 100755 --- a/roles/obs/templates/obs-track +++ b/roles/obs/templates/obs-track @@ -1,3 +1,3 @@  #!/bin/bash  # {{ ansible_managed }} -obs --profile "{{ emacsconf_id }}-{{ item.id }}" --collection "{{ item.id }}" -m +obs --profile "{{ emacsconf_id }}-{{ item.id }}" --collection "{{ item.id }}" -m --websocket_port "{{ item.obs_websocket_port }}" --websocket_password "{{ obs_websocket_password }}" diff --git a/roles/obs/templates/scenes.json b/roles/obs/templates/scenes.json index 5e19f16..4e6e4bd 100644 --- a/roles/obs/templates/scenes.json +++ b/roles/obs/templates/scenes.json @@ -2,14 +2,168 @@    "current_program_scene": "All track audio and screen",    "current_scene": "All track audio and screen",    "current_transition": "Fade", -  "groups": [], +  "groups": [ +    { +      "balance": 0.5, +      "deinterlace_field_order": 0, +      "deinterlace_mode": 0, +      "enabled": true, +      "flags": 0, +      "hotkeys": { +        "libobs.hide_scene_item.Logo": [], +        "libobs.hide_scene_item.News": [], +        "libobs.hide_scene_item.URL": [], +        "libobs.show_scene_item.Logo": [], +        "libobs.show_scene_item.News": [], +        "libobs.show_scene_item.URL": [] +      }, +      "id": "group", +      "mixers": 0, +      "monitoring_type": 0, +      "muted": false, +      "name": "{{ emacsconf_id }} base", +      "prev_ver": 469762051, +      "private_settings": {}, +      "push-to-mute": false, +      "push-to-mute-delay": 0, +      "push-to-talk": false, +      "push-to-talk-delay": 0, +      "settings": { +        "custom_size": true, +        "cx": 103, +        "cy": 507, +        "id_counter": 0, +        "items": [ +          { +            "align": 5, +            "blend_method": "default", +            "blend_type": "normal", +            "bounds": { +              "x": 0, +              "y": 0 +            }, +            "bounds_align": 0, +            "bounds_type": 0, +            "crop_bottom": 0, +            "crop_left": 0, +            "crop_right": 0, +            "crop_top": 0, +            "group_item_backup": false, +            "hide_transition": { +              "duration": 0 +            }, +            "id": 8, +            "locked": false, +            "name": "News", +            "pos": { +              "x": 22, +              "y": 390 +            }, +            "private_settings": {}, +            "rot": -90, +            "scale": { +              "x": 1, +              "y": 1 +            }, +            "scale_filter": "disable", +            "show_transition": { +              "duration": 0 +            }, +            "visible": true +          }, +          { +            "align": 5, +            "blend_method": "default", +            "blend_type": "normal", +            "bounds": { +              "x": 0, +              "y": 0 +            }, +            "bounds_align": 0, +            "bounds_type": 0, +            "crop_bottom": 0, +            "crop_left": 0, +            "crop_right": 0, +            "crop_top": 0, +            "group_item_backup": false, +            "hide_transition": { +              "duration": 0 +            }, +            "id": 7, +            "locked": false, +            "name": "URL", +            "pos": { +              "x": 55, +              "y": 389 +            }, +            "private_settings": {}, +            "rot": -90, +            "scale": { +              "x": 1, +              "y": 1 +            }, +            "scale_filter": "disable", +            "show_transition": { +              "duration": 0 +            }, +            "visible": true +          }, +          { +            "align": 5, +            "blend_method": "default", +            "blend_type": "normal", +            "bounds": { +              "x": 0, +              "y": 0 +            }, +            "bounds_align": 0, +            "bounds_type": 0, +            "crop_bottom": 0, +            "crop_left": 0, +            "crop_right": 0, +            "crop_top": 0, +            "group_item_backup": false, +            "hide_transition": { +              "duration": 0 +            }, +            "id": 6, +            "locked": false, +            "name": "Logo", +            "pos": { +              "x": 0, +              "y": 404 +            }, +            "private_settings": {}, +            "rot": 0, +            "scale": { +              "x": 0.40234375, +              "y": 0.40234375 +            }, +            "scale_filter": "disable", +            "show_transition": { +              "duration": 0 +            }, +            "visible": true +          } +        ] +      }, +      "sync": 0, +      "versioned_id": "group", +      "volume": 1 +    } +  ],    "modules": {      "auto-scene-switcher": {        "active": false,        "interval": 300, -      "non_matching_scene": "", -      "switch_if_not_matching": false, -      "switches": [] +      "non_matching_scene": "All track audio and screen", +      "switch_if_not_matching": true, +      "switches": [ +        { +          "scene": "Video audio and screen", +          "window_title": ".*mpv" +        } +      ]      },      "output-timer": {        "autoStartRecordTimer": false, @@ -69,6 +223,95 @@        "deinterlace_mode": 0,        "enabled": true,        "flags": 0, +      "hotkeys": {}, +      "id": "text_ft2_source", +      "mixers": 0, +      "monitoring_type": 0, +      "muted": false, +      "name": "News", +      "prev_ver": 469762051, +      "private_settings": {}, +      "push-to-mute": false, +      "push-to-mute-delay": 0, +      "push-to-talk": false, +      "push-to-talk-delay": 0, +      "settings": { +        "font": { +          "face": "Sans Serif", +          "flags": 0, +          "size": 24, +          "style": "" +        }, +        "from_file": true, +        "text_file": "/home/{{ emacsconf_id }}-{{ item.id }}/news.txt" +      }, +      "sync": 0, +      "versioned_id": "text_ft2_source_v2", +      "volume": 1 +    }, +    { +      "balance": 0.5, +      "deinterlace_field_order": 0, +      "deinterlace_mode": 0, +      "enabled": true, +      "flags": 0, +      "hotkeys": {}, +      "id": "text_ft2_source", +      "mixers": 0, +      "monitoring_type": 0, +      "muted": false, +      "name": "URL", +      "prev_ver": 469762051, +      "private_settings": {}, +      "push-to-mute": false, +      "push-to-mute-delay": 0, +      "push-to-talk": false, +      "push-to-talk-delay": 0, +      "settings": { +        "font": { +          "face": "Sans Serif", +          "flags": 0, +          "size": 24, +          "style": "" +        }, +        "from_file": true, +        "text_file": "/home/{{ emacsconf_id }}-{{ item.id }}/url.txt" +      }, +      "sync": 0, +      "versioned_id": "text_ft2_source_v2", +      "volume": 1 +    }, +    { +      "balance": 0.5, +      "deinterlace_field_order": 0, +      "deinterlace_mode": 0, +      "enabled": true, +      "flags": 0, +      "hotkeys": {}, +      "id": "image_source", +      "mixers": 0, +      "monitoring_type": 0, +      "muted": false, +      "name": "Logo", +      "prev_ver": 469762051, +      "private_settings": {}, +      "push-to-mute": false, +      "push-to-mute-delay": 0, +      "push-to-talk": false, +      "push-to-talk-delay": 0, +      "settings": { +        "file": "/home/{{ emacsconf_id }}-{{ item.id }}/logo.png" +      }, +      "sync": 0, +      "versioned_id": "image_source", +      "volume": 1 +    }, +    { +      "balance": 0.5, +      "deinterlace_field_order": 0, +      "deinterlace_mode": 0, +      "enabled": true, +      "flags": 0,        "hotkeys": {          "libobs.mute": [],          "libobs.push-to-mute": [], @@ -101,12 +344,16 @@        "flags": 0,        "hotkeys": {          "OBSBasic.SelectScene": [], +        "libobs.hide_scene_item.Bottom": [],          "libobs.hide_scene_item.Screen Capture (XSHM)": [], -        "libobs.hide_scene_item.{{ item.id }}-qa": [], -        "libobs.hide_scene_item.{{ item.id }}-vid": [], +        "libobs.hide_scene_item.dev-qa": [], +        "libobs.hide_scene_item.dev-vid": [], +        "libobs.hide_scene_item.emacsconf base": [], +        "libobs.show_scene_item.Bottom": [],          "libobs.show_scene_item.Screen Capture (XSHM)": [], -        "libobs.show_scene_item.{{ item.id }}-qa": [], -        "libobs.show_scene_item.{{ item.id }}-vid": [] +        "libobs.show_scene_item.dev-qa": [], +        "libobs.show_scene_item.dev-vid": [], +        "libobs.show_scene_item.emacsconf base": []        },        "id": "scene",        "mixers": 0, @@ -121,7 +368,7 @@        "push-to-talk-delay": 0,        "settings": {          "custom_size": false, -        "id_counter": 14, +        "id_counter": 22,          "items": [            {              "align": 5, @@ -145,14 +392,14 @@              "locked": false,              "name": "Screen Capture (XSHM)",              "pos": { -              "x": 0, +              "x": 115,                "y": 0              },              "private_settings": {},              "rot": 0,              "scale": { -              "x": 1, -              "y": 1 +              "x": 0.91015625, +              "y": 0.9097222089767456              },              "scale_filter": "disable",              "show_transition": { @@ -233,6 +480,191 @@                "duration": 0              },              "visible": true +          }, +          { +            "align": 5, +            "blend_method": "default", +            "blend_type": "normal", +            "bounds": { +              "x": 0, +              "y": 0 +            }, +            "bounds_align": 0, +            "bounds_type": 0, +            "crop_bottom": 0, +            "crop_left": 0, +            "crop_right": 0, +            "crop_top": 0, +            "group_item_backup": true, +            "hide_transition": { +              "duration": 0 +            }, +            "id": 8, +            "locked": false, +            "name": "News", +            "pos": { +              "x": 31, +              "y": 595 +            }, +            "private_settings": {}, +            "rot": -90, +            "scale": { +              "x": 1, +              "y": 1 +            }, +            "scale_filter": "disable", +            "show_transition": { +              "duration": 0 +            }, +            "visible": true +          }, +          { +            "align": 5, +            "blend_method": "default", +            "blend_type": "normal", +            "bounds": { +              "x": 0, +              "y": 0 +            }, +            "bounds_align": 0, +            "bounds_type": 0, +            "crop_bottom": 0, +            "crop_left": 0, +            "crop_right": 0, +            "crop_top": 0, +            "group_item_backup": true, +            "hide_transition": { +              "duration": 0 +            }, +            "id": 7, +            "locked": false, +            "name": "URL", +            "pos": { +              "x": 64, +              "y": 594 +            }, +            "private_settings": {}, +            "rot": -90, +            "scale": { +              "x": 1, +              "y": 1 +            }, +            "scale_filter": "disable", +            "show_transition": { +              "duration": 0 +            }, +            "visible": true +          }, +          { +            "align": 5, +            "blend_method": "default", +            "blend_type": "normal", +            "bounds": { +              "x": 0, +              "y": 0 +            }, +            "bounds_align": 0, +            "bounds_type": 0, +            "crop_bottom": 0, +            "crop_left": 0, +            "crop_right": 0, +            "crop_top": 0, +            "group_item_backup": true, +            "hide_transition": { +              "duration": 0 +            }, +            "id": 6, +            "locked": false, +            "name": "Logo", +            "pos": { +              "x": 9, +              "y": 609 +            }, +            "private_settings": {}, +            "rot": 0, +            "scale": { +              "x": 0.40234375, +              "y": 0.40234375 +            }, +            "scale_filter": "disable", +            "show_transition": { +              "duration": 0 +            }, +            "visible": true +          }, +          { +            "align": 5, +            "blend_method": "default", +            "blend_type": "normal", +            "bounds": { +              "x": 0, +              "y": 0 +            }, +            "bounds_align": 0, +            "bounds_type": 0, +            "crop_bottom": 0, +            "crop_left": 0, +            "crop_right": 0, +            "crop_top": 0, +            "group_item_backup": false, +            "hide_transition": { +              "duration": 0 +            }, +            "id": 21, +            "locked": false, +            "name": "{{ emacsconf_id }} base", +            "pos": { +              "x": 9, +              "y": 205 +            }, +            "private_settings": {}, +            "rot": 0, +            "scale": { +              "x": 1, +              "y": 1 +            }, +            "scale_filter": "disable", +            "show_transition": { +              "duration": 0 +            }, +            "visible": true +          }, +          { +            "align": 5, +            "blend_method": "default", +            "blend_type": "normal", +            "bounds": { +              "x": 0, +              "y": 0 +            }, +            "bounds_align": 0, +            "bounds_type": 0, +            "crop_bottom": 0, +            "crop_left": 0, +            "crop_right": 0, +            "crop_top": 0, +            "group_item_backup": false, +            "hide_transition": { +              "duration": 0 +            }, +            "id": 22, +            "locked": false, +            "name": "Bottom", +            "pos": { +              "x": 112, +              "y": 654 +            }, +            "private_settings": {}, +            "rot": 0, +            "scale": { +              "x": 1, +              "y": 1 +            }, +            "scale_filter": "disable", +            "show_transition": { +              "duration": 0 +            }, +            "visible": true            }          ]        }, @@ -302,9 +734,11 @@        "hotkeys": {          "OBSBasic.SelectScene": [],          "libobs.hide_scene_item.Screen Capture (XSHM)": [], -        "libobs.hide_scene_item.{{ item.id }}-vid": [], +        "libobs.hide_scene_item.dev-vid": [], +        "libobs.hide_scene_item.emacsconf base": [],          "libobs.show_scene_item.Screen Capture (XSHM)": [], -        "libobs.show_scene_item.{{ item.id }}-vid": [] +        "libobs.show_scene_item.dev-vid": [], +        "libobs.show_scene_item.emacsconf base": []        },        "id": "scene",        "mixers": 0, @@ -319,7 +753,7 @@        "push-to-talk-delay": 0,        "settings": {          "custom_size": false, -        "id_counter": 5, +        "id_counter": 11,          "items": [            {              "align": 5, @@ -394,12 +828,192 @@                "duration": 0              },              "visible": true +          }, +          { +            "align": 5, +            "blend_method": "default", +            "blend_type": "normal", +            "bounds": { +              "x": 0, +              "y": 0 +            }, +            "bounds_align": 0, +            "bounds_type": 0, +            "crop_bottom": 0, +            "crop_left": 0, +            "crop_right": 0, +            "crop_top": 0, +            "group_item_backup": true, +            "hide_transition": { +              "duration": 0 +            }, +            "id": 8, +            "locked": false, +            "name": "News", +            "pos": { +              "x": 31, +              "y": 580 +            }, +            "private_settings": {}, +            "rot": -90, +            "scale": { +              "x": 1, +              "y": 1 +            }, +            "scale_filter": "disable", +            "show_transition": { +              "duration": 0 +            }, +            "visible": true +          }, +          { +            "align": 5, +            "blend_method": "default", +            "blend_type": "normal", +            "bounds": { +              "x": 0, +              "y": 0 +            }, +            "bounds_align": 0, +            "bounds_type": 0, +            "crop_bottom": 0, +            "crop_left": 0, +            "crop_right": 0, +            "crop_top": 0, +            "group_item_backup": true, +            "hide_transition": { +              "duration": 0 +            }, +            "id": 7, +            "locked": false, +            "name": "URL", +            "pos": { +              "x": 64, +              "y": 579 +            }, +            "private_settings": {}, +            "rot": -90, +            "scale": { +              "x": 1, +              "y": 1 +            }, +            "scale_filter": "disable", +            "show_transition": { +              "duration": 0 +            }, +            "visible": true +          }, +          { +            "align": 5, +            "blend_method": "default", +            "blend_type": "normal", +            "bounds": { +              "x": 0, +              "y": 0 +            }, +            "bounds_align": 0, +            "bounds_type": 0, +            "crop_bottom": 0, +            "crop_left": 0, +            "crop_right": 0, +            "crop_top": 0, +            "group_item_backup": true, +            "hide_transition": { +              "duration": 0 +            }, +            "id": 6, +            "locked": false, +            "name": "Logo", +            "pos": { +              "x": 9, +              "y": 594 +            }, +            "private_settings": {}, +            "rot": 0, +            "scale": { +              "x": 0.40234375, +              "y": 0.40234375 +            }, +            "scale_filter": "disable", +            "show_transition": { +              "duration": 0 +            }, +            "visible": true +          }, +          { +            "align": 5, +            "blend_method": "default", +            "blend_type": "normal", +            "bounds": { +              "x": 0, +              "y": 0 +            }, +            "bounds_align": 0, +            "bounds_type": 0, +            "crop_bottom": 0, +            "crop_left": 0, +            "crop_right": 0, +            "crop_top": 0, +            "group_item_backup": false, +            "hide_transition": { +              "duration": 0 +            }, +            "id": 11, +            "locked": false, +            "name": "{{ emacsconf_id }} base", +            "pos": { +              "x": 9, +              "y": 190 +            }, +            "private_settings": {}, +            "rot": 0, +            "scale": { +              "x": 1, +              "y": 1 +            }, +            "scale_filter": "disable", +            "show_transition": { +              "duration": 0 +            }, +            "visible": true            }          ]        },        "sync": 0,        "versioned_id": "scene",        "volume": 1 +    }, +    { +      "balance": 0.5, +      "deinterlace_field_order": 0, +      "deinterlace_mode": 0, +      "enabled": true, +      "flags": 0, +      "hotkeys": {}, +      "id": "text_ft2_source", +      "mixers": 0, +      "monitoring_type": 0, +      "muted": false, +      "name": "Bottom", +      "prev_ver": 469762051, +      "private_settings": {}, +      "push-to-mute": false, +      "push-to-mute-delay": 0, +      "push-to-talk": false, +      "push-to-talk-delay": 0, +      "settings": { +        "font": { +          "face": "Sans Serif", +          "flags": 0, +          "size": 28, +          "style": "" +        }, +        "from_file": true, +        "text_file": "/home/{{ emacsconf_id }}-{{ item.id }}/bottom.txt" +      }, +      "sync": 0, +      "versioned_id": "text_ft2_source_v2", +      "volume": 1      }    ],    "transition_duration": 300, diff --git a/roles/obs/templates/vnc-track b/roles/obs/templates/vnc-track index b987d8b..99b0ce8 100644 --- a/roles/obs/templates/vnc-track +++ b/roles/obs/templates/vnc-track @@ -1 +1 @@ -vncserver :{{ item.vnc_id }} -geometry {{ res_x }}x{{ res_y }} -useold -xstartup {{ emacsconf_home }}/.vnc/xstartup-{{ item.id }} -desktop {{ emacsconf_id }}-{{ item.id }}
\ No newline at end of file +vncserver :{{ item.vnc_id }} -geometry {{ res_x }}x{{ res_y }} -useold -xstartup {{ emacsconf_home }}/.vnc/xstartup -desktop {{ emacsconf_id }}-{{ item.id }} -rfbport {{ item.vnc_port }}
\ No newline at end of file diff --git a/roles/obs/templates/xstartup-track b/roles/obs/templates/xstartup-track index 140f836..b80caac 100755 --- a/roles/obs/templates/xstartup-track +++ b/roles/obs/templates/xstartup-track @@ -1,11 +1,13 @@  #!/bin/bash  export MPV_SOCKET={{ emacsconf_home }}/{{ item.id }}-mpv-socket  export TRACK={{ item.id }} -export PATH="/usr/local/bin:/usr/bin:/bin:{{ emacsconf_home }}/bin/{{ item.id }}" +export PATH="/usr/local/bin:/usr/bin:/bin:{{ emacsconf_home }}/bin"  xrdb $HOME/.Xresources  pulseaudio --start  pacmd set-default-sink {{ item.id }}-qa -firefox file://data/emacsconf/{{ emacsconf_year }}/index-{{ item.id }}.html -P "{{ emacsconf_id }}-{{ item.id }}" & +firefox file:///data/emacsconf/{{ emacsconf_year }}/index-{{ item.id }}.html & +$HOME/bin/track-obs & +termit &  # $HOME/{{ item.id }}-obs &  # $HOME/{{ item.id }}-mpv $HOME/logo.png &  exec i3  | 
