3 ms·
As is generally the case, there are official docker images readily available and it's a fantastically light, low-coupling way of adding conversion to a stack.
by llm_nerd 3y ago
As is generally the case, there are official docker images readily available and it's a fantastically light, low-coupling way of adding conversion to a stack.
Recently rewrote a content stack to use Markdown (among other formats) for the source, the file system as the database, generating outputs (including HTML with embedded Mathjax LATEX) via pandoc, and it works absolutely brilliantly. Fully recommend.
- SushiHippie 3y agoWhy do you use the docker image instead of just the normal executable?
- michaelcampbell 3y agoI'd reckon it's partly habit, but it is a very nice way of "installing" something easily and being able to also very easily _uninstall_ it without leaving any cruft behind, as well as having completely disparate multiple versions of things, if you need that. For single-file binaries this is less of an issue, but even those sometimes require dependencies that you already have something else that needs a different version of that same dependency causing conflict.
- mekster 3y agoWhat distro doesn't have pandoc in its package manager?
- michaelcampbell 3y agoI was speaking more generally, not pandoc in particular. But even with packages in a manager, there have been times where different packages conflict on different dependencies that when packaged up in a well written docker image (which not all are) would have obviated. As a developer I see this more with programming languages than other things, and this very thing is what led to language "package management systems" like rbenv, sdkman, asdf, and the like.
- llm_nerd 3y agoA better question is why wouldn't I use the docker image? The docker image is an official work output of the project, handles all dependencies without messing up my target machines (I use the pandoc/extra which includes pretty much every ancillary need such as Latex), and is trivial to keep up to date and current holistically. It is by default isolated and controlled to a degree, and allows me to trivially tape together as necessary. The other comment nailed it pretty well, though they hedged it by citing habit (presumably to counter the weird anti-docker trend that has arisen). Dockerizing (or simply containerizing) most vendored products is a choice that is often beneficial, and the marginal overhead is a rounding error.