summaryrefslogtreecommitdiffstats
path: root/2024/info/secrets-after.md
blob: 6f9dda89887d594016aa5dd1020fb174ae84fc9c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
<!-- Automatically generated by emacsconf-publish-after-page -->


<div class="transcript transcript-mainVideo"><a name="secrets-mainVideo-transcript"></a><h1>Transcript (unedited)</h1>


<div class="transcript-heading">[[!template new="1" text="""Introduction""" start="00:00:00.000" video="mainVideo-secrets" id="subtitle"]]</div>[[!template text="""Yeah, my talk is committing""" start="00:00:00.000" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""secrets with Git via SOPS mode. So what is SOPS? SOPS""" start="00:00:01.350" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""came originally from Mozilla, and their acronym was Secret""" start="00:00:10.190" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Operations, so S-O-P-S. It's a utility that allows you to""" start="00:00:15.070" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""encrypt pretty much any file you want and then have the""" start="00:00:19.670" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""ability to commit it or just share it with somebody that has""" start="00:00:24.270" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""the ability to decrypt it. I've mostly used it with AWS KMS,""" start="00:00:27.870" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""but there's a number of encryptions, ways you can encrypt""" start="00:00:32.710" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""it. Um, so yeah, that's what SOPS mode is. Most of the""" start="00:00:36.830" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""time I've used it is with application or deployment""" start="00:00:41.910" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""secrets--decrypt them on the fly during a""" start="00:00:45.710" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""pipeline run and then use them. We've also""" start="00:00:48.270" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""been using it for kind of a self-service for engineers""" start="00:00:52.110" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""to be able to say, if there's an API token that they""" start="00:00:56.550" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""need either in the container or that gets put""" start="00:00:59.630" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""somewhere else, that's another way to use SOPS.""" start="00:01:03.430" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Just sharing secrets. The tooling, there's""" start="00:01:09.110" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""quite a bit of tooling for Terraform.""" start="00:01:13.950" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""You can just decrypt it and then use it""" start="00:01:16.815" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""however you want. Ansible, it's another""" start="00:01:19.091" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""place, and then Kubernetes...""" start="00:01:21.310" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""There'll be links at the very end.""" start="00:01:23.649" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""There's actually a Nix SOPS too.""" start="00:01:26.125" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I think there's a link in the end.""" start="00:01:28.983" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""So yeah, I'll just show a quick demo.""" start="00:01:30.238" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I'll actually show it in Emacs too,""" start="00:01:32.831" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""but this is the idea.""" start="00:01:35.287" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I'm just going to create a file""" start="00:01:36.984" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""and then I'm going to encrypt it with age.""" start="00:01:39.451" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Then we should see the encrypted file""" start="00:01:42.052" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""be output here. The idea is you can decrypt it""" start="00:01:46.875" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""there. So my talk was... the reason how my""" start="00:01:53.190" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""talk came about was there was no mode like this yet.""" start="00:01:59.350" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""So I didn't want to have to...""" start="00:02:04.430" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""What you can do is you can pass""" start="00:02:08.830" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""in the editor variable, set your Emacs,""" start="00:02:10.270" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""then call the command, but that opens""" start="00:02:13.030" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""a whole new window. I wanted to live in my""" start="00:02:16.442" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""current Emacs. So this is that""" start="00:02:20.590" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""same encrypted file that we just created.""" start="00:02:22.995" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I'm going to quickly do C-c C-d.""" start="00:02:25.556" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""So now we're in the SOPS decrypted mode of the""" start="00:02:28.567" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""file. I can save this, or make changes and save it.""" start="00:02:32.310" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""And then it resaves it.""" start="00:02:38.058" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I'll just show you that decrypting it""" start="00:02:39.964" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""shows what we changed.""" start="00:02:42.919" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I think that's most of my talk.""" start="00:02:44.630" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""There's future stuff that I would like to do""" start="00:02:52.832" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""with this. There's no way to create SOPS files""" start="00:02:55.883" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""from scratch. And then just putting more""" start="00:03:00.448" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""documentation around the other ways you can""" start="00:03:03.192" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""set up your editor to decrypt. But yeah,""" start="00:03:06.070" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""here's all the links. I haven't uploaded""" start="00:03:14.030" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""this yet, but yeah, that is my talk.""" start="00:03:19.110" video="mainVideo-secrets" id="subtitle"]]

<div class="transcript-heading">[[!template new="1" text="""Q&A technical issues""" start="00:03:23.310" video="mainVideo-secrets" id="subtitle"]]</div>[[!template text="""[Leo] Okay. Thank you, Jonathan.""" start="00:03:23.310" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Let me just make sure. So everything you've mentioned""" start="00:03:27.771" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""about putting stuff available to everyone,""" start="00:03:32.693" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""we'll make sure that everything""" start="00:03:34.888" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""ends up on the pad and on the website,""" start="00:03:36.470" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""so don't worry. Let me see if we can get up""" start="00:03:38.514" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""the pad for you.""" start="00:03:40.851" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Do you have any preference with regards""" start="00:03:41.754" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""to the questions? Do you want to read them yourself""" start="00:03:43.285" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""or do you want one of us to read them for you?""" start="00:03:45.468" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""[Jonathan]: I'm okay with talking first,""" start="00:03:50.122" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""saying it out loud if there are some.""" start="00:03:53.390" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""[Leo]: Sure. Let me just find you the pads.""" start="00:03:57.462" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Where is it? There you go.""" start="00:04:00.750" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Do you have access to the pad on your end?""" start="00:04:02.758" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Yep.""" start="00:04:05.410" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Okay. Well, if you, since you're already showing""" start="00:04:06.154" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""your screen, if you can maybe switch the window to the one""" start="00:04:09.550" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""that is hosting the pad""" start="00:04:12.390" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""and feel free to start answering questions.""" start="00:04:13.436" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Yep.""" start="00:04:15.815" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""It didn't look like we have any yet, but...""" start="00:04:16.263" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Well, there's still coming, don't worry.""" start="00:04:20.110" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""We're just waiting for people to catch up.""" start="00:04:21.943" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I probably need to make it bigger.""" start="00:04:29.150" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Is it big enough or do I need to make it bigger?""" start="00:04:31.534" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Right now, it's just a black screen on my end, so...""" start="00:04:34.461" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Oh, wow. Weird. I can see it on mine, weirdly.""" start="00:04:40.248" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Maybe it's just me. Let me check here.""" start="00:04:45.270" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""No, it seems to be just a""" start="00:04:47.537" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""black square, even on the stream.""" start="00:04:48.990" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Try it again. That change at all? No, it's still black.""" start="00:04:50.070" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Can you maybe start switching window""" start="00:05:00.928" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""and coming back to the one?""" start="00:05:02.744" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Otherwise, I'll just stream it on my end.""" start="00:05:04.070" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Yeah. All right, I'll do it. I'll take presenter in just a""" start="00:05:08.870" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""second. Yeah, sorry about that. Thank you.""" start="00:05:13.630" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""If I can take presenter, and I will share the screen.""" start="00:05:22.230" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Sorry, I'm just trying to find a chat. There we go.""" start="00:05:27.070" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Normally, I'm not supposed to be on the dev track, which is""" start="00:05:36.750" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""why I'm confusing all my windows. Give me just a second.""" start="00:05:39.510" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Shell, casual. So we are on the dev track, and it is this""" start="00:05:42.310" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""one.""" start="00:05:53.710" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""There we go. No, that's not a guide, damn it. Secrets.""" start="00:05:54.190" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""And...""" start="00:06:08.230" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""There we go, finally.""" start="00:06:10.110" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Ah. Probably just for the delay, do some jazz hands in the""" start="00:06:15.510" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""background as we did in the start.""" start="00:06:19.110" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""It feels like Yordle[??] Castle this year,""" start="00:06:20.890" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""where nothing works properly.""" start="00:06:23.601" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""That's right.""" start="00:06:25.463" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""All right. There we go. It's loading up. Obviously.""" start="00:06:26.270" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""There we go.""" start="00:06:39.150" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""All right. You should be able to see my screen now. Yep. All""" start="00:06:44.190" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""right. So, well, we've gone so far. Oh, it did stop. Damn it.""" start="00:06:49.190" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Sorry, now it's BBB not behaving properly. That's right.""" start="00:06:53.790" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Okay, let me just join, leave and join again. Okay. I just did""" start="00:07:02.990" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""exactly that for what it's worth.""" start="00:07:10.310" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Nothing. All right.""" start="00:07:11.910" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""All right, I seem to be back. Let me show. And there we go.""" start="00:07:26.190" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""All right, everything is working. I'm not touching""" start="00:07:29.030" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""anything. So. Cool.""" start="00:07:36.910" video="mainVideo-secrets" id="subtitle"]]

<div class="transcript-heading">[[!template new="1" text="""Q: Can you describe some potential interactive uses for this within Emacs?""" start="00:07:39.188" video="mainVideo-secrets" id="subtitle"]]</div>[[!template text="""Yeah, I'll just start with the top. Can""" start="00:07:39.188" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""you describe some potential interactive uses for this with""" start="00:07:43.630" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""an Emacs? Um, I'm, I'm not actually sure what this means.""" start="00:07:47.350" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Could we, could you add some more context maybe? Or, um,""" start="00:07:52.790" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I think we'll maybe come back to that one. I'm not sure what,""" start="00:08:01.030" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""uh, potential interactive uses mean, but.""" start="00:08:03.550" video="mainVideo-secrets" id="subtitle"]]

<div class="transcript-heading">[[!template new="1" text="""Q: Is this saved in the repo or file as \"run sops here\" or is the encrypted blob in the git repo?""" start="00:08:08.532" video="mainVideo-secrets" id="subtitle"]]</div>[[!template text="""Yep. Uh, is this""" start="00:08:08.532" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""saved in the repo or file as run SOPs here? Oh, encrypted.""" start="00:08:10.430" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""They're saved as just text files so that you can do""" start="00:08:18.750" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""SOPs and encrypt like a binary. I think in the end,""" start="00:08:24.830" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""no matter what, they become just a text file,""" start="00:08:28.104" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""and then it does the encoding and decoding on the fly""" start="00:08:30.820" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""when you encrypt or decrypt. So no matter""" start="00:08:34.521" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""what it's going to be, I think it might just be""" start="00:08:36.754" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""a JSON in the end. Uh, so yeah.""" start="00:08:41.985" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I'll try to, well, I can type out that answer, but all""" start="00:08:44.990" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""right.""" start="00:08:56.310" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Don't worry about typing it out.""" start="00:08:56.856" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""We are gathering the""" start="00:08:59.430" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""recordings at the end, you know, even answers that are not""" start="00:09:00.990" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""provided, we'll type them out eventually.""" start="00:09:04.070" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""So don't stress too much about the actual answers being written.""" start="00:09:05.783" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Okay. All right. So I'll go to the third one.""" start="00:09:09.030" video="mainVideo-secrets" id="subtitle"]]

<div class="transcript-heading">[[!template new="1" text="""Q: How do you decide whether to use SOPS or other solutions such as pass-cli?""" start="00:09:12.067" video="mainVideo-secrets" id="subtitle"]]</div>[[!template text="""How do you decide""" start="00:09:12.067" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""whether to use SOPS or other solutions such as pass-cli?""" start="00:09:13.190" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""The biggest use case that I've been using it recently is,""" start="00:09:18.950" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Bitbucket has a way to... In a repository,""" start="00:09:24.470" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""you can store non-secrets and secrets. So""" start="00:09:29.110" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""we're trying to move the secrets into the repository""" start="00:09:35.830" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""and then allow the engineers to have""" start="00:09:39.550" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""access to that.""" start="00:09:43.110" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Bitbucket variables is a black box. Since the devs can""" start="00:09:48.790" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""access it, it's manual work for everybody""" start="00:09:52.390" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""that has to deal with it. Since we're moving""" start="00:09:56.842" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""SOPS-encrypted files into the repo,""" start="00:10:00.870" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""now there's that trackability""" start="00:10:04.340" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""from who made the change and what it changed from,""" start="00:10:06.831" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""what did it go to, and just things like that.""" start="00:10:10.943" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""You can use it anytime you'd want to commit them.""" start="00:10:16.590" video="mainVideo-secrets" id="subtitle"]]

<div class="transcript-heading">[[!template new="1" text="""Q: One limitation with guix (similar package manager to nix) is there is no great way of storing secrets in the store, would SOPS be useful for this?""" start="00:10:23.630" video="mainVideo-secrets" id="subtitle"]]</div>[[!template text="""One limitation with GUIX is there's no great way to store""" start="00:10:23.630" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""secrets in the store. Yeah, I think, sorry... Let me. One""" start="00:10:32.030" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""limitation of GUIX is there's no way to store secrets in the""" start="00:10:36.870" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""store. Would SOPS be useful for this?""" start="00:10:40.190" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I think so, but I don't know how""" start="00:10:42.109" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""that package manager works, if it's just like""" start="00:10:44.830" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""some sort of &quot;you decrypt and then you run the package""" start="00:10:48.870" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""manager,&quot; then yeah, that's a lot of our workflows.""" start="00:10:52.990" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""If we're doing a deployment and the container""" start="00:10:56.110" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""needs it, we'll decrypt, put that in""" start="00:10:58.990" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""whatever place, or source it if it's an""" start="00:11:01.630" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""environment file for the container, and then""" start="00:11:03.830" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""pass it in. I think it'd be a great choice there.""" start="00:11:06.630" video="mainVideo-secrets" id="subtitle"]]

<div class="transcript-heading">[[!template new="1" text="""Q: Wacky question: what happens in sops-mode if you encrypt the already encrypted file as if it was plaintext?""" start="00:11:11.983" video="mainVideo-secrets" id="subtitle"]]</div>[[!template text="""A wacky question. What happens in sops mode if you""" start="00:11:11.983" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""encrypt an already encrypted file as if it was plain text?""" start="00:11:17.070" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""You know, I might have actually accidentally did that""" start="00:11:21.710" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""today. I didn't actually see the resulting file. But that's""" start="00:11:24.950" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""a great question.""" start="00:11:29.710" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Well, it's technically still binary, isn't it, at the end?""" start="00:11:31.710" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""You've got binary stuff that is being encrypted""" start="00:11:38.190" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""again. It's just double encryption.""" start="00:11:40.390" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I'm pretty sure it works.""" start="00:11:42.950" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Yeah, probably. I'm going to go back up to the""" start="00:11:44.843" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""top one.""" start="00:11:48.870" video="mainVideo-secrets" id="subtitle"]]

<div class="transcript-heading">[[!template new="1" text="""Q: can you describe some potential interactive uses for this within Emacs""" start="00:11:49.439" video="mainVideo-secrets" id="subtitle"]]</div>[[!template text="""Can you describe some potential interactive uses""" start="00:11:49.439" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""for this within Emacs? Is there some other activity that""" start="00:11:52.470" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""would enable or it would be enabled with SOPS decryption""" start="00:11:57.350" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""first, like an IT configuration task.""" start="00:12:01.910" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""So in the README right now,""" start="00:12:12.530" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""there is a block and it's called SOPS setup""" start="00:12:18.510" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""environment. I think it's a hook. Don't quote me.""" start="00:12:22.630" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I haven't touched it in a while.""" start="00:12:27.688" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I think that hook runs prior to""" start="00:12:29.597" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""doing any sort of decryption or encryption.""" start="00:12:32.052" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""So there's an example in the README for ways""" start="00:12:35.350" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""that you can set up your SOPS mode for AWS.""" start="00:12:40.655" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""You can set the profile. It was actually""" start="00:12:44.670" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""a pretty fun thing to add because with that bit of code,""" start="00:12:51.137" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I can pretty much go to any one of our repos""" start="00:12:58.830" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""and decrypt and encrypt on the fly and""" start="00:13:01.200" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""not have to do much fanfare of like,""" start="00:13:04.086" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""well, what account or what profile""" start="00:13:06.750" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""do I need to switch to? I haven't looked at""" start="00:13:09.270" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""GCP yet or Azure, and that's kind of one of""" start="00:13:12.325" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""my future things. I need to maybe look into those""" start="00:13:15.310" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""to see what they look like""" start="00:13:19.080" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""and give example configs to help users.""" start="00:13:21.056" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Hopefully that answered your question.""" start="00:13:23.910" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I think so.""" start="00:13:28.994" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Continuing the theme of this, both of you being cursed,""" start="00:13:30.950" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""my X11 decided to crash.""" start="00:13:34.850" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Nothing is going well with this one.""" start="00:13:36.948" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Have you answered all the questions? I think so.""" start="00:13:40.202" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Well, do you have anything else to add, perhaps?""" start="00:13:44.510" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Maybe something that wasn't enough""" start="00:13:46.439" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""to fit in your live presentation?""" start="00:13:48.328" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""No, I'm excited to see the other talks and I hope everybody""" start="00:13:50.110" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""has fun too.""" start="00:13:56.670" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Yeah, if you have any other questions, just email me.""" start="00:13:57.812" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""That's all.""" start="00:14:03.304" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I got nothing.""" start="00:14:05.211" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Okay, cool.""" start="00:14:07.595" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""[Leo]: Well, thank you so much, Jonathan, for your""" start="00:14:08.223" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""presentation. It was, sorry for all the technical""" start="00:14:10.470" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""problems, we tried our best,""" start="00:14:12.790" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""but I think we still managed to have""" start="00:14:14.163" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""a live presentation, and we managed to have some""" start="00:14:15.533" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""questions from the crowd. So, as far as I'm concerned,""" start="00:14:17.310" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I think we did a good job.""" start="00:14:20.138" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""[Jonathan]: Yeah, you stomped it in this whole dev track,""" start="00:14:21.838" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I just have to say. It's been a privilege to jump in""" start="00:14:24.895" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""with it here and there and to just listen to the great""" start="00:14:28.350" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""conversations.""" start="00:14:31.070" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""[Leo]: I think next up we have Emacs and McCLIM,""" start="00:14:33.181" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""which is going to be a similar format to this talk.""" start="00:14:38.950" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""We'll probably jump right into that in just about two minutes.""" start="00:14:41.905" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""We'll give you another countdown here. One second.""" start="00:14:44.710" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""Well, we arranged that and meanwhile,""" start="00:14:47.822" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""I just want to take my own""" start="00:14:49.917" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""little humble opportunity to thank you Jonathan, and I""" start="00:14:51.350" video="mainVideo-secrets" id="subtitle"]]
[[!template text="""guess everybody else.""" start="00:14:55.310" video="mainVideo-secrets" id="subtitle"]]

</div>Questions or comments? Please e-mail [pitas.axioms0c@icloud.com](mailto:pitas.axioms0c@icloud.com?subject=Comment%20for%20EmacsConf%202023%20secrets%3A%20Committing%20secrets%20with%20git%20using%20sops-mode)


<!-- End of emacsconf-publish-after-page -->