13 ms·
Firefox for iOS on GitHub
- 0x006A 12y agois this a mirror or did the main development move to github?
- fabrice_d 12y agoThat's the main repo. It was private before.
- 0x006A 12y agoSo Firefox repos are moving to github instead of hg.mozilla.org or git.mozilla.org?
- fabrice_d 12y agoNot the main gecko repository, no.
- mbrubeck 12y agoFirefox for iOS won't be based on the main Firefox repo ("mozilla-central"), which remains on hg.mozilla.org. A lot of Mozilla projects have their main repos on GitHub, including Rust, Servo, and Firefox OS.
- JohnTHaller 12y agoFirefox for iOS won't be part of the main Firefox repos because it won't be using the Firefox underpinnings. It can't use the gecko engine due to Apple's restrictions. Since it's Firefox mostly in name only, it makes sense to have it in an entirely separate repo.
- holygoat 12y agoThat's not true. We're using GitHub for ease of integration with CI systems, convenience, and the ability to move more rapidly. We'll move into m-c if and when it suits the needs of the project.
- JohnTHaller 12y agoAh, I wasn't aware of that. Thanks for the correction. I just assumed it made more sense to keep it separate since it won't be sharing any existing Firefox code since it doesn't use gecko or XUL and will be written in Apple's Swift language. Twas a silly assumption. Voted up.
- 0x006A 12y ago- How far away from a release is this? - Given that Apple does not allow other render engines. What makes this Firefox?
- deleted 12y ago[deleted]
- dubcanada 12y agoWell according to tweets, not very far. And with the release of WKWebView, I guess it makes it a skin.
- micampe 12y ago> What makes this Firefox? I think that's an interesting question. Is a browser defined by its rendering engine or by its features and UI? When Chrome used WebKit, it was clearly understood by everyone to be different from Safari, even though the rendering engine was the same (I know, the differences were big), but a Firefox browser that uses WebKit seems to not be considered Firefox. Personally, while I understand the philosophical and political differences, I think the browser is defined by its features, not the rendering engine: the user wants their bookmarks to sync between the phone and the computer, they don't care whether the two programs use the same library to draw the page on the screen or not, just like they don't care which malloc() implementation they use. To put it in fewer words: Chrome on iOS is still Chrome, not Safari, because it has Chrome's features. (This would not have been true a decade ago, but rendering engines compatibility is much less of an issue now)
- Refefer 12y agoIt's a huge issue on mobile. Multiple rendering engines requiring the world to write software to a spec is what prevents people from writing code dependent on a particular browser or, in this case, a rendering engine. You see it all the time in the mobile web: plenty of sites just plain don't work when using other rendering engines.
- acqq 12y ago
- misiti3780 12y agoLooks like a great Swift reference! Nice work!
- TazeTSchnitzel 12y agoI'm glad Firefox is coming back to iOS. I remember they used to have a similar Safari wrapper supporting sync, but they must've gotten rid of it.
- mbrubeck 12y agoThe previous iOS app was called Firefox Home, first released in 2010: https://blog.mozilla.org/blog/2010/07/15/get-firefox-home-on-your-iphone/ https://blog.mozilla.org/blog/2010/07/15/get-firefox-home-on... Development stopped in 2012: https://blog.mozilla.org/services/2012/08/31/retiring-firefox-home/ https://blog.mozilla.org/services/2012/08/31/retiring-firefo...
- JohnTHaller 12y agoIt's still a Safari wrapper with sync support. Not sure what they'll call it yet. I really hope they don't just call it Firefox since it definitely isn't.
- TazeTSchnitzel 12y agoOh, I realise.
- rimantas 12y agoIs Chrome on iOS Chrome? If it is, why Firefox cannot be Firefox? Or should they ditch "Firefox" and just call everything Gecko, because you think that's the most important?
- JetSpiegel 12y ago> Is Chrome on iOS Chrome? It's not, and just because Google also caved in to Apple's tyranny doesn't make it right for everyone to do it.
- JohnTHaller 12y agoNope. It's a skin that can sync passwords and bookmarks to Google with some Google Chrome branding on it over Safari. Google's Blink engine, which powers Chrome on Windows, Mac, Linux, Android, Chrome OS, etc can't be used on iOS. Because Apple.
- misiti3780 12y agoHere is an interesting comment: (KeyPayload.swift) We should also call super.isValid(), but that'll fail: Global is external, but doesn't have external or weak linkage! Swift compiler bug #18422804.
- LeoNatan25 12y agoYes, that is a known bug. Swift and its development toolset is still very much a work in progress and definitely not ready yet, despite the embracing of many developers. Like anything related to iOS 8, such as Xcode 6, Swift, Watchkit, OS frameworks, services, it's good six months to one year work away from being actually ready.
- holygoat 12y agoWe're certainly finding interesting Swift bugs, that's true.
- owenwil 12y agoAnyone manage to get it to build? Lots of errors, assumably very far away from being usable.
- aclissold 12y agoThey're mainly just warnings stemming from dependencies—it compiles just fine in Xcode 6.1.1 after running git submodule update --init and force-unwrapping a bunch of optionals. Interestingly, it appears to do everything BUT display web pages at this point! Looks very preliminary. https://www.dropbox.com/s/o5kmot2fg6i7wmx/Screenshot%202014-12-04%2020.48.10.png?dl=0 https://www.dropbox.com/s/o5kmot2fg6i7wmx/Screenshot%202014-...
- Yoric 12y agoWithout entering the details (which I don't have anyway, I'm not involved in this version of Firefox), yeah, it's very preliminary.
- graetzer 12y agoThey are probably trying to get the bookmark synchronization to work first. Displaying web pages is easy with the build in UIWebView (or WKWebView) component
- franklinho 12y agoYeah, this pull request fixes all of the actual errors that prevent building: https://github.com/mozilla/firefox-ios/pull/30/files https://github.com/mozilla/firefox-ios/pull/30/files
- bla2 12y agoIt's a bit sad that Firefox is caving in and shipping a browser using WKWebView. The rationale is that by using WKWebView they now get Nitro, and they have to "go where the users are" -- but a few years ago, it was a lot less clear that Android would be more prevalent than iOS. Also, iOS seems like a fairly hostile environment for 3rd-party browsers since it's not possible to change the system browser -- that's probably why mobile Safari has such a large usage share on iOS.
- JoshTheGeek 12y agoThey have no other choice; Apple won't accept apps with custom web rendering engines.
- fekberg 12y agoHow can Apple get away with that? I am genuine interested! Sounds pretty much like the same thing Microsoft did with Internet Explore back in the day, except they didn't force you to use their rendering engine, but shipped the OS with their browser as default?
- mkozlows 12y agoMicrosoft was a monopoly. Apple is a niche player. Antitrust laws don't apply to companies with 20% of the market.
- spigoon 12y agoActually, iOS has 42.4% of the smartphone market in the U.S. according to http://www.cnet.com/news/android-loses-some-us-market-share-but-remains-top-dog/ http://www.cnet.com/news/android-loses-some-us-market-share-...
- cyborgx7 12y agoThere are other markets than the US and the antitrust laws were employed against Microsoft in the EU.
- flyosity 12y agoAnd it's all written in Swift! This is probably the largest application written in Swift so far, and definitely the largest one on GitHub that I've seen. If you're looking to make the transition from Obj-C to Swift (or from any language to Swift) this is probably a solid example to learn from.
- k-mcgrady 12y agoAccording to the GitHub language stats it's only 17% Swift. Nearly 70% C and 6% Objective-C.
- ndomin 12y ago100% of the C code is openssl edit: https://github.com/mozilla/firefox-ios/search?l=c https://github.com/mozilla/firefox-ios/search?l=c
- holygoat 12y agoThat's true, but we're also still learning, and things are changing as Swift and libraries evolve.
- graetzer 12y agoI think it's great that they are going to officially support iOS again. Coincidentally I submitted a new version of my own browser app to the AppStore, on the same day they made the announcement. I added support for the new Firfox sync protocol - it took me forever to get it working and now it's kind of redundant :-/ Anyway, if someone is interested in the source: https://github.com/graetzer/Foxbrowser https://github.com/graetzer/Foxbrowser
- b3tta 12y agoIt's not redundant. You wrote an awesome browser and many people, including me, a very eager to get their hands on the new version. Keep up with you awesome work! It's not just that competition like this is important, but this project is also something that you can show around and impress people with it (at e.g. job interviews).
- valisystem 12y agoYour version is out, their is not, it's whole lot of a difference. Thanks a lot and I'm installing it right away !
- graetzer 12y agoThanks, just to clarify: the new version is still in the review process, the version in the AppStore only works with older Firefox versions. You will have to install this from source to get the latest version
- wooger 12y agoI don't use your browser, but I'll check it out. Also I hope the dev of iCab reads HN and can get some benefit from your code - he's not added support for new FF sync yet.
- foodstances 12y agoWhy is there so much Google Analytics tracking in your app? https://github.com/graetzer/Foxbrowser/commit/a5ab03e91c06e1df7471975d449bf59f6bed2846 https://github.com/graetzer/Foxbrowser/commit/a5ab03e91c06e1...
- ZanyProgrammer 12y agoSince one of Firefoxes selling points for the desktop is its plethora of extensions, will those be available on iOS? If not, what's the difference with this and Safari?
- JohnTHaller 12y agoThey won't be available nor can they be. Firefox on iOS will be a Firefox UI over Mobile Safari, like all other browsers on iOS. Firefox's extensions are made to work with the rendering engine in proper Firefox as you'd use on Windows, Mac, Linux, and Android. Platforms where you can install your choice of browser.
- akshayaurora 12y agoIMHO, 1Password extension injects JavaScript into web page. Would be interesting if addons are possible.
- Cthulhu_ 12y agoProbably not, unless the UI itself is rendered in a webview, and extension scripts can be injected into the page during runtime.
- akshayaurora 12y agoCan we expect Mozilla Stumbler geolocation crowdsourcing also on iOS?
- kbrosnan 12y agoNo. iOS would require a jailbroken phone from the initial investigation. https://groups.google.com/forum/#!topic/mozilla.dev.geolocation/6qbJAat60pk https://groups.google.com/forum/#!topic/mozilla.dev.geolocat...
- darklajid 12y agoI'm a Mozilla and Firefox fan, running Aurora on my desktop, tablet, mobile. Love the project and it's the best browser out there for me. That said.. As far as I understand the 'real meat', the engine, is now webkit. Which defeats the process for me. The UI was always what Firefox was lacking in and even the very latest design decisions are - well - not quite my cup of tea at least and potentially questionable. I would like to understand what Mozilla gains here (if this is mostly a 'skin' around webkit/a web view control) and why iOS users would install it (I'm on Android - dipping my toes into FirefoxOS every couple of weeks). Edit: Thanks for reminding me of Sync as a great use case for a Firefox browser, even if it's using a different engine.
- kevingadd 12y agoFirefox sync and some of the other bells and whistles are nice. Since I use Firefox on all my devices right now, and lean heavily on sync, having a 'Firefox' browser on iOS would be pleasant just for that, even if it's still running WebKit under the hood to satisfy Apple.
- k-mcgrady 12y ago>> "I would like to understand what Mozilla gains here (if this is mostly a 'skin' around webkit/a web view control) and why iOS users would install it (I'm on Android - dipping my toes into FirefoxOS every couple of weeks)." On iOS you use WebKit or you don't make a browser. They don't have a choice. As for why you would install it, probably sync. If you use Firefox on desktop presumably you can now access your bookmarks, history etc on iOS.
- JohnTHaller 12y agoOn iOS you don't make a browser. Period. You get to make a skin for Safari. That's all.
- gress 12y agoFalse. You can build any UI you want, as well as any feature you like. The restriction is that you must use WebKit as the rendering engine for content that contains JavaScript.
- deleted 12y ago[deleted]