FFUpdater: Install and update browsers from Mozilla - Issues/Pull Requests are welcome
Mirrors: GitHub GitLab

Tobiwan b090fe4659 Tobiwan/ffupdater#27 4 年之前
.github f44e7f640d try to fix github action by adding the gralde-wrapper.jar 4 年之前
.idea b602b38bbd - update README.md 4 年之前
dev f2d707fd55 improve summary for the setting "disableApps" 4 年之前
fastlane 83146dd285 - implement a cache for fetched metadata like latest version name and latest download url 4 年之前
ffupdater b090fe4659 Tobiwan/ffupdater#27 4 年之前
gradle f44e7f640d try to fix github action by adding the gralde-wrapper.jar 4 年之前
.gitignore e50cfc4775 - fix warnings 4 年之前
CHANGELOG.md 5cbc86f9d7 Release new version 68.3.7 4 年之前
LICENSE 8b103f6ce2 Add license information 9 年之前
README.md b090fe4659 Tobiwan/ffupdater#27 4 年之前
build.gradle ad2a64c833 - remove plugin com.jaredsburrows.license because it did not work as I intended 4 年之前
gradle.properties e50cfc4775 - fix warnings 4 年之前
gradlew 32ed6ba14d try to fix github action by regenerating gradle wrapper 4 年之前
gradlew.bat 32ed6ba14d try to fix github action by regenerating gradle wrapper 4 年之前
push_changes.txt 359cf786dd Tobiwan/ffupdater#17 4 年之前
settings.gradle 53536ad129 Use DownloadManager 9 年之前

README.md

Get it on F-Droid

Firefox-Updater

Download, install and update these browsers from Mozilla:

FFUpdater will check periodically for updates and will display a notification when an update is available. This feature itself can be disabled and the check frequency can be changed.

Security measures:

  • only HTTPS connections
  • check fingerprint of the downloaded file
  • check fingerprint of the installed app

You can find the APK certificate fingerprints on multiple website - e.g. apkmirror.com I did my best to make the app as secure as possible - feel free to double-check it in the source code.

Important: I removed Fennec Beta and Fennec Nightly because they are outdated - I will add Fenix Beta and Fenix Nightly soon.

Deprecated browsers

Fennec

16.05.2020: Mozilla wants to migrate from Fennec to Fenix. Fennec Beta and Fennec Nightly are already end-of-life and Fennec Release will be soon.

Fennec is being replaced by our new state-of-the-art mobile browser codenamed "Fenix". We're slowly migrating users in order to make sure the experience is as painless and as enjoyable as possible. We started to migrate users who were using Fennec Nightly in January (bug 1608882). It took us several weeks to be sure of the result and to finally offer Fenix Nightly to all users using Fennec Nightly. Another few weeks later, we repeated the same process with Fennec Beta (bug 1614287). Fenix Beta has been offered to the whole Fennec Beta population on April 22nd. We're planning to do the same with Fennec Release sometimes this year. The schedule is still to be determined.

The Google Play Store has a lot of nice features, but it's still pretty basic whenever a software publisher wants to slowly migrate users. Once a migration is started, we can't provide any Fennec updates to the population who wasn't offered Fenix, yet. I can say this restriction is painful to manage for Android developers, Mozilla included. Because of it, we had to stop shipping Fennec Nightly/Beta APKs at the beginning of each migration. This explains the dates of the last builds. At the same time, we stopped building Fennec Nightly/Beta because it enabled us to save technical resources as well as people's time.

https://bugzilla.mozilla.org/show_bug.cgi?id=1627518

Build app

Android Studio

From an existing project

  1. File
  2. New
  3. Project from Version Control...
  4. Git
  5. URL: https://notabug.org/Tobiwan/ffupdater.git
  6. Clone
  7. Wait for Android Studio to import project
  8. Build
  9. Build Bundle(s) / APK(s)
  10. Build APK(s)
  11. Wait
  12. Click in the bottom right on "locate"

From "Welcome to Android Studio" screen

  1. Check out project from Version Control
  2. Git
  3. URL: https://notabug.org/Tobiwan/ffupdater.git
  4. Clone
  5. "Would you like to open it?" Yes
  6. Wait for Android Studio to import project
  7. Build
  8. Build Bundle(s) / APK(s)
  9. Build APK(s)
  10. Wait
  11. Click in the bottom right on "locate"

Gradle

  1. git clone https://notabug.org/Tobiwan/ffupdater.git
  2. cd ffupdater
  3. create the file local.properties with the path to your Android SDK - for example:

    sdk.dir=C\:\\Users\\Tobias\\AppData\\Local\\Android\\Sdk
    
  4. gradlew assembleDebug

  5. cd ffupdater/build/outputs/apk/debug

  6. ffupdater-debug.apk is the generated APK file

Mirrors

Technical detail

Fennec Release

The Mozilla API will be queried:

Fenix Beta/Nightly, Firefox Focus/Klar

The Mozilla CI server will be queried:

Firefox Lite, Fenix Production, Lockwise

The Github API will be queried:

If .../releases/latest returns a release without assets (APK files for download), then fetch all releases and search for the latest release with assets.

History

Since Mozilla shut down their FTP server on 2015-08-05, non-"Google Play Store" updates of Firefox have to be done by third-party apps such as this one.

Mozilla now uses a uniform URL to point to the latest release, see their README for details. The current URL for Android is: https://download.mozilla.org/?product=fennec-latest&os=android&lang=multi

I opened a ticket about non-"Google Play Store" updates with Mozilla in 2015, as did others:

Maintainer:

Tobiwan (now)

Boris Kraut (https://gitlab.com/krt/ffupdater, until April 2019)

Since I left F-Droid (and Android/Smartphones) about a year ago, I am looking for a new maintainer to take over. Unfortunately the upstream issue I opened years ago is still not solved in 2019. While Fennec F-Droid is back in the mainline repo and other binary repos do serve Firefox, some might still prefer this updater. So as I said: Maintainers welcome. The main task should be to test the last few merge requests (especially the background update stuff) and release a new version. New Maintainer: https://notabug.org/Tobiwan/ffupdater

License

FFUpdater -- a simple Android app to update Firefox.
Copyright (C) 2015-2019 Boris Kraut <krt@nurfuerspam.de>

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.