Tiny Core Linux

Tiny Core Base => TCB Q&A Forum => Topic started by: Adam on March 22, 2017, 07:40:14 AM

Title: How to install Desktop GUI
Post by: Adam on March 22, 2017, 07:40:14 AM
Hi all,

First of all, thanks for the great job on Tiny Core. I've been using it for a while and very happy with the performance (lightweight and super fast).

This is the image that I use.
http://tinycorelinux.net/7.x/x86/release/Core-current.iso

Initially, Desktop GUI was not required as I can do all my stuff in CLI. However, it seems like Desktop GUI is required now.

Code: [Select]
tc@box:~$ startx
-sh: startx: not found
tc@box:~$

As usual, I did a quick google and found this.
https://www.reddit.com/r/linux/comments/3ht3ew/cmd_to_start_running_linux_tiny_core/

This was one of the suggestions and I tried that.
Quote
[–]1armsteve 3 points 1 year ago

off the top of my head try startx. usually boots your GUI. if it's installed.

If not, you need to download Xprogs.gz and Xlibs.gz and put them in your /tce folder (not your tce/optional folder).

Unfortunately, I'm getting another error message.

Code: [Select]
tc@box:~$ startx
cat: can't open '/etc/sysconfig/Xserver': No such file or directory

tc@box:~$

I would like to have CLI as default login as for now and GUI as an option.
Please let me know how to install the Desktop GUI in core Linux or share the link if there is any. Thanks.
Title: Re: How to install Desktop GUI
Post by: gerald_clark on March 22, 2017, 07:55:21 AM
This is covered in the wiki.
http://wiki.tinycorelinux.net/wiki:adding_a_desktop_to_microcore
That should get you running.
Title: Re: How to install Desktop GUI
Post by: Adam on March 22, 2017, 08:01:52 AM
This is covered in the wiki.
http://wiki.tinycorelinux.net/wiki:adding_a_desktop_to_microcore
That should get you running.

Thanks gerald_clark.
Btw, problem resolved. Found this link
http://forum.tinycorelinux.net/index.php/topic,18224.msg110684.html#msg110684

Here is the quick solution
Code: [Select]
tce-load -wi Xvesa.tcz Xlibs.tcz Xprogs.tcz aterm.tcz flwm_topside.tcz wbar.tcz
Full installation
Code: [Select]
tc@box:~$ tce-load -wi Xvesa.tcz Xlibs.tcz Xprogs.tcz aterm.tcz flwm_topside.tcz wbar.tcz
Xvesa is already installed!
Xlibs.tcz.dep OK
libXfont.tcz.dep OK
libXi.tcz.dep OK
libXext.tcz.dep OK
libX11.tcz.dep OK
libxcb.tcz.dep OK
libXmu.tcz.dep OK
libXt.tcz.dep OK
libXpm.tcz.dep OK
libXrandr.tcz.dep OK
libXrender.tcz.dep OK
Downloading: libXdmcp.tcz
Xprogs.tcz.dep OK
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
wget: server returned error: HTTP/1.1 416 Requested Range Not Satisfiable
libXdmcp.tcz: OK
fltk-1.3.tcz.dep OK
Downloading: libXau.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
libXau.tcz           100% |*******************************************************************************************************************|  8192   0:00:00 ETA
libXau.tcz: OK
Downloading: libxcb.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
flwm_topside.tcz.dep OK
libxcb.tcz             3% |****                                                                                                               | 10416   0:00:24 ETAwbar.tcz.dep OK
libxcb.tcz           100% |*******************************************************************************************************************|   256k  0:00:00 ETA
libxcb.tcz: OK
Downloading: libX11.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
libX11.tcz           100% |*******************************************************************************************************************|   892k  0:00:00 ETA
libX11.tcz: OK
Downloading: libXrender.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
libXrender.tcz       100% |*******************************************************************************************************************| 16384   0:00:00 ETA
libXrender.tcz: OK
Downloading: libXext.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
libXext.tcz          100% |*******************************************************************************************************************| 24576   0:00:00 ETA
libXext.tcz: OK
Downloading: libXrandr.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
libXrandr.tcz        100% |*******************************************************************************************************************| 16384   0:00:00 ETA
libXrandr.tcz: OK
Downloading: libXpm.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
libXpm.tcz           100% |*******************************************************************************************************************| 45056   0:00:00 ETA
libXpm.tcz: OK
Downloading: libSM.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
libSM.tcz            100% |*******************************************************************************************************************| 12288   0:00:00 ETA
libSM.tcz: OK
Downloading: libICE.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
libICE.tcz           100% |*******************************************************************************************************************| 40960   0:00:00 ETA
libICE.tcz: OK
Downloading: libXt.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
libXt.tcz            100% |*******************************************************************************************************************|   144k  0:00:00 ETA
libXt.tcz: OK
Downloading: libXmu.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
libXmu.tcz           100% |*******************************************************************************************************************| 45056   0:00:00 ETA
libXmu.tcz: OK
Downloading: libXi.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
libXi.tcz            100% |*******************************************************************************************************************| 24576   0:00:00 ETA
libXi.tcz: OK
Downloading: libfontenc.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
libfontenc.tcz       100% |*******************************************************************************************************************| 12288   0:00:00 ETA
libfontenc.tcz: OK
Downloading: libXfont.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
libXfont.tcz         100% |*******************************************************************************************************************|   104k  0:00:00 ETA
libXfont.tcz: OK
Downloading: Xlibs.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
Xlibs.tcz            100% |*******************************************************************************************************************|  1232k  0:00:00 ETA
Xlibs.tcz: OK
Downloading: fltk-1.3.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
fltk-1.3.tcz         100% |*******************************************************************************************************************|   440k  0:00:00 ETA
fltk-1.3.tcz: OK
Downloading: Xprogs.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
Xprogs.tcz           100% |*******************************************************************************************************************|   112k  0:00:00 ETA
Xprogs.tcz: OK
Downloading: aterm.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
aterm.tcz            100% |*******************************************************************************************************************| 53248   0:00:00 ETA
aterm.tcz: OK
Downloading: flwm_topside.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
flwm_topside.tcz     100% |*******************************************************************************************************************| 24576   0:00:00 ETA
flwm_topside.tcz: OK
Downloading: wbar.tcz
Connecting to repo.tinycorelinux.net (89.22.99.37:80)
wbar.tcz             100% |*******************************************************************************************************************| 36864   0:00:00 ETA
wbar.tcz: OK
tc@box:~$

Then, startx  :)
Title: Re: How to install Desktop GUI
Post by: Adam on March 22, 2017, 08:11:30 AM
There is 1 small problem. The system will boot to GUI automatically after reboot.
I would like to have CLI as default login, not GUI.
GUI should be an option with startx.

Any idea how to do this?
Title: Re: How to install Desktop GUI
Post by: polikuo on March 22, 2017, 08:12:52 AM
On x86, there are three Xserver available: Xvesa, Xfbdev, Xorg (On x86_64 though, only Xfbdev and Xorg)
Xvesa is about the same size as Xfbdev while Xorg is much much bigger...

Xvesa should be enough for most machine.
Xfbdev (tinyX) can be buggy on some machine.
Xorg provides the best quality.

You'll need a desktop manager (flwm, openbox, hackedbox and more)

There is 1 small problem. The system will boot to GUI automatically after reboot.
I would like to have CLI as default login, not GUI.
GUI should be an option with startx.

Any idea how to do this?

Use boot code "text"
Title: Re: How to install Desktop GUI
Post by: Adam on March 22, 2017, 08:18:36 AM
Use boot code "text"
Thanks polikuo.
I found exactly the same tips here .... http://wiki.tinycorelinux.net/wiki:adding_a_desktop_to_microcore

Quote
You can boot to the CLI by using the bootcode text.

The problem is where/how to change/modify the bootcode text?
Title: Re: How to install Desktop GUI
Post by: gerald_clark on March 22, 2017, 08:24:35 AM
You should read the book: http://tinycorelinux.net/book.html
You will find answers to most of your questions there.
Title: Re: How to install Desktop GUI
Post by: polikuo on March 22, 2017, 08:25:09 AM
The problem is where/how to change/modify the bootcode text?

How did you install tiny core ?
By tc-install --> modify /etc/sysconfig/tcedir/boot/extlinux/extlinux.conf
Any other method --> modify the config file
Title: Re: How to install Desktop GUI
Post by: hiro on March 22, 2017, 08:25:15 AM
in the bootloader. check the isolinux documentation.
Title: Re: How to install Desktop GUI
Post by: Adam on March 22, 2017, 06:28:12 PM
How did you install tiny core ?
Thanks polikuo for your help. I really appreciate it.
http://tinycorelinux.net/install_manual.html

However, some of the info was not not updated, so I've updated it here so that it would be easier to those who are new to tiny core.
https://firewallengineer.wordpress.com/2013/07/30/first-attempt-to-install-tiny-core-linux-to-hard-disk/

By tc-install --> modify /etc/sysconfig/tcedir/boot/extlinux/extlinux.conf
Any other method --> modify the config file

hmmm
Code: [Select]
tc@box:~$ tc-install
-sh: tc-install: not found
tc@box:~$ cat /etc/sysconfig/tcedir/boot/extlinux/extlinux.conf
cat: can't open '/etc/sysconfig/tcedir/boot/extlinux/extlinux.conf': No such file or directory
tc@box:~$

Any other method --> modify the config file
Can you share the location of the config file? Thanks
Title: Re: How to install Desktop GUI
Post by: Adam on March 22, 2017, 06:39:25 PM
You should read the book: http://tinycorelinux.net/book.html
You will find answers to most of your questions there.

Thanks Gerald,
This is the info from the book.

Page 47
Quote
Chapter 10. Bootcodes
explained
Boot codes are a way to configure the system, by giving it information that needs to be available during boot. In this chapter
we will cover each in detail.
The Linux kernel also exposes a set of boot codes; these will not be covered here.
When using the CD, you can enter them at the command line (with the Core ISO) or by pressing tab (with the TinyCore or CorePlus
ISOs) at the desired menu item. On an installed system, they are stored in your bootloader’s configuration file.

For example, with grub 0.97, the file is called menu.lst, and the boot codes are stored on the kernel line:
kernel /boot/vmlinuz quiet showapps

If using extlinux, the file is called extlinux.cfg, and the codes are
stored in the APPEND line:

APPEND initrd=/boot/core.gz quiet showapps

Page 53
Quote
10.16. text - boot to text mode
In case an X server is installed, do not boot to graphical mode. If an X server is not installed, the system will always boot to text mode.
Example:
• text

This is my menu.lst. Are you saying that I should put the bootcode text here?
Quote
tc@box:/$ cat /mnt/sda1/boot/grub/menu.lst
default 0
timeout 0
kernel /boot/vmlinuz quiet
initrd /boot/core.gz
tc@box:/$
Title: Re: How to install Desktop GUI
Post by: Adam on March 22, 2017, 06:42:12 PM
in the bootloader. check the isolinux documentation.
Thanks Hiro,
You're referring to this right?
http://www.syslinux.org/wiki/index.php?title=SYSLINUX
Title: Re: How to install Desktop GUI
Post by: Rich on March 22, 2017, 06:44:59 PM
Hi Adam
Open the  menu.lst  file and add  text  to the line beginning with the word  kernel.
Title: Re: How to install Desktop GUI
Post by: Adam on March 22, 2017, 11:16:58 PM
Hi Adam
Open the  menu.lst  file and add  text  to the line beginning with the word  kernel.

Thanks. Btw, I've written quick solution for this and hopefully this will help those who are new to tiny core.
https://firewallengineer.wordpress.com/2017/03/23/tiny-core-how-to-install-desktop-gui/
Title: Re: How to install Desktop GUI
Post by: hiro on March 23, 2017, 02:27:23 AM
yes, i might be wrong in doing this but i assumed extlinux==sylinux for these purposes.
Title: Re: How to install Desktop GUI
Post by: coreplayer2 on March 23, 2017, 07:02:56 AM
Adam, I don't know if you've figured this out yet but in your version of grub you should put additional commands after "quiet"

This is my menu.lst. Are you saying that I should put the bootcode text here?
Quote
tc@box:/$ cat /mnt/sda1/boot/grub/menu.lst
default 0
timeout 0
kernel /boot/vmlinuz quiet text
initrd /boot/core.gz
tc@box:/$

Also;
Quote
Btw, problem resolved. Found this link
http://forum.tinycorelinux.net/index.php/topic,18224.msg110684.html#msg110684

Here is the quick solution
Code: [Select]
tce-load -wi Xvesa.tcz Xlibs.tcz Xprogs.tcz aterm.tcz flwm_topside.tcz wbar.tcz
This assumes none of the extensions have been previously downloaded,  where tce-load will download and install each extension and their deps.

However, if one of the required extensions has been previously downloaded tce-load will report that *.tcz is already downloaded and will fail to install (the -i switch) and will not be loaded and available to startx

So, better to separate the commands
Code: [Select]
tce-load -w Xvesa.tcz Xlibs.tcz Xprogs.tcz aterm.tcz flwm_topside.tcz wbar.tcz
tce-load -i Xvesa.tcz Xlibs.tcz Xprogs.tcz aterm.tcz flwm_topside.tcz wbar.tcz
Then when you command "startx" all required components will be loaded

Just saying....



If the extensions are not normally loaded via "Onboot.lst" you might want to create a script to call when a desktop gui is desired, in which case use something like
Code: [Select]
list="Xvesa Xlibs Xprogs aterm flwm_topside wbar"
for i in $list; do
  tce-load -w $i
  tce-load -i $i
done
startx