Does Scrivomatic or Pandocomatic need the most recent version of paru?

Related to setting up to run @nontroppo 's Scrivomatic, it seems while pandocomatic successfully installed, the most recent version of paru couldn’t be used because it wasn’t compatible with the version of Ruby built in to my M1 Macbook Air. Evidently the most recent version of paru, paru-1.0.2.gem, requires Ruby 2.7.6 or higher; version 0.4.3 of paru was then automatically installed instead. Is this a problem for using Scrivomatic? Specifically, is it a problem not having the most recent version of paru installed?

An excerpt of this terminal session is reproduced below, where in it complains about the oldness of the built-in Ruby:

Fetching paru-1.0.2.gem  
ERROR\: Error installing paru\:  
The last version of paru \(\>= 0\) to support your Ruby & RubyGems was 0.4.3. Try installing it with \`gem install paru -v 0.4.3\`  
paru requires Ruby version \>= 2.7.6. The current ruby version is 

Ah, yes it seems paru is now not compatible with the default Ruby that Apple supplies :grimacing: This is largely the fault of Apple, they bundle ancient versions of tools for “backwards compatibility”, but this then breaks updates to newer libraries! I have opened an issue on paru’s github and see what has caused this: Compatibility with Ruby V2.6.8 that is default with macOS · Issue #72 · htdebeer/paru · GitHub

I don’t see this problem as I always use the latest version of Ruby I install using rbenv. There are several options. You can roll back to the last working version:

sudo gem install paru:0.4.3 pandocomatic:0.2.8

Newer versions are designed to follow changes in pandoc, so some new features may break, however I don’t think there is anything that has changed much regarding scrivener compiling…

The best solution is to upgrade to the latest version of ruby, V3.1.2 which supports the latest paru, some instructions can be seen here:


I just tested whether scrivomatic / pandocomatic work rolling back to Ruby V2.6.8 and V0.4.3 of paru and they work fine :sweat_smile::

=== ------------------------------------------------------ ===
=== Scrivomatic V1.0.31 Report @ 2022-08-02 19:49:33 +0100 ===
=== ------------------------------------------------------ ===
 Running shell: /bin/zsh
 Working directory: /Users/ian/Desktop/workflow-mmd
 Initiating with Ruby 2.6.8
===------ Input Options: ------===
#<struct Scrivomatic::OPT input="", output=nil, to=nil, yaml="./pandocomatic.yaml", command="pandocomatic", envpath="/Users/ian/bin:/Users/ian/.rbenv/shims:/Library/TeX/texbin:/usr/local/bin", build=false, cleanup=false, verbose=true, dry_run=false, open_log=true, data_dir=nil>
===------ Final ENV PATH: ------===
===------ TOOL PATHS: ------===
---pandoc: /usr/local/bin/pandoc | V: 2.18
---pandocomatic: /Users/ian/.rbenv/shims/pandocomatic | V: 0.2.8
---ruby: /Users/ian/.rbenv/shims/ruby | V: ruby 2.6.8p205 (2021-07-07 revision 67951) [universal.x86_64-darwin21]
---rbenv versions:
* system (set by RBENV_VERSION environment variable)
---rbenv: /usr/local/bin/rbenv
---gem: /Users/ian/.rbenv/shims/gem
---python: /Users/ian/.pyenv/shims/python
---xelatex: /Library/TeX/texbin/xelatex
---latexmk: /Library/TeX/texbin/latexmk

… running pandocomatic, please wait …
1 Like

The paru developer Huub de Beer already replied and will try to reduce the requirement to Ruby V2.6.8 in the next version of paru, lets see if it works OK…

1 Like

I didn’t mention in my OP that I was able to successfully compile the workflow scrivener sample-project, consistent with V0.4.3. of paru working fine, as you suggested above. (I was not able to compile the .tex file in TeXShop to produce a pdf unfortunately however. I might post about that problem separately.)

It seems that I should eventually invest the time to properly install the latest ruby via the method you describe in the Scrivomatic instruction on GitHub. In the mean time, I think your suggestion somewhere to also try Quarto seems promising. Ultimately it would make sense to both have Scrivomatic and Quarto-VSCode as separate, alternative ways of producing output from Scrivener. (Oh, and also just using the pandoc from the terminal as you also describe.)

Yes, this is going to most likely be a problem with LaTeX packages, you can post in the forum.

Indeed, I think apart from the fact that the metadata is different the great benefit of using pandoc-flavoured markdown is the flexibility to. Quarto is also committed to ensure that the source remains the same, and it is the compilation that modifies the final form, very much similar to Scrivener in principle. In theory we can drive Quarto directly from Scrivener, no immediate need for VSCode (though I think perusing your markdown intermediate is informative when tweaking your final output). One small detail is that for web / book output, Quarto uses the one-file one-chapter model. This is not immediately compatible with scriveners one-file one-project output. However, making a small script to split the document up it trivial; and the command csplit can even do this without needing any scripting.

1 Like

Update: paru V1.0.3 was released and it works fine with macOS bundled V2.6.8 ruby, scrivomatic runs fine as far as I can tell…

1 Like

Update: In the thread above I mentioned that I hadn’t been able to compile the .tex file produced by Scrivomatic, but now I’ve managed to. There were a couple issues related to character encoding settings and fonts in TeXShop on my M1 MacBook Air. I may post on this topic separately.