Hi ports@,
This diff removes patches that were adopted, in one way or another, by
upstream, and uses hs-regex-compat as build depend instead of the hack
currently in use.

No reply from maintainer, so on to list.

Cheers,
js

Index: Makefile
===================================================================
RCS file: /cvs/ports/x11/xmobar/Makefile,v
retrieving revision 1.28
diff -u -p -r1.28 Makefile
--- Makefile    25 Nov 2013 10:31:04 -0000      1.28
+++ Makefile    13 Apr 2014 16:35:04 -0000
@@ -2,9 +2,10 @@
 
 COMMENT =              minimalistic text based status bar
 
-DISTNAME =             xmobar-0.19
+DISTNAME =             xmobar-0.20.1
 CATEGORIES =           x11
 HOMEPAGE =             http://projects.haskell.org/xmobar
+MASTER_SITE =  http://hackage.haskell.org/package/${DISTNAME}
 
 MAINTAINER =           Jona Joachim <[email protected]>
 
@@ -21,8 +22,9 @@ MODGHC_SETUP_CONF_ARGS = --flags="with_x
 
 BUILD_DEPENDS =                devel/hs-mtl \
                        devel/hs-parsec \
-                       devel/hs-regex-pcre-builtin \
+                       devel/hs-regex-compat \
                        devel/hs-stm>=2.3,<2.5 \
+                       net/hs-HTTP \
                        x11/hs-X11>=1.6.1 \
                        x11/hs-X11-xft>=0.2,<0.4 \
                        x11/hs-dbus>=0.10 \
Index: distinfo
===================================================================
RCS file: /cvs/ports/x11/xmobar/distinfo,v
retrieving revision 1.9
diff -u -p -r1.9 distinfo
--- distinfo    25 Nov 2013 10:31:04 -0000      1.9
+++ distinfo    13 Apr 2014 16:35:04 -0000
@@ -1,2 +1,2 @@
-SHA256 (ghc/xmobar-0.19.tar.gz) = AncPg9mH/xqMBpb0XnTtenq3segqYmrCjUzjuxPni9M=
-SIZE (ghc/xmobar-0.19.tar.gz) = 81828
+SHA256 (ghc/xmobar-0.20.1.tar.gz) = 
c8tLuxGG292Jud1135Xri/56dL1sQYmN5LnjyIx9Tpo=
+SIZE (ghc/xmobar-0.20.1.tar.gz) = 83871
Index: patches/patch-samples_xmobar_config
===================================================================
RCS file: /cvs/ports/x11/xmobar/patches/patch-samples_xmobar_config,v
retrieving revision 1.6
diff -u -p -r1.6 patch-samples_xmobar_config
--- patches/patch-samples_xmobar_config 25 Nov 2013 10:31:04 -0000      1.6
+++ patches/patch-samples_xmobar_config 13 Apr 2014 16:35:04 -0000
@@ -11,6 +11,7 @@ $OpenBSD: patch-samples_xmobar_config,v 
         , position = Top
 +       , allDesktops = True
         , lowerOnStart = True
+        , pickBroadest = False
 +       , overrideRedirect = True
         , persistent = False
         , hideOnStart = False
Index: patches/patch-src_Actions_hs
===================================================================
RCS file: patches/patch-src_Actions_hs
diff -N patches/patch-src_Actions_hs
--- patches/patch-src_Actions_hs        25 Nov 2013 10:31:04 -0000      1.2
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,69 +0,0 @@
-$OpenBSD: patch-src_Actions_hs,v 1.2 2013/11/25 10:31:04 dcoppa Exp $
-
-Due to our regex(3) library not supporting GNU extensions, xmobar
-immediately fails at startup:
-
-xmobar: user error (Text.Regex.Posix.String died: (ReturnCode 
13,"repetition-operator operand invalid"))
-
-when using the StdinReader plugin.
-
-So do what's required with Text.Regex.PCRE instead of Text.Regex.Posix.
-
-Code contributed by Alexander Polakov, thanks!
-
---- src/Actions.hs.orig        Wed Jun  5 00:37:16 2013
-+++ src/Actions.hs     Fri Jul 12 14:47:17 2013
-@@ -14,7 +14,8 @@ module Actions (Action(..), runAction, stripActions) w
- 
- import System.Process (system)
- import Control.Monad (void)
--import Text.Regex (subRegex, mkRegex)
-+import Text.Regex.PCRE
-+import Data.Array ((!))
- 
- data Action = Spawn String
-                 deriving (Eq)
-@@ -23,5 +24,41 @@ runAction :: Action -> IO ()
- runAction (Spawn s) = void $ system (s ++ "&")
- 
- stripActions :: String -> String
--stripActions s = subRegex actionRegex s "[action=\1]\2[action]"
--  where actionRegex = mkRegex "<action=([^>])*>(.+)</action>"
-+stripActions s = subRegex actionRegex s "[action=\\1]\\2[action]"
-+  where actionRegex = makeRegex "<action=([^>]*)>(.+?)</action>"
-+
-+-- copy-pasted from regex-compat
-+subRegex :: Regex                          -- ^ Search pattern
-+         -> String                         -- ^ Input string
-+         -> String                         -- ^ Replacement text
-+         -> String                         -- ^ Output string
-+subRegex _ "" _ = ""
-+subRegex regexp inp repl =
-+  let compile _i str [] = \ _m ->  (str++)
-+      compile i str (("\\",(off,len)):rest) =
-+        let i' = off+len
-+            pre = take (off-i) str
-+            str' = drop (i'-i) str
-+        in if null str' then \ _m -> (pre ++) . ('\\':)
-+             else \  m -> (pre ++) . ('\\' :) . compile i' str' rest m
-+      compile i str ((xstr,(off,len)):rest) =
-+        let i' = off+len
-+            pre = take (off-i) str
-+            str' = drop (i'-i) str
-+            x = read xstr
-+        in if null str' then \ m -> (pre++) . ((fst (m!x))++)
-+             else \ m -> (pre++) . ((fst (m!x))++) . compile i' str' rest m
-+      compiled :: MatchText String -> String -> String
-+      compiled = compile 0 repl findrefs where
-+        -- bre matches a backslash then capture either a backslash or some 
digits
-+        bre = makeRegex "\\\\(\\\\|[0-9]+)" :: Regex
-+        findrefs = map (\m -> (fst (m!1),snd (m!0))) (matchAllText bre repl)
-+      go _i str [] = str
-+      go i str (m:ms) =
-+        let (_,(off,len)) = m!0
-+            i' = off+len
-+            pre = take (off-i) str
-+            str' = drop (i'-i) str
-+        in if null str' then pre ++ (compiled m "")
-+             else pre ++ (compiled m (go i' str' ms))
-+  in go 0 inp (matchAllText regexp inp)   
Index: patches/patch-src_Main_hs
===================================================================
RCS file: patches/patch-src_Main_hs
diff -N patches/patch-src_Main_hs
--- patches/patch-src_Main_hs   25 Nov 2013 10:31:04 -0000      1.1
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,34 +0,0 @@
-$OpenBSD: patch-src_Main_hs,v 1.1 2013/11/25 10:31:04 dcoppa Exp $
-
-commit 1563fa8473d728486b7c86a1a4f818466ab64413
-Author: Thiago Negri <[email protected]>
-Date:   Tue Oct 29 21:40:50 2013 -0200
-
-Fixed #133: xmobar was not reading ~/.xmobarrc
-
---- src/Main.hs.orig   Sun Oct 27 21:43:04 2013
-+++ src/Main.hs        Mon Nov 25 10:52:10 2013
-@@ -105,14 +105,16 @@ getXdgConfigFile = xmobarConfigDir >>= return . (</> "
- -- | Read default configuration file or load the default config
- readDefaultConfig :: IO (Config,[String])
- readDefaultConfig = do
--  xdgconf <- getXdgConfigFile
--  x <- io $ fileExist xdgconf
-+  xdgConfigFile <- getXdgConfigFile
-+  xdgConfigFileExists <- io $ fileExist xdgConfigFile
-   home <- io $ getEnv "HOME"
--  let path = home ++ "/.xmobarrc"
--  f <- io $ fileExist path
--  if x then readConfig path
--       else if f then readConfig path
--                 else return (defaultConfig,[])
-+  let defaultConfigFile = home ++ "/.xmobarrc"
-+  defaultConfigFileExists <- io $ fileExist defaultConfigFile
-+  if xdgConfigFileExists
-+    then readConfig xdgConfigFile
-+    else if defaultConfigFileExists
-+         then readConfig defaultConfigFile
-+         else return (defaultConfig,[])
- 
- data Opts = Help
-           | Version
Index: patches/patch-src_Plugins_Monitors_Weather_hs
===================================================================
RCS file: patches/patch-src_Plugins_Monitors_Weather_hs
diff -N patches/patch-src_Plugins_Monitors_Weather_hs
--- patches/patch-src_Plugins_Monitors_Weather_hs       25 Nov 2013 10:31:04 
-0000      1.3
+++ /dev/null   1 Jan 1970 00:00:00 -0000
@@ -1,15 +0,0 @@
-$OpenBSD: patch-src_Plugins_Monitors_Weather_hs,v 1.3 2013/11/25 10:31:04 
dcoppa Exp $
-
-Use lynx(1) from base instead of curl
-
---- src/Plugins/Monitors/Weather.hs.orig       Sun Oct 27 21:43:04 2013
-+++ src/Plugins/Monitors/Weather.hs    Mon Nov 25 09:45:37 2013
-@@ -131,7 +131,7 @@ defUrl = "http://weather.noaa.gov/pub/data/observation
- 
- getData :: String -> IO String
- getData url=
--        do (i,o,e,p) <- runInteractiveCommand ("curl " ++ defUrl ++ url ++ 
".TXT")
-+        do (i,o,e,p) <- runInteractiveCommand ("lynx -source " ++ defUrl ++ 
url ++ ".TXT")
-            exit <- waitForProcess p
-            let closeHandles = do hClose o
-                                  hClose i
Index: patches/patch-src_Plugins_Monitors_hs
===================================================================
RCS file: /cvs/ports/x11/xmobar/patches/patch-src_Plugins_Monitors_hs,v
retrieving revision 1.5
diff -u -p -r1.5 patch-src_Plugins_Monitors_hs
--- patches/patch-src_Plugins_Monitors_hs       25 Nov 2013 10:31:04 -0000      
1.5
+++ patches/patch-src_Plugins_Monitors_hs       13 Apr 2014 16:35:04 -0000
@@ -1,9 +1,8 @@
-$OpenBSD: patch-src_Plugins_Monitors_hs,v 1.5 2013/11/25 10:31:04 dcoppa Exp $
---- src/Plugins/Monitors.hs.orig       Mon Nov 25 09:48:32 2013
-+++ src/Plugins/Monitors.hs    Mon Nov 25 09:59:43 2013
-@@ -21,20 +21,20 @@ import Plugins
+--- src/Plugins/Monitors.hs.orig       Thu Mar 13 19:17:19 2014
++++ src/Plugins/Monitors.hs    Wed Apr  2 20:03:36 2014
+@@ -21,20 +21,20 @@
  
- import Plugins.Monitors.Common (runM)
+ import Plugins.Monitors.Common (runM, runMD)
  import Plugins.Monitors.Weather
 -import Plugins.Monitors.Net
 -import Plugins.Monitors.Mem
@@ -35,7 +34,7 @@ $OpenBSD: patch-src_Plugins_Monitors_hs,
  #ifdef IWLIB
  import Plugins.Monitors.Wireless
  #endif
-@@ -50,25 +50,25 @@ import Plugins.Monitors.Mpris
+@@ -50,25 +50,25 @@
  #endif
  
  data Monitors = Weather      Station     Args Rate
@@ -43,10 +42,10 @@ $OpenBSD: patch-src_Plugins_Monitors_hs,
 -              | DynNetwork               Args Rate
 -              | BatteryP     Args        Args Rate
 -              | BatteryN     Args        Args Rate Alias
-+--            | Network      Interface   Args Rate
-+--            | DynNetwork               Args Rate
-+--            | BatteryP     Args        Args Rate
-+--            | BatteryN     Args        Args Rate Alias
++--             | Network      Interface   Args Rate
++--             | DynNetwork               Args Rate
++--             | BatteryP     Args        Args Rate
++--             | BatteryN     Args        Args Rate Alias
                | Battery      Args        Rate
 -              | DiskU        DiskSpec    Args Rate
 -              | DiskIO       DiskSpec    Args Rate
@@ -62,24 +61,24 @@ $OpenBSD: patch-src_Plugins_Monitors_hs,
 -              | TopProc      Args        Rate
 -              | TopMem       Args        Rate
 -              | Uptime       Args        Rate
-+--            | DiskU        DiskSpec    Args Rate
-+--            | DiskIO       DiskSpec    Args Rate
-+--            | Thermal      Zone        Args Rate
-+--            | ThermalZone  ZoneNo      Args Rate
-+--            | Memory       Args        Rate
-+--            | Swap         Args        Rate
-+--            | Cpu          Args        Rate
-+--            | MultiCpu     Args        Rate
-+--            | Brightness   Args        Rate
-+--            | CpuFreq      Args        Rate
-+--            | CoreTemp     Args        Rate
-+--            | TopProc      Args        Rate
-+--            | TopMem       Args        Rate
-+--            | Uptime       Args        Rate
++--             | DiskU        DiskSpec    Args Rate
++--             | DiskIO       DiskSpec    Args Rate
++--             | Thermal      Zone        Args Rate
++--             | ThermalZone  ZoneNo      Args Rate
++--             | Memory       Args        Rate
++--             | Swap         Args        Rate
++--             | Cpu          Args        Rate
++--             | MultiCpu     Args        Rate
++--             | Brightness   Args        Rate
++--             | CpuFreq      Args        Rate
++--             | CoreTemp     Args        Rate
++--             | TopProc      Args        Rate
++--             | TopMem       Args        Rate
++--             | Uptime       Args        Rate
  #ifdef IWLIB
                | Wireless Interface  Args Rate
  #endif
-@@ -97,25 +97,25 @@ type DiskSpec  = [(String, String)]
+@@ -97,25 +97,25 @@
  
  instance Exec Monitors where
      alias (Weather s _ _) = s
@@ -91,14 +90,14 @@ $OpenBSD: patch-src_Plugins_Monitors_hs,
 -    alias (Swap _ _) = "swap"
 -    alias (Cpu _ _) = "cpu"
 -    alias (MultiCpu _ _) = "multicpu"
-+--  alias (Network i _ _) = i
-+--  alias (DynNetwork _ _) = "dynnetwork"
-+--  alias (Thermal z _ _) = z
-+--  alias (ThermalZone z _ _) = "thermal" ++ show z
-+--  alias (Memory _ _) = "memory"
-+--  alias (Swap _ _) = "swap"
-+--  alias (Cpu _ _) = "cpu"
-+--  alias (MultiCpu _ _) = "multicpu"
++--   alias (Network i _ _) = i
++--   alias (DynNetwork _ _) = "dynnetwork"
++--   alias (Thermal z _ _) = z
++--   alias (ThermalZone z _ _) = "thermal" ++ show z
++--   alias (Memory _ _) = "memory"
++--   alias (Swap _ _) = "swap"
++--   alias (Cpu _ _) = "cpu"
++--   alias (MultiCpu _ _) = "multicpu"
      alias (Battery _ _) = "battery"
 -    alias (BatteryP _ _ _)= "battery"
 -    alias (BatteryN _ _ _ a)= a
@@ -110,20 +109,20 @@ $OpenBSD: patch-src_Plugins_Monitors_hs,
 -    alias (DiskU _ _ _) = "disku"
 -    alias (DiskIO _ _ _) = "diskio"
 -    alias (Uptime _ _) = "uptime"
-+--  alias (BatteryP _ _ _)= "battery"
-+--  alias (BatteryN _ _ _ a)= a
-+--  alias (Brightness _ _) = "bright"
-+--  alias (CpuFreq _ _) = "cpufreq"
-+--  alias (TopProc _ _) = "top"
-+--  alias (TopMem _ _) = "topmem"
-+--  alias (CoreTemp _ _) = "coretemp"
-+--  alias (DiskU _ _ _) = "disku"
-+--  alias (DiskIO _ _ _) = "diskio"
-+--  alias (Uptime _ _) = "uptime"
++--   alias (BatteryP _ _ _)= "battery"
++--   alias (BatteryN _ _ _ a)= a
++--   alias (Brightness _ _) = "bright"
++--   alias (CpuFreq _ _) = "cpufreq"
++--   alias (TopProc _ _) = "top"
++--   alias (TopMem _ _) = "topmem"
++--   alias (CoreTemp _ _) = "coretemp"
++--   alias (DiskU _ _ _) = "disku"
++--   alias (DiskIO _ _ _) = "diskio"
++--   alias (Uptime _ _) = "uptime"
  #ifdef IWLIB
      alias (Wireless i _ _) = i ++ "wi"
  #endif
-@@ -130,27 +130,27 @@ instance Exec Monitors where
+@@ -130,27 +130,27 @@
      alias (Mpris1 _ _ _) = "mpris1"
      alias (Mpris2 _ _ _) = "mpris2"
  #endif
@@ -133,23 +132,23 @@ $OpenBSD: patch-src_Plugins_Monitors_hs,
 -    start (MultiCpu a r) = startMultiCpu a r
 -    start (TopProc a r) = startTop a r
 -    start (TopMem a r) = runM a topMemConfig runTopMem r
-+--  start (Network  i a r) = startNet i a r
-+--  start (DynNetwork a r) = startDynNet a r
-+--  start (Cpu a r) = startCpu a r
-+--  start (MultiCpu a r) = startMultiCpu a r
-+--  start (TopProc a r) = startTop a r
-+--  start (TopMem a r) = runM a topMemConfig runTopMem r
-     start (Weather s a r) = runM (a ++ [s]) weatherConfig runWeather r
++--   start (Network  i a r) = startNet i a r
++--   start (DynNetwork a r) = startDynNet a r
++--   start (Cpu a r) = startCpu a r
++--   start (MultiCpu a r) = startMultiCpu a r
++--   start (TopProc a r) = startTop a r
++--   start (TopMem a r) = runM a topMemConfig runTopMem r
+     start (Weather s a r) = runMD (a ++ [s]) weatherConfig runWeather r 
weatherReady
 -    start (Thermal z a r) = runM (a ++ [z]) thermalConfig runThermal r
 -    start (ThermalZone z a r) =
 -      runM (a ++ [show z]) thermalZoneConfig runThermalZone r
 -    start (Memory a r) = runM a memConfig runMem r
 -    start (Swap a r) = runM a swapConfig runSwap r
-+--  start (Thermal z a r) = runM (a ++ [z]) thermalConfig runThermal r
-+--  start (ThermalZone z a r) =
-+--    runM (a ++ [show z]) thermalZoneConfig runThermalZone r
-+--  start (Memory a r) = runM a memConfig runMem r
-+--  start (Swap a r) = runM a swapConfig runSwap r
++--   start (Thermal z a r) = runM (a ++ [z]) thermalConfig runThermal r
++--   start (ThermalZone z a r) =
++--     runM (a ++ [show z]) thermalZoneConfig runThermalZone r
++--   start (Memory a r) = runM a memConfig runMem r
++--   start (Swap a r) = runM a swapConfig runSwap r
      start (Battery a r) = runM a battConfig runBatt r
 -    start (BatteryP s a r) = runM a battConfig (runBatt' s) r
 -    start (BatteryN s a r _) = runM a battConfig (runBatt' s) r
@@ -159,14 +158,14 @@ $OpenBSD: patch-src_Plugins_Monitors_hs,
 -    start (DiskU s a r) = runM a diskUConfig (runDiskU s) r
 -    start (DiskIO s a r) = startDiskIO s a r
 -    start (Uptime a r) = runM a uptimeConfig runUptime r
-+--  start (BatteryP s a r) = runM a battConfig (runBatt' s) r
-+--  start (BatteryN s a r _) = runM a battConfig (runBatt' s) r
-+--  start (Brightness a r) = runM a brightConfig runBright r
-+--  start (CpuFreq a r) = runM a cpuFreqConfig runCpuFreq r
-+--  start (CoreTemp a r) = runM a coreTempConfig runCoreTemp r
-+--  start (DiskU s a r) = runM a diskUConfig (runDiskU s) r
-+--  start (DiskIO s a r) = startDiskIO s a r
-+--  start (Uptime a r) = runM a uptimeConfig runUptime r
++--   start (BatteryP s a r) = runM a battConfig (runBatt' s) r
++--   start (BatteryN s a r _) = runM a battConfig (runBatt' s) r
++--   start (Brightness a r) = runM a brightConfig runBright r
++--   start (CpuFreq a r) = runM a cpuFreqConfig runCpuFreq r
++--   start (CoreTemp a r) = runM a coreTempConfig runCoreTemp r
++--   start (DiskU s a r) = runM a diskUConfig (runDiskU s) r
++--   start (DiskIO s a r) = startDiskIO s a r
++--   start (Uptime a r) = runM a uptimeConfig runUptime r
  #ifdef IWLIB
      start (Wireless i a r) = runM (a ++ [i]) wirelessConfig runWireless r
  #endif
Index: patches/patch-xmobar_cabal
===================================================================
RCS file: /cvs/ports/x11/xmobar/patches/patch-xmobar_cabal,v
retrieving revision 1.9
diff -u -p -r1.9 patch-xmobar_cabal
--- patches/patch-xmobar_cabal  12 Jul 2013 19:07:24 -0000      1.9
+++ patches/patch-xmobar_cabal  13 Apr 2014 16:35:04 -0000
@@ -1,7 +1,7 @@
 $OpenBSD: patch-xmobar_cabal,v 1.9 2013/07/12 19:07:24 dcoppa Exp $
---- xmobar.cabal.orig  Wed Jun  5 00:37:16 2013
-+++ xmobar.cabal       Fri Jul 12 19:27:30 2013
-@@ -88,16 +88,18 @@ executable xmobar
+--- xmobar.cabal.orig  Thu Apr  3 19:58:54 2014
++++ xmobar.cabal       Thu Apr  3 19:59:38 2014
+@@ -88,10 +88,11 @@ executable xmobar
        Plugins.Monitors.Swap, Plugins.Monitors.Thermal,
        Plugins.Monitors.ThermalZone, Plugins.Monitors.Top,
        Plugins.Monitors.Uptime, Plugins.Monitors.Weather,
@@ -14,11 +14,3 @@ $OpenBSD: patch-xmobar_cabal,v 1.9 2013/
      extra-libraries: Xrandr
  
      build-depends:
-       base == 4.*,
-       containers,
--      regex-compat,
-+      array,
-+      regex-pcre-builtin,
-       process,
-       old-locale,
-       bytestring,

Reply via email to