WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: How to make TCL look for the extensions on every possible drive?  (Read 4093 times)

Offline AITap

  • Newbie
  • *
  • Posts: 5
I'm building a multiboot CD/USB image. Previousely, TCL was very easy to include, because it booted from only two files (kernel and initramfs), which could be placed anywhere I would like.
Now TinyCore consists of kernel, core.gz and some extensions.

The question is: how can I specify the path to the extensions to look on every possible device (both CD and USB drives)? I tried putting /cde/ from original image to /tinycore/ and adding "tce=/tinycore/" kernel parameter, but it didn't help (it shouldn't, as I understood after reading /usr/bin/tce-setup).

My multiboot CD image can be installed to USB-drive by simply copying everything to the root of USB drive partition and running "syslinux -d isolinux /dev/sdXY", and I'd like not to change this (e.g. to add anything TCL-specific to the installation script).

// Sorry if my English is not very good.

Offline gerald_clark

  • TinyCore Moderator
  • Hero Member
  • *****
  • Posts: 4254
Re: How to make TCL look for the extensions on every possible drive?
« Reply #1 on: January 07, 2012, 12:18:59 PM »
Do not use a cde directory.
Core will scan all drives looking for a tce directory.
When it finds the tce directory, it looks for a onboot.lst file, and loads listed extensions from tce/optional/.
If you want it to scan USB drives you need a 'waitusb=5' boot option.

Read the installation instructions linked on the top of the main page.
http://distro.ibiblio.org/tinycorelinux/install.html

Offline AITap

  • Newbie
  • *
  • Posts: 5
Re: How to make TCL look for the extensions on every possible drive?
« Reply #2 on: January 07, 2012, 02:30:21 PM »
Quote
Core will scan all drives looking for a tce directory.
When it finds the tce directory, it looks for a onboot.lst file, and loads listed extensions from tce/optional/.

Thanks for your reply!

I'm using this tinycore.cfg to boot TinyCore:
Code: [Select]
MENU BEGIN tinycore
F1 tinycore1.msg
F2 tinycore2.msg
F3 tinycore3.msg
F4 tinycore4.msg
<...>
LABEL tinycore
MENU LABEL Start Tiny Core (default)
KERNEL /tce/vmlinuz
APPEND quiet
INITRD /tce/core.gz
TEXT HELP
Press F1..F4 to get additional information
ENDTEXT

LABEL tinycore-wait
MENU LABEL Wait 10s for slow USB devices
KERNEL /tce/vmlinuz
APPEND quiet waitusb=10
INITRD /tce/core.gz
<...>
...and this Makefile target to build my installation:
Code: [Select]
tinycore: tinycore-latest
        @echo -e '\e[1m*** tinycore: installing\e[0m'
        $(MOUNT) -o loop $(DOWNLOAD)/tinycore.iso $(MOUNTPOINT)
        rm -rvf $(CONTENTS)/tce
        mkdir -pv $(CONTENTS)/tce
        set -e; for file in vmlinuz core.gz; do cp -v $(MOUNTPOINT)/boot/$$file $(CONTENTS)/tce; done
        cp -rv $(MOUNTPOINT)/cde/* $(CONTENTS)/tce
        @echo -e '\e[1m*** tinycore: copying configs\e[0m'
        cp -v $(CONFIGS)/tinycore* $(CONTENTS)/isolinux/
        $(UMOUNT) $(MOUNTPOINT)
        touch tinycore

...so I get these files in my ISO image/on my USB drive:
Code: [Select]
$ find tce/
tce/
tce/vmlinuz
tce/core.gz
tce/copy2fs.lst
tce/onboot.lst
tce/optional
tce/optional/fltk-1.10.tcz
tce/optional/fltk-1.10.tcz.md5.txt
tce/optional/flwm_topside.tcz
tce/optional/flwm_topside.tcz.md5.txt
tce/optional/wbar.tcz
tce/optional/wbar.tcz.md5.txt
tce/optional/Xlibs.tcz
tce/optional/Xlibs.tcz.md5.txt
tce/optional/Xprogs.tcz
tce/optional/Xprogs.tcz.md5.txt
tce/optional/Xvesa.tcz
tce/optional/Xvesa.tcz.md5.txt
tce/xbase.lst

But when I build the ISO image and try to boot from it (qemu -cdrom image.iso), TinyCore won't load any extensions. Booting from USB with the same file structure, however, works normally.

What am I doing wrong?

Offline gerald_clark

  • TinyCore Moderator
  • Hero Member
  • *****
  • Posts: 4254
Re: How to make TCL look for the extensions on every possible drive?
« Reply #3 on: January 07, 2012, 02:33:21 PM »
mv xbase.lst onboot.lst

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 11049
Re: How to make TCL look for the extensions on every possible drive?
« Reply #4 on: January 07, 2012, 02:43:22 PM »
A tce dir on read-only media is skipped, IIRC. Make a symlink tce->cde?

Though then you'd need to remove the cde bootcode from an usb boot.
The only barriers that can stop you are the ones you create yourself.

Offline AITap

  • Newbie
  • *
  • Posts: 5
Re: How to make TCL look for the extensions on every possible drive?
« Reply #5 on: January 08, 2012, 04:32:42 PM »
Thanks for your help!

I made a symlink $(CONTENTS)/tce -> "cde" and added a special menu entry for booting from CD (special USB entry already exists, as long as my thumbdrive requires some time to initialise, so this decision is not completely wrong), and everything seems to work now. Even more, TinyCore boots from my USB-stick with the "cde" option too.

Offline gerald_clark

  • TinyCore Moderator
  • Hero Member
  • *****
  • Posts: 4254
Re: How to make TCL look for the extensions on every possible drive?
« Reply #6 on: January 08, 2012, 05:22:59 PM »
cde should only be used with a CD.