diff options
Diffstat (limited to '2024/organizers-notebook')
| -rw-r--r-- | 2024/organizers-notebook/index.org | 268 | 
1 files changed, 250 insertions, 18 deletions
diff --git a/2024/organizers-notebook/index.org b/2024/organizers-notebook/index.org index e9e7b0f0..e1804693 100644 --- a/2024/organizers-notebook/index.org +++ b/2024/organizers-notebook/index.org @@ -381,6 +381,100 @@ 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: +  * TODO [#A] Check EmacsConf infrastructure                         :project:  - [X] IRC @@ -394,21 +488,13 @@ Coloring by availability:  - [ ] Toobnix  - [ ] YouTube -** WAITING [#A] bbb.emacsverse.org replacement +** TODO [#A] BigBlueButton  DEADLINE: <2024-11-15 Fri>  :PROPERTIES:  :CREATED:  [2024-11-02 Sat 11:38]  :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  **** install, sizes @@ -418,7 +504,7 @@ 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.  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 @@ -436,6 +522,11 @@ 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 @@ -447,15 +538,145 @@ 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  [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 +: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 +: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 +: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  :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: @@ -469,6 +690,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 @@ -521,12 +744,20 @@ Room.all.each { |x| puts x.friendly_id + " " + x.name }; nil  #+end_src  https://github.com/bigbluebutton/greenlight/issues/1925 -*** TODO Check BBB audio from my phone -SCHEDULED: <2024-11-21 Thu> +After about 6 seconds, the rails console quits. +502 bad gateway + +aaaaaaaaaah + +*** 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]  :END: -*** TODO [#C] Customize BBB to process at night +*** DONE Create accounts for corwin +CLOSED: [2024-11-28 Thu 10:11] +*** CANCELLED [#C] Customize BBB to process at night +CLOSED: [2024-11-27 Wed 13:17]  :PROPERTIES:  :CREATED: [2024-11-20 Wed 12:11]  :END: @@ -568,7 +799,8 @@ https://docs.bigbluebutton.org/3.0/administration/customize/#enable-live-caption  *** TODO Explore meeting layout? Default to custom, hosts will need to drag people's webcam over if there's a share  ** IRC web client -*** WAITING Ask libera.chat to increase connections allowed from chat.emacsconf.org on Dec 7 and 8 +*** DONE Ask libera.chat to increase connections allowed from chat.emacsconf.org on Dec 7 and 8 +CLOSED: [2024-11-27 Wed 13:18]  ** IRC announcements  *** DONE Confirm manual IRC announcements  CLOSED: [2024-11-02 Sat 12:05] @@ -697,7 +929,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  | 
