mullvad / mullvad-browser

Privacy-focused browser for Linux, macOS and Windows. Made in collaboration between @torproject and @mullvad
https://mullvad.net/browser
1.22k stars 24 forks source link

Android and Ios builds #24

Open alithechemist opened 1 year ago

alithechemist commented 1 year ago

Hi, I see mobile is not (yet) available, but i was wondering whether it could be possible to build it by myself? I'm particularly interested in Android actually.

Thank you in advance for any advice. Ali

ruihildt commented 1 year ago

There is currently no Android build, but it's something we're interested in. We don't know if/when we would be able to work on that.

As for iOS, since the platform doesn't support Firefox (and by extension Tor Browser), it's not possible.

alexvong243f commented 1 year ago

As for iOS, since the platform doesn't support Firefox (and by extension Tor Browser), it's not possible.

While I'm not a apple user, from what I read, there's a browser called onion browser, which is basically a tor browser for ios. Unfortunately, it can still leak IP and other fingerprints due to limitations of webkit (ios disallows the use of other browser engine). One can workaround the IP leak by using a VPN but other leaks remain.

Perhaps one can try to create an onion browser without onion?

xbdmHQ commented 1 year ago

As for iOS, since the platform doesn't support Firefox (and by extension Tor Browser), it's not possible.

While I'm not a apple user, from what I read, there's a browser called onion browser, which is basically a tor browser for ios. Unfortunately, it can still leak IP and other fingerprints due to limitations of webkit (ios disallows the use of other browser engine). One can workaround the IP leak by using a VPN but other leaks remain.

Perhaps one can try to create an onion browser without onion?

This has been fixed now!

xbdmHQ commented 1 year ago

There is currently no Android build, but it's something we're interested in. We don't know if/when we would be able to work on that.

As for iOS, since the platform doesn't support Firefox (and by extension Tor Browser), it's not possible.

You can make a Mullvad-Browser for iOS and then, so we can sideload the .IPA with altstore.io or sidestore

morganava commented 1 year ago

@alexvong243f @xbdmHQ so I can comment a bit on the technical side ignoring the realities of roadmaps/developer availability/etc (so this is just technical cloud-gazing and not to be taken as any promises or predicitons)

Onion Browser on iOS is rather different from Tor Browser on Android. Onion Browser is an app wrapped around a webkit webview as provided by iOS (as is every other browser on iOS). Tor Browser for Android is (to be a bit hand-wavey) is an app wrapped around a gecko webview.

The main difference is that we (Tor Project applications team) have a number of patches on top of the vanilla gecko code-base provided by Mozilla which make the web browsing functionality more private and secure. Internally, we call this set of patches 'base-browser' (not the best name but it it is descriptive). Tor Browser and Mullvad Browser are in turn additional patches (in their own repos) on top of this base-browser. Tor Browser has additional patches for tor integration, product branding, documentation, an additional tor-specific privacy features which don't make sense for a clearnet browser. Mullvad Browser has additional patches primarily for branding.

The problem which @alexvong243f alluded to with Onion Browser is that the devs (The Guardian Project) do not have control over the webkit webview internals, and as such things such as your referenced IP leak are possible and they can't really do anything about it, since it's functionality provided by the OS. Unfortunately that's more or less the best that can be done on iOS until Apple allows 3rd party browser engines in their app store (ignoring side-loading which isn't really thing we can expect most users to get into). There has been some talk in the tech sphere of Apple opening this capability up but the reality is that we have to wait for Mozilla to port Firefox to the iOS platform before we can do anything here.


Now as far as Mullvad Browser on Android is concerned, such a thing is technically possible but requires a fair bit of technical work to do. The build system first of all would need to be updated to support building vanilla Firefox for Android. In addition, an additional refactoring of the various Android-specific components would need to happen; Tor Browser for Android consists of a stack of projects all working together, and they all operate under the assumption that they are building Tor Browser. In 2022 we explicitly reorganized the Tor Browser repo (used to build our version of the Gecko web-view) into two sections, 'base-browser' (described above) and 'tor-browser' with a nice clean dividing line between the two. This same work would need to happen with all of the other Firefox for Android components we modify. Then of course Mullvad Browser-specific patches for branding, look and feel, etc would need to be applied. And all of this new code would need to be maintained after the initial dev work of getting it all working :)

Needless to say, a whole bunch of iOS specific wok i haven't even thought about would need to happen to bring this to iOS even assuming Mozilla was maintaining Firefox for iOS.

Ok, I think that about covers the high level summary I can provide on this topic. Let me know if there's more you are interested about!

ruihildt commented 1 year ago

@xbdmHQ I deleted your last comment. You're free to disagree with others (including myself, or as here, a Tor/Mullvad Browser developer taking time to write a detailed answer) as long as you stay respectful, which was not the case here.

Thank you for your understanding.

ghost commented 1 year ago

The problem which @alexvong243f alluded to with Onion Browser is that the devs (The Guardian Project) do not have control over the webkit webview internals

as you said in the context it's an iOS only problem.

Mullvad Browser has additional patches primarily for branding.

having a beta version with a limited feature set is more welcome and lead to more feedback and contributions if there is a stable semi good version so that we can at least leak free surf with vpn and adblock. Since all browsers on Android currently have their tradeoffs, the community expectations are rather limited and i would be happy to see you push the foss android browser market as well.

For Android you would need to add an addon like option in the settings for the vpn location and account settings i would suggest to use the source code from Tor Browser for Android (Guardian) and add uBlock origin.

Also please in case you do create an android app at any time in the future, add a shortcut for smart (android) tv's, currently all browsers fail to create a proper shortcut in order to be launched later on. libretube and newpipe are launch-able via a smart tv. (in terms of easy shortcut - should be code 1 liner)

Usage with a smart tv is obviously with a mouse + keyboard (bluetooth) so browsing and video streaming etc works very well (tested with fennec)

alithechemist commented 12 months ago

As a rule of thumb if you own an Apple product you should not be concerned with privacy. --> I mean you need to identify yourself on the device before you could even use it. <-- You made your choice at the time you bought it or you got it from the company without complaining. Then, after doing this, I'm sorry but anything you do in terms of privacy makes very little sense and might even sound funny to some.

Srsly the Iphone sends (meta)data to Apple every time you lock/unlock the phone, and you want to run onion-browser? What for? I mean you might very well make it even worse.

Now after knowing this, what sense does it make to have onion browser on your Apple device? Do you really believe that Apple does not know what you do with your phone? Where you are, if you are walking, watching tv or going to the bathroom? They even patch the OS update on the fly with some unique identifier... Just throw it in a drawer, don't sell it otherwise it will be still around, and maybe start with a decent hardware as first like System76, or a Pixel+GrapheneOS. For instance, I need a new laptop and despite the Dell xps or the X1 Carbon are among my favorites, I'm getting a System76 as they seem to be able to reduce IME capabilities hence attack surface (although I still have to find out exactly how).

Cheers

ThePrivacyPlayer commented 3 months ago

I'd also love to use mullvad on Android, and since sideloading is now a thing for iOS and iPadOS in Europe, hopefully Firefox and Tor will be able to work on it as well, even if the scope is limited to Europe only (luckily I don't use iOS/iPadOS anymore).