Specifying multiple executable arguments using startupitems

Steven Smith steve.t.smith at gmail.com
Sat Aug 1 13:13:28 UTC 2020


I’m trying to update port clam-server to the new syntax, and am hitting the following issue. As far as I can tell, it looks like a bug. The command `port destroot clam-server` with Macports 2.6.3 fails with this error:

> --->  Creating launchd control script 'ClamavScanOnAccess'
> Error: Failed to destroot clamav-server: list element in quotes followed by ")" instead of space


I’ve tracked this down to the bash line:

> DATE=(/bin/date \"+%FT%T\")"


I am unable to insert any string of this form into the startupitems init/start/stop commands without encountering this error.

> FOO=(\"BAR \")
> FOO=\(\"BAR \"\)


To the best of my knowledge, this should be seen as a simple string by tcl, and inserted into the startup item, as it is done correctly in Macports 2.6.2.

Is this a bug in Macports 2.6.3? Or some subtle escape character issue?


>> On the assumption that it is, I believe this is the fix:
>> 
>> https://github.com/macports/macports-base/pull/191
> 
> The bug has been fixed in 2.6.3. Some ports will need to adjust their usage of startupitems to be compatible with this change. I believe there are only 4 ports affected, mentioned in that PR, for which I've filed tickets or PRs.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macports.org/pipermail/macports-dev/attachments/20200801/0c5fa958/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 3898 bytes
Desc: not available
URL: <http://lists.macports.org/pipermail/macports-dev/attachments/20200801/0c5fa958/attachment.bin>


More information about the macports-dev mailing list