summaryrefslogtreecommitdiffstats
path: root/2022/captions/emacsconf-2022-detached--getting-detached-from-emacs--niklas-eklund--answers.vtt
diff options
context:
space:
mode:
Diffstat (limited to '2022/captions/emacsconf-2022-detached--getting-detached-from-emacs--niklas-eklund--answers.vtt')
-rw-r--r--2022/captions/emacsconf-2022-detached--getting-detached-from-emacs--niklas-eklund--answers.vtt1028
1 files changed, 1028 insertions, 0 deletions
diff --git a/2022/captions/emacsconf-2022-detached--getting-detached-from-emacs--niklas-eklund--answers.vtt b/2022/captions/emacsconf-2022-detached--getting-detached-from-emacs--niklas-eklund--answers.vtt
new file mode 100644
index 00000000..7d9c7920
--- /dev/null
+++ b/2022/captions/emacsconf-2022-detached--getting-detached-from-emacs--niklas-eklund--answers.vtt
@@ -0,0 +1,1028 @@
+WEBVTT
+
+00:00.000 --> 00:02.360
+Thank you for the great talk, Niklas.
+
+00:02.360 --> 00:05.040
+And yes, the Q&A is now open.
+
+00:05.040 --> 00:09.320
+Folks, feel free to post your questions on the pattern IRC.
+
+00:09.320 --> 00:10.900
+And after a minute or two, we'll also
+
+00:10.900 --> 00:12.680
+open up this big blue button for people
+
+00:12.680 --> 00:15.820
+who might prefer to come join Niklas here directly
+
+00:15.820 --> 00:17.680
+and ask the questions here.
+
+00:17.680 --> 00:20.240
+Niklas, take it away.
+
+00:20.240 --> 00:21.000
+All right.
+
+00:21.000 --> 00:21.720
+Thank you.
+
+00:21.720 --> 00:25.040
+And thanks for having me.
+
+00:25.040 --> 00:28.720
+Yeah, maybe I'll go ahead and read some questions
+
+00:28.720 --> 00:32.880
+that have popped up in the formula here then.
+
+00:32.880 --> 00:37.440
+So the first question is, can it replace SSH plus TMAX
+
+00:37.440 --> 00:42.280
+for persistent sessions on remote hosts?
+
+00:42.280 --> 00:46.440
+So currently, I would say it does not
+
+00:46.440 --> 00:49.720
+support that because it is designed
+
+00:49.720 --> 00:53.440
+to only run a single command inside a session.
+
+00:53.440 --> 00:59.920
+And when that finishes, it reports back.
+
+00:59.920 --> 01:01.640
+But I have played with the idea.
+
+01:01.640 --> 01:04.480
+I think it should be possible to do.
+
+01:04.480 --> 01:08.640
+But I wanted to start off and polish the experience
+
+01:08.640 --> 01:12.720
+with a single command first.
+
+01:12.720 --> 01:16.880
+And secondly, there is a question.
+
+01:16.880 --> 01:20.880
+I see integration with projectile in the README.
+
+01:20.880 --> 01:23.960
+Does it also integrate with project.io?
+
+01:28.400 --> 01:30.200
+Yeah, good question.
+
+01:30.200 --> 01:31.840
+It doesn't.
+
+01:31.840 --> 01:37.920
+I haven't added any explicit support for it
+
+01:37.920 --> 01:43.880
+because I typically run detached compiling in the project
+
+01:43.880 --> 01:49.160
+root with my own command using project behind the scenes.
+
+01:49.160 --> 01:51.880
+But I guess project has a command for it now.
+
+01:51.880 --> 02:21.840
+So yeah, it should be very easy to add support for that.
+
+02:21.840 --> 02:28.000
+And I could also mention that could be one thing related
+
+02:28.000 --> 02:31.480
+to the first questionnaire of using kind of persistent
+
+02:31.480 --> 02:37.560
+sessions, that it would be interesting to see if,
+
+02:37.560 --> 02:44.000
+for example, I occasionally run Python REPL in Emacs.
+
+02:44.000 --> 02:48.000
+And if I could get that one to launch using detach,
+
+02:48.000 --> 02:52.960
+so I could restart Emacs and reattach to the REPL
+
+02:52.960 --> 02:57.920
+or also use it for situations where I have used the REPL
+
+02:57.920 --> 03:02.000
+to, let's say, experiment with, I don't know,
+
+03:02.000 --> 03:04.720
+some NumPy function, how that works.
+
+03:04.720 --> 03:10.400
+And if I use detach for that, it would automatically
+
+03:10.400 --> 03:12.920
+log then the whole session.
+
+03:12.920 --> 03:15.360
+And I would have it accessible.
+
+03:15.360 --> 03:19.560
+So I could search for it in retrospect
+
+03:19.560 --> 03:23.880
+and retrieve the log and see, OK, I ran this command.
+
+03:23.880 --> 03:26.760
+This happened, or basically.
+
+03:32.680 --> 03:35.320
+So then there is a question.
+
+03:35.320 --> 03:36.600
+Can you?
+
+03:36.600 --> 03:37.360
+Oh, OK.
+
+03:37.360 --> 03:38.800
+I'll read the other one.
+
+03:38.800 --> 03:43.400
+No, there is two in there.
+
+03:46.920 --> 03:48.040
+It's ongoing.
+
+03:48.040 --> 03:51.240
+I'll wait for them.
+
+03:51.240 --> 03:52.920
+So the first question is, can you
+
+03:52.920 --> 03:56.520
+detach a session from shell mode and reattach
+
+03:56.520 --> 04:01.920
+from eshell vterm mode or start a compile in a shell mode
+
+04:01.920 --> 04:09.120
+and attach it from compilation mode?
+
+04:09.120 --> 04:16.240
+Yeah, so you can attach at the moment
+
+04:16.240 --> 04:20.400
+or reattach in shell mode, eshell vterm.
+
+04:20.400 --> 04:25.680
+That is no problem.
+
+04:25.680 --> 04:33.880
+Currently, I don't have support for attaching in compilation
+
+04:33.880 --> 04:34.720
+mode.
+
+04:34.720 --> 04:39.040
+So the way the package is built is
+
+04:39.040 --> 04:44.280
+that when the session is started,
+
+04:44.280 --> 04:51.240
+there is a variable that gets inserted into the session.
+
+04:51.240 --> 04:56.280
+And it describes how the session would handle,
+
+04:56.280 --> 05:01.720
+for example, attaching to it or viewing the output, et cetera.
+
+05:04.480 --> 05:12.560
+But these are the things that I want to primarily focus
+
+05:12.560 --> 05:17.680
+in the near future, so making it easier to, for example,
+
+05:17.680 --> 05:21.040
+have a buffer up where you're attached to a session.
+
+05:21.040 --> 05:25.680
+You could run a key binding to switch
+
+05:25.680 --> 05:29.000
+to the view mode of that session.
+
+05:29.000 --> 05:32.800
+You get the full output, and then you could view it.
+
+05:32.800 --> 05:37.200
+You can switch back to the attached version, which
+
+05:37.200 --> 05:40.560
+just shows a brief context and then continues on
+
+05:40.560 --> 05:45.120
+with the current output from the session.
+
+05:45.120 --> 05:50.640
+Question number four here is, how do you talk to detach?
+
+05:50.640 --> 05:54.480
+Could it be feasible to run a child emacs instead
+
+05:54.480 --> 05:56.360
+of detach?
+
+05:56.360 --> 05:58.800
+Would it make sense?
+
+05:58.800 --> 06:02.520
+Better communication, maybe.
+
+06:02.520 --> 06:08.560
+So the way the talk with detach is done
+
+06:08.560 --> 06:11.680
+is, I would say, very simple.
+
+06:11.680 --> 06:19.480
+Detach the program supports basic instructions
+
+06:19.480 --> 06:25.320
+like detach dash a to attach, or yeah, that's basically it.
+
+06:28.080 --> 06:32.760
+And that is all that's being used under the hood.
+
+06:32.760 --> 06:37.280
+And of course, it uses its C flag
+
+06:37.280 --> 06:47.240
+to create and attach when a session is started, or the dash
+
+06:47.240 --> 06:52.440
+n to start the session in kind of detached mode.
+
+06:52.440 --> 06:55.440
+So it runs without emacs being attached to it.
+
+06:58.240 --> 07:05.720
+Currently, I don't think I've seen any need for a child emacs
+
+07:05.720 --> 07:08.920
+need for better communication.
+
+07:08.920 --> 07:15.400
+But if people have ideas about what could be done,
+
+07:15.400 --> 07:19.280
+if it was added, yeah, that would be great.
+
+07:19.280 --> 07:20.960
+So maybe that could be a follow up
+
+07:20.960 --> 07:24.640
+if you got ideas on how to improve it.
+
+07:24.640 --> 07:33.160
+Yeah, so I'm not sure if the emacs child, yeah,
+
+07:33.160 --> 07:36.360
+I think if I got a better idea about what
+
+07:36.360 --> 07:39.120
+the person would like to achieve with it,
+
+07:39.120 --> 07:43.000
+then maybe I could understand the question better there.
+
+07:45.880 --> 07:49.480
+So another question is, how does it handle processes
+
+07:49.480 --> 07:52.560
+that require you to do that?
+
+07:52.560 --> 07:55.440
+So processes that require user input,
+
+07:55.440 --> 07:59.080
+usually type yes, no, et cetera.
+
+07:59.080 --> 08:05.600
+MetaX compiles great, but can't handle user input.
+
+08:05.600 --> 08:16.600
+Yeah, so it's very simple behind the scenes.
+
+08:16.600 --> 08:21.320
+It depends on what interface you use for attaching emacs
+
+08:21.320 --> 08:23.160
+to that process.
+
+08:23.160 --> 08:27.680
+So as the person says, if it's MetaX compiled,
+
+08:27.680 --> 08:32.160
+then probably it doesn't handle it.
+
+08:32.160 --> 08:40.080
+So in that case, I guess I would have started it
+
+08:40.080 --> 08:42.680
+from the shell.
+
+08:42.680 --> 08:46.960
+If there is a question, you need to type yes or no,
+
+08:46.960 --> 08:53.000
+then you can just type it and maybe detach from it.
+
+08:53.000 --> 08:56.400
+Or if you end up in a situation where
+
+08:56.400 --> 09:00.080
+you started with MetaX compile, but then it has the question,
+
+09:00.080 --> 09:04.400
+I guess you could always pop up a shell attached
+
+09:04.400 --> 09:07.080
+to the session, and you will get the question there.
+
+09:07.080 --> 09:11.480
+You press whatever answer you'd like,
+
+09:11.480 --> 09:20.000
+and then detach from that user interface.
+
+09:20.000 --> 09:23.480
+So another question is, can you rerun a command session,
+
+09:23.480 --> 09:25.880
+but in another directory?
+
+09:28.560 --> 09:33.360
+Yeah, you can't do that at the moment.
+
+09:33.360 --> 09:38.120
+I haven't really found a need for it.
+
+09:38.120 --> 09:46.000
+So typically, as I have been using detach,
+
+09:46.000 --> 09:52.680
+now when it has a persistent storage of the sessions,
+
+09:52.680 --> 09:57.040
+it becomes rather natural that once I've run it once,
+
+09:57.040 --> 10:07.120
+I can just rerun it later in the same directory.
+
+10:07.120 --> 10:11.400
+But maybe this is a feature that should be added.
+
+10:11.400 --> 10:16.840
+It's maybe a common use case.
+
+10:16.840 --> 10:22.120
+One thing that I added on top of the rerun
+
+10:22.120 --> 10:25.280
+is like an edit and rerun for those situations
+
+10:25.280 --> 10:30.240
+where I maybe run some compilation,
+
+10:30.240 --> 10:34.960
+but with the compilation flag set to opt,
+
+10:34.960 --> 10:37.680
+and then I want to rerun the exact same command
+
+10:37.680 --> 10:43.600
+in the same directory, but with it set to dbg instead
+
+10:43.600 --> 10:44.520
+for debugging.
+
+10:44.520 --> 10:48.600
+And then instead of pressing R to rerun, I press E.
+
+10:48.600 --> 10:53.400
+Then I get a prompt with the current command,
+
+10:53.400 --> 10:57.640
+and then I can add it, and it will rerun that.
+
+10:57.640 --> 11:00.920
+So maybe something similar for another directory
+
+11:00.920 --> 11:05.320
+could be added.
+
+11:22.720 --> 11:23.200
+Cool.
+
+11:23.200 --> 11:27.200
+I think we still have about 13 or 14 more minutes of live Q&A
+
+11:27.200 --> 11:29.840
+time on stream, so if folks do have more questions
+
+11:29.840 --> 11:32.440
+about this talk from Nicolas, please
+
+11:32.440 --> 11:33.960
+feel free to put them on the pad,
+
+11:33.960 --> 11:36.560
+or come join here on the big blue button and ask here.
+
+11:40.400 --> 11:41.320
+Yeah.
+
+11:41.320 --> 11:47.600
+And I also want to mention that if you realize later
+
+11:47.600 --> 11:50.000
+you have a question or a suggestion,
+
+11:50.000 --> 11:57.200
+feel free to contact me or create a new post
+
+11:57.200 --> 12:00.960
+on the mailing list for the project.
+
+12:00.960 --> 12:02.720
+That's much appreciated.
+
+12:07.160 --> 12:09.720
+Sounds good.
+
+12:09.720 --> 12:10.240
+Yeah.
+
+12:10.240 --> 12:22.880
+So then there is a question incoming.
+
+12:22.880 --> 12:30.320
+So what are some other places where this might be useful?
+
+12:30.320 --> 12:32.760
+And you, for me, fetching that question
+
+12:32.760 --> 12:40.480
+is, what are some other places where this might be useful?
+
+12:40.480 --> 12:46.320
+And you, for me, fetching mail, get processes started by magic.
+
+12:46.320 --> 12:48.880
+What things would you like to see working
+
+12:48.880 --> 12:52.560
+in a one to two-year time frame?
+
+12:55.040 --> 12:58.520
+Yeah, that's a good question.
+
+12:58.520 --> 13:01.800
+I think there are these situations.
+
+13:01.800 --> 13:04.800
+One of the things that I ran into yesterday
+
+13:04.800 --> 13:11.320
+was that I was trying to use EMMS to connect
+
+13:11.320 --> 13:14.560
+to the stream for Emacs Conv.
+
+13:14.560 --> 13:17.640
+And that was working fine.
+
+13:17.640 --> 13:22.040
+It was using MPV in the background.
+
+13:22.040 --> 13:25.280
+But then I did some modifications to my Emacs
+
+13:25.280 --> 13:30.120
+and wanted to restart it, and then the stream died.
+
+13:30.120 --> 13:35.600
+Kind of those situations where I found it valuable,
+
+13:35.600 --> 13:41.800
+I added support for the D-RED R-Sync package,
+
+13:41.800 --> 13:44.440
+for example, that I use occasionally
+
+13:44.440 --> 13:51.480
+to copy things to a remote server
+
+13:51.480 --> 13:52.960
+or from a remote server.
+
+13:52.960 --> 13:56.280
+And yeah, that was always something
+
+13:56.280 --> 14:00.240
+that I thought could benefit from it.
+
+14:00.240 --> 14:08.000
+So I would ideally like to see if it
+
+14:08.000 --> 14:13.080
+can be used for more of these processes.
+
+14:15.680 --> 14:21.600
+I guess maybe I should get in contact
+
+14:21.600 --> 14:27.480
+with some of the devs to see if they have ideas on how this
+
+14:27.480 --> 14:33.360
+could be incorporated better with Emacs.
+
+14:33.360 --> 14:36.440
+Because so far, it was kind of straightforward
+
+14:36.440 --> 14:41.000
+to get it to work with Shell or Compile.
+
+14:41.000 --> 14:47.360
+But it hacks around the current implementation
+
+14:47.360 --> 14:48.760
+to make it use Detach.
+
+14:48.760 --> 14:55.360
+And if I wanted it to be used in many more places,
+
+14:55.360 --> 14:58.560
+it feels like it would be maybe not the best way
+
+14:58.560 --> 15:07.440
+to have a lot of advices being added to the various functions.
+
+15:07.440 --> 15:12.720
+But yeah, definitely, it would be really cool
+
+15:12.720 --> 15:17.760
+if that could be worked on properly
+
+15:17.760 --> 15:22.880
+so that once I've managed to get the workflow
+
+15:22.880 --> 15:27.080
+for its current implementation a little bit more polished,
+
+15:27.080 --> 15:38.600
+I will try to look into this and also see what is possible.
+
+15:38.600 --> 15:42.080
+I don't know if there are any limitations
+
+15:42.080 --> 15:49.360
+with my current approach that I need some more expertise on.
+
+16:12.080 --> 16:39.760
+Yeah, so if there is no other questions, I'll
+
+16:39.760 --> 16:53.960
+OK, there is another question.
+
+16:53.960 --> 16:59.720
+OK, a general topic here.
+
+16:59.720 --> 17:02.520
+What are you currently excited about in Emacs?
+
+17:02.520 --> 17:15.520
+Well, I'm really excited about the TreeSitter
+
+17:15.520 --> 17:21.120
+that was just added to Emacs 29.
+
+17:21.120 --> 17:27.240
+I haven't gotten around to use that yet.
+
+17:27.240 --> 17:29.640
+But I think it looks very promising.
+
+17:29.640 --> 17:37.440
+And I'm a big fan of structural editing
+
+17:37.440 --> 17:39.040
+that you can use in Lisp.
+
+17:39.040 --> 17:42.600
+So if this opens up the possibility
+
+17:42.600 --> 17:47.880
+to be able to use that more in other languages,
+
+17:47.880 --> 17:49.000
+that would be really cool.
+
+17:49.000 --> 17:56.880
+Otherwise, I'm generally excited about how
+
+17:56.880 --> 18:01.880
+the program is developing.
+
+18:01.880 --> 18:05.040
+I think there has been a lot of great additions
+
+18:05.040 --> 18:11.720
+in these last couple of versions of the program.
+
+18:11.720 --> 18:13.680
+So it's cool to see.
+
+18:13.680 --> 18:22.640
+And also how the Emacs Conf has been continuing
+
+18:22.640 --> 18:27.760
+and being an annual thing and also growing,
+
+18:27.760 --> 18:33.280
+adding this new layout with the general track
+
+18:33.280 --> 18:34.280
+and development track.
+
+18:34.280 --> 18:35.080
+I think it's great.
+
+18:39.080 --> 18:39.560
+Thanks.
+
+18:39.560 --> 18:41.040
+Yeah, it's been interesting.
+
+18:41.040 --> 18:46.800
+Emacs itself, I feel like the Emacs-Devel mailing list
+
+18:46.800 --> 18:50.520
+has been growing in traffic over the years.
+
+18:50.520 --> 18:52.280
+I've been subscribed for a couple of years.
+
+18:52.280 --> 18:56.200
+And more recently, I'm just seeing more and more
+
+18:56.200 --> 18:57.600
+incoming emails from Emacs-Devel,
+
+18:57.600 --> 19:00.000
+which is always cool.
+
+19:00.000 --> 19:02.680
+Yeah, and like you said with Emacs Conf,
+
+19:02.680 --> 19:05.800
+yeah, we've been growing, thankfully.
+
+19:05.800 --> 19:07.680
+And this year, we've experimented
+
+19:07.680 --> 19:09.280
+with having two tracks, which I think
+
+19:09.280 --> 19:12.280
+has turned out pretty well, pretty great.
+
+19:12.280 --> 19:15.600
+Because we don't have to try to squeeze in all the talks
+
+19:15.600 --> 19:19.080
+so tightly and be able to give proper Q&A time,
+
+19:19.080 --> 19:20.960
+like this one, I think, which is pretty great.
+
+19:20.960 --> 19:23.280
+So yeah, very glad to hear and see it.
+
+19:27.400 --> 19:33.400
+Yeah, and maybe I should mention now
+
+19:33.400 --> 19:41.320
+that I know that the E-Shell talk is coming up by Howard,
+
+19:41.320 --> 19:45.880
+that I discovered there is a kind of a bug
+
+19:45.880 --> 19:50.320
+in the detached implementation.
+
+19:50.320 --> 19:56.320
+So it doesn't handle properly the way E-Shell
+
+19:56.320 --> 20:07.040
+seems to communicate when you quote some text in a shell
+
+20:07.040 --> 20:07.920
+command.
+
+20:07.920 --> 20:11.480
+If you have been using quotes, it
+
+20:11.480 --> 20:14.840
+seems to be added as text properties that
+
+20:14.840 --> 20:16.240
+gets into detached.
+
+20:16.240 --> 20:20.040
+And I didn't know about that, but detached
+
+20:20.040 --> 20:22.080
+is not picking that up.
+
+20:22.080 --> 20:28.040
+So if you try to run something similar to Echo
+
+20:28.040 --> 20:33.960
+and quotation marks, Niklas, then yeah, it will not
+
+20:33.960 --> 20:35.360
+run it with quotation marks.
+
+20:35.360 --> 20:38.200
+So I guess for Echo, it might work,
+
+20:38.200 --> 20:42.280
+but other commands, it can fail.
+
+20:42.280 --> 20:45.760
+So just be aware about that.
+
+20:45.760 --> 20:49.360
+I guess that's on the priority list to fix.
+
+20:49.360 --> 20:50.280
+Interesting.
+
+20:50.280 --> 20:51.960
+Yeah, for sure.
+
+20:51.960 --> 20:54.720
+I guess folks can look forward to that getting hopefully fixed
+
+20:54.720 --> 20:59.080
+in the near future or at some point.
+
+20:59.080 --> 21:05.640
+Yeah, and I could add that maybe something
+
+21:05.640 --> 21:15.240
+that is in between this request for persistent sessions
+
+21:15.240 --> 21:20.040
+is that currently, you can use detached in a way
+
+21:20.040 --> 21:23.360
+so it creates like it runs the session.
+
+21:23.360 --> 21:28.400
+And once that finish, you use its callback
+
+21:28.400 --> 21:32.920
+to generate a new session, which runs some other command.
+
+21:32.920 --> 21:41.240
+So you can chain detached sessions that way.
+
+21:41.240 --> 21:47.680
+I wanted to improve on how that has been implemented
+
+21:47.680 --> 21:55.040
+so that you can more easily start these changed sessions
+
+21:55.040 --> 21:58.520
+and that they would show up in the user interface.
+
+21:58.520 --> 22:05.120
+And maybe if you rerun the top of the chain,
+
+22:05.120 --> 22:12.720
+it will actually start all these sessions that way.
+
+22:12.720 --> 22:16.680
+I have some use cases personally where
+
+22:16.680 --> 22:22.200
+for the time being, before running an executable,
+
+22:22.200 --> 22:24.920
+I actually need to run a different build command
+
+22:24.920 --> 22:27.160
+than I normally do.
+
+22:27.160 --> 22:32.880
+And I keep forgetting that, and then that fails.
+
+22:32.880 --> 22:35.960
+And it would be great to just be able to.
+
+22:35.960 --> 22:40.440
+I mean, you could always have that first command
+
+22:40.440 --> 22:48.240
+and then and and the other one, but it doesn't look as nice.
+
+22:48.240 --> 22:53.960
+And it would be nice to be able to see that, OK, this has been
+
+22:53.960 --> 22:57.720
+this is currently running, but in the next once that's
+
+22:57.720 --> 23:02.080
+finished, it will keep on running this one.
+
+23:02.080 --> 23:05.440
+So that's something I plan to add support for.
+
+23:05.440 --> 23:09.360
+It sounds good.
+
+23:09.360 --> 23:10.120
+That would be nice.
+
+23:14.080 --> 23:17.200
+Yeah, I would like that as well.
+
+23:17.200 --> 23:21.360
+So I have an incentive.
+
+23:21.360 --> 23:41.720
+Yeah, also not to completely derail this,
+
+23:41.720 --> 23:45.120
+but I mean, I don't think there are any questions as of now.
+
+23:45.120 --> 23:46.800
+So I can maybe mention this.
+
+23:46.800 --> 23:48.320
+Someone pinged me on IRC.
+
+23:48.320 --> 23:50.640
+Well, someone, Shoushin, good friend.
+
+23:50.640 --> 23:53.920
+And the creator, actually, of the musics
+
+23:53.920 --> 23:56.400
+that we've been using at Emacs Conf between for our lunch
+
+23:56.400 --> 23:58.880
+breaks and here and there, he mentioned
+
+23:58.880 --> 24:01.080
+that he likes this FSF shirt.
+
+24:03.960 --> 24:05.720
+Yeah, it's nice.
+
+24:05.720 --> 24:06.200
+Thanks.
+
+24:06.200 --> 24:10.120
+Yeah, it's I think from a year or so ago.
+
+24:10.120 --> 24:14.200
+It was put up for FSF's 35th birthday.
+
+24:14.200 --> 24:17.160
+And yeah, it's also what it says, FSF 35.
+
+24:17.160 --> 24:20.280
+Yeah, I'm not sure if it's still available on their shop,
+
+24:20.280 --> 24:22.360
+but yeah, you might be able to find it there.
+
+24:25.880 --> 24:27.160
+Nice.
+
+24:27.160 --> 24:31.080
+So they have their own shop?
+
+24:31.080 --> 24:32.000
+Yeah, so there is.
+
+24:32.000 --> 24:33.520
+You can buy merch or?
+
+24:33.520 --> 24:34.480
+Yeah, exactly.
+
+24:34.480 --> 24:37.080
+There is shop.fsf.org, and they have
+
+24:37.080 --> 24:41.880
+a bunch of different goodies and things, merchandise.
+
+24:41.880 --> 24:44.440
+They have shirts like this one, but they also
+
+24:44.440 --> 24:45.920
+have a lot of other stuff.
+
+24:45.920 --> 24:47.960
+They have this one, but they also
+
+24:47.960 --> 24:51.200
+sell things like printed versions of the Emacs user
+
+24:51.200 --> 24:54.840
+manual, which is particularly relevant for us.
+
+24:54.840 --> 24:57.680
+Yeah, and Emacs stickers.
+
+24:57.680 --> 24:59.280
+I think also sell pins and such.
+
+24:59.280 --> 25:02.280
+So yeah, I mean, if you are interested in Emacs
+
+25:02.280 --> 25:06.200
+or new on FSF, it might be worth checking out.
+
+25:06.200 --> 25:08.680
+Yeah, thanks for the tip.
+
+25:08.680 --> 25:11.360
+Yeah.
+
+25:11.360 --> 25:14.520
+Cool, and I think we have about one more minute of live Q&A
+
+25:14.520 --> 25:17.880
+time if folks have any questions,
+
+25:17.880 --> 25:23.520
+any last-minute ones, you're welcome to send it in.
+
+25:23.520 --> 25:26.880
+I guess there is, uh-huh.
+
+25:26.880 --> 25:32.240
+OK, yeah, this one got added from Karfik.
+
+25:32.240 --> 25:32.740
+Yeah.
+
+25:38.600 --> 25:41.560
+Yeah, otherwise, if there's no further questions,
+
+25:41.560 --> 25:44.200
+maybe we wrap it up.
+
+25:44.200 --> 25:45.320
+Sure, sounds good.
+
+25:45.320 --> 25:46.880
+Yeah, I don't see any new questions.
+
+25:46.880 --> 25:49.560
+So yeah, thanks again, Nicholas, for the great talk
+
+25:49.560 --> 25:52.640
+and for sticking around and doing the live Q&A.
+
+25:52.640 --> 25:54.360
+It's much appreciated, and look forward
+
+25:54.360 --> 26:01.080
+to seeing the upcoming developments in Detached.
+
+26:01.080 --> 26:03.400
+Thank you, and thanks for having me.
+
+26:03.400 --> 26:06.760
+Cheers, very glad to see you around.
+
+26:06.760 --> 26:15.840
+See ya.
+