WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: extensions load from iso in VM but not once burned to CD  (Read 15081 times)

Offline tclfan

  • Sr. Member
  • ****
  • Posts: 286
Re: extensions load from iso in VM but not once burned to CD
« Reply #15 on: December 14, 2009, 09:27:04 AM »
I made a cd, as explained here.
http://wiki.tinycorelinux.com/tiki-index.php?page=Integrating_extensions

I ran the cd on a computer with the hard drives disconnected, and it ran with all extensions loaded, and programs working.

I used this computer, running from the cd, to install on a usb drive, and it worked. I ran Tiny Core from this usb drive on another computer, and it worked, with all programs working. (you need appropriate extensions included in the cd to install on a usb drive.

I used a normal tce directory on the cd, not /opt/tce.
Just to make sure I understand: Does this mean you used just /tce on the CD integrated with extensions, not /opt/tce as specified in the procedure in wiki?

Offline roberts

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 7361
  • Founder Emeritus
Re: extensions load from iso in VM but not once burned to CD
« Reply #16 on: December 14, 2009, 11:39:59 AM »
Using the current release of v2.6.1, for the record, it is /opt/tce. As shown in /usr/bin/tce-setup.
Code: [Select]
if [ "$(ls -A /opt/tce)" ]; then                                               
TCEDIR=/opt/tce                       
FILELIST=`ls "$TCEDIR"/*.tc* | grep -E .tc[ez][ml]*$`
for FILE in $FILELIST; do process; done             
fi                                                                                               
I am running a liveCD with jwm in /opt/tce
Code: [Select]
[tc@box:~$ ls -l /opt/tce/
-rw-r--r--    1 root     staff       77824 Dec 14 15:14 jwm.tcz
tc@box:~$
I am not the only one either, here is feedback from QA
Quote
Robert, I have tested to create a remastered microcore.gz that
includes a set of extensions located in /opt/tce. The result so far
looks good :)

Using /opt/tce does not have to be specified via boot options or searched. Using /tce can cause search and specification issues as was previously indicated.


10+ Years Contributing to Linux Open Source Projects.

Offline Guy

  • Hero Member
  • *****
  • Posts: 1089
Re: extensions load from iso in VM but not once burned to CD
« Reply #17 on: December 14, 2009, 03:44:47 PM »
Quote
Just to make sure I understand: Does this mean you used just /tce on the CD integrated with extensions?

Yes


Since then I made another cd, this time using /opt/tce. Still using Tiny Core 2.6.1.

I found when I run this cd on a computer, the programs are not loaded.


With the cd using /tce on the cd, programs are loaded.


Others doing this, post your results.

When using /opt/tce, is there something which needs to be done differently?

For /opt/tce to work, do you need to do a remaster?

Using /tce works just by integrating extensions to an ISO.
http://wiki.tinycorelinux.com/tiki-index.php?page=Integrating_extensions
« Last Edit: December 14, 2009, 04:22:14 PM by Guy »
Many people see what is. Some people see what can be, and make a difference.

Offline roberts

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 7361
  • Founder Emeritus
Re: extensions load from iso in VM but not once burned to CD
« Reply #18 on: December 14, 2009, 04:25:13 PM »
After booting, does ls -l /opt/tce show your extensions?
/opt/tce is inside tinycore.gz and is therefore included in the base filesystem, that way no autoscan./search, or specification is needed.

10+ Years Contributing to Linux Open Source Projects.

Offline danielibarnes

  • Hero Member
  • *****
  • Posts: 548
Re: extensions load from iso in VM but not once burned to CD
« Reply #19 on: December 14, 2009, 04:41:02 PM »
Quote
For /opt/tce to work, do you need to do a remaster?
You can avoid it. Simply create a cpio archive with just an /opt/tce directory and contents. Then add it to your syslinux initrd line:
initrd=/boot/tinycore.gz,/boot/opt_tce.gz

Put opt_tce.gz in the same directory as tinycore.gz and make a new disc.

Offline gerald_clark

  • TinyCore Moderator
  • Hero Member
  • *****
  • Posts: 4254
Re: extensions load from iso in VM but not once burned to CD
« Reply #20 on: December 14, 2009, 04:59:19 PM »
Maybe he wants them mounted, not loaded.

Offline danielibarnes

  • Hero Member
  • *****
  • Posts: 548
Re: extensions load from iso in VM but not once burned to CD
« Reply #21 on: December 14, 2009, 05:31:38 PM »
Quote
Maybe he wants them mounted, not loaded.
Perhaps. It's a practical consideration. New users may not realize at first that mounting extensions on a physical CD keeps the CD mounted (and unremovable). As long as a user has sufficient RAM, loading extensions from /opt/tce will allow the CD to be removed after startup.

Offline roberts

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 7361
  • Founder Emeritus
Re: extensions load from iso in VM but not once burned to CD
« Reply #22 on: December 14, 2009, 06:01:25 PM »
And if autoscaned, or user specified by boot option, your tce folder is pointing to say hdd, the readonly cdrom device, then you have disabled any further easy access to adding more extensions. It is only by unintended consquences that /tce works on the cdrom. The noscan list always intended to not try to scan cdrom and dvd devices. Using /opt/tce either by additional .gz initrd files or inside tinycore.gz will allow a custom cdrom that still will be able to have access to repositories via a regularly defined tce folder.
10+ Years Contributing to Linux Open Source Projects.

Offline Guy

  • Hero Member
  • *****
  • Posts: 1089
Re: extensions load from iso in VM but not once burned to CD
« Reply #23 on: December 14, 2009, 09:56:41 PM »
Quote
After booting, does ls -l /opt/tce show your extensions?

no
Many people see what is. Some people see what can be, and make a difference.

Offline Guy

  • Hero Member
  • *****
  • Posts: 1089
Re: extensions load from iso in VM but not once burned to CD
« Reply #24 on: December 14, 2009, 10:09:17 PM »
I used this method: http://wiki.tinycorelinux.com/tiki-index.php?page=Integrating_extensions

With this method, if you have appropriate extensions on the CD, you can:

1. Run Tiny Core with programs from the CD. For those who just want to run Tiny Core from the CD.

Install Tiny Core on the hard drive
2. Partition the hard drive.
3. Copy Tiny Core from the CD to the hard drive.
4. Copy the tce directory and extensions from the CD to the hard drive.
5. Set up Grub.
6. Set up the MBR.

Install Tiny Core on a USB drive.
7. Install Tiny Core on a USB drive, using the USB Installation tool.
8. Copy the tce directory and extensions from the CD to the USB drive.

This method is relatively easy for new users.

While running from the CD, you can't have a tce directory on the hard drive, and use the appbrowser to download additional extensions.

However, after installing Tiny Core on the hard drive, or USB drive, you can run the computer from the hard drive, or USB drive, and use the appbrowser to download additional extensions.
Many people see what is. Some people see what can be, and make a difference.

Offline Guy

  • Hero Member
  • *****
  • Posts: 1089
Re: extensions load from iso in VM but not once burned to CD
« Reply #25 on: December 14, 2009, 10:34:42 PM »
Quote
For /opt/tce to work, do you need to do a remaster?
You can avoid it. Simply create a cpio archive with just an /opt/tce directory and contents. Then add it to your syslinux initrd line:
initrd=/boot/tinycore.gz,/boot/opt_tce.gz
Put opt_tce.gz in the same directory as tinycore.gz and make a new disc.

This works.

It takes longer to boot. This is a disadvantage for anyone wanting to run Tiny Core from the CD, instead of installing it.

You should be able to do all of the same things with it as the other method, with the added benefit of being able to use the appbrowser to download additional extensions to the tce directory on the hard drive.

To create a CD like this, is more difficult for new users.

When I initially tried this, it worked on one computer but some programs did not work on another. On the computer in which it did not work properly, I discovered I had a tce directory with extensions, and there were incompatibility problems. It loaded both the extensions on the CD and the hard drive.

I haven't tried to use the appbrowser to install additional extensions. I wonder if it will recognize extensions on the CD, and not reinstall them, or double up. This may cause problems if rebooting from the CD, with extensions on the hard drive. I havn't tried it. Just wondering.
Many people see what is. Some people see what can be, and make a difference.

Offline danielibarnes

  • Hero Member
  • *****
  • Posts: 548
Re: extensions load from iso in VM but not once burned to CD
« Reply #26 on: December 14, 2009, 10:56:22 PM »
Quote
It takes longer to boot.
It does take time to copy the extensions to memory. That is the trade-off in order to free up the media from which TC was booted. This is handy if you wish to boot several systems using the same disc. One of the reasons for /opt/tce/ is to load firmware extensions for NICs before the DHCP client starts, so it is has other purposes as well.

Quote
To create a CD like this is more difficult for new users.
I agree. I would suggest new users avoid a CD altogether unless the system used does not allow booting from USB devices. If available, a USB drive is far simpler, but creating a /tce/ directory on it for extensions means it cannot be removed. I figure most people will be okay with that.

Quote
I wonder if it will recognize extensions on the CD, and not reinstall them, or double up.
When an extension is installed, it creates a file in the /usr/local/tce.installed/ directory. The appbrowser will not try to reinstall an extension if it detects this file.

Offline tclfan

  • Sr. Member
  • ****
  • Posts: 286
Re: extensions load from iso in VM but not once burned to CD
« Reply #27 on: December 15, 2009, 11:03:11 AM »
[
Quote
To create a CD like this is more difficult for new users.
I agree. I would suggest new users avoid a CD altogether unless the system used does not allow booting from USB devices. If available, a USB drive is far simpler, but creating a /tce/ directory on it for extensions means it cannot be removed. I figure most people will be okay with that.
I find this thread very helpful to understand this mechanism, particularly clearly defined by roberts and expanded on experience and examples of Guy and Danielibarnes.
Taking from here, it seems that a quick and easy way to remaster CD to integrate required extensions would be quite useful for end users.
E.g. Zenwalk (granted a much bigger distribution, but of the 'light and efficient' type) has an extremely easy way to remaster from a gui interface, dumping the entire running system to create a live ISO, including user configurations.
Considering that TC is modular architecture and composing various pieces to build a target system is modus operandi for TC, such easy remaster function seems more important than for other distributions.
As Guy pointed out and I agree, the capability of running from CD is very important and often cannot be replaced by usb installs. However the desired integration is achieved as defined by roberts and explained by danielibarnes, therefore it appears to require relatively complicated remastering procedure for end user.

Offline roberts

  • Retired Admins
  • Hero Member
  • *****
  • Posts: 7361
  • Founder Emeritus
Re: extensions load from iso in VM but not once burned to CD
« Reply #28 on: December 15, 2009, 11:34:36 PM »
True. It is not as easy. But it is only common sense that a dynamic distro is more complicated and requires more effort than a static one. Most distros are static, only upon a scatter mode installation does one get the ability to add more applications via their package manager. If you wish to maintain the dynamic features of TC then you should use the recommended method as I and Daniel have pointed out.

Comparing a static distro to TC's dynamic nature is not a fair comparision. But if your goal is to bypass the dynamic features and a make yourself a static build then so be it. Just be aware of it. And when a your custom CD tried to use the dynamic features and it fails because your tce folder is frozen on the CD, then what; more hacks. Seems to me to be more confusing to anyone who used such CD as many things will not work.

Static builds such as this were never intended, see
Code: [Select]
cat  /etc/init.d/tc_noscan.lst 
cdrom
swap
pts
fd
ntfs
I never intended the dynamic tce folder to be on any of the above devices.
It is the reason for /opt/tce, and has been pointed out, several boot loaders are able to load multiple cpio archives. It has also been pointed out the /opt/tce is really for extra modules, drivers, etc, the goal being to maintain TC's dynamic capabilities.

Besides, I thought CDs were on their way out.
10+ Years Contributing to Linux Open Source Projects.

Offline tclfan

  • Sr. Member
  • ****
  • Posts: 286
Re: extensions load from iso in VM but not once burned to CD
« Reply #29 on: December 16, 2009, 12:55:05 PM »
Comparing a static distro to TC's dynamic nature is not a fair comparision. But if your goal is to bypass the dynamic features and a make yourself a static build then so be it. Just be aware of it. And when a your custom CD tried to use the dynamic features and it fails because your tce folder is frozen on the CD, then what; more hacks. Seems to me to be more confusing to anyone who used such CD as many things will not work.

Besides, I thought CDs were on their way out.
My yes goes to this and the rest of the post. However turning dynamic into static build was not my objective. If I understand, pre-configuring extensions into /opt/tce and remastering does not mean making distro static. It retains dynamic nature, just loads those extensions upon boot. The resulting TCL is as dynamic as the original base.
Going static would be to just put /tce on the CD, which is trivial process, but remastering a new LiveCD with extensions properly integrated in /opt/tce appears to be much more complex for end user.
The value of this however would be enormous for the user: Most may not want to rebuild from scratch each time, but like to start from certain pre-configured favourite applications and settings, e.g. Xorg, LXDE, Firefox, etc. as their new favourite base. This could be properly integrated in /opt/tce and burned to new LiveCD. But it is far from being static, additional extensions can be loaded at will just as well as starting with the original base.
On CD being on the way out - I am not sure it will happen any time soon and just perhaps for data storing as USB is more convenient. However there is no commonly recognized standard for booting from usb, all depends on vendor implementation whether and how, and older PC's cannot usb boot at all... Ones we have our TC installed and configured on USB stick it works great, however there is no assurance it will boot as well in another machine... Anyone tried to boot from USB in virtual machine, either VirtualBox or VMplayer? On the other hand CD booting is standard across the board...just put the CD in and press the button...