How to have console decorations on Linux Mint (now, easier)

Write tutorials and howtos in here
There are more tutorials here http://community.linuxmint.com/tutorial/welcome
Forum rules
Do not start a support topic here please. Before you post please read this

How to have console decorations on Linux Mint (now, easier)

Postby wuying_ren on Fri Jan 16, 2009 8:47 am

UPDATE 1 (19/01/2009):

- Some minor corrections.
- Uploaded Mint theme again, fixed a problem: nothing appearing when setting resolution to 1024x768 due to a mistake in config file.
- Found what was making kernel packages so big: debug files. Now, you will only need about ~800 MB and your kernel package will be much more small (about 25-30 MB).
- Now it's easier, just install and configure. Added .deb packages for Felicia, working on packages for Elyssa.


UPDATE 2 (22/01/2009):

- Added .deb packages for Elyssa.


Do you want your framebuffer consoles to look like this? (The first screenshot looks like what you'll have on boot, in replacement of usplash)

Image Image

Then, this is your howto. There are two ways: one is easy and funny, the other is a bit more complicated and can be very frustrating...but you can learn some things about kernels :). Anyway, both methods work. Choose whatever you want.

DISCLAIMER: I'm not responsible if anything happens to your installation, computer and/or hamster while following this guide. Just in case... :P

As always, credits are not for me. I've just mixed some how-to's :mrgreen: Credits go to spock for creating and maintaining this awesome kernel patch, and for all the people working with him. Also, credits for Jean-Damien Durand for porting fbcondecor to Debian. And also for anyone I've missed to mention.

- "I'll take the blue pill. I don't want to patch or compile anything."

Ok, then download my packages

- Felicia: kernel_image(25 MB) kernel_headers(6.5 MB)
- Elyssa: kernel_image(19 MB) kernel_headers(9 MB)

Now go straight to step 12 on the red pill section :)

- "I'll take the red pill. Patching sounds interesting."

It's a bit long, but it is very easy. This guide will help you patch and compile a custom kernel with fbcondecor support, but with Mint/Ubuntu default configuration. So, we are not going to re-compile a kernel from scratch nor building a custom configuration. Feel free to do on your own.

WARNING: You'll need ~800MB (> 4GB if you keep using debug files) of free disk space for compiling kernel. Please, check that you have enough space on your root partition. If you have a separated /boot partition, you'll need also some additional space there for the custom kernel.

This howto is compatible with (and has been tested on) Elyssa and Felicia. But it should work with future releases as well as with past ones, choosing the correct fbcondecor patch from spock's website.

Ok, let's go! (Filenames are for reference, they could be different on your system depending on your configuration).

1. First of all, we'll need some packages (build-essential should come installed by default)...

Code: Select all
sudo apt-get install linux-source patch kernel-package libncurses5-dev build-essential


2. Once finished, we'll have a .tar.bz2 package with the kernel source on /usr/src. Go to /usr/src, and untar it:

Code: Select all
cd /usr/src
sudo tar xvjf linux-source-2.6.27.tar.bz2


In Elyssa:
Code: Select all
sudo tar xvjf linux-source-2.6.24.tar.bz2


3. Create a symbolic link, to simplify things

Code: Select all
sudo ln -s linux-source-2.6.27 linux


In Elyssa:
Code: Select all
sudo ln -s linux-source-2.6.24 linux


4. Download fbcondecor patch from spock's website. Choose the one that matches your kernel version:

Code: Select all
sudo wget http://dev.gentoo.org/~spock/projects/fbcondecor/archive/fbcondecor-0.9.4-2.6.27.patch


In Elyssa:
Code: Select all
sudo wget http://dev.gentoo.org/~spock/projects/fbcondecor/archive/fbcondecor-0.9.4-2.6.24-rc7.patch


5. Now, copy Mint's kernel configuration to the directory /usr/src/linux. This way, we'll have our custom kernel configured like Mint's default one.

Code: Select all
cd linux
sudo cp /boot/config-2.6.27-7-generic .config


In Elyssa:
Code: Select all
sudo cp /boot/config-2.6.24-19-generic .config


6. Patch the kernel source with fbcondecor. First, do a dry-run in order to see if it will work:

Code: Select all
sudo patch -p1 --dry-run < ../fbcondecor-0.9.4-2.6.27.patch


In Elyssa:
Code: Select all
sudo patch -p1 --dry-run < ../fbcondecor-0.9.4-2.6.24-rc7.patch


If you don't see any error, then patch the kernel without dry-run option:

Code: Select all
sudo patch -p1 < ../fbcondecor-0.9.4-2.6.27.patch


In Elyssa:
Code: Select all
sudo patch -p1 < ../fbcondecor-0.9.4-2.6.24-rc7.patch


7. Ok. Now, the scary part (you can also use my .config file for Felicia, or the one for Elyssa, and go straight to step 11). We need to disable all these options, look for them on .config. Open it with your favourite text editor and do a search for every option. Replace the line from the left with the line from the right.

CONFIG_FB_S3=m -> # CONFIG_FB_S3 is not set
CONFIG_FB_VT8623=m -> # CONFIG_FB_VT8623 is not set
CONFIG_FB_ARK=m -> # CONFIG_FB_ARK is not set
CONFIG_TILEBLITTING=y -> # CONFIG_TILEBLITTING is not set

Search for all the lines containing "DEBUG", and modify them the same way. Otherwise, your kernel source directory will grow up to > 4 GB, and you will have a ~270 MB kernel .deb.

8. It's time to activate some options. We will use menuconfig.

Code: Select all
sudo make menuconfig


Controls: Up/Down to move, Enter to select a sub-menu (a sub-menu is marked with ->>), left/right to move between "Select", "Exit" and "Help" buttons, Esc to go back one menu, Y to get the option selected built-in on the kernel, N to kept the option out of the kernel, M to build it as a module, ? to see Help).

Go to Device Drivers –> Graphics support –> Support for frame buffer devices –> VESA VGA graphics support, and press Y to activate it. You'll see the [M] from the left change to [*]

9. Now go to Device Drivers -> Graphics Support -> Console Display Driver Support -> Framebuffer Console support

Once with "Framebuffer Console support" selected, press Y. You'll see the [M] change to [*], and a new option appearing.

10. Go to the new option, "Support for the Framebuffer Console Decorations", and press Y.

We're done here. Press Esc until it asks you to save the new configuration. Select Yes, and press Enter.

11. Compile the custom kernel. On a Core 2 Duo, this takes about 1-1.5 hours...4-5 for an old Pentium III. Go out for a walk or something while your computer finishes the hard work for you. At the end, you'll have a .deb package, this is the Debian way of doing things. Isn't it great? :D

Code: Select all
sudo make-kpkg clean
sudo make-kpkg --initrd --append_to_version=-fbcon --revision=`date "+%s"` kernel_image kernel_headers kernel_source


Note: Kernel headers will became useful if you need to compile modules for some reason (atheros wireless driver for instance). I don't know if we need kernel source, but creating it does not require a lot of time (compared to the kernel itself).

12. Finished? Great! Install your new custom kernel:

Code: Select all
sudo dpkg -i /usr/src/linux-image-2.6.27.2-fbcon_*_i386.deb


In Elyssa:
Code: Select all
sudo dpkg -i /usr/src/linux-image-2.6.24.2-fbcon_*_i386.deb


If you need to re-compile any modules, install linux-headers also. If any of them fails at building, do this and try again:

Code: Select all
cd /lib/modules/2.6.27.2-fbcon
sudo rm build
sudo ln -s /usr/src/linux-headers-2.6.27.2-fbcon build


13. Now it's time to install fbsplash itself. Add these repos to /etc/apt/sources.list with your favourite text editor:

# fbsplash
deb ftp://ftp.berlios.de/pub/fbsplash/debian/splashutils sid contrib

# fbsplash themes
deb http://jeandamiendurand.free.fr/debian/fbsplash-themes sid contrib

# v86d (for using uvesafb)
deb http://jeandamiendurand.free.fr/debian/v86d sid contrib

14. Install splashutils and v86d. Remove usplash, we don't need it.

Code: Select all
sudo apt-get update

sudo apt-get install splashutils v86d

sudo apt-get remove usplash


15. Install a theme. You can search for one through internet, or use matrix theme (maintained by Jean-Damien Durand):

Code: Select all
sudo apt-get install matrix-fbsplash-theme


15b. If you like the screenshots up there, it's a custom theme made by me. It only supports 800x600 and 1024x768, but it can support other resolutions with some minor tweaks, just ask for them :) . You can download it here

Once downloaded, extract it to /etc/splash:
Code: Select all
tar xvzf Mint.tar.gz
sudo mv Mint /etc/splash


16. Open /boot/grub/menu.lst with your favourite editor (do a backup of the file, just in case) and search the entry for your new kernel. It will look like this:
title Linux Mint XFCE CE, kernel 2.6.24.6-fbcon
root (hd0,0)
kernel /vmlinuz-2.6.24.6fbcon root=/dev/sda3 ro vga=789
initrd /initrd.img-2.6.24.6-fbcon


Maintain your main entry, just in case. If your custom kernel is not able to boot, or if it puts your screen blank...you know, accidents happen :wink: Anyway, you can use a LiveCD to restore almost whatever that has been messed up.

Add splash=silent,fadein,theme:theme_name quiet CONSOLE=/dev/tty1 vga=789 to the kernel line. It will look like this. Replace theme_name with the name of the folder containing your favourite theme (if it's on /etc/splash/Mint, then replace theme_name with Mint).

title Linux Mint XFCE CE, kernel 2.6.24.6-fbcon
root (hd0,0)
kernel /vmlinuz-2.6.24.6-fbcon root=/dev/sda3 ro splash=silent,fadein,theme:theme_name quiet CONSOLE=/dev/tty1 vga=789
initrd /initrd.img-2.6.24.6-fbcon


17. This will make fbsplash appear just when udev finishes with a resolution of 800x600 and 24-bit colour. If you want 1024x768, use vga=792...Otherwise, there are tables out there with all the vga= possibilities.You can also use vesafb or uvesafb, check jdd's tutorial (link below).

For an early splash (it will appear from the very beggining), do:

Code: Select all
sudo splash_geninitramfs -a /boot/initrd.img-2.6.27.2-fbcon --all


In Elyssa:
Code: Select all
sudo splash_geninitramfs -a /boot/initrd.img-2.6.24.6-fbcon --all


This will add all your themes to your initrd.img, so fbsplash can use them before mounting your root partition. If you just want to add one theme, replace "--all" with the name of the theme. For example:

Code: Select all
sudo splash_geninitramfs -a /boot/initrd.img-2.6.27.2-fbcon Mint


18. Reboot and enjoy :D

If you can't see your chosen theme on other ttys than tty1, use this on /etc/rc.local to set them on boot:

for I in 2 3 4 5 6; do splash_manager -c set -t theme_name --tty=$I; done


That's it. I'll try to update this post with some screenshots later, when I have some more time.

If you have problems, doubts or whatever involving this guide just ask here. I'll try to solve them as quick as I can. Many of the problems are caused by typos or wrong configurations.

Also, if you see any errors, typos, etc...report them to me.

Sources:

- fbsplash on debian/sid and ubuntu
- Lazy Debian: fbcondecor fbsplash and debian
- Jean-Damien Durand's blog
Last edited by wuying_ren on Thu Jan 22, 2009 3:55 am, edited 3 times in total.
"Try not. Do, or do not, there is no try." - Master Yoda

[Howto] Encrypt your system!
[Howto] Fbcondecor on Mint
User avatar
wuying_ren
Level 2
Level 2
 
Posts: 61
Joined: Thu Jun 05, 2008 9:59 am
Location: Catalunya

Linux Mint is funded by ads and donations.
 

Re: How to have console decorations on Linux Mint

Postby Husse on Fri Jan 16, 2009 2:57 pm

All this just to get some nicer looks when you boot :) - ah also TTY1 through 6 :)
Check your signature the links are wrong but do work
Image
Don't fix it if it ain't broken, don't break it if you can't fix it
Husse
Level 21
Level 21
 
Posts: 19714
Joined: Sun Feb 11, 2007 7:22 am
Location: Near Borås Sweden

Re: How to have console decorations on Linux Mint

Postby wuying_ren on Fri Jan 16, 2009 4:43 pm

Husse wrote:All this just to get some nicer looks when you boot :) - ah also TTY1 through 6 :)


It's not only when you boot, the backgrounds on ttys stay there. I spend much time on them, and the standard black is very tiring for my eyes.

Anyway, you only have to do this once per kernel. I mean that I think the .deb package can be used on other computers. To tell the truth I would like to upload the .deb, but mine is huge and I don't know why. Also, this way people doesn't have to think if my packages are trustworthy or not.

If anybody knows why my kernel package is about 270 mb and/or a way to reduce it, I wouldn't mind to upload it.
"Try not. Do, or do not, there is no try." - Master Yoda

[Howto] Encrypt your system!
[Howto] Fbcondecor on Mint
User avatar
wuying_ren
Level 2
Level 2
 
Posts: 61
Joined: Thu Jun 05, 2008 9:59 am
Location: Catalunya

Re: How to have console decorations on Linux Mint (now, easier)

Postby ashneo76 on Sat Mar 21, 2009 2:24 pm

Thanks for your detailed tutorial but I get the following error when using those deb files. Maybe its because I have ATI and apparently you have nVidia.

Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/dkms
run-parts: executing /etc/kernel/postinst.d/nvidia-common
run-parts: /etc/kernel/postinst.d/nvidia-common exited with return code 20
Failed to process /etc/kernel/postinst.d at /var/lib/dpkg/info/linux-image-2.6.27.2-fbcon.postinst line 1181.
dpkg: error processing linux-image-2.6.27.2-fbcon (--install):
subprocess post-installation script returned error exit status 2
Errors were encountered while processing:
linux-image-2.6.27.2-fbcon

I tried the red pill initially but got stuck at the step 7 to edit the .config file. I don't understand what you mean to say? Could please explain it again?
Thanks a lot, bro.
ashneo76
Level 1
Level 1
 
Posts: 2
Joined: Sat Mar 21, 2009 2:08 pm

Re: How to have console decorations on Linux Mint (now, easier)

Postby ashneo76 on Sat Mar 21, 2009 4:01 pm

Well, I decided to go on ahead with the step 8 onwards.. (Well, if 4 GB is the price to pay for a cool looking console.. I'll pay it.. :P) But I get stuck again.. No menu option with the name:" Console Decorations" gets enabled.. Did I patch it wrong? Should I run the patch from inside the source directory?
Let me try and see..

Keeping my fingers crossed..
ashneo76
Level 1
Level 1
 
Posts: 2
Joined: Sat Mar 21, 2009 2:08 pm

Re: How to have console decorations on Linux Mint (now, easier)

Postby wuying_ren on Sun Mar 22, 2009 6:25 am

Hi ashneo76!

About the "DEBUG" part...you have to change any line containing the word "DEBUG" on the .config file. For example:

CONFIG_DEBUG_NX_TEST=y -> # CONFIG_DEBUG_NX_TEST is not set

I think there is a way to strip these debug symbols using a command or an option during the kernel build, but I can't seem to find it...

And about the error you posted (I have nvidia, so it's not an ATi issue), I solved it deleting /etc/kernel/postinst.d/nvidia-common (make a backup first). I don't know why it crashes.

Anyway, did you try looking at my .config file? The link is included in the tutorial.

Good luck :D
"Try not. Do, or do not, there is no try." - Master Yoda

[Howto] Encrypt your system!
[Howto] Fbcondecor on Mint
User avatar
wuying_ren
Level 2
Level 2
 
Posts: 61
Joined: Thu Jun 05, 2008 9:59 am
Location: Catalunya

Re: How to have console decorations on Linux Mint (now, easier)

Postby soundcheck on Sat Mar 28, 2009 8:28 am

ashneo76 wrote:Thanks for your detailed tutorial but I get the following error when using those deb files. Maybe its because I have ATI and apparently you have nVidia.

Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/dkms
run-parts: executing /etc/kernel/postinst.d/nvidia-common
run-parts: /etc/kernel/postinst.d/nvidia-common exited with return code 20
Failed to process /etc/kernel/postinst.d at /var/lib/dpkg/info/linux-image-2.6.27.2-fbcon.postinst line 1181.
dpkg: error processing linux-image-2.6.27.2-fbcon (--install):
subprocess post-installation script returned error exit status 2
Errors were encountered while processing:
linux-image-2.6.27.2-fbcon

I tried the red pill initially but got stuck at the step 7 to edit the .config file. I don't understand what you mean to say? Could please explain it again?
Thanks a lot, bro.


Just try to remove the nvidia-common directory if you run ATI and start over the compiliation.
I have no clue why these dead nvidia-bodies are keep on all Ubuntu systems by default.
soundcheck
Level 2
Level 2
 
Posts: 57
Joined: Mon Mar 02, 2009 2:53 pm

Re: How to have console decorations on Linux Mint (now, easier)

Postby margueratesullivan on Tue Apr 21, 2009 3:47 am

I need help with decoration ideas for a old timey country party.? We are having a party for my moms birthday. We have researched 50th bday themes and found a new one. "Geniunely Antique". Seeing as to how we are having the party outside in the country, we thought this would be perfect. Now we're stuck on decoration ideas. Please help. We have thought about lanterns and candles in metal tins for center pieces on the tables. Rocking chairs set up with checker board games, and thats about it. We need outdoor lights, games, food, etc. Please send all ideas.
___________________
market samurai ~ marketsamurai ~ marketsamurai.com
Last edited by margueratesullivan on Fri Apr 24, 2009 5:36 am, edited 1 time in total.
margueratesullivan
Level 1
Level 1
 
Posts: 1
Joined: Mon Apr 20, 2009 6:00 am

Re: How to have console decorations on Linux Mint (now, easier)

Postby Husse on Tue Apr 21, 2009 6:18 am

@ margueratesullivan
This is a forum for Linux support - you are way out of line, in fact I don't understand how you got the idea to write your post here
Image
Don't fix it if it ain't broken, don't break it if you can't fix it
Husse
Level 21
Level 21
 
Posts: 19714
Joined: Sun Feb 11, 2007 7:22 am
Location: Near Borås Sweden

Re: How to have console decorations on Linux Mint (now, easier)

Postby dlkreations on Tue Apr 21, 2009 4:32 pm

Probably did a Google search for "decorations" and somehow it gave this link...... still very odd, since I did a Google search and didn't come up with anything for Mint or Linux on the first couple of pages.

EDIT: I did try "console decorations" in Google, and this thread was the first search result that came up. I still don't see how this person would be searching for Console Decorations.
Image
It's perfectly OK to express an opinion, but refrain from foul and stupid language
- Husse
User avatar
dlkreations
Level 5
Level 5
 
Posts: 790
Joined: Mon Jan 12, 2009 8:40 pm
Location: Orange County, California

Re: How to have console decorations on Linux Mint (now, easier)

Postby Husse on Wed Apr 22, 2009 6:01 am

@ dlkreations
Your comment made me wonder - and yes you have a console as some architectural element and a table (not a spread sheet taable :)) so it seems to have been decorations for that kind of console she was looking for (how consoling :))
http://www.merriam-webster.com/dictionary/console
Image
Don't fix it if it ain't broken, don't break it if you can't fix it
Husse
Level 21
Level 21
 
Posts: 19714
Joined: Sun Feb 11, 2007 7:22 am
Location: Near Borås Sweden

Linux Mint is funded by ads and donations.
 

Return to Tutorials / Howtos

Who is online

Users browsing this forum: achilleas8095 and 10 guests