- MCP server with stdio transport for local use - Search episodes, transcripts, hosts, and series - 4,511 episodes with metadata and transcripts - Data loader with in-memory JSON storage 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
1181 lines
108 KiB
Plaintext
1181 lines
108 KiB
Plaintext
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.
|