Episode: 1486 Title: HPR1486: Linux Luddites Episode 11 - Interview with Rob Landley Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr1486/hpr1486.mp3 Transcribed: 2025-10-18 04:07:18 --- This episode is released under the Creative Commons Attribution Non-Commercial 4.0 International License. Hi, this is Kevin Fallon, and as stated on the HPR Contribage, we will continue to promote new podcasts and other Creative Commons material, but due to lack of slots, we are only releasing material created exclusively for HPR. If there is a piece of Creative Commons content that you would like to promote, then feel free to record a regular show where you introduce the content and explain why it's important, providing links to where we can get more information. Today, I'm doing just that. As a member of the HPR community, I would like to bring to your attention the podcast Linux Lodites with the tagline, not all changes progress. Taking the name from Linux, the operating system kernel developed by Linux Torvalls, and Lodites from the 19th century English textile artisans who protested against newly developed labour-saving machinery. While I don't particularly agree with everything that they say, the discussions are always very interesting, and both of the hosts provide an ideal balance to get the discussion going. As an example, I'm submission Episode 11, which includes a fascinating interview with Rob Lendley, former maintainer of busybox, and covers among many other things, his experiences of GPL enforcement. If this podcast is not in your feed, I strongly suggest that you add it, and if you have other shows that are new to the scene, and new to the scene means not listed on Linuxlink.net, site hosted by Dan Washko, of the Linux link text show, then consider contacting us about it, and we'll submit it to the Linux link .net for you, but also consider submitting an episode that you think encompasses what the podcast is about here to hack our public radio. And now with a further ado, I'll pass you over to Episode 11 of Linux Lodites. Episode 11 for the 17th of March, 2014. Hello, and welcome to Linux Lodites, the show where we try all the latest free and art and source software, and then decide that we like the old stuff better. I'm Joe, and I'm Paddy, so what have you been up to since the last show, Joe? Well, I got my Nexus 5, which was very exciting, and as a result of that, I've been playing with various other operating systems on the Nexus 4, and the Nexus 5 is pretty good, I must say, it's pretty much a slightly better version of the Nexus 4, which was a great phone in the first place, and I got mine in the Bright Red, which really is Bright Red. For UK listeners, it's almost Dyna Rod Red, which is a drainage company, and their vans are really bright, sort of, orangey red. And it's pretty good. It's a little bit more stable than the Nexus 4 in terms of crashes and stuff. But then there's a few downsides as well. Next messages, for example, get sent to Hangouts by default. They kind of all combined your Hangouts and Texts, which I didn't like at all, so I had to install Handsent SMS, separate application, but that seems to work perfectly well. And there's not much to say about it really. Going from a Nexus 4 to a Nexus 5, it's not a huge difference at all. It's just a high resolution screen, slightly faster, and slightly smoother, really. So I'm glad I've got it, and I got it for a pretty good price. And the red one, was that because pink wasn't available? Yeah, yeah. Now, I thought, well, why not get it in red, black's boring, and I've got two cases for it, a black case and a clear case, both bought for a pound of eBay. So if I get fed up of the red, I could just put my black case on it, and then you wouldn't even know apart from the little earpiece speaker, which is Bright Red as well. What interestingly is what I've been able to do with the Nexus 4, and so I tried out Ubuntu touch, not very good, I'm afraid. And Firefox OS, albeit not the latest version, again, a little bit better, but not great. And I look forward to trying Sailfish OS when that comes out, and possibly we might go into more detail on those in a future show. What have you been up to then? Well, fun and games with my phone line and broadband, BT, who's a Telco in the UK, decided to chop us off while still fixing a neighbor's phone. So I was without for a couple of days, which isn't a really big deal, but it kind of makes you realise how much you rely on it. And sadly, where I live, the 3G coverage is so bad, I couldn't even do tethering on my phone, because my phone works on 3G out in the garden, which kind of makes life a little impractical. Right. I shouldn't rub it in that last night in Camden. I did a 4G speed test and got 28.8 down. That's megabits, and 17.39 up. That is kind of rubbing it in since I don't get that off my broadband business anyway. Yeah, that's only one I'm out and about to be fair, but yeah. Yeah, well, you live in a big smoke, don't you say? Exactly. Yeah. I guess the other thing I've been doing, which has been a little bit for Stracing, is we thought about doing a feature on a future show, about obviously XP's coming to end of life. So I thought it'd be interesting to have a look at some of the Linux distros that were from the same vintage. So I've been playing with Red Hat, Linux 7 and Mandrake and Debian version 2 called Potato, for anyone who doesn't remember. And although they obviously work fine in the VM, I really wanted to get them running on real hardware as well, so compare them with XP. And sadly, the oldest box I've got is a P4, which is a pretty crafty old box, but the thing about it is these distros all came out in 2001, the same as XP. And sadly, the graphics driver on the P4 wasn't available under Linux until 2004. So whilst I could get things running, they would only work under the standard VGA driver, and obviously everything looks absolutely shocking at 640x480 at 16, 16 colors. So I don't think it's a fair comparison to be honest. I think we're going to have to shelve that as an experiment for a little while. Right, because I was looking forward to bust it out my old ThinkPad, which is from at the late 90s, I think, which presumably would have been supported, because I know ThinkPads are generally well supported under Linux. So that would have been interesting. It's a shame. Maybe we'll, I'll have to dig out another graphics card for you that was supported. Yeah, I mean, it was nice looking at things apart from the screen, obviously. It just made me remember how good KD actually used to be, and it was a very lightweight and functional desktop at one stage of its life. But yeah, be good to revisit at some stage. Yeah. I also had some dealings with End of Life for XP. Someone I know running a small business, a small home office, had an ancient Dell laptop that was running XP, and obviously that's coming to End of Life very, very shortly. And so I explored various options. The first one obviously been some sort of Linux, but the conclusion that we came to in the end was they had to buy a new machine and had to install Windows 7 on it, which doesn't really look good for Linux, does it? And it really boils down to printing and scanning, which you can get to work. I mean, to be fair, it's the fault of the printer, it's a brother printer, and we could have maybe got a different one. But I must say in my experience of Linux generally printing and scanning, it's hit and miss. I mean, is that fair to say? I think that's fair to say driver support has always been an issue. Although for a lot of modern kit, I think the driver's support in Linux is actually better than in Windows certainly than in Windows 8 for some of the products out there. Oh, well Windows 8 was never even on the table. I had to actually search quite hard, not only to find, first of all, looked for a laptop that would have Windows 7 pre-installed, and you're looking at a premium of about 100 pounds of a similar spec to machine running Windows 8. So obviously the suppliers who've got old stock have cut them down to the fact that it's worth more with Windows 7. So then it was a case of, well, let's get something with Windows 8 and install Windows 7 on it. But driver support now is woeful. You go to the manufacturer's websites, and they just don't have any Windows 7 drivers. In the end, I found a Lenovo, quite a low-end Lenovo, that did have Windows 7 drivers, so that was all fine, and it seems to be running perfectly well. But yeah, it's just a shame, real missed opportunity there, and I think that I don't know who to blame for it, really, the fact that printing and scanning just, I tried to get it working briefly, and I just thought if I have any problems, then I can't leave someone in that situation where they're going to have potential problems, because with Windows 7, press print, it just prints instantly. You can, I've said it upside, presses one button on the scanner, and then it scans it in, opens up Thunderbird, ready to email off that scan, which is mostly what he does. So you just, I couldn't get that running. Well, okay, maybe I could get that running in Linux, but it's just too much of a headache, and I think that one of the advantages of Windows is that it doesn't really require constant support, does it? You kind of set them up with it, and anyone can support a Windows machine. Whereas with Linux, you need someone who knows what they're doing, and I'm not around all the time to help out with that, so I'm afraid that was a fail for Linux. Yeah, I think it partly comes down to market share of individual bits of Linux as well, doesn't it? I mean, you look at some of that Windows, as you say, anybody can pick it up and support it. In the Linux world, we've got so many competitive distros, and they all work slightly differently. It makes life even more difficult than you need to be. Yeah, yeah. Oh, well, on that frustrating note, let's move on to the news then. First up, then a critical crypto bug in GNU TLS leaves Linux open to man in the middle attacks, and there's been varying degrees of alarm on the internet this week about that. Some people saying, well, hardly anyone uses GNU TLS anyway, so it doesn't really matter. And then other people saying that it's such a critical bug that's been around for 10 years, nearly, and it's just unbelievable that it's been allowed to happen. Yeah, it was found by a Red Hat engineer doing a code audit. As you say, a lot of products out there don't actually use the GNU TLS, so Firefox and Chrome weren't effective, for instance. But my understanding is that other web-facing products like Cloresmail, FileZilla, Pigeon, they all were using it. I guess the interesting question about the whole thing is how a book like this couldn't exist for, as you say, nine or less 10 years without being noticed when one of the supposed benefits of open source software is the many eyes aspect. Wasn't it because it was in a critical part of it that doesn't really get developed, and so it didn't really get looked at because they kind of didn't think they needed to look at it? Yeah, that's my understanding as well, and also I think it's partly down to code complexity for these systems, and also expertise. I mean, you need specific domain expertise to understand what some of this stuff is doing. I think this book is slightly different, though, if you look at what it was, and I can stick a note on the show notes for this, it's a fairly basic fundamental C coding error, so not quite on the same level as the go-to fail that we had recently from Apple, but nonetheless, I would have thought somebody would have noticed. Because it is quite an esoteric area, isn't it? There's not many people can look at that code and really understand it. It can't understand the logic of what it's actually doing necessarily, but I would have thought anybody looking at it, and it's returning a Boolean value, but it isn't, would actually spot that, so I'm not convinced on that from particularly. Matthew Green, his well-known cryptographer, said that it was really a lack of decent testing tools to help contribute to this problem, and he said that, quote, clearly people need to run their TLS implementations through test harnesses and tools that may not exist yet, which is obviously going some. As I said a minute ago, it's also partly down to how people approach writing code, which is obviously something I'll bang on about on this show on a number of occasions. Melissa, earlier, from Veracode, said it's stressingly easy to accidentally write a book like this, because it doesn't cause anything to crash, and she said that full featured sea compilers can warn you about books like this, but false positive rate, that is instances where it can't possibly do any harm. It's high enough that most programmers are inclined to ignore them. Yeah, I read that, that's a bit alarming, isn't it, that they just get so many false positives that the actual positives just get lost in the fog of all that. It is a tad annoying, and as I've said, it's something I'll bang on about on the show on a number of occasions, so I won't do so again, but if people wrote code that actually stuck to standards and actually turned all the error messaging on, you really want to be finding no errors in your code whatsoever, and if you are getting errors, certainly if you're getting so many errors that you choose to ignore them, then that's a sign that you're not doing things right, in my opinion. Yeah, fair enough. Anyway, let's move on. Another security issue though, Valve has asked their users to disable Secure Linux in order to play Portal 2, and this is apparently because Portal 2 uses the Miles Sound System MP3 decoder, which uses a feature of the kernel, which is normally disabled by Secure Linux. Why don't they just use LAME and stuff, then? My understanding is they're actually using it for more than straight MP3 decoding. The actual issue we're talking about here is the fact that this particular MP3 decoder appears to allow right and execute in the same part of memory, which is something that all modern operating systems will prevent or do their best to prevent, because it obviously allows buffer overrun attacks. All right, so really they shouldn't be telling people to do this. They should be sorting it out and using a different decoder. Yeah, that would be a nice issue. Obviously, it follows fairly hot on the heels of disclosures from a month or so back. Valve were looking at you, DNS cash and tech cheaters, and I know they've obviously got a lot of goodwill in the Linux community, but I wonder if we sort of get a drip drip of these sort of stories about Valve, how long after last? Yeah, and people seem to be really singing their praises and are, wow, they're doing this Steam OS and helping out the Debian developers, given them free games. But let's not forget that they are a proprietary software company and therefore evil. Speaking of evil, no, no, speaking of other completely non-evil companies, Red Hat has introduced K-Patch for dynamic kernel patching then. That doesn't seem like a very good idea to me. Well, it's interesting. We've got Oracle's K-Splice and Sousa obviously got K-Graft already. I suspect I'll share your doubts on this because I mean, people say it's for critical bits of kit that you don't want to be taking off line, but in that case, wouldn't you have redundancy anyway? Wouldn't you have another box there so you could actually take a critical piece of kit off and still provide the service? My take on it is it's good to know what state your box is going to come back to life in and you're not going to know that until you do reboot. So after you've been running dynamic kernel patching for a year or two without rebooting your hardware, how are you going to know it's going to come back up in the state you expect? Exactly, because you potentially are going to compound bugs, aren't you? By doing a number of these dynamic kernel patches, so potentially you might have a small problem that then it's compounded and compounded and compounded, and if you don't reboot the box for a couple of years, which is not unlikely, then yeah, as you say, you potentially got a disastrous situation where if the power goes out or if for some other reason you need to reboot it, I don't really understand the need for it really. As you say, surely they've got redundancy, so yeah, a bit of a strange one. Okay, then moving on from the service space into mobiles, Garnor have come out with a report saying that worldwide tablet sales grew 68% last year, and Android is now capturing 62% of the market. Yeah, not a huge surprise, really, is it? I mean, as usual, Apple comes first to the market arguably, and then Android comes along and does it better and cheaper, and people break the spell of Apple and realise that hang on a second, I'm paying all this money for an iPad when I could buy an X7 or an X10 or whatever Samsung tablet for less money, and it's going to do more for me. So I'm really not surprised about this, really. No, I know a lot of Apple fans out there were forever saying that they would never lose the crown, but I think it was fairly obvious that once the Android tablets got good enough, and let's be honest, they weren't for a few years, they were pretty, they lost some very shotty products out there, but they're good enough now that it was going to go this way. Garnor also said that it's largely down to emerging markets where with growth of 145% last year, while in markets like ours, they only grew by about 30%. Because you've got those really, really cheap Android tablets, a friend of mine bought one for 15 quid or feeble or something, and it's 400 by 600 resolution or something, and single core, and really a bit rubbish, but I know that in the developing markets, they are quite popular those low-end tablets, because it's at least a cheap way to get online. But potentially Firefox is a better RS for these developing markets. It is, yeah, potentially. I mean, the seven billion people in the world, and out of that there's about a billion smartphones currently in use, and about three and a half billion feature phones. So, I mean, obviously there's a lot of room for marketplace growth there for new entrants, and the story we're going to link to in the show notes was from a guy who's arguing that cost is a huge factor in people's decisions, particularly within developing world. Yeah, I mean, it's a big decision in my life. I'm not going to spend hundreds and hundreds of pounds on a smartphone, whereas a relatively cheap one for me, 240 pounds for a Nexus 5, and if you sort of extrapolate that to the developing markets, if you really can get a $25 phone, obviously that's a lot of money in developing countries, but at the same time, it is an achievable goal for people, and because Firefox, as we mentioned, GlassShow is aimed at this low-end hardware, it sort of makes more sense than Android, really. It doesn't mean hardware costs always drop down there. If you think about PC development, your hardware got better and better for the same amount of money over the years, I think with Android we're seeing the same thing that we also saw in desktop systems where the hardware races on, but the software, the needs of the software stack actually exceed that, and people are always writing code that's more and more bloated and resource hungry, so it's very hard for the hardware to keep up. Yeah. And the other point the guy makes in the article is that potentially it's easier to do development for Firefox with it being more web-oriented, and obviously the possibility there is that folks in developing markets or wherever can actually develop applications themselves, rather than relying on some of the bigger companies out in Silicon Valley to provide all the stuff for them, which I think is a perfectly reasonable point as well. Yeah, yeah. But of course, even getting online in some of the developing world can be difficult, which brings us onto the next story, and Facebook potentially buying a company called Titan, and this company has prototypes of drones that can fly for up to five years and provide internet access from the sky. That's right. I mean, they haven't produced any commercial products yet, only technology demonstration, but as you say, the battery life they're claiming for these drones is five years or so. I mean, it obviously follows Google's balloon idea to pop up some high altitude UAVs to provide net connectivity, and they're initially planning, this is Facebook, to possibly roll out 11,000 of these drones over Africa with further deployment possible in the rest of the world. But surely the elephant in the room there is it's all well and good to have these drones flying above the places where you want to have internet, but how do you get the internet to the drones in the first place? Yeah, I know, obviously, you're going to have to build a whole bunch of base stations, I guess, effectively rolling out like a mobile network. Yeah. It seems a bit flawed to me, but then again, I sit here with my 120 megabit down, so I'm sure that people would be grateful for even dial-up speeds in rural Africa and Asia and stuff, so yeah, maybe it's a good idea, but clearly Facebook is doing this because they've run out of users in the developed world. Pretty much everyone with an internet connection has got a Facebook account, so they realize that to continue to grow, they're going to need to first give internet to people and then give them a Facebook account. But anyway, moving on then, to quite a speculative story, asking the question, are there enough users of Linux Mint Debian addition for it to survive? And this is all based on just a little quote by Klem, who said that they're struggling to find the developer resources to really devote to it, but I don't think that means it's necessarily going to die. I think that it's much more likely that it'll just be neglected and in the state that it is now, which is a bit ropey to be honest. Yeah, he says that it holds strategic interests for them and keeps getting better, but I think the key quote from him is where he says, it does need more adoption and we do spend too much resources on it already with the current level of adoption, which is kind of giving out fairly heavy handed hints that unless more people start using it, it is going to get neglected, as you just say. And I think we've spoken about it on the show before that we simply don't understand why this is, because it seems such a sensible choice as a base distro for Mint as opposed to Ubuntu. Yeah, but that said, it's kind of like having two kids and one of them's really bright and good at school and the other ones a bit thick. You know, you're going to spend all your love and attention on the one that's doing well already. I mean, obviously I'm being flip in there, but why bother spending all of the effort required to make LMDE better when the main addition is so good at the moment. I mean, obviously strategically moving away from Ubuntu and all that, but I can see why the temptation to make the put all the effort into the main addition because it's working really well. It's used by loads and loads of people and it just comes down to time, doesn't it? I suppose it's case of this vicious circle where if people don't use it, they're not going to develop it heavily and if they don't develop it heavily, people aren't going to use it because it doesn't work very well. I think it is going to hang around and I really hope that my prediction comes true that they will ultimately make it work properly, but I think that it's a back burner for them and they have to they are doing just enough work to keep it ticking over but not to really concentrate on it and it's kind of their emergency plan, isn't it? If Ubuntu completely does something that they don't agree with or dies or whatever if canonical finally goes bust, then they'll have to quickly change to it and I think that that's probably what he means by that strategic interest. Yeah, I guess that's right and I also think perhaps one of the issues with basing on Debian as opposed to Ubuntu is the support cycle and which can be relatively short in enterprise terms from Debian. Yeah, whereas obviously the LTS which is coming up next, the Ubuntu LTS is going to be supported for five years I think. So even that isn't really that long in the enterprise if you think about XP going back to that and obviously Red Hat gets supported for an awfully long time and if you are setting up a business or thinking about migrating to Linux, five years isn't a very long at all in the enterprise world, is it? It's not. It's interesting another story came up in the last week as well about the possibility of longer support for Debian. Yeah, it's still very intensive at the moment. I'll stick a link in the show notes. They say it's yet to be firmed up and whether they've actually got the resources to provide that support. I don't know, but it'd be really good to see Debian gain longer support and possibly broader adoption in the enterprise. Yeah, moving on then to a story that hopefully won't affect any of us, but I think just tells us a little bit about how open source software can have issues sometimes in the way it's developed and that's the exorg foundation has lost its charitable status on the basis that they failed to file their tax returns on time for the last few years. Yeah, now as a small business owner myself, I know how much of a pain it can be to deal with taxes and all that stuff and they don't want to be dealing with that do they want to be writing code and testing it and bug fixing and all the rest of it, they know one likes doing their taxes and I can see how it would get forgotten about, but then again, I suppose it's something that you have to do, isn't it? Yeah, but if you're any sort of organisation that's taking donations from the public then obviously you've got to have a sense of accounting practices and good oversight by the board and from the looks of things, that's where it's fallen down for exorg in the last few years. Yeah, it's not really going to affect them, is it? They're just going to join the Apache Foundation or something, so I can't see it really affecting much. I don't think it probably will, but perhaps just act as a case that will remind people that when they set up these sort of organisations, it's not all about writing code, as you say, and they do have to think about some of the boring stuff as well. Yeah, yeah. Onto the exciting news then, that the Linux Foundation are offering introduction to Linux a course worth $2,400 for free. I can hear a small amount of cynicism in your voice that show. No, it's a good thing, they've partnered with edX, which is a non-profit learning platform from Harvard and MIT, and they'll be offering this course by a massive open online course system. I guess it's just a taste to actually get you to buy other courses from them going forwards if we're being cynical about it. Yeah, but for folks who are interested in Linux, if you're being offered something that's beautifully worth two and a half grand, certainly worth investigating. Yeah, what's really interesting is in the official announcement, it says, upon completion of this training, you should have a good working knowledge of Linux from both a graphical and command line perspective, allowing you to easily navigate through any of the three major Linux distributions. So, the question there is, what do they consider the three major Linux distributions? Presumably Red Hat, Sousa, and Ubuntu, or Debian? What? Taylor Swift? Yeah, maybe. What's that one, Rebecca Black OS, maybe? Now, isn't that the Wayland distro, though? I don't really remember the Linux Foundation being particularly forward looking in the past. Yeah, true. It's probably just Gen 2, then. You said it not me. Okay, moving on and swiftly, Google are replacing GTK 2 with Aura in Chrome 35, and it's available for download now. And this is their own in-house toolkit, which actually does a lot more than GTK 2, then. Yeah, it's got a built-in compositing system as well, and it's cross-platform, it runs in Windows, Chromium, Linux, doesn't run on OS 10, unfortunately. I've got a crying shame. Apparently, it should address long-standing issues with GPU memory consumption and rendering as well. Well, as Firefox seems to get worse and worse in my experience, I get more and more tempted to move to Chromium. So, I don't know, just something about it that I don't like, though. So maybe this will sort that out. Yeah, as I say, they're asking for people to help testing it, and there's a little link in the show notes. You have to install the unstable branch, but initial reports are, it's down-site faster than GTK. All right. Speaking of building things in-house, then, and it's looking like MIR is not going to be the default in Ubuntu until at least this 16.04 LTS, which is not a huge surprise to me. You're going to tell me about this one, because I haven't been following the story. They wanted to put MIR in 1310, but although MIR was ready, XMIR wasn't, and it's all well and good to have MIR working and the Ubuntu apps, as they like to call it, working, but to have anything else working, you're going to need XMIR. That's compatibility layer. Yeah, the X11 compatibility layer. They just don't seem to be able to make that work properly, certainly with multiple monitors. So they had wanted to put it in 1310, so that then it could go into the 14.04 LTS, and they failed to do that. So now, during the UDS, Ubuntu developer summit, which is now using Hangouts, because it's kind of a bit of a sort of Tesco value version. Shotworth, more or less, said that it's not going to be until 16.04, so they're going to end up being literally years behind their original plan, which I don't know, you're kind of, I'm starting to feel a bit sorry for old Shotworth, with his lovely beard. It just seems that everything he wants to do, he's like really ambitious with everything, and then it just doesn't really work out for him, like with the phone thing, and it really wanted to have this mere display server running on the phones and on the desktop, and he wanted to have hundreds of millions of users, and it's kind of reaching for the stars, and it's not really happening, is it? And yeah, I do feel a bit sorry for him. I must admit, I'm starting to get that away as a little bit as well, as you say, that full of ambition, and they're taking no end to stick, including from us over the years. But on the whole, what they're trying to do seems to be for the best intentions, and lack of resources, largely, appears to be the issue for them. It just seems like it's mismanagement to me. I mean, why are why when the other new mobile OSs are using Wayland, and all the other Linux desktops are going to be moving to Wayland? Why didn't they just do that? I mean, why do they have to do their own thing? Why did they have to make Unity? I mean, with this XP situation, there obviously are people who are migrating to Linux. Obviously, most of them are going to Windows 7 or 8, but there are people who I have migrated to Linux, but there is no way. I wouldn't dream of giving them a bunto because Unity is so different and just not very good. Yeah, but you wouldn't dream of giving them Nome 3 either, would you? Well, no, I wouldn't, but we cut those guys a lot of slack because it's Nome, as opposed to a bunto. Yeah, I wouldn't say forora, for example, the main edition, or even Debian with Nome 3, but I just don't understand why the... I mean, it boils down to shot worth. It's not they, it's him, it's he who is making these decisions, and steering the ship, and he's made it clear that he is the dictator, and just at the same time, I feel sorry for him, but I also kind of feel that he gets what he deserves. Well, later in the show, we'll be hearing from someone who has some nice words to say about benevolent dictators, but for now, should we move on to the feedback? Yeah, go on then. First off, then, a shout out to Dale Visser, who mentioned us in an email he wrote to Linux Outlaws, and obviously thanks to Dan Affab before reading that part out. Good work, Dale. Yeah, and also a massive thank you to Andrew Gregory of Linux Voice for putting us in the fines of the fortnight, is it, or discoveries of whatever, and yeah, we seem to be getting quite a few people coming from that, so thanks a lot, Andrew and Linux Voice guys. Dogbot0360 asked on the website if we'd have a look at antics, which is a Debian testing base distro, so yeah, it sounds like quite easy to look at, so perhaps we might have a look at that at some stage. Yeah. Also on the website, Brian36 was dubious about the practicalities of running Android X86 as an alternative desktop. He also nicely dated himself back to Paddy's era by talking about eight bit computers with eight inch floppies and greenscreens. Now, even I remember them, so just about, and yeah, we got lots of email feedback as well. We did, and the first one was from Glenn Skyner. I hope that's hoping to announce it, Glenn, who's a long time mincast listener and founders via that show, and he said, I've been listening to your shows back to back to catch up, and I picked up on the fact that I was talking about Mark Downeditors. Glenn said that he would like to suggest that we try out retext. His only gripe with it so far is the live pain, does not mirror the line, the curses on. I'll put a link in the show notes to retext. I didn't install it and have a play with it for a little while, and like Glenn I found to be really quite useful. It doesn't depend on Python and Qt, but like him, the big issue is the fact that it doesn't say in sync across the two pains. In a separate mail, Glenn pointed us towards the Linux Barbecue website, which offers a huge variety of spins based on Debian Unstable. I've not had a chance to download and play with any of the ISOs yet, but I will get around to it, Glenn. Dave Rottoff, to say just a quick email to say many, many thanks for indirectly recommending simplest Linux. I gave it a while after your Linux Wheel of Fortune section on the show. I've been ultra impressed with the distro. It's lean, fast, and was just what I was looking for as I've been wanting to move away from Ubuntu for various reasons for a while now. That's the beard factor, isn't it? Yeah, yeah. The dev team are very helpful, and I have to say I've had almost no problems with it so far. The ones that I've had have all been caused by my less than elegant attempts at customization, but hey, if you don't break stuff, where's the fun? In all seriousness, it's made my move to Debian a real pleasure. The simplest guys deserve some real acknowledgement. It's a small team, but they put a lot of love into it, and yeah, we'd like to pass on praise where it's due, and we'd like the simplest didn't we, or was it, may you look to it, and yeah, it seemed to be pretty good distro. Yeah, big thumbs up for the simplest guys. They've also said, maybe me, but I can't see your IRC channel details on your website. We'd be good to add it as there are a ton of die-hard IRC's out there. Now, we talked about this last show, I think. We haven't got an IRC channel, and we don't suppose there's enough interest, but if people would be interested, then let us know, and maybe we can get something set up, but to be honest, the comments on the website is probably sufficient, but yeah, as I say, if you're interested, let us know, and we'll see about sorting it out. Friend of the show, Jack Donahauer, recently bought the Galaxy Note 10 as his first tablet, and it's kind of hard for those of us who live with devices for a while to remember what the initial user experience was like, so we asked him for his thoughts, and amongst other things, Jack said that being a guy, I started out by turning the thing on and filling in the various screens that popped up, I had Wi-Fi, email, and a Samsung account, almost instantly, then I thought, I should read what's in the manual, that was really helpful, not. Maybe it's because I was already fairly tech literate that had no problem getting the basics done. I next started experimenting with the stylus, it would have been nice to have a manual of sorts to help learn the various ins and outs of using the things, but I'm little through. So Jack's overall view was that the note is actually a nice piece of kit, and pretty usable as the box without any previous experience whatsoever. I've got very fond memories as I email Jack back of using a Palm 5 with the stylus for many, many years, it was a constant companion for me. Have you had any experience with devices with stylus as Joe? Well, I played briefly for a day or so with a Note 2, which is the Fablet phone tablet thing, and that had a stylus, but I used it for about two seconds and realized that it was just rubbish and pointless. I think it boils down to a capacitive versus resistive touch screen, doesn't it? A resistive touch screen works much better with a stylus, whereas a capacitive touch screen, which is pretty much all modern smartphones and tablets, they're designed to work with a finger rather than a precise stylus. So I don't really understand why Samsung are using stylus, it just doesn't make any sense. I suppose it's trying to be their gimmick or whatever, but I mean, come on, it's not 1998 guys. Joe's brought to us about Firefox OS. He says, in regards to Mozilla wanting to allow updates to Firefox OS of Wi-Fi, this has very little to do with any problems associated with Android, and everything to do with problems associated with Firefox OS as it currently exists. The current process for updating the software is either to compile it entire OS from scratch, or to hope, slash wait slash pray, for the device manufacturer to release an update. Since the browser is tied to the OS more tightly than iE is tied to windows, the only way to get security updates for the browser is to upgrade the entire OS. As someone who's been using the terribly misnamed ZTE Open since October, I'm definitely looking forward to purchasing something more user slash owner slash developer friendly. So I replied to him and asked him what his experiences are like, and he was not impressed. He basically can't wait to get rid of the thing, which is not very good really. I had a lot of hope in Firefox OS, and it seems to be fading fast. Yeah, I'm looking forward to hearing your experiences when you do have time to play with it properly on the on the Nexus 4. I guess partly it is down to expectations, isn't it perhaps. Saying on the Firefox theme, Ray Woods wrote in with a tale of woe to do with trying to move Firefox accounts between machines. He had a bit of back and forth with him, didn't he, Joe? Yeah, and he really scared me at first, because the way he made it sound was that you couldn't just copy the configuration folders over anymore, and you had to do it through syncing. But I'm pleased to report that at least in Windows where I tried it, it works perfectly fine to do that. I think the problem stemmed from two sources, one that he was trying to sync different versions of Firefox, and they've changed some of the file formats and stuff, and also that he was trying to sync it to the mobile version as well, which I'm not particularly bothered about. I do have Firefox installed for certain things, but it's just not really as good as the built in browser really, or certainly not as good as Dolphin on Android. So yeah, I think that that was the cause of that. It was trying to do a combination of the cloud-based syncing and copying folders over and different versions, so yeah, he had a bit of a disaster there by the sounds of things, but it seems that if you do stick to the same versions, then on the same platform, then it should be quite straightforward. Okay, that's good. Chris Leffelman said some nice things, and then asked, could you possibly point me in the direction of a good book or guide that might help me and my efforts to learn how to run a server? And he also said, is there a direct way to contribute financially to our podcast, which is very nice of him? Well, thank you very much, Chris, for being our first PayPal Donator, because we've now got a PayPal Donate, button on the website, and we're very, very appreciative of any donations we get. Obviously, we've got the flatter button as well. We don't want to bang on about it too much, but they're there, if you want to help us out, help pay the bills and everything, then it's really, really appreciated. Yeah, thank you very much indeed, Chris. On the topic of the SysAdmin book, I can't really offer any advice personally, because most of the things I've got are very domain-specific, I mean, there are particular products or particular operating systems. I don't know, Joe, have you got any particularly good books on SysAdmin as a wide topic? Or is this something we should be throwing out to the listeners? I thought out to the listeners, I'm afraid. I don't know anything about being a SysAdmin. I can barely run on a patchy server, so no, don't ask me. Okay, well, if anyone's got any bright ideas on a general purpose, I guess, book on running a server, then please get in touch. Leave your feedback in the comments on the website. A couple of people had comments about our coverage of mobile technologies. First up was Brendan Perine, I think that's how you say it. I've listened to all 10 episodes. I'm a younger listener at 22 from California, as you think most of users are old. I would prefer more interesting things about OpenBox, XFCE, LXDE and other things, and less on Android phones. I don't get why I should care about things that are hard to update like Android. I want more about old computers as I run and help out with Ubuntu myself. I do think Ubuntu makes a good base. I don't have a smartphone, so I wish I had something more relevant to me. I really like this show. Well, thanks for your kind words, Brendan, and it is very difficult to judge what we should be speaking about. I mean, I'm more interested in the mobile stuff, to be honest, and that seems to be the way things are going more on that later. It's tricky. We try and cover a bit of everything, and it just happened that because mobile world congress was on, when we did the last show, there was just a lot of news about it, and it happened to coincide with us looking at Android, but we'll try and keep it as very disposable, anyway. Yes, we'll continue to try and provide coverage of Linux wherever we find it with. It's the desktop server or mobile space, and the latter seems to be increasingly important, as Jonathan Grohl, who also wrote to us, points out. And Jonathan said, I think you guys make my new favourite show. I started to listen to the Luddites after reading a tweet from Fab. Quite odd too, since I started listening to Linux outlaws themselves after being pointed to them by John O'Bacon when Bug Radio was terminated, so the Linux podcast chain continues. What I'd be most interested in hearing about is Joe's forthcoming experiments with Ubuntu Touch Phone on his Nexus 4, and perhaps his thoughts on Linux Under Android. Recently, I tried out Ubuntu Phone Touch on my Galaxy Nexus, which happens to be no longer one supported model, so perhaps not a true reflection of the experience on a supported model. It was really wonderful having the full sourcey command line in my pocket. For a week whilst another box was in for repair, I actually used my phone as a portable Tomcat server at work. Yeah, so far not so good, really, with either of those things, Jonathan, Ubuntu Touch on the Nexus 4 is all right, but not really that good. I didn't get into command line stuff, I didn't even think of that really, that it is essentially Ubuntu, or at least trying to be Ubuntu, so I will look at it again, I think, and hopefully try out some of that stuff on it. I have tried Linux Under Android as well, and it worked okay, but then ultimately it's just a bit of a pain to actually do anything with it because it's not designed for touch screen, certainly not a small touch screen, and so text entry is really difficult and navigating with instead of using a mouse using touch screen, so it seems to me more of a curiosity than something that's actually for everyday use. Well, Jonathan actually carried on in his email, telling us a little bit more about this, and he said since Android is currently a more realistic and stable experience, I was wondering about our thoughts on Linux and Android, by which he means the various ways you can store the distribution into a loopback device on a rooted phone. He says that he recently taken to using Spenola's Debian kit, which allows you to install Debian or Ubuntu in such a manner without the drawbacks using a charute. Unfortunately, when compared to Ubuntu phone touch, the command line experience is still in theory, on VFAP partitions, the loopback device is limited by the 2GB file limit, and you still don't have full control of, say, for example, the Wi-Fi interface. Additionally, starting demons automatically is difficult as there isn't a normal service starting framework, an environment needs to be manually mounted or unmounted, and he's not even sure if the latter is possible at all. Still, I can't imagine not being able to have access to a command line on my phone anymore, and I'll provide a link in the show next to Spenola's Debian kit that Jonathan was talking about. Jonathan also remarked on the story we spoke about last show, and he said, finally, the mystery of Chromebook sales versus browser hits for ChromeOS should be no mystery to us Luddites. All of those Chromebooks surely running real Linux instead. Yeah, I can't believe we didn't think of that. It seems a bit obvious in retrospect, but then again, is it because it's not that easy to get Linux running on a Chromebook? I mean, yeah, it's not difficult, but it is slightly harder than installing Linux on a normal laptop, and the kind of personally would buy a Chromebook surely isn't going to install the different Linux on it, are they? Unless they're only buying it for the reason that I've thought about buying one, because it's damn cheap hardware for what you get. Yeah, maybe, maybe. Well, it's certainly a good question, and interesting to see if we could find out a little bit more about that. Well, actually thinking about it, my mother-in-law has got one, and used ChromeOS for a while, but then decided it was too limited and got her son to install Ubuntu on it, I think. So maybe, yeah, maybe it is as simple as that. In a change to our usual programming, we're now going to play an interview that we conducted with Rob Landley, the one time maintainer of busybox about his toybox project. Respect to Rob last week, and along the way we talked about the origins of Open Source software and the FSF, Rob's experiences of GPL enforcement, the rise of public domain software, why GUI Linux projects benefit from being run by dictator, which is obviously good news for Ubuntu, and how he sees Android as the £900 guerrilla in a mobile marketplace that looks set to disrupt how we all interact with the computers. Yeah, it's quite long and quite detailed, and he is a very good talker, isn't he? He is, and he's obviously having been around the industry for quite a long time, involved in quite a lot of interesting projects and knows a lot of people. I thought it was a really interesting conversation covering a lot of ground, and there should be plenty in there that will be of interest to the listeners of this show, including some fairly controversial stuff. Yeah, yeah, so here we go then. In the past, we've talked on this show about the potentially disruptive effect of mobile computing, but for many of us, the device and our pocket remains just a glorified phone and still seems a long way off from replacing a desktop computer as our primary device. I'm really pleased that today we're joined by Rob Landley, whose toy box project may well be one of the missing pieces needed to bring that transition closer to reality. Good to have you with us here Rob. Thanks, good to be here. What's your familiar face to many in the free and open source software world? Could you give us a quick thumbnail sketch of how you first came to Linux and also briefly tell us about some of the projects that you've been involved with? I've been doing computers since I was noticeably shorter. I bounced off a Commodore 64 and an Amiga and DOS would desk you and OS 2 and came to Linux as part of the horde of Java developers who were the anything but Microsoft crowd united behind Java and then when Netscape released its source code, everybody went over to Linux because Netscape said, hey, look at this thing, it inspired us to do this. But along the way, I kept breaking everything. I tend to find weird little use cases and weird little bugs and I wound up in embedded Linux development just because I kept drilling down into, well, what is libc actually doing here? You know, first, what is libc? Yeah. And you know, I learned to trace into system calls and stuff. I got into kernel development because I broke it. So I wondered off on a tangent there again. So what was the direction of the question? I just wanted to further benefit of the listeners if you could give us some idea of some of the projects you've been involved with? Well, the biggest one was I maintained busy box for a few years because when I started, I started by stripping down red hat systems to make routers and stuff before Linksys came out with their own. Right. And you get to the point where there's only so much you can remove before you start going to an empty directory and adding files and trying to make a working system. And there was some there was some good documentation on that on how to put together like a boot floppy by copying binaries one at a time and run LDD on this thing to see what libraries it needs and copy the libraries and run LDD on those libraries. And you know, you can run it under S trace to see what kind of files and directories it's trying to access and then add those files and directories. And the next logical step was I want to build a system from source code. Well, when I first asked about this at Atlanta Linux Fest in 1999, nobody really knew how to do this. I mean, a bunch of people had done it, but they couldn't point me at, you know, well, here's someone who's put together an entire system in the past five years. And then when I got back from that, I was asking how do I put together a system with tweezers on a desk from source code. When I got back from that, they I got email about this new thing that was starting up Linux from scratch. And I went yay rock cool. And it went on the to-do list and I didn't really do anything with it for over a year. And when I finally got around to building, I think it was Linux from scratch 3.0 release, the resulting system was like a hundred megs. And I went, I've made floppies way smaller than that even after I strip all the binaries. There's still a lot of unnecessary stuff here. So I started trying to replace some of the larger components with a package called busy box that had been on a thing called Tom's root boot that I bumped into a while ago that did especially formatted took a 1.44 floppy and made it 1.7 megabytes with special formatting. And then put a complete Linux system on that, which was a marvelous recovery tool back when CD burners were hard to come by. Yeah. And that was my first introduction to both busy box and UC libc well before their 1.0 releases. And I went, okay, I would like to make a Linux from scratch system replacing all the GNU tools with busy box and replacing G libc with UC libc. And I'd like to get it to rebuild itself under itself from source code because if it can't do that, I haven't made a real working system yet. And when I tried to do this, um, busy box fell apart. It was missing stuff and the stuff that was there, it would segfold, it would hang, it would give the wrong answers. It was missing command line options. It just wasn't ready. So I started upgrading busy box. And over the next year or so, I did so much work upgrading busy box that when the maintainer of busy box, who was also the maintainer of UC libc, Eric Anderson, he had a new project called build route, fork off accidentally. It started life as a test harness for busy box and UC libc and turned into an embedded cross compiling distribution. When that was taking up all this time and busy box hit 1.0, and he went, okay, I can stop working on it now. I was the one pestery. I'm going, no, no, let's put out a 1.01 release because I've got this stack of bug fixes. We have enough stuff in in a subversion, I think it was actually CVS back then, that we should put out a 1.1 release. When it was time to cut a new development release, he basically went, you know, you want to be the maintainer, go be the maintainer. So I did that for a while, very time consuming. Yeah, can imagine it would be. So can you tell us a bit about toy box then and why you moved on to it and what was the problem that you were looking to solve when you started that? Well, the reason I've been doing all the work on busy box was a project that has unfortunately been renamed a few times over the years. It started as a yellow box for .com startup that went away when the .com boom did. And then it was renamed firmware Linux, which is a name that it is utterly impossible to Google for. And then I renamed it Aboriginal Linux, app originating from the beginning. And basically I was trying to do the same, get a system that doesn't have any GNU packages in it, but only has busy box UC libc. Okay, I needed the GNU stuff for a tool chain, although I was looking at replacing the tool chain with tiny cc. And I forked that and maintained it forked for a while because I needed to put a lot of work into that. There was a thing called TCC boot where tiny cc was actually the second compiler after GCC to ever build a bootable Linux kernel. The third was Intel's ICC and these days LLVM could do it. It's spread out a bit since then, but that was the first one. I went, oh, it's like busy box except it's a compiler. That's really cool. But I left busy box development after a run-in with the original founder of busy box had not set foot on the mailing list in its entire, he'd abandoned the project a couple of years before Eric Anderson picked this abandoned thing up and went, hey, I want to use this for embedded stuff rather than just for Debian's boot disk. And when the old maintainer came back when GPLV3 happened and said this project must definitely switch to GPLV3 and become incompatible with the Linux kernel even though we've been having several months of discussion of, hey, we've accidentally sucked Linux kernel source code into busy box and code from Linux kernel developers who licensed it GPLV2 only, not GPLV2 or later. And it turns out that GPLV2 only and GPLV3 are not actually compatible licenses. And I actually have to care about this as the project's maintainer. So should we remove the GPLV2 only code which involved a lot of triage to track down what it was and go back to GPLV2 or later, or should we just acknowledge that we've lost the order later and the project is now GPLV2 only. And we talked about it for months. We came to a decision that, okay, we're going to go GPLV2 only so that we're the same license as the Linux kernel. And then the original project maintainer went, no, no, no, no, you must do whatever Richard Stallman tells you to do even though this project is replacing a lot of GNU stuff and doesn't use any GNU code. And there was a lot of flames there and I basically locked the project's license down to GPLV2 only. I actually consulted with lawyers about this. And after the fight, it had just taken all the fun out of it. So I handed it off to someone who would still play with it. But I had a lot of leftover ideas that, you know, have finished commands that I hadn't actually submitted to busybox yet, for example. So I just started putting them in a little corner thing and it's like, well, I'll do my own that implements some of the commands. Because one of the nice things about busybox was always the way you could tell it to add certain commands or not add certain commands meant you could have multiple instances of busybox on the system. Like this instance has the SUID bit and handles all the commands that require the SUID bit. And this other instance of busybox doesn't. So you could have the similings, you know, pointing, the similings for these commands, pointing to that binary, the similings for these commands, pointing to that binary over there. And you didn't have to worry about it dropping permissions properly. You know, that was one example. And I'm going, well, I can add another thing off to the side that'll do more. And I did that for a couple of years and sort of rolled to a stop, you know, because I didn't really, I had put several years of my own work into busybox. I was proud of it. I'd handed it off to the best maintainer I could find. It had a team of approximately a dozen full-time developers at the time and a 10-year head start. And it's like, well, I'm not going to replace it without putting in a lot more work than I really care to. It's like, it's already filling its niche quite well. I don't hugely want to compete with it. So I actually chipped off a couple of the better toybox commands and pushed them back upstream to busybox. I gave them the toybox patch command, for example. You mentioned the licensing issues that you had with busybox. Now, GPL incompatibilities are obviously still with us. And I guess they're Android, but we'll add additional licensing problems into the mix. The license issue, GPL V2 versus GPL V3, didn't go away. And there was also the fact that Android had a policy of no GPL in user space, which meant that they had some grandfathered GPL packages that they were slowly replacing. And the kernel itself was GPL V2. But the rest of Android user space was BSD licensed or Apache licensed. And their trademark licensing guidelines actually say that if you add a GPL package to Android user space, you can't call the result Android. You can't use the Android trademark to describe the result. It's a violation of the Android trademark licensing guidelines. So all the companies like Samsung and Sony and everybody don't add GPL packages to user space and Android. I think a lot of them are happy for an excuse not to. But there was also a larger problem. I spent 2010 sort of wandered away from a lot of open source development because I found it depressing that the Linux kernel and Samba implement two ends of the same protocol, but can't share code because one is GPL V2 only, one is GPL V3 or later. And those are incompatible licenses. There's no such thing as the GPL anymore. I mean, the GPL was a terminal node in a directed graph of license convertibility. It was a universal receiver. It was the license if you were doing copy left that everything became if you let it. So all you had to do was learn the terms of GPL V2, which were complicated, but we had a couple of decades of actually asking lawyers and reading help pages about it and stuff to get comfortable with the terms of this one license that's all we had to know. And then the only decision we had to make is is this GPL V2 or not. If it is, I understand that. If it's not, then if it's some acts as public domain license, then I don't have to care about licensing at all. And if it's some other weird dog ball license, I just ignore that package completely because they're weird and I'm not a lawyer. Well, with GPL V2 and GPL V3, even before GPL V3 came out, I got bitten by people are sending me quote, GPL code that doesn't match the license of my project. It's GPL, but it's not what we're using. You know, because we needed the or later they were sending me GPL V2 and it's like, okay, I can distribute it, but it changes the license terms of my project in a way that, okay, I had to care about it because on busy box, I had inherited a thing called the Hall of Shame from Eric Anderson, the previous maintainer, where people would report, oh, they're sending us, they're shipping busy box binaries without source code. It's in violation of the GPL and there's nothing we can do about it. So he put up a page listing them all and his father was actually a lawyer, so his father would send out cease and desist letters, but if they ignored the cease and desist letter, he didn't have anything else he could really do about it. Well, I went, this is not, this is not sustainable. I, you know, just continuing this Hall of Shame page doesn't help. So I, I emailed Pamela Jones of Groclaw and when, is there any pro bono legal representation I can get to actually, you know, do license enforcement lawsuits and she hooked me up with the Software Freedom Law Center, which had just started out. It was Evan Moglin, one of the co-authors of the original GPL, well, GPL V2 and he was involved in GPL V3 as well. He teaches at NYU, I think it is. He teaches at University in New York City and as a project he ran to get his graduate students, his legal students, real world experience with open source licensing, he set up the Software Freedom Law Center and got some grant money. And I went, well, here's some cases that they could actually pursue and they put it together and spent a year suing a dozen companies to get their source code. Well, there were two problems with this. One, when we got the source code drops from these companies and a lot of it was, you know, well, we never got the source code from our upstream board support package vendor. You have to go talk to them. They're in Taiwan, they don't speak English and it's not in the same legal jurisdiction. So how do you deal with that? Do you like punish this company and still not get source? I mean, you can get money out of them, but you can't get source code out of them if they don't have it. That's a fun thing. But when we did get the source code drops after a year of these, not one line of code had been added to the busy box repository because of this, because none of them had anything we wanted. Yeah, so it's just wasted effort on your part chasing all that down. Completely. And the other thing was that we created this self-financing legal machine that would get more than $10,000 from each company it sued. I mean, the amount varied all over the place, depending on who it was, but it was, you know, five figures for a small quick settlement. And would use that money to launch a suit against the next one. Once the ball was rolling, it perpetuated itself. And even though Evan Moglin, after a year or two of running the SFLs, see, basically went, okay, it's not really doing what I want it to do. And he went, he sort of mothballed and went back to teaching for a while. Some of the other people involved went, no, I'm going to follow the revenue stream and and forked off the software freedom conservancy and continued to file lawsuits. Well, sometime in 2008, I don't know if that was before the split or not, because I, I stopped being involved. But the free software foundation, which part of what Evan was doing, starting the SFLC was distancing himself from the FSF. The FSF signed up as a client of the SFLC to go sue Cisco over the original Linksys toolchains that Eric Anderson and some other people had settled out of court with them five years earlier to get their source code that had actually started the OpenWRT project. That source code was useful. And you know, that had sort of been what I've been looking back at as well if they got a lot of good source code. Maybe these other companies have a lot of good source code. After it experimentally proved that they didn't have a lot of good source code, the FSF went back for a second bite at a previous Apple and caused Cisco to shut down Linux, it's in house Linux development and outsource it back to Taiwan. And it's like, okay, that was actively counterproductive. And just, it was it was a large mess that, you know, I'd sort of yodeled and started an avalanche and then had no control over the resulting fallout. Yeah. And looking at all this, I kind of decided, okay, the GPU enforcement I did was a waste of time may actually have done some damage by dissuading people from using this code. And it's other people are using it as a template to do more suits that are clearly doing more damage than good. And it's like, okay, I don't I'm not a lawyer. I'm not even all that comfortable being involved in it being involved in these suits is a little more time consuming than I'm comfortable with when they're not doing much. I want to step back and just get away from this whole thing at all. So when I as I was looking at Android going no GPL in user space and I was looking at the number one license on GitHub is no license specified. And I looked into why that is. I found out there aren't really a lot of hard figures on this because it's like trying to get hard figures about Napster usage in the 1990s. The people who are doing it aren't really talking about it. But it really seems like the current crop of new programmers, you know, the teens and 20-somethings who would have thought that the GPL was this awesome thing and would have slid right into Linux development in GPL V2 and use GPL V2 for all of their new projects. They're now treating copyright the same way they're treating patent law as something that's too dumb to live and just all you can do is civil disobedience and stay out of it until it dies. And the refusal to specify a license on GitHub and for a lot of projects like that, that's not ignorance, that's civil disobedience, that's refusal to participate. So I'm backing up a bit. Can you tell us about the beginnings of the open source movement and how the FSF got started? When I started on a Commodore 64 in 1982, as you know, little 10-year-old me, that Commodore 64 came with the disk bonus pack by Jim Butterfield. It was a floppy full of basic programs that were in the public domain. They actually said at the top of each thing, you know, this this file is in the public domain. And all the basic that the old 8-bit machines did, we had magazines with basic listings in the back that we got every month. We didn't have a word for open source because fish don't need a word for water. It was just everywhere. Looking into some of the history, I found that proprietary software was created by a lawsuit between Apple and Franklin, the people who made, I think it was the speaking spell. They also did an Apple II clone in 1981. And they copied Apple's ROMs verbatim because the state of the law at the time was source code is copyrightable, but binaries aren't. A binary is just a big number. So once it's compiled, copyright doesn't apply to that. It only applies to source code. That was another thing encouraging people to distribute source code because you might have some copyright protection on that. Well, when the Franklin guys copied Apple's ROMs for their Apple II clone, it included notices that this ROM belongs to Apple in ASCII text. It included the signatures of the developers and stuff like that. And when Apple took them to court, the judge said, I don't know where the line is, but Franklin is over it by copying these ROMs verbatim. And this legal precedent essentially extended copyright to cover binaries in 1983. You'll notice the free software foundation was launched September 1983. IBM did a big object code only announcement in something like February of 1983. I've actually collected links to these on my website. And that's where proprietary software binary only shrink wrap software really started as an industry. It's not that old. And it turns out that there's sort of this curve that it probably peaked around 1995. Because remember, you used to go into stores and find row after row of shrink wrapped boxes of software that there were entire stores devoted to nothing but selling shrink wrapped software, they kind of went away. In part because there was consolidation that anytime Microsoft entered an industry, I'm sorry, Stacker, you're going out of business now, making your discretion software. Because even if you sue Microsoft and say, oh, they copied stuff from you that they shouldn't, they pay you one time thing and then you have no one going business model. Yeah. Open source was normal. Open source is pretty well established now. The GPL was fighting against certain specific things with the GPL fractured into multiple incompatible versions. It's possible that it's now become a net loss. Now that we have internet distribution, one of the things about the history of the free software foundation is things like Larry Wall's patch program, the original patch program was written by the guy who did Pearl. He didn't need the FSF to distribute Pearl, but he sent patch to the free software foundation because they had an FTP site before 1993 when the National Science Foundation changed the acceptable use policy for the internet backbone and said, yes, for profit companies can connect to the backbone and they invented the home ISP. Before that, getting an FTP site was really hard, getting internet distribution was really hard. After that, we had geocities and it was geocities that really undermined the relevance of the free software foundation because if you can just put, trivially, put your code online, you don't need to jump through the hoops of doing copyright assignments on a physical piece of paper that you may able to Boston that they keep in a cabinet. You know, you can just put it online anywhere you don't need anybody else's permission. Linux happened right when that transition was happening. Linux started in late 1991 and really took off in 1993 with the rise of the internet. It always had internet distribution because he was a student, but he didn't have to do anything special after he stopped being a student to get hosting because kernel.org could be anywhere. So part of the reasoning for gplv3 seemed to be the free software foundation going, oh, we have hugely lost relevance in the 90s and into the 2000s. What do we still control that can have an impact on the industry? And the Linux developers were going, we don't care about the teavowization issues you're raising. We're happy staying with gplv2. Yes, it has this or later lifeboat clause that says, you know, if some legal decision damaged gpl enforceability so that gplv2 was no longer really a viable license, we can ship a patch. We can ship an upgraded version. But gplv3 shipped when there was nothing wrong with gplv2. They basically hijacked the lifeboat and said, no, we're doing a whole new license with whole new political agendas that you haven't necessarily bought into. And what they wound up doing was fragmenting the gpl and it was it was really painful. I spent a couple of years trying to figure out how do I go forward with Linux development when I was such a huge fan of the gpl and I'm not going to gplv3, but gplv2 is overshadowed now. And what I had to work through in my head was the people younger than me are going to BSD or they're going to de facto public domain, but the public domain was was funnied, fear uncertainty in doubt. There was a lot of, as there was the rise of proprietary software, there was a lot of PR effort put into going, oh, if you use public domain software, you will be sued by Martian who don't exist. It's like, what? There was this cloud of fear over the public domain that it somehow simultaneously didn't exist and was dangerous. And that wasn't actually true. So what a lot of people have been doing in the absence of a universal receiver, they're jumping up to a universal donor, but it's not as well defined as, you know, gplv2 is what it's all convertible to. So if you use lgpl or if you use the Mozilla license that's convertible to gpl, you can just trade it as gpl and I understand this one thing. Well, because people were stepping around the public domain and making sure they had slightly different phrased, please don't sue me clauses. There wasn't a universal donor quite as clear cut, but it turns out that wasn't a new problem because if I'm shipping a gplv2 only project, I have to triage all of my inputs. Every time someone submits me a patch, I have to grill them to go, okay, you didn't copy this from a gplv3 project. When you say gpl, you mean gplv2 and if I'm doing gplv3, I have to do the exact thing. You didn't copy this from the Linux kernel, right? From the kernel guys, you didn't copy our busy box. You didn't copy this from SAMBA, right? You didn't copy this from any of the FSF project shipped since 2007. And if, you know, people go, well, the obvious solution is use gplv2 or later, but then you can't accept code from either source because you essentially need to do a license of gplv2 and gplv3 and a presumed gplv4 if they ever ship that. So the problems that people were having with a universal donor were basically, I have to write all my own code, I have to reinvent the wheel, I have to have a complete, not invented here syndrome, but anybody can use my code for any any other purpose. I'm a universal donor, but have to be very, very careful about what I receive from. And that kind of, it's bad, but it plugs into people's prejudices anyway. So a lot of people were doing it. What I'm trying to do is go, well, actually public domain isn't a bad thing. And if you state that you are public domain or give license terms that essentially are convertible to public domain, what I did with my toybox project is I took a two clause BSD license and then removed the requirement to copy this license text into other projects. That's a fun one. I mean, if you're going to really be a lawyer about these things, BSD and gpl are sort of compatible, but not really. If you look at the busy box ping command, at the start of it is gpl boilerplate. At the end of it is BSD license text. The reason is BSD says you must copy this license text into derivative copies, even if it doesn't apply to those derivative copies. And the gpl says you can't add any extra requirements, such as having to drag around this verbatim block of text. So they sort of conflict in a way that everybody's just carefully not looking at and nobody's really doing anything about. If you actually go dig into legal things long enough, you basically figure out that everything is illegal. Everything is, I mean, it might be possible. Terry Pratchett had a marvelous quote. It might be possible to avoid breaking the law by sitting very quietly in a basement somewhere on your own property, but even then you may be guilty of loitering. I'm trying to make it so that people aren't afraid of public domain, so that people will actually public domain will release public domain code. And there's a lot of it out there. I mean, lib tom math. It's one of the components of the drop bear SSH server implementation. That's public domain. People just haven't really looked closely at it. If you start looking for public domain code, I think SQL Lite is actually public domain, isn't it? And they offer a license. Yeah, there's a bunch of them out there. The XZ implementation, the new compression method that seven zip and stuff use. The most common implementation of that is public domain. And you know, they come with a little file that states this is public domain. What I did with toybox is I modified something that looks like a BSD license, but if you actually look at what it's saying, it's basically saying, do whatever you want with this, I don't care. And then a second paragraph, please don't sue me, but I'm not requiring you to copy this. Please don't sue me a paragraph into somebody else's thing. I mean, if someone else was somehow injured by my code in a way that I don't even know what that would be, I would happily refund the zero dollars they gave me. It seems absolutely fair enough. I think we probably should drag it back to toybox though, but just before we do, there's one thing I've got to ask you, I found a kernel mailing list post back from 2002 that kind of implies that you're responsible for the GNU Linux phrase. I attempted to explain marketing to Richard Stalman. The original post was actually 1998, but it wasn't on the mailing list. It was in private email correspondence between us. I bumped into Debian's webpage linked to the free software foundations webpage where Richard Stalman had a rant about Linux is a dead end. It's x86 only. It will be replaced by the GNU herd. I don't know if that's, you know, I emailed him and I went, I don't know if that's true or not, but everybody knows GCC. Everybody know, you know, even on OS 2, I was using a port of GCC to OS 2 called the EMX package by ever heard Madison, Germany. Everybody knows the FSF as a tools vendor. We think that the GNU project is like Orland, you know, or Watcom. You make compilers. So if you are going to position the GNU herd as an upgrade to Linux, you have to first attach your brand name to, you have to attach an umbrella brand name to Linux the way, you know, TurboC became, well, TurboBasic was I think the first one that Borland did and then they could do TurboPascal and TurboC and, you know, have the turbo name say, and it's another compiler from the same group. If you want to, if you want to position herd as a replacement for Linux, you have to have an umbrella brand that it can be an upgrade within the context of. And I was just talking marketing to the guy. I didn't know technically what he was talking about. I assumed he knew what he was talking about on a technical front. And I got buried deep in an IBM contract I was doing. I think that was still the Java OS one. And he went on a trip to Brazil. And when I came back, he had apparently sometimes referred to Linux as GNU slash Linux before. But now he was really, really pushing it and doing a big thing. And I emailed him again. And I went, okay, this isn't working. And the reason this isn't working is that you're not putting out a Linux distro. The niche that you're trying to do is Red Hat Linux or Debian Linux. But there isn't a GNU Linux because you don't ship one. So all you're doing is it best creating brand confusion. And at worst, making yourself look completely clueless and out of touch. And I got back an auto responder that said that he was like a month behind on his email and would get back to me. And he never did. And it's like, it was another case where I, I yodeled started an avalanche and then could not steer the resulting thing. So you've had no further contact with him then? I didn't speak to him again until 2000 when 2001, February 2001, I think it was. I drove up to Boston and interviewed him because one of my hobbies is computer history. And I wanted to ask him some questions about early, you know, FSF stuff. So I'm moving back to Toybox then. And disruptive technologies and how to make mobile computing truly disruptive, it needs to be self-hosting. And Toybox really fits in as a key part of that. It's indeed. Yeah, yeah. Why Android, though, as opposed to something perhaps a little bit more open, like Ubuntu, for example, Ubuntu Touch? Because Android can get pre-installs, I did OS 2 for years. I learned what not having pre-installs. Your technology can be the most superior thing in the world. OS 2 versus Windows 3.1 was no contest and we still got SteamRollard because we couldn't get pre-installs. Microsoft had exclusive distribution details with all of the hardware vendors that locked us out. That came out in the Antitrust trial in 1998, but unfortunately we had a change of administrations that completely neutered any actual enforcement of it. So we have to wait for that particular monopoly to just decline on its own. The thing about Android is they're shipping a billion units this year already now. So Ubuntu on a phone is you've got the iPhone from Apple, running iOS. You've got Android from a bunch of vendors being the PC to their Mac in a third space. You know, we had the Apple 2 versus CPM, then we had the Mac versus the PC, and now we have the iPhone versus Android. And then you have everybody else. And it doesn't matter. I mean, you've got Coke, you've got Pepsi, you've got everybody else. And displacing one of the dominant vendors is really, really hard. You mentioned network effects. You can look you can look that up on Wikipedia. Network effects basically say that one telephone is useless. Two telephones can only talk to each other, but three telephones each phone can talk to two other phones. So every time you add another phone to the network, you're increasing the value of each existing phone, because there's now more phones it can talk to. Software and computers work the same way. Everybody wants to buy what everybody else had. Everybody wants to write software for what has the most seats, the most places that people can run their software. And everybody wants to buy the hardware platform that has the most software. It's, I mean, game consoles, PCs, phones, it shows up again and again. And what that means is that size is an advantage. And getting there first and taking the high ground can actually give you an essentially unassailable advantage. Android negotiated with the phone vendors to allow you to attach a SIM card to this operating system to get bandwidth. We had handhelds that were largely useless until they were hooked up to the phone network. And once they were hooked up to the phone network, it became an entirely different kind of thing. It became an internet connected portable device. It became the fourth step in, or the fourth generation of mainframe mini computer micro computer smartphone. And it turns out that if you look at that, people used to stand in front of mainframes waiting for their output. They actually interacted with the mainframe, taking a box of punched cards to the mainframe priesthood and waiting for their printout. And they stopped doing that when many computers let them sit at a mini computer terminal down the hall and submit mainframe jobs through the mini computer. What they interacted with became the mini computer. The mainframe was a server. The mini computer kicking the mainframe up into the server space invented the server space. But it turns out that the server space is a viable niche and you can make lots of money and sell lots of units into their game. Then the PC came along. The PC meant that you didn't need to sign up for a time slot on the terminal down the hall when you had a computer on your desk. The computer down the hall became something you interacted with through the computer on your desk. And that meant that the mini computer got kicked up into the server space. And it turns out there's only one server space, and IBM and digital equipment corporation fought to the death. And the PDP 11 and the Vaxes and stuff all went away. Although IBM's machines today look a lot more like mini computers than they do than they did traditional mainframes. They're they're interactive. They're time sharing their network. They the mini computer technology one, but IBM the company one and put deck out of business. And now it's happening again. The the smartphone means that you don't need a computer on your desk when you've got a computer in your pocket. So PC technology is getting kicked up into the server space. And they're calling it the cloud. They have a marketing budget behind it this time. But everybody saw this coming when bail wolf clusters happened. It's like, okay, PCs are starting to work their way up into big iron. But the exact same fight is happening. This time it's IBM and Amazon's EC2 cloud or EC3 whatever it is. Amazon's cloud is killing IBM. And this time it looks like Amazon the company is winning and IBM is going away. And we'll just emulate the old big iron machines on Amazon cloud clusters, possibly under QAME or something like that. But the cloud is there's a lot of enterprise money there and it's considered a very active niche. And even though they're just repeating history, there's a lot of money to be made. But on the other side of on the other side of that divide, the PC workstation is like a mini computer workstation was back in the 80s or early 90s. DOS was originally cross compiled from I think it was PDP 10s. But when DOS machines grew their own C compilers and became self hosting so that you could do PC development on a PC just as well as you could do it on a mini computer, that meant you didn't need the mini computer anymore. And the mini computer as a workstation machine went away. That's going to happen with PCs. Now, I mean, a modern PC is every bit as powerful as a mini computer ever was. You could do everything that a mini computer could do. That wasn't true initially. The PC had to grow into the niche. There's a marvelous bit in Robert Kringley's triumph of the nerds where he talks about the original, the original micro computer, the Altair, how it had no IO devices except some switches on the front and some blinky lights. And the first thing an Altair ever actually did was run a program that had some time loops where the radio interference it put off played a song. And it's like, wow, that's really, really cool. And then they added expansion cards to let you hook up a TTY. And then they added a basic interpreter. And then they added more software and more memory. And it grew into the machines we have today. Well, the phone has some growing to do. And I'm helping the phone grow into a self-hosting development environment that means you no longer need a PC. And part of the reason that when Android becomes self-hosting it will be a good thing for Android is it means that having an Android phone is sufficient to do Android development. Right now, having an Android phone is not sufficient to do Android development. You've got to set up a cross-compiling environment from a PC. And cross-compiling sucks. Cross-compiling is really painful. But if you can buy an Android phone, install an Android development environment app. And then maybe plug it into a commodity USB hub with a commodity USB keyboard, a commodity USB mouse, and grab a USB to HDMI adapter, which they're currently selling it best by, you know, to plug in an old monitor you have lying around. And then play, play, play, play, play. And when you're done, unplug your phone and take it with you. And then plug it into a similar setup in a friend's house. You know, people are actually doing hardware that has this built in. This capability is essentially present in tablets that have a large enough screen that an on-screen keyboard isn't hugely painful. You don't need the extra display. But you'll notice that the successful tablets are big phones, not small PCs. There's a generational gap here that deck didn't understand when they came out with a microvax. You know, they attempted to come out with a PC form factor mini computer back in the 80s or early 90s. And it was just, it was laughed off the stage. They weren't the only ones who did this. You know, Microsoft is still going, well, Windows 8 isn't successful on tablets and Windows isn't going on phones. And it's, why can't we take our mini computer operating systems and shoehorn them down to the PC? Why is this not working? Bill Gates figured out why this wouldn't work a number of years ago. That's why he retired. In some time frame, then, how long do you think it's going to be? Obviously, just an estimate before we'll be at that scenario that you described where you will be able to plug your Android phone into a screen in a keyboard and do development and be able to compile the operating system itself on the phone. Google for Corbin Champions Android Gnu root. That's an app that you can install on your phone that will let you install a conventional Linux change route on the phone. It's incredibly painful to use with the on-screen keyboard. I've actually tried doing that. I actually tried that yesterday and it is very painful, yes. You can actually install different keyboard apps, but I haven't done so for the same reason. I haven't put Sanogen mod on my phone, which is that I use it as a phone. I really don't want this stuff to come pre-installed because I have done the hack together my own system with duct tape and bailing wire and I'm good now, thanks. I actually just want to focus on other things. I have my projects writing my own email client is not one of them. There's only so many rat holes you can go down when you're no longer a teenager. The caffeine only works so well, but the limiting factors for making a phone self-hosting, we need a tool chain that is not GPL because remember you can't pre-install GPL software in your root file system without violating the Android licensing guidelines. An Apple has actually been working on that for years. Clang slash LLVM is the project Apple was sponsoring and they have gotten it to build the Linux kernel now. It looks like that one's going to win. There may be other tool change that come along and share that space later. We're probably not going to get a category killer the way GCC was because it turns out that that's a thing. One of the strengths of Linux was always if you don't like open SSH, you can install Drop Bear. If you don't like this shell, you can install that shell. If you don't like this implementation of some package, there are multiple compatible implementations. It's commodity parts available from multiple sources. It's essentially the same reason PC hardware one that you had multiple video card vendors competing with each other. You had multiple motherboard manufacturers competing with each other, multiple memory manufacturers competing with each other. You could swap the parts around and it just worked. Well, for definition of just work that involve bleeding on it from time to time. Linux is except for the kernel, which was a single monolithic implementation. Although vendors modified their kernels rather a lot. Red Hat kernel and Debian kernel had a lot of patches from the baseline. But a lot of the other things you could assemble a lot of different packages. So, LLVM probably won't become a category killer. The same way GCC did. There may be PCC, there may be tiny CC, there may be Amsterdam compiler kit. There's a bunch of other compilers that may grow big enough to share that space. That's healthy because having multiple different things that you can regression test against is nice. It's the sign of a healthy ecosystem. It means you don't have a monoculture where everything falls over at the same time because of one bug. So, the compiler is in okay shape. The command line I'm doing. The four things you need for the smallest possible self-hosting environment. And remember, my Aboriginal Linux project was essentially taking Linux from scratch and trying to strip it down to the smallest possible simplest possible environment development environment capable of rebuilding itself under itself. And I got it theoretically down to four packages some years ago. One of them would have been busy box, except busy box needed a lot of work. One of them would have been tiny CC for Breece Ballard's compiler that he stopped working on when he QEMU forked off from tiny CC, the same way build route forked off from UC Libsy and busy box. And it took all of the developer's attention. I call this a project tumor. You know, it bugs off the side and then all the developers follow it and the original one can sort of roll to a stop because nobody's paying attention to it anymore. That happened to tiny CC. And what I was trying to do is I was kind of trying to take tiny CC's front end and QEMU's tiny code generator TCG back end, which is BSD license. And I got permission from for Breece Ballard to BSD license his tiny CC contributions. Other people did their own patches while it was GPL. I'd have to go through and triage and fork it at the point that he abandoned it and then go through my fork that I was in. There would be a lot of work to do this. But I wanted to take TCG and TCC and glue them together so that tiny CC could produce output for any target QEMU could emulate using QEMU's code generator and then leverage all the development work that QEMU guys were doing to make that reasonably optimized and well supported and add new platforms and stuff. That's a project I don't have time for but I'd really, really like it if somebody else who did have time stole the idea and just you do it. Please, yeah, I'll contribute to your project. But it's not going to be this would have been called QCC, QEMU's C compiler, but it's not going to be QCC in the short run. It looks like it's going to be LLVM. And then in it, so busy box tool chain kernel, which is still going to be Linux, but Android is basically, Android is using a forked version of the Linux kernel where they've added stuff but haven't removed anything. So it works fine in a development workstation because it does everything Linux can do. It just does more and they may have added a few bugs but we don't care. Easily fixable. And then a C library is the other thing you need. And that was a problem a couple of years ago that somewhat, you know, Bionic is unfortunately crap. The theory behind the Android initial user space that they were doing five years ago, Android's initial user space idea was we boot you up into a Java sandbox and then everything happens in the Java sandbox and the native code is just enough to run the Dolvic Java interpreter. So they have their own busy box like command line called toolbox that only implements like two dozen commands and doesn't implement them very well. They have their own C library called Bionic that is dubbed out left and right. Not as much as it used to be, they've supplemented it with some net BSD library stuff but Bionic can't build real packages like, you know, if you wanted to build X11, if you wanted to build PostgreSQL against Bionic, you would wind up modifying PostgreSQL rather a lot to work around the fact that the C library is missing huge swabs of stuff. But it turns out that the C library is now a solved problem because a guy named Rich Felker was doing his own C library sort of for fun like I'd been doing toybox, you know, the project is a thing I would dink at as a hobby but I didn't really expect it to amount much. I didn't expect many people other than me to use it until I found a purpose for it and a slot it could fit in and a goal to work towards. Well, he was similarly doing a C library called Muscle, MUSL, that he'd been working on for a while and I explained to him about, you know, GPLD2 versus GPLD3, no GPL and user space on Android but Android really, really, really needs a libc and you've got one that's already better than Bionic which admittedly wasn't a very high bar at the time and he went, okay, I see your point and he relicenced Muscle which he was almost entirely has coded that point so he had the copyrights he could do that, relicenced it BSD. So we now have a BSD Linux library that is having its 1.0 release in a few days and it's good enough that you can, they've built like 4,000 packages against it, you can just drop it in and build Linux from scratch and build beyond Linux from scratch on top of it. They just did a Gen2 stage 4 which is basically a Gen2 change root tarball based on Bionic, there's people looking at trying to get a Debbie in based on Muscle, there's, that's under control. So we have a C library, we have a tool chain, we have a kernel, it's actually toybox that's that's behind now because I haven't had as much time as I'd like because, well, day jobs are very time consuming but I have a toybox roadmap where I've done the research to go, these are all the commands that I need for a development environment to rebuild itself under itself because I know that from my Aboriginal Linux project, I actually stripped down, I implemented the busybox extensions that were necessary to make busybox, make Aboriginal Linux rebuild itself under itself with busybox, I did that a while ago and that's been working okay for a few years now, I'm now re-implementing that with a different license and admittedly cleaner code in toybox and so I have the list of commands I need to do that. I also went through POSIX 2008, there's a POSIX 2013 upgrade but it was basically bug fixes, it didn't really add new requirements, so I went through the POSIX standard for command line tools and filtered that because it's got a lot of crap in it like SCCS source control system that nobody's heard since the 1980s, it's still part of the POSIX standard is command line utilities that you should have installed, it's got you know QDel for removing batch processing jobs and stuff, so I removed like a third of the commands that do not apply to a modern system, there were a few judgment calls like you know is Ed still a part of a modern system, is LPR still part of a modern sign, not sure, but I have that, I have what the Linux standard base 4.1 I went through, they're a command list to see, I did a bunch of research into what toybox needs for a 1.0 release and I would say it is probably about two thirds of the way there. It strikes me that the software stack we've been talking about with toybox, muscle, sea libra and so on is much closer in design to the original Unix philosophy than many of the projects that have dominated the Unix world in recent years, is that how you see things and do you think the traditional Unix approach is still valuable today? I think the traditional Unix approach is awesome, there's a reason it's lasted 40 years, keep it simple stupid. Yeah exactly, you say you're two thirds of the way to a 1.0 release, so anyone who's listening how can they help out with it, what's the best way for them to help you? Well unfortunately I've been a little bit of a bottleneck, there's a pending directory where people have contributed a lot of commands, a command implementations of things off of the road map, and rather a lot of things that weren't on the road map, but they're saying no I need this to use toybox in place of what I'm doing for busybox for existing embedded application, because remember Linux is fairly widely used in the embedded world. There's actually a funny thing, the supercomputer space and the embedded space have a lot more in common than either does with the desktop. Linux on the desktop has been coming soon now for 15 years. I don't think Linux on the desktop is actually going to happen, because open source development has a problem dealing with aesthetic issues. Any time the phrase shut up and show me the code is not the correct response to the problem at hand, open source development melts down into one of three distinct failure modes that you can actually spot. We have endless discussion that never resolves, because we have no objective criteria to say yes, this is the way we go, the numbers supported. Everybody goes off and implements their own idea, and then you can't unify the forks after the fact for exactly the same reason. There's no clear objective winner, or people delegate the problem to nobody by separating the engine in the interface and focusing on the engine using this as an excuse to ignore the interface and hoping some glorious day, someone writes an interface worth using, transmitted to us from Mars, or they make it so configurable that after a week of study you still haven't figured out everything it can do, and the fact that it has no sane defaults is now somehow your fault. And we keep doing this. Linux desktops. Linux can't really do a very usable desktop for the same reason Wikipedia can't write a novel. The too many cooks spoil the soup effect. Isn't something that open source overcame when it comes to taste? We overcame it when it comes to nutrition, but we're only really good when we have empirical tests, you know, things that we can regression test, to say that yes, we fixed it, and that brings everybody into agreement. If all you have to do is just be consistent, you know, it doesn't matter, when you're cooking a dish, it doesn't matter if you're doing Mexican food or if you're doing Chinese food or if you're doing burgers and fries and stuff, but if you don't know what you're doing, if the elements clash, you know, and this would be a perfectly good element in a different context, that's a trap we fall into a lot. You say that you can't have a usable Linux desktop, but if you tried Linux Mint, for example. Oh, I've tried a bunch. I'm using XFCE. I'm using Zubuntu, which means I'm using the third most popular desktop on the third most popular operating system, and I am a rounding error. It's not that we're incapable of doing so. One of the failure modes we have is that, okay, so Wikipedia can't write a novel with a plot, but individuals write novels with plots a lot. You generally need one point to the wedge, you need somebody in charge where you're following their unified aesthetic vision. The problem is, is open source projects mature, they tend to say, okay, we need to spread out now, we need more people involved, we need to reduce our dependency on the one visionary and replace them with a committee, and committees produce beige. So you tend to have things like Mozilla turned into a giant mess. When Netscape released the source code, they ripped out all the parts that they didn't have the licenses to open source, which meant they dumped a pile of code that didn't compile. And people went off and added stuff in all directions, which meant that it was scriptable using XML. The user interface was extensible using XML before it could actually view web pages. It turned into this giant unmanable, manageable mess, and Jamie Zowinsky left. So the Gallian project forked off of it and threw out 90% of the code, and it was a small team of people who said, okay, this is the subset we want to focus on and make it usable for us. And Mozilla rebased on Gallian. And then the Mozilla development committee bloated it again into Mozilla, and then Firefox forked off. And Firefox was like three guys, and they said, this is the subset that we want to use. This is our focus, this is our vision for what a web browser should look like. And everybody started using Firefox. And the Mozilla guys pressured the, the Mozilla guys rebased on Firefox and slowly made it so that it was no longer, you know, we're implementing the aesthetic vision of these guys to we're implementing modern Firefox. And you can get usable, but you tend not to get people particularly excited about that this is a, this is a larger topic, aesthetic issues and open source. But the reason I brought it up is I don't particularly expect Linux on the workstation, even as the workstation collapses into a smaller space where PC sales had been declining for several quarters now. I don't expect Linux to particularly expand into that space at all. So you don't see a mass market feature of the Linux desktop, but I guess you feel differently about Android? Android extended into a desktop has the advantage that it's already there. It's already what's installed on billions of units. And coming up with a reskin that looks decent on, you know, an HDTV with a keyboard isn't that hard, but this is Samsung's problem. Okay, it's very nice. If you can plug your phone into a TV and broadcast the display, I recently got a new Google phone Nexus 4, I think it is, or Nexus 5, whatever it's called, that buried in the menus has export display that if I have, if I had one of those Chromecast USB things plugged into the back of my HDTV, it would export the display I think wirelessly. I don't have one, I haven't tried this yet, but technically that's a solved problem. When it exports the display, what's it gonna look like? Do I then bluetooth associate a keyboard? I mean, there's there's some unsolved problems here. There's also political problem. We haven't touched on at all here, Rob, throughout the whole conversation. We've hardly spoken about Google. Now, how do you think Google feels about losing some control of the marketplace for Android here? Because I guess that's what's gonna happen if the vision we're talking about comes to fruition. Google has already lost a lot of, if you add up all of the phone market share in terms of revenue, Apple and Samsung add up to more than 100 percent because the other guys are losing money. And that basically means Samsung, they don't own Android, but they are extremely dominant. And they've been able to dictate a lot of terms. And Google really didn't like that, so they came out with the Google Play thing, which basically as an app, you replace lots of infrastructure. And there's been fighting going on behind the scenes, and I'm largely trying to stay out of that. The approach that I've been taking is what can I add to the system under the GUI layer that adds infrastructure to make it an actual usable workstation? There's a lot of fighting over the GUI layer yet to be done. And as far as I can tell, Google and Samsung and to a lesser extent, Sony and whoever else, they're fighting over the GUI layer. And that's, it's sort of a good luck I may wave my handkerchief at one side or the other, but I'm not in that fight. So what's that around about, wait, have you saying that you don't need any help then with toybox? I would like people using it. I would like people testing it. And patches are welcome. I am doing a Miyakopa saying that I am behind on the review and integration. Part of what I've been doing is I do a lot of polishing work on each new thing that comes in. I actually added a cleanup page to the toybox website where I described getting a 1500 line if config a command and squashing it down to about 500 lines. And I went through step by step describing each check in I did and trying to make the check in small and describing this is why change code into that. This is why change code into that. This is why I change code into that. I'm hoping that even if people don't use it to do their own cleanups on toybox, it helps them make better embedded code. Some of it stylistic, but at the same time I, I did reduce it to a third of its original size and I think a third of its original complexity without sacrificing noticeable features. I've done write-ups for several commands that I've done similar cleanups on that and I welcome cleanup work. Anybody who wants to do cleanup work on anything in the pending directory, please. And really, anything that's on the roadmap that hasn't been implemented yet, there's a status page that has various other projects that have this list of commands. It categorizes them into what I have done and what I haven't done. And at this point, toybox can replace this project sort of thing. If you see a command on there that you want to do, the problem is that a lot of the low-hanging fruit has already been taken. So the commands that haven't been implemented yet tend to require specific domain knowledge. Even some of the cleanups, I mentioned that XZ is in the public domain, at least for the deflateside, or sorry, the decompression side. We got an XZ command that is thousands of lines long, but it does XZ decompression. And it's impending because it's a giant tangle of code that I can't understand and can support in its current state. I need to go through study it and clean it up and I can probably get it down to half its original size. I'm guessing. I really don't know. If anybody else wants to clean that up, go for it, please, yes. We'll obviously put links to your website in the show notes, but if anybody's just listening to the audio, it's landley.net, l-a-n-d, l-e-y.net. Slash toybox. The next few years are clearly going to be pivotal in determining whether or not mobile will live up to its promises of potentially disruptive technology. And it's been really interesting to hear your thoughts on the whole topic. Thanks again for taking the time to talk with us today and the best of luck with the toybox project, Rob. Thanks for having me. Well, there we are then, fascinating chat with a really, really interesting guy who's obviously been around the block a few times. And bear in mind that if you want to send feedback about that, the best place is probably to leave a comment on the website where it's public and Rob will be able to read it. So with that, we're coming to the end of another Linux Lodites. You can email us at showitlinuxlodites.com or find us on Twitter, Linux Lodites, or leave a comment on the website. Thanks for joining me, Paddy, and thanks to everyone for listening, and we'll see you again in two weeks. More Linux news, reviews, comment, and generally being grumpy. Hi, everybody. See you later. You have been listening to Hacker Public Radio, or Hacker Public Radio, those are. We are a community podcast network that releases shows every weekday on Deathly Friday. Today's show, like all our shows, was contributed by a HPR listener like yourself. If you ever consider recording a podcast, then visit our website to find out how easy it really is. Hacker Public Radio was founded by the Digital Dog Pound and the Emponomical Computer Club. HPR is funded by the Binary Revolution at binref.com. All binref projects are proudly sponsored by linear pages. From shared hosting to custom private clouds, go to lunarpages.com for all your hosting needs. Unless otherwise stasis, today's show is released under a creative comments, attribution, share a like, lead us our license.