WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: microcore_v2.8rc3  (Read 15792 times)

Offline alu

  • Sr. Member
  • ****
  • Posts: 429
Re: microcore_v2.8rc3
« Reply #15 on: January 18, 2010, 10:10:25 AM »
i get it slowly; what i have found until now:

- placing any tcz extension in a /tce directory causes issues; in my machine, those extensions won't be loaded, and then i can't execute any script; so, it seems to be compulsory to place the extensions in /tce/optional directory and to symlink those needed at boot; that was not clear for me;

- placing the core.gz extension in /tce makes them loaded at boot; if i type 'base restore=hda1' in my bootline, X won't be loaded as other tcz extensions symlinked to /tce; i get a prompt line, as i want it, but the command that i have placed in bootlocal.sh (as the one to change the keyboard layout from us to another layout) won't be executed because de corresponding extension has not been loaded

to sum up: if i boot mc without base, and with restore=hda1 in my boot line, i am directly in X; if i boot with base and with restore=hda1, i have to run bootlocal.sh again in order to have the commands that i have written in bootlocal.sh executed; the behavior of 2.8rc2 was for me better, because i can boot without base and with restore=hda1 in my bootline, while keeping the possibility to load the core extension later (with a script), and while having all commands in bootlocal.sh executed at boot.

Offline roberts

  • Administrator
  • Hero Member
  • *****
  • Posts: 7361
  • Founder Emeritus
Re: microcore_v2.8rc3
« Reply #16 on: January 18, 2010, 10:18:17 AM »
Are you suggesting to load X required extensions without loading X ?
There is no way to know by extension name which extensions would only apply to a CLI envirnoment.
I would think there would be so few CLI only that the way you are doing via /opt/bootlocal is perhaps the way.
10+ Years Contributing to Linux Open Source Projects.

Offline alu

  • Sr. Member
  • ****
  • Posts: 429
Re: microcore_v2.8rc3
« Reply #17 on: January 18, 2010, 10:42:58 AM »
i should be more accurate:

- with mc 2.8rc2, i was booting with the following bootline:

kernel /boot/bzImage swapfile noicons embed nodhcp restore=hda1 vga=792 quiet

i kept my backup in /mnt/hda1; i had only two tcz extension in /mnt/hda1/tce, which were bash.tcz and kmaps tcz; my *.core.tcz extensions were place in /mnt/hda1/tcz/X/; and these are my commands in bootlocal.sh

loadkmap < /usr/share/kmap/fr_CH-latin1.kmap
/mnt/hda1/ln       <---- a script making symlinks to /home/tc
tce-load -i /mnt/hda1/tcz/Nano/nano.tcz
tce-load -i /mnt/hda1/tcz/Mc/mc.tcz
tce-load -i /mnt/hda1/tcz/Links/links-2.2.tcz

after the boot process, i get the prompt and i can work at the command line, or load the core extensions and my wm in order to work in X with the usual tce-load -i command (i am using a script for that).

- with 2.8rc3 i have exactly the same structure except for the *.core.gz extensions which are not in /mnt/hda1/tcz/Xvesa, but in /mnt/hda1/tce; booting mc 2.8.rc3 with the bootline above brings me directly in X; booting mc 2.8rc3 with 'base' in the bootline above brings me at the command line, but won't execute the command in bootlocal.sh; i have first to perform a tce-setup in order for bash.tcz, kmaps.tcz and the *.core.gz extensions to be loaded, and second i have to re-run bootlocal.sh in order to have all commands executed.

I would like to keep the behavior of mc 2.8rc2 while keeping the innovative management of extensions which 2.8rc3 brings.

Offline roberts

  • Administrator
  • Hero Member
  • *****
  • Posts: 7361
  • Founder Emeritus
Re: microcore_v2.8rc3
« Reply #18 on: January 18, 2010, 10:51:42 AM »
You have already deviated quite a bit from the standard, having each extension in its own directory. The whole point of the new structure is to ensure a single common directory so that updates, whether batch or selective, dependency auditing, etc. can be supported. I can not be expected to support a custom installation via custom user scripts. None of the appsaudit functions would be successful in such a setup.
10+ Years Contributing to Linux Open Source Projects.

Offline alu

  • Sr. Member
  • ****
  • Posts: 429
Re: microcore_v2.8rc3
« Reply #19 on: January 18, 2010, 12:28:56 PM »
i see, and i have moved to standard placement of extensions; appsaudit is nice; however:

if i want to boot mc at the command line without the *.core.gz extensions loaded, and if i want to keep some commands in bootlocal.sh in order, for example, to keep my keyboard layout loaded at boot without the *core.gz extensions loaded, how should i do it ?  i mean, the purpose of mc is to enable the boot without x, and with customized preferences which can be placed in the bootlocal.sh file. Or not?





Offline gerald_clark

  • TinyCore Moderator
  • Hero Member
  • *****
  • Posts: 4254
Re: microcore_v2.8rc3
« Reply #20 on: January 18, 2010, 12:44:38 PM »
Your directory name should be tce, not tcz.
You can use midnight commander to manage symlinks from tce/optional to tce.

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 10957
Re: microcore_v2.8rc3
« Reply #21 on: January 18, 2010, 12:51:33 PM »
If you wish to load some extensions always, even with the base bootcode, just make bootlocal.sh load them first:

tce-load -i /path/to/kmaps.tcz
tce-load -i /path/to/bash.tcz
loadkmap < ....

This shouldn't hurt in a normal boot either, because if already installed tce-load just exits.
The only barriers that can stop you are the ones you create yourself.

Offline alu

  • Sr. Member
  • ****
  • Posts: 429
Re: microcore_v2.8rc3
« Reply #22 on: January 18, 2010, 01:06:25 PM »
at gerald_clark: my folder is /tce, maybe i wrote 'tcz', but it's /tce; my tcz extensions are now in /tce/optional; bash.tcz and kmaps.tcz have been symlinked to /tce.

at curaga: yes, this is already what i do with kmaps.tcz; however, you put me on a possible solution: can i do the following?

- i have kmaps.tcz and bash.tcz symlinked from /tce/optional to /tce;
- i place the *.core.gz extensions in /tce/optional;
- i boot mc without base, and with 'restore=hda1' in order to load my preferences;
- i write in my bootlocal.sh the following lines:

loadkmaps < /user/share....
ln -s /mnt/hda1/tce/optional/Xlibs.core.gz /mnt/hda1/tce
ln -s /mnt/hda1/tce/optional/Xprogs.core.gz /mnt/hda1/tce
ln -s /mnt/hda1/tce/optional/Xvesa.core.gz /mnt/hda1/tce

i assume that i can keep my customize keyboard layout, and that i would have the possibility to run 'tce-setup' in order to load the *.core.gz extension when i need to boot into X? (this is a question)

what do you think? (i don't have the possibility to control it by myself right now, sorry)

EDIT: actually, i think that my main concern is that tce-setup seems to look only in the /tce directory, even if you write full path (as for example: tce-setup /mnt/hda1/tce/optional/Xprogs.core.gz returns an error message).

Offline roberts

  • Administrator
  • Hero Member
  • *****
  • Posts: 7361
  • Founder Emeritus
Re: microcore_v2.8rc3
« Reply #23 on: January 18, 2010, 01:40:32 PM »
.core.gz are not extensions. They are initramfs. tce-setup is not just for core.gz
tce-setup has been in use for many releases.

It has been explained to load your bash and keyboard which are extension via /opt/bootlocal.sh
Change your boot loader to include base

Boot. You have microcore CLI + bash + your keymap.

If you want full X, then run tce-setup, it will load the core.gz from tce folder and your selected tczs via links into tce/optional. You can use MC to update the links for extensions or if in X use appsaudit.

Operationally this is as it was before. Only you never used it before because of your custom setup requiring custom scripts.
10+ Years Contributing to Linux Open Source Projects.

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 14516
Re: microcore_v2.8rc3
« Reply #24 on: January 18, 2010, 05:37:14 PM »
I'm not at a tc machine to try, but wouldn't bootlocal try to run tce-load as root?

Offline maro

  • Hero Member
  • *****
  • Posts: 1228
Re: microcore_v2.8rc3
« Reply #25 on: January 18, 2010, 05:46:52 PM »
@Juanito: I believe that can be resolved with: sudo -u tc tce-load -i ...

Offline alu

  • Sr. Member
  • ****
  • Posts: 429
Re: microcore_v2.8rc3
« Reply #26 on: January 18, 2010, 11:29:44 PM »
adding base in my bootline prevent not only to mount Xprogs.core.gz, Xlibs.core.gz and Xvesa.core.gz stored in /tce (that's fine); it also prevents to mount other extensions not symlinked to /tce that i want to mount at boot with such a line like

tce-load -i /mnt/hda1/tce/optional/nano.tcz

in /opt/bootlocal.sh (i don't add sudo because bootlocal.sh is executed with root privileges at boot) for which i get:

tce-load -i /mnt/hda1/tce/optional/nano.tce not found!

if i don't add base in my bootline, nano is loaded and i get no error message.


Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 14516
Re: microcore_v2.8rc3
« Reply #27 on: January 18, 2010, 11:49:01 PM »
..but the idea of "base" is not to load extensions, no?

Offline alu

  • Sr. Member
  • ****
  • Posts: 429
Re: microcore_v2.8rc3
« Reply #28 on: January 19, 2010, 12:55:17 AM »
according to Robert:

Quote
It has been explained to load your bash and keyboard which are extension via /opt/bootlocal.sh
Change your boot loader to include base

Boot. You have microcore CLI + bash + your keymap.

so my bootline is:

kernel /boot/bzImage swapfile noicons embed nodhcp base restore=hda1 vga=792 quiet

i keep 'restore=hda1' in order to keep my customized bootlocal.sh at boot. i have kmaps.tcz and bash.tcz symlinked from /tce/optional to /tce. the *.core.gz initramfs are in /tce.

in bootlocal.sh, i have the following lines:

loadkmaps < /user/share....   <--------- in order to load my keyboard layout
tce-load -i /mnt/hda1/tce/optional/nano.tcz

and i get:

tce-load -i /mnt/hda1/tce/optional/nano.tcz not found! (it's nano.tcz, not .tce, sorry for the typo in my last post)

kmpas.tcz and bash.tcz as well as the initramfs have not been mounted (but that was expected). So i get mc CLI without bash and without keyboard.

Again, there is nothing wrong with that; i am just saying that if I put 'base' in the boot line, i have mc without the customized preferences written in bootlocal.sh; and if i drop 'base', i can't have mc CLI + customized preferences, i get mc + *.core.gz initramfs + customized preferences.

So, what do i need to do in order to have mc CLI (without the *.core.gz initramfs loaded) + customized preferences as keyboard layout + some useful applications for me as nano or mc directly at boot? For example, do i have to place the *.core.gz initramfs in the /tce/optional directory, and add the following lines to bootlocal.sh:

cp /mnt/hda1/tce/optional/Xprogs.core.gz /mnt/hda1/tce
cp /mnt/hda1/tce/optional/Xlibs.core.gz /mnt/hda1/tce
cp /mnt/hda1/tce/optional/Xvesa.core.gz /mnt/hda1/tce

in order to load the initramfs with 'tce-setup' if needed? I can't test it now (i am at work), but would appreciate any advice.

Offline curaga

  • Administrator
  • Hero Member
  • *****
  • Posts: 10957
Re: microcore_v2.8rc3
« Reply #29 on: January 19, 2010, 06:12:53 AM »
Ah, Juanito is correct. alu, the base code doesn't prevent manual loading of extensions, my fault for forgetting bootlocal.sh ran as root.

su tc -c "tce-load ..."
instead of mere tce-load would run it as user tc. Try it with the base bootcode.
The only barriers that can stop you are the ones you create yourself.