aboutsummaryrefslogtreecommitdiff
path: root/x11-wm/hs-xmonad
diff options
context:
space:
mode:
authorGleb Popov <arrowd@FreeBSD.org>2020-05-04 18:08:10 +0000
committerGleb Popov <arrowd@FreeBSD.org>2020-05-04 18:08:10 +0000
commit19c26acbf0b3412689187c066d994589e169f4ee (patch)
treeea6ceaad0e8295491cdee982afa383c2cb90cdbb /x11-wm/hs-xmonad
parentff6a5b09cf537befa21bb538dd62eccad35ce089 (diff)
downloadports-19c26acbf0b3412689187c066d994589e169f4ee.tar.gz
ports-19c26acbf0b3412689187c066d994589e169f4ee.zip
Upgrade lang/ghc to 8.8.3 and many Haskell ports along the way.
PR: 244784 Submitted by: Evilham <contact@evilham.com> (some ports)
Notes
Notes: svn path=/head/; revision=533933
Diffstat (limited to 'x11-wm/hs-xmonad')
-rw-r--r--x11-wm/hs-xmonad/Makefile34
-rw-r--r--x11-wm/hs-xmonad/distinfo32
-rw-r--r--x11-wm/hs-xmonad/files/example_buildscript20
-rw-r--r--x11-wm/hs-xmonad/files/example_config.cabal16
-rw-r--r--x11-wm/hs-xmonad/pkg-message18
-rw-r--r--x11-wm/hs-xmonad/pkg-plist4
6 files changed, 113 insertions, 11 deletions
diff --git a/x11-wm/hs-xmonad/Makefile b/x11-wm/hs-xmonad/Makefile
index d8c1886c3ec7..97e8098b83a9 100644
--- a/x11-wm/hs-xmonad/Makefile
+++ b/x11-wm/hs-xmonad/Makefile
@@ -3,7 +3,7 @@
PORTNAME= xmonad
PORTVERSION= 0.15
-PORTREVISION= 3
+PORTREVISION= 4
CATEGORIES= x11-wm haskell
MAINTAINER= haskell@FreeBSD.org
@@ -12,20 +12,34 @@ COMMENT= Tiling window manager
LICENSE= BSD3CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
-USES= xorg
-USE_CABAL= extensible-exceptions mtl semigroups setlocale utf8-string X11
-USE_XORG= x11
+RUN_DEPENDS= ghc:lang/ghc
-MAN1PAGES= xmonad.1
-MAN1SRC= man
+USES= cabal xorg
-EXECUTABLE= xmonad
+USE_XORG= x11 xext xinerama xrandr xscrnsaver
+
+USE_CABAL= X11-1.9.1 \
+ data-default-0.7.1.1 \
+ data-default-class-0.1.2.0 \
+ data-default-instances-containers-0.0.1 \
+ data-default-instances-dlist-0.0.1 \
+ data-default-instances-old-locale-0.0.1 \
+ dlist-0.8.0.8 \
+ extensible-exceptions-0.1.1.4 \
+ hsc2hs-0.68.6 \
+ old-locale-1.0.0.7_2 \
+ setlocale-1.0.0.9_1 \
+ utf8-string-1.0.1.1_3
OPTIONS_DEFINE= EXAMPLES
-INSTALL_PORTEXAMPLES= ${INSTALL_DATA} ${WRKSRC}/man/xmonad.hs \
- ${STAGEDIR}${EXAMPLESDIR}
+post-install:
+ ${INSTALL_MAN} ${WRKSRC}/man/xmonad.1 ${STAGEDIR}${MANPREFIX}/man/man1/
-.include "${.CURDIR}/../../lang/ghc/bsd.cabal.mk"
+post-install-EXAMPLES-on:
+ @${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
+ ${INSTALL_SCRIPT} ${PATCHDIR}/example_buildscript ${STAGEDIR}${EXAMPLESDIR}/build
+ ${INSTALL_DATA} ${PATCHDIR}/example_config.cabal ${STAGEDIR}${EXAMPLESDIR}/xmonad-config.cabal
+ ${INSTALL_DATA} ${WRKSRC}/man/xmonad.hs ${STAGEDIR}${EXAMPLESDIR}
.include <bsd.port.mk>
diff --git a/x11-wm/hs-xmonad/distinfo b/x11-wm/hs-xmonad/distinfo
index c0d47d70114d..9c93e4ebebbb 100644
--- a/x11-wm/hs-xmonad/distinfo
+++ b/x11-wm/hs-xmonad/distinfo
@@ -1,3 +1,33 @@
-TIMESTAMP = 1538773720
+TIMESTAMP = 1586086296
SHA256 (cabal/xmonad-0.15.tar.gz) = 4a7948e6eee5e34a27d15444589ade3b3fa1adecadbf37b943cff8348380f928
SIZE (cabal/xmonad-0.15.tar.gz) = 68822
+SHA256 (cabal/X11-1.9.1/X11-1.9.1.tar.gz) = 7581e7b3c1c8313d1f7d224d57b20c689e5f757404c9f0ec47f4d15c4541e63d
+SIZE (cabal/X11-1.9.1/X11-1.9.1.tar.gz) = 190698
+SHA256 (cabal/data-default-0.7.1.1/data-default-0.7.1.1.tar.gz) = b0f95d279cd75cacaa8152a01590dc3460f7134f6840b37052abb3ba3cb2a511
+SIZE (cabal/data-default-0.7.1.1/data-default-0.7.1.1.tar.gz) = 1627
+SHA256 (cabal/data-default-class-0.1.2.0/data-default-class-0.1.2.0.tar.gz) = 4f01b423f000c3e069aaf52a348564a6536797f31498bb85c3db4bd2d0973e56
+SIZE (cabal/data-default-class-0.1.2.0/data-default-class-0.1.2.0.tar.gz) = 2522
+SHA256 (cabal/data-default-instances-containers-0.0.1/data-default-instances-containers-0.0.1.tar.gz) = a55e07af005c9815d82f3fc95e125db82994377c9f4a769428878701d4ec081a
+SIZE (cabal/data-default-instances-containers-0.0.1/data-default-instances-containers-0.0.1.tar.gz) = 1659
+SHA256 (cabal/data-default-instances-dlist-0.0.1/data-default-instances-dlist-0.0.1.tar.gz) = 7d683711cbf08abd7adcd5ac2be825381308d220397315a5570fe61b719b5959
+SIZE (cabal/data-default-instances-dlist-0.0.1/data-default-instances-dlist-0.0.1.tar.gz) = 1503
+SHA256 (cabal/data-default-instances-old-locale-0.0.1/data-default-instances-old-locale-0.0.1.tar.gz) = 60d3b02922958c4908d7bf2b24ddf61511665745f784227d206745784b0c0802
+SIZE (cabal/data-default-instances-old-locale-0.0.1/data-default-instances-old-locale-0.0.1.tar.gz) = 1519
+SHA256 (cabal/dlist-0.8.0.8/dlist-0.8.0.8.tar.gz) = 7129cf18068d3384e305708a10426ab8f573bee1030b023a114f45f1d0ec496d
+SIZE (cabal/dlist-0.8.0.8/dlist-0.8.0.8.tar.gz) = 9262
+SHA256 (cabal/extensible-exceptions-0.1.1.4/extensible-exceptions-0.1.1.4.tar.gz) = 6ce5e8801760385a408dab71b53550f87629e661b260bdc2cd41c6a439b6e388
+SIZE (cabal/extensible-exceptions-0.1.1.4/extensible-exceptions-0.1.1.4.tar.gz) = 8531
+SHA256 (cabal/hsc2hs-0.68.6/hsc2hs-0.68.6.tar.gz) = e0cc7549c22fafe6e159aadb1048c9bfcce8fda602dd2febd8b1eea4df3292b2
+SIZE (cabal/hsc2hs-0.68.6/hsc2hs-0.68.6.tar.gz) = 35283
+SHA256 (cabal/old-locale-1.0.0.7/old-locale-1.0.0.7.tar.gz) = dbaf8bf6b888fb98845705079296a23c3f40ee2f449df7312f7f7f1de18d7b50
+SIZE (cabal/old-locale-1.0.0.7/old-locale-1.0.0.7.tar.gz) = 3384
+SHA256 (cabal/old-locale-1.0.0.7/revision/2.cabal) = fa998be2c7e00cd26a6e9075bea790caaf3932caa3e9497ad69bc20380dd6911
+SIZE (cabal/old-locale-1.0.0.7/revision/2.cabal) = 1071
+SHA256 (cabal/setlocale-1.0.0.9/setlocale-1.0.0.9.tar.gz) = 3bb386f705fc918615b288f55422ce6c14f087ff36e554cbafb9ffab9dea66a1
+SIZE (cabal/setlocale-1.0.0.9/setlocale-1.0.0.9.tar.gz) = 2098
+SHA256 (cabal/setlocale-1.0.0.9/revision/1.cabal) = 50a0053f1820ae2bbe7bff9da04b8f38925bb88233012741c249848de8412006
+SIZE (cabal/setlocale-1.0.0.9/revision/1.cabal) = 867
+SHA256 (cabal/utf8-string-1.0.1.1/utf8-string-1.0.1.1.tar.gz) = fb0b9e3acbe0605bcd1c63e51f290a7bbbe6628dfa3294ff453e4235fbaef140
+SIZE (cabal/utf8-string-1.0.1.1/utf8-string-1.0.1.1.tar.gz) = 8667
+SHA256 (cabal/utf8-string-1.0.1.1/revision/3.cabal) = 68cc6cf665e7212334a51b63d6936daeaca023b2cfe8637d130acfe95f91700b
+SIZE (cabal/utf8-string-1.0.1.1/revision/3.cabal) = 1151
diff --git a/x11-wm/hs-xmonad/files/example_buildscript b/x11-wm/hs-xmonad/files/example_buildscript
new file mode 100644
index 000000000000..2e10fbc6f684
--- /dev/null
+++ b/x11-wm/hs-xmonad/files/example_buildscript
@@ -0,0 +1,20 @@
+#!/bin/sh
+
+# must match "executable" line from xmonad-config.cabal
+EXE_NAME=xmonad-config
+
+# xmonad tells us how it want resulting executable to be named
+output_file=$1; shift
+
+CFG_DIR=$HOME/.xmonad
+
+# build the config
+cd $CFG_DIR
+cabal new-configure --enable-optimization --enable-executable-stripping
+cabal new-build
+
+if [ "$output_file" != "" ]; then
+# move resulting binary where it was requested to reside
+find $CFG_DIR/dist-newstyle -type f -perm +111 -name $EXE_NAME \
+ -exec mv '{}' $output_file ';'
+fi
diff --git a/x11-wm/hs-xmonad/files/example_config.cabal b/x11-wm/hs-xmonad/files/example_config.cabal
new file mode 100644
index 000000000000..923f5d4937a9
--- /dev/null
+++ b/x11-wm/hs-xmonad/files/example_config.cabal
@@ -0,0 +1,16 @@
+name: xmonad-config
+version: 0.0
+synopsis: XMonad Config File
+homepage: http://xmonad.org
+license: BSD2
+license-file: LICENSE
+author: Peter Jones <pjones@devalot.com>
+maintainer: Peter Jones <pjones@devalot.com>
+copyright: Copyright (c) 2016,2017 Peter J. Jones
+category: Graphics
+build-type: Simple
+cabal-version: >=1.8
+
+executable xmonad-config
+ main-is: config.hs
+ build-depends: base, xmonad, xmonad-contrib
diff --git a/x11-wm/hs-xmonad/pkg-message b/x11-wm/hs-xmonad/pkg-message
new file mode 100644
index 000000000000..2fbcaa560e89
--- /dev/null
+++ b/x11-wm/hs-xmonad/pkg-message
@@ -0,0 +1,18 @@
+XMonad is now compiled using Cabal "new-build" mechanism. This means that config
+file should now be compiled using "build" script approach. When EXAMPLES option
+is enabled, the port installs example build script. To migrate your config:
+
+% pkg install hs-cabal-install
+% cp /usr/local/share/examples/xmonad/build ~/.xmonad/build
+% cp /usr/local/share/examples/xmonad/xmonad-config.cabal ~/.xmonad/xmonad-config.cabal
+% cabal new-update
+
+Make sure your config is named ~/.xmonad/config.hs, or change corresponding line
+in the .cabal file. Building the config for the first time requires decent amount
+of time, so it is recommended to manually run the build script before the first
+startup:
+
+% ~/.xmonad/build
+
+It is possible to use devel/stack to build the config, as well as other means.
+See https://github.com/xmonad/xmonad-testing/ for all available options.
diff --git a/x11-wm/hs-xmonad/pkg-plist b/x11-wm/hs-xmonad/pkg-plist
new file mode 100644
index 000000000000..1d5518cf17e7
--- /dev/null
+++ b/x11-wm/hs-xmonad/pkg-plist
@@ -0,0 +1,4 @@
+man/man1/xmonad.1.gz
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/build
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/xmonad-config.cabal
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/xmonad.hs