View | Details | Raw Unified | Return to bug 212530 | Differences between
and this patch

Collapse All | Expand All

(-)fluxbox-devel/Makefile (-14 / +35 lines)
Lines 2-15 Link Here
2
# $FreeBSD$
2
# $FreeBSD$
3
3
4
PORTNAME=	fluxbox
4
PORTNAME=	fluxbox
5
PORTVERSION=	1.3.7
5
PORTVERSION=	1.3.7.20160724
6
PORTREVISION=	1
7
CATEGORIES=	x11-wm
6
CATEGORIES=	x11-wm
8
MASTER_SITES=	SF
7
PKGNAMESUFFIX=	-devel
9
DISTFILES=	${DISTNAME}${EXTRACT_SUFX}
10
EXTRACT_ONLY=	${DISTNAME}${EXTRACT_SUFX}
8
EXTRACT_ONLY=	${DISTNAME}${EXTRACT_SUFX}
11
9
12
MAINTAINER=	jgh@FreeBSD.org
10
MAINTAINER=	ports@FreeBSD.org
13
COMMENT=	Small and fast window manager based on BlackBox
11
COMMENT=	Small and fast window manager based on BlackBox
14
12
15
LICENSE=	MIT
13
LICENSE=	MIT
Lines 20-27 Link Here
20
		libfreetype.so:print/freetype2 \
18
		libfreetype.so:print/freetype2 \
21
		libfontconfig.so:x11-fonts/fontconfig
19
		libfontconfig.so:x11-fonts/fontconfig
22
20
21
CONFLICTS_INSTALL=	${PORTNAME}-[0-9]*
22
23
USE_GITHUB=	yes
24
GH_TAGNAME=	50b6102
25
23
USE_XORG=	x11 xext xextproto xft xpm xrandr
26
USE_XORG=	x11 xext xextproto xft xpm xrandr
24
USES=		gmake pkgconfig
27
USES=		autoreconf gmake pkgconfig
25
GNU_CONFIGURE=	yes
28
GNU_CONFIGURE=	yes
26
29
27
PORTDATA=	*
30
PORTDATA=	*
Lines 66-78 Link Here
66
			http://people.freebsd.org/~mezz/distfiles/:pdf
69
			http://people.freebsd.org/~mezz/distfiles/:pdf
67
PDFDOCS_DISTFILES=	fluxbook-${DOCSVERSION}.pdf:pdf
70
PDFDOCS_DISTFILES=	fluxbook-${DOCSVERSION}.pdf:pdf
68
71
72
.ifmake makesum
73
# Always include optional distfiles
74
.MAKEFLAGS:	WITH="${OPTIONS_DEFINE}" OPTIONS_EXCLUDE=
75
.endif
76
69
post-patch:
77
post-patch:
70
	@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
78
	@${REINPLACE_CMD} -e 's|/usr/local/bin:/usr/X11R6|${LOCALBASE}|' \
71
		${WRKSRC}/util/fluxbox-generate_menu.in ${WRKSRC}/util/fbsetbg
79
		${WRKSRC}/util/fbsetbg
80
	@${REINPLACE_CMD} -e 's|/usr/kde/3.3|${LOCALBASE}| ; \
81
		s|/opt, /usr, /usr/X11R6 and /usr/local|${LOCALBASE}| ; \
82
		s|/usr/X11R6, /usr, /usr/local and /opt|${LOCALBASE}| ; \
83
		s|/usr/local/bin:/usr/X11R6|${LOCALBASE}| ; \
84
		s|/usr/local /usr/X11R6 /usr /opt|${LOCALBASE}| ; \
85
		s|/usr/share|${LOCALBASE}/share| ; \
86
		s|/opt/gnome|${LOCALBASE}| ; s|/opt/kde|${LOCALBASE}| ; \
87
		s|/usr/local|${LOCALBASE}| ; \
88
		s|/usr/local/X11R6|${LOCALBASE}| ; \
89
		/usr\/X11R6\/share/d ; \
90
		/hash @pkgprefix/d ; \
91
		/PREFIX=/s#`hash.*`#`which fluxbox | sed 's,/bin/fluxbox$$,,'`# ; \
92
		/browser in/s/opera/linux-& &/ ; \
93
		/true opera/s/\(.*\)opera\(.*\)opera\(.*\)opera\(.*\)/\1linux-opera\2linux-opera\3linux-opera\4\${.newline}&/' \
94
		${WRKSRC}/util/fluxbox-generate_menu.in
72
95
73
post-patch-NLS-off:
96
post-patch-NLS-off:
74
	@${REINPLACE_CMD} -e 's|iconv_works=yes|iconv_works=no|' \
97
	@${REINPLACE_CMD} -e '/^AM_ICONV/d' \
75
		${WRKSRC}/configure
98
		${WRKSRC}/configure.ac
76
99
77
post-install-DOCS-on:
100
post-install-DOCS-on:
78
	(cd ${WRKSRC} && ${COPYTREE_SHARE} "AUTHORS ChangeLog NEWS README TODO" \
101
	(cd ${WRKSRC} && ${COPYTREE_SHARE} "AUTHORS ChangeLog NEWS README TODO" \
Lines 84-92 Link Here
84
		${STAGEDIR}${DOCSDIR}/pdf/
107
		${STAGEDIR}${DOCSDIR}/pdf/
85
108
86
post-install-DOCHTML-on:
109
post-install-DOCHTML-on:
87
	@${MKDIR} ${STAGEDIR}${DOCSDIR}/html
110
	(cd ${WRKDIR}/html && ${COPYTREE_SHARE} "*.css *.html" \
88
. for h in *.css *.html
111
		${STAGEDIR}${DOCSDIR}/html)
89
	(cd ${WRKDIR}/html && ${INSTALL_DATA} ${h} ${STAGEDIR}${DOCSDIR}/html)
90
. endfor
91
112
92
.include <bsd.port.mk>
113
.include <bsd.port.mk>
(-)fluxbox-devel/distinfo (-2 / +3 lines)
Lines 1-6 Link Here
1
SHA256 (fluxbox-1.3.7.tar.gz) = c99e2baa06fff1e96342b20415059d12ff1fa2917ade0173c75b2fa570295b9f
1
TIMESTAMP = 1469896708
2
SIZE (fluxbox-1.3.7.tar.gz) = 1267833
3
SHA256 (fb-doc-mfhtml-20060629.tgz) = 98d37b73dbb1caf1361b098bffc69d1f365f9b324a71f622ba72ed5da5d9b9ec
2
SHA256 (fb-doc-mfhtml-20060629.tgz) = 98d37b73dbb1caf1361b098bffc69d1f365f9b324a71f622ba72ed5da5d9b9ec
4
SIZE (fb-doc-mfhtml-20060629.tgz) = 115560
3
SIZE (fb-doc-mfhtml-20060629.tgz) = 115560
5
SHA256 (fluxbook-20060629.pdf) = 8f225b101e9ab81543182c83699aeef3fe86370d72da215831321c903eee9cde
4
SHA256 (fluxbook-20060629.pdf) = 8f225b101e9ab81543182c83699aeef3fe86370d72da215831321c903eee9cde
6
SIZE (fluxbook-20060629.pdf) = 430351
5
SIZE (fluxbook-20060629.pdf) = 430351
6
SHA256 (fluxbox-fluxbox-1.3.7.20160724-50b6102_GH0.tar.gz) = 375d0554101225edceb19bd974f270e0ed25c77f0007390fb6f5c08169ae3514
7
SIZE (fluxbox-fluxbox-1.3.7.20160724-50b6102_GH0.tar.gz) = 879696
(-)fluxbox-devel/files/patch-src__fluxbox.cc (-11 lines)
Lines 1-11 Link Here
1
--- src/fluxbox.cc.orig	2015-02-08 10:44:45 UTC
2
+++ src/fluxbox.cc
3
@@ -1316,7 +1316,7 @@ void Fluxbox::revertFocus() {
4
         FocusControl::setFocusedWindow(0);
5
 }
6
 
7
-bool Fluxbox::validateClient(const WinClient *client) const {
8
+bool Fluxbox::validateClient(WinClient *client) const {
9
     WinClientMap::const_iterator it =
10
         find_if(m_window_search.begin(),
11
                 m_window_search.end(),
(-)fluxbox-devel/files/patch-src__fluxbox.hh (-11 lines)
Lines 1-11 Link Here
1
--- src/fluxbox.hh.orig	2015-02-08 10:44:45 UTC
2
+++ src/fluxbox.hh
3
@@ -103,7 +103,7 @@ public:
4
     WinClient *searchWindow(Window);
5
     BScreen *searchScreen(Window w);
6
     bool validateWindow(Window win) const;
7
-    bool validateClient(const WinClient *client) const;
8
+    bool validateClient(WinClient *client) const;
9
 
10
     // Not currently implemented until we decide how it'll be used
11
     //WinClient *searchGroup(Window);
(-)fluxbox-devel/files/patch-util__fluxbox-generate_menu.in (-209 lines)
Lines 1-209 Link Here
1
--- util/fluxbox-generate_menu.in.orig	2015-02-08 10:44:45 UTC
2
+++ util/fluxbox-generate_menu.in
3
@@ -68,7 +68,7 @@ Options:
4
     -d  Other path(s) to recursively search for *.desktop files
5
     -ds Wider search for *.desktop files (takes more time)
6
     -i  Other path(s) to search for icons
7
-        e.g., "/usr/kde/3.3/share/icons/crystalsvg/16x16/*"
8
+        e.g., "%%LOCALBASE%%/share/icons/crystalsvg/16x16/*"
9
     -is Wider search for icons (worth the extra time)
10
     -in Skip icon search
11
 
12
@@ -85,7 +85,7 @@ Options:
13
   Only for packagers:
14
 
15
     -p  Prefix; default is @PREFIX@
16
-    -n  Gnome-prefix; /opt, /usr, /usr/X11R6 and /usr/local autodetected
17
+    -n  Gnome-prefix; %%LOCALBASE%% autodetected
18
     -q  KDE-prefix; idem dito
19
 
20
 
21
@@ -145,13 +145,42 @@ testoption() {
22
     esac
23
 }
24
 
25
-find_it() {
26
-    [ -n "$1" ] && hash $1 2> /dev/null && shift && "$@"
27
-}
28
+# some which's have a reliable return code, some don't
29
+# Lets figure out which which we have.
30
+if which this_program_does_not_exist-no_really-aA1zZ9 2> /dev/null 1> /dev/null; then
31
+    # can't rely on return value
32
+    find_it() {
33
+        file=`which $1 2> /dev/null`
34
+        if [ -x "$file" ]; then
35
+            if [ $# -gt 1 ]; then
36
+                shift
37
+                "$@"
38
+            fi
39
+            return 0
40
+        else
41
+            return 1
42
+        fi
43
+    }
44
 
45
-find_it_options() {
46
-    [ -n "$1" ] && hash $1 2> /dev/null
47
-}
48
+    find_it_options() {
49
+        file=`which $1 2> /dev/null`
50
+        if [ -x "$file" ]; then
51
+            return 0
52
+        else
53
+            return 1
54
+        fi
55
+    }
56
+
57
+else
58
+    # can rely on return value
59
+    find_it() {
60
+        which $1 > /dev/null 2>&1 && shift && "$@"
61
+    }
62
+
63
+    find_it_options() {
64
+        which $1 > /dev/null 2>&1
65
+    }
66
+fi
67
 
68
 #echo "replaceWithinString: $1, $2, $3" >&2
69
 #echo ${1//$2/$3} # causes error in BSD even though not used
70
@@ -203,7 +232,7 @@ convertIcon(){
71
     if [ -f "${entry_icon}" ]; then
72
         : echo "File exists. To overwrite, type: convert \"$1\" \"$entry_icon\"" >&2
73
     else
74
-        if hash convert 2> /dev/null; then
75
+        if which convert &> /dev/null; then
76
             convert "$1" "$entry_icon"
77
             # echo convert "$1" , "$entry_icon" >> $ICONMAPPING
78
         else
79
@@ -275,7 +304,7 @@ doSearch(){
80
     # echo -n "for $temp_icon"
81
     eval doSearchLoop $USER_ICONPATHS \
82
       "$FB_ICONDIR" \
83
-      "/usr/share/${execname%% *}" \
84
+      "%%LOCALBASE%%/share/${execname%% *}" \
85
       ${OTHER_ICONPATHS} \
86
 
87
 
88
@@ -558,7 +587,7 @@ rm -f ${MENUFILENAME}.tmp
89
 
90
 
91
 WHOAMI=`whoami`
92
-[ "$WHOAMI" = root ] && PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
93
+[ "$WHOAMI" = root ] && PATH=/bin:/usr/bin:%%LOCALBASE%%/bin
94
 
95
 # Check for Imlib2-support
96
 if @pkgprefix@fluxbox@pkgsuffix@@EXEEXT@ -info 2> /dev/null | grep -q "^IMLIB"; then
97
@@ -1271,16 +1300,16 @@ if [ ! "${INSTALL}" = Yes ]; then
98
 # These are prefixes; So if fluxbox is installed in @PREFIX@/bin/fluxbox
99
 # your prefix is: @PREFIX@
100
 
101
-# fluxbox-generate already looks in /usr/X11R6, /usr, /usr/local and /opt so
102
+# fluxbox-generate already looks in %%LOCALBASE%% so
103
 # there should be no need to specify them.
104
 #
105
 # PREFIX=@PREFIX@
106
-# GNOME_PREFIX=/opt/gnome
107
-# KDE_PREFIX=/opt/kde
108
+# GNOME_PREFIX=%%LOCALBASE%%
109
+# KDE_PREFIX=%%LOCALBASE%%
110
 
111
 
112
 # Separate the list of background dirs with colons ':'
113
-# BACKGROUND_DIRS="${USERFLUXDIR}/backgrounds/:@PREFIX@/share/fluxbox/backgrounds/:/usr/share/wallpapers"
114
+# BACKGROUND_DIRS="${USERFLUXDIR}/backgrounds/:@PREFIX@/share/fluxbox/backgrounds/:%%LOCALBASE%%/share/wallpapers"
115
 
116
 
117
 # --- Boolean variables.
118
@@ -1327,29 +1356,21 @@ while [ $# -gt 0 ]; do
119
         -g) GNOMEMENU=yes; shift;;
120
         -in) NO_ICON=yes; shift;;
121
         -is) OTHER_ICONPATHS="
122
-                /usr/share/icons
123
-                /usr/share/icons/mini
124
-                /usr/share/pixmaps
125
-                /usr/local/share/icons
126
-                /usr/local/share/icons/mini
127
-                /usr/local/share/pixmaps
128
-                /usr/share/xclass/icons
129
-                /usr/share/xclass/pixmaps
130
-                /usr/local/share/xclass/icons
131
-                /usr/local/share/xclass/pixmaps
132
-                /usr/X11R6/share/icons/default/16x16
133
-                /usr/X11R6/share/icons/kde/16x16
134
-                /usr/X11R6/share/icons/hicolor/16x16
135
-                /usr/local/X11R6/share/icons/default/16x16
136
-                /usr/local/X11R6/share/icons/kde/16x16
137
-                /usr/local/X11R6/share/icons/hicolor/16x16
138
+                %%LOCALBASE%%/share/icons
139
+                %%LOCALBASE%%/share/icons/mini
140
+                %%LOCALBASE%%/share/pixmaps
141
+                %%LOCALBASE%%/share/xclass/icons
142
+                %%LOCALBASE%%/share/xclass/pixmaps
143
+                %%LOCALBASE%%/share/icons/default/16x16
144
+                %%LOCALBASE%%/share/icons/kde/16x16
145
+                %%LOCALBASE%%/share/icons/hicolor/16x16
146
             "
147
             shift;;
148
         -ds) OTHER_DESKTOP_PATHS="
149
-                /usr/share/mimelnk 
150
-                /usr/share/applications
151
-                /usr/share/xsessions 
152
-                /usr/share/services 
153
+                %%LOCALBASE%%/share/mimelnk
154
+                %%LOCALBASE%%/share/applications
155
+                %%LOCALBASE%%/share/xsessions
156
+                %%LOCALBASE%%/share/services
157
             "
158
             # /usr/share/apps \
159
             shift;;
160
@@ -1420,13 +1441,12 @@ fi
161
 # prefix
162
 PREFIX="${PREFIX:=@PREFIX@}"
163
 if [  -z "${PREFIX}" -o ! -d "${PREFIX}" ]; then
164
-    hash @pkgprefix@fluxbox@pkgsuffix@@EXEEXT@
165
-    PREFIX=`hash | grep @pkgprefix@fluxbox@pkgsuffix@ | sed 's,.*\t/,/,' | sed 's,/bin/@pkgprefix@fluxbox@pkgsuffix@@EXEEXT@$,,'`
166
+    PREFIX=`which fluxbox | sed 's,/bin/fluxbox$,,'`
167
 fi
168
 
169
 
170
 # gnome prefix
171
-for GNOME_PREFIX in "${GNOME_PREFIX}" /usr/local /usr/X11R6 /usr /opt "${PREFIX}"; do
172
+for GNOME_PREFIX in "${GNOME_PREFIX}" %%LOCALBASE%% "${PREFIX}"; do
173
     if [ -n "${GNOME_PREFIX}" -a -d "$GNOME_PREFIX/share/gnome" ]; then
174
         break;
175
     fi
176
@@ -1434,7 +1454,7 @@ done
177
 # Will remain $PREFIX if all else fails
178
 
179
 # kde prefix
180
-for KDE_PREFIX in "${KDE_PREFIX}" /usr/local /usr/X11R6 /usr /opt "${PREFIX}"; do
181
+for KDE_PREFIX in "${KDE_PREFIX}" %%LOCALBASE%% "${PREFIX}"; do
182
     if [ -n "${KDE_PREFIX}" -a -d "$KDE_PREFIX/share/applnk" ]; then
183
         break;
184
     fi
185
@@ -1522,7 +1542,7 @@ if find_it_options $MY_BROWSER; then
186
 else
187
     [ -n "$MY_BROWSER" ] && echo "Warning: you chose an invalid browser." >&2
188
     #The precise order is up for debate.
189
-    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
190
+    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
191
         if find_it_options $browser; then
192
             DEFAULT_BROWSER=$browser
193
             break
194
@@ -1589,6 +1609,7 @@ case "$DEFAULT_BROWSERNAME" in
195
     chrome|chromium) append "[exec] (${DEFAULT_BROWSERNAME}) {${DEFAULT_BROWSER}}" ;;
196
     google-chrome) append "[exec] (${DEFAULT_BROWSERNAME}) {${DEFAULT_BROWSER}}" ;;
197
     konqueror) append "[exec] (konqueror) {kfmclient openProfile webbrowsing}" ;;
198
+    linux-opera) append "[exec] (linux-opera) {env QT_XFT=true linux-opera}" ;;
199
     opera) append "[exec] (opera) {env QT_XFT=true opera}" ;;
200
     MozillaFirebird) append "[exec] (firebird) {MozillaFirebird}" ;;
201
     MozillaFirefox) append "[exec] (firefox) {MozillaFirefox}" ;;
202
@@ -1608,6 +1629,7 @@ append_submenu "${NETMENU}"
203
     append_submenu "${BROWSERMENU}"
204
         normal_find chrome chromium firefox google-chrome mozilla-firefox MozillaFirefox galeon mozilla seamonkey dillo netscape vncviewer
205
         find_it links       append "[exec]   (links-graphic) {links -driver x ${HOMEPAGE}}"
206
+        find_it linux-opera append "[exec]   (linux-opera) {env QT_XFT=true linux-opera}"
207
         find_it opera       append "[exec]   (opera) {env QT_XFT=true opera}"
208
         find_it konqueror   append "[exec]   (konqueror) {kfmclient openProfile webbrowsing}"
209
         find_it links       append "[exec]   (links) {${DEFAULT_TERM} -e links ${HOMEPAGE}}"
(-)fluxbox-devel/files/patch-util_fbsetbg (-43 lines)
Lines 1-43 Link Here
1
--- util/fbsetbg.orig	2008-09-22 13:47:05.000000000 -0500
2
+++ util/fbsetbg	2008-09-22 13:52:03.000000000 -0500
3
@@ -49,7 +49,7 @@
4
 
5
 
6
 WHOAMI=`whoami`
7
-[ "$WHOAMI" = root ] && PATH=/bin:/usr/bin/:/usr/local/bin:/usr/X11R6/bin
8
+[ "$WHOAMI" = root ] && PATH=/bin:/usr/bin:%%LOCALBASE%%/bin
9
 
10
 command="`basename \"$0\"`"
11
 
12
@@ -129,9 +129,28 @@
13
 EOF
14
 }
15
 
16
-find_it() {
17
-    [ -n "$1" ] && hash $1 2> /dev/null
18
-}
19
+# some which's have a reliable return code, some don't
20
+# Lets figure out which which we have.
21
+if which this_program_does_not_exist-no_really-aA1zZ9 >/dev/null 2>/dev/null; then
22
+    # can't rely on return value
23
+    find_it() {
24
+        file=`which $1 2> /dev/null`
25
+        if [ -x "$file" ]; then
26
+            if [ $# -gt 1 ]; then
27
+                shift
28
+                $*
29
+            fi
30
+            return 0
31
+        else
32
+            return 1
33
+        fi
34
+    }
35
+else
36
+    # can rely on return value
37
+    find_it() {
38
+        which $1 > /dev/null 2>&1 && shift && $*
39
+    }
40
+fi
41
 
42
 message() {
43
 
(-)fluxbox-devel/pkg-descr (-11 / +17 lines)
Lines 1-13 Link Here
1
Fluxbox is a window manager based on BlackBox with some new features:
1
Fluxbox is a stacking window manager for the X Window System, which started as a
2
fork of Blackbox 0.61.1 in 2001, with the same aim to be lightweight. Its user
3
interface has only a taskbar, a pop-up menu accessible by right-clicking on the
4
desktop, and minimal support for graphical icons. All basic configurations are
5
controlled by text files, including the construction of menus and the mapping of
6
key-bindings. Fluxbox has high compliance to the Extended Window Manager Hints
7
specification.
2
8
3
 - Transparent menus
9
Features:
4
 - Pixmap themes
10
- Right-clicking on the desktop gives a root menu
5
 - Window snapping
11
- Customizable root menu
6
 - Integrated bbkeys
12
- Support for wallpaper
7
 - Iconbar
13
- Running applications appear in a taskbar
8
 - Configurable titlebar (slit)
14
- Support for desktop themes
9
 - Windows tabs
15
- Customizable keyboard shortcuts
10
 - Wheel scroll changes workspace
16
- Window tabbing
11
 - KDE and partial Gnome support
17
- Slit for applications such as system monitors
12
18
13
WWW: http://fluxbox.org/
19
WWW: https://github.com/fluxbox/fluxbox

Return to bug 212530