Artwork/ThemingOverview

= Fedora Theming Overview =

There is a heckuva lotta stuff you can change the look of in Fedora. Isn't open source software great? :) Even better, you can unify the look of the entire distribution by following a common theme across these customizable screens/widgets/layouts/whatchamacallits.

If you've got great ideas for a design but are not technically-inclined, or want to learn how to code up your own themes but need help - no worries. Pass your mockups along; you can upload them to  ThemeConcepts  - and be sure to post the link to fedora-art-list  so we can all marvel at your handiwork!

Here's an overview of the components that have gone into past Fedora themes so you can get an idea of what you can change the look of and how to test out your artwork.

Artwork seen during installation
This is all artwork users will only see on a limited basis - during and directly after installation. This is not the artwork users will be looking at day in and day out.

Anaconda Prompt Screen
Only seen during installation. Pretty much the *first* thing you see when you boot up with the install CD/DVD.

Anaconda Screen - Splash
Only seen during installation. There is a 'splash' component to the wizard as well as a customizable banner. Appears after the first screen above.

Anaconda Screen - Progress
Only seen during installation. This is the 'countdown' screen after you've already picked all your preferences and let the installer do its magic. :)

First Boot
Users only see this the very first time they boot their system after installing it. It walks the user through additional configuration of their system post-installation (keyboard layout, language, time zone, etc.) There is a splash (shown in screenshot below) as well as a banner along the left side.

Artwork seen during bootup
Below is artwork users will see every time they boot their system.

GRUB (Grand Unified Bootloader)
This is seen *every time the computer boots*, and is used to select the kernel to run as well as other boot-time options. Note that for FC5, some people complained that this screen was too bright and hurt their eyes - people are used to a dark screen for this.

Plymouth
Plymouth is a replacement to RHGB which starts even earlier (before / is mounted) but reather than using Xorg it uses the frame buffer device to show graphics while the system is booting. Different boot splash screens are available though numerous plugins, which in fedora are distributed separately from the base (plymouth-plugin-*). If the kernel console mode is set to a graphical vga mode (add vga=0x318 to the kernel line), the default graphical plugin is used. If the system starts in text mode or the graphical plugin failed to initialise, the text mode plugin is used. The text mode plugin could allow ansi art to be shown on the page with the bottom line holding the progress bar. There are two graphical plugins already present. The "fade-in" plugin uses fades the distribution logo in and out in the centre of the screen, and the "spinfinity" plugin shows the logo with a swirling animation composed of a series of png images (screencast is available).

Because plymouth is run before / is mounted, it needs all files it will be using to be included in the initial ram-disk (initrd). This includes the executable files, images and any libraries used. The system currently links against just one library, libpng, which allows the reading of PNG images. The system can boot using one of many vga resolutions and including a PNG image for each possible resolution will mean the ramdisk not to becomes rather big (which is a bad thing for boot times). Although library

Essentially any animation is possible with the restrictions of space on the ram disk and CPU usage during the boot. The user may be staring at this for a while depending on how slow startup is, so make this pretty. :)

GDM (Gnome Display Manager)
Basically, the login screen. Fedora 9 changed the way it looks and works, for example it is themed from GTK+, unlike the previous versions. The intention is to use it also for the unlock screen dialog. Still work-in-progress.

GNOME Splash Screen
NOTE: Please don't focus on this graphic piece as it's turned off by default in both upstream and Fedora's GNOME. It's basically a little graphic that shows GNOME's startup, but GNOME starts up quick enough these days that it's not really necessary anymore.

High-Visibility Artwork
This is artwork users are going to see all the time - so let's get it right. :)

GNOME Screensaver Lock Dialog
NOTE: Please don't focus on this graphic piece as it's turned off by default in both upstream and Fedora's GNOME.

KDE Artwork
Let's not forget the KDE fans. :)

Non-Release Dependent Artwork
There's other types of artwork we can change but don't necessarily have to change with each release. A pretty exhaustive list is available  on Marketing's Fedora Branding Page. A small sample follows below.

Metacity (Window manager)
The main visual component of metacity themes is the titlebar of windows, but there are other things you can do with it too.

Designing Metacity Themes

GTK (Gimp Tool Kit)
This refers to the basic look of windows... their color, the appearance of their widgets, etc. The default GTK+ engine we use in Fedora is Clearlooks.

The Widget Factory is a great program for testing the look of your themes. It also has a great screenshot of the program, displaying all of the different widgets that can be styled for GTK2. Users can get the widget factory on Fedora repository with the following command

GnomeArt GTK2 Theme Creation Tutorial