1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
7 SDESC[standard]= Fast and lightweight window manager
8 HOMEPAGE= http://www.fluxbox.org/
12 SITES[main]= SF/fluxbox/fluxbox/1.3.7
13 DISTFILE[1]= fluxbox-1.3.7.tar.gz:main
15 SPKGS[standard]= single
17 OPTIONS_AVAILABLE= none
18 OPTIONS_STANDARD= none
20 BUILD_DEPENDS= imlib2:dev:standard
22 BUILDRUN_DEPENDS= fribidi:primary:standard
23 imlib2:primary:standard
24 RUN_DEPENDS= xorg-xmessage:single:standard
26 USES= gmake fontconfig pkgconfig
27 XORG_COMPONENTS= x11 xext xft xpm xrandr xinerama xrender
30 LICENSE_FILE= MIT:{{WRKSRC}}/COPYING
33 FPC_EQUIVALENT= x11-wm/fluxbox
36 CONFIGURE_ARGS= --enable-imlib2
46 ${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
47 ${WRKSRC}/util/fluxbox-generate_menu.in ${WRKSRC}/util/fbsetbg
49 ${REINPLACE_CMD} -e 's|iconv_works=yes|iconv_works=no|' \
52 [FILE:275:descriptions/desc.single]
53 Fluxbox is a window manager based on BlackBox with some new features:
60 - Configurable titlebar (slit)
62 - Wheel scroll changes workspace
63 - KDE and partial Gnome support
67 c99e2baa06fff1e96342b20415059d12ff1fa2917ade0173c75b2fa570295b9f 1267833 fluxbox-1.3.7.tar.gz
70 [FILE:2815:manifests/plist.single]
78 fluxbox-update_configs
102 share/fluxbox/styles/BlueFlux/theme.cfg
103 share/fluxbox/styles/BlueFlux/pixmaps/
104 button_close_active.xpm
105 button_close_pressed.xpm
106 button_close_unfocus.xpm
107 button_max_active.xpm
108 button_max_pressed.xpm
109 button_max_unfocus.xpm
110 button_min_active.xpm
111 button_min_pressed.xpm
112 button_min_unfocus.xpm
113 button_stick_active.xpm
114 button_stick_pressed.xpm
115 button_stick_unfocus.xpm
117 button_stuck_unfocus.xpm
119 button_toolbar_pressed.xpm
122 title_bar_unfocus.xpm
125 share/fluxbox/styles/Emerge/theme.cfg
126 share/fluxbox/styles/Emerge/pixmaps/
145 share/fluxbox/styles/arch/theme.cfg
146 share/fluxbox/styles/arch/pixmaps/
177 share/fluxbox/styles/bloe/theme.cfg
178 share/fluxbox/styles/bloe/pixmaps/
210 share/fluxbox/styles/bora_black/theme.cfg
211 share/fluxbox/styles/bora_blue/theme.cfg
212 share/fluxbox/styles/bora_green/theme.cfg
213 share/fluxbox/styles/carp/theme.cfg
214 share/fluxbox/styles/green_tea/theme.cfg
215 share/fluxbox/styles/ostrich/theme.cfg
216 share/fluxbox/styles/zimek_bisque/theme.cfg
217 share/fluxbox/styles/zimek_darkblue/theme.cfg
218 share/fluxbox/styles/zimek_green/theme.cfg
233 [FILE:409:patches/patch-src__fluxbox.cc]
234 --- src/fluxbox.cc.orig 2015-02-08 10:44:45 UTC
236 @@ -1316,7 +1316,7 @@ void Fluxbox::revertFocus() {
237 FocusControl::setFocusedWindow(0);
240 -bool Fluxbox::validateClient(const WinClient *client) const {
241 +bool Fluxbox::validateClient(WinClient *client) const {
242 WinClientMap::const_iterator it =
243 find_if(m_window_search.begin(),
244 m_window_search.end(),
247 [FILE:432:patches/patch-src__fluxbox.hh]
248 --- src/fluxbox.hh.orig 2015-02-08 10:44:45 UTC
250 @@ -103,7 +103,7 @@ public:
251 WinClient *searchWindow(Window);
252 BScreen *searchScreen(Window w);
253 bool validateWindow(Window win) const;
254 - bool validateClient(const WinClient *client) const;
255 + bool validateClient(WinClient *client) const;
257 // Not currently implemented until we decide how it'll be used
258 //WinClient *searchGroup(Window);
261 [FILE:8313:patches/patch-util__fluxbox-generate_menu.in]
262 --- util/fluxbox-generate_menu.in.orig 2015-02-08 10:44:45 UTC
263 +++ util/fluxbox-generate_menu.in
264 @@ -68,7 +68,7 @@ Options:
265 -d Other path(s) to recursively search for *.desktop files
266 -ds Wider search for *.desktop files (takes more time)
267 -i Other path(s) to search for icons
268 - e.g., "/usr/kde/3.3/share/icons/crystalsvg/16x16/*"
269 + e.g., "%%LOCALBASE%%/share/icons/crystalsvg/16x16/*"
270 -is Wider search for icons (worth the extra time)
273 @@ -85,7 +85,7 @@ Options:
276 -p Prefix; default is @PREFIX@
277 - -n Gnome-prefix; /opt, /usr, /usr/X11R6 and /usr/local autodetected
278 + -n Gnome-prefix; %%LOCALBASE%% autodetected
279 -q KDE-prefix; idem dito
282 @@ -145,13 +145,42 @@ testoption() {
287 - [ -n "$1" ] && hash $1 2> /dev/null && shift && "$@"
289 +# some which's have a reliable return code, some don't
290 +# Lets figure out which which we have.
291 +if which this_program_does_not_exist-no_really-aA1zZ9 2> /dev/null 1> /dev/null; then
292 + # can't rely on return value
294 + file=`which $1 2> /dev/null`
295 + if [ -x "$file" ]; then
296 + if [ $# -gt 1 ]; then
307 - [ -n "$1" ] && hash $1 2> /dev/null
309 + find_it_options() {
310 + file=`which $1 2> /dev/null`
311 + if [ -x "$file" ]; then
319 + # can rely on return value
321 + which $1 > /dev/null 2>&1 && shift && "$@"
324 + find_it_options() {
325 + which $1 > /dev/null 2>&1
329 #echo "replaceWithinString: $1, $2, $3" >&2
330 #echo ${1//$2/$3} # causes error in BSD even though not used
331 @@ -203,7 +232,7 @@ convertIcon(){
332 if [ -f "${entry_icon}" ]; then
333 : echo "File exists. To overwrite, type: convert \"$1\" \"$entry_icon\"" >&2
335 - if hash convert 2> /dev/null; then
336 + if which convert &> /dev/null; then
337 convert "$1" "$entry_icon"
338 # echo convert "$1" , "$entry_icon" >> $ICONMAPPING
340 @@ -275,7 +304,7 @@ doSearch(){
341 # echo -n "for $temp_icon"
342 eval doSearchLoop $USER_ICONPATHS \
344 - "/usr/share/${execname%% *}" \
345 + "%%LOCALBASE%%/share/${execname%% *}" \
349 @@ -558,7 +587,7 @@ rm -f ${MENUFILENAME}.tmp
353 -[ "$WHOAMI" = root ] && PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
354 +[ "$WHOAMI" = root ] && PATH=/bin:/usr/bin:%%LOCALBASE%%/bin
356 # Check for Imlib2-support
357 if @pkgprefix@fluxbox@pkgsuffix@@EXEEXT@ -info 2> /dev/null | grep -q "^IMLIB"; then
358 @@ -1271,16 +1300,16 @@ if [ ! "${INSTALL}" = Yes ]; then
359 # These are prefixes; So if fluxbox is installed in @PREFIX@/bin/fluxbox
360 # your prefix is: @PREFIX@
362 -# fluxbox-generate already looks in /usr/X11R6, /usr, /usr/local and /opt so
363 +# fluxbox-generate already looks in %%LOCALBASE%% so
364 # there should be no need to specify them.
367 -# GNOME_PREFIX=/opt/gnome
368 -# KDE_PREFIX=/opt/kde
369 +# GNOME_PREFIX=%%LOCALBASE%%
370 +# KDE_PREFIX=%%LOCALBASE%%
373 # Separate the list of background dirs with colons ':'
374 -# BACKGROUND_DIRS="${USERFLUXDIR}/backgrounds/:@PREFIX@/share/fluxbox/backgrounds/:/usr/share/wallpapers"
375 +# BACKGROUND_DIRS="${USERFLUXDIR}/backgrounds/:@PREFIX@/share/fluxbox/backgrounds/:%%LOCALBASE%%/share/wallpapers"
378 # --- Boolean variables.
379 @@ -1327,29 +1356,21 @@ while [ $# -gt 0 ]; do
380 -g) GNOMEMENU=yes; shift;;
381 -in) NO_ICON=yes; shift;;
382 -is) OTHER_ICONPATHS="
384 - /usr/share/icons/mini
386 - /usr/local/share/icons
387 - /usr/local/share/icons/mini
388 - /usr/local/share/pixmaps
389 - /usr/share/xclass/icons
390 - /usr/share/xclass/pixmaps
391 - /usr/local/share/xclass/icons
392 - /usr/local/share/xclass/pixmaps
393 - /usr/X11R6/share/icons/default/16x16
394 - /usr/X11R6/share/icons/kde/16x16
395 - /usr/X11R6/share/icons/hicolor/16x16
396 - /usr/local/X11R6/share/icons/default/16x16
397 - /usr/local/X11R6/share/icons/kde/16x16
398 - /usr/local/X11R6/share/icons/hicolor/16x16
399 + %%LOCALBASE%%/share/icons
400 + %%LOCALBASE%%/share/icons/mini
401 + %%LOCALBASE%%/share/pixmaps
402 + %%LOCALBASE%%/share/xclass/icons
403 + %%LOCALBASE%%/share/xclass/pixmaps
404 + %%LOCALBASE%%/share/icons/default/16x16
405 + %%LOCALBASE%%/share/icons/kde/16x16
406 + %%LOCALBASE%%/share/icons/hicolor/16x16
409 -ds) OTHER_DESKTOP_PATHS="
411 - /usr/share/applications
412 - /usr/share/xsessions
413 - /usr/share/services
414 + %%LOCALBASE%%/share/mimelnk
415 + %%LOCALBASE%%/share/applications
416 + %%LOCALBASE%%/share/xsessions
417 + %%LOCALBASE%%/share/services
421 @@ -1420,13 +1441,12 @@ fi
423 PREFIX="${PREFIX:=@PREFIX@}"
424 if [ -z "${PREFIX}" -o ! -d "${PREFIX}" ]; then
425 - hash @pkgprefix@fluxbox@pkgsuffix@@EXEEXT@
426 - PREFIX=`hash | grep @pkgprefix@fluxbox@pkgsuffix@ | sed 's,.*\t/,/,' | sed 's,/bin/@pkgprefix@fluxbox@pkgsuffix@@EXEEXT@$,,'`
427 + PREFIX=`which fluxbox | sed 's,/bin/fluxbox$,,'`
432 -for GNOME_PREFIX in "${GNOME_PREFIX}" /usr/local /usr/X11R6 /usr /opt "${PREFIX}"; do
433 +for GNOME_PREFIX in "${GNOME_PREFIX}" %%LOCALBASE%% "${PREFIX}"; do
434 if [ -n "${GNOME_PREFIX}" -a -d "$GNOME_PREFIX/share/gnome" ]; then
437 @@ -1434,7 +1454,7 @@ done
438 # Will remain $PREFIX if all else fails
441 -for KDE_PREFIX in "${KDE_PREFIX}" /usr/local /usr/X11R6 /usr /opt "${PREFIX}"; do
442 +for KDE_PREFIX in "${KDE_PREFIX}" %%LOCALBASE%% "${PREFIX}"; do
443 if [ -n "${KDE_PREFIX}" -a -d "$KDE_PREFIX/share/applnk" ]; then
446 @@ -1522,7 +1542,7 @@ if find_it_options $MY_BROWSER; then
448 [ -n "$MY_BROWSER" ] && echo "Warning: you chose an invalid browser." >&2
449 #The precise order is up for debate.
450 - for browser in firefox mozilla-firefox chrome chromium google-chrome mozilla-firebird MozillaFirebird opera skipstone mozilla seamonkey galeon konqueror dillo netscape w3m amaya links lynx; do
451 + for browser in firefox mozilla-firefox chrome chromium google-chrome mozilla-firebird MozillaFirebird linux-opera opera skipstone mozilla seamonkey galeon konqueror dillo netscape w3m amaya links lynx; do
452 if find_it_options $browser; then
453 DEFAULT_BROWSER=$browser
455 @@ -1589,6 +1609,7 @@ case "$DEFAULT_BROWSERNAME" in
456 chrome|chromium) append "[exec] (${DEFAULT_BROWSERNAME}) {${DEFAULT_BROWSER}}" ;;
457 google-chrome) append "[exec] (${DEFAULT_BROWSERNAME}) {${DEFAULT_BROWSER}}" ;;
458 konqueror) append "[exec] (konqueror) {kfmclient openProfile webbrowsing}" ;;
459 + linux-opera) append "[exec] (linux-opera) {env QT_XFT=true linux-opera}" ;;
460 opera) append "[exec] (opera) {env QT_XFT=true opera}" ;;
461 MozillaFirebird) append "[exec] (firebird) {MozillaFirebird}" ;;
462 MozillaFirefox) append "[exec] (firefox) {MozillaFirefox}" ;;
463 @@ -1608,6 +1629,7 @@ append_submenu "${NETMENU}"
464 append_submenu "${BROWSERMENU}"
465 normal_find chrome chromium firefox google-chrome mozilla-firefox MozillaFirefox galeon mozilla seamonkey dillo netscape vncviewer
466 find_it links append "[exec] (links-graphic) {links -driver x ${HOMEPAGE}}"
467 + find_it linux-opera append "[exec] (linux-opera) {env QT_XFT=true linux-opera}"
468 find_it opera append "[exec] (opera) {env QT_XFT=true opera}"
469 find_it konqueror append "[exec] (konqueror) {kfmclient openProfile webbrowsing}"
470 find_it links append "[exec] (links) {${DEFAULT_TERM} -e links ${HOMEPAGE}}"
473 [FILE:1041:patches/patch-util_fbsetbg]
474 --- util/fbsetbg.orig 2015-02-08 10:44:45 UTC
476 @@ -49,7 +49,7 @@ lastwallpaper="${HOME}/.fluxbox/lastwall
480 -[ "$WHOAMI" = root ] && PATH=/bin:/usr/bin/:/usr/local/bin:/usr/X11R6/bin
481 +[ "$WHOAMI" = root ] && PATH=/bin:/usr/bin:%%LOCALBASE%%/bin
483 command="`basename \"$0\"`"
485 @@ -133,9 +133,28 @@ Common tips to use with $command:
490 - [ -n "$1" ] && hash $1 2> /dev/null
492 +# some which's have a reliable return code, some don't
493 +# Lets figure out which which we have.
494 +if which this_program_does_not_exist-no_really-aA1zZ9 >/dev/null 2>/dev/null; then
495 + # can't rely on return value
497 + file=`which $1 2> /dev/null`
498 + if [ -x "$file" ]; then
499 + if [ $# -gt 1 ]; then
509 + # can rely on return value
511 + which $1 > /dev/null 2>&1 && shift && $*
519 [FILE:654:patches/patch-util_fluxbox-remote.cc]
520 Upstream fix for bogus pointer comparison:
521 Issue: https://sourceforge.net/p/fluxbox/bugs/1138/
522 Commit: http://git.fluxbox.org/fluxbox.git/commit/util/fluxbox-remote.cc?id=22866c4d30f5b289c429c5ca88d800200db4fc4f
524 --- util/fluxbox-remote.cc.orig 2015-02-08 10:44:45 UTC
525 +++ util/fluxbox-remote.cc
526 @@ -73,7 +73,7 @@ int main(int argc, char **argv) {
527 if (strcmp(cmd, "result") == 0) {
528 XTextProperty text_prop;
529 if (XGetTextProperty(disp, root, &text_prop, atom_result) != 0
530 - && text_prop.value > 0
531 + && text_prop.value != 0
532 && text_prop.nitems > 0) {
534 printf("%s", text_prop.value);