diff --git a/.config b/.config index 8c8b05e..21dce50 100644 --- a/.config +++ b/.config @@ -2,6 +2,7 @@ DOF_VERSION="1.0.0" DOF_LATEST_VERSION="1.0.0" DOF_LATEST_ISABELLE="Isabelle2019" +DOF_LATEST_DOI="undefined" # # Isabelle and AFP Configuration ISABELLE_VERSION="Isabelle2019: June 2019" diff --git a/README.md b/README.md index e07f342..b1f5835 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,18 @@ Isabelle/DOF is a novel Document Ontology Framework on top of Isabelle. Isabelle/DOF allows for both conventional typesetting as well as formal development. +## Running Isabelle/DOF using Docker + +As an alternative to installing Isabelle/DOF locally, the latest official release Isabelle/DOF +is also available on Docker Hub. Thus, if you have Docker installed and your installation of +Docker supports X11 application, you can start Isabelle/DOF as follows: + +```console +foo@bar:~$ achim@logicalhacking:~$ docker run -ti --rm -e DISPLAY=$DISPLAY -v /tmp/. \ + X11-unix:/tmp/.X11-unix logicalhacking/isabelle_dof-1.0.0_isabelle2019 \ + isabelle jedit +``` + ## Pre-requisites Isabelle/DOF has two major pre-requisites: @@ -121,6 +133,16 @@ Usage: isabelle mkroot_DOF [OPTIONS] [DIR] Prepare session root DIR (default: current directory). ``` +## Releases + +For releases, signed archives including a PDF version of the Isabelle/DOF manual are +are available: + +* Isabelle/DOF 1.0.0/Isabelle2019 + * [Isabelle_DOF-1.0.0_Isabelle2019.pdf](https://artifacts.logicalhacking.com/releases/Isabelle_DOF/Isabelle_DOF/Isabelle_DOF-1.0.0_Isabelle2019.pdf) + * [Isabelle_DOF-1.0.0_Isabelle2019.tar.xz](https://artifacts.logicalhacking.com/releases/Isabelle_DOF/Isabelle_DOF/Isabelle_DOF-1.0.0_Isabelle2019.tar.xz) + * [Isabelle_DOF-1.0.0_Isabelle2019.tar.xz.asc](https://artifacts.logicalhacking.com/releases/Isabelle_DOF/Isabelle_DOF/Isabelle_DOF-1.0.0_Isabelle2019.tar.xz.asc) + ## Team Main contacts: diff --git a/examples/technical_report/Isabelle_DOF-Manual/03_GuidedTour.thy b/examples/technical_report/Isabelle_DOF-Manual/03_GuidedTour.thy index ca1387f..9aa96f6 100644 --- a/examples/technical_report/Isabelle_DOF-Manual/03_GuidedTour.thy +++ b/examples/technical_report/Isabelle_DOF-Manual/03_GuidedTour.thy @@ -28,6 +28,15 @@ text\ \ section*[getting_started::technical]\Getting Started\ +text\ +As an alternative to installing \isadof{} locally, the latest official release \isadof is also +available on \href{https://cloud.docker.com/u/logicalhacking/}{Docker Hub}. Thus, if you have \href{https://www.docker.com}{Docker} installed and +your installation of Docker supports X11 application, you can start \isadof as follows: + +\begin{bash} +ë\prompt{}ë docker run -ti --rm -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix logicalhacking/isabelle_dof-ë\doflatestversionë_ë\MakeLowercase{\isabellelatestversion}ë isabelle jedit +\end{bash} +\ subsection*[installation::technical]\Installation\ text\ @@ -38,21 +47,20 @@ text\ subsubsection*[prerequisites::technical]\Pre-requisites\ text\ \isadof has to major pre-requisites: - \<^item> \<^bold>\Isabelle \isabelleversion\\bindex{Isabelle}. \isadof will not work - with a different version of Isabelle. If you need \isadof for a different version of - Isabelle, please check the \isadof website if there is a version available supporting - the required version of Isabelle. \isadof uses a two-part version system (e.g., 1.0/2019), + \<^item> \<^bold>\Isabelle\\bindex{Isabelle} (\isabellefullversion). + \isadof uses a two-part version system (e.g., 1.0.0/2019), where the first part is the version of \isadof (using semantic versioning) and the second part is the supported version of Isabelle. Thus, the same version of \isadof might be available for different versions of Isabelle. \<^item> \<^bold>\\TeXLive 2019\\bindex{TexLive@\TeXLive} or any other modern - \LaTeX-distribution that ships a \pdftex-binary supporting the - \inlineltx|\expanded|-primitive - (for details, please see \url{https://www.texdev.net/2018/12/06/a-new-primitive-expanded}). + \LaTeX-distribution where \pdftex{} supports + \inlineltx|\expanded| + (\url{https://www.texdev.net/2018/12/06/a-new-primitive-expanded}). \ paragraph\Installing Isabelle\ text\ +\enlargethispage{\baselineskip} Please download and install the Isabelle \isabelleversion distribution for your operating system from the \href{\isabelleurl}{Isabelle website} (\url{\isabelleurl}). After the successful installation of Isabelle, you should be able to call the \inlinebash|isabelle| tool on the @@ -89,17 +97,13 @@ text\ \begin{bash} ë\prompt{}ë pdftex \\expanded{Success}\\end This is pdfTeX, Version 3.14159265-2.6-1.40.20 (TeX Live 2019/Debian). -entering extended mode -[1{dftex.map}] Output written on texput.pdf (1 page, 8650 bytes). Transcript written on texput.log. \end{bash} If this generates successfully a file \inlinebash|texput.pdf|, your \pdftex-binary supports the \inlineltx|\expanded|-primitive. If your Linux distribution does not (yet) ship \TeXLive{} - 2019 or your are running Windows or OS X, please follow the installation instructions from the - \href{https://www.tug.org/texlive/acquire-netinstall.html}{\TeXLive}{} website - (\url{https://www.tug.org/texlive/acquire-netinstall.html}). + 2019 or your are running Windows or OS X, please follow the installation instructions from \url{https://www.tug.org/texlive/acquire-netinstall.html}. \ subsubsection*[isadof::technical]\Installing \isadof\ @@ -124,7 +128,6 @@ If the \inlinebash|isabelle| tool is not in your \inlinebash|PATH|, you need to \inlinebash|install| script with the \inlinebash|--isabelle| option, passing the full-qualified path of the \inlinebash|isabelle| tool (\inlinebash|install --help| gives you an overview of all available configuration options): -\clearpage \begin{bash} ë\prompt{}ë cd ë\isadofdirnë @@ -198,8 +201,6 @@ Usage: isabelle mkroot_DOF [OPTIONS] [DIR] * technical_report -t TEMPLATE (default: scrartcl) Available document templates: - * eptcs-UNSUPPORTED - * lipics-v2019-UNSUPPORTED * lncs * scrartcl * scrreprt-modern diff --git a/examples/technical_report/Isabelle_DOF-Manual/document/preamble.tex b/examples/technical_report/Isabelle_DOF-Manual/document/preamble.tex index 6e03361..405d182 100644 --- a/examples/technical_report/Isabelle_DOF-Manual/document/preamble.tex +++ b/examples/technical_report/Isabelle_DOF-Manual/document/preamble.tex @@ -77,9 +77,8 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. } \lowertitleback{% -This manual describes \isadof version \isadofversion. - -The latest development version as well as previous releases are available at +This manual describes \isadof version \isadofversion. The latest official +release is \isadoflatestversion{} (\href{https://doi.org/\isadoflatestdoi}{doi:\isadoflatestdoi}). The latest development version as well as official releases are available at \url{\dofurl}. \paragraph*{Contributors.} We would like to thank the following contributors to \isadof diff --git a/install b/install index c8a1fd2..94e7243 100755 --- a/install +++ b/install @@ -213,8 +213,10 @@ install_and_register(){ ISABELLE_SHORT_VERSION=`echo $ISABELLE_VERSION | sed -e 's/:.*$//'` sed -i -e "s|%%% CONFIG %%%| \ \\\\renewcommand{\\\\dof@isabelleversion}{$ISABELLE_SHORT_VERSION} \ + \\\\renewcommand{\\\\isabellelatestversion}{$DOF_LATEST_ISABELLE} \ \\\\renewcommand{\\\\isabellefullversion}{$ISABELLE_VERSION\\\\xspace} \ \\\\renewcommand{\\\\dof@version}{$DOF_VERSION} \ + \\\\renewcommand{\\\\doflatestversion}{$DOF_LATEST_VERSION} \ \\\\renewcommand{\\\\isabelleurl}{$ISABELLE_URL} \ \\\\renewcommand{\\\\dofurl}{$DOF_URL} \ \\\\renewcommand{\\\\dof@artifacturl}{https://$DOF_ARTIFACT_HOST/$DOF_ARTIFACT_DIR}|" \ diff --git a/src/DOF/latex/DOF-core.sty b/src/DOF/latex/DOF-core.sty index 0891b80..e23a67e 100644 --- a/src/DOF/latex/DOF-core.sty +++ b/src/DOF/latex/DOF-core.sty @@ -30,12 +30,16 @@ \newcommand{\isabellefullversion}{UNDEFINED\xspace} \newcommand{\dof@version}{UNDEFINED} \newcommand{\dof@artifacturl}{UNDEFINED} +\newcommand{\doflatestversion}{UNDEFINED} +\newcommand{\isadoflatestdoi}{UNDEFINED} +\newcommand{\isabellelatestversion}{Isabelle2019} %%% CONFIG %%% \newcommand{\isabelleversion}{\dof@isabelleversion\xspace} \newcommand{\dofversion}{\dof@version\xspace} -\newcommand{\isadofversion}{\dofversion/\isabelleversion\xspace} +\newcommand{\isadofversion}{\dofversion/\isabelleversion} +\newcommand{\isadoflatestversion}{\doflatestversion/\isabellelatestversion} \newcommand{\isadofdir}{Isabelle_DOF-\dof@version_\dof@isabelleversion} \newcommand{\isadofdirn}{Isabelle\_DOF-\dof@version\_\dof@isabelleversion} \newcommand{\isadofarchive}{\isadofdir.tar.xz}