15:01:26 #startmeeting Tor Browser Weekly Meeting 2024-10-28 15:01:26 Meeting started Mon Oct 28 15:01:26 2024 UTC. The chair is morganava. Information about MeetBot at http://wiki.debian.org/MeetBot. 15:01:26 Useful Commands: #action #agreed #help #info #idea #link #topic. 15:01:47 o/ 15:02:11 Hi! 15:02:15 the pad per usual: https://pad.riseup.net/p/tor-tbb-keep 15:02:16 :D 15:02:20 o/ 15:03:12 in case you missed it, Tor Browser 14.0 went out last week 15:03:14 \o/ 15:04:00 judging from the mails/gitlab notifications over the weekend, it looks like the only major issue atm is a particular crash on macOS 15:04:15 when attempting to connect to a valid but offline onion-service 15:04:23 which is.. weird 15:04:24 o/ 15:04:34 but at least reproducible 15:05:19 morganava: is it? 15:05:21 has anyone looked into this yet? 15:05:32 o/ 15:05:42 morganava: as far as I can tell nina tried, but she couldn't 15:05:43 (i haven't looked into it, i am just saying hello) 15:05:49 PieroV: seems so? I remember reading in one of the places that it was consistent 15:05:58 (I don't know which version of macOS she's running) 15:06:18 perhasp it was only consistent for that particular user/their configuration 15:06:19 it's said to be consistently reproducible on MacOS 15 / M1 15:06:39 (from the hackerone late report, with steps to reproduce) 15:06:48 micah: and this right here is why we need real hardware sometimes^ 15:07:23 https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/43250#note_3099858 - you need to ask if they're running stuff 15:08:02 well, in other non-dev news, happy to report our CCC talk submission was submitted on time with a general topic of the tor browser dev cycle, ESR transition, etc 15:08:22 so should be hearing about whether it was accepted by iirc Nov 11 or some similar date 15:08:45 thorin, I've already closed their report as "informative" because we had an earlier public issue. Not sure if they're still in the mood to cooperate :P 15:08:49 * thorin has a mac 10.14 and is willing to update, for a price 15:08:55 🤞 15:09:05 thorin: macOS 14, probably? 15:09:16 10.14 is the unsupported one :) 15:09:23 yeah i saw the h1 report and was like i've already heard about this on the bug tracker :p 15:09:28 sorry 15:09:35 yeah I meant 14 15:09:54 * dan_b loves mac os versioning 15:10:09 indeed :p 15:11:32 Don't release builds output tor stdout even with -v? 15:12:02 In case it might be the time we move logs from outside the provider 15:12:12 * to outside 15:12:28 who currently has an M1 mac available to potentially debug on? 15:12:37 clairehrust and dan_b? 15:12:43 clairehurst* 15:12:45 And possibly macOS 15 15:12:52 right 15:13:19 Maybe Intel macOS is also good, as long as it has macOS 15 15:13:39 i mean fortunately we only have the 1 patch which could reasonable cause a crash that I'm aware of (the custom SOCKS5 error code patch) 15:14:05 but 1, it's weird it's mac only whcih I guess would imply it's happening somewhere far away from that patch 15:14:12 morganava: see https://content.events.ccc.de/cfp/38c3-community-stages/ , deadline for submitting to a Community Stage (if you get rejected by the main track) is Nov 16. 15:14:19 and also weird if it really is arm-specific 15:14:19 * dan_b waves 15:14:23 jeremy: oh nice 15:14:26 M2 here, but should still work? 15:14:29 i'm pretty sure my mac is up to 15? 15:14:37 let me double check 15:14:45 o/ (sorry, forgot the time) 15:14:46 If I remember correctly, we don't customize the CFLAGS of tor... And sometimes I hit assertions 15:14:50 Yeah I'm at 15.0.1 15:15:03 morganava: CDC (the Cluster that includes Namecoin) is involved in the Community Stages CfP, so I think it's likely that your talk would get approved there if necessary 15:15:03 clairehurst, dan_b: looks like y'all have an opportunity for some native macOS debugging :D 15:15:13 in the meanwhile, shall I close the confidential bug as duplicate and dump the information into the earlier bug? 15:15:25 nope 14.4 currently 15:15:34 clairehurst: I think M2 is also okay 15:15:37 ma1: yes please 15:16:14 alright, a fix for this is not a blocker for 14.0.1 just FYI, happy to let this be a known issue in the blog post for now 15:16:46 The STR should be visiting an offline Onion service if I understand correctly (e.g., offlin4w6nrxjkyf7k6xpf2sw4lxbclih45ltwsiiouivksr6wgdulqd.onion) 15:16:58 morganava: FWIW if we don't know what's causing the crash, there is a possibility that it's exploitable in other, less obvious ways 15:16:59 there's 3 bugs 15:17:25 morganava: 14.0.1 has already been built, so I'm happy to hear it isn't a blocker :) 15:17:54 ma1: would you consider 43249 also a dupe of 43245 15:18:14 ok, ninja'ed 15:18:41 also a reminder that the apps team is officially afk next week, I'll be keeping an eye on the mozilla emails so; if there's a chemspill I'll probably (try) to flag down another builder 15:19:02 but we've already had our chemspill for the year so I'm sure it'll be fine 15:19:23 PieroV: you people are getting too on top of things 15:19:25 thorin, okey dokey 15:19:28 ok looks like i can prolly manualkly trigger the macos 15 upgrade on my m1 if we want? 15:19:28 :p 15:19:57 dan_b: I'd say try to repro first on w/e OS you ocurrently have and upgrade if it's a no-repro 15:20:11 ok 15:20:33 is it m1 specific or will clairehurst's m2 work? 15:20:53 dan_b: I don't think we know for sure yet 15:20:54 (disregard my str from earlier) 15:21:11 it may repro on x86_64 but we don't know yet 15:21:37 unless there's been any new info in overnight 15:23:04 PieroV: Looks like you've a discussion point on non-build tools 15:23:29 morganava: yeah, as I said a while ago, I think we could create a repo for useful tools 15:23:37 E.g., the scripts to tag browsers 15:23:49 I bet it's more to do with arm, I haven't had any issues with M1 vs M2 before, but quite a lot with arm vs arch64 15:23:59 Keeping stuff on tor-browser.gitsometimes is a bit awkward 15:24:21 due to the branching between base/tor/mullvad? 15:24:25 Yeah 15:24:32 would using tor-browser-build.git/tools for those scripts work? 15:24:41 yeah i ran into that with the tag/signing patch 15:24:54 boklm: I think it would be better than using tor-browser.git for sure 15:25:05 I don't have a strong opinion on tor-browser-build vs. dedicated repository 15:25:24 I have also some other stuff I could share (well, it's already public in my scripts repo) 15:25:51 E.g., a script for repacking and signing APKs without building, which is useful for testing JS patches 15:27:08 as we already have a few scripts there I think it makes sense to add those new scripts there too, unless we have some reason to want them in a separate repo 15:27:28 so if the scripts don't live in the repo they operate on, it becomes a bit awkward having to somehow point them to the relevant root 15:28:09 problem exists for instance with the blog generation script, you need to update one of the tools/signnig/set-config files 15:28:42 yes 15:28:53 I dno't have a strong opinion of where the scripts live, but i think having them in one place is a good idea for consistency and discverability 15:29:19 and hopefully for sharing some of the relevant functionality (setting relevant diectory roots mostly) between them 15:30:07 in theory if the scripts live in tor-browser-build but operate on tor/mullvad browser they *could* do so through git_clones (if you add a pushable remote) 15:30:36 For some scripts you could just run them in the root of the repo 15:30:37 we could have some tools/browser/set-config file shared by the scripts operating on tor-browser.git 15:31:01 That's what I do in a few scripts (you're expected to call them from the right directory) 15:31:20 But also what boklm says, we do that for example with the GeckoView build tools 15:31:28 (you need to define your env file with your custom paths) 15:32:34 boklm: the only annoying part about the set-config setup intor-browser-build is that you need to either manually re-populate these files when switching branches or just have custom branches with main/maint-13.5/etc with a patch that sits on top whcih updates all the relevant pieces 15:33:31 That script would need to be in .gitignore 15:33:40 yes, sometimes it can be annoying with conflicts when the default config file changes 15:37:33 we can also ship a .example version of settings like in tools/geckoview/android-env-linux-template.sh that has to be copied to the .gitignored android-env.sh 15:37:41 I *really* like the soft-link track using the browser name at the end to speify which thing to operateon 15:37:52 and our scripts fail if it settings file hasnt been created 15:37:58 specify which thing to operate on 15:38:29 so we could re-use that for scripts living in tools/browser which may have per-browser logic 15:38:46 yes 15:38:46 soft-link trick* 15:38:54 morganava: if jwilde is supposed to use those she might have issues I guess? 15:39:08 Don't softlink still require admin privileges on Windows? 15:39:13 nope 15:39:26 but also tor-browser-build is pretty linux specific 15:39:43 will any of those scripts work on windows? 15:39:50 exactly :p 15:39:53 yeah, there's little hope of getting tbb working in Windows for a myriad of other reasons 15:40:12 years worth of dormant perl and perl library bugs for starters :P 15:40:19 wls 15:40:24 (kidding) 15:40:32 i mean yes though^ 15:40:52 WLS is basically just a linux VM with windows integration now isn't it? 15:41:23 I think there's some things missing but I could try it! 15:41:26 Personally I liked it better back when it was literally GNU/Windows 15:41:32 WLS might support symlinks 15:41:48 If nothing else because the very concept of GNU/Windows is hilarious 15:42:12 jeremy: back when they implemented the linux syscalls in the Windows kernel you mean? 15:42:18 But yeah I'd be kinda surprised if WSL2 can't handle it 15:42:31 it's a shame they abandoned that but I suppose it was probably the 'right' engineer decision in many ways 15:42:37 but unfortunate 15:42:45 morganava: IIRC WSL1 was basically a shim between the Linux and Windows kernels, so the GNU userspace ran without modifications 15:42:52 kernel API's I mean 15:42:55 mmhm 15:42:57 there was no Linux running there at all 15:43:02 righ texactly 15:43:09 it was a native re-implementation 15:43:13 Such a cool design 15:43:16 Very sad it died 15:43:34 iirc fork() was somehow impossible to do in NT for w/e reason 15:43:38 but who knows ancient history at this point 15:43:57 ok right 15:44:07 One of my university classmates worked at Microsoft for a summer working on Windows kernel things 15:44:11 the horror stories he tells... 15:44:19 so I think this is somehow workable 15:44:39 scritps in tor-browser-build/tools/browser (or other projects in the future) 15:45:27 we can use a similar .gitignore'd conf and conf.example similar to rbm.local.conf scheme 15:45:49 and browser-specific things can be done via similar symlink tricks as we use in tools/signing 15:45:56 yes 15:46:28 probably a bike-shedding question 15:46:43 but do we *particularly* care about scripting language used? 15:46:49 maybe selecting tor-browser.git directory can be done using a symlink instead of a config file 15:47:27 oh so you just symlink tor-browser into the scripts dir? 15:47:36 yes 15:47:49 that way it can work with any language 15:49:20 works for me 15:49:48 also we should have a README for that dir that docuoments what the various scripts do 15:49:52 what scripting languages are we voting from? perl, shell, python and? 15:50:14 node.js ? :P 15:50:15 dan_b: i reckon that's probably it? 15:50:34 Rust :p 15:51:02 for example tools/browser/tor-browser would be a symlink to tor-browser.git 15:51:23 shell where possible would be my vote. i haven't dont a ton of python but it does seem to occasionally get wonky between versions. as much as i haven't done much perl in eons, it's... very stable now lol 15:52:15 tbh i'm fine with w/e tool makes the most sense for the job, we have a lot of v useful python scripts :D 15:52:20 jwilde: any of those 3 make you more nervous than the others when thining about running on windows? 15:52:37 +1 for the tool for the job 15:52:42 so long as people are fine with potentially needing to debug scripts they don't know the language flulently of :p 15:52:43 or we can get more chaotic: lua 15:52:59 :p 15:53:44 ok I think I love this 15:53:53 i'll move my signing script MR over sometime this week 15:54:03 +1 for the tool for the job as well, and for running on windows I'd say not perl 15:54:13 i'm really bummed out about go's shift from compile in dir, to dir is a project needing a .mod file and etc, it really made it a lot harder to use go for small scripty sys admin tasks, which was definatly something some folks were doing some years ago 15:54:42 not that there weren't a lot of good reasons for it, but it really made doing scripting like work with go a bit more akward 15:54:52 ok and one last point from me I almost forgot 15:55:06 oh really? perl's the hard one for windows? fascinating. ok noted! thanks! 15:55:19 we have working testbuidls with working WebRTC on Windows for Mullvad Browser 15:55:46 jwilde: how goes the last WeakReference.idl work? 15:56:18 good!! I'm cooking up a build now that I'm hoping will be my last for this 15:56:36 inshallah 15:57:11 pls everyone cross your fingers that widl has been kind to me lol 15:57:13 please push your latest clean branches for this to the open MRs so we can hopefully review and get into nightly at the end of this week 15:57:22 o7 15:57:43 widl would never miss entire features-sets found in midl don't worry ;) 15:58:22 ok 2 minutes, any other last minute comments or complaints? 15:58:33 otherwise have a great week everyone :) 15:59:01 you too 15:59:46 clairehurst, dan_b: please prioritise repro'ing/debugging that macOS crash, I'll cc you to the relevant bug(s) after the meeting 16:00:00 #endmeeting