15:58:16 #startmeeting tor anti-censorship meeting 15:58:16 here is our meeting pad: https://pad.riseup.net/p/r.9574e996bb9c0266213d38b91b56c469 15:58:16 feel free to add what you've been working on and put items on the agenda 15:58:16 the read-write link for meeting pad can be requested via direct message 15:58:16 Meeting started Thu Feb 1 15:58:16 2024 UTC. The chair is shelikhoo. Information about MeetBot at http://wiki.debian.org/MeetBot. 15:58:16 Useful Commands: #action #agreed #help #info #idea #link #topic. 15:58:20 Hi! Hi~ 15:58:25 o/ 15:58:29 hello! o/ 15:58:39 o/ 15:59:18 hi 16:02:51 okay! let's start with the first discussion topic: Tor Browser binaries are getting too big, can we reduce the size of PTs? 16:03:13 This topic is from cohosh, isn't it? 16:03:36 i added it because PieroV brought it up in the #tor-anticensorship channel 16:03:48 Yep, I've asked a few info actually :) 16:04:14 The primary thing we could do is to merge different binaries into one, as go runtime and other libraries are quite big, and we are shipping a few copies of it 16:04:43 i recall an issue from several years ago discussing this and i've been looking for it on gitlab 16:05:00 13.0.9 was initially rejected by Google, and we managed to get it accepted by rezipping the apk with 7-zip. This workaround saved us, but we're trying to save whatever we can 16:05:10 cohosh: tpo/applications/tor-browser-build#13770 16:06:20 ah thanks dcf1! that's the one 16:06:23 can someone share the edit link for the pad in pvt? 16:06:51 APKs are zip file, I don't know if they can contain symlinks 16:07:00 But maybe we can try something before running tor 16:07:11 E.g., create the symlink in some writable directory 16:07:34 even if there is no symbol links, we can just make the first arg the subprogram name 16:07:42 this isn't the biggest issue 16:08:02 the biggest issue would be the need to unified the version of all the dependencies 16:08:30 right now, go don't support ship more than one version of dependencies in a single binary 16:08:48 So, I've seen that IPtProxy has a combined Snowflake + Lyrebird (but we don't need to mobilego part) 16:08:53 and if we have some dependencies rely on different version of dependencies, then it could be an issue 16:09:30 but otherwise we just need to engineering effort to combine them them all 16:09:30 And replacing the two distinct PT binaries with the single library from IPtProxy saves 6MB on the compressed apk 16:10:17 but otherwise we just need the engineering effort to combine them them all 16:12:01 yeah that's another route we can go: just have one PT with all of our supported transports (like how lyrebird has obfs4, meek-lite, scramblesuite, etc) 16:13:18 yes, that would also works... 16:13:57 Jeremy_Rand_36C3[m] mentioned a Gobusybox program (https://github.com/u-root/gobusybox) but I haven't tried to play with it yet 16:15:30 from a procedure point of view, do we need to include this task into a sponsor and wait it to be funded? 16:16:21 There might be some ideas already going on with Arti 16:17:05 For now maybe with the repacking workaround + minifying JS we might be good for 13.5 (but we're not sure). We'll have to see if it becomes a bigger problem when migrating to the next ESR 16:18:11 We'll see that around June 16:18:47 We're trying to reduce in general, so I was curious to know if you already know of some methods, but we can wait for now 16:20:14 yes, there is one method we known of, but it would require some work to implement 16:20:25 which is reuse the library included in go program 16:20:28 besides repacking the final apk, it might help to repack omni.ja in Firefox (I seem to remember omni.ja is already being unpacked+repacked for something in TB build) 16:21:26 it seems that there are some tools that can compress zip files with zopfli, if 7-zip is not already using that, it is likely to do a little better https://github.com/google/zopfli/issues/29 16:21:34 Yes, I'm also trying that right now. We can shave another 3-4MB there with JS minifying + repacking 16:21:50 PieroV: I see, that's what you were referring to above 16:22:14 Yes, repacking with 7-zip alone is 600kB 16:24:19 would this busybox method take work? it seems pretty straightforward except for the symlink vs extra argument modifications 16:24:54 oh the dependencies thing shelikhoo brought up, never mind 16:25:29 yes, but in the best case. when all libraries works as is, it should just work 16:26:18 I think webtunnel could be merged into lyrebird as a first step 16:26:27 as it is much more simpler than snowflake 16:26:44 so it is less likely to trigger a dependency conflict 16:28:56 i will create an issue for merging webtunnel into lyrebird, and we can track it there 16:29:08 Thank you very much! 16:29:13 thanks shelikhoo :) 16:29:35 for the merging of snowflake, let's wait a little while before proceed 16:29:55 anything else we would like to discuss for this topic? 16:30:27 the next topic is: 16:30:28 Add WebTunnel built-in bridge in TB or does it need more testing? 16:31:13 I think it is fine to include it, even if we don't have a built-in bridge yet 16:32:19 so the fist step would be hosting a bridge that would be suitable as a built-in bridge 16:33:30 ggus: was this your discussion topic? 16:33:42 yes 16:33:48 i wasn't paying attention, sorry 16:34:05 sorry I for got to ping ggus... 16:34:08 X~X 16:34:17 sorry I forgot to ping ggus 16:34:31 i thought about exposing more this PT on TB, so we can engage more operators to run webtunnel bridges 16:34:46 and also educate users about this new pt 16:35:05 so, i thought about adding it to the built-in menu 16:36:34 (dunno how useful it could be) 16:38:49 sounds like it's worth a try 16:38:53 I think it should be quite useful, as right now there isn't a UI to notify user of a added PT, especially when there is no dedicated binary for that pt 16:38:54 possibly related: https://gitlab.torproject.org/tpo/anti-censorship/team/-/issues/102 16:40:22 yeah 16:41:30 okay, so the next step is to find an operator for it? 16:42:08 we have this list of informal requirements: https://gitlab.torproject.org/tpo/anti-censorship/team/-/wikis/Default-Bridges#adding-new-default-bridges 16:42:12 yes, there is an operator from MIT running a lot bridges, i could ask them 16:43:32 nice 16:44:56 cool! i will reach out to them 16:45:00 nice! 16:45:14 anything we like to discuss on this topic? 16:45:31 and there are 2 announcement this week: 16:45:33 0.4.7.x EOL:"~964 bridges, which means roughly 45% of the advertised bridges bandwidth)" https://forum.torproject.org/t/tor-relays-psa-tor-0-4-7-reaches-end-of-life-eol-on-2024-01-31/11157 16:45:52 this one is also from ggus, I think 16:46:17 yeah, in february we will reach out to operators and ask them to upgrade to 0.4.8 16:46:26 we will start this on week of feb 19th 16:47:05 if you're reading this IRC log, please upgrade your bridges! 16:48:02 the next discussion topic is: 16:48:04 PSA: Elections in Pakistan February 8th. 16:48:16 oh, it's not a discussion. it's just fyi 16:48:39 oh, yes, it is just an announcement.. 16:48:51 we don't have an vantage point there 16:48:52 every week or so i will try to include which election is coming next 16:49:25 yes... 16:49:43 thanks for that ggus :) 16:49:52 yes! thanks ggus! 16:49:54 anything else we would like to discuss in this meeting? 16:50:24 just a head up that: https://bridges-test.torproject.org/ is live, the rewritten version of bridgedb in rdsys is being tested in staging environment 16:50:32 translation support is not added yet 16:50:54 it does not distribute real bridges 16:52:08 okay, no need to keep everyone here, let's call it a meeting! 16:52:08 #endmeeting