18:00:48 <GeKo> #startmeeting tor browser
18:00:48 <MeetBot> Meeting started Mon Jun  5 18:00:48 2017 UTC.  The chair is GeKo. Information about MeetBot at http://wiki.debian.org/MeetBot.
18:00:48 <MeetBot> Useful Commands: #action #agreed #help #info #idea #link #topic.
18:00:54 <GeKo> hi all!
18:00:58 <mcs> hi
18:01:08 <isabela> o/
18:01:08 <GeKo> as usual let's get started with the status updates
18:01:09 <boklm> hi
18:01:23 <GeKo> who wants to go first today?
18:01:55 * mcs will go first
18:02:03 <mcs> Last week, Kathy and I worked some more on #22471.
18:02:14 <mcs> We then switched to working on #22459 and produced a patch.
18:02:20 <mcs> We reviewed several patches.
18:02:24 <mcs> Also, we spent some time preparing and participating in the Tor Launcher automation meeting.
18:02:31 <mcs> This week, we will focus on updater testing for Tor Browser 7.0.
18:02:35 <mcs> We will also work on #22496, and if we have time we will return to #22471.
18:02:43 <mcs> That's all for us.
18:03:27 <GeKo> thanks. who is next?
18:04:16 <GeKo> nobody wants then i'll go
18:04:21 <Yawning> I sent more e-mail.
18:04:24 <Yawning> the end
18:04:34 <GeKo> thanks
18:04:46 <Yawning> sorry
18:04:56 <GeKo> np
18:05:16 <GeKo> last week i assembled all the necessary for the 7.0 release (i hope)
18:05:32 <GeKo> and started builds
18:05:48 <GeKo> we encountered some small missing pieces in build1 which are fixed in build2
18:06:04 <GeKo> build2 is uploaded into my build dir and signed
18:06:25 <GeKo> i did the begin-of-the-month-admin-work
18:06:43 <GeKo> and i started to look at changes coming in firefox 52.2.0esr
18:07:07 <GeKo> i'll start a build later today to check that we won't be surprised by build issues
18:07:30 <GeKo> this week i'll probably busy with releases/release preparations
18:07:37 <GeKo> that's it for me
18:08:24 * arthuredelstein can go
18:08:38 <arthuredelstein> Hi everyone -- over the past week,
18:08:44 <arthuredelstein> I wrote patches for #22452 and #22343
18:08:52 <arthuredelstein> tracked down and backported a fix for #22462,
18:09:00 <arthuredelstein> did some investigation of #21617,
18:09:14 <arthuredelstein> reviewed some Tor Browser tickets as well as https://bugzilla.mozilla.org/show_bug.cgi?id=1039069
18:09:28 <arthuredelstein> and I also started more work on #21762 issues.
18:09:37 <arthuredelstein> This week I will try to finish that ticket and look at #16341 and #21999.
18:09:53 <GeKo> what's left in #21762?
18:11:17 <GeKo> arthuredelstein: ^
18:11:21 <arthuredelstein> There are three things mentioned in the original description. At least two of them require no action. The third I am still investigating.
18:11:49 <GeKo> okay, cool.
18:11:54 <arthuredelstein> That one being blob favicons. I think it's actually safe, but I'm not 100% sure.
18:11:55 <GeKo> who is next?
18:12:02 * boklm can go next
18:12:04 <arthuredelstein> I also hope to work more on #21617 and #21448
18:12:12 <arthuredelstein> that's it for me :)
18:12:22 <boklm> I made a patch for #21704, which needs testing on a non-SSE2 Windows machine if we can find someone who has one.
18:12:28 <boklm> I helped build the new release, fixed #22328, #22003, #22479, and fixed some tests on #21982.
18:12:42 <boklm> I synchronized the tor-browser-build.git repo with the latest changes from tor-browser-bundle.git, closed #17380 and opened #22499.
18:12:58 <boklm> This week I'm planning to work on the panopticlick setup, and help with publishing the new release if we release it this week.
18:13:04 <boklm> That's it for me.
18:13:36 <GeKo> so, the errors that are still shown in the tests are in fact test errors?
18:13:53 <GeKo> are you working on fixing them as well this week?
18:14:04 <boklm> yes, I will fix them this week
18:14:14 <GeKo> cool, thanks
18:14:33 <GeKo> who else is here for a status update?
18:15:09 <tjr> I can go (sorry)
18:15:16 <GeKo> hi!
18:15:19 <tjr> I've been workign on the MinGW build and have made some progress
18:16:20 <tjr> Most notably I've got a almost-working build in TaskCluster: https://bugzilla.mozilla.org/show_bug.cgi?id=1330608
18:16:41 <tjr> It needs a couple peices of love, firstly the toolchain build grabs random tarballs and binaries and trusts them implicitly.
18:16:59 <tjr> The hard part there will be getting the zlib part of nsis to build without downloading a compiled zlib-for-windows
18:17:17 <tjr> The other piece is finishing the  patches for -central
18:17:35 <tjr> The most concernign of which is this new one: https://bugzilla.mozilla.org/show_bug.cgi?id=1365859 which uses a VS binary
18:17:58 <tjr> And then the other concerning one(s) would be the one that prevents the successful compilation of the browser from running
18:18:08 <GeKo> ugh
18:18:18 <tjr> Whichever that is! (Might be Skia, since I randomly just commented out assembly...)
18:19:39 <tjr> Aside from that I reviewed some windows hardening patches for little-t tor, which you saw GeKo
18:19:48 <GeKo> yep, thanks
18:20:40 <tjr> Mozilla turns that flag on, but I just realized it won't be turned on for TB
18:21:07 <tjr> I should figure out how to confirm that flag's effects, confirm it in little-t tor, and then we can enable it in TB
18:21:14 <tjr> That's all I have
18:21:21 <GeKo> that would be neat
18:22:11 <GeKo> tjr: did you get some responses to my "how can we get notified of tagged firefox releases"-mail?
18:23:04 <GeKo> another thing you  might be able to help with: if you have access to a really old windows machine to test the SSE2 requirement that would rock
18:23:10 <tjr> So I haven't prodded poeple on it because I think I have figured out the answer (in general) and need to solve it specifically for me as well
18:23:20 <GeKo> maybe mozilla has one still around? (see #21704)
18:23:29 <tjr> I believe that https://wiki.mozilla.org/Auto-tools/Projects/Pulse/Exchanges will do it
18:23:38 <GeKo> in comment:14 is a test bundle fwiw
18:23:39 <tjr> (will alert us on releases I mean)
18:24:11 <GeKo> aha
18:24:48 <GeKo> if you come up with a solution that works for you (and could work for us) i'd love to hear it :)
18:24:57 <tjr> I have to solve this problem for myself now for https://bugzilla.mozilla.org/show_bug.cgi?id=1361058 which is unrelated to Tor
18:25:12 <tjr> The goal for that is this month, so if that fits your timeframe I'll just plan on that
18:25:40 <GeKo> sure
18:25:46 <GeKo> that's fine
18:25:52 <tjr> I asked in #releng about a non-SSE2 machine. I do not have one.
18:26:07 <GeKo> ok.
18:26:19 <tjr> In theory I know one could emulate it by hooking the SPUID instruction in a Bochs emulator but.... that is not a straightforward solution hah
18:26:39 <GeKo> woah, i think we should try to keep it simple here :)
18:26:55 <GeKo> alright, anybody else for the status update?
18:27:25 <GeKo> okay, let's move on to the discussion part
18:27:31 <GeKo> i have three items i guess
18:27:39 <GeKo> 1) the 7.0 release
18:28:18 <GeKo> so far i have not heard about a show stopper. so, i am inclined to get the bundles out on wednesday before/around noon UTC
18:28:28 <GeKo> does that sound reasonable?
18:28:37 <GeKo> boklm: would that work for you?
18:28:48 <boklm> yes
18:29:00 <GeKo> ok. could you prepare the changelog tomorrow?
18:29:15 <boklm> the html changelog for the blog?
18:29:19 <GeKo> i'll be mostly offline due to a public holiday but i'll look over it
18:29:20 <GeKo> yes
18:29:23 <boklm> ok
18:29:59 <GeKo> hearing no objections, so let's go with that plan
18:30:06 <GeKo> 2) future work
18:30:48 <GeKo> i think we might be busy this month with getting the switch to esr52 properly done and with fixing the remaining issues/new ones
18:31:15 <GeKo> but longer term there are some things from our roadmap to keep in mind
18:31:41 <GeKo> arthuredelstein: you can start focusing on upstreaming our new patches and writing new ones for tracking/fingerprinting defenses
18:31:57 <GeKo> (after the 7.0 dust settles down)
18:32:11 <GeKo> mcs: i think for you are the tor launcher changes coming
18:32:25 <mcs> GeKo: yes
18:32:27 <GeKo> basically the stuff we talked about on friday
18:33:06 <GeKo> boklm: you'll have the pantopiclick as the item with the highest prio and then we need to finish the rbm switch and start working on 64bit windows builds
18:33:22 <boklm> ok
18:33:26 <GeKo> there a other parts like testing hardening options etc. as well
18:33:44 <GeKo> i think i can help with some of those, so that not all of it is on your plate alone
18:34:03 <tjr> Ooooh boy. We're going for 64bit on Windows? I guess I knew it was coming eventually....
18:34:24 <GeKo> does this big picture look reasonable? or am i missing something?
18:34:30 <GeKo> yes, we do!
18:34:39 <arthuredelstein> GeKo: Yes, I can work on those things. But these days I also feel a big sense of urgency on defenses against exploits.
18:35:31 <GeKo> yes, me too.
18:35:45 <GeKo> for that i'll try to get #16010 somehow fixed
18:36:07 <GeKo> that seems to be the most pressing item i think
18:37:13 <GeKo> arthuredelstein: there are things on our deliverable list that might intereest you then
18:37:27 <arthuredelstein> Yes, that will be great to have. My thoughts have been about such things as ubsan, cfi, build flags, partitioning allocator and the chromium sandbox.
18:37:34 <arthuredelstein> Not sure which of these fit with our deliverables
18:37:46 <GeKo> let me look
18:38:27 <GeKo> we have https://trac.torproject.org/projects/tor/wiki/org/roadmaps/TorBrowser
18:39:02 <GeKo> arthuredelstein: if you want to work on objective 3.2 go for it
18:39:50 <GeKo> Test impact and viability of hardening options: A) using Intel's MPX (memory
18:39:50 <GeKo> protection extension) for hardened builds, B) deploying STACK, which checks for
18:39:51 <GeKo> optimization-unstable code, C) SafeSEH (secure exception handling)
18:40:10 <GeKo> and activity 3 is
18:40:11 <GeKo> Test Undefined Behavior Sanitizer (UBSan) support for either hardened
18:40:12 <GeKo> standard builds or special QA builds, in order to identify critical compiling problems early
18:40:58 <arthuredelstein> Cool, thanks. Where's the part about MPX?
18:41:05 <GeKo> arthuredelstein: but please don't drop the other stuff i talked about :)
18:41:07 <arthuredelstein> Is that in the final deliverables doc?
18:41:13 <arthuredelstein> No, for sure I want to do those other things too!
18:41:17 <GeKo> #16352
18:41:24 <GeKo> arthuredelstein: yes
18:41:52 <GeKo> if you look at the text in the final otf proposal it is mentioned there
18:42:08 <arthuredelstein> Thanks, will do.
18:42:20 <GeKo> okay my item 3 is sandboxing
18:42:38 <isabela> !
18:42:41 <GeKo> we had some good discussion about it on tbb-dev thanks to yawning and others
18:42:55 <GeKo> now the question is how do we keep the  momentum and move things forward
18:43:04 <Yawning> "start paying for it"
18:43:16 <Yawning> >.>
18:43:26 <GeKo> yes, that's a good plan.
18:43:29 <isabela> hehehe
18:43:29 <tjr> Alex_Gaynor: ^
18:43:55 <GeKo> i think my point was and is that we need some kind of document
18:44:01 <Alex_Gaynor> tjr: where should I start reading?
18:44:11 <isabela> to organize the budget and be able to do so, it would be helpful for me at least to have the work that needs to be done organized in a pad or some place and then also be able to figure out how many ppl/for how long we estimate
18:44:17 <GeKo> outlining the stuff we want to do
18:44:20 <GeKo> yes
18:44:25 <GeKo> Alex_Gaynor: hi and welcome!
18:44:30 <Alex_Gaynor> 👋
18:44:31 <tjr> Just now.  For Windows, I think Alex and I's conclusion was that we could support either architecture (meta process or not) but that either would be hard
18:44:46 <Yawning> "Rewrite tor-launcher to be an external process that can handle downloading, installing, and updating firefox, without trusting it"
18:44:53 <Yawning> "with a better ui, and support for containerization"
18:45:52 <GeKo> i think that could be the abstract, yes :)
18:45:55 <Yawning> On Linux, there's nothing in theory that prevents firefox for forking/execing itself in a sandbox
18:46:00 <Yawning> beyond "I don't trust it to do so"
18:47:06 <GeKo> Yawning: i guess you thought about that the most. do you feel you could come up with a document of your idea
18:47:08 <isabela> is whatever happens on linux will be the same for macos?
18:47:08 <Yawning> but my tinfoil hat doesn't seem to keep the chemtrails out of my drinking water or whatever
18:47:23 <Yawning> GeKo: I'm busy because I need to pay rent
18:47:30 <GeKo> and all the folks knowing things about windows, osx or android could add to that
18:47:31 <Yawning> so, "no"?
18:47:43 <GeKo> ok.
18:47:45 <Yawning> I said what I think should happen in the thread :/
18:48:16 <isabela> i can start a pad and try to copy and paste things from the tbb-dev discussion there - maybe try to organize it by platform
18:48:18 <tjr> The pre-fork environment shouldn't process untrusted input though....
18:48:48 <GeKo> isabela: that would be neat. we could then nag people about adding "their" content
18:49:00 <isabela> or fixing my wrong copy and paste
18:49:00 <isabela> hehehe
18:49:03 <isabela> *fix
18:49:26 <Yawning> Really, the only odd thing out is android I think
18:49:39 <Yawning> and iShit phones
18:49:45 <Yawning> if we support those or are planning to
18:50:34 <GeKo> maybe.
18:50:36 <isabela> hmm i think iphone will take longer to be consider
18:51:24 <GeKo> i think it is fine planning without it for the time being
18:51:33 <isabela> would make sense to have it planed for android after drl project is done?
18:52:02 <Yawning> no
18:52:14 <Yawning> architecturally it doesn't make sense to plan for android at all in this
18:52:21 <Yawning> because it's Just That Different
18:52:41 <Yawning> imo
18:52:46 <Yawning> people are free to disagree
18:53:03 <Yawning> (this is also in the thread)
18:53:19 <GeKo> isabela: if we want to plan for it then it won't happen before the drl work anyway
18:53:28 <arthuredelstein> I think all platforms are worth doing so maybe it's good to plan for them all in any case.
18:53:34 <GeKo> yes
18:53:37 <Yawning> it's not that it's not worth doing
18:53:37 <isabela> ok
18:53:43 <isabela> i will start the pad with it all
18:53:53 <Yawning> there's Good Reasons why, it will be a nightmare to do on android and sort of pointless
18:53:56 <Yawning> :/
18:54:10 <arthuredelstein> Yawning: Even that's worth fleshing out in a document though :)
18:54:20 <Yawning> I wrote an email flishing it out
18:54:37 <Yawning> anyway, the document should separate concerns between the UI/UX
18:54:48 <Yawning> (which are mostly irrelevant beyond, it needs to happen, and it needs to not suck)
18:54:52 <GeKo> arthuredelstein: yes, i want to have  limits in that document too
18:55:06 <Yawning> and all the actually important things that this will do
18:55:17 <Yawning> like being able to spawn /configure tor
18:55:25 <Yawning> install shit, update stuff, use containers/sandboxing
18:55:28 <Yawning> etc etc etc
18:56:12 <Yawning> and I guess patching tor button to talk to a meta process (though that should be fairly easy)
18:56:41 <Yawning> (at least I thought of a way to do it, when doing the linux stuff, but ran out of time before I implemented it)
18:57:11 <Yawning> also I assume that we want to do this once and only once
18:57:20 <Yawning> and not like, once per platform
18:57:34 <Yawning> which probably rules out stuff like "write something in python"
18:57:43 <GeKo> if possible, yes, i think
18:58:07 <Yawning> because packaging that for windows would be a huge shitfest
18:58:14 <Yawning> if obfsproxy (python) is anything to go by
18:58:27 <Yawning> (or fte for that matter)
18:58:48 <GeKo> okay. do we have anything else to discuss in the remaining time?
18:58:55 <iry> yes
18:59:01 <GeKo> hi!
18:59:14 <GeKo> go for it
18:59:23 <iry> I am wondering if we could continue the last discussion about the new Tor launcher(sorry for the accidental disconnection last time).
18:59:27 <arthuredelstein> (I think it's worth considering what sandboxing features are possible to implement _before_ a tor-launcher replacement is written.)
18:59:39 <Yawning> (If I were to do this, C++/Qt or something, and I think about a year of my time)
18:59:44 <meejah> Yawning: a colleague of mine has managed to make a python thing packaged to work on All The OSes (but that doesn't mean it's "not a shitfest on windows" ;/ )
18:59:58 <iry> I notice that arthuredelstein said
18:59:58 <iry> "
18:59:58 <iry> 18:32:07 <arthuredelstein> A related issue is something I was discussing with Yawning a couple of days ago, as a result of his email thread on tbb-dev.
18:59:58 <iry> 18:32:31 <arthuredelstein> He's wondering how the tor-launcher automation fits in with sandboxing.
18:59:59 <iry> 18:32:53 <arthuredelstein> That is, his sandbox approach probably requires a separate-process tor-launcher.
19:00:01 <iry> 18:33:51 <arthuredelstein> So the question is whether the new UI should be developed in the same JS extension or as a new separate program using QT or similar.
19:00:04 <iry> 18:34:57 <arthuredelstein> Or possibly iry's python-based project would be a way to do it."
19:00:04 <meejah> it's Python, Twisted and Qt
19:00:09 <GeKo> iry: http://meetbot.debian.net/tor-project/2017/tor-project.2017-06-02-18.04.txt
19:00:22 <iry> But people are concered that "try to re-write in QT we will probably fail to deliver on time."
19:00:23 <iry> What I just would like to inform you that the all the basic functions of python-based Tor launcher have been implemented now actually(and you try it if you are interested in it). (There are still some issue like how to remember user's last settingf or GUI, but they probably can be fixed without too much effort).
19:00:24 <Yawning> meejah: thanks for volunteering
19:00:33 <GeKo> that's what we came up with last friday in our meeting on #tor-project
19:00:35 <iry> yes i went over the friday log
19:00:39 <Yawning> meejah: does it build terministically?
19:00:42 <meejah> volunteering to point you at his repo? ;)
19:00:46 <Yawning> no
19:00:55 <meejah> i do not believe it does deterministic builds
19:00:56 <meejah> :(
19:01:16 <GeKo> iry: let's close the meeting first so we don't block the channel
19:01:21 <Yawning> a huge part of what makes this rediculous is deterministic python for windows, with modules that call native code
19:01:22 <iry> So I am wondering if it still can be an option for us to implement the automation based on it. And since it's written in Python, the automation based on it may be even easier. What do you think?
19:01:28 <iry> okay!
19:01:35 <GeKo> thanks all for the meeting *baf*
19:01:38 <GeKo> #endmeeting