Hi, I would like to import slipshow (https://github.com/panglesd/slipshow , https://slipshow.readthedocs.io/).
It is an ocaml program available via opam. So I wrote a module for managing dependencies via sysutils/opam (lang/haxe work by thfr@ was also a reason for it). Regarding slipshow: Slipshow is a tool specifically designed for technical presentations where traditional slides are not enough. In a slipshow presentation, the equivalent of a slide is called a slip. Each slip is like a slide, but with no bottom limit. That is, the content can be arbitrarily long! During the presentation, the camera will "scroll" down to reveal the hidden content, following a script given by the presenter! Here are the goals of slipshow, in no specific orders: - Lift restrictions from traditional slide-based presentation. In particular, make it closer to a blackboard presentation! - Easy to write and readable syntax: markdown with few extensions. No manual placement like in powerpoint. No crazy syntax like in latex. - Source of the presentation is plain text: much better for source control, sharing with people, using your favorite editor, readability, compatibility. - Open the possibility for a dynamic presentation. Watching scientific popularization video demonstrates how well-chosen animations can make a difficult subject more understandable. Slipshow compiles files written in an extension of markdown, to a standalone html file viewable offline in any web browser. Tutorial, API and Documentation: https://slipshow.readthedocs.io/ And regarding the sysutils/opam module, I wrote a opam-module documentation (still plain text, not written to mdoc for now): ---- This manual page documents the behavior of setting MODULES=sysutils/opam in the ports(7) tree. The module provides helpers for packaging a program using opam (OCaml Package Manager). WRKSRC is expected to contains opam packages, possibly with local customization. All *.opam files, at any depth, will be registered. Unmodified dependencies should be omitted, they will be managed separately. To generate a standalone opam repository containing only the dependencies and the sources files for compiling the specified sources tree, "make modopam-repository" target could be used. It will download an opam repository from MODOPAM_REPO_URL (default to official opam repository hosted on github), using MODOPAM_REPO_COMMIT commit (it is preferable to explicitly specify it for reproductibility, but "master" is the default value). The repository will be named according to MODOPAM_REPO_NAME variable. Next, the repository will be stripped to contains only the build dependencies of MODOPAM_PACKAGES_REPOSITORY (default to "--resolve=$MODOPAM_PACKAGES"). And next, the repository will be filled with local cache of package archives. The resulting directory could be packaged and distributed. It contains source code for building the opam packages. External dependencies could be hinted using "make modopam-external" target. The list of packages expected to be present at build time is shown. The module appends to BUILD_DEPENDS unless MODOPAM_BUILDDEP is set to No. It sets MODOPAM_PACKAGES variable to PKGSTEM, as default value for opam packages to build and install. It sets MODOPAM_OPAMROOT, MODOPAM_ENV, MODOPAM_OPAM_BIN and MODOPAM_OPAM_RUN accordingly. The opam options --with-doc and --with-test are available using MODOPAM_WITH_DOC and MODOPAM_WITH_TEST. They defaults to No. A CONFIGURE_STYLE "opam" is provided. It will initialize opam with opam repository at MODOPAM_REPO_DIR (default to ${WRKDIR}/${MODOPAM_REPO_NAME}). It is expected to has be generated previously by modopam-repository target and distributed separately. It will also pin the opam packages present in WRKSRC, possibly overriding opam packages from the repository. A default build target is used (except if MODOPAM_BUILD is set to No). It is using MODOPAM_PACKAGES_BUILD variable to list the opam packages to build (default to MODOPAM_PACKAGES). A default install target is used (except if MODOPAM_INSTALL is set to No). It is using MODOPAM_PACKAGES_INSTALL variable to list the opam packages to install (default to MODOPAM_PACKAGES). ---- I attached slipshow tarball and opam.port.mk file (to be placed in ports/sysutils/opam directory). Comments are welcome, OK too. I have also a rewrite of lang/haxe proposition from thfr@ using the module (not attached to not mix too many things). Thanks. -- Sebastien Marie
slipshow.tgz
Description: Binary data
opam.port.mk
Description: Binary data