Warning: there may be occasional oddness due to css and blog edits. **KNOWN ISSUE: possible hidden text**

Tuesday, November 4, 2025

FVWM3 meson conversion

I was getting ready to write a blog post about how I configure FVWM3 and assorted things related to how I use FVWM3, and I realized I hadn't updated my fvwm3-dev git repo in a while.  It turns out a very long while, whoops!  I had been on top of it properly and keeping it current.  Another thing I discovered is that FVWM3 has converted to use meson as its build mechanism.

I believe meson has a bit better documentation in the porter's handbook since the last time I encountered it.  It was a bit of a struggle, I made the obvious changes, and understood that the options framework needed items to switch from using 'CONFIGURE' to 'MESON' and eventually I adjusted all of them.  Then, partly because I didn't yet understand and my missteps made it seem like I was making progress, I created a do-build section in the Makefile.  This technique seemed to work but eventually I noticed that none of the configuration settings were being honored.  I beat my head against this wall for a while until I decided to search via Freshports to find other ports that might be similar in some ways.  It looked like I was doing everything right before I looked at a Makefile that had a series of MESON_ARG lines, the most important one being --auto-features=disabled because after I added that to my makefile, FVWM3 was finally successfully building everything, and it was doing this rather quickly.  Along with the necessary changes, I did some cleanup of the Makefile, the diff below.

root@ichigo:/home/tigersharke/fvwm3-dev # diff -y -W 170 Makefile* 
PORTNAME=                                       fvwm3                                   PORTNAME=                                       fvwm3
DISTVERSION=                            g20251031                                   |   DISTVERSION=                            g20250224
CATEGORIES=                                     x11-wm                                  CATEGORIES=                                     x11-wm
MASTER_SITES=                           GH                                              MASTER_SITES=                           GH
PKGNAMESUFFIX=                          -dev                                            PKGNAMESUFFIX=                          -dev
DISTNAME=                                       ${PORTNAME}-${GH_TAGNAME}               DISTNAME=                                       ${PORTNAME}-${GH_TAGNAME}
DIST_SUBDIR=                            ${PORTNAME}                                     DIST_SUBDIR=                            ${PORTNAME}

MAINTAINER=                                     nope@nothere                            MAINTAINER=                                     nope@nothere
COMMENT=                                F? Virtual Window Manager                       COMMENT=                                F? Virtual Window Manager
WWW=                                            https://www.fvwm.org/                   WWW=                                            https://www.fvwm.org/

LICENSE=                                GPLv2                                           LICENSE=                                GPLv2

LIB_DEPENDS=                            libevent.so:devel/libevent \                    LIB_DEPENDS=                            libevent.so:devel/libevent \
                                                        libfreetype.so:print/freet                                                              libfreetype.so:print/freet
                                                        libfontconfig.so:x11-fonts                                                              libfontconfig.so:x11-fonts

USES=                                           meson compiler:c11 cpe \            |   USES=                                           autoreconf compiler:c11 cpe localb
                                                        pkgconfig python xorg gl r  |                                                           pkgconfig python xorg gl r
                                                        localbase:ldflags           <

CPE_VENDOR=                             fvwm                                            CPE_VENDOR=                             fvwm
CPE_PRODUCT=                            fvwm                                            CPE_PRODUCT=                            fvwm
USE_GITHUB=                                     nodefault                               USE_GITHUB=                                     nodefault
GH_ACCOUNT=                                     fvwmorg                                 GH_ACCOUNT=                                     fvwmorg
GH_PROJECT=                                     fvwm3                                   GH_PROJECT=                                     fvwm3
GH_TAGNAME=                                     6a9b86f20bcc9f36a3e52273ed79b23fc8  |   GH_TAGNAME=                                     4592849dc38e6e96ff8feded3117e8f6f2

USE_GL=                                         gl glu                                  USE_GL=                                         gl glu
USE_LDCONFIG=                           yes                                             USE_LDCONFIG=                           yes
USE_XORG=                               ice x11 xext xrandr xt xft xtrans               USE_XORG=                               ice x11 xext xrandr xt xft xtrans

#MESON_ARGS=                            --buildtype debug                           |   GNU_CONFIGURE=                          yes
MESON_ARGS=                                     --auto-features=disabled            |   CONFIGURE_ARGS=                         ac_cv_path_PYTHON=${PYTHON_CMD}
                                                                                    >   #AUTORECONF_WRKSRC=

CONFLICTS_INSTALL=                      fvwm fvwm-2.* fvwm3                             CONFLICTS_INSTALL=                      fvwm fvwm-2.* fvwm3

WRKSRC=                                         ${WRKDIR}/fvwm3-${GH_TAGNAME}           WRKSRC=                                         ${WRKDIR}/fvwm3-${GH_TAGNAME}
MESON_BUILD_DIR=                        _build                                      <

OPTIONS_DEFINE=                         FONTCONF FRIBIDI GOLANG ICONV MANPAGES NLS      OPTIONS_DEFINE=                         FONTCONF FRIBIDI GOLANG ICONV MANPAGES NLS
                                                        PERL PNG SHAPED SHAREDMEM                                                               PERL PNG SHAPED SHAREDMEM 
                                                        XFTTEST XI XPM XSM                                                                      XFTTEST XI XPM XSM
OPTIONS_DEFAULT=                        FONTCONF ICONV MANPAGES PNG SHAPED SHAREDM      OPTIONS_DEFAULT=                        FONTCONF ICONV MANPAGES PNG SHAPED SHAREDM
                                                        XCURSOR XDG XFTTEST XI XRE                                                              XCURSOR XDG XFTTEST XI XRE
OPTIONS_SUB=                            yes                                             OPTIONS_SUB=                            yes

FONTCONF_DESC=                          Try to compile and run a test fontconfig p      FONTCONF_DESC=                          Try to compile and run a test fontconfig p
#FRIBIDI_DESC=                                                                          #FRIBIDI_DESC=
GOLANG_DESC=                            Compilation of modules written in Go (Fvwm      GOLANG_DESC=                            Compilation of modules written in Go (Fvwm
MANPAGES_DESC=                          Generation of man pages (via mandoc)            MANPAGES_DESC=                          Generation of man pages (via mandoc)
SHAPED_DESC=                            shaped window support                           SHAPED_DESC=                            shaped window support
SHAREDMEM_DESC=                         MIT Shared Memory Extension                     SHAREDMEM_DESC=                         MIT Shared Memory Extension
SVG_DESC=                                       Scalable vector graphics (SVG imag      SVG_DESC=                                       Scalable vector graphics (SVG imag
XCURSOR_DESC=                           Alpha-blend rendering via xrender               XCURSOR_DESC=                           Alpha-blend rendering via xrender
XDG_DESC=                                       Add py-xdg dependency for menu gen      XDG_DESC=                                       Add py-xdg dependency for menu gen
XFTTEST_DESC=                           Try to compile and run a test Xft program       XFTTEST_DESC=                           Try to compile and run a test Xft program
XI_DESC=                                        X Input extension library support       XI_DESC=                                        X Input extension library support
XRENDER_DESC=                           Alpha-blend rendering                           XRENDER_DESC=                           Alpha-blend rendering
XSM_DESC=                                       X11 session management support          XSM_DESC=                                       X11 session management support

FONTCONF_MESON_ENABLE=          fontconfigtest                                      |   FONTCONF_CONFIGURE_ENABLE=      fontconfigtest

FRIBIDI_LIB_DEPENDS=            libfribidi.so:converters/fribidi                        FRIBIDI_LIB_DEPENDS=            libfribidi.so:converters/fribidi
FRIBIDI_MESON_ENABLE=           bidi                                                |   FRIBIDI_CONFIGURE_ENABLE=       bidi

# Does this need something more for it to build the module FvwmPrompt properly?         # Does this need something more for it to build the module FvwmPrompt properly?
GOLANG_USES=                            go:no_targets                                   GOLANG_USES=                            go:no_targets
GOLANG_MESON_ENABLE=            golang                                              |   GOLANG_CONFIGURE_ENABLE=        golang

ICONV_USES=                                     iconv                               |   ICONV_USES=                                     iconv:translit
ICONV_MESON_ENABLE=                     iconv                                       |   ICONV_CONFIGURE_ENABLE=         iconv

MANPAGES_BUILD_DEPENDS=         asciidoctor:textproc/rubygem-asciidoctor                MANPAGES_BUILD_DEPENDS=         asciidoctor:textproc/rubygem-asciidoctor
MANPAGES_MESON_TRUE=            mandoc                                              |   MANPAGES_USES=                          gmake
                                                                                    >   MANPAGES_CONFIGURE_ENABLE=      mandoc

NLS_USES=                                       gettext-runtime                         NLS_USES=                                       gettext-runtime
NLS_MESON_ENABLE=                       nls                                         |   NLS_CONFIGURE_ENABLE=           nls

PERL_USES=                                      perl5                                   PERL_USES=                                      perl5
PERL_MESON_ENABLE=                      perllib                                     |   PERL_CONFIGURE_ENABLE=          perllib

PNG_LIB_DEPENDS=                        libpng.so:graphics/png                          PNG_LIB_DEPENDS=                        libpng.so:graphics/png
PNG_MESON_ENABLE=                       png                                         |   PNG_CONFIGURE_ENABLE=           png

#SHAPED_DEPENDS=                        #                                               #SHAPED_DEPENDS=                        #
SHAPED_MESON_ENABLE=            shape                                               |   SHAPED_CONFIGURE_ENABLE=        shape

SHAREDMEM_MESON_ENABLE=         shm                                                 |   SHAREDMEM_CONFIGURE_ENABLE=     shm

SVG_LIB_DEPENDS=                        librsvg-2.so:graphics/librsvg2-rust             SVG_LIB_DEPENDS=                        librsvg-2.so:graphics/librsvg2-rust
SVG_USES=                                       gnome                                   SVG_USES=                                       gnome
SVG_USE=                                        gnome=cairo,glib20,gdkpixbufextra   |   SVG_USE=                                        gnome=cairo,glib20,gdkpixbuf2
SVG_MESON_ENABLE=                       cairo-svg                                   |   SVG_CONFIGURE_ENABLE=           rsvg

XCURSOR_USE=                            xorg=xrender,xcursor                            XCURSOR_USE=                            xorg=xrender,xcursor
XCURSOR_MESON_ENABLE=           xrender                                             |   XCURSOR_CONFIGURE_ENABLE=       xrender

# py-xdg fails with python3.9 which is why python 3.7-3.8 was in Uses                   # py-xdg fails with python3.9 which is why python 3.7-3.8 was in Uses
XDG_RUN_DEPENDS=                        ${PYTHON_SITELIBDIR}/xdg/__init__.py:devel      XDG_RUN_DEPENDS=                        ${PYTHON_SITELIBDIR}/xdg/__init__.py:devel

XFTTEST_MESON_ENABLE=           xfttest                                             |   XFTTEST_CONFIGURE_ENABLE=       xfttest

XI_USE=                                         xorg=xi xext                            XI_USE=                                         xorg=xi xext
XI_MESON_ENABLE=                        xi                                          |   XI_CONFIGURE_ENABLE=            xi

XPM_USE=                                        xorg=xpm                                XPM_USE=                                        xorg=xpm
#XPM_MESON_OFF=                         xpm                                         |   XPM_CONFIGURE_OFF=                      --with-xpm-library=no

XRENDER_USE=                            xorg=xrender                                    XRENDER_USE=                            xorg=xrender
XRENDER_MESON_ENABLE=           xrender                                             |   XRENDER_CONFIGURE_ENABLE=       xrender

XSM_USE=                                        xorg=sm                                 XSM_USE=                                        xorg=sm
XSM_MESON_ENABLE=                       sm                                          |   XSM_CONFIGURE_ENABLE=           sm

.include                                                           .include 

# Is this needed?                                                                       # Is this needed?
#                                                                                       #
# package fvwm3: no Go files in                                                         # package fvwm3: no Go files in
# /usr/home/tigersharke/Ported_Software/x11-wm/fvwm3-dev/work/src/fvwm3                 # /usr/home/tigersharke/Ported_Software/x11-wm/fvwm3-dev/work/src/fvwm3
# go/x11-wm_fvwm3-dev/fvwm3-4f1dced4820c670fb3a8f2c4a836159be97f8e0b/                   # go/x11-wm_fvwm3-dev/fvwm3-4f1dced4820c670fb3a8f2c4a836159be97f8e0b/
#       g20220919.mod                                                                   #       g20220919.mod
#.if ${PORT_OPTIONS:MGOLANG}                                                        |   #.if ${PORT OPTIONS:MGOLANG}
#       GO_MODULE golang.org/x/tools                                                |   #GO_MODULE      golang.org/x/tools
#       GO_MODULE github.com/fvwmorg/FvwmPrompt                                     |   #GO_MODULE              github.com/fvwmorg/FvwmPrompt
#       GO_TARGET ${WRKSRC}/bin/FvwmPrompt/go.mod                                   |   #GO_TARGET      ${WRKSRC}/bin/FvwmPrompt/go.mod
#.endif                                                                                 #.endif

# This needs a better method if available.                                              # This needs a better method if available.
#post-patch:                                                                        |   post-patch:
#       @${REINPLACE_CMD} -e 's,/etc/,${LOCALBASE}/etc/,g' \                        |           @${REINPLACE_CMD} -e 's,/etc/,${LOCALBASE}/etc/,g' \
#       ${WRKSRC}/bin/fvwm-menu-desktop.in                                          |           ${WRKSRC}/bin/fvwm-menu-desktop.in

post-install-PERL-off:                                                                  post-install-PERL-off:
.for script in fvwm-convert-2.6 fvwm-menu-directory fvwm-menu-xlock fvwm-perllib        .for script in fvwm-convert-2.6 fvwm-menu-directory fvwm-menu-xlock fvwm-perllib
        ${RM} ${STAGEDIR}${PREFIX}/bin/${script}                                                ${RM} ${STAGEDIR}${PREFIX}/bin/${script}
.endfor                                                                                 .endfor
.for script in FvwmConsoleC.pl FvwmPerl                                                 .for script in FvwmConsoleC.pl FvwmPerl
        ${RM} ${STAGEDIR}${PREFIX}/libexec/fvwm3/${PORTVERSION}/${script}                       ${RM} ${STAGEDIR}${PREFIX}/libexec/fvwm3/${PORTVERSION}/${script}
.endfor                                                                                 .endfor

# This detail has been annoying, why are some manpages all lowercase and some           # This detail has been annoying, why are some manpages all lowercase and some
# have an initial capital? Whether there was a purpose, the vast majority of            # have an initial capital? Whether there was a purpose, the vast majority of
# man1 manpages are all lowercase. Cure this here. Also fix the recent change           # man1 manpages are all lowercase. Cure this here. Also fix the recent change
# from /usr/local/man to /usr/local/share/man  It is a mistake to change all            # from /usr/local/man to /usr/local/share/man  It is a mistake to change all
# these manpages to lowercase only because fvwm scripts use those camelcased,           # these manpages to lowercase only because fvwm scripts use those camelcased,
# instead, for convenience create symbolic links.                                       # instead, for convenience create symbolic links.

# This rename worked previously but now does not, redundant I suppose.                  # This rename worked previously but now does not, redundant I suppose.
#       @${MV} ${STAGEDIR}${LOCALBASE}/man/man1/* \                                     #       @${MV} ${STAGEDIR}${LOCALBASE}/man/man1/* \
#               ${STAGEDIR}${LOCALBASE}/share/man/man1/                                 #               ${STAGEDIR}${LOCALBASE}/share/man/man1/
post-stage:                                                                             post-stage:
.if ${PORT_OPTIONS:MMANPAGES}                                                       <
        @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmAnimate.1 \                           @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmAnimate.1 \
                ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmanimate.1                                    ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmanimate.1
        @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmAuto.1 \                              @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmAuto.1 \
                ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmauto.1                                       ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmauto.1
        @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmBacker.1 \                            @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmBacker.1 \
                ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmbacker.1                                     ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmbacker.1
        @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmButtons.1 \                           @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmButtons.1 \
                ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmbuttons.1                                    ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmbuttons.1
        @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmCommand.1 \                           @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmCommand.1 \
                ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmcommand.1                                    ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmcommand.1
        @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmEvent.1 \                             @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmEvent.1 \
                ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmevent.1                                      ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmevent.1
        @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmForm.1 \                              @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmForm.1 \
                ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmform.1                                       ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmform.1
        @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmIconMan.1 \                           @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmIconMan.1 \
                ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmiconMan.1                                    ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmiconMan.1
        @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmIdent.1 \                             @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmIdent.1 \
                ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmident.1                                      ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmident.1
        @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmMFL.1 \                               @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmMFL.1 \
                ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmmfl.1                                        ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmmfl.1
        @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmPager.1 \                             @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmPager.1 \
                ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmpager.1                                      ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmpager.1
        @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmPerl.1 \                              @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmPerl.1 \
                ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmperl.1                                       ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmperl.1
        @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmRearrange.1 \                         @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmRearrange.1 \
                ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmrearrange.1                                  ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmrearrange.1
        @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmScript.1 \                            @${LN} ${STAGEDIR}${LOCALBASE}/share/man/man1/FvwmScript.1 \
                ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmscript.1                                     ${STAGEDIR}${LOCALBASE}/share/man/man1/fvwmscript.1
.endif                                                                              <

# --disable-perllib       disable installing fvwm perl library                          # --disable-perllib       disable installing fvwm perl library
# --infodir=DIR           info documentation [DATAROOTDIR/info]                         # --infodir=DIR           info documentation [DATAROOTDIR/info]
# --mandir=DIR            man documentation [DATAROOTDIR/man]                           # --mandir=DIR            man documentation [DATAROOTDIR/man]
# --docdir=DIR            documentation root [DATAROOTDIR/doc/fvwm3]                    # --docdir=DIR            documentation root [DATAROOTDIR/doc/fvwm3]
# --htmldir=DIR           html documentation [DOCDIR]                                   # --htmldir=DIR           html documentation [DOCDIR]
# --dvidir=DIR            dvi documentation [DOCDIR]                                    # --dvidir=DIR            dvi documentation [DOCDIR]
# --pdfdir=DIR            pdf documentation [DOCDIR]                                    # --pdfdir=DIR            pdf documentation [DOCDIR]
# --psdir=DIR             ps documentation [DOCDIR]                                     # --psdir=DIR             ps documentation [DOCDIR]
# --enable-mandoc         enable generation of man pages                                # --enable-mandoc         enable generation of man pages

.include                                                                   .include 
                                                                                    >
root@ichigo:/home/tigersharke/fvwm3-dev # 

Besides the obvious meson adjustments above, I just now, after so many prior commits, realized that the section symbolic links in the post-stage section really should have a conditional.  I'm not sure how I missed this detail for such a long time.

When I tried to install it, the current pkg-plist and the new pkg-plist were not matching, and something in my plist-fix script wasn't doing everything it should do.  The way the locale files for NLS were handled changed, so I added a line in the script to handle that, but I left the old method in the script just in case.  The script is a long series of substitutions so that the resulting pkg-plist file is arranged the same as it was output at creation but the various conditional tags relating to the config options were added.  I create this script for each of my unofficial ports that need this type of adjusting.

 root@ichigo:/home/tigersharke/fvwm3-dev # cat files/plist-fix 
#!/bin/sh
rm /var/tmp/fvwm3-dev_pkg-plist 2>/dev/null
rm /var/tmp/fvwm3-dev_pkg-plist-fixed 2>/dev/null
cp ../pkg-plist /var/tmp/fvwm3-dev_pkg-plist

echo "adding conditional list tags"

cat /var/tmp/fvwm3-dev_pkg-plist | \
sed \
-e 's#^\/you\/have\/to\/check\/what\/makeplist\/gives\/you##' \
-e '/^$/d' \
-e 's#^bin\/FvwmPrompt#\%\%GOLANG\%\%\bin\/FvwmPrompt#g' \
-e 's#^bin\/fvwm-convert-2.6#\%\%PERL\%\%\bin\/fvwm-convert-2.6#g' \
-e 's#^bin\/fvwm-menu-directory#\%\%PERL\%\%\bin\/fvwm-menu-directory#g' \
-e 's#^bin\/fvwm-menu-xlock#\%\%PERL\%\%\bin\/fvwm-menu-xlock#g' \
-e 's#^bin\/fvwm-perllib#\%\%PERL\%\%\bin\/fvwm-perllib#g' \
-e 's#^libexec\/fvwm3\/\([0-9]\.[0-9]\.[0-9])*\)\/FvwmCommandS#\%\%GOLANG\%\%\libexec\/fvwm3\/\1\/FvwmCommandS \
\%\%NO_GOLANG\%\%\libexec\/fvwm3\/\1\/FvwmConsoleC\n\%\%NO_GOLANG\%\%\libexec\/fvwm3\/\1\/FvwmConsole#g' \
-e 's#^libexec\/fvwm3\/\([0-9]\.[0-9]\.[0-9])*\)\/FvwmPerl#\%\%PERL\%\%\libexec\/fvwm3\/\1\/FvwmPerl#g' \
-e 's#^share\/man\/man1\/fvwm-convert-2.6#\%\%MANPAGES\%\%\%\%PERL\%\%\share\/man\/man1\/fvwm-convert-2.6#g' \
-e 's#^share\/man\/man1\/fvwm-menu-directory#\%\%MANPAGES\%\%\%\%PERL\%\%\share\/man\/man1\/fvwm-menu-directory#g' \
-e 's#^share\/man\/man1\/fvwm-menu-xlock#\%\%MANPAGES\%\%\%\%PERL\%\%\share\/man\/man1\/fvwm-menu-xlock#g' \
-e 's#^share\/man\/man1\/fvwm-perllib#\%\%MANPAGES\%\%\%\%PERL\%\%\share\/man\/man1\/fvwm-perllib#g' \
-e 's#^share\/man\/man1\/fvwmPerl#\%\%MANPAGES\%\%\%\%PERL\%\%\share\/man\/man1\/fvwmperl#g' \
-e 's#^share\/man\/man1\/fvwm-perllib#\%\%MANPAGES\%\%\%\%PERL\%\%\share\/man\/man1\/fvwm-perllib#g' \
-e 's#\%\%MANPAGES\%\%share\/man\/man1\/FvwmConsole#\%\%GOLANG\%\%\%\%MANPAGES\%\%share\/man\/man1\/FvwmConsole#g' \
-e 's#^share\/man\/man1#\%\%MANPAGES\%\%share\/man\/man1#g' \
-e 's#^\%\%DATADIR\%\%\/fvwm-menu-desktop-config.fpl#\%\%PERL\%\%\%\%DATADIR\%\%\/fvwm-menu-desktop-config.fpl#g' \
-e 's#^\%\%DATADIR\%\%\/fvwm-script-ComExample.pl#\%\%PERL\%\%\%\%DATADIR\%\%\/fvwm-script-ComExample.pl#g' \
-e 's#^\%\%DATADIR\%\%/locale#\%\%NLS\%\%\%\%DATADIR\%\%/locale#g' \
-e 's#^share\/locale#\%\%NLS\%\%\%\%DATADIR\%\%/locale#g' \
-e 's#^\%\%DATADIR\%\%/perllib#\%\%PERL\%\%\%\%DATADIR\%\%/perllib#g' \
> /var/tmp/fvwm-dev_pkg-plist-fixed
cp /var/tmp/fvwm-dev_pkg-plist-fixed ../pkg-plist
root@ichigo:/home/tigersharke/fvwm3-dev #

Once I was sure that the plist-fix script was working correctly, and I had everything updated, I could make the commit and push the changes to my fvwm3-dev git repo.  All of that because I meant to have a fresh .fvwm/config file so that I could write about how I customized my use of FVWM3.  It is also good to finally update the repo as well, and now that its converted to meson, I won't need to fight that battle.

No comments:

Frequently viewed this week