<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hi<div class=""><br class=""></div><div class="">Thanks for your quick reply Larry. Confirmed that your fix addresses the startup issue. When I try to run a grass processing alg on Mac I get a similar error in the log window now:</div><div class=""><br class=""></div><div class=""><div style="margin: 0px;" class=""><!--StartFragment--><span style=" font-family:'Monaco';" class="">g.proj -c proj4="+proj=longlat +datum=WGS84 +no_defs"</span></div><div style="margin: 0px;" class=""><span style=" font-family:'Monaco';" class="">v.external input="/Users/timlinux/gisdata/InaSAFE/Agung/Agung.shp" output="a5a1ef289ca1062" --overwrite -o</span></div><div style="margin: 0px;" class=""><span style=" font-family:'Monaco';" class="">g.region n=-8.341999999999928 s=-8.341999999999928 e=115.50800000000004 w=115.50800000000004</span></div><div style="margin: 0px;" class=""><span style=" font-family:'Monaco';" class="">v.buffer input=a5a1ef289ca1062 distance=100 tolerance=0.01 output=output0bddfa66df874fd7bb9e9d52a9c84228 --overwrite</span></div><div style="margin: 0px;" class=""><span style=" font-family:'Monaco';" class="">v.out.ogr -c type=auto input="output0bddfa66df874fd7bb9e9d52a9c84228" output="/var/folders/g6/fnh1vyx13q728xq52nw7yx400000gn/T/processing_9b123312434544668360822a2b4cf6f0/0af610f60d9f465f9b2959fbc5442af5/output.shp" format=ESRI_Shapefile --overwrite</span></div><div style="margin: 0px;" class=""><span style=" color:#ff0000;" class="">Traceback (most recent call last): File "/Users/timlinux/dev/cpp/QGIS-QtCreator-Build/output/python/plugins/processing/algs/grass7/Grass7Algorithm.py", line 375, in processAlgorithm Grass7Utils.executeGrass(self.commands, feedback, self.outputCommands) File "/Users/timlinux/dev/cpp/QGIS-QtCreator-Build/output/python/plugins/processing/algs/grass7/Grass7Utils.py", line 368, in executeGrass startupinfo=si if isWindows() else None File "/usr/local/opt/python3/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py", line 707, in __init__ restore_signals, start_new_session) File "/usr/local/opt/python3/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py", line 1333, in _execute_child raise child_exception_type(errno_num, err_msg) PermissionError: [Errno 13] Permission denied </span><br class=""></div><div style="margin: 0px;" class=""><span style=" color:#ff0000;" class="">Execution failed after 0.08 seconds</span><br class=""></div><div style="margin: 0px;" class=""><br class=""></div><div style="margin: 0px;" class="">Loading resulting layers</div><div style="margin: 0px;" class="">Algorithm 'v.buffer.distance - Creates a buffer around features of given type.’ finished<!--EndFragment--></div><div style="margin: 0px;" class=""><br class=""></div><div><br class=""></div><div>I guess we are going to need to search and replace all shell=False parameters and set them to True if we are on Mac….</div><div><br class=""></div><div>Regards</div><div><br class=""></div><div>Tim</div><div><br class=""></div><div><br class=""><blockquote type="cite" class=""><div class="">On 29 Nov 2017, at 19:40, Larry Shaffer <<a href="mailto:larrys@dakotacarto.com" class="">larrys@dakotacarto.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">Hi Tim,<div class="gmail_extra"><br class=""></div><div class="gmail_extra">Ran into the same thing today, but with more output on the error:</div><div class="gmail_extra"><br class=""></div><div class="gmail_extra">PermissionError: [Errno 13] Permission denied: '/usr/local/opt/grass7/grass-base/etc/colors/grass'</div><div class="gmail_extra"><br class=""></div><div class="gmail_extra">Changing line # 108 in:</div><div class="gmail_extra">python/plugins/processing/algs/grass7/Grass7Utils.py</div><div class="gmail_extra"><br class=""></div><div class="gmail_extra">from:</div><div class="gmail_extra">shell=False,<br class=""></div><div class="gmail_extra"><br class=""></div><div class="gmail_extra">to:</div><div class="gmail_extra">shell=True if isMac() else False,<br class=""></div><div class="gmail_extra"><br class=""></div><div class="gmail_extra">fixes the issue for me. Processing loads and GRASS algs open. (Not sure if True is needed for other platforms; untested.)</div><div class="gmail_extra"><div class=""><div class="gmail_signature"><div dir="ltr" class=""><br class=""></div><div class="">Fix not pushed. Please verify on your setup first (mine is macOS 10.11.6). Thanks!</div><div dir="ltr" class=""><br class=""></div><div class="">Regards,</div><div dir="ltr" class=""><br class="">Larry Shaffer<br class="">Dakota Cartography<br class="">Black Hills, South Dakota<br class="">----------------------------------<br class="">Boundless Desktop and QGIS Support/Development<br class="">Boundless Spatial - <a href="http://boundlessgeo.com/" target="_blank" class="">http://boundlessgeo.com</a><br class=""><a href="mailto:lshaffer@boundlessgeo.com" target="_blank" class="">lshaffer@boundlessgeo.com</a></div></div></div>
<br class=""><div class="gmail_quote">On Wed, Nov 29, 2017 at 7:39 AM, Tim Sutton <span dir="ltr" class=""><<a href="mailto:tim@kartoza.com" target="_blank" class="">tim@kartoza.com</a>></span> wrote:<br class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div style="word-wrap:break-word" class="">Hi All<div class=""><br class=""></div><div class="">Its been a few days since I pulled from master - now I am getting the error below on startup. Does anyone else get it? (Building on MacOS here):</div><div class=""><br class=""></div><div class=""><div style="margin:0px" class=""><span style="font-weight:600;color:rgb(255,0,0)" class="">Couldn't load plugin 'processing' due to an error when calling its initGui() method</span> <br class=""></div><p style="margin:14px 0px 12px" class=""><span style="font-size:large;font-weight:600" class="">PermissionError: [Errno 13] Permission denied </span></p>
<pre style="margin-top:12px;margin-bottom:12px" class=""><span style="font-family:Monaco" class="">Traceback (most recent call last):<br class="">  File "/Users/timlinux/dev/cpp/QGIS-<wbr class="">QtCreator-Build/output/python/<wbr class="">qgis/utils.py", line 345, in startPlugin<br class="">    plugins[packageName].initGui()<br class="">  File "/Users/timlinux/dev/cpp/QGIS-<wbr class="">QtCreator-Build/output/python/<wbr class="">plugins/processing/<wbr class="">ProcessingPlugin.py", line 178, in initGui<br class="">    self.toolbox = ProcessingToolbox()<br class="">  File "/Users/timlinux/dev/cpp/QGIS-<wbr class="">QtCreator-Build/output/python/<wbr class="">plugins/processing/gui/<wbr class="">ProcessingToolbox.py", line 93, in __init__<br class="">    self.fillTree()<br class="">  File "/Users/timlinux/dev/cpp/QGIS-<wbr class="">QtCreator-Build/output/python/<wbr class="">plugins/processing/gui/<wbr class="">ProcessingToolbox.py", line 317, in fillTree<br class="">    self.fillTreeUsingProviders()<br class="">  File "/Users/timlinux/dev/cpp/QGIS-<wbr class="">QtCreator-Build/output/python/<wbr class="">plugins/processing/gui/<wbr class="">ProcessingToolbox.py", line 382, in fillTreeUsingProviders<br class="">    providerItem = TreeProviderItem(provider, self.algorithmTree, self)<br class="">  File "/Users/timlinux/dev/cpp/QGIS-<wbr class="">QtCreator-Build/output/python/<wbr class="">plugins/processing/gui/<wbr class="">ProcessingToolbox.py", line 513, in __init__<br class="">    self.setToolTip(0, self.provider.longName())<br class="">  File "/Users/timlinux/dev/cpp/QGIS-<wbr class="">QtCreator-Build/output/python/<wbr class="">plugins/processing/algs/<wbr class="">grass7/<wbr class="">Grass7AlgorithmProvider.py", line 122, in longName<br class="">    version = Grass7Utils.installedVersion()<br class="">  File "/Users/timlinux/dev/cpp/QGIS-<wbr class="">QtCreator-Build/output/python/<wbr class="">plugins/processing/algs/<wbr class="">grass7/Grass7Utils.py", line 113, in installedVersion<br class="">    startupinfo=si if isWindows() else None<br class="">  File "/usr/local/opt/python3/<wbr class="">Frameworks/Python.framework/<wbr class="">Versions/3.6/lib/python3.6/<wbr class="">subprocess.py", line 707, in __init__<br class="">    restore_signals, start_new_session)<br class="">  File "/usr/local/opt/python3/<wbr class="">Frameworks/Python.framework/<wbr class="">Versions/3.6/lib/python3.6/<wbr class="">subprocess.py", line 1333, in _execute_child<br class="">    raise child_exception_type(errno_<wbr class="">num, err_msg)<br class="">PermissionError: [Errno 13] Permission denied<br class=""></span></pre><div style="margin:0px" class=""><br class=""><span style="font-weight:600" class="">Python version:</span> 3.6.2 (default, Jul 17 2017, 16:44:45) [GCC 4.2.1 Compatible Apple LLVM 8.1.0 (clang-802.0.42)] <br class=""><span style="font-weight:600" class="">QGIS version:</span> 2.99.0-Master Master, e8213b8e41 <br class=""></div><p style="margin:12px 0px" class=""><span style="font-size: inherit; font-weight: 600;" class="">Python Path:</span></p>
<ul style="margin:0px" class=""><li style="margin:12px 0px 0px" class="">/Users/timlinux/dev/cpp/QGIS-<wbr class="">QtCreator-Build/output/python/<wbr class="">plugins/processing</li>
<li style="margin:0px" class="">/Users/timlinux/dev/cpp/QGIS-<wbr class="">QtCreator-Build/output/python</li>
<li style="margin:0px" class="">/Users/timlinux/Library/<wbr class="">Application Support/QGIS/QGIS3/profiles/<wbr class="">default/python</li>
<li style="margin:0px" class="">/Users/timlinux/Library/<wbr class="">Application Support/QGIS/QGIS3/profiles/<wbr class="">default/python/plugins</li>
<li style="margin:0px" class="">/Users/timlinux/dev/cpp/QGIS-<wbr class="">QtCreator-Build/output/python/<wbr class="">plugins</li>
<li style="margin:0px" class="">/Users/timlinux/dev/cpp/QGIS-<wbr class="">QtCreator-Build/output/bin/$<wbr class="">PYTHONPATH</li>
<li style="margin:0px" class="">/usr/local/opt/gdal2-python/<wbr class="">lib/python3.6/site-packages</li>
<li style="margin:0px" class="">/usr/local/opt/python3/<wbr class="">Frameworks/Python.framework/<wbr class="">Versions/3.6/lib/python36.zip</li>
<li style="margin:0px" class="">/usr/local/opt/python3/<wbr class="">Frameworks/Python.framework/<wbr class="">Versions/3.6/lib/python3.6</li>
<li style="margin:0px" class="">/usr/local/opt/python3/<wbr class="">Frameworks/Python.framework/<wbr class="">Versions/3.6/lib/python3.6/<wbr class="">lib-dynload</li>
<li style="margin:0px" class="">/usr/local/opt/python3/<wbr class="">Frameworks/Python.framework/<wbr class="">Versions/3.6/lib/python3.6/<wbr class="">site-packages</li>
<li style="margin:0px" class="">/usr/local/opt/python3/<wbr class="">Frameworks/Python.framework/<wbr class="">Versions/3.6/lib/python3.6/<wbr class="">site-packages/pycharm-debug-<wbr class="">py3k.egg</li>
<li style="margin:0px 0px 12px" class="">/Users/timlinux/Library/<wbr class="">Application Support/QGIS/QGIS3/profiles/<wbr class="">default/python</li></ul><div class=""><br class=""></div><div class="">
<div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; line-height: normal; text-align: center;" class=""><span class="">—</span></div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; letter-spacing: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; line-height: normal; text-align: center;" class=""><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal; min-height: 14px;" class=""><br class=""></div><br class="gmail-m_-2248818497414679160Apple-interchange-newline" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"><span style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;" class=""><span class=""><span class=""><span class=""><span class=""><span class=""><span class=""><span class=""><span class=""><span class=""><span id="cid:1A5DF6DE-E302-4C28-BFBD-29663CBF1351"><KartozaNewLogoThumbnail.jpg></span></span><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal; min-height: 14px;" class=""><br class="gmail-m_-2248818497414679160Apple-interchange-newline"><br class="gmail-m_-2248818497414679160Apple-interchange-newline"><br class=""></div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal; min-height: 14px;" class=""><br class=""></div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal;" class=""><b class="">Tim Sutton</b></div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal; min-height: 14px;" class=""><br class=""></div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal;" class=""><b class="">Co-founder:</b><span class="gmail-m_-2248818497414679160Apple-converted-space"> </span>Kartoza</div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal;" class=""><b class="">Project chair:</b><span style="font-weight:normal" class=""><span class="gmail-m_-2248818497414679160Apple-converted-space"> </span><a href="http://qgis.org/" target="_blank" class="">QGIS.org</a></span></div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal; min-height: 14px;" class=""><br class=""></div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal;" class="">Visit <a href="http://kartoza.com/" target="_blank" class=""><span class="">http://kartoza.com</span></a> to find out about open source:</div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal; min-height: 14px;" class=""><br class=""></div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal;" class="">Desktop GIS programming services</div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal;" class="">Geospatial web development</div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal;" class="">GIS Training</div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal;" class="">Consulting Services</div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal; min-height: 14px;" class=""><br class=""></div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal;" class=""><b class="">Skype</b>: timlinux </div><div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; margin: 0px; line-height: normal;" class=""><b class="">IRC:</b><span class="gmail-m_-2248818497414679160Apple-converted-space"> </span>timlinux on #qgis at <a href="http://freenode.net/" target="_blank" class="">freenode.net</a></div>
</span></span></span></span></span></span></span></span></span></div>
</div><br class=""></div></div><br class="">______________________________<wbr class="">_________________<br class="">
QGIS-Developer mailing list<br class="">
<a href="mailto:QGIS-Developer@lists.osgeo.org" class="">QGIS-Developer@lists.osgeo.org</a><br class="">
List info: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank" class="">https://lists.osgeo.org/<wbr class="">mailman/listinfo/qgis-<wbr class="">developer</a><br class="">
Unsubscribe: <a href="https://lists.osgeo.org/mailman/listinfo/qgis-developer" rel="noreferrer" target="_blank" class="">https://lists.osgeo.org/<wbr class="">mailman/listinfo/qgis-<wbr class="">developer</a><br class=""></blockquote></div><br class=""></div></div>
</div></blockquote></div><br class=""><div class="">
<div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-position: normal; font-variant-caps: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; font-weight: normal; letter-spacing: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; line-height: normal; text-align: center;" class=""><span>—</span></div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-position: normal; font-variant-caps: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; letter-spacing: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; line-height: normal; text-align: center;" class=""><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0); min-height: 14px;" class=""><br class=""></div><br class="Apple-interchange-newline" style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;"><span style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px;"><span><span><span><span><span><span><span><span><span><img apple-inline="yes" id="A916BE25-2E3B-4DC3-9E8D-12E80295764F" src="cid:1A5DF6DE-E302-4C28-BFBD-29663CBF1351" class=""></span><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0); min-height: 14px;" class=""><br class="Apple-interchange-newline"><br class="Apple-interchange-newline"><br class=""></div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0); min-height: 14px;" class=""><br class=""></div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class=""><b class="">Tim Sutton</b></div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0); min-height: 14px;" class=""><br class=""></div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class=""><b class="">Co-founder:</b><span class="Apple-converted-space"> </span>Kartoza</div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class=""><b class="">Project chair:</b><span style="font-weight: normal;" class=""><span class="Apple-converted-space"> </span><a href="http://QGIS.org" class="">QGIS.org</a></span></div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0); min-height: 14px;" class=""><br class=""></div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class="">Visit <a href="http://kartoza.com/" class=""><span style="-webkit-text-stroke-color: rgb(71, 135, 255);" class="">http://kartoza.com</span></a> to find out about open source:</div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0); min-height: 14px;" class=""><br class=""></div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class="">Desktop GIS programming services</div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class="">Geospatial web development</div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class="">GIS Training</div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class="">Consulting Services</div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0); min-height: 14px;" class=""><br class=""></div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class=""><b class="">Skype</b>: timlinux </div><div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: center; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: initial; font-variant-ligatures: normal; font-variant-position: normal; font-variant-numeric: normal; font-variant-alternates: normal; font-variant-east-asian: normal; margin: 0px; line-height: normal; -webkit-text-stroke-color: rgb(0, 0, 0);" class=""><b class="">IRC:</b><span class="Apple-converted-space"> </span>timlinux on #qgis at <a href="http://freenode.net" class="">freenode.net</a></div>
</span></span></span></span></span></span></span></span></span></div>
</div><br class=""></div></body></html>