View previous topic :: View next topic |
Author |
Message |
geekounet Bodhisattva
Joined: 11 Oct 2004 Posts: 3772 Location: Wellington, Aotearoa
|
Posted: Sat May 27, 2006 2:30 pm Post subject: [Ebuild] FVWM CVS |
|
|
Hi all !
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: $
inherit autotools cvs eutils flag-o-matic
ECVS_SERVER="cvs.fvwm.org:/home/cvs/fvwm"
ECVS_USER="anonymous"
ECVS_PASS="guest"
ECVS_MODULE="fvwm"
PATCHSET="fvwm-patchset-20061125.tar.gz"
DESCRIPTION="An extremely powerful ICCCM-compliant multiple virtual desktop window manager - CVS version"
HOMEPAGE="http://www.fvwm.org/"
SRC_URI="!vanilla? (
http://akoya.homelinux.net/fvwm/${PATCHSET}
http://zeg33k.free.fr/fvwm/${PATCHSET}
)"
LICENSE="GPL-2 FVWM"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86"
IUSE="bidi debug extras first-item-under-pointer flux-corner gtk iconv nls perl png readline rplay stroke tk thin-geometry-proxy truetype vanilla xinerama"
S="${WORKDIR}/${ECVS_MODULE}"
RDEPEND="readline? ( sys-libs/readline sys-libs/ncurses )
gtk? ( =x11-libs/gtk+-1.2* )
rplay? ( media-sound/rplay )
bidi? ( dev-libs/fribidi )
png? ( media-libs/libpng )
stroke? ( dev-libs/libstroke )
perl? ( tk? ( dev-lang/tk
dev-perl/perl-tk
>=dev-perl/X11-Protocol-0.56 ) )
truetype? ( virtual/xft media-libs/fontconfig )
dev-lang/perl
sys-libs/zlib
sys-apps/debianutils
|| ( (
x11-libs/libXpm
x11-libs/libXft
xinerama? ( x11-libs/libXinerama ) )
virtual/x11 )"
# XXX: gtk2 perl bindings require dev-perl/gtk2-perl, worth a dependency?
# XXX: gtk perl bindings require dev-perl/gtk-perl, worth a dependency?
# XXX: netpbm is used by FvwmScript-ScreenDump, worth a dependency?
DEPEND="${RDEPEND}
dev-util/pkgconfig
!x11-wm/metisse
|| ( (
x11-libs/libXrandr
x11-proto/xextproto
x11-proto/xproto
xinerama? ( x11-proto/xineramaproto ) )
virtual/x11 )"
src_unpack() {
export EPATCH_OPTS="-F3 -l"
cvs_src_unpack
# 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
cd "${S}"; eautoreconf
}
src_compile() {
local myconf="--libexecdir=/usr/lib --with-imagepath=/usr/include/X11/bitmaps:/usr/include/X11/pixmaps:/usr/share/icons/fvwm --enable-package-subdirs"
# 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"
# reccommended by upstream
append-flags -fno-strict-aliasing
econf ${myconf} `use_enable truetype xft` \
`use_with stroke stroke-library` \
`use_enable nls` \
`use_enable iconv` \
`use_enable png png-library` \
`use_enable bidi` \
`use_enable xinerama` \
`use_enable debug debug-msgs` \
`use_enable debug command-log` \
`use_enable perl perllib` \
`use_with readline readline-library` \
`use_with rplay rplay-library` || die
emake || die
}
src_install() {
emake DESTDIR=${D} install || die
if use perl; then
local toolkits="gtk tcltk"
if ! use tk; then
# Remove the Tk bindings (requires perl-tk)
rm -f ${D}/usr/share/fvwm/perllib/FVWM/Module/Tk.pm
toolkits=${toolkits/tcltk/}
fi
if ! use gtk; then
# Remove gtk bindings (requires gtk-perl/gtk2-perl)
rm -f ${D}/usr/share/fvwm/perllib/FVWM/Module/Gtk.pm \
${D}/usr/share/fvwm/perllib/FVWM/Module/Gtk2.pm
toolkits=${toolkits/gtk/}
fi
toolkits=${toolkits// /}
if ! test "${toolkits}"; then
# No perl toolkit bindings wanted, remove the unneeded files
# and empty directories.
rm -f ${D}/usr/share/fvwm/perllib/FVWM/Module/Toolkit.pm
find ${D}/usr/share/fvwm/perllib -depth -type d -exec rmdir {} \; 2>/dev/null
fi
else
# Remove useless script if perllib isnt required.
rm -rf ${D}/usr/bin/fvwm-perllib ${D}/usr/share/man/man1/fvwm-perllib.1
fi
# neat utility for testing fvwm behaviour on applications setting various
# hints, creates a simple black window with configurable hints set.
if use debug; then
dobin ${S}/tests/hints/hints_test
newdoc ${S}/tests/hints/README README.hints
fi
# 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
# ive included `exec` to save a few bytes of memory.
echo "#!/bin/bash" > fvwm2
echo "exec /usr/bin/fvwm2" >> fvwm2
exeinto /etc/X11/Sessions
doexe fvwm2
# desktop entry for gdm, kdm, ...
dodir /usr/share/xsessions
insinto /usr/share/xsessions
doins ${FILESDIR}/${PN}.desktop
dodoc AUTHORS ChangeLog COPYING README NEWS docs/ANNOUNCE docs/BUGS \
docs/COMMANDS docs/DEVELOPERS docs/FAQ docs/error_codes docs/TODO \
docs/fvwm.lsm
dodoc ${FILESDIR}/README.transluceny
# fix a couple of symlinks.
prepallman
}
pkg_postinst() {
einfo
einfo "For information about the changes in this release, please"
einfo "refer to the NEWS file."
einfo
}
|
And here is the final result :
Code: | fvwm 2.5.19 (from cvs) compiled on Nov 25 2006 at 18:55:06
with support for: ReadLine, XPM, PNG, Shape, XShm, SM, XRender, XFT
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
Note : I originally made this post on the French forum
PS : sorry my bad english ...
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
Last edited by geekounet on Sat Nov 25, 2006 6:17 pm; edited 10 times in total |
|
Back to top |
|
|
bMd Tux's lil' helper
Joined: 07 Jul 2004 Posts: 110
|
Posted: Sat May 27, 2006 10:26 pm Post subject: |
|
|
Thanks pierreg
Compiled fine, now to try it out :cheers: |
|
Back to top |
|
|
|cub| n00b
Joined: 12 Feb 2005 Posts: 59 Location: UA
|
Posted: Sun May 28, 2006 8:10 pm Post subject: |
|
|
thnx! great patchset! i've just discovered it _________________ sorry for my english |
|
Back to top |
|
|
Chickpea l33t
Joined: 03 Jun 2002 Posts: 846 Location: Vancouver WA
|
Posted: Thu Jun 08, 2006 4:59 am Post subject: Thanks for the ebuild |
|
|
I just had to say thank you for the ebuild.....I have not tried any of the new features now availble thru the patches but I had success building the cvs version of Fvwm.
Yeah! |
|
Back to top |
|
|
pressenter n00b
Joined: 06 Dec 2005 Posts: 48
|
Posted: Thu Jun 15, 2006 12:26 pm Post subject: |
|
|
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:
Code: |
>>> Emerging (2 of 2) x11-wm/fvwm-2.5.16 to /
>>> checking ebuild checksums
!!! Digest verification failed:
!!! /usr/portage/x11-wm/fvwm/fvwm-2.5.16.ebuild
!!! Reason: Filesize does not match recorded size
!!! Got: 6731
!!! Expected: 6168 |
and when i make a new ebuild:
Code: |
meanmachine fvwm # emerge =fvwm-9999.ebuild -p
These are the packages that would be merged, in order:
Calculating dependencies
!!! '/usr/portage/x11-wm/fvwm/=fvwm-9999.ebuild is not in a valid portage tree hierarchy or does not exist'
|
How can i solve this ? |
|
Back to top |
|
|
RobertDavid Apprentice
Joined: 08 Aug 2005 Posts: 271 Location: Czech Republic
|
Posted: Thu Jun 15, 2006 1:07 pm Post subject: |
|
|
pressenter:
You have to add "x11-wm/fvwm ~x86" to /etc/portage/package.keywords
or -* if you are not x86
and if you want to build specific ebuild you need to type in whole name "=x11-wm/fvwm-9999" and NO "=fvwm-9999.ebuild" _________________ Arch & Fluxbox & 2.6.24-rc-zen!!!!
robertek.brevnov.net |
|
Back to top |
|
|
pressenter n00b
Joined: 06 Dec 2005 Posts: 48
|
Posted: Thu Jun 15, 2006 1:24 pm Post subject: |
|
|
Iknow that and i tried that also, but still it won't go through the digest verification... |
|
Back to top |
|
|
bMd Tux's lil' helper
Joined: 07 Jul 2004 Posts: 110
|
Posted: Thu Jun 15, 2006 10:33 pm Post subject: |
|
|
@ pressenter:
Have you extracted fvwm-cvs.tar.bz2 to your portage overlay?? |
|
Back to top |
|
|
vguy85 n00b
Joined: 17 Mar 2006 Posts: 11
|
Posted: Sun Jul 16, 2006 6:01 am Post subject: |
|
|
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! |
|
Back to top |
|
|
geekounet Bodhisattva
Joined: 11 Oct 2004 Posts: 3772 Location: Wellington, Aotearoa
|
Posted: Sun Jul 16, 2006 9:29 am Post subject: |
|
|
I'm glad to see you like it
I sometimes do some corrections to the ebuild, add some patches, etc., so check the archive from times to times |
|
Back to top |
|
|
vguy85 n00b
Joined: 17 Mar 2006 Posts: 11
|
Posted: Sun Jul 16, 2006 10:14 pm Post subject: |
|
|
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.
Here is the relevant section of my FVWM config:
# Window Decor
Style "*" UseDecor myDecor
Style "*" BorderWidth 0
Style "*" HandleWidth 1
Style "*" GrabFocusOn
Style "*" DecorateTransient
ButtonState Hover true
DestroyDecor myDecor
AddToDecor myDecor
+ BorderStyle -- simple
+ BorderStyle -- NoInset HiddenHandles
+ TitleStyle LeftJustified Height 28 -- flat
+ ButtonStyle 1 MiniIcon -- flat
+ ButtonStyle 2 \
ActiveUp (Pixmap $[myImg]/window-close.png -- flat) \
ActiveDown (Pixmap $[myImg]/window-close-active-down.png -- flat) \
Inactive (Pixmap $[myImg]/window-close-inactive.png -- flat)
+ ButtonStyle 4 \
ActiveUp (Pixmap $[myImg]/window-maximize-active.png -- flat) \
ActiveDown (Pixmap $[myImg]/window-maximize-active-down.png -- flat) \
Inactive (Pixmap $[myImg]/window-maximize-inactive.png -- flat)
+ ButtonStyle 6 \
ActiveUp (Pixmap $[myImg]/window-minimize-active.png -- flat) \
ActiveDown (Pixmap $[myImg]/window-minimize-active-down.png -- flat) \
Inactive (Pixmap $[myImg]/window-minimize-inactive.png -- flat)
+ ButtonStyle 2 -- Left
#+ ButtonStyle 4 -- Right
+ ButtonStyle 6 -- Right
+ AddTitleStyle Active MultiPixmap \
Main AdjustedPixmap $[myImg]/window-title.png, \
#LeftMain AdjustedPixmap $[myImg]/window-title.png, \
#RightMain AdjustedPixmap $[myImg]/window-title.png, \
LeftEnd AdjustedPixmap $[myImg]/window-left.png, \
RightEnd AdjustedPixmap $[myImg]/window-right.png, \
#UnderText AdjustedPixmap $[myImg]/window-title.png, \
#LeftOfText AdjustedPixmap $[myImg]/window-title.png, \
#RightOfText AdjustedPixmap $[myImg]/window-title.png, \
Buttons AdjustedPixmap $[myImg]/window-title.png, \
#LeftButtons AdjustedPixmap $[myImg]/window-left.png, \
#RightButtons AdjustedPixmap $[myImg]/window-right.png
+ ButtonStyle All -- UseTitleStyle
+ AddButtonStyle 2 ActiveHover (Pixmap $[myImg]/window-close.png -- flat)
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. |
|
Back to top |
|
|
geekounet Bodhisattva
Joined: 11 Oct 2004 Posts: 3772 Location: Wellington, Aotearoa
|
Posted: Mon Jul 17, 2006 2:00 am Post subject: |
|
|
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... |
|
Back to top |
|
|
vguy85 n00b
Joined: 17 Mar 2006 Posts: 11
|
Posted: Mon Jul 17, 2006 3:04 am Post subject: |
|
|
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. |
|
Back to top |
|
|
frogb n00b
Joined: 21 Sep 2003 Posts: 50
|
Posted: Sat Jul 22, 2006 11:41 pm Post subject: |
|
|
Hi,
The hover patch is incomplete and doesn't work well with all configurations. To make the buttons close together, I just use the default alignment and then set the buttonwidth. Something like:
Code: | TitleStyle ButtonWidth 20 |
It's from one of the patches. |
|
Back to top |
|
|
geekounet Bodhisattva
Joined: 11 Oct 2004 Posts: 3772 Location: Wellington, Aotearoa
|
Posted: Sat Sep 09, 2006 7:53 pm Post subject: |
|
|
Small update : 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
And please give me feedback on this ebuild |
|
Back to top |
|
|
Gentoo-Ed Guru
Joined: 21 Apr 2005 Posts: 442 Location: the Netherlands
|
Posted: Sat Sep 30, 2006 7:37 am Post subject: |
|
|
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. |
I use an amd64 machine |
|
Back to top |
|
|
geekounet Bodhisattva
Joined: 11 Oct 2004 Posts: 3772 Location: Wellington, Aotearoa
|
Posted: Sat Sep 30, 2006 1:02 pm Post subject: |
|
|
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 |
|
Back to top |
|
|
Gentoo-Ed Guru
Joined: 21 Apr 2005 Posts: 442 Location: the Netherlands
|
Posted: Sat Sep 30, 2006 2:19 pm Post subject: |
|
|
thanks it emerged. It even gave me my icons in fvwm-crystal ... |
|
Back to top |
|
|
Gentoo-Ed Guru
Joined: 21 Apr 2005 Posts: 442 Location: the Netherlands
|
Posted: Sun Oct 01, 2006 7:25 am Post subject: |
|
|
One more question. I have a problem with my fonts, see an other font of mine. It seems I need to relink libxft against FVWM is this done in this ebuild file too? |
|
Back to top |
|
|
geekounet Bodhisattva
Joined: 11 Oct 2004 Posts: 3772 Location: Wellington, Aotearoa
|
Posted: Sun Oct 01, 2006 9:15 am Post subject: |
|
|
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. |
|
Back to top |
|
|
Gentoo-Ed Guru
Joined: 21 Apr 2005 Posts: 442 Location: the Netherlands
|
Posted: Sun Oct 01, 2006 10:23 am Post subject: |
|
|
I have truetype. But I'm continuing with my wn post so not to mess this one. |
|
Back to top |
|
|
geekounet Bodhisattva
Joined: 11 Oct 2004 Posts: 3772 Location: Wellington, Aotearoa
|
Posted: Sat Oct 14, 2006 6:55 pm Post subject: |
|
|
Hi !
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.
More informations on those patches on this post on the Fvwm forum and on their author website, and here for Thomas Adam Stipples patch.
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.
Enjoy ! |
|
Back to top |
|
|
Zepp Veteran
Joined: 15 Mar 2004 Posts: 1246 Location: Ontario, Canada
|
Posted: Thu Nov 09, 2006 4:41 am Post subject: |
|
|
Your website seems to be down. If you could send it to me I could help mirror it for you. |
|
Back to top |
|
|
Zepp Veteran
Joined: 15 Mar 2004 Posts: 1246 Location: Ontario, Canada
|
Posted: Thu Nov 09, 2006 6:09 am Post subject: |
|
|
I just realized there was an ftp link too and it worked! Thanks. |
|
Back to top |
|
|
geekounet Bodhisattva
Joined: 11 Oct 2004 Posts: 3772 Location: Wellington, Aotearoa
|
Posted: Sat Nov 11, 2006 11:45 pm Post subject: |
|
|
- 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. |
|
Back to top |
|
|
|