summaryrefslogtreecommitdiffstats
path: root/organizers-notebook.md
diff options
context:
space:
mode:
authorSacha Chua <sacha@sachachua.com>2024-11-14 12:21:32 -0500
committerSacha Chua <sacha@sachachua.com>2024-11-14 12:21:32 -0500
commit7bb10add18dc3add55e1a1f5877f67f8864aa1fa (patch)
treec53b4f4bee79273c31d0ba4e8c3bf75a17fea22c /organizers-notebook.md
parent3ddf955b120d6e138e0888c87c873a2021f3b076 (diff)
downloademacsconf-wiki-7bb10add18dc3add55e1a1f5877f67f8864aa1fa.tar.xz
emacsconf-wiki-7bb10add18dc3add55e1a1f5877f67f8864aa1fa.zip
add note about changingHEADmaster
Diffstat (limited to 'organizers-notebook.md')
-rw-r--r--organizers-notebook.md135
1 files changed, 94 insertions, 41 deletions
diff --git a/organizers-notebook.md b/organizers-notebook.md
index 7e338275..2cff5989 100644
--- a/organizers-notebook.md
+++ b/organizers-notebook.md
@@ -20,32 +20,35 @@ This document is the general organizers' notebook that can be used as a starting
- [Create the public organizers&rsquo; notebook in the wiki](#starting-up-the-conference-planning-process-create-the-public-organizers-notebook-in-the-wiki)
- [Phases and lessons learned](#phases-and-lessons-learned)
- [Draft CFP](#phases-and-lessons-learned-draft-cfp)
- - [Announce](#org3608282)
- - [Process proposals](#orgf94fb47)
- - [Accept proposals](#org74dc473)
+ - [Announce](#orgc65a882)
+ - [Process proposals](#org05d8ef4)
+ - [Accept proposals](#orge98e249)
- [Draft schedule](#draft-schedule)
- - [Set up backstage and upload](#org4d60026)
- - [Post the schedule](#org42db0c4)
- - [Process uploaded files](#org60f6486)
- - [Generate assets](#org6e66fc5)
- - [Prepare the infrastructure](#org6983794)
- - [Getting ready for captions](#orga1601de)
-- [General infrastructure](#orga2c0410)
+ - [Set up backstage and upload](#orge9a3c89)
+ - [Post the schedule](#org1e7771f)
+ - [Process uploaded files](#orgfd23289)
+ - [Generate assets](#org80c461d)
+ - [Prepare the infrastructure](#org033e054)
+ - [Getting ready for captions](#org217ecc8)
+- [General infrastructure](#org59478a5)
- [Icecast](#icecast)
- [Watching pages](#watch)
- [VNC](#vnc)
- - [Streaming with OBS](#org0a63f1c)
- - [IRC web client](#orgaffe686)
- - [Etherpad](#org628c2fe)
+ - [Streaming with OBS](#obs)
+ - [Shell scripts](#org511ba94)
+ - [IRC web client](#org6abc1fd)
+ - [Etherpad](#orgd320fcc)
- [Publishing media to the server and to the wiki](#media)
- - [Automated IRC announcements](#org3ca9756)
- - [Manual IRC announcements](#org4cbb72c)
- - [Low-res stream](#org84b7e1e)
- - [Restream to YouTube](#org1e5d62e)
- - [Restream to Toobnix](#orga5282bc)
+ - [Automated IRC announcements](#org005b5de)
+ - [Manual IRC announcements](#org33f6301)
+ - [Low-res stream](#orgd5b1661)
+ - [Restream to YouTube](#org3875a88)
+ - [Restream to Toobnix](#org678b044)
- [Other process notes](#other)
- [Adding another user to BBB](#bbb-user)
- - [Ansible](#org8ae0b84)
+ - [When a talk is cancelled](#cancel-talk)
+ - [When a talk Q&A changes method](#change-talk-qa)
+ - [Ansible](#orgf87ae48)
<a id="starting-up-the-conference-planning-process"></a>
@@ -146,7 +149,7 @@ Put inside double square brackets: `!template id=pagedraft`
- Put the speaker introduction right after the talk description for easier web page copying.
-<a id="org3608282"></a>
+<a id="orgc65a882"></a>
## Announce
@@ -154,7 +157,7 @@ Put inside double square brackets: `!template id=pagedraft`
- Submit to <https://foss.events/>
-<a id="orgf94fb47"></a>
+<a id="org05d8ef4"></a>
## Process proposals
@@ -183,7 +186,7 @@ When proposals come in:
PUBLIC\_EMAIL
-<a id="org74dc473"></a>
+<a id="orge98e249"></a>
## Accept proposals
@@ -216,7 +219,7 @@ For each talk:
- Add missing items to plan
-<a id="org4d60026"></a>
+<a id="orge9a3c89"></a>
## Set up backstage and upload
@@ -227,7 +230,7 @@ Lessons learned:
- Next year, let&rsquo;s get upload.emacsconf.org in place as the domain name so that people don&rsquo;t try to FTP files to it.
-<a id="org42db0c4"></a>
+<a id="org1e7771f"></a>
## Post the schedule
@@ -238,7 +241,7 @@ Lessons learned:
- Update talks.md to refer to watch.md as well
-<a id="org60f6486"></a>
+<a id="orgfd23289"></a>
## Process uploaded files
@@ -263,7 +266,7 @@ Process:
3. <elisp:emacsconf-publish-backstage-index>
-<a id="org6e66fc5"></a>
+<a id="org80c461d"></a>
## Generate assets
@@ -281,7 +284,7 @@ Process:
- Splice together into a file that will be processed with subed-record-compile-video.
-<a id="org6983794"></a>
+<a id="org033e054"></a>
## Prepare the infrastructure
@@ -303,7 +306,7 @@ Checklist:
- [ ] Icecast
-<a id="orga1601de"></a>
+<a id="org217ecc8"></a>
## Getting ready for captions
@@ -314,7 +317,7 @@ Onboarding:
- Send backstage information <elisp:emacsconf-mail-backstage-info-to-volunteer> . (Can be sent to all captioning volunteers with <elisp:emacsconf-mail-backstage-info-to-captioning-volunteers>)
-<a id="orga2c0410"></a>
+<a id="org59478a5"></a>
# General infrastructure
@@ -394,7 +397,7 @@ Setting up
<a id="vnc-instructions"></a>
-#### Instructions
+### Instructions
NOTE: VNC+OBS doesn&rsquo;t work well if you have a window manager that
automatically resizes windows, like i3. Please configure your window
@@ -404,7 +407,7 @@ manager so that the VNC window is not resized.
2. Set up your local environment:
- gen: `export TRACK=gen; export TRACK_PORT=5905; export SSH_PORT=46668`
- - dev: export TRACK=dev; export TRACK\_PORT=5906; export SSH\_PORT=46668
+ - dev: `export TRACK=dev; export TRACK_PORT=5906; export SSH_PORT=46668`
3. Copy the password:
@@ -433,7 +436,7 @@ and then connect with:
xvncviewer 127.0.0.1:$TRACK_PORT -shared -geometry 1280x720 -passwd vnc-passwd-$TRACK &
-<a id="org0a63f1c"></a>
+<a id="obs"></a>
## Streaming with OBS
@@ -451,7 +454,7 @@ so that the year is updated in the shell scripts.
<a id="obs-instructions"></a>
-#### Instructions
+### Instructions
1. [Connect to the VNC session for the track.](#vnc-instructions)
@@ -478,7 +481,34 @@ so that the year is updated in the configuration.
This is on live.emacsconf.org and can be restarted with `/etc/init.d/emacsconf restart`.
-<a id="orgaffe686"></a>
+<a id="org511ba94"></a>
+
+## Shell scripts
+
+Success: From the commandline, hosts can:
+
+- [X] play just the intro: intro $SLUG
+- [X] play a file without an intro: play $SLUG
+- [X] play a file with an intro: play-with-intro $SLUG (hmm, this didn&rsquo;t show the subtitles)
+ ah, it&rsquo;s because the intros need to be in the cache dir?
+- [X] open the Q&A for a talk: handle-qa $SLUG
+ - [X] open the pad: pad $SLUG
+ - [X] open BBB: bbb $SLUG
+- [ ] do the whole thing: handle-session $SLUG
+- [ ] rebroadcast the other stream:
+ - rebroadcast gen
+ - rebroadcast dev
+- [ ] control background music: music, stop-music
+
+Setup:
+
+- OBS must be streaming from the stream you&rsquo;re testing. [Streaming with OBS](#obs)
+- You may want to generate test assets and copy them over to the assets/stream directory.
+- Generate all the overlays and copy them to assets/overlays
+- Set up the assets/music directory
+
+
+<a id="org6abc1fd"></a>
## IRC web client
@@ -500,7 +530,7 @@ connection exhaustion errors. Is that something we can plan now or would
you like me to bring it up a few days before the conference?
-<a id="org628c2fe"></a>
+<a id="orgd320fcc"></a>
## Etherpad
@@ -536,7 +566,7 @@ Switching it back to `TO_STREAM` and calling
You can generate the index with `emacsconf-publish-update-media`.
-<a id="org3ca9756"></a>
+<a id="org005b5de"></a>
## Automated IRC announcements
@@ -545,7 +575,7 @@ Success:
- [ ] When a talk starts playing, it is announced in the relevant channel
-<a id="org4cbb72c"></a>
+<a id="org33f6301"></a>
## Manual IRC announcements
@@ -554,17 +584,17 @@ Success:
- [X] You can /opall, /conftopic, and /broadcast
-<a id="org84b7e1e"></a>
+<a id="orgd5b1661"></a>
## Low-res stream
-<a id="org1e5d62e"></a>
+<a id="org3875a88"></a>
## Restream to YouTube
-<a id="orga5282bc"></a>
+<a id="org678b044"></a>
## Restream to Toobnix
@@ -582,7 +612,30 @@ Success:
docker exec -it greenlight-v2 bundle exec rake user:create["USERNAME","EMAIL","PASSWORD","user"]
-<a id="org8ae0b84"></a>
+<a id="cancel-talk"></a>
+
+## When a talk is cancelled
+
+1. Update the status to CANCELLED.
+2. Update the schedule with <elisp:emacsconf-update-schedule>
+3. Regenerate the intros (before, after). <elisp:emacsconf-stream-generate-in-between-pages>, then use <elisp:subed-record-compile-video> in the intros file.
+4. Sync the new intros to the /data/emacsconf/shared/$YEAR/assets/intros directory.
+5. Regenerate the pads: <elisp:emacsconf-pad-prepopulate-all-talks>
+
+
+<a id="change-talk-qa"></a>
+
+## When a talk Q&A changes method
+
+1. Update the talk property.
+2. Update the schedule with <elisp:emacsconf-update-schedule>
+3. Regenerate the intros (before, after). <elisp:emacsconf-stream-generate-in-between-pages>, then use <elisp:subed-record-compile-video> in the intros file.
+4. Sync the new intros to the /data/emacsconf/shared/$YEAR/assets/intros directory.
+5. Regenerate the pads: <elisp:emacsconf-pad-prepopulate-all-talks>
+6. Regenerate talks.json: <elisp:emacsconf-publish-talks-json-to-files>
+
+
+<a id="orgf87ae48"></a>
## Ansible