Subject: FVWM: Gnome2 panel and fvwm 2.4.15

From: Subba Rao <[email-masked]>
Date: Fri, 14 Feb 2003 07:09:32 -0500

I have upgraded my Debian system with Gnome 2.2 version. Also I have downloaded
the Fvwm 2.4.15 source.  After compiling and installing the newer fvwm2 I logged
into Debian via GDM.  My .xsession invokes gnome-panel before 'exec fvwm2'.
This however is not happening.  Fvwm starts fine. Why am I not seeing the
Gnome panel?

When I invoke Gnome panel from command line, the panel docks only to the first
desktop.  When I switch to other desktops, the panel does not stick along.

The following is my config.h for my fvwm source.  Is there something that I
am missing that causes this behaviour?

Thank you.

-- 
Subba Rao
[email-masked]

------------------------------------------------------------------

/* config.h.  Generated by configure.  */
/* config.h.in.  Generated from configure.in by autoheader.  */
/* Suffix for config filenames */
#define FVWMRC ".fvwm2rc"

/* Define if gdk-imlib is used */
/* #undef GDK_IMLIB */

/* define if GNOME WM hints are enabled */
#define GNOME 1

/* Where to search for images.  */
#define FVWM_IMAGEPATH "/usr/include/X11/bitmaps:/usr/include/X11/pixmaps"

/* Define if Xpm library is used.  */
#define XPM 1

/* Define if rplay library is used.  */
/* #undef HAVE_RPLAY */

/* Define if Xinerama should be emulated on a single screen. */
/* #undef USE_XINERAMA_EMULATION */

/* Define if Xinerama library is used. */
#define HAVE_XINERAMA 1

/* Define if stroke library is used. */
/* #undef HAVE_STROKE */

#ifdef HAVE_STROKE
#    define STROKE_ARG(x) x,
#    define STROKE_CODE(x) x
#else
#    define STROKE_ARG(x)
#    define STROKE_CODE(x)
#endif

/* Define if readline is available.  */
/* #undef HAVE_READLINE */

/* Define if you want the Shaped window extensions.
 * Shaped window extensions seem to increase the window managers RSS
 * by about 60 Kbytes. They provide for leaving a title-bar on the window
 * without a border.
 * If you don't use shaped window extension, you can either make your
 * shaped windows undecorated, or live with a border and backdrop around
 * all your shaped windows (oclock, xeyes)
 *
 * If you normally use a shaped window (xeyes or oclock), you might as
 * well compile this extension in, since the memory cost is  minimal in
 * this case (The shaped window shared libs will be loaded anyway). If you
 * don't normally use a shaped window, you have to decide for yourself.
 *
 * Note: if it is compiled in, run time detection is used to make sure that
 * the currently running X server supports it.  */
#define SHAPE 1

/* Enables the "MiniIcon" Style option to specify a small pixmap which
 * can be used as one of the title-bar buttons, shown in window list,
 * utilized by modules, etc.  Requires PIXMAP_BUTTONS to be defined
 * (see below).  */
/* #undef MINI_ICONS */
/* NOTE: hard coded to 1 */
#define MINI_ICONS 1

/* Enables stacked button styles.  There is a slight memory
 * penalty for each additional style. See the man page entries for
 * AddButtonStyle and AddTitleStyle for usage information.  */
/* #undef MULTISTYLE */
/* NOTE: hard coded to 1 */
#define MULTISTYLE 1

/* Enables tagged general decoration styles which can be assigned to
 * windows using the UseDecor Style option, or dynamically updated
 * with ChangeDecor.  To create and destroy "decor" definitions, see
 * the man page entries for AddToDecor and DestroyDecor.  There is a
 * slight memory penalty for each additionally defined decor.  */
/* #undef USEDECOR */
/* NOTE: hard coded to 1 */
#define USEDECOR 1

/* Enables session management functionality. */
#define SESSION 1

/* Enables X11 compound text conversion for windows and icons names */
#define COMPOUND_TEXT 1

/* Enables X11 multibyte character support */
/* #undef I18N_MB */

/* Enables to use setlocale() provided by X */
/* #undef X_LOCALE */

/* Specify a type for sig_atomic_t if it's not available.  */
/* #undef sig_atomic_t */

/* Define to the type used in argument 1 `select'.  Usually this is an `int'.  */
#define fd_set_size_t int

/* Define to the type used in arguments 2-4 of `select', if not set by system
   headers.  */
/* #undef fd_set */

/* Define a suitable cast for arguments 2-4 of `select'.  On most systems,
   this will be the empty string, as select usually takes pointers to fd_set.  */
#define SELECT_FD_SET_CAST 

/*
** if you would like to see lots of debug messages from fvwm, for debugging
** purposes, uncomment the next line
*/
/* #undef FVWM_DEBUG_MSGS */

#ifdef FVWM_DEBUG_MSGS
#   define DBUG(x,y) fvwm_msg(DBG,x,y)
#else
#   define DBUG(x,y) /* no messages */
#endif

/* Produces a log of all executed commands and their times on stderr. */
/* #undef FVWM_COMMAND_LOG */

#ifdef FVWM_COMMAND_LOG
#   define FVWM_DEBUG_TIME 1
#endif

/* Old AIX systems (3.2.5) don't define some common keysyms. */
/* #undef COMPAT_OLD_KEYSYMDEF */

#ifdef COMPAT_OLD_KEYSYMDEF
#  define XK_Page_Up   XK_Prior
#  define XK_Page_Down XK_Next
#endif

/* Old libstroke <= 0.4 does not use STROKE_ prefix for constants. */
/* #undef COMPAT_OLD_LIBSTROKE */

#ifdef COMPAT_OLD_LIBSTROKE
/* currently we only use one constant */
#  define STROKE_MAX_SEQUENCE MAX_SEQUENCE
#endif

/**
 * The next few defines are options that are only changed from their values
 * shown here on systems that _don't_ use the configure script.
 **/

/* Enable tests for missing too many XEvents.  Usually you want this. */
#define WORRY_ABOUT_MISSED_XEVENTS 1

/* Define if the X11 ConnectionNumber is actually a file descriptor. */
#define HAVE_X11_FD 1

/* Define if fork() has unix semantics.  On VMS, no child process is created
   until after a successful exec(). */
#define FORK_CREATES_CHILD 1

/* Suffix for executable filenames; NULL if no extension needed. */
#define EXECUTABLE_EXTENSION NULL

/* Define to remove the extension from executable pathnames before calling
   exec(). */
/* #undef REMOVE_EXECUTABLE_EXTENSION */

#if 0
/* migo: Commented; this is not removed with autoconf-2.50 anymore. */
#error The stuff above TOP goes to the top of config.h.in
#error What appears below BOTTOM goes to the bottom
#error This text should not appear anywhere!
#endif

/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP
   systems. This function is required for `alloca.c' support on those systems.
   */
/* #undef CRAY_STACKSEG_END */

/* Define to 1 if using `alloca.c'. */
/* #undef C_ALLOCA */

/* Define to 1 if you have `alloca', as a function or macro. */
#define HAVE_ALLOCA 1

/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).
   */
#define HAVE_ALLOCA_H 1

/* Define to 1 if you have the `atexit' function. */
#define HAVE_ATEXIT 1

/* Define to 1 if you have the `div' function. */
#define HAVE_DIV 1

/* Define to 1 if you have the <dmalloc.h> header file. */
/* #undef HAVE_DMALLOC_H */

/* Define to 1 if you have the <fcntl.h> header file. */
#define HAVE_FCNTL_H 1

/* Define to 1 if you have the `gethostname' function. */
#define HAVE_GETHOSTNAME 1

/* Define to 1 if you have the <getopt.h> header file. */
#define HAVE_GETOPT_H 1

/* Define to 1 if you have the `getpwuid' function. */
#define HAVE_GETPWUID 1

/* Define to 1 if you have the `gettimeofday' function. */
#define HAVE_GETTIMEOFDAY 1

/* Define to 1 if you have the <inttypes.h> header file. */
#define HAVE_INTTYPES_H 1

/* Define to 1 if you have the `dmalloc' library (-ldmalloc). */
/* #undef HAVE_LIBDMALLOC */

/* Define to 1 if you have the `efence' library (-lefence). */
/* #undef HAVE_LIBEFENCE */

/* Define to 1 if you have the <limits.h> header file. */
#define HAVE_LIMITS_H 1

/* Define to 1 if you have the <malloc.h> header file. */
#define HAVE_MALLOC_H 1

/* Define to 1 if you have the `memcpy' function. */
#define HAVE_MEMCPY 1

/* Define to 1 if you have the `memmove' function. */
#define HAVE_MEMMOVE 1

/* Define to 1 if you have the <memory.h> header file. */
#define HAVE_MEMORY_H 1

/* Define to 1 if you have the `mkfifo' function. */
#define HAVE_MKFIFO 1

/* Define to 1 if you have the `on_exit' function. */
/* #undef HAVE_ON_EXIT */

/* Define to 1 if you have the `putenv' function. */
#define HAVE_PUTENV 1

/* Define to 1 if you have the `select' function. */
#define HAVE_SELECT 1

/* Define to 1 if you have the `setvbuf' function. */
#define HAVE_SETVBUF 1

/* Define to 1 if you have the `sigaction' function. */
#define HAVE_SIGACTION 1

/* Define to 1 if you have the `siginterrupt' function. */
#define HAVE_SIGINTERRUPT 1

/* Define to 1 if you have the `socket' function. */
#define HAVE_SOCKET 1

/* Define to 1 if you have the <stdarg.h> header file. */
#define HAVE_STDARG_H 1

/* Define to 1 if you have the <stdint.h> header file. */
#define HAVE_STDINT_H 1

/* Define to 1 if you have the <stdlib.h> header file. */
#define HAVE_STDLIB_H 1

/* Define to 1 if you have the `strcasecmp' function. */
#define HAVE_STRCASECMP 1

/* Define to 1 if you have the `strchr' function. */
#define HAVE_STRCHR 1

/* Define to 1 if you have the `strdup' function. */
#define HAVE_STRDUP 1

/* Define to 1 if you have the `strerror' function. */
#define HAVE_STRERROR 1

/* Define to 1 if you have the `strftime' function. */
#define HAVE_STRFTIME 1

/* Define to 1 if you have the <strings.h> header file. */
#define HAVE_STRINGS_H 1

/* Define to 1 if you have the <string.h> header file. */
#define HAVE_STRING_H 1

/* Define to 1 if you have the `strncasecmp' function. */
#define HAVE_STRNCASECMP 1

/* Define to 1 if you have the `strstr' function. */
#define HAVE_STRSTR 1

/* Define to 1 if you have the `strtol' function. */
#define HAVE_STRTOL 1

/* Define to 1 if you have the `sysconf' function. */
#define HAVE_SYSCONF 1

/* Define to 1 if you have the <sys/select.h> header file. */
#define HAVE_SYS_SELECT_H 1

/* Define to 1 if you have the <sys/socket.h> header file. */
#define HAVE_SYS_SOCKET_H 1

/* Define to 1 if you have the <sys/stat.h> header file. */
#define HAVE_SYS_STAT_H 1

/* Define to 1 if you have the <sys/systeminfo.h> header file. */
/* #undef HAVE_SYS_SYSTEMINFO_H */

/* Define to 1 if you have the <sys/time.h> header file. */
#define HAVE_SYS_TIME_H 1

/* Define to 1 if you have the <sys/types.h> header file. */
#define HAVE_SYS_TYPES_H 1

/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */
#define HAVE_SYS_WAIT_H 1

/* Define to 1 if you have the `uname' function. */
#define HAVE_UNAME 1

/* Define to 1 if you have the <unistd.h> header file. */
#define HAVE_UNISTD_H 1

/* Define to 1 if you have the `usleep' function. */
#define HAVE_USLEEP 1

/* Define to 1 if you have the `vfprintf' function. */
#define HAVE_VFPRINTF 1

/* Define to 1 if you have the `wait3' function. */
/* #undef HAVE_WAIT3 */

/* Define to 1 if you have the `wait4' function. */
/* #undef HAVE_WAIT4 */

/* Define to 1 if you have the `waitpid' function. */
#define HAVE_WAITPID 1

/* Name of package */
#define PACKAGE "fvwm"

/* Define to the address where bug reports for this package should be sent. */
#define PACKAGE_BUGREPORT ""

/* Define to the full name of this package. */
#define PACKAGE_NAME ""

/* Define to the full name and version of this package. */
#define PACKAGE_STRING ""

/* Define to the one symbol short name of this package. */
#define PACKAGE_TARNAME ""

/* Define to the version of this package. */
#define PACKAGE_VERSION ""

/* Define as the return type of signal handlers (`int' or `void'). */
#define RETSIGTYPE void

/* Define to 1 if the `setvbuf' function takes the buffering type as its
   second argument and the buffer pointer as the third, as on System V before
   release 3. */
/* #undef SETVBUF_REVERSED */

/* If using the C implementation of alloca, define if you know the
   direction of stack growth for your system; otherwise it will be
   automatically deduced at run-time.
        STACK_DIRECTION > 0 => grows toward higher addresses
        STACK_DIRECTION < 0 => grows toward lower addresses
        STACK_DIRECTION = 0 => direction of growth unknown */
/* #undef STACK_DIRECTION */

/* Define to 1 if you have the ANSI C header files. */
#define STDC_HEADERS 1

/* Version number of package */
#define VERSION "2.4.15"

/* Define to 1 if the X Window System is missing or not being used. */
/* #undef X_DISPLAY_MISSING */

/* Define to 1 if on MINIX. */
/* #undef _MINIX */

/* Define to 2 if the system does not provide POSIX.1 features except with
   this defined. */
/* #undef _POSIX_1_SOURCE */

/* Define to 1 if you need to in order for `stat' and other things to work. */
/* #undef _POSIX_SOURCE */

/* Define to empty if `const' does not conform to ANSI C. */
/* #undef const */

/* Define as `__inline' if that's what the C compiler calls it, or to nothing
   if it is not supported. */
/* #undef inline */

/* Define to `long' if <sys/types.h> does not define. */
/* #undef off_t */

/* Define to `int' if <sys/types.h> does not define. */
/* #undef pid_t */

/* Define to `unsigned' if <sys/types.h> does not define. */
/* #undef size_t */

#if HAVE_ALLOCA_H
#  include <alloca.h>
#else
#  ifdef _AIX
       #pragma alloca
#  else
#    ifndef alloca /* predefined by HP cc +Olibcalls */
         char *alloca ();
#    endif
#  endif
#endif

#ifdef STDC_HEADERS
#  include <stdlib.h>
#  include <string.h>
#else
#  ifdef HAVE_STRING_H
#    include <string.h>
#  else
#    include <strings.h>
#  endif
#  ifdef HAVE_MEMORY_H
#    include <memory.h>
#  endif
#  ifdef HAVE_STDLIB_H
#    include <stdlib.h>
#  endif
#  ifdef HAVE_MALLOC_H
#    include <malloc.h>
#  endif
#  ifndef HAVE_STRCHR
#    define strchr(_s,_c)   index((_s),(_c))
#    define strrchr(_s,_c)  rindex((_s),(_c))
#  endif
#endif

#ifndef HAVE_MEMCPY
#  define memcpy(_d,_s,_l)  bcopy((_s),(_d),(_l))
#endif
#ifndef HAVE_MEMMOVE
#  define memmove(_d,_s,_l) bcopy((_s),(_d),(_l))
#endif

#if HAVE_SYS_TYPES_H
#  include <sys/types.h>
#endif

#if HAVE_UNISTD_H
#  include <unistd.h>
#endif

#ifndef min
#  define min(a,b) (((a)<(b)) ? (a) : (b))
#endif
#ifndef max
#  define max(a,b) (((a)>(b)) ? (a) : (b))
#endif
#ifndef abs
#  define abs(a) (((a)>=0)?(a):-(a))
#endif

#include "libs/defaults.h"
--
Visit the official FVWM web page at <URL: http://www.fvwm.org/>.
To unsubscribe from the list, send "unsubscribe fvwm" in the body of a
message to [email-masked].
To report problems, send mail to [email-masked].

---

From: Olivier Chapuis <[email-masked]>
Date: Fri, 14 Feb 2003 23:11:58 +0100

> am missing that causes this behaviour?

FVWM 2.4.x is GNONME 1 compliant. FVWM 2.5.x "is" EWMH compliant.
EWMH is a new spec. used by KDE >= 2 and GNOME >= 2.

Regrads, Olivier

---

From: Klaus Umbach <[email-masked]>
Date: Sun, 16 Feb 2003 22:39:12 +0100

fvwm 2.5.5 works perfectly here with gnome2.2.
You may hav to put

Style *panel* NoTitle, NoHandles, Borderwidth 0

in your configuration.

metacity is such a poor windowmanager, fvwm is the best alternative.
I guess it's even the only one, that realy works.

Klaus

-- 
5) People say Linux is ugly. How does that make you feel?
Torvalds: They'll be the first against the wall when the revolution comes.
	  Let's see just how ugly they think it is when they have a few
	  bulletholes in them.

---

From: Bob Crochelt <[email-masked]>
Date: Sun, 16 Feb 2003 12:53:29 -0900 (AKST)

Klaus, He may want to add Sticky to the style line you suggested.

Reagrds

-- 
Bob Crochelt, MD, PhD, FACS

PO Box 9399
Ketchikan, Alaska 99901-4399

[email-masked] or 
[email-masked]

---

From: Klaus Umbach <[email-masked]>
Date: Sun, 16 Feb 2003 23:54:50 +0100

> Klaus, He may want to add Sticky to the style line you suggested.

maybe, but I don't need it. So why should he?

---

From: Olivier Chapuis <[email-masked]>
Date: Mon, 17 Feb 2003 01:16:05 +0100

> Style *panel* NoTitle, NoHandles, Borderwidth 0

Is this really needed? The last time I try GNOME2 it was not,
because GNOME ask this (via some MWM hints). Do you have

	Style * MwmDecor

(and not NoDecorHint somewhere else) in your config file? A good thing
anyway.

Regards, Olivier

---

From: Subba Rao <[email-masked]>
Date: Sun, 16 Feb 2003 21:31:40 -0500

> > EWMH is a new spec. used by KDE >= 2 and GNOME >= 2.

Where do you invoke the gnome-panel though?  I have now upgrade fvwm to version
2.5.5.  My .xsession has gnome-panel defined but it does not appear on startup.
I have to manually start it up on command line.  Is gnome-panel invoked from
the .fvwm2rc or from .xsession?

Thank you.

---

From: Klaus Umbach <[email-masked]>
Date: Mon, 17 Feb 2003 05:14:09 +0100

I start my gnome2.2 after fvwm in an $XTERM, because I want to use
antialiasing for gtk1 and gtk2 programs.
libgdkxft is a very evil hack, so I have really bad problems when I
start antialiased gtk1 programs from gnome2.2

If it ist not important for you that gtk1 programs are antialiased:
- start your gnome2 normaly with metacity.
- start fvwm in an $XTERM with the parameter "-replace"
- save your session
Done.

gnome2 will now start with fvwm instead of metacity.

Klaus