<pre style='margin:0'>
Clemens Lang (neverpanic) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/649cd45350e3d70550168e5a69693e559143522a">https://github.com/macports/macports-ports/commit/649cd45350e3d70550168e5a69693e559143522a</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 649cd45  adblock2privoxy: Bugfix destroot issue, allow config initialization
</span>649cd45 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 649cd45350e3d70550168e5a69693e559143522a
</span>Author: Steven Thomas Smith <s.t.smith@ieee.org>
AuthorDate: Sun Sep 1 19:40:02 2019 -0400

<span style='display:block; white-space:pre;color:#404040;'>    adblock2privoxy: Bugfix destroot issue, allow config initialization
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    * Fix destroot issue in binary caused by datadir in stack_root
</span><span style='display:block; white-space:pre;color:#404040;'>    * Fix stack/cabal data-files hardcoded path issue with Paths_${name}.hs file
</span><span style='display:block; white-space:pre;color:#404040;'>    * Allow initialization of proxy configuration files
</span><span style='display:block; white-space:pre;color:#404040;'>    * See https://github.com/commercialhaskell/stack/issues/848
</span><span style='display:block; white-space:pre;color:#404040;'>    * See https://github.com/commercialhaskell/stack/issues/4857
</span>---
 www/adblock2privoxy/Portfile                       | 64 ++++++++++++++++++++--
 www/adblock2privoxy/files/Paths_adblock2privoxy.hs | 62 +++++++++++++++++++++
 2 files changed, 122 insertions(+), 4 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/www/adblock2privoxy/Portfile b/www/adblock2privoxy/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 4ad9631..377742d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/www/adblock2privoxy/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/www/adblock2privoxy/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -5,6 +5,7 @@ PortGroup           haskell_stack 1.0
</span> 
 name                adblock2privoxy
 version             2.0.1
<span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            1
</span> categories          www haskell
 maintainers         @essandess
 license             GPL-3
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -39,18 +40,50 @@ depends_run-append \
</span>                     port:nginx \
                     port:privoxy
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+variant initialize \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    description {Initialize all configuration files. Existing
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        configurations files are not overwritten by default.} {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# relative paths to ${prefix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set ab2p_datadir    share/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Fix for cabal data-files hardcoded path in binary
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# See:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/commercialhaskell/stack/issues/848
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/commercialhaskell/stack/issues/4857
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/haskell/cabal/issues/462
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/haskell/cabal/issues/3586
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-extract {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    xinstall -m 0644 -W ${worksrcpath} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${filespath}/Paths_${name}.hs ./src
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace "s|@PREFIX@|${prefix}|g" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${worksrcpath}/src/Paths_${name}.hs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span> post-destroot {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    xinstall -d ${destroot}${prefix}/etc/${name} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    xinstall -m 0755 -d \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${destroot}${prefix}/share/${name}/templates \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${destroot}${prefix}/etc/${name} \
</span>         ${destroot}${prefix}/etc/${name}/privoxy \
         ${destroot}${prefix}/etc/${name}/css
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # cabal's data-files datadir: ${name}_datadir from Paths_${name}.hs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    fs-traverse f ${worksrcpath}/.stack-work {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if { [string match "ab2p.system.*" [file tail ${f}]] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            xinstall -m 0644 ${f} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                ${destroot}${prefix}/share/${name}/templates
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     xinstall -m 0644 -W ${filespath} \
         nginx.conf \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        ${destroot}${prefix}/etc/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${destroot}${prefix}/etc/${name}/nginx.conf.macports
</span>     xinstall -m 0644 -W ${filespath} \
         default.html \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        ${destroot}${prefix}/etc/${name}/css
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${destroot}${prefix}/etc/${name}/css/default.html.macports
</span>     reinplace "s|@PREFIX@|${prefix}|g" \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-        ${destroot}${prefix}/etc/${name}/nginx.conf
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${destroot}${prefix}/etc/${name}/nginx.conf.macports
</span> }
 
 startupitem.create  yes
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -104,6 +137,29 @@ post-activate {
</span>   </array>\\
 &|" \
         ${prefix}/etc/${startupitem.location}/org.macports.${name}/org.macports.${name}.plist
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    foreach f [list \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${prefix}/etc/${name}/nginx.conf \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ${prefix}/etc/${name}/css/default.html \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        ] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if { [variant_isset "initialize"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             && [file exists ${f}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            delete ${f}.previous
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            move \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                ${f} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                ${f}.previous
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if { [variant_isset "initialize"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             || ![file exists ${f}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if { [file isfile ${f}.macports] } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                xinstall -m 0644 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ${f}.macports \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ${f}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span> }
 
 notes "
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/www/adblock2privoxy/files/Paths_adblock2privoxy.hs b/www/adblock2privoxy/files/Paths_adblock2privoxy.hs
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..aa53c80
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/www/adblock2privoxy/files/Paths_adblock2privoxy.hs
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,62 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{- Cabal data-files hardcoded path in binary fix.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+This file replaces the Paths_*.hs automatically created by cabal.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+See:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+* https://github.com/commercialhaskell/stack/issues/848
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+* https://github.com/commercialhaskell/stack/issues/4857
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+* https://github.com/haskell/cabal/issues/462
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+* https://github.com/haskell/cabal/issues/3586
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{-# LANGUAGE CPP #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{-# LANGUAGE NoRebindableSyntax #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+{-# OPTIONS_GHC -fno-warn-missing-import-lists #-}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+module Paths_adblock2privoxy (
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    version,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    getBinDir, getLibDir, getDynLibDir, getDataDir, getLibexecDir,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    getDataFileName, getSysconfDir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  ) where
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+import qualified Control.Exception as Exception
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+import Data.Version (Version(..))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+import System.Environment (getEnv)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+import Prelude
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if defined(VERSION_base)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#if MIN_VERSION_base(4,0,0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+catchIO :: IO a -> (Exception.Exception -> IO a) -> IO a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+catchIO :: IO a -> (Exception.IOException -> IO a) -> IO a
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+catchIO = Exception.catch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version :: Version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version = Version [2,0,1] []
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bindir, libdir, dynlibdir, datadir, libexecdir, sysconfdir :: FilePath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bindir     = "@PREFIX@/bin"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+libdir     = "@PREFIX@/lib/adblock2privoxy"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+dynlibdir  = "@PREFIX@/lib/adblock2privoxy"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+datadir    = "@PREFIX@/share/adblock2privoxy"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+libexecdir = "@PREFIX@/lib/adblock2privoxy"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+sysconfdir = "@PREFIX@/etc"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+getBinDir, getLibDir, getDynLibDir, getDataDir, getLibexecDir, getSysconfDir :: IO FilePath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+getBinDir = catchIO (getEnv "adblock2privoxy_bindir") (\_ -> return bindir)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+getLibDir = catchIO (getEnv "adblock2privoxy_libdir") (\_ -> return libdir)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+getDynLibDir = catchIO (getEnv "adblock2privoxy_dynlibdir") (\_ -> return dynlibdir)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+getDataDir = catchIO (getEnv "adblock2privoxy_datadir") (\_ -> return datadir)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+getLibexecDir = catchIO (getEnv "adblock2privoxy_libexecdir") (\_ -> return libexecdir)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+getSysconfDir = catchIO (getEnv "adblock2privoxy_sysconfdir") (\_ -> return sysconfdir)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+getDataFileName :: FilePath -> IO FilePath
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+getDataFileName name = do
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  dir <- getDataDir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  return (dir ++ "/" ++ name)
</span></pre><pre style='margin:0'>

</pre>