Tiny Core Linux
Off-Topic => Off-Topic - Tiny Core Lounge => Topic started by: andrew_d_mackenzie on March 04, 2009, 12:40:43 PM
-
I run a non-profit organization (Autelic) that runs projects to advance technology solutions for novices and the elderly.
I am looking for a starting point to build a Linux-based "Web thin client".
I've been very impressed by TinyCore and wanted to ask about using it as the basis for a "thin client" that would:
- boot directly into a browser in full-screen mode (IceWeasel? Don't know if Opera has a full-screen mode?)
- probably want Flash (pending more investigations)
- no window manager
- no pop-up windows or dialogs or tabs - just one main window
- connect to a pre-determined URL where a web-app would reside
It's great that it's got SSH server for remote admin, and I'd like to add x11vnc for remote screen sharing.
I'd like to investigate adding ActiveID USB-key login (or similar), but that's another story...
Questions:
- do the Tiny Core creators mind or encourage me?
- has anything similar been done already on TinyCore?
- I'm assuming this is "off topic" for the Tiny Core team and they don't want to sponsor/host such a project?
- hence that means taking a copy and creating a new project, not a branch or sub-project
- anyone out there interested in helping? (reply here or e-mail info@autelic.org)
Thanks in advance
Andrew
Founder and President
Autelic Association (http://www.autelic.org)
-
Everything in Tiny Core is GPL and all sources are posted for immediate download.
So as long as the GPL is honored I have no issue with your proposed project.
Your project sounds very worthy. Just know that the latest flash requires gtk2 which can be quite large
With Tiny Core you can try out some of our various install modes and see if your target hardware is a good fit.
-
If I may add, here are a couple of configuration tips you may want to try. First, add this line to /opt/bootlocal.sh to enable the ssh server on boot:
/etc/init.d/dropbear start
Then edit the /home/tc/.xsession file to read as this to load no window manager and open Opera to a specific page:
Xvesa -br -mouse /dev/psaux,5 -screen 800x600x16 -shadow -nolisten tcp -I 2>&1 >/dev/null &
exec opera --fullscreen http://www.google.com
I am not fimiliar with x11vnc, or how to obtain permission for Flash redistribution, but maybe these two simple tips can be a start anyway. Opera gives a black screen when hitting F11 when in fullscreen mode without a window manager but returns when hitting F11 again.
-
Some technical points:
- Opera does have a kiosk mode too, in addition to a full-screen mode; you can stop the user from doing certain things
- You most likely do want a window manager, because without one you'll have various issues starting from focus issues and pop-up menus. They can be completely hidden and only left to manage windows, either by configuring one like Jwm or by using a minimalistic one in the first place
Finally, if you'd like to have the possibility to update to a further release of TC, I'd recommend creating all your modifications as a tarball. It might not be possible to have it as a TC extension, since it will likely modify some system and/or user files, but a tarball is fine. It's then very easy to offer an iso that is based on the latest TC and has all your modifications included.
-
Thanks for the encouragement and suggestions.
I'll try and round-up some volunteers who know more about these subjects to try and help me put together a first prototype (probably without flash, from the sounds of it).
If anyone reading this wants to volunteer to help out in any way, then just e-mail us at info@autelic.org
thanks again
Andrew
-
I hope I'm doing the right thing keeping this thread going here. If not, and I should move the discussion somewhere else, then please let me know.
I've done a bit of experimenting, using the remastering instructions published on the web and the earlier posts and things work pretty well. Kiosk mode works well and no messing with plug-ins. Thanks for the tip!
Some notes/questions
- When I added opera, the size of the initrd went from 9M to 17M. Oh well, I guess that's still pretty small...any recomended diets for opera are always welcome.
- any way to avoid the license agreement dialog on opera start-up each time?
- I'm using isolinux boot loader and I throw up a simple image (.rle) while things start loading.
I specify "silent" for kernel line and "quiet" for initrd line.
TinyCore boots so fast I don't think I need to do any other image at a later stage, such as using splashy or usplash.
So my question is:
- is there any way to avoid the console echo/print output such as the ones for loading kernel, loading initrd,
- can I avoid the clear screen and then the print output such as decompressing kernel, and a couple I see from ide init and X?
I tried appending "console=ttyX" (X>1) to boot line but no change
I'd rather just have that simple bitmap for a few seconds, and then boom....the desktop (or browser in my case)....
Thanks again.
Andrew
-
You can avoid the license popup with Opera if you open copy the ~/.opera directory from a session where you opened Opera once and checked the license to the /etc/skel of the remaster. I am away from TC (and Linux) now and don't remember any of the other stuff.
-
The echo statements can be commented pretty easily in tc-config and tc-restore.sh. For the output of isolinux, ie "loading kernel... loading initrd", I'm not sure they can be disabled.
The extension fb-utils has tools to show images and animations on the framebuffer. Nothing's automated, but they could be used along with an added bootcode such as "vga=791" (1024x768 16 bit) to provide a nice-looking boot.
-
It's a bit of shameless self-promotion, but my remaster script at http://forum.tinycorelinux.net/index.php?topic=677.0 (http://forum.tinycorelinux.net/index.php?topic=677.0) may help you build your custom ISO.
To avoid text output, use the "console 0" option in isolinux: http://syslinux.zytor.com/wiki/index.php/SYSLINUX#CONSOLE_flag_val (http://syslinux.zytor.com/wiki/index.php/SYSLINUX#CONSOLE_flag_val) in combination with the "console=ttyS0 vga=0x314" boot parameters. The only text you will see is the ISOLINUX copyright line. You will see the "Tiny Core" boot logo briefly before X starts. If you want less than that, you'll need to rebuild the kernel to disable the boot logo. This isn't isn't as bad as it sounds.
Attached is an example project ("noconsole") using my script as described in above post. It does three things:
1) Custom isolinux.cfg to add "console 0" option and "ssh console=ttyS0 vga=0x314" boot options
2) Custom root filesystem to redirect jwm output to /dev/null and suppress motd display on login
3) Recompile kernel to remove boot logo
Absolutely nothing is displayed after the ISOLINUX copyright message until the X desktop.
Removing support for hardware you know you won't need will help reduce the kernel size.
Daniel
-
- any way to avoid the license agreement dialog on opera start-up each time?
The best way I can think of is to use a different browser. Opera is not free software, and while it is not as restrictive as some, there is a potential for unwanted baggage when you begin redistributing any non-free software.
I'm not saying Opera is bad. Just sayin'.
-
Thanks for the tips folks, I proceed with experiments more or less along the lines of your suggestions.
I´d appreciate more info and advice on the browser question.
- issues having an open source project for this where Opera is the browser (built into an ISO I´d propose)
- alternatives that avoid the issue with opera.
Thanks
-
You could use firefox instead - the extension is called minefield
-
I also like Seamonkey, but like Firefox/Minefield it requires gtk2. Even it's official build is responsive and feels fairly light on my old machines.
-
Thanks for the tips folks, I proceed with experiments more or less along the lines of your suggestions.
I´d appreciate more info and advice on the browser question.
- issues having an open source project for this where Opera is the browser (built into an ISO I´d propose)
- alternatives that avoid the issue with opera.
Thanks
Hi have you made any progress on this? I am developing a project using TC and would like to suppress any console output until X loads, too. Currently experimenting with splashy...
Any feedback about your experience will be greatly appreciated. Thanks!