Tiny Core Linux

General TC => General TC Talk => Topic started by: rminnich on January 12, 2013, 10:31:58 AM

Title: Tinycore on a Chromebook
Post by: rminnich on January 12, 2013, 10:31:58 AM
Folks, we've been running various distros in chroots on chromebooks (just google 'google chromebook' :-). Note this means you don't need a kernel, or drivers, or wifi, or whatever: just userland.

Some use ubuntu: https://github.com/dnschneid/crouton
Some use Arch: http://goo.gl/Ry0kx

but in all cases, these installs make substantive changes to the chromebook 'stateful' partition, because they install lots of files related to the packages, which for various reasons would best be avoided.

I've built a distro around tinycore in the past that became a tinycore package (https://groups.google.com/group/comp.os.plan9/browse_thread/thread/afaf6058225b88bd) and am a fan.

I think that the tinycore package model is almost ideal for a chromebook. My goal would be to have a script that takes part of the boot path each time the chroot is set up, such that the packages are in essence loaded anew each time, as in the tinycore model. Then, the only really persistent state would be the user files and the list of packages the user needs (which could be stored in ... the user's files). We'd be kind of running in the 'cloud' model, I guess. Also, the mount-squashfs-on-loopback tinycore model is ideal for chromebooks, which have less storage than people are used to (16 GB on the ARM, for example). In the longer term, the user files would be backed to a cloud store.

I'm a bit unsure on how to set this script up. We're not going to boot, we just want to do the part that sets up the packages. Before I waste a lot of time doing it wrong, I was wondering if anyone here had suggestions on how to do it right ... comments welcome. I have a feeling this is simple, but wanted to make sure. My current script for arch does something like this

unshare /bin/bash
set up bind mounts for /dev, /proc, etc.
Do squashfs mounts to instantiate packages
run the chroot
# once chroot exits, bind mounts disappear since we did them in a new namespace.

It's that 'run the setup' part that I hope to work out. I assume it's just a bunch of mounts, but is there more?

Thanks again for tinycore linux!

ron
Title: Re: Tinycore on a Chromebook
Post by: Rich on January 12, 2013, 10:48:15 AM
Hi rminnich
There are several scripts in  /usr/bin  that deal with loading/mounting extensions. Their names begin with  tce-  and
may be of some help to you.
Title: Re: Tinycore on a Chromebook
Post by: rminnich on January 12, 2013, 11:06:24 AM
Thanks for the reply. Hoping not to seem too dense, it seemed to me that in the chroot, I need merely run those scripts across the set of packages and I'd be ready. Any gotchas I should keep in mind?

ron
Title: Re: Tinycore on a Chromebook
Post by: Rich on January 12, 2013, 11:21:42 AM
Hi rminnich
I don't have any experience in working in a chroot environment, but maybe this overview:
http://tinycorelinux.net/architecture.html
could help you to determine things to watch out for.
Title: Re: Tinycore on a Chromebook
Post by: tinypoodle on January 12, 2013, 09:16:05 PM
Are you planning to run an X server on the chroot or not?
Title: Re: Tinycore on a Chromebook
Post by: rminnich on January 13, 2013, 12:29:14 PM
yes, X is needed.
Title: Re: Tinycore on a Chromebook
Post by: tinypoodle on January 13, 2013, 02:11:41 PM
I had been running TC in a chroot on top of a different TC version but it's quite some time ago.
As I can remember, there was some issue about X not running out of the box, which however could be managed with some manual fiddling.
Title: Re: Tinycore on a Chromebook
Post by: bmarkus on January 14, 2013, 05:15:03 AM
Folks, we've been running various distros in chroots on chromebooks (just google 'google chromebook' :-). Note this means you don't need a kernel, or drivers, or wifi, or whatever: just userland.

Some use ubuntu: https://github.com/dnschneid/crouton
Some use Arch: http://goo.gl/Ry0kx

but in all cases, these installs make substantive changes to the chromebook 'stateful' partition, because they install lots of files related to the packages, which for various reasons would best be avoided.



openSUSE as well:

http://news.opensuse.org/2013/01/08/opening-the-can-initial-support-for-opensuse-on-the-arm-chromebook/
Title: Re: Tinycore on a Chromebook
Post by: Zendrael on January 14, 2013, 11:07:23 AM
I would like to see Core running on the ARM chromebook.