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,
