Categories
Interview Linux

Interview with Ken VanDine of Foresight Linux

A few weeks ago, I saw that Foresight Linux was going to be pre-loaded onto Shuttle computers at an amazing price – just $199. “That’s interesting, another Linux distribution I haven’t heard of.”

The last time this “I’ve never heard of distro X” thing happened to me was when I got an email advertisement for the “gOS developer kit” – I ended up looking into gOS, and they started selling computers in Walmart shortly after I scored an interview with David Liu. That was a pretty big deal, if you haven’t heard about it. By the way, I’m HUGE in Japan.

I was able to catch up with the very busy creator of Foresight, Ken VanDine. He’s got some really interesting answers to thing plaguing my mind, like which pie is best – I only hope that you can also appreciate the internal debate that’s finally been settled by this fine gentleman.

Without more from me, here’s Ken.

Tell me a little bit about yourself.
– I am a dog person, *NOT* a cat person. I grew up on the outer banks of North Carolina, spent 6 years in the US Air Force. After getting out I spent some time in the Bay area, San Diego, and Los Angeles before finding my way back to NC. I am now an engineering lead with rPath, Inc. I am also the proud parent of two great kids, and married to a wonderful woman that allows me the time to spend my evenings working on Foresight ๐Ÿ˜€

The deal with Shuttle appears to be a huge win for Foresight Linux. How did it come about? Who were the major players?kpc.png
– Back in September 2007 I was talking to someone from on-disk.com about selling the future versions of Foresight 2. Then in January, she was contacted by Shuttle looking for suggestions for a disro to go with. She got us talking, and things progressed quickly. The first time I talked to them, I tried to get a feel for what they wanted, hard to do with a brief phone call. I then spent an hour customizing Foresight, changing the syslinux menu, splashy theme, gdm login theme, default wallpaper and changed the gtk theme. And… drum roll, I had installable isos available for them to test. The tools we use to maintain the distro, are designed from the ground up to make managing derivative distros easy.

Would you say that Linux (in general) is making good progress towards becoming a household name?
– PC makers and systems integrators letting Linux play with the big boys.

Which is better philosophically: Apple, Pecan or Pudding Pie?
– Apple pie

What is the relationship between rPath and Foresight?
– Foresight was created just over 3 years ago, using tools developed by rPath. Foresight was actually the first distro derived using the tools. Since then, I have joined the rPath team as an engineering lead. Foresight is great for rPath, it proves the tools work and gets plenty of exposure. rPath doesn’t control Foresight, but does benefit from it.

Foresight Linux seems to have an interesting release cycle, can you explain it in-depth?
– Our package manager, Conary, follows many of the principles found in version control systems. Not only does it maintain the source of our packages in the same place as the binaries created, but there are branches. So we have development, QA, and release branches. We are able to do our development on the development branch, without affecting our users. We then promote packages to our QA branch, and test them as a group. The entire operating system is defined in a group, and the packages are built together for optimal compatibility. We test the group of packages together, as a whole, when the QA cycle is complete the entire group is promoted to the release label for user consumption.

When did you come to realize that Foresight Linux was needed?
– Well mostly frustration with existing distros. At the time I was working for a large enterprise where we managed a very large scale linux infrastructure. We struggled with maintenance and deployment issues, as well as the “we have to customize red hat mentality”. I always hated rpm spec files, and hated that our environment was never easily reproducable. At the same time, I was involved in GNOME Marketing and was frustrated at how long it took distros to provide never releases of GNOME to their users. We would get lots of hype over a new release, but the buzz was over by the time people that didn’t want to build all of GNOME from source could actually use it. Using Conary, I was able to very quickly build a distro that was made up of what I defined as of proper desktop OS using the latest GNOME. There was also some emerging technologies that really improved usuability of the desktop, specifically related to hardware. HAL and udev to name a couple, relative new comers to the scene and being included in distros already, they weren’t really heavily relied on yet and no where near current. Foresight intregrated the absolute latest versions of many things like these and made a really great OS (imho). Desktop Linux has been emerging so quickly, and improving even more rapidly. Six, eight, or even 12 month release cycles just can’t cut it for a desktop. We need continuous improvement, so a rolling release distro is the way to go. Releases for Foresight is really just deciding when we want new isos to cut down on the number of updates a new install my get.

How important are bug reports for open source developers?
– We couldn’t survive without them. Fact is, we don’t have a team of professional QA folks beating on our work reporting bugs. So we rely on the community to file issues. We do try to encourage people to run our QA branch of Foresight and report bugs before people running the stable branch see them.

How does Conary differ to other popular package management systems (such as dkpg, Portage, and Yum) and why is it a better method of doing things?
– Whew… where to start ๐Ÿ™‚ Conary does so much more than legacy packaging systems such as apt(dpkg) and yum(rpm). Conary melds version control concepts into package management. Not only on the build/packaging side of things, but even for system maintenance. Conary stores sources with the binaries, in the same package, supports branching, merging, etc. On the flip side of that, Conary does some other very nice things. For example, every operation is a transaction. So you can actually rollback your last update or even all the way back to when the system was installed. And, these rollbacks contain local changes that get merged. Also being transactional, Conary breaks updates into smaller “jobs”. These jobs are dep complete, so if at anytime an update fails Conary will rollback to the previous job leaving your system dep complete and fully functional.

Conary also breaks packages down into manageable components, :runtime, :lib, :devel, :devellib, :doc, etc. So unlike other packaging systems, where you might have 2 packages, firefox and firefox-devel, Conary would have one package with the devel headers split into firefox:devel. This is a great thing, you no longer end up installing -devel packages from random repos in your sources.list just because it looks like a newer version. The devel headers are just part of the same package, you just don’t have to have them installed. These components combined with rich dependancy information really shines. If you need to install an application that needs to be able to talk to a mysql database, only mysql:lib would get brought in as a dependancy. Not all of the mysql package, so you just get the libraries. Not the command line client, etc. You get just enough for your app to work. Apply this concept to say a dependancy that might have an initscript to start a service, you now have less services running. The initscript to start a service would be in the :runtime component which wouldn’t be installed (unless it is needed).

Could you explain a scenario in detail where Conary is a better solution?
– Of course as I described above, Conary is extremely powerful and works well in many situations. Let me touch on something I didn’t mention above, deriving. Lets say you have a need for customizing Linux systems for a large deployment, personal use, corporate standards, etc. You could very easily derive the distro and only maintain your changes and define exactly what packages you want included. The tools make this very easy, as I described the situation with Shuttle. You can also control when updates go out to the users. By deriving, you not only have the flexibility to change the distro, but you can control releasing updates. You can test updates we push out along with your changes on your own devel or qa branches. When you are ready to push these changes out you simple “promote” the group that defines your distro. This is a single atomic operation that puts the updated packages on your release branch for users to update from.

Do you smoke a pipe or have a beard?
– I do have a “Van Dyke”, usually confused with the term goattee. My former boss pointed that out when I was interviewing, and sure enough he was right.

rBuilder and rMake are important pieces of the puzzle. How do they work? What other tools are used in creating a platform?
– rBuilder is what hosts our software repositories, builds installable and live images, hosts our downloads, and much more. rMake is a build tool we use to build the distro. It builds packages in a pristine environment, specifically your target environment. We can do very large builds, even the entire distro and rMake will determine the build order and do the right thing. rMake can then take the resulting build and commit it to a repository in one operations.

rBuilder Online seems very interesting. What does it do?
– It is the online (public) version of rBuilder. rBuilder online is free for use for anything that you can freely redistribute. Our repositories are on rBO, we manage our user accounts (for committers), build images, and provides downloads all via rBO.

Does Foresight Linux fall into any “niches”? Is it for end users who are familiar with Linux? First time users?
– This is a tough question, I really want that niche to be new Linux users. I try very hard to push things down the path of “it just works”. I think we are there now, which makes me quite happy. Foresight is of course ultimately configurable for those power users… you know how Linux users [are].

Where do you see Foresight headed in the future?
– Shipped pre-loaded by more vendors and of course used.

Lastly, how can interested parties get in touch and lend their support?
– IRC and our mailing lists, http://foresightlinux.org/contact.html

Thanks for your time Ken, it is appreciated!

I’ve tried out Foresight Linux 2.0 which was very recently released. It’s pretty damn fantastic, if I say so myself. The entire 1.1GB DVD was a really fast installation, thanks to their new TAR-based installation. After answering the basic installation questions, it was completely setup and ready to reboot in about 6 minutes flat – that’s freakin FAST for an installation! I remember reading awhile back that Windows Vista was supposed to have something like this, they called it an “disc image based installer,” but last time I installed on this same machine it must have taken 45 minutes to complete.

If you’re looking for a user-friendly distro that your uninitiated father, mother, boyfriend, girlfriend, or best friend can use, I agree with Ken that Foresight should be on your short list of distributions to consider. If you’re interested in specs and ordering a Shuttle KPC pre-loaded with Foresight Linux for yourself or someone you love, hit the Newegg banner on the top right, and search for “Shuttle KPC”

shuttle-kpc.png

Categories
Interview Linux

Interview with gOS Founder: “Linux For Human Beings (Who Shop At WAL*MART)”

My first impression of gOS is “Gee, I thought I liked Google.” To put this into perspective, on the back of my car there is a license plate frame with the words “I’m Feeling Lucky.”

This week, WalMart has begun selling a new computer called the gPC for the price of $199. Instead of using Microsoft Windows, this incredibly inexpensive Linux-based computer runs an operating system which is fittingly called “gOS”.

At first look, the systems specifications seem pretty meager, until you have a gander at the list of applications. Instead of utilizing applications on the computer locally, the gPC leverages online applications that are delivered via web browser, such as Google Docs and Spreadsheets. This is an absolutely brilliant idea. All you need is a fast internet connection (and a monitor) to use the computer.

I was able to catch up with David Liu, founder of the gOS project, and ask him some questions about his brainchild.

——————————————————-

Using Web 2.0 applications to form the core of an operating system is genius. When did you realize this it was possible?

Well, I guess a couple things happened… I got interested in Google applications, especially docs and spreadsheets, presentations; and originally, I wanted to create my idea of what a Google OS would look like.. if there were such a mythical OS. As I started looking around at all the Google applications out there, I realized that all of our “computing” could eventually be done in the Google cloud. We just needed an OS that looked really good and pointed people to Google in a really friendly, intelligent way. After seeing this, I got excited because I saw it was also commercially viable for the mainstream end user… Google makes Linux familiar.

How long has gOS been in development?

The Enlightenment windows manager plays a big part in this, and most of our team is from the Enlightenment community. That’s been going on for a long time. gOS is a little less than six months

Why build on Ubuntu, rather than another distribution natively based on Enlightenment?

I can’t comment officially on that but there is a good reason for it. Basically it has to do with the Ubuntu community and vision. I like their mantra “Linux for human beings.” I wanted to take it further.. more like “Linux for human beings who shop at Wal-Mart” (…”and who probably have never heard of Linux”) They’ve done a great job of getting the community behind this, and productively so.

How does Faqly tie into the Operating System?

Faqly is a people powered help page. In the spirit of open source, it’s a place for the gOS community can ask and answer questions for each other. For end users, they can ask about how to do certain things. For developers, they can help answer (or ask the harder questions for fellow developers, and the core team at gOS) It’s a nice place for developers to get more in touch with end users too. I think we’re attracting developers who want to see open source into the mainstream, so everything we do has a special purpose.. even a little thing like using faqly for our “F1 Help”

Similar in theory to an FAQ wiki, except much easier to use, right?

Yes, more centered around people helping people, not just a page of information co-authored by the community… essentially the same, but the interaction design and feeling of it is just more community. Faqly is still in alpha mode, and we’re the first and only group to use it yet. They’ll launch in the next month or so probably. I think faqly can hit it off with the open source community pretty well, but will be open to working with other websites too.

Why did you place Facebook on the desktop instead of another social networking site like MySpace or Orkut?

We liked the developer platform and because we just use Facebook more in our community. Everex partnered with Facebook on getting us the icon.. that helped too.

Is there a difference between what is available via download verses what ships on the gPC?

The difference is in proprietary codecs, on the gPC, you can watch DVDs, play MP3s, etc. On the downloadable version, we’ve removed those.

Was Google cooperative towards the idea?

Everex and Google had a signed agreement for us to preload the Google toolbar. I actually went to Google yesterday to demo the real gPC out of the box, literally (i took one from the line). It’s not an official “google pc” or “google os”, it is what I think one should look like though. Google knew what we were doing, we showed them screenshots mid development, etc. We’ll keep our contacts there updated as we work on the next gPC with an improved gOS.

Please don’t sell out to Microsoft.

Oh yeah… we won’t.

Thanks for you time.

Thanks also. I hope this will get more developers excited and on board with us. I think it will be a fun ride.

——————————————————-

I’d like to extend a special thanks to David Liu for interviewing with me. For those of you wishing to help out, you can find the developer section on http://www.thinkgos.com/.

Let’s take a quick look at gOS and see just exactly what it has to offer. The “Favorite Applications” that appear in the task bar along the bottom of the screen are as follows:gos.png

  1. Firefox
  2. Google Mail
  3. Google News
  4. Google Calendar
  5. Google Maps
  6. Google Docs and Spreadsheets
  7. Google Product Search
  8. Blogger
  9. YouTube
  10. Facebook
  11. Faqly
  12. Meebo
  13. Rythmbox
  14. Skype
  15. Wikipedia
  16. Xine

Other applications which are loaded include GIMP for photo editing, and the excellent OpenOffice.org 2.2 office suite. The task bar is extremely easy to use – simply click an icon and Firefox opens up the application in most cases. The Google Toolbar is bundled with Firefox as well.

If you need another reason to buy, 1 year of free 24×7 technical support comes with purchase of a gPC. That’s more than some companies offer on computers that cost hundreds of dollars more.

gpc.png

Hardware Specifications

  • 1.5GHz, VIA C7ยฎ-D Processor
  • 512MB DDR2 533MHz SDRAM
  • 80GB Hard Disk Drive
  • DVD-ROM/D-RW Optical Drive
  • VIA UniChrome Pro IGP Graphics
  • Realtek 6-Channel Audio
  • 10/100 Ethernet Port
  • DB 15-Pin VGA Port
  • Six USB 2.0 Ports
  • RJ-11 Port
  • Headphone/Line-Out Port
  • Two Microphone/Line-In Ports
  • Serial Port
  • Parallel Port
  • Keyboard
  • Mouse
  • Amplified Stereo Speakers

In the end, gOS (and by default, the gPC) is an extremely functional system that hits the sweet spot of the “online desktop” clichรฉ with professional quality, utilizing Google Applications in a easy to use and graphically rich environment. If you’re interested in trying out Linux for the first time, I would suggest downloading gOS or checking out the gPC at Walmart.

Woohoo, I got linked by Techcrunch.