diff options
Diffstat (limited to '')
-rw-r--r-- | 2024/organizers-notebook/index.org | 824 |
1 files changed, 789 insertions, 35 deletions
diff --git a/2024/organizers-notebook/index.org b/2024/organizers-notebook/index.org index b48f01d1..4c47e4b1 100644 --- a/2024/organizers-notebook/index.org +++ b/2024/organizers-notebook/index.org @@ -1,4 +1,4 @@ -# [[elisp:(progn (memoize 'emacsconf-get-talk-info "5 seconds") (org-md-export-to-markdown) (memoize-restore 'emacsconf-get-talk-info))][EPpxport this file to Markdown]] +# [[elisp:(progn (memoize 'emacsconf-get-talk-info "5 seconds") (org-md-export-to-markdown) (memoize-restore 'emacsconf-get-talk-info))][Export this file to Markdown]] #+TAGS: emacsconf # [[elisp:(memoize 'emacsconf-get-talk-info "5 seconds")][Memoize emacsconf-get-talk-info]] - [[elisp:(memoize-restore 'emacsconf-get-talk-info)][Unmemoize]] #+todo: TODO(t) SOMEDAY STARTED INPROGRESS(i) WAITING(w) STANDBY(s) BLOCKED(b) | DONE(x) CANCELLED(c) @@ -55,6 +55,9 @@ You might also like the [general organizers' notebook](/organizers-notebook) and #+TOC: headlines 2 * COMMENT Shortcuts +:PROPERTIES: +:CUSTOM_ID: shortcuts +:END: [[file:~/proj/emacsconf/wiki/organizers-notebook/index.org][Common notebook]] @@ -137,6 +140,9 @@ CLOSED: [2024-09-17 Tue 16:45] :END: **** Draft linked pages +:PROPERTIES: +:CUSTOM_ID: phases-draft-cfp-draft-linked-pages +:END: - [X] cfp - [X] submit page @@ -146,12 +152,15 @@ CLOSED: [2024-09-17 Tue 16:45] CLOSED: [2024-06-11 Tue 19:21] DEADLINE: <2024-06-14 Fri> :PROPERTIES: :CREATED: [024-06-03 Mon 10:1] +:CUSTOM_ID: phases-draft-cfp-check-with-other-organizers :END: **** DONE Post CFP in the usual places CLOSED: [2024-09-17 Tue 16:45] +:PROPERTIES: +:CUSTOM_ID: phases-draft-cfp-post-cfp-in-the-usual-places +:END: emacsconf-discuss, reddit.com/r/emacs, Emacs News, emacs-tangents, Mastodon, X -** DONE Draft schedule -CLOSED: [2024-11-02 Sat 11:38] +** TODO Draft schedule :PROPERTIES: :CUSTOM_ID: draft-schedule :END: @@ -207,23 +216,22 @@ CLOSED: [2024-11-02 Sat 11:38] guile ; >= 12:00 secrets ; >= 13:00 (mcclim :time 60) ; >= 14:00 - repro ; any + maxima ("GEN Sunday, Dec 8" :start "2024-12-08 09:00" :set-track "General") sun-open links ; <= 10:30 regex ; <= 12:00 sun or >= 12:00 sat learning ; <= 13:00 - (org-teach :buffer 15) ; any + (blee :buffer 15) ; any (hyperbole :buffer 15) (lunch :start "12:00") - (hywiki :buffer 15) ; >= 10:00 - (pgmacs :buffer 15) ; <= 15:00 - (blee :buffer 10) ; any - (literate :buffer 15) ; >= 13:00 - students ; >= 14:00 Sun + (hywiki :buffer 20) ; >= 10:00 + (pgmacs :buffer 20) ; <= 15:00 + (literate :buffer 20) ; >= 13:00 + (students :start "15:00") ; >= 14:00 Sun sharing ; >= 13:00 - (transducers) ; >= 16:00 sun - (sun-close :start "17:00") + (transducers :start "16:00") ; >= 16:00 sun + (sun-close) )) (setq emacsconf-schedule-draft (emacsconf-schedule-prepare (emacsconf-schedule-inflate-sexp emacsconf-schedule-plan))) (prog1 (string-join (emacsconf-schedule-validate emacsconf-schedule-draft) "\n") @@ -380,7 +388,463 @@ Notes: Coloring by availability: - light blue: constraint is <= a time - peach: constraint is >= a time + +** DONE Prepare shift calendar, ask people to sign up +CLOSED: [2024-11-26 Tue 10:06] SCHEDULED: <2023-11-01 Wed> +:PROPERTIES: +:CUSTOM_ID: shifts +:END: + +#+BEGIN_EXPORT md +<a name="shifts"></a> +#+END_EXPORT + +AM: 9-12 PM EST, PM: 1-5 PM EST (plus a little extra for setup/transition) + +Saturday Dec 7 2024 + +#+NAME: saturday-shifts +| | Start | End | [[https://emacsconf.org/2023/volunteer/host/][Host]] | Streamer | [[https://emacsconf.org/2023/volunteer/checkin/][Checkin]] | [[https://emacsconf.org/2023/volunteer/irc/][IRC]] | [[https://emacsconf.org/2023/volunteer/pad/][Pad]] | Coord | +|--------+-------+-------+--------+----------+---------+-----+-----+--------| +| Gen AM | 09:00 | 12:00 | zaeph | sachac | sachac | | | sachac | +| Gen PM | 13:00 | 17:00 | zaeph | sachac | sachac | | | sachac | +| Dev AM | 10:00 | 12:00 | corwin | sachac | sachac | | | sachac | +| Dev PM | 13:00 | 17:00 | corwin | sachac | sachac | | | sachac | + +Sunday Dec 8 2024 + +#+NAME: sunday-shifts +| | Start | End | [[https://emacsconf.org/2023/volunteer/host/][Host]] | Streamer | [[https://emacsconf.org/2023/volunteer/checkin/][Checkin]] | [[https://emacsconf.org/2023/volunteer/irc/][IRC]] | [[https://emacsconf.org/2023/volunteer/pad/][Pad]] | Coord | +|--------+-------+-------+-------+----------+---------+-----+-----+--------| +| Gen AM | 09:00 | 12:00 | zaeph | sachac | corwin | | | sachac | +| Gen PM | 13:00 | 17:00 | zaeph | sachac | corwin | | | sachac | + +Backups: +- dev host/streamer: +- gen host/streamer: +- checkin, IRC, pad: + +Interested in a shift? Please e-mail [[mailto:emacsconf-org-private@gnu.org]] and we'll help you figure out what you need to learn. + +#+begin_src emacs-lisp :var sat=saturday-shifts :var sun=sunday-shifts :rownames no :colnames no :results verbatim replace +`(setq emacsconf-shifts + (list + ,@(apply #'append + (mapcar + (lambda (day) + (let ((headers + (mapcar + (lambda (field) + (intern + (concat + ":" + (downcase + (if (string-match org-link-bracket-re field) + (match-string 2 field) + field))))) + (seq-drop (car (cadr day)) 3)))) + (mapcar + (lambda (row) + (apply #'append + (list 'list :id + (when (string-match "^\\([^ ]+\\) \\(AM\\|PM\\)" (car row)) + (format "%s-%s-%s" + (car day) + (downcase (match-string 2 (car row))) + (downcase (match-string 1 (car row))))) + :track + (if (string-match "^Gen" (car row)) "General" "Development") + :start + (format "%sT%s:00%s" + (elt day 2) + (elt row 1) + emacsconf-timezone-offset) + :end + (format "%sT%s:00%s" + (elt day 2) + (elt row 2) + emacsconf-timezone-offset)) + (seq-map-indexed + (lambda (value index) + (unless (string= value "") + (list (elt headers index) value))) + (seq-drop row 3)))) + (cdr (cadr day))) + )) + (list + (list "sat" sat "2024-12-07") + (list "sun" sun "2024-12-08")))))) + +#+end_src + +#+RESULTS: +:results: +(setq emacsconf-shifts (list (list :id "sat-am-gen" :track "General" :start "2024-12-07T09:00:00-0500" :end "2024-12-07T12:00:00-0500" :host "zaeph" :streamer "sachac" :checkin "sachac" :coord "sachac") (list :id "sat-pm-gen" :track "General" :start "2024-12-07T13:00:00-0500" :end "2024-12-07T17:00:00-0500" :host "zaeph" :streamer "sachac" :checkin "sachac" :coord "sachac") (list :id "sat-am-dev" :track "Development" :start "2024-12-07T10:00:00-0500" :end "2024-12-07T12:00:00-0500" :host "corwin" :streamer "sachac" :checkin "sachac" :coord "sachac") (list :id "sat-pm-dev" :track "Development" :start "2024-12-07T13:00:00-0500" :end "2024-12-07T17:00:00-0500" :host "corwin" :streamer "sachac" :checkin "sachac" :coord "sachac") (list :id "sun-am-gen" :track "General" :start "2024-12-08T09:00:00-0500" :end "2024-12-08T12:00:00-0500" :host "zaeph" :streamer "sachac" :checkin "corwin" :coord "sachac") (list :id "sun-pm-gen" :track "General" :start "2024-12-08T13:00:00-0500" :end "2024-12-08T17:00:00-0500" :host "zaeph" :streamer "sachac" :checkin "corwin" :coord "sachac"))) +:end: + + +** Record intros and opening remarks +:PROPERTIES: +:CUSTOM_ID: intros +:END: + +*** WAITING Redo pkal pronunciation :emacsconf:record: +SCHEDULED: <2024-12-03 Tue> +:PROPERTIES: +:CREATED: [2024-12-02 Mon 16:48] +:CUSTOM_ID: phases-record-intros-and-opening-remarks-redo-pkal-pronunciation +:END: + +#+begin_quote +kǎlud͡ʑert͡ʃit͡ɕ - zaeph's guess is kah-loo-dyer-tshitch +#+end_quote + +#+begin_example +Next, we have "Emacs 30 Highlights" by Philip Kaludercic. +You can ask questions in the web conference +by joining from the talk page, +or you can ask questions through Etherpad or IRC. +#+end_example + +*** WAITING Rerecord intro for Ihor Radchenko and Bastien Guerry +:PROPERTIES: +:CUSTOM_ID: phases-record-intros-and-opening-remarks-rerecord-intro-for-ihor-radchenko-and-bastien-guerry +:END: + + +zaeph's tips: Ihor said his name in this presentation: https://youtu.be/YA1RJxH4xfQ?t=1 +You’re rolling your Rs for both “Ihor” and “Guerry”, but I think both +are supposed to be smooth. For Bastien’s family name, it’s +"ghey-ree". https://paste.xinu.at/A9DFSN/ + +zaeph will probably pronounce this so much better than I can. =) + +#+begin_example +Next, we have "The future of Org", +by Ihor Radchenko and Bastien Guerry. +They will answer questions via web conference. +You can join using the URL from the talk page +or ask questions through Etherpad or IRC. +#+end_example + +*** TODO Rerecord Eev intro with MAC-SYM-A pronunciation :record:emacsconf: +:PROPERTIES: +:CUSTOM_ID: phases-record-intros-and-opening-remarks-rerecord-eev-intro-with-mac-sym-a-pronunciation +:END: + +#+begin_quote +My name in the intro is perfect, but Maxima comes from Macsyma, and it is +pronounced mac - sym (<- as in "symbolic") a... +#+end_quote + +#+begin_example +Next, we have "Emacs, eev, and Maxima - now!", +by Eduardo Ochs. +You can ask questions via Etherpad or IRC. +#+end_example + +*** WAITING Rerecord Vincent Conus using psitransfer version :record:emacsconf: +SCHEDULED: <2024-12-03 Tue> +:PROPERTIES: +:CREATED: [2024-12-02 Mon 19:48] +:CUSTOM_ID: phases-record-intros-and-opening-remarks-rerecord-vincent-conus-using-psitransfer-version +:END: + +[[file:~/proj/emacsconf/2024/cache/emacsconf-2024-papers--writing-academic-papers-in-orgroam--vincent-conus--name.ogg]] + +cuhn-us + +#+begin_example +Next, we have "Writing academic papers in Org-Roam", +by Vincent Conus. +He will answer questions via web conference. +You can join using the URL from the talk page +or ask questions through Etherpad or IRC. +#+end_example + + +*** WAITING Rerecord Joseph Turner with new title :emacsconf:record: +:PROPERTIES: +:CREATED: [2024-12-02 Mon 13:51] +:CUSTOM_ID: phases-record-intros-and-opening-remarks-rerecord-joseph-turner-with-new-title +:END: + +[[https://sachachua.com/blog/2024/12/2024-12-02-emacs-news/][2024-12-02 Emacs news]] + +New in hyperdrive.el: quick install, peer graph, transclusion! + +#+begin_example +Next, we have "New in hyperdrive.el: quick install, +peer graph, transclusion!" by Joseph Turner. +You can ask questions in the web conference +by joining from the talk page, +or you can ask questions through Etherpad or IRC. +#+end_example +*** STARTED Record sat-open remarks :emacsconf:record: +:PROPERTIES: +:Effort: 0:30 +:CUSTOM_ID: phases-record-intros-and-opening-remarks-record-sat-open-remarks +:END: +:LOGBOOK: +CLOCK: [2024-12-03 Tue 13:38]--[2024-12-04 Wed 08:48] => 19:10 +:END: + +Welcome to EmacsConf 2024, where we have fun +exploring how much we can do with a text editor. +It's hard to give a general overview +of all the cool talks today and tomorrow, +so you can flip through the talks +and see what sparks your interests. +Don't feel limited to one track or another. +The best parts of EmacsConf are the conversations. +The wiki has a page on how to watch and participate, +and I'll give you a quick overview as well. +You can watch both streams at live.emacsconf.org +using free and open source software. +Using a streaming media player like mpv +seems to be the best way to watch in terms of performance +but there are also web-based players +just in case that's all you've got. +The schedule shows the General track on top +and the Development track on the bottom, +so you can see what else is going on. +As you're watching the talks, +you can refer to the schedule in another window. +Hover over the boxes to see the times and titles, +and click on the boxes in the schedule +to jump to the talk's page for more details. +You can also get the schedule as an iCalendar file +or as an Org file in different time zones. +Many talks will be followed by +live Q&A web conferences with the speaker, +which will be done in BigBlueButton or BBB. +These are indicated with a solid border on the schedule +and by Q&A: BBB on the schedule page. +You can join the web conference room +by clicking on the BBB link + +on the schedule page or the talk's webpage. +Then you can ask your questions yourself when the Q&A starts. +To improve performance, please keep your webcam off +and stay muted until it's your turn to talk. +If you don't like Javascript, +you can still ask questions via IRC +and the hosts can read them out for you. +We're probably going to automatically switch +between talks and Q&A sessions, +so the transitions on the stream might be a little sudden. + +People in the BigBlueButton room +can continue the conversation +even after the talk moves off-stream. +and you can also reach out to the speakers +using the contact information on the talk page. + +Other talks will have Q&A via Etherpad or IRC, +depending on what the speakers prefer. +This is indicated in the schedule with a dashed border +and on the schedule page as well. +Some talks will have the Q&A after the event, +so you can add your questions to their Etherpad +or ask on IRC. +We'll e-mail the speakers afterwards +and update the talk pages when they answer. +The schedule pages and track pages have quick shortcuts +so that you can find out more about talks, open the Etherpads, +and join the Q&A sessions. The watch page has more tips +on how to make the most of Q&A. +If you can, please add notes and ask questions +in the Etherpad for the talk. That makes it easier +for everyone to share their notes, +and speakers and hosts can read the questions from there. +We'll copy the notes to the talk pages afterwards. +We have one pad for each talk, +so you can follow the links to get to the next one +or go back to the schedule and get the link from there. +If you have general feedback about +the conference itself, please put it in +pad.emacsconf.org/2024 , which is linked on each pad. +You can also use this as a general community message board +for things like Help Wanted. +Internet Relay Chat or IRC can be another great way +to be part of lots of conversations. +You can use chat.emacsconf.org to join the IRC channels +through your web browser. The tabs on the left can help you +switch between the different channels. +There's #emacsconf-gen for the General track +and #emacsconf-dev for the Development track. +If you need to reach us, you can join #emacsconf-org +or e-mail emacsconf-org-private@gnu.org. +You can use #emacsconf for hallway conversations. +Of course, you can join any of these channels +with your favourite IRC client. +You can connect to irc.libera.chat +port 6697 with TLS. +Once again, we're going to be streaming with open captions +for most of the talks this year, thanks to our speakers and +captioning volunteers. The captioned talks are indicated +on the schedule, and with any luck, we'll be posting +transcripts on talk pages shortly after the talks start. +If you need additional accommodations, +please let us know in #emacsconf-org +and we'll see if we can make things happen. +If something goes down, we'll update status.emacsconf.org. +If it doesn't look like we've noticed yet, +please let us know in the #emacsconf-org IRC channel, +where we will be quietly panicking. +In all of these conversations, please keep in mind +our guidelines for conduct. You can find them on the wiki, +They basically boil down to: please be nice. +If all goes well, the prerecorded talks and transcripts +should be available from the talk pages +shortly after they start playing, +and we'll post the recordings of live talks +and Q&A sessions within the next month or so. +If you'd like to get an update, you can subscribe to +the emacsconf-discuss mailing list. +All right, let's get going. +Leo is hosting the general track, +and Corwin hosting the development track. +The other volunteers and I will run around mostly backstage, +and you'll probably meet us in the closing remarks. +That's also where we get to thank +all the people and organizations +who make EmacsConf possible. +Thanks for coming to EmacsConf 2024. +*** TODO Record sun-open remarks +:PROPERTIES: +:CUSTOM_ID: phases-record-intros-and-opening-remarks-record-sun-open-remarks +:END: + +Welcome to the second day of EmacsConf 2024. +Today we have one track of talks, +so you don't have to worry about +missing out on anything. +The best parts of EmacsConf are the conversations. +The wiki has a page on how to watch and participate, +and I'll give you a quick overview as well. +You can watch the stream at live.emacsconf.org +using free and open source software. +Using a streaming media player like mpv +seems to be the best way to watch in terms of performance +but there are also web-based players +just in case that's all you've got. +As you're watching the talks, +you can refer to the schedule in another window. +Hover over the boxes to see the times and titles, +and click on the boxes in the schedule +to jump to the talk's page for more details. +You can also get the schedule as an iCalendar file +or as an Org file in different time zones. + +Many talks will be followed by +live Q&A web conferences with the speaker, +which will be done in BigBlueButton or BBB. +These are indicated with a solid border on the schedule +and by Q&A: BBB on the schedule page. +You can join the web conference room +by clicking on the BBB link +on the schedule page or the talk's webpage. +Then you can ask your questions yourself when the Q&A starts. +To improve performance, please keep your webcam off +and stay muted until it's your turn to talk. +If you don't like Javascript, +you can still ask questions via IRC +and the hosts can read them out for you. + +We're probably going to automatically switch +between talks and Q&A sessions, +so the transitions on the stream might be a little sudden, +People in the BigBlueButton room +can continue the conversation +even after the talk moves off-stream, +and you can also reach out to the speakers +using the contact information on the talk page. + +Other talks will have Q&A via Etherpad or IRC, +depending on what the speakers prefer. +This is indicated in the schedule with a dashed border +and on the schedule page as well. +Please ask your questions in the recommended places +so that the speakers can easily see them. + +Some talks will have the Q&A after the event, +so you can add your questions to their Etherpad. +We'll e-mail the speakers afterwards +and update the talk pages when they answer. + +We're going to start Sunday morning +with more IRC/Etherpad Q&A +to try to get around +some of the bandwidth issues +that we noticed last year. + +The schedule pages and track pages have quick shortcuts +so that you can find out more about talks, open the Etherpads, +and join the Q&A sessions. The watch page has more tips +on how to make the most of Q&A. +If you can, please add notes and ask questions +in the Etherpad for the talk. That makes it easier +for everyone to share their notes, +and speakers and hosts can read the questions from there. +We'll copy the notes to the talk pages afterwards. +We have one pad for each talk, +so you can follow the links to get to the next one +or go back to the schedule and get the link from there. +If you have general feedback about +the conference itself, please put it in +pad.emacsconf.org/2024 , which is linked on each pad. +You can also use this as a general community message board +for things like Help Wanted. +Internet Relay Chat or IRC can be another great way +to be part of lots of conversations. +You can use chat.emacsconf.org to join the IRC channels +through your web browser. The tabs on the left can help you +switch between the different channels. +Most discussions will be in +#emacsconf-gen for the General track. +If you need to reach us, you can join #emacsconf-org +or e-mail emacsconf-org-private@gnu.org. +You can use #emacsconf for hallway conversations. +Of course, you can join any of these channels +with your favourite IRC client. +You can connect to irc.libera.chat +port 6697 with TLS. +Once again, we're going to be streaming with open captions +for most of the talks this year, thanks to our speakers and +captioning volunteers. The captioned talks are indicated +on the schedule, and with any luck, we'll be posting +transcripts on talk pages shortly after the talks start. +If you need additional accommodations, +please let us know in #emacsconf-org +and we'll see if we can make things happen. +If something goes down, we'll update status.emacsconf.org. +If it doesn't look like we've noticed yet, +please let us know in the #emacsconf-org IRC channel, +where we will be quietly panicking. +In all of these conversations, please keep in mind +our guidelines for conduct. You can find them on the wiki, +They basically boil down to: please be nice. +If all goes well, the prerecorded talks and transcripts +should be available from the talk pages +shortly after they start playing, +and we'll post the recordings of live talks +and Q&A sessions within the next month or so. +If you'd like to get an update, you can subscribe to +the emacsconf-discuss mailing list. +All right, let's get going. +Leo Vivier is hosting the general track again today. +The other volunteers and I will run around mostly backstage, +and you'll probably meet us in the closing remarks. +That's also where we get to thank +all the people and organizations +who make EmacsConf even possible. +Thanks for coming to EmacsConf 2024. + * TODO [#A] Check EmacsConf infrastructure :project: +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure +:END: - [X] IRC - [ ] Streaming assets @@ -392,32 +856,33 @@ Coloring by availability: - [ ] Streaming - [ ] Toobnix - [ ] YouTube +- [X] Mumble: Can join from my phone, can speak on stream -** WAITING [#A] bbb.emacsverse.org replacement +** TODO [#A] BigBlueButton DEADLINE: <2024-11-15 Fri> :PROPERTIES: :CREATED: [2024-11-02 Sat 11:38] +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton :END: -- Delegated to Corwin for now, will get back to stressing out about it in a couple of weeks -- May need to spin up a Linode and either pay for it for a few weeks or figure out how to spin it down and up again - - [[#bbb][BigBlueButton replacement]] -- Possibly relevant: dynamic DNS? - https://www.linode.com/community/questions/7945/custom-dynamic-dns - Can also update manually - - - +- Plan: spin up Linode temporarily: [[#bbb][BigBlueButton replacement]] *** Notes +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-notes +:END: **** install, sizes +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-notes-install-sizes +:END: [2024-11-19 Tue] Prerequisites: - BBB requires 4 CPU cores before it will install. bbb-conf.sh is fairly straightforward, so I guess we could spin down and then spin up again. + Image: Ubuntu 22.04 Steps: -1. Run the BBB installer. +1. Run the BBB installer: ~./bbb-install.sh -v jammy-300 -s bbb.emacsverse.org -e emacsconf@sachachua.com -g~ 2. ~sudo apt install bbb-playback-video~ and then follow the instructions at [[https://docs.bigbluebutton.org/3.0/administration/customize/#install-additional-recording-processing-formats][Server Customization | BigBlueButton]] . 3. https://docs.bigbluebutton.org/3.0/administration/customize/#mute-all-users-on-startup @@ -435,6 +900,10 @@ Sizing to shared nanode, dormant linode-cli linodes resize 67329098 --type g6-nanode-1 --allow_auto_disk_resize true #+end_src +#+begin_src +echo "notify-send 'Resizing BBB...'; linode-cli linodes resize 67329098 --type g6-nanode-1 --allow_auto_disk_resize true" | at 'now + 1 hour' +#+end_src + Resize disk linode-cli linodes disks-list 67329098 linode-cli linodes disk-resize 67329098 131474261 --size 24000 @@ -445,16 +914,153 @@ https://techdocs.akamai.com/linode-api/reference/post-resize-disk https://www.linode.com/community/questions/21942/how-can-i-schedule-resizing-a-linode **** backing up +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-notes-backing-up +:END: [2024-11-20 Wed] ssh root@66.175.208.243 'tar zcvf - /var/bigbluebutton /etc/bigbluebutton /root/greenlight-v3 /usr/local/bigbluebutton /usr/share/bbb-web' > bbb-backup.tar.gz -If changing IP: bbb-conf --setip bbb-new.example.com +**** DONE Set up bbb with new domain name +CLOSED: [2024-11-28 Thu 10:00] +:PROPERTIES: +:Effort: 1:00 +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-notes-set-up-bbb-with-new-domain-name +:END: +:LOGBOOK: +CLOCK: [2024-11-28 Thu 09:06]--[2024-11-28 Thu 09:17] => 0:11 +:END: +If changing IP: + +bbb-conf --setip bbb-new.example.com +service nginx stop +certbot certonly +service nginx start +edit /etc/hosts, add domain name + +Certificate is saved at: /etc/letsencrypt/live/bbb.emacsverse.org/fullchain.pem +Key is saved at: /etc/letsencrypt/live/bbb.emacsverse.org/privkey.pem + +edit /etc/nginx/sites-available/bigbluebutton to add server_name +/etc/letsencrypt/live/ + +grep in /etc for the old domain +https://github.com/bigbluebutton/greenlight/issues/1794 +- change greenlight/.env + + curl failed to verify the legitimacy of the server and therefore could not +establish a secure connection to it. To learn more about this situation and +how to fix it, please visit the web page mentioned above. +.curl: (60) SSL: no alternative certificate subject name matches target host name 'bbb.emacsverse.org' +More details here: https://curl.se/docs/sslcerts.html + +haproxy is already listening on 443 + +Fine, let's just reinstall it, harumph. + +Create the users: + +user_id = User.find_by_email("sacha@sachachua.com").id + +... ugh, what's going on, why is free only reporting a little memory? ah, we're still resizing, that's why +*** STARTED Set up moderator access codes for all the meeting rooms, and make it so people can start the meeting +SCHEDULED: <2024-11-28 Thu> +:PROPERTIES: +:CREATED: [2024-11-28 Thu 11:12] +:Effort: 0:30 +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-set-up-moderator-access-codes-for-all-the-meeting-rooms-and-make-it-so-people-can-start-the-meeting +:END: +:LOGBOOK: +CLOCK: [2024-11-28 Thu 12:13]--[2024-11-28 Thu 13:10] => 0:57 +:END: + +- Let's try + - [ ] Rails + - [ ] Spookfox + - [ ] Manual + + https://github.com/bigbluebutton/greenlight/blob/a5da808fc33f03613aa3a4089fd418403c539b2f/spec/models/room_spec.rb#L128 + RoomMeetingOption. + +room.get_setting + +yeah, that's not good, rails console keeps quitting! +docker-compose down +docker-compose up + +1:M 28 Nov 2024 17:16:23.441 # WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect. + +docker-compose down +docker-compose up -d + +makes it more reliable, it seems + +room = Room.find_by_id('8b3f36b1-7aee-459d-b963-bddcfe03e1db') + +o = MeetingOption.find_by_name('glAnyoneCanStart') +o.default_value = 'true' +o.save! + +o = MeetingOption.find_by_name('glModeratorAccessCode') + +"https://bbb.emacsverse.org/rooms/p4o-29n-esd-ow5/join" +#+begin_src emacs-lisp +(dolist (talk (seq-filter (lambda (o) + (and (plist-get o :bbb-room) + (not (plist-get o :bbb-mod-code)))) + (emacsconf-publish-prepare-for-display (emacsconf-get-talk-info)))) + (spookfox-js-injection-eval-in-active-tab + (format "window.location.href = \"%s\"" + (replace-regexp-in-string "/join" "" (plist-get talk :bbb-room))) + t) + (sleep-for 3) + (spookfox-js-injection-eval-in-active-tab + "document.querySelector('button[data-rr-ui-event-key=\"settings\"]').click()" t) + (spookfox-js-injection-eval-in-active-tab + "document.querySelector('input#glAnyoneCanStart').checked = true") + (spookfox-js-injection-eval-in-active-tab + "document.querySelector('input#muteOnStart').checked = true") + (spookfox-js-injection-eval-in-active-tab + "document.querySelectorAll('.border-end button')[2].click()" t) + (let ((code (spookfox-js-injection-eval-in-active-tab + "document.querySelector('.access-code-input input').value" t))) + (message "Setting %s to %s" (plist-get talk :slug) code) + (emacsconf-set-property-from-slug + talk "BBB_MOD_CODE" + code) + (sit-for 2))) +#+end_src + +#+begin_src emacs-lisp +(dolist (talk (seq-filter (lambda (o) + (plist-get o :bbb-room)) + (emacsconf-publish-prepare-for-display (emacsconf-get-talk-info)))) + (spookfox-js-injection-eval-in-active-tab + (format "window.location.href = \"%s\"" + (replace-regexp-in-string "/join" "" (plist-get talk :bbb-room))) + t) + (sleep-for 3) + (spookfox-js-injection-eval-in-active-tab + "document.querySelector('button[data-rr-ui-event-key=\"settings\"]').click()" t) + (sleep-for 3)) +#+end_src +*** DONE [#A] Figure out what's going on with BBB! +CLOSED: [2024-11-28 Thu 10:59] SCHEDULED: <2024-11-28 Thu> +:PROPERTIES: +:CREATED: [2024-11-28 Thu 10:12] +:Effort: 1:00 +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-figure-out-what-s-going-on-with-bbb +:END: +:LOGBOOK: +CLOCK: [2024-11-28 Thu 10:47]--[2024-11-28 Thu 10:59] => 0:12 +:END: *** DONE Create meeting rooms for each speaker -CLOSED: [2024-11-20 Wed 12:18] SCHEDULED: <2024-11-15 Fri> +CLOSED: [2024-11-28 Thu 10:59] SCHEDULED: <2024-11-15 Fri> :PROPERTIES: :CREATED: [2024-11-02 Sat 11:50] :Effort: 0:30 +:CUSTOM_ID: create_rooms :END: :LOGBOOK: +CLOCK: [2024-11-28 Thu 10:00]--[2024-11-28 Thu 10:12] => 0:12 CLOCK: [2024-11-20 Wed 10:48]--[2024-11-20 Wed 12:18] => 1:30 :END: @@ -468,6 +1074,8 @@ docker exec -it greenlight-v3 bundle exec rails c user_id = User.find_by_email("sacha@sachachua.com").id +docker exec -it greenlight-v3 bundle exec rails console + #+begin_src emacs-lisp :results replace (mapconcat (lambda (group) (format @@ -481,6 +1089,7 @@ user_id = User.find_by_email("sacha@sachachua.com").id #+RESULTS: :results: +Room.create(user_id: user_id, name: "Eduardo Ochs - maxima") Room.create(user_id: user_id, name: "Robin Templeton - guile") Room.create(user_id: user_id, name: "Daniel Pinkston - students") Room.create(user_id: user_id, name: "Ihor Radchenko and Bastien Guerry - org-update") @@ -488,7 +1097,6 @@ Room.create(user_id: user_id, name: "Mats Lidell - hyperbole") Room.create(user_id: user_id, name: "screwlisp - mcclim") Room.create(user_id: user_id, name: "Vincent Conus - papers") Room.create(user_id: user_id, name: "Jonathan Otsuka - secrets") -Room.create(user_id: user_id, name: "Aaron Grothe - repro") Room.create(user_id: user_id, name: "Ryota - color") Room.create(user_id: user_id, name: "Danny McClanahan - regex") Room.create(user_id: user_id, name: "Bob Weiner - hywiki") @@ -510,7 +1118,6 @@ Room.create(user_id: user_id, name: "Zac Romero - p-search") Room.create(user_id: user_id, name: "Bala Ramadurai - learning") Room.create(user_id: user_id, name: "Gopar - sharing") Room.create(user_id: user_id, name: "Christopher Howard - shellwater") -Room.create(user_id: user_id, name: "James Endres Howell - org-teach") :end: Print out the room IDs with @@ -519,40 +1126,110 @@ Print out the room IDs with Room.all.each { |x| puts x.friendly_id + " " + x.name }; nil #+end_src https://github.com/bigbluebutton/greenlight/issues/1925 -*** TODO Change background presentation + + +*** DONE Check BBB audio from my phone +CLOSED: [2024-11-28 Thu 13:03] SCHEDULED: <2024-11-21 Thu> +:PROPERTIES: +:CREATED: [2024-11-19 Tue 15:39] +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-check-bbb-audio-from-my-phone +:END: +*** DONE Create accounts for corwin +CLOSED: [2024-11-28 Thu 10:11] +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-create-accounts-for-corwin +:END: +*** CANCELLED [#C] Customize BBB to process at night +CLOSED: [2024-11-27 Wed 13:17] +:PROPERTIES: +:CREATED: [2024-11-20 Wed 12:11] +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-customize-bbb-to-process-at-night +:END: + +https://docs.bigbluebutton.org/3.0/administration/customize/ +Change processing time + +On a 2.2.x BigBlueButton server, the server will process recordings as meetings finish. You can restrict the recording processing interval to specific hours by creating the file /etc/systemd/system/bbb-record-core.timer.d/override.conf with the contents + +[Timer] +OnActiveSec= +OnUnitInactiveSec= +OnCalendar=21,22,23,00,01,02,03:*:00 +Persistent=false + +and do systemctl daemon-reload. This file overrides the timing of when systemd runs bbb-record-core.target. In the above example, recordings will start processing between 21:00 and 03:59. + +- [[file:~/sync/orgzly/Inbox.org::*Set up rooms and assign as properties][Set up rooms and assign as properties]] +*** TODO [#C] Change background presentation +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-change-background-presentation +:END: https://docs.bigbluebutton.org/3.0/administration/customize/#change-the-default-presentation -*** TODO Modify landing page +*** TODO [#C] Modify landing page +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-modify-landing-page +:END: /var/www/bigbluebutton-default/assets/index.html keep backup copy as it will be overwritten when bbb-conf is called -*** STARTED Change default welcome message +*** TODO [#C] Change default welcome message :PROPERTIES: :Effort: 0:30 +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-change-default-welcome-message :END: :LOGBOOK: CLOCK: [2024-11-20 Wed 12:21]--[2024-11-20 Wed 12:46] => 0:25 :END: https://docs.bigbluebutton.org/3.0/administration/customize/#change-the-default-welcome-message -*** TODO Change html5 title +*** TODO [#C] Change html5 title +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-change-html5-title +:END: /usr/share/bigbluebutton/html5-client/private/config/settings.yml TARGET=/usr/share/bigbluebutton/html5-client/private/config/settings.yml yq e -i ".public.app.clientTitle = \"EmacsConf\"" $TARGET -*** TODO Try live captions +*** TODO [#C] Try live captions +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-try-live-captions +:END: https://docs.bigbluebutton.org/3.0/administration/customize/#enable-live-captions -*** TODO Explore meeting layout? +*** TODO Explore meeting layout? Default to custom, hosts will need to drag people's webcam over if there's a share +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-bigbluebutton-explore-meeting-layout-default-to-custom-hosts-will-need-to-drag-people-s-webcam-over-if-there-s-a-share +:END: ** IRC web client -*** WAITING Ask libera.chat to increase connections allowed from chat.emacsconf.org on Dec 7 and 8 +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-irc-web-client +:END: +*** DONE Ask libera.chat to increase connections allowed from chat.emacsconf.org on Dec 7 and 8 +CLOSED: [2024-11-27 Wed 13:18] +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-irc-web-client-ask-libera-chat-to-increase-connections-allowed-from-chat-emacsconf-org-on-dec-7-and-8 +:END: ** IRC announcements +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-irc-announcements +:END: *** DONE Confirm manual IRC announcements CLOSED: [2024-11-02 Sat 12:05] +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-irc-announcements-confirm-manual-irc-announcements +:END: *** TODO Confirm automated IRC announcements from res +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-irc-announcements-confirm-automated-irc-announcements-from-res +:END: ** Media +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-media +:END: *** TODO Switch public media to unprotected root before the conference SCHEDULED: <2024-11-29 Fri> :PROPERTIES: :CREATED: [2024-11-12 Tue 14:18] +:CUSTOM_ID: check-emacsconf-infrastructure-media-switch-public-media-to-unprotected-root-before-the-conference :END: 1. Clear public media directory. @@ -561,27 +1238,53 @@ SCHEDULED: <2024-11-29 Fri> You can generate the index with =emacsconf-publish-update-media=. ** TODO Publishing resources to the wiki +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-publishing-resources-to-the-wiki +:END: ansible-playbook -i inventory.yml prod-playbook.yml --tags publish ** TODO Publishing videos to the media server +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-publishing-videos-to-the-media-server +:END: ** Playing videos, switching to windows +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-playing-videos-switching-to-windows +:END: *** TODO Generate test videos for everything +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-playing-videos-switching-to-windows-generate-test-videos-for-everything +:END: *** TODO Document how to get that set up again +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-playing-videos-switching-to-windows-document-how-to-get-that-set-up-again +:END: ** Etherpad +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-etherpad +:END: *** TODO Generate pads for all the talks +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-etherpad-generate-pads-for-all-the-talks +:END: *** TODO Generate the main index +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-etherpad-generate-the-main-index +:END: ** TODO Do a dry run SCHEDULED: <2024-11-22 Fri> :PROPERTIES: :CREATED: [2024-11-02 Sat 11:40] +:CUSTOM_ID: check-emacsconf-infrastructure-do-a-dry-run :END: *** DONE Generate all the test assets CLOSED: [2024-11-06 Wed 18:52] :PROPERTIES: :Effort: 0:15 +:CUSTOM_ID: check-emacsconf-infrastructure-do-a-dry-run-generate-all-the-test-assets :END: :LOGBOOK: CLOCK: [2024-11-06 Wed 18:47]--[2024-11-06 Wed 18:52] => 0:05 @@ -590,9 +1293,60 @@ CLOCK: [2024-11-06 Wed 18:47]--[2024-11-06 Wed 18:52] => 0:05 SCHEDULED: <2024-11-07 Thu> :PROPERTIES: :CREATED: [2024-11-06 Wed 18:52] +:CUSTOM_ID: check-emacsconf-infrastructure-do-a-dry-run-test-connecting-to-vnc-and-streaming-via-obs +:END: +** Resizing +:PROPERTIES: +:CUSTOM_ID: check-emacsconf-infrastructure-resizing +:END: + +live0: 64GB +front0: 32GB +meet: 64GB + +*** TODO [#A] Resize nodes before production +SCHEDULED: <2024-12-06 Fri> +:PROPERTIES: +:CREATED: [2024-11-22 Fri 13:46] +:CUSTOM_ID: check-emacsconf-infrastructure-resizing-resize-nodes-before-production +:END: + +live0: 64GB +front0: 32GB +meet: 64GB + +*** TODO [#A] Resize nodes after production +SCHEDULED: <2024-12-08 Sun> +:PROPERTIES: +:CREATED: [2024-11-22 Fri 13:46] +:CUSTOM_ID: check-emacsconf-infrastructure-resizing-resize-nodes-after-production :END: + +live0: nanode +front0: nanode +*** TODO [#A] Resize meet after production +SCHEDULED: <2024-12-10 Tue> +:PROPERTIES: +:CREATED: [2024-11-22 Fri 13:47] +:CUSTOM_ID: check-emacsconf-infrastructure-resizing-resize-meet-after-production +:END: +meet: nanode * Processes and notes +:PROPERTIES: +:CUSTOM_ID: processes-and-notes +:END: +** Hosting +:PROPERTIES: +:CUSTOM_ID: processes-and-notes-hosting +:END: +*** TODO Finalize host for dev track +:PROPERTIES: +:CUSTOM_ID: processes-and-notes-hosting-finalize-host-for-dev-track +:END: ** ERC +:PROPERTIES: +:CUSTOM_ID: processes-and-notes-erc +:END: Some convenient commands are defined in emacsconf-el:emacsconf-erc.el. @@ -639,7 +1393,7 @@ Some options: - Disadvantages: needs someone to do it - Base pricing - Shared CPU 4GB 80GB storage: hourly USD 0.04, monthly USD 24 - - Dedicated CPU 16GB: hourly USD 0.22, monthly USD 144 - meets minimum requirements and can probably support 200 simultaneous ([[https://docs.bigbluebutton.org/support/faq/][FAQ]]) + - Dedicated CPU 16GB: hourly USD 0.22, daily 5.28, weekly 36.96, monthly USD 144 - meets minimum requirements and can probably support 200 simultaneous ([[https://docs.bigbluebutton.org/support/faq/][FAQ]]) - Shared CPU 8GB 160GB storage: hourly USD 0.07 - Shared CPU 16GB 320GB storage: hourly USD 0.14 - Last year |