7 ms·
Although it's technically running the Linux kernel, I personally would not consider it a free (libre) operating system as sold on most of those devices. I'm sur
by TallGuyShort 14y ago
Although it's technically running the Linux kernel, I personally would not consider it a free (libre) operating system as sold on most of those devices. I'm sure Linus is proud, but this seems like more of a win for Google than for the Linux community or free software in general.
- ivix 14y agoIt's not "technically" running the Linux kernel, it IS running the linux kernel. It's also using most of the standard GNU tools - bash, etc. You can open a shell on a rooted android device and use it much like any other distribution. This is a huge win for Linux.
- slurry 14y ago> It's also using most of the standard GNU tools - bash, etc. You can open a shell on a rooted android device and use it much like any other distribution. Android does use GNU gcc, but not glibc or GNU tools - it uses a custom libc called Bionic (BSD-licensed) and mksh + busybox for tools (also BSD-licensed). You don't even have to root it to play around with the shell (although you can't do much). Much to my dismay, the standard busybox does not even come with awk. :( > This is a huge win for Linux. Yup.
- betterunix 14y ago"You can open a shell on a rooted android device and use it much like any other distribution" Assuming, of course, that you can actually root it. "This is a huge win for Linux." Is it? What was won, exactly? If we are not seeing a more vibrant free software ecosystem as a result, then we did not really win anything. The prevalence of app stores, the number of Android devices that are difficult to jailbreak or for which no jailbreaking tools are available yet, and the partitioning of "users" and "developers" in the Android ecosystem are not positive things for Linux or for GNU.
- thefreeman 14y agoAre there android devices that are difficult to root? I have only ever used the Nexus line (closes to actual Android spec), but they have all been incredibly easy to root. I was under the impression they were actually built this way on purpose.
- vidarh 14y agoThere are certainly devices that are harder. Many relies on various bugs. Most ICS and Jelly Bean devices appears to be trivial to root due to a timing issue in the "recovery" functionality, though - there's a script floating around that claims to root pretty much everything. Note that there are several issues: Rooting is often reasonably easy. But rooting is not enough to be able to install custom roms. For that you also need to be able to unlock the bootloader. There's any number of obstacles. That said, there are tons of easily rootable and unlockable devices out there, so it's not really a big problem for those of us who insists on one or the other. Especially with more and more higher end devices coming out of non-descript Chinese manufacturers who couldn't give a crap about the carriers desires, and which will start being "good enough" for more and more people (my new phone is Star phone that looks exactly like the Samsung Galaxy SIII, and while it don't perform as an SIII, it beats the pants of my 2 year old HTC Desire HD in every way and cost a fraction of what my Desire HD did)
- css771 14y agoWell, you can still install custom ROMs even with a locked bootloader. You just can't change the kernel. The custom ROM needs to be using the same kernel.
- thefreeman 14y agoI guess I do have it wrong then. I thought Android had made efforts to intentionally allow root (and unlock of the bootloader) without requiring an exploit (ie. a security flaw which could easily be used maliciously).
- gte910h 14y agoKernel != The shell system. You can't get shell on the gas station pumps I did either, but they run on linux.
- ako 14y agoI though android was completely free of anything GNU, but according to the GNU website, there is very little GNU in android: http://www.gnu.org/philosophy/android-and-users-freedom.html http://www.gnu.org/philosophy/android-and-users-freedom.html
- ttuominen 14y agoAndroid is far from a typical Linux distribution. In addition to custom kernel features (see https://lwn.net/Articles/514901/ https://lwn.net/Articles/514901/ ), most of the rest of the system hasn't got anything to do with GNU or GPL and is structured very differently from a typical distribution. O'Reilly's "Embedded Android" is a great source on Android internals. I'm not saying Android isn't good for Linux. I also do appreciate the ability to read and learn from the source code and modify it.
- gte910h 14y agoEmbedded linux, which is a vast majority of those installs, never DID use typical shells for smaller targets.
- vidarh 14y agoBusybox + Ash is far from typical for a desktop Linux distribution. It is on the other hand exceedingly common for embedded Linux, and has been for well over a decade.
- josteink 14y agoYup. Describes both my router and NAS which I work with all the time.
- ttuominen 14y agoMy sources tell me that Busybox is actually not included in at least vanilla Android. Not in the AOSP tree at least (just checked (v4.1.2)). I'm not sure if OEMs have included it in actual products, but why would they have? I might be wrong. There are separate installers available to get Busybox on a rooted Android device. https://play.google.com/store/apps/details?id=stericson.busybox&hl=en https://play.google.com/store/apps/details?id=stericson.busy... They have a version of the Ash shell, Berkeley licensed, with the original notice by Kenneth Almquist. The Busybox Ash is also derived from the same origin. As others have pointed out, they also have their own libc. Most of these decisions seem to have been made to avoid using the GPL outside of the kernel. And a custom libc seems to entail that patches have been necessary to enable some of the standard GNU based tools they do have. If I understand correctly, mainly because of Bionic, you often can't just take a standard piece of Linux userland software and make it work without modifications or without including the GNU libc. Also because of avoiding the GPL, the hardware driver model is different, with most of the driver logic being in closed source userland code. The filesystem layout is non-POSIX-like, the way the user accounts and processes are handled is non-standard, they have their own dynamic linker, etc. Not to mention that a large part of the system relies on their Dalvik (Java) virtual machine, with a large application framework implemented in C++ and Java through JNI. I'm not familiar with the embedded Linux landscape, so I don't know if this heavy avoidance of the GPL is common there. But I do know Android does not resemble GNU/Linux for these reasons.
- chimeracoder 14y ago> It's also using most of the standard GNU tools - bash, etc. Actually, I'm pretty sure it uses Busybox tools with ash, not GNU with bash. http://www.gnu.org/philosophy/android-and-users-freedom.html http://www.gnu.org/philosophy/android-and-users-freedom.html
- valley_guy_12 14y agoNot exactly. Most Android devices come with a very simple shell named ash, but it's no relation to busybox's ash.
- chimeracoder 14y agoMy mistake. Still, it doesn't use GNU utilities - Android is Linux but not GNU.
- temac 14y ago> It's also using most of the standard GNU tools - bash, etc. You can open a shell on a rooted android device and use it much like any other distribution. Nope. Android does not use GNU. It is not just a GNU/Linux distribution, it is a completely different operating system, even more different than other alternates to GNU such as Busybox if you consider the philosophy of the whole thing. GNU's Not Unix, but a little bit anyway. Android is not Unix, no matter from which angle you view it.
- jstanley 14y ago"You can open a shell on a rooted android device and use it much like any other distribution." This is the nub of the matter. It's not a free system because of the ludicrous hoops you have to jump through in order to actually get to the Unix underneath.
- josteink 14y agoThere's no need to be rooted at all. There's actually no hoops. Just download Terminal Emulator from Google Play and you are good to go. If you have a fancy phone and a USB OTG-adapter, you can actually hook up a keyboard as well, and you now have a text-mode Linux computer with a tiny, tiny screen.
- mmastrac 14y agoAndroid doesn't run the GNU tools - it uses a pared-down set of "POSIX-like" tools that aren't GPL.
- macco 14y agoI totally agree. Android benefits form Linux, at the moment Linux is not really benefitting for Android - sadly enough. Anyhow Linux is not an Operating System; Ubuntu is; Android is - Linux is just a kernel