Wanting to patch my fvwm in order to add some functionnalities, I had to use a CVS version. So i decided to make an ebuild for it, adding BTW this patchs.

So I took the ebuild x11-wm/fvwm/fvwm-2.5.16.ebuild and modified it a little. This ebuild adds some patchs found here et here and it adds a desktop entry fvwm.desktop in /usr/share/xsessions/
I took inspiration from the instructions on this page for the CVS.
I distribute the complete tree on my FTP and at home when my server is running .

Here is the ebuild :

fvwm-9999.ebuild:

# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $

# this patch enables fast translucent menus in fvwm. this is a
# minor tweak of a patch posted to fvwm-user mailing list by Olivier
# Chapuis in <20030827135125.GA6370@snoopy.folie>.
cd ${S}; epatch ${FILESDIR}/fvwm-translucent-menus.diff.gz

# fixing #51287, the fvwm-menu-xlock script is not compatible
# with the xlockmore implementation in portage.
cd ${S}; epatch ${FILESDIR}/fvwm-menu-xlock-xlockmore-compat.diff

# with use vanilla, fvwm will be built without extras patches
if ! use vanilla; then
cd ${WORKDIR}; unpack ${A}

# Those patches have not effects until they're not used in the
# configuration
EPATCH_SUFFIX="patch"
EPATCH_FORCE="yes"
EPATCH_SOURCE="${WORKDIR}/patchset"
cd "${S}"; epatch

# Those patches have immediate and irreversible effets
EXTRAS="${WORKDIR}/patchset/extras"
if use first-item-under-pointer; then
cd "${S}"; epatch ${EXTRAS}/FirstItemUnderPointer.patch
fi
if use thin-geometry-proxy; then
cd "${S}"; epatch ${EXTRAS}/ThinGeometryProxy.patch
fi
if use flux-corner; then
cd "${S}"; epatch ${EXTRAS}/FluxCorner.patch
fi
fi

# use readline in FvwmConsole.
if use readline; then
myconf="${myconf} --without-termcap-library"
fi

# FvwmGtk can be built as a gnome application, or a Gtk+ application.
if ! use gtk; then
myconf="${myconf} --disable-gtk --without-gnome"
else
einfo "ATTN: You can safely ignore any imlib related configure errors."
myconf="${myconf} --with-imlib-prefix=${T}"
myconf="${myconf} --without-gnome"
fi

# set the local maintainer for fvwm-bug.
# taviso is not maintainer of this ebuild
# export FVWM_BUGADDR="taviso@gentoo.org"

# fvwm-convert-2.6 is just a stub, contains no code - remove it for now.
# fvwm-convert-2.2 has a man page, but the script is no longer distributed.
rm -f ${D}/usr/bin/fvwm-convert-2.6 ${D}/usr/share/man/man1/fvwm-convert-2.6.1
rm -f ${D}/usr/share/man/man1/fvwm-convert-2.2.1

fvwm comes with NO WARRANTY, to the extent permitted by law. You may
redistribute copies of fvwm under the terms of the GNU General Public License.
For more information about these matters, see the file named COPYING.

Well, I hope this will interest someone, I know we're many fvwm users here
I'm open to all notices on my work

UPDATE :
- 2006-09-09 : added iconv USEflag in order to have iconv support without using nls USEflag, because I don't have nls USEflag but i need iconv support for my menus
- 2006-10-08 : updated Stipples patch
- 2006-10-14 : patches updated, new patches and new extras USE flag for irreversible patches
- 2006-11-12 : cleaned ebuild, 2 patchs updated (FluboxHandles and RoundedCorners) and use of the translucent patch from taviso's ebuild (slightly modified in order to apply correctly) in place of the former one.
- 2006-11-25 : big changes : dependancy to imlib removed, all patches are contained in a single tarball in the distfiles, a new use vanilla to have a plain Fvwm CVS without the patches (except the translucent patchs), and one use per irreversible patch : first-item-under-pointer, thin-geometry-proxy et flux-corner_________________Google+ | Twitter

Last edited by geekounet on Sat Nov 25, 2006 6:17 pm; edited 10 times in total

Sorry, but i'm a little nooby in this things. I would gladly use rounded corners in fvwm, but i cannot install fvwm from this ebuild. When i try to stand the ebuild that has been given above in for the original ebuild, all i get is:

Hope it's not too late, but I just wanted to thank pierreg for the ebuild. I was able to emerge the cvs version, and the patches applied perfectly. I'm now able to use fvwm with no regrets. Thanks alot!

Well, after saying my thanks I now have a problem that would like solved

When using the ActiveHover style entry for my window decor, I find that when I move my mouse over the buttons, strange behavior occurs. What seems to be happening is that, if a pixmap isn't defined for that button then what I see as the hover pixmap appears to be the pixmap used for the inactive state of my decor. Also, when I do specify a pixmap for the ActiveHover state, the pixmap appears but the area around the pixmap does not use the pixmap used for the main window title. Also, when the pixmap appears it does not use the same alignment that was specified for that button.

For example, I specified button 2 to be left aligned. But when I set the activehover pixmap for that same button, when hovered the pixmap is not left aligned. And the area round button 2 when hovered appears grayish, almost like the main window title is not being used when hovering.

I know that for the hover button patch, it was said it might not work well for UseTitleStyle, but someone else said earlier it worked fine for them....Could someone help explain to me why this behavior is happening, and/or how to fix my config to correct it? I don't have anywhere to put any screenshots or such to explain the behavior...and if this would better help others to help me, let me know and I will look into finding a place to put them. Thanks.

Yes, these patches are not perfect.
I don't use the Hover patch yet, but I tried in order to understand your problem.
I think you should set a pixmap for the hover state for all buttons even for those who don't need it (with the same pixmap as the one for the active state). And you should do so for the TitleStyle for hover state so that the button's background don't change in hover state.
For the alignement of the button, I don't know, I don't use it, I don't even know what does that do..._________________Google+ | Twitter

The AddTitleStyle for the ActiveHover state fixed it. I don't know why I didn't try that, guess I still don't understand the format of the configuration for window decorations in FVWM...

The alignment problem is still there, the button for the active hover state doesn't use the same alignment as what was specified for all other states. Its probably because this may not be supported for the hover state. Oh well, it's no big deal. I just liked to have the buttons a bit closer together as now, at least in my opinion, there's a bit too much of a gap b/w the buttons. It's fine the way it is now, but if anybody has any advice on how to fix this I'd appreciate it. Thanks again pierreg.

Hi I'm trying to install this ebuild. I downloaded the the file to portage/distfiles and saved the ebuild from this post in portage/x11-wm/fvwm. When I run the following command I get the following message:

Code:

localhost ekoster # USE="-*" emerge -pv =x11-wm/fvwm-9999

These are the packages that would be merged, in order:

Calculating dependencies
!!! All ebuilds that could satisfy "=x11-wm/fvwm-9999" have been masked.
!!! One of the following masked packages is required to complete your request:
- x11-wm/fvwm-9999 (masked by: missing keyword)

For more information, see MASKED PACKAGES section in the emerge man page or
refer to the Gentoo Handbook.

First, don't use the ebuild from this post : download the file fvwm-cvs.tar.bz2 and extract it in your overlay (/usr/local/portage) (this is not to be put in distfiles). This because you don't only need the ebuild, but the patchs too, located in files/ directory. Then edit the ebuild and add ~amd64 to KEYWORDS (this is the easy way ), and then ebuild /usr/local/portage/x11-wm/fvwm/fvwm-9999.ebuild digest.
Then you just have to emerge it

EDIT: be sure you have PORTDIR_OVERLAY="/usr/local/portage" in your make.conf _________________Google+ | Twitter

Nothing changed between this ebuild and the original ebuild regarding libxft. Have you this problem with fvwm 2.6.16 too ? Can you select this font you want in another application ?
There was a recent update of fontconfig (2.3.2-r1 -> 2.4.1), and some files in /etc changed, did you etc-update properly ?
And also, verify that you have the truetype useflag and try to re-emerge fvwm._________________Google+ | Twitter

Here is a new update :
- previous patches updated, configuration changed for some of them
- some new patches, some of them irreversible
- new extras USE flag in order to activate/deactivate those irreversible patches.

As before, you can delete any patch you don't want, but be warned that some patches need others in order to apply correctly.
Note : 16-WindowButtonBug.patch is needed to correct a 07-FluxboxHandles.patch bug.

The files are still available at the same place, but prefer on my home server, it's more up-to-date.

- 2006-11-12 : cleaned ebuild, 2 patchs updated (FluboxHandles and RoundedCorners) and use of the translucent patch from taviso's ebuild (slightly modified in order to apply correctly) in place of the former one._________________Google+ | Twitter