On Mon, Apr 14, 2014 at 7:35 PM, qszmidt <[email protected]> wrote: > 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
I was working on a similar diff today but you have been faster. I will commit it tomorrow if nobody objects. Thanks, David > 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, >
