|
Size: 16663
Comment: non-free parts in CM
|
Size: 3282
Comment:
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 1: | Line 1: |
| ## page was renamed from Migrated/Android | |
| Line 4: | Line 5: |
| This is a wiki page that everybody can edit. Check the [[Android|history|&action=info]] for the last authorized version. If you are a [[http://fellowship.fsfe.org|Fellow of the FSFE]] you can login right now with your usual Fellowship username and password; non-fellows can [[UserGuide#Guest_accounts|create a guest account]]. | |
| Line 6: | Line 6: |
| = Free Your Android Phone! = | = About Android and this page = |
| Line 8: | Line 8: |
| {{attachment:FreeYourAndroid.png|Free Your Android!|align=right}} <<TableOfContents(3)>> Android is a [[http://www.gnu.org/philosophy/android-and-users-freedom.html|mostly free]] operating system mainly developed by Google. Unfortunately, the drivers for most devices and most applications from the "market" are non-free. This page collects information about running an Android system as free as possible and tries to coordinate these efforts. = Political Background = == Free Software == Smart-phones are small computers that we carry around all the time. Most smart-phones are not controlled by the users, but by the manufacturer and the operator. The software that runs on them is not Free Software. Even Android phones ship with non-free software and proprietary add-ons that usually do not work in the full interest of the user. Software updates will only be made available when the manufacturer still has a commercial interest in your device. The applications (apps) available from the official market are most of the time non-free. Nobody is allowed to study how they work and what they really do on your phone. Sometimes they just don't work exactly as you want, but sometimes they even contain malicious features. Running only Free Software on your device puts you in full control. Even though you might not be able to directly exercise all of your freedom, you will benefit from a vibrant community that can do it together. == Privacy == Our mobile devices contain more personal information than most private diaries. But proprietary systems, even most Android phones, are designed to leave this data in control of companies like Google or Apple. Most users do not have full control over the personal data on their device. Convenient solutions for cloud-based synchronization and data backup trick more and more people into storing all their data on centralized servers run by some commercial organisation. Whoever has personal information about us is able to manipulate us. Therefore non-free devices are a threat to democracy and our society. Privacy is one of the most important reasons to support Free Software. Proprietary add-ons like [[https://en.wikipedia.org/wiki/Carrier_IQ|Carrier IQ]] spy on smart-phone users without their knowledge. Many apps from the market contain malicious features. They read your private data and “phone home”, or they use [[https://code.google.com/apis/analytics/docs/mobile/android.html#overview|Google Analytics]] to send data to Google. These are just examples that have been discovered so far. The lack of freedom impedes independent inspection and secret spy features only become known by accident. Most smart-phones require you to connect and identify yourself to a centralized server before you can use them properly. Users have to trust the server without knowing what information is stored and how it is processed or related to other data. A phone running only Free Software does not require you to provide data to an untrustworthy company or pressure you to do so – at least this is very unlikely, as the software’s actions would be obvious and the community would be able to develop an alternative version. The convenience of “value-added” services that are often coupled with such connections can be provided using Free Software as well. This keeps you in control of your personal data, your diary remains in your possession. You can have the cake and eat it too. = The Operating System = An operating system is a collection of software that enables you to use your phone and run other applications on it. Even though Android is [[http://www.gnu.org/philosophy/android-and-users-freedom.html|mostly free]], many phones ship with proprietary components and add-ons. Some phones also have a locked [[https://en.wikipedia.org/wiki/Booting#Boot_loader|boot loader]] which prevents you from booting and installing other operating systems. If you want to buy an Android phone, make sure that the boot loader can be [[http://wiki.cyanogenmod.com/?search="unlock+bootloader"|unlocked]] and that there are free versions of Android [[http://www.cyanogenmod.com/devices|supporting the device]]. == Replicant OS == [[http://replicant.us/|Replicant]] is a distribution of Android that is 100% Free Software. It runs only on [[http://replicant.us/supported-phones/|a very limited number of devices]]. If you have one of these devices, then this is your choice. == CyanogenMod == {{attachment:cyanogenmod.png|CyanogenMod|width=250,align=right}} [[http://www.cyanogenmod.com/|CyanogenMod]] is the most popular aftermarket distribution for Android. It [[http://www.cyanogenmod.com/devices|runs on many phones]] and offers [[http://www.cyanogenmod.com/about/features|features]] not found in the official Android based firmwares of vendors. It also ships without Google applications and gives you more freedom over your device. !CyanogenMod is Free Software developed by an active community. It still requires [[https://github.com/CyanogenMod/android_device_semc_iyokan/blob/gingerbread/proprietary-files.txt|non-free device drivers and firmware]] which are [[https://github.com/CyanogenMod/android_device_semc_iyokan/blob/gingerbread/extract-files.sh|fetched from a device]] and are included in the ROM. In order to install !CyanogenMod, your device's boot loader needs to be unlocked. Some manufacturers consider your warranty void when you've unlocked its boot loader. The [[http://wiki.cyanogenmod.com/wiki/Main_Page|Wiki of CyanogenMod]] contains detailed instructions on how to install it. After the installation, your phone will be freed from all those pre-installed proprietary applications and there will be no need to connect your phone with a Google account. With the exception of some non-free device drivers, your phone should run only Free Software. There is a DRM provider app that you can [[http://wiki.cyanogenmod.com/wiki/Barebones|remove]]. === Non-Free Parts === If you know about non-free software added to !CyanogenMod, please let us know about it! Currently we suspect that the [[http://clockworkmod.com/|ClockworkMod App]] that ships with CyanogenMod is not free. == Android Revolution / HD == "The most popular ROM for HTC Desire HD & HTC Inspire 4G". '''Currently it is unclear whether this ROM is 100% Free Software''' (input welcome!). * [[http://forum.xda-developers.com/showthread.php?t=840040|Release announcements, descriptions and FAQ]] * [[http://www.androidrevolution.nl/|Homepage]] * [[http://www.youtube.com/watch?v=UWf6VNNgad8|Video Review]] = The Apps = For most people, the [[https://market.android.com/|Google Android Market]] is the only or the main source for their applications. It doesn't even tell you whether an app is Free Software or not, let alone its license. Unfortunately, most apps from this or other markets are proprietary. Even if you install a Free Software app, there is no reason to trust the downloaded binary. Using the Google Market also requires a Google account. It is recommended to not use this market at all. == F-Droid == {{attachment:fdroidlogo.jpg|F-Droid|align=right}} The [[http://f-droid.org/|FDroid initiative]] was started to change the sad Free Software app situation in the Android world. It builds a repository of easily-installable Free Software for the Android platform. There is an Android client application that makes it easy to browse Free Software applications, install them onto your device, and keep track of updates. When available it includes information about how to donate money to the authors of the app. The FDroid repository contains details of multiple versions of each application. You can also easily create and add own repositories. But since the initiative is [[https://gitorious.org/f-droid/fdroidserver|very active]], developing in a decentralized fashion and open to collaboration, creating own repositories it not really necessary. Its goal is to include all useful Free Software Android applications and to keep up with their updates. You can help to make FDroid [[https://code.google.com/p/cyanogenmod/issues/detail?id=3789|preinstalled on CyanogenMod]] so more people can benefit from a free market. === Adding Apps Yourself === You are encouraged to add applications yourself. There is a long queue of [[http://f-droid.org/forums/forum/submission-queue/|applications that wait to be added]]. Adding them works similar to [[http://www.freebsd.org/ports/index.html|FreeBSD ports]] and [[http://www.gentoo.org/proj/en/devrel/handbook/handbook.xml?part=2&chap=1#doc_chap2|gentoo ebuilds]] by filling a simple recipe file which controls how a package is build from source. If you like to add apps yourself, you should read about [[http://f-droid.org/forums/topic/adding-apps-with-git/|how FDroid works with git]] and [[https://gitorious.org/f-droid/fdroidserver/blobs/master/README|how to write these so called metadata files]]. === Synchronizing Your Data === When you run only Free Software and when you do not rely on non-free network services like the ones Google offers, you lose the convenience of synchronizing your contacts, your calender and other data with your other devices. Fortunately, there is plenty of Free Software that does this job as well: * [[http://acal.me/|ACal]] synchronizes your Android addressbook and calendar to [[https://en.wikipedia.org/wiki/CalDAV|CalDAV]]/[[https://en.wikipedia.org/wiki/CardDAV|CardDAV]] servers like [[http://owncloud.org/|ownCloud]]. * [[https://code.google.com/p/kolab-android/|kolab-android]] synchronizes your Android addressbook and calendar to [[http://www.kolab.org/|Kolab]]/IMAP folders. * [[http://wiki.cyanogenmod.com/wiki/Howto:_Connect_to_Device_with_SSH|SSH Daemon dropbear]] is pre-installed on !CyanogenMod can be used to e.g. run [[https://en.wikipedia.org/wiki/Rsync|rsync]]. == Freeing Non-Free Apps == Unfortunately, there are still some applications that do not have a free alternative. To use the proprietary app is a bad idea; it takes away your freedom. In addition, if you settle into using the non-free program, you won't feel the need for it to be free. Even if you don't know how to program, you can [[https://wiki.fsfe.org/ConvinceYourFriends|contact]] the authors of crucial apps and [[https://fsfe.pad.foebud.org/en-android|ask them politely]] for their reasons of not publishing their application as Free Software. Many apps are available without payments, so money is not always the dominating reason. Sometimes one email can make a difference and there have already been successful attempts: [[https://market.android.com/details?id=cz.hejl.chesswalk|Chess Walk]] for example is now [[https://gitorious.org/chesswalk/chesswalk|liberated]]. === Apps That Still Need To Be Liberated === Please add apps here that have no free counterpart, but are important to have on a free system. People can contact the authors of those apps and ask them why they are not Free Software. * '''Public Transport''' App ([[https://market.android.com/search?q=public+transportation&c=apps&sort=0|market search]]) * [[http://oeffi.schildbach.de/index.html|Öffi]] is a very popular app which builds upon a [[http://code.google.com/p/public-transport-enabler/|Free Software library]] by the same author. * '''Menstruation Calendar''' and Calculator ([[https://market.android.com/search?q=menstrual&c=apps&sort=0|market search]]) * [[http://www.efrac.com/calendar/|Menstruation Ovulation Period]] ([[https://market.android.com/details?id=com.efrac.Calendar2|market]]) * [[http://christian-albert-mueller.com/mydays/|My Days – Period Tracker]] ([[https://market.android.com/details?id=com.chris.mydays|market]]) * [[http://www.dr-hein.com//64/Health_Services/moblie_apps/|Menstruationskalender Lite]] ([[https://market.android.com/details?id=com.drhein.healthservices.menstruationlite|market]]) * [[http://witiz.com/apps/menstrual-calendar/|Menstrual Calendar]] ([[https://market.android.com/details?id=com.guillaumegranger.mc|market]]) * '''All-round-Backup''' (You can only [[http://wiki.cyanogenmod.com/wiki/Howto:_Nandroid_Backup|backup your entire flash]] with !CyanogenMod's bootloader or use [[http://f-droid.org/repository/browse/?fdfilter=backup|apps]] that backup only some data) * [[http://www.matrixrewriter.com/android/|Titanium Backup]] ([[https://market.android.com/details?id=com.keramidas.TitaniumBackup|market]]) * [[http://www.rerware.com/Android-Backup/|MyBackup]] ([[https://market.android.com/details?id=com.rerware.android.MyBackup|market]]) * [please add your candidates here] === Responses to Objections We've Heard from App Developers === Only when we understand the motivation of programmers who keep their apps proprietary, we know what needs to be changed in order to change their minds and to convince them of liberating their own app. Please contribute your experiences with developers of non-free apps here and share useful responses to their objections. * Objection: If I publish my app as Free Software, I will not be able to make money with it. * You can still offer your app in other markets and ask for money there. * Offer options for people to donate. Free markets like FDroid can include them and their users like to reward. Depending on your case, you might make more money with donations than from sales. * Objection: But when my app is Free Software other people can distribute it without me getting profit. * That is true, but keep in mind that people who don't want to pay you will always find ways to do so. * If you ask people in a friendly non-obtrusive way and give them good reasons, they will give you money. * In case other people distribute your app without charge over markets, there are ways to stop that. Talking to the distributor or the market operator is one way. * Objection: I'm embarrassed by my bad code and don't want anybody to see it (from [[http://blog.flattr4android.com/?p=52|Flattr4Android]]). * Your code is very useful to many people and it works. Of course good code would be better, but code quality is secondary to freedom. * Everybody wrote bad code at some point. Sharing it will enable others to help you improving it. * [please add here] |
Android is an operating system mainly developed by Google. In the time of writing it is by far the most sold operating system on mobile devices with an estimated global market share of around 75%. Unfortunately, the Android Operating System and its technical environment suffers from two main anti-features: * important parts of the default applications as well as the majoritiy of third-party applications are non-free. To put users in control of their technology, the FSFE created the [[https://fsfe.org/activities/android/|Free Your Android]] campaign as early as in 2012. * because Android is devloped by Google but mostly used by third-parties to sell their hardware (Samsung, Huawei, Sony etc.), many devices suffer from software obsolescence. To help users extending their hardware usage time and regain control, the FSFE created the [Upcyling Android campaign]. This page is a wiki page and as a wiki page it serves the knowledge sharing and collection of both of the aforementioned camapaigns. In the subpages you find: |
| Line 138: | Line 14: |
| = Contact and Contributing = If you want to stay informed or like to work with others on a free Android system, you can '''[[https://lists.fsfe.org/mailman/listinfo/android|subscribe to the mailing-list]]'''. You can also ask questions or give input by writing to [[mailto:android@lists.fsfe.org|android@lists.fsfe.org]]. For technical questions about apps, the [[irc://irc.freenode.net/fdroid|F-Droid IRC channel]] is a good place to ask. For exchange about the lower layers of Android, the [[irc://irc.freenode.net/cyanogenmod|CyanogenMod IRC channel]] is more suitable. Everybody in this community is very friendly and loves others to help, so don't be shy and get involved! |
= Free Your Android! = This page collects information related to FSFE's [[http://FreeYourAndroid.org|Free Your Android Campaign]]. Please start there to get an overview. While the [[WikiPedia:Android_Open_Source_Project#Android_Open_Source_Project|Android Open Source Project (AOSP)]] is Free Software, mostly under the Apache 2.0 license, it is mostly incomplete and cannot provide a decent user experience on devices without the addition of proprietary libraries (without them you will be unable to use your phone as a phone, the GUI will be slow, GPS and camera won't work, and so on). Android is nearly never shipped as-is on devices. Vendors usually use non-free libraries together with their modified version of Android, for which they usually don't release the source code because they are not required to do so under the terms of the Apache 2.0 license, nor are the sources provided for non-free applications such as those found in the [[WikiPedia:Android_market|Android market]]. Consequently, the only source code they are required to release is that of the Linux kernel they are using, and sometimes the device is even [[WikiPedia:Tivoization|"tivoized"]]. As a result, most devices sold are running non-free software and must be liberated to give the user the freedom he/she requires. Besides all this, due to the hardware architecture of some devices using Qualcomm system-on-a-chip technology, the liberation of a device may have a very limited effect since the hardware can still spy on you: the modem (a device which communicates with the GSM infrastructure) always runs non-free software and may exert another level of control and/or surveillance over the phone. More information is available in an [[http://www.gnu.org/philosophy/android-and-users-freedom.html|article]] written by Richard Stallman. |
| Line 142: | Line 28: |
| = Other Phone Related Initiatives = Even though this page is about Android, there are other important initiatives that also have the goal to allow you using a phone in freedom. There is the spiritual Openmoko continuation [[http://projects.goldelico.com/p/gta04-main/|GTA04 from Golden Delicious]]. It builds a free phone without the need for proprietary drivers. The [[https://en.wikipedia.org/wiki/Maemo|Maemo]]/[[https://meego.com/|MeeGo]] initiative has now moved into [[http://merproject.org/|Mer]] and [[https://en.wikipedia.org/wiki/Tizen|Tizen]] and tries to be an alternative free operating system. Also WebOS is [[http://developer.palm.com/blog/2011/12/open-source/|about to be liberated]]. |
|
| Line 145: | Line 29: |
| ---- Portions of this page are modifications based on work created and shared by Google and used according to terms described in the [[http://creativecommons.org/licenses/by/3.0/|Creative Commons 3.0 Attribution License]]. Android is a trademark of Google Inc. |
[[Category/Activities]] |
About Android and this page
Android is an operating system mainly developed by Google. In the time of writing it is by far the most sold operating system on mobile devices with an estimated global market share of around 75%. Unfortunately, the Android Operating System and its technical environment suffers from two main anti-features:
important parts of the default applications as well as the majoritiy of third-party applications are non-free. To put users in control of their technology, the FSFE created the Free Your Android campaign as early as in 2012.
- because Android is devloped by Google but mostly used by third-parties to sell their hardware (Samsung, Huawei, Sony etc.), many devices suffer from software obsolescence. To help users extending their hardware usage time and regain control, the FSFE created the [Upcyling Android campaign].
This page is a wiki page and as a wiki page it serves the knowledge sharing and collection of both of the aforementioned camapaigns. In the subpages you find:
Free Your Android!
This page collects information related to FSFE's Free Your Android Campaign. Please start there to get an overview.
While the Android Open Source Project (AOSP) is Free Software, mostly under the Apache 2.0 license, it is mostly incomplete and cannot provide a decent user experience on devices without the addition of proprietary libraries (without them you will be unable to use your phone as a phone, the GUI will be slow, GPS and camera won't work, and so on). Android is nearly never shipped as-is on devices.
Vendors usually use non-free libraries together with their modified version of Android, for which they usually don't release the source code because they are not required to do so under the terms of the Apache 2.0 license, nor are the sources provided for non-free applications such as those found in the Android market. Consequently, the only source code they are required to release is that of the Linux kernel they are using, and sometimes the device is even "tivoized". As a result, most devices sold are running non-free software and must be liberated to give the user the freedom he/she requires.
Besides all this, due to the hardware architecture of some devices using Qualcomm system-on-a-chip technology, the liberation of a device may have a very limited effect since the hardware can still spy on you: the modem (a device which communicates with the GSM infrastructure) always runs non-free software and may exert another level of control and/or surveillance over the phone.
More information is available in an article written by Richard Stallman.
