forked from AuroraMiddleware/gtk
217e946c32
2000-12-21 Alexander Larsson <alexl@redhat.com> * docs/README.linux-fb: Update the docs to the new pangoft2 way.
141 lines
4.6 KiB
Plaintext
141 lines
4.6 KiB
Plaintext
About GtkFB:
|
|
------------
|
|
The linux-fb port of Gtk+, also known as GtkFB is an implementation of
|
|
gdk (and therefor gtk) that runs on the linux framebuffer. It runs in
|
|
a single process that doesn't need X. It should run most Gtk+ programs
|
|
without any changes to the source.
|
|
|
|
Build requirements:
|
|
-------------------
|
|
To run GtkFB programs you will need glib, pango and gtk from cvs
|
|
HEAD. Make sure you update these at the same time, since changes to
|
|
glib and pango often forces changes in gtk+. Pango optionally depends
|
|
on libfribidi, but for normal GtkFB usage that can be ignored.
|
|
|
|
You also need freetype 2, I recommend that you use freetype 2.0.1 or
|
|
later, as there was some problems with freetype-config in 2.0.
|
|
Make sure that you install freetype before pango, since pango also
|
|
needs it.
|
|
Freetype can be found at ftp://ftp.freetype.org
|
|
|
|
Hardware requirements:
|
|
----------------------
|
|
You need a graphics card with an availible framebuffer driver that can
|
|
run in 8, 16, 24 or 32 bpp. I use the matroxfb driver, but i.e. vesafb
|
|
should work too. You also need a supported mouse. Currently supported
|
|
is ps2 mouse, ms serial mouse and fidmour touchscreen.
|
|
|
|
Building and installing:
|
|
------------------------
|
|
First build and install glib and pango as usual, in that order.
|
|
|
|
Then configure Gtk by running configure (or autogen.sh if running from
|
|
cvs) with --with-gdktarget=linux-fb.
|
|
|
|
Then compile as ususal: make; make install
|
|
|
|
Fonts:
|
|
------
|
|
Since GtkFB uses freetype 2 to render fonts it can render truetype and
|
|
postscript type 1 antialiased fonts.
|
|
|
|
At startup it scans some directories looking for fonts. By default
|
|
it looks in $prefix/lib/ft2fonts, and if you want to change this you
|
|
must add something like:
|
|
|
|
[PangoFT2]
|
|
FontPath = /usr/share/fonts/default/TrueType
|
|
|
|
To your $prefix/etc/pango/pangorc or ~/.pangorc.
|
|
|
|
You must also set up font aliases for the fonts Sans, Serif and Monotype.
|
|
This is done by creating a $prefix/etc/pango/pangoft2.aliases or
|
|
~/.pangoft2.aliases file. You can also set the name of this file using the
|
|
key AliasFiles in the PangoFT2 section in pangorc.
|
|
|
|
An example of a font alias file is:
|
|
sans normal normal normal normal "arial"
|
|
serif normal normal normal normal "times new roman"
|
|
monospace normal normal normal normal "courier new"
|
|
|
|
A more detailed example can be found in examples/pangoft2.aliases in the
|
|
pango distribution.
|
|
|
|
Running:
|
|
--------
|
|
To run a program you should only need to start it, but there are some
|
|
things that can cause problems, and some things that can be controlled
|
|
by environment variables. Try testgtk distributed with gtk+ to test
|
|
if things work.
|
|
|
|
If you use a ps2 mouse, make sure that /dev/psaux is readable and
|
|
writable.
|
|
|
|
Make sure gpm is not running.
|
|
|
|
If you don't specify anything GtkFB will start up in the current
|
|
virtual console in the current resolution and bit-depth. This can be
|
|
changed by specifying environment variables:
|
|
|
|
GDK_VT:
|
|
unset means open on the current VT.
|
|
0-9: open on the specified VT. Make sure you have read/write rights
|
|
there.
|
|
new: Allocate a new VT after the last currently used one.
|
|
|
|
GDK_DISPLAY_MODE:
|
|
Specifies the name of a mode in /etc/fb.modes that you want to use.
|
|
|
|
GDK_DISPLAY_DEPTH:
|
|
Specify the desired bit depth of the framebuffer.
|
|
|
|
GDK_DISPLAY_WIDTH:
|
|
Specify the desired width of the framebuffer.
|
|
|
|
GDK_DISPLAY_HEIGHT:
|
|
Specify the desired height of the framebuffer.
|
|
|
|
GDK_DISPLAY:
|
|
Specify the framebuffer device to use. Default is /dev/fb0
|
|
|
|
GDK_MOUSE_TYPE:
|
|
Specify mouse type. Currently supported is:
|
|
ps2 - PS/2 mouse
|
|
imps2 - PS/2 intellimouse (wheelmouse)
|
|
ms - Microsoft serial mouse
|
|
fidmour - touch screen
|
|
Default is ps2.
|
|
|
|
GDK_KEYBOARD_TYPE:
|
|
Specify keyboard type. Currently suppored is
|
|
xlate - normal tty mode keyboard.
|
|
Quite limited, cannot detect key up/key down events. Doesn't
|
|
handle ctrl/alt/shift for all keys. This is the default driver,
|
|
but should not be used in "production" use.
|
|
raw - read from the tty in RAW mode.
|
|
Sets the keyboard in RAW mode and handles all the keycodes. This
|
|
gives correct handling of modifiers and key up/down events. You
|
|
must be root to use this. If you use this for development or
|
|
debugging it is recommended to enable magic sysrq handling in the
|
|
kernel. Then you can use ALT-SysRQ-r to turn the keyboard back to
|
|
normal mode.
|
|
Default is xlate.
|
|
|
|
HACKING:
|
|
--------
|
|
|
|
Pressing Ctrl-Alt-Return repaints the whole screen.
|
|
Unfortunately this cannot be pressed when using the xlate keyboard
|
|
driver, so instead you can use shift-F1 instead when using this
|
|
driver.
|
|
|
|
Pressing Ctrl-Alt-BackSpace kills the GtkFB program. (Can't be pressed
|
|
in the xlate driver.
|
|
|
|
More to be written.
|
|
|
|
- Alexander Larsson <alexl@redhat.com>
|
|
2000/12/06
|
|
|
|
|