# So, FBSplash is broken. Alternatives?

## Q-collective

So, it appears that CONFIG_FB_CON_DECOR has left kernel 3.7. You need this option to get FBSplash to work, because otherwise you'll get:

```
# splash_manager -c set --theme=natural_gentoo --tty=1

Failed to open the fbcon_decor control device.

Failed to open the fbcon_decor control device.
```

So, what are the alternatives to getting a shiny boothsplash? Or is FBSplash going to get fixed?

----------

## Q-collective

Ok, just found Plymouth. Anyone liking it? Does it work with kernel 3.7? Are there better alternatives?

----------

## Q-collective

 *Q-collective wrote:*   

> Ok, just found Plymouth. Anyone liking it? Does it work with kernel 3.7? Are there better alternatives?

 

Ok, both versions in the tree don't even compile:

```
make[2]: Leaving directory `/var/tmp/portage/sys-boot/plymouth-0.8.4/work/plymouth-0.8.4_build/docs'

make[1]: Leaving directory `/var/tmp/portage/sys-boot/plymouth-0.8.4/work/plymouth-0.8.4_build/docs'

make[1]: Entering directory `/var/tmp/portage/sys-boot/plymouth-0.8.4/work/plymouth-0.8.4_build'

make[2]: Entering directory `/var/tmp/portage/sys-boot/plymouth-0.8.4/work/plymouth-0.8.4_build'

make[2]: Nothing to be done for `install-exec-am'.

make[2]: Nothing to be done for `install-data-am'.

make[2]: Leaving directory `/var/tmp/portage/sys-boot/plymouth-0.8.4/work/plymouth-0.8.4_build'

make[1]: Leaving directory `/var/tmp/portage/sys-boot/plymouth-0.8.4/work/plymouth-0.8.4_build'

 * Removing unnecessary /usr/lib64/libply-splash-graphics.la (no static archive)

 * Removing unnecessary /usr/lib64/libply-boot-client.la (no static archive)

 * Removing unnecessary /usr/lib64/plymouth/label.la (no static archive)

 * Removing unnecessary /usr/lib64/plymouth/script.la (no static archive)

 * Removing unnecessary /usr/lib64/plymouth/text.la (no static archive)

 * Removing unnecessary /usr/lib64/plymouth/throbgress.la (no static archive)

 * Removing unnecessary /usr/lib64/plymouth/renderers/drm.la (no static archive)

 * Removing unnecessary /usr/lib64/plymouth/renderers/frame-buffer.la (no static archive)

 * Removing unnecessary /usr/lib64/plymouth/renderers/x11.la (no static archive)

 * Removing unnecessary /usr/lib64/plymouth/fade-throbber.la (no static archive)

 * Removing unnecessary /usr/lib64/plymouth/space-flares.la (no static archive)

 * Removing unnecessary /usr/lib64/plymouth/details.la (no static archive)

 * Removing unnecessary /usr/lib64/plymouth/two-step.la (no static archive)

 * Removing unnecessary /lib64/libply-splash-core.la (no static archive)

 * Removing unnecessary /lib64/libply.la (no static archive)

 * Removing left /usr/lib64/plymouth/*.la

rm: cannot remove ‘/var/tmp/portage/sys-boot/plymouth-0.8.4/image//usr/lib64/plymouth/*.la’: No such file or directory

 * ERROR: sys-boot/plymouth-0.8.4 failed (install phase):

 *   rm '/var/tmp/portage/sys-boot/plymouth-0.8.4/image//usr/lib64/plymouth/*.la'

 * 

 * Call stack:

 *     ebuild.sh, line  93:  Called src_install

 *   environment, line 3104:  Called die

 * The specific snippet of code:

 *               rm "${la}" || die "rm '${la}'";

 * 

 * If you need support, post the output of `emerge --info '=sys-boot/plymouth-0.8.4'`,

 * the complete build log and the output of `emerge -pqv '=sys-boot/plymouth-0.8.4'`.

 * The complete build log is located at '/var/tmp/portage/sys-boot/plymouth-0.8.4/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/sys-boot/plymouth-0.8.4/temp/environment'.

 * Working directory: '/var/tmp/portage/sys-boot/plymouth-0.8.4/work/plymouth-0.8.4'

 * S: '/var/tmp/portage/sys-boot/plymouth-0.8.4/work/plymouth-0.8.4'
```

Looks like an ebuild bug, but since there are maybe way better alternatives I'll let this rest for now.

----------

## Q-collective

Bump.

----------

## swimmer

fbcondecor is back in 3.7.3  :Wink: 

----------

## Q-collective

 *swimmer wrote:*   

> fbcondecor is back in 3.7.3 

 

Awesome!

----------

## GLS064

Where do i find the option now for it ? I only find Framebuffer Console Rotation.

Greetings 

Bodo

----------

## Q-collective

 *GLS064 wrote:*   

> Where do i find the option now for it ? I only find Framebuffer Console Rotation.
> 
> Greetings 
> 
> Bodo

 

I can confirm it is in there, on the same location.

Do you have all requirements met? (You can find these by pressing "/" and looking for "FB_CON_DECOR")

----------

## GLS064

What do you mean with requirements ? i have emerged the fresh kernel sources from the sys-kernel/gentoo-sources. And the version is 3.7.3. Even in the new created .config file i do not found fb_con_decor. 

Bodo

----------

## Q-collective

 *GLS064 wrote:*   

> What do you mean with requirements ?

 

Instead of trying to explain with words, I've made screenshots:

- Step 1: Go to make menuconfig as usual.

- Step 2: Press the "/" key and enter FB_CON_DECOR.

- Step 3: Have a look at the requirements at Depends on.

If any of the required options have a "=n" then you need to enable them. Just look for them via "/" againif you don't know where to look for them.

Can't make it clearer then that.

----------

## andrewwalker27

I'd just mention you need !FB_TILEBLITTING [=n] and not [=y] or  FB_CON_DECOR won't allow you to select  [=y] 

I'm also having a major headache with FB_CON_DECOR but I don't quite understand what is wrong. I've been following this guide

http://en.gentoo-wiki.com/wiki/Fbsplash

I'm running nvidia-drivers-313.26 on an GeForce880 GTS using kernel 3.7.10 and my grub.conf is as follows

```

title Gentoo

root (hd0,0)

kernel /boot/kernel-3.7.10-gentoo root=/dev/sda1 video=uvesafb:mtrr:3,ywrap,1920x1200-24@50 splash=silent,fadein,theme=natural_gentoo quiet console=/dev/tty1

```

I've created the initramfs as follows with no errors

```

PhenomIIx6 grub # splash_geninitramfs --verbose --res 1920x1200 --generate /boot/initramfs-bootplash natural_gentoo

o Creating directory structure..

o Copying //sbin/fbcondecor_helper..

o Copying themes..

  - natural_gentoo

o Creating initramfs image..

PhenomIIx6 grub #

```

and I can test the theme ok by doing the following

```

splash_manager -c set --theme=natural_gentoo --tty=1

```

which results in ctrl + alt + 1 giving me a lovely console display, but for some reason it doesn't work when I boot up, I just get blank screens on the TTYS. My /etc/conf.d consists of nothing more than

```

FBCONDECOR_TTYS="1 2 3 4 5 6"

```

and I get this error if I try to restart the service

```

PhenomIIx6 conf.d # /etc/init.d/fbcondecor restart

 * Setting framebuffer console images ...

Requested theme does not exist.

 * Failed to set background image on tty2                                                                                                                                                        [ !! ]

 * ERROR: fbcondecor failed to start

PhenomIIx6 conf.d # 

```

Am I missing something out? Do I need to do something else after creating /boot/initramfs-bootsplash or is something wrong with my kernel settings? Here's how I've set it up

```

# Console display driver support

#

CONFIG_VGA_CONSOLE=y

CONFIG_VGACON_SOFT_SCROLLBACK=y

CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64

CONFIG_DUMMY_CONSOLE=y

CONFIG_FRAMEBUFFER_CONSOLE=y

CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y

# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set

CONFIG_FB_CON_DECOR=y

# CONFIG_FONTS is not set

CONFIG_FONT_8x8=y

CONFIG_FONT_8x16=y

# CONFIG_LOGO is not set

```

I'm using the binary nvidia drivers rather than nouveau for the system when booted, could this cause a problem? I'd appreciate any help, I've spent hours on it and got totally confused by conflicting docs, I don't really understand what a frame buffer actually is and what purpose v86d serves.

----------

## i4dnf

you forgot to add the initrd line to your grub config:

```

initrd (hd0,0)/boot/initramfs-bootsplash

```

----------

## andrewwalker27

Thanks, your right I did forget that bit! Sadly though I still get exactly the same result, no splash screen and still the 'Requested theme does not exist' error. Any other ideas?

Does this look ok to you?

```

PhenomIIx6 boot # zcat /boot/initramfs-bootsplash | cpio --list

.

lib64

lib64/splash

lib64/splash/sys

lib64/splash/proc

etc

etc/splash

etc/splash/natural_gentoo

etc/splash/natural_gentoo/images

etc/splash/natural_gentoo/images/silent-1920x1200.jpg

etc/splash/natural_gentoo/images/verbose-1920x1200.jpg

etc/splash/natural_gentoo/1920x1200.cfg

etc/splash/luxisri.ttf

dev

dev/null

dev/fb

dev/vc

dev/console

dev/misc

dev/tty0

sbin

sbin/splash_helper

sbin/fbcondecor_helper

root

1458 blocks                                                                                                                                                                                            

PhenomIIx6 boot # 

```

----------

## i4dnf

It might be a typo in your earlier post but the splash part of the kernel line should use ":" instead of "=" after theme i.e.:

```

splash=silent,fadein,theme:natural_gentoo

```

Also note there is a difference between "console" and "CONSOLE" usage (from /usr/share/doc/splashutils*/kernel-parameters):

 *Quote:*   

> 
> 
> To make sure that the silent mode works correctly with this version of
> 
> splashutils, it is required that you add either
> ...

 

----------

## xHypnos

It same problem: I have a kernel 3.7.10 

```
splash_manager -c set --theme=powered_by_gentoo --tty=1

Failed to open the fbcon_decor control device.

Failed to open the fbcon_decor control device.

```

----------

## mvaterlaus

did you enable the fbcondecor use flag when merging splashutils?

----------

## xHypnos

HI, my steps in merging fbsplash:

I 

*add use flag fbcondecor and emerge splashutils

*download theme powered_by_gentoo and unzip and paste to /etc/splash/powered_by_gentoo

*add fbcondecor to rc-update default:

```
localhost ~ # rc-update show

       NetworkManager |      default                 

                acpid |      default                 

            bluetooth |      default                 

             bootmisc | boot                         

           consolekit |      default                 

                cupsd |      default                 

                 dbus |      default                 

                devfs |                       sysinit

                dmesg |                       sysinit

           fbcondecor |      default                 

                 fsck | boot                         

             hostname | boot                         

              hwclock | boot                         

              keymaps | boot                         

            killprocs |              shutdown        

          laptop_mode |      default                 

                local |      default                 

           localmount | boot                         

              modules | boot                         

             mount-ro |              shutdown        

                 mtab | boot                         

             net.eth0 |      default                 

             netmount |      default                 

               procfs | boot                         

                 root | boot                         

            savecache |              shutdown        

                 swap | boot                         

            swapfiles | boot                         

               sysctl | boot                         

                sysfs |                       sysinit

         termencoding | boot                         

       tmpfiles.setup | boot                         

                 udev |                       sysinit

           udev-mount |                       sysinit

              urandom | boot                         

           vixie-cron |      default                 

                  xdm |      default    
```

*edited /etc/conf.d/fbcondecor, enabling the FBCONDECOR_TTYS 1-6

*my grub.conf is:

```
default 1

timeout 10

splashimage=(hd0,4)/boot/grub/splash.xpm.gz

title Gentoo Linux 2.6.24-r5

root (hd0,4)

kernel /boot/kernel6 root=/dev/sda7 video=uvesafb:mtrr:3,ywrap,1280x800-24@50 

splash=verbose,fadein,theme=powered_by_gentoo quiet console=tty1
```

My sreen kernel setting.

http://i34.tinypic.com/2ur8p76.png

http://i33.tinypic.com/b7x3qe.png

But not function.

----------

## Tolstoi

Perhaps you have to install v86d. Then compile in  the initramfs option in your kernel and point it to /usr/v86d/initramfs. Maybe you have to do that first and then emerge v86d. Then add your initram line to the kernel line. If you use grub2 be sure to name the you're initram containing initramfs for instance initramfs-natural_gentoo.

----------

