Zenn
Open22

WSL2でSATySFi​を動かす

Y - AY - A

opamのインストール

sudo apt install opam
出力
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  bubblewrap build-essential bzip2 dpkg-dev fakeroot g++ g++-13 g++-13-x86-64-linux-gnu g++-x86-64-linux-gnu gcc
  gcc-13 gcc-13-x86-64-linux-gnu gcc-x86-64-linux-gnu ledit libalgorithm-diff-perl libalgorithm-diff-xs-perl
  libalgorithm-merge-perl libamd3 libasan8 libatomic1 libc-dev-bin libc-devtools libc6-dev libcc1-0 libcolamd3
  libcompiler-libs-ocaml-dev libcrypt-dev libdpkg-perl libfakeroot libfile-fcntllock-perl libgcc-13-dev libglpk40
  libhwasan0 libitm1 liblsan0 libncurses-dev libquadmath0 libstdc++-13-dev libstdlib-ocaml libstdlib-ocaml-dev
  libsuitesparseconfig7 libtsan2 libubsan1 linux-libc-dev lto-disabled-list m4 make manpages-dev mercurial
  mercurial-common ocaml ocaml-base ocaml-interp ocaml-man opam-installer rpcsvc-proto
Suggested packages:
  bzip2-doc debian-keyring g++-multilib g++-13-multilib gcc-13-doc gcc-multilib autoconf automake libtool flex bison
  gdb gcc-doc gcc-13-multilib gcc-13-locales gdb-x86-64-linux-gnu glibc-doc bzr libiodbc2-dev
  default-libmysqlclient-dev ncurses-doc libstdc++-13-doc m4-doc make-doc kdiff3 | kdiff3-qt | kompare | meld | tkcvs
  | mgdiff qct python3-mysqldb ocaml-doc elpa-tuareg opam-doc
Recommended packages:
  darcs
The following NEW packages will be installed:
  bubblewrap build-essential bzip2 dpkg-dev fakeroot g++ g++-13 g++-13-x86-64-linux-gnu g++-x86-64-linux-gnu gcc
  gcc-13 gcc-13-x86-64-linux-gnu gcc-x86-64-linux-gnu ledit libalgorithm-diff-perl libalgorithm-diff-xs-perl
  libalgorithm-merge-perl libamd3 libasan8 libatomic1 libc-dev-bin libc-devtools libc6-dev libcc1-0 libcolamd3
  libcompiler-libs-ocaml-dev libcrypt-dev libdpkg-perl libfakeroot libfile-fcntllock-perl libgcc-13-dev libglpk40
  libhwasan0 libitm1 liblsan0 libncurses-dev libquadmath0 libstdc++-13-dev libstdlib-ocaml libstdlib-ocaml-dev
  libsuitesparseconfig7 libtsan2 libubsan1 linux-libc-dev lto-disabled-list m4 make manpages-dev mercurial
  mercurial-common ocaml ocaml-base ocaml-interp ocaml-man opam opam-installer rpcsvc-proto
0 upgraded, 57 newly installed, 0 to remove and 3 not upgraded.
Need to get 202 MB of archives.
After this operation, 696 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Get:1 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 bubblewrap amd64 0.9.0-1ubuntu0.1 [50.2 kB]
Get:2 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libc-dev-bin amd64 2.39-0ubuntu8.4 [20.4 kB]
Get:3 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 linux-libc-dev amd64 6.8.0-56.58 [1806 kB]
Get:4 http://archive.ubuntu.com/ubuntu noble/main amd64 libcrypt-dev amd64 1:4.4.36-4build1 [112 kB]
Get:5 http://archive.ubuntu.com/ubuntu noble/main amd64 rpcsvc-proto amd64 1.4.2-0ubuntu7 [67.4 kB]
Get:6 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libc6-dev amd64 2.39-0ubuntu8.4 [2124 kB]
Get:7 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libcc1-0 amd64 14.2.0-4ubuntu2~24.04 [48.0 kB]
Get:8 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libitm1 amd64 14.2.0-4ubuntu2~24.04 [29.7 kB]
Get:9 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libatomic1 amd64 14.2.0-4ubuntu2~24.04 [10.5 kB]
Get:10 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libasan8 amd64 14.2.0-4ubuntu2~24.04 [3031 kB]
Get:11 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 liblsan0 amd64 14.2.0-4ubuntu2~24.04 [1322 kB]
Get:12 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libtsan2 amd64 14.2.0-4ubuntu2~24.04 [2772 kB]
Get:13 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libubsan1 amd64 14.2.0-4ubuntu2~24.04 [1184 kB]
Get:14 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libhwasan0 amd64 14.2.0-4ubuntu2~24.04 [1641 kB]
Get:15 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libquadmath0 amd64 14.2.0-4ubuntu2~24.04 [153 kB]
Get:16 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libgcc-13-dev amd64 13.3.0-6ubuntu2~24.04 [2681 kB]
Get:17 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 gcc-13-x86-64-linux-gnu amd64 13.3.0-6ubuntu2~24.04 [21.1 MB]
Get:18 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 gcc-13 amd64 13.3.0-6ubuntu2~24.04 [494 kB]
Get:19 http://archive.ubuntu.com/ubuntu noble/main amd64 gcc-x86-64-linux-gnu amd64 4:13.2.0-7ubuntu1 [1212 B]
Get:20 http://archive.ubuntu.com/ubuntu noble/main amd64 gcc amd64 4:13.2.0-7ubuntu1 [5018 B]
Get:21 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libstdc++-13-dev amd64 13.3.0-6ubuntu2~24.04 [2420 kB]
Get:22 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 g++-13-x86-64-linux-gnu amd64 13.3.0-6ubuntu2~24.04 [12.2 MB]
Get:23 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 g++-13 amd64 13.3.0-6ubuntu2~24.04 [16.1 kB]
Get:24 http://archive.ubuntu.com/ubuntu noble/main amd64 g++-x86-64-linux-gnu amd64 4:13.2.0-7ubuntu1 [964 B]
Get:25 http://archive.ubuntu.com/ubuntu noble/main amd64 g++ amd64 4:13.2.0-7ubuntu1 [1100 B]
Get:26 http://archive.ubuntu.com/ubuntu noble/main amd64 make amd64 4.3-4.1build2 [180 kB]
Get:27 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libdpkg-perl all 1.22.6ubuntu6.1 [269 kB]
Get:28 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 bzip2 amd64 1.0.8-5.1build0.1 [34.5 kB]
Get:29 http://archive.ubuntu.com/ubuntu noble/main amd64 lto-disabled-list all 47 [12.4 kB]
Get:30 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 dpkg-dev all 1.22.6ubuntu6.1 [1074 kB]
Get:31 http://archive.ubuntu.com/ubuntu noble/main amd64 build-essential amd64 12.10ubuntu1 [4928 B]
Get:32 http://archive.ubuntu.com/ubuntu noble/main amd64 libfakeroot amd64 1.33-1 [32.4 kB]
Get:33 http://archive.ubuntu.com/ubuntu noble/main amd64 fakeroot amd64 1.33-1 [67.2 kB]
Get:34 http://archive.ubuntu.com/ubuntu noble/universe amd64 libstdlib-ocaml amd64 4.14.1-1ubuntu1 [378 kB]
Get:35 http://archive.ubuntu.com/ubuntu noble/universe amd64 ocaml-base amd64 4.14.1-1ubuntu1 [256 kB]
Get:36 http://archive.ubuntu.com/ubuntu noble/universe amd64 ledit amd64 2.04-7build5 [60.4 kB]
Get:37 http://archive.ubuntu.com/ubuntu noble/main amd64 libalgorithm-diff-perl all 1.201-1 [41.8 kB]
Get:38 http://archive.ubuntu.com/ubuntu noble/main amd64 libalgorithm-diff-xs-perl amd64 0.04-8build3 [11.2 kB]
Get:39 http://archive.ubuntu.com/ubuntu noble/main amd64 libalgorithm-merge-perl all 0.08-5 [11.4 kB]
Get:40 http://archive.ubuntu.com/ubuntu noble/main amd64 libsuitesparseconfig7 amd64 1:7.6.1+dfsg-1build1 [12.9 kB]
Get:41 http://archive.ubuntu.com/ubuntu noble/universe amd64 libamd3 amd64 1:7.6.1+dfsg-1build1 [27.2 kB]
Get:42 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 libc-devtools amd64 2.39-0ubuntu8.4 [29.3 kB]
Get:43 http://archive.ubuntu.com/ubuntu noble/main amd64 libcolamd3 amd64 1:7.6.1+dfsg-1build1 [19.4 kB]
Get:44 http://archive.ubuntu.com/ubuntu noble/universe amd64 libstdlib-ocaml-dev amd64 4.14.1-1ubuntu1 [8453 kB]
Get:45 http://archive.ubuntu.com/ubuntu noble/universe amd64 libcompiler-libs-ocaml-dev amd64 4.14.1-1ubuntu1 [38.4 MB]
Get:46 http://archive.ubuntu.com/ubuntu noble/main amd64 libfile-fcntllock-perl amd64 0.22-4ubuntu5 [30.7 kB]
Get:47 http://archive.ubuntu.com/ubuntu noble/universe amd64 libglpk40 amd64 5.0-1build2 [369 kB]
Get:48 http://archive.ubuntu.com/ubuntu noble/main amd64 libncurses-dev amd64 6.4+20240113-1ubuntu2 [384 kB]
Get:49 http://archive.ubuntu.com/ubuntu noble/main amd64 m4 amd64 1.4.19-4build1 [244 kB]
Get:50 http://archive.ubuntu.com/ubuntu noble/main amd64 manpages-dev all 6.7-2 [2013 kB]
Get:51 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 mercurial-common all 6.7.2-1ubuntu2.2 [2955 kB]
Get:52 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 mercurial amd64 6.7.2-1ubuntu2.2 [328 kB]
Get:53 http://archive.ubuntu.com/ubuntu noble/universe amd64 ocaml-interp amd64 4.14.1-1ubuntu1 [7825 kB]
Get:54 http://archive.ubuntu.com/ubuntu noble/universe amd64 ocaml amd64 4.14.1-1ubuntu1 [81.4 MB]
Get:55 http://archive.ubuntu.com/ubuntu noble/universe amd64 ocaml-man all 4.14.1-1ubuntu1 [555 kB]
Get:56 http://archive.ubuntu.com/ubuntu noble/universe amd64 opam-installer amd64 2.1.5-1 [1256 kB]
Get:57 http://archive.ubuntu.com/ubuntu noble/universe amd64 opam amd64 2.1.5-1 [2584 kB]
Fetched 202 MB in 39s (5251 kB/s)
Extracting templates from packages: 100%
Selecting previously unselected package bubblewrap.
(Reading database ... 294239 files and directories currently installed.)
Preparing to unpack .../00-bubblewrap_0.9.0-1ubuntu0.1_amd64.deb ...


(省略)
Y - AY - A

インストール

opamの設定

opam init

Do you want opam to modify ~/.profile? [N/y/f]と質問された。
環境変数を設定して良いか質問されているらしい。[1]
ここではyと回答した。

出力
No configuration file found, using built-in defaults.
Checking for available remotes: rsync and local, git, mercurial.
  - you won't be able to use darcs repositories unless you install the darcs command on your system.


<><> Fetching repository information ><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
default (at https://opam.ocaml.org):
    [WARNING] opam is out-of-date. Please consider updating it (https://opam.ocaml.org/doc/Install.html)


<><> Required setup - please read <><><><><><><><><><><><><><><><><><><><><><><>

  In normal operation, opam only alters files within ~/.opam.

  However, to best integrate with your system, some environment variables
  should be set. If you allow it to, this initialisation step will update
  your bash configuration by adding the following line to ~/.profile:

    test -r /home/y-aki/.opam/opam-init/init.sh && . /home/y-aki/.opam/opam-init/init.sh > /dev/null 2> /dev/null || true

  Otherwise, every time you want to access your opam installation, you will
  need to run:

    eval $(opam env)

  You can always re-run this setup with 'opam init' later.

Do you want opam to modify ~/.profile? [N/y/f]
(default is 'no', use 'f' to choose a different file) y

User configuration:
  Updating ~/.profile.
[NOTE] Make sure that ~/.profile is well sourced in your ~/.bashrc.


<><> Creating initial switch 'default' (invariant ["ocaml" {>= "4.05.0"}] - initially with ocaml-system)

<><> Installing new switch packages <><><><><><><><><><><><><><><><><><><><><><>
Switch invariant: ["ocaml" {>= "4.05.0"}]

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
∗ installed base-bigarray.base
∗ installed base-threads.base
∗ installed base-unix.base
⬇ retrieved ocaml-system.4.14.1  (https://opam.ocaml.org/cache)
∗ installed ocaml-system.4.14.1
⬇ retrieved ocaml-config.2  (2 extra sources)
∗ installed ocaml-config.2
∗ installed ocaml.4.14.1
Done.
# Run eval $(opam env --switch=default) to update the current shell environment
eval $(opam env)

出力は無し

脚注
  1. https://qiita.com/na4zagin3/items/a6e025c17ef991a4c923#opam-の設定--ocaml-のインストール
    次のリンクにも同様の内容が示されている https://github.com/gfngfn/SATySFi/blob/c2cbc482bce2b7a2b326e037158c33250a7e2043/README-ja.md?plain=1#L84 (このページは、自分でビルドする方法についての解説である)
    ↩︎

Y - AY - A

インストールの確認

user@*****:~$ opam switch list
#  switch   compiler      description
→  default  ocaml.4.14.1  default
Y - AY - A

SATySFi のインストール

opam depext satysfi satysfi-dist satyrographos
出力
Opam plugin "depext" is not installed. Install it on the current switch? [Y/n] y

The following actions will be performed:
  ∗ install opam-depext 1.2.3

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
⬇ retrieved opam-depext.1.2.3  (https://opam.ocaml.org/cache)
∗ installed opam-depext.1.2.3
Done.

<><> opam-depext.1.2.3 installed successfully <><><><><><><><><><><><><><><><><>
=> opam-depext is unnecessary when used with opam >= 2.1. Please use opam install directly instead

<><> Carrying on to "opam depext satysfi satysfi-dist satyrographos" ><><><><><>

Since version 2.1, opam now handles external dependencies alongside OCaml ones, and the `depext` plugin interface is provided for backwards compatibility only. Consider using your usual `opam install` command to install both OCaml and system dependencies, or `opam install <pkg> --depext-only` if you want to only install external dependencies.
# Detecting depexts using vars: arch=x86_64, os=linux, os-distribution=ubuntu, os-family=debian
# No extra OS packages requirements found.
Allow installing depexts via opam ? [Y/n] y

depext が必要なのでインストールした

Y - AY - A

SATySFi のインストール(続)

opam install satysfi satysfi-dist satyrographos
出力
The following actions will be performed:
  ∗ install num                         1.5-1              [required by batteries]
  ∗ install dune                        3.17.2             [required by satyrographos, satysfi]
  ∗ install seq                         base               [required by yojson]
  ∗ install ocamlfind                   1.9.8              [required by satysfi]
  ∗ install ocamlbuild                  0.16.1             [required by bos, uutf]
  ∗ install stringext                   1.6.0              [required by uri]
  ∗ install stdlib-shims                0.3.0              [required by ocamlgraph]
  ∗ install spawn                       v0.17.0            [required by core_unix, shexp]
  ∗ install sexplib0                    v0.15.1            [required by shexp, uri-sexp]
  ∗ install result                      1.5                [required by ppx_deriving]
  ∗ install ppx_derivers                1.2.1              [required by ppx_deriving]
  ∗ install opam-file-format            2.1.6              [required by opam-format]
  ∗ install ocaml-syntax-shims          1.0.0              [required by angstrom]
  ∗ install ocaml-compiler-libs         v0.12.4            [required by ppxlib]
  ∗ install menhirSdk                   20240715           [required by menhir]
  ∗ install menhirLib                   20240715           [required by menhir]
  ∗ install menhirCST                   20240715           [required by menhir]
  ∗ install jane-street-headers         v0.15.0            [required by core, core_unix]
  ∗ install fileutils                   0.6.6              [required by satyrographos]
  ∗ install easy-format                 1.3.4              [required by yojson-with-position]
  ∗ install csexp                       1.5.2              [required by dune-configurator]
  ∗ install cppo                        1.6.9              [required by satysfi]
  ∗ install camlp-streams               5.0.1              [required by batteries]
  ∗ install bigarray-compat             1.1.0              [required by ctypes]
  ∗ install yojson                      2.2.2              [required by satyrographos]
  ∗ install re                          1.12.0             [required by satyrographos, satysfi]
  ∗ install camlpdf                     2.3.1+satysfi      [required by satysfi]
  ∗ install base-bytes                  base               [required by omd]
  ∗ install topkg                       1.0.8              [required by bos, uutf]
  ∗ install ocamlgraph                  2.1.0              [required by satyrographos]
  ∗ install integers                    0.7.0              [required by ctypes]
  ∗ install ppxlib                      0.35.0             [required by ppx_deriving_yojson, ppx_deriving, ppx_import]
  ∗ install menhir                      20240715           [required by satyrographos, satysfi]
  ∗ install dune-configurator           3.17.2             [required by yaml, camlimages]
  ∗ install biniou                      1.2.2              [required by yojson-with-position]
  ∗ install batteries                   3.9.0              [required by satysfi]
  ∗ install omd                         1.3.2              [required by satysfi]
  ∗ install uutf                        1.0.4              [required by satysfi]
  ∗ install rresult                     0.7.0              [required by bos]
  ∗ install fmt                         0.10.0             [required by bos]
  ∗ install astring                     0.8.5              [required by bos]
  ∗ install opam-core                   2.1.6              [required by opam-format]
  ∗ install ppx_pipebang                v0.15.0            [required by ppx_jane]
  ∗ install ppx_import                  1.11.0             [required by satyrographos]
  ∗ install ppx_ignore_instrumentation  v0.15.0            [required by ppx_jane]
  ∗ install ppx_deriving                5.2.1              [required by satyrographos, satysfi]
  ∗ install ocaml_intrinsics            v0.15.2            [required by core_unix]
  ∗ install ctypes                      0.23.0             [required by yaml]
  ∗ install bigstringaf                 0.10.0             [required by angstrom]
  ∗ install base                        v0.15.1            [required by camlimages, core, otfed]
  ∗ install yojson-with-position        1.4.2+satysfi      [required by satysfi]
  ∗ install logs                        0.8.0              [required by bos]
  ∗ install fpath                       0.7.3              [required by bos]
  ∗ install opam-format                 2.1.6              [required by satyrographos]
  ∗ install ppx_deriving_yojson         3.9.1              [required by satyrographos]
  ∗ install angstrom                    0.16.1             [required by uri]
  ∗ install variantslib                 v0.15.0            [required by core]
  ∗ install typerep                     v0.15.0            [required by core]
  ∗ install stdio                       v0.15.0            [required by camlimages, core, otfed]
  ∗ install ppx_stable                  v0.15.0            [required by ppx_jane]
  ∗ install ppx_sexp_conv               v0.15.1            [required by uri-sexp, core, yaml-sexp]
  ∗ install ppx_optional                v0.15.0            [required by ppx_jane]
  ∗ install ppx_here                    v0.15.0            [required by ppx_jane]
  ∗ install ppx_fixed_literal           v0.15.0            [required by ppx_jane]
  ∗ install ppx_enumerate               v0.15.0            [required by ppx_base]
  ∗ install ppx_disable_unused_warnings v0.15.0            [required by ppx_jane]
  ∗ install ppx_compare                 v0.15.0            [required by ppx_base, bin_prot]
  ∗ install ppx_cold                    v0.15.0            [required by ppx_base]
  ∗ install parsexp                     v0.15.0            [required by sexplib]
  ∗ install fieldslib                   v0.15.0            [required by core]
  ∗ install bos                         0.2.1              [required by yaml]
  ∗ install opam-repository             2.1.6              [required by opam-state]
  ∗ install uri                         4.4.0              [required by satyrographos]
  ∗ install ppx_variants_conv           v0.15.0            [required by ppx_jane]
  ∗ install ppx_typerep_conv            v0.15.0            [required by ppx_jane]
  ∗ install ppx_optcomp                 v0.15.0            [required by posixat]
  ∗ install camlimages                  5.0.4-1            [required by satysfi]
  ∗ install ppx_custom_printf           v0.15.0            [required by ppx_jane]
  ∗ install ppx_sexp_value              v0.15.0            [required by ppx_jane]
  ∗ install ppx_sexp_message            v0.15.0            [required by core]
  ∗ install ppx_let                     v0.15.0            [required by ppx_jane]
  ∗ install ppx_hash                    v0.15.0            [required by core]
  ∗ install ppx_assert                  v0.15.0            [required by core]
  ∗ install sexplib                     v0.15.1            [required by core_unix, core, yaml-sexp]
  ∗ install ppx_fields_conv             v0.15.0            [required by ppx_jane]
  ∗ install yaml                        3.2.0              [required by satyrographos]
  ∗ install opam-state                  2.1.6              [required by satyrographos]
  ∗ install uri-sexp                    4.4.0              [required by satyrographos]
  ∗ install posixat                     v0.15.0            [required by shexp]
  ∗ install ppx_base                    v0.15.0            [required by core]
  ∗ install jst-config                  v0.15.1            [required by core, core_unix]
  ∗ install ppx_log                     v0.15.0            [required by ppx_jane]
  ∗ install bin_prot                    v0.15.0            [required by core]
  ∗ install yaml-sexp                   3.2.0              [required by satyrographos]
  ∗ install shexp                       v0.15.0            [required by satyrographos]
  ∗ install sexp_pretty                 v0.15.1            [required by expect_test_helpers_core]
  ∗ install ppx_string                  v0.15.0            [required by ppx_jane]
  ∗ install time_now                    v0.15.0            [required by core]
  ∗ install ppx_bin_prot                v0.15.0            [required by ppx_jane]
  ∗ install ppx_module_timer            v0.15.0            [required by ppx_jane]
  ∗ install ppx_inline_test             v0.15.1            [required by core, otfed]
  ∗ install ppx_expect                  v0.15.1            [required by ppx_jane]
  ∗ install ppx_bench                   v0.15.1            [required by ppx_jane]
  ∗ install otfed                       0.3.2              [required by satysfi]
  ∗ install splittable_random           v0.15.0            [required by core]
  ∗ install base_quickcheck             v0.15.0            [required by core]
  ∗ install ppx_jane                    v0.15.0            [required by satyrographos]
  ∗ install int_repr                    v0.15.0            [required by base_bigstring, core_kernel]
  ∗ install base_bigstring              v0.15.0            [required by core]
  ∗ install core                        v0.15.1            [required by satyrographos]
  ∗ install timezone                    v0.15.0            [required by core_unix]
  ∗ install expect_test_helpers_core    v0.15.0            [required by core_unix]
  ∗ install core_kernel                 v0.15.0            [required by satysfi]
  ∗ install satysfi                     0.0.11-2-gcc6a054e
  ∗ install core_unix                   v0.15.2            [required by satyrographos]
  ∗ install satysfi-dist                0.0.11-2-gcc6a054e
  ∗ install satyrographos               0.0.2.13
===== ∗ 117 =====
Do you want to continue? [Y/n] y

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>

(略)
Y - AY - A
user@******:~$ satyrographos install
Reading runtime dist: /home/y-aki/.opam/default/share/satysfi/dist
Reading opam libraries: (dist)
Overriding dist with user installed one
Not gathering system fonts
Installing libraries: (dist)
Removing destination /home/y-aki/.satysfi/dist
Y - AY - A

拡張機能とlanguage serverの導入

https://qiita.com/pickoba/items/efe59538253c4a6ea5f8

https://zenn.dev/monaqa/articles/2021-12-10-satysfi-language-server

Rustのインストール

https://www.rust-lang.org/tools/install

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
出力
info: downloading installer

Welcome to Rust!

This will download and install the official compiler for the Rust
programming language, and its package manager, Cargo.

Rustup metadata and toolchains will be installed into the Rustup
home directory, located at:

  /home/y-aki/.rustup

This can be modified with the RUSTUP_HOME environment variable.

The Cargo home directory is located at:

  /home/y-aki/.cargo

This can be modified with the CARGO_HOME environment variable.

The cargo, rustc, rustup and other commands will be added to
Cargo's bin directory, located at:

  /home/y-aki/.cargo/bin

This path will then be added to your PATH environment variable by
modifying the profile files located at:

  /home/y-aki/.profile
  /home/y-aki/.bashrc

You can uninstall at any time with rustup self uninstall and
these changes will be reverted.

Current installation options:


   default host triple: x86_64-unknown-linux-gnu
     default toolchain: stable (default)
               profile: default
  modify PATH variable: yes

1) Proceed with standard installation (default - just press enter)
2) Customize installation
3) Cancel installation
>1

info: profile set to 'default'
info: default host triple is x86_64-unknown-linux-gnu
info: syncing channel updates for 'stable-x86_64-unknown-linux-gnu'
info: latest update on 2025-03-18, rust version 1.85.1 (4eb161250 2025-03-15)
info: downloading component 'cargo'
info: downloading component 'clippy'
info: downloading component 'rust-docs'
 18.2 MiB /  18.2 MiB (100 %)   9.6 MiB/s in  1s
info: downloading component 'rust-std'
 29.2 MiB /  29.2 MiB (100 %)   9.3 MiB/s in  3s
info: downloading component 'rustc'
 69.5 MiB /  69.5 MiB (100 %)   9.4 MiB/s in  7s
info: downloading component 'rustfmt'
info: installing component 'cargo'
info: installing component 'clippy'
info: installing component 'rust-docs'
 18.2 MiB /  18.2 MiB (100 %)   4.6 MiB/s in  3s
info: installing component 'rust-std'
 29.2 MiB /  29.2 MiB (100 %)  20.5 MiB/s in  1s
info: installing component 'rustc'
 69.5 MiB /  69.5 MiB (100 %)  19.6 MiB/s in  3s
info: installing component 'rustfmt'
info: default toolchain set to 'stable-x86_64-unknown-linux-gnu'

  stable-x86_64-unknown-linux-gnu installed - rustc 1.85.1 (4eb161250 2025-03-15)


Rust is installed now. Great!

To get started you may need to restart your current shell.
This would reload your PATH environment variable to include
Cargo's bin directory ($HOME/.cargo/bin).

To configure your current shell, you need to source
the corresponding env file under $HOME/.cargo.

This is usually done by running one of the following (note the leading DOT):
. "$HOME/.cargo/env"            # For sh/bash/zsh/ash/dash/pdksh
source "$HOME/.cargo/env.fish"  # For fish
source "$HOME/.cargo/env.nu"    # For nushell

1を選択した

SATySFi language server のインストール

cargo install --git https://github.com/monaqa/satysfi-language-server
出力
    Updating git repository `https://github.com/monaqa/satysfi-language-server`
  Installing satysfi-language-server v0.0.1 (https://github.com/monaqa/satysfi-language-server#1ce6bc4d)
    Updating crates.io index
    Updating git repository `https://github.com/usagrada/satysfi-formatter.git`
    Updating git repository `https://github.com/usagrada/satysfi-parser.git`
     Locking 181 packages to latest compatible versions
      Adding env_logger v0.8.4 (available: v0.11.7)
      Adding itertools v0.10.5 (available: v0.14.0)
      Adding peg v0.7.0 (available: v0.8.5)
      Adding simplelog v0.9.0 (available: v0.12.2)
      Adding termcolor v1.1.3 (available: v1.4.1)
      Adding thiserror v1.0.69 (available: v2.0.12)
      Adding toml v0.5.11 (available: v0.8.20)
  Downloaded cfg-if v1.0.0
  Downloaded atty v0.2.14
  Downloaded icu_provider_macros v1.5.0
  Downloaded option-ext v0.2.0
  Downloaded peg-runtime v0.7.0
  Downloaded heck v0.3.3
  Downloaded tower-service v0.3.3
  Downloaded autocfg v1.4.0
  Downloaded futures-core v0.3.31
  Downloaded zerofrom v0.1.6
  Downloaded futures-io v0.3.31
  Downloaded either v1.15.0
  Downloaded dirs-sys v0.5.0
  Downloaded clap_lex v0.2.4
  Downloaded form_urlencoded v1.2.1
  Downloaded displaydoc v0.2.5
  Downloaded dirs v6.0.0
  Downloaded write16 v1.0.0
  Downloaded heck v0.4.1
  Downloaded futures-task v0.3.31
  Downloaded futures-macro v0.3.31
  Downloaded dashmap v4.0.2
  Downloaded yoke-derive v0.7.5
  Downloaded humantime v2.2.0
  Downloaded num_cpus v1.16.0
  Downloaded thiserror v1.0.69
  Downloaded textwrap v0.11.0
  Downloaded termcolor v1.1.3
  Downloaded signal-hook-registry v1.4.2
  Downloaded pin-utils v0.1.0
  Downloaded itoa v1.0.15
  Downloaded idna_adapter v1.2.0
  Downloaded slab v0.4.9
  Downloaded serde_repr v0.1.20
  Downloaded proc-macro-error-attr v1.0.4
  Downloaded strsim v0.10.0
  Downloaded tokio-macros v2.5.0
  Downloaded structopt-derive v0.4.18
  Downloaded futures-sink v0.3.31
  Downloaded strsim v0.8.0
  Downloaded glob v0.3.2
  Downloaded stable_deref_trait v1.2.0
  Downloaded writeable v0.5.5
  Downloaded version_check v0.9.5
  Downloaded utf16_iter v1.0.5
  Downloaded simplelog v0.9.0
  Downloaded scopeguard v1.2.0
  Downloaded async-trait v0.1.88
  Downloaded bitflags v1.3.2
  Downloaded utf8_iter v1.0.4
  Downloaded auto_impl v0.5.0
  Downloaded futures-channel v0.3.31
  Downloaded env_logger v0.8.4
  Downloaded unchecked-index v0.2.2
  Downloaded iana-time-zone v0.1.62
  Downloaded lock_api v0.4.12
  Downloaded clap_derive v3.2.25
  Downloaded parking_lot_core v0.9.10
  Downloaded litemap v0.7.5
  Downloaded ansi_term v0.12.1
  Downloaded percent-encoding v2.3.1
  Downloaded synstructure v0.13.1
  Downloaded zerovec-derive v0.10.3
  Downloaded lazy_static v1.5.0
  Downloaded zerofrom-derive v0.1.6
  Downloaded once_cell v1.21.1
  Downloaded tinystr v0.7.6
  Downloaded proc-macro-error v1.0.4
  Downloaded icu_provider v1.5.0
  Downloaded icu_normalizer_data v1.5.0
  Downloaded icu_normalizer v1.5.0
  Downloaded icu_locid_transform v1.5.0
  Downloaded yoke v0.7.5
  Downloaded proc-macro2 v1.0.94
  Downloaded structopt v0.3.26
  Downloaded quote v1.0.40
  Downloaded socket2 v0.5.8
  Downloaded ryu v1.0.20
  Downloaded vec_map v0.8.2
  Downloaded futures v0.3.31
  Downloaded twoway v0.2.2
  Downloaded thiserror-impl v1.0.69
  Downloaded smallvec v1.14.0
  Downloaded icu_properties v1.5.1
  Downloaded parking_lot v0.12.3
  Downloaded num-traits v0.2.19
  Downloaded serde_derive v1.0.219
  Downloaded log v0.4.27
  Downloaded toml v0.5.11
  Downloaded indexmap v1.9.3
  Downloaded lsp-types v0.91.1
  Downloaded tokio-util v0.6.10
  Downloaded icu_collections v1.5.0
  Downloaded textwrap v0.16.2
  Downloaded satysfi-parser v0.0.3
  Downloaded unicode-ident v1.0.18
  Downloaded bytes v1.10.1
  Downloaded icu_locid v1.5.0
  Downloaded lspower v1.5.0
  Downloaded mio v1.0.3
  Downloaded memchr v2.7.4
  Downloaded url v2.5.4
  Downloaded httparse v1.10.1
  Downloaded serde v1.0.219
  Downloaded hashbrown v0.12.3
  Downloaded anyhow v1.0.97
  Downloaded peg-macros v0.7.0
  Downloaded peg v0.7.0
  Downloaded os_str_bytes v6.6.1
  Downloaded lspower-macros v0.2.1
  Downloaded icu_locid_transform_data v1.5.0
  Downloaded pin-project-lite v0.2.16
  Downloaded itertools v0.10.5
  Downloaded aho-corasick v1.1.3
  Downloaded unicode-segmentation v1.12.0
  Downloaded zerovec v0.10.4
  Downloaded idna v1.0.3
  Downloaded futures-util v0.3.31
  Downloaded serde_json v1.0.140
  Downloaded clap v2.34.0
  Downloaded clap v3.2.25
  Downloaded icu_properties_data v1.5.0
  Downloaded syn v1.0.109
  Downloaded chrono v0.4.40
  Downloaded regex v1.11.1
  Downloaded regex-syntax v0.8.5
  Downloaded unicode-width v0.1.14
  Downloaded syn v2.0.100
  Downloaded regex-automata v0.4.9
  Downloaded libc v0.2.171
  Downloaded tokio v1.44.1
  Downloaded 131 crates (8.8 MB) in 1.79s
   Compiling proc-macro2 v1.0.94
   Compiling unicode-ident v1.0.18
   Compiling libc v0.2.171
   Compiling autocfg v1.4.0
   Compiling stable_deref_trait v1.2.0
   Compiling version_check v0.9.5
   Compiling syn v1.0.109
   Compiling litemap v0.7.5
   Compiling writeable v0.5.5
   Compiling smallvec v1.14.0
   Compiling memchr v2.7.4
   Compiling icu_locid_transform_data v1.5.0
   Compiling unicode-segmentation v1.12.0
   Compiling bitflags v1.3.2
   Compiling serde v1.0.219
   Compiling icu_properties_data v1.5.0
   Compiling utf8_iter v1.0.4
   Compiling cfg-if v1.0.0
   Compiling utf16_iter v1.0.5
   Compiling icu_normalizer_data v1.5.0
   Compiling write16 v1.0.0
   Compiling log v0.4.27
   Compiling parking_lot_core v0.9.10
   Compiling anyhow v1.0.97
   Compiling futures-sink v0.3.31
   Compiling scopeguard v1.2.0
   Compiling futures-core v0.3.31
   Compiling thiserror v1.0.69
   Compiling unicode-width v0.1.14
   Compiling pin-project-lite v0.2.16
   Compiling proc-macro-error-attr v1.0.4
   Compiling proc-macro-error v1.0.4
   Compiling vec_map v0.8.2
   Compiling heck v0.3.3
   Compiling percent-encoding v2.3.1
   Compiling ansi_term v0.12.1
   Compiling strsim v0.8.0
   Compiling lock_api v0.4.12
   Compiling slab v0.4.9
   Compiling textwrap v0.11.0
   Compiling serde_json v1.0.140
   Compiling peg-runtime v0.7.0
   Compiling form_urlencoded v1.2.1
   Compiling indexmap v1.9.3
   Compiling num-traits v0.2.19
   Compiling futures-channel v0.3.31
   Compiling httparse v1.10.1
   Compiling ryu v1.0.20
   Compiling futures-task v0.3.31
   Compiling bytes v1.10.1
   Compiling lazy_static v1.5.0
   Compiling itoa v1.0.15
   Compiling pin-utils v0.1.0
   Compiling futures-io v0.3.31
   Compiling either v1.15.0
   Compiling termcolor v1.1.3
   Compiling quote v1.0.40
   Compiling aho-corasick v1.1.3
   Compiling heck v0.4.1
   Compiling unchecked-index v0.2.2
   Compiling os_str_bytes v6.6.1
   Compiling option-ext v0.2.0
   Compiling regex-syntax v0.8.5
   Compiling hashbrown v0.12.3
   Compiling itertools v0.10.5
   Compiling glob v0.3.2
   Compiling syn v2.0.100
   Compiling atty v0.2.14
   Compiling clap v2.34.0
   Compiling peg-macros v0.7.0
   Compiling mio v1.0.3
   Compiling socket2 v0.5.8
   Compiling parking_lot v0.12.3
   Compiling signal-hook-registry v1.4.2
   Compiling num_cpus v1.16.0
   Compiling clap_lex v0.2.4
   Compiling dashmap v4.0.2
   Compiling dirs-sys v0.5.0
   Compiling twoway v0.2.2
   Compiling tower-service v0.3.3
   Compiling strsim v0.10.0
   Compiling textwrap v0.16.2
   Compiling once_cell v1.21.1
   Compiling iana-time-zone v0.1.62
   Compiling dirs v6.0.0
   Compiling humantime v2.2.0
   Compiling peg v0.7.0
   Compiling chrono v0.4.40
   Compiling regex-automata v0.4.9
   Compiling simplelog v0.9.0
   Compiling structopt-derive v0.4.18
   Compiling auto_impl v0.5.0
   Compiling lspower-macros v0.2.1
   Compiling clap_derive v3.2.25
   Compiling synstructure v0.13.1
   Compiling zerofrom-derive v0.1.6
   Compiling yoke-derive v0.7.5
   Compiling zerovec-derive v0.10.3
   Compiling displaydoc v0.2.5
   Compiling icu_provider_macros v1.5.0
   Compiling serde_derive v1.0.219
   Compiling thiserror-impl v1.0.69
   Compiling tokio-macros v2.5.0
   Compiling futures-macro v0.3.31
   Compiling serde_repr v0.1.20
   Compiling async-trait v0.1.88
   Compiling structopt v0.3.26
   Compiling regex v1.11.1
   Compiling env_logger v0.8.4
   Compiling clap v3.2.25
   Compiling tokio v1.44.1
   Compiling futures-util v0.3.31
   Compiling zerofrom v0.1.6
   Compiling satysfi-parser v0.0.3 (https://github.com/usagrada/satysfi-parser.git#d89da3dd)
   Compiling yoke v0.7.5
   Compiling satysfi-parser v0.0.3
   Compiling zerovec v0.10.4
   Compiling tinystr v0.7.6
   Compiling icu_collections v1.5.0
   Compiling icu_locid v1.5.0
   Compiling icu_provider v1.5.0
   Compiling icu_locid_transform v1.5.0
   Compiling futures v0.3.31
   Compiling icu_properties v1.5.1
   Compiling toml v0.5.11
   Compiling tokio-util v0.6.10
   Compiling icu_normalizer v1.5.0
   Compiling idna_adapter v1.2.0
   Compiling idna v1.0.3
   Compiling url v2.5.4
   Compiling lsp-types v0.91.1
   Compiling lspower v1.5.0
   Compiling satysfi-formatter v0.1.0 (https://github.com/usagrada/satysfi-formatter.git?branch=main#a36ec28f)
   Compiling satysfi-language-server v0.0.1 (/home/y-aki/.cargo/git/checkouts/satysfi-language-server-9db45443c27cd128/1ce6bc4)
warning: unused imports: `DocumentFormattingOptions` and `WorkDoneProgressOptions`
 --> src/language_server/capabilities.rs:3:55
  |
3 |     TextDocumentSyncCapability, TextDocumentSyncKind, DocumentFormattingOptions, WorkDoneProgressOptions,
  |                                                       ^^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^
  |
  = note: `#[warn(unused_imports)]` on by default

warning: unused imports: `debug` and `info`
 --> src/language_server/completion.rs:6:11
  |
6 | use log::{debug, info};
  |           ^^^^^  ^^^^

warning: unused import: `HashSet`
 --> src/documents.rs:2:28
  |
2 |     collections::{HashMap, HashSet},
  |                            ^^^^^^^

warning: unused import: `Position`
 --> src/documents.rs:9:20
  |
9 | use lspower::lsp::{Position, Url};
  |                    ^^^^^^^^

warning: unused variable: `program_text`
   --> src/documents.rs:116:13
    |
116 |             program_text,
    |             ^^^^^^^^^^^^ help: try ignoring the field: `program_text: _`
    |
    = note: `#[warn(unused_variables)]` on by default

warning: unused variable: `open_modules`
   --> src/documents.rs:380:37
    |
380 |     pub fn variants_external(&self, open_modules: &[String]) -> Vec<&Component> {
    |                                     ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_open_modules`

warning: fields `config` and `diagnostics` are never read
  --> src/language_server.rs:88:5
   |
84 | pub struct Inner {
   |            ----- fields in this struct
...
88 |     config: Config,
   |     ^^^^^^
89 |     /// A collection of diagnostics from different sources.
90 |     diagnostics: DiagnosticCollection,
   |     ^^^^^^^^^^^
   |
   = note: `Inner` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
   = note: `#[warn(dead_code)]` on by default

warning: field `map` is never read
  --> src/language_server/diagnostics.rs:11:5
   |
10 | pub struct DiagnosticCollection {
   |            -------------------- field in this struct
11 |     map: HashMap<Url, Vec<Diagnostic>>,
   |     ^^^
   |
   = note: `DiagnosticCollection` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis

warning: methods `types`, `variants`, `types_external`, and `variants_external` are never used
   --> src/documents.rs:309:12
    |
263 | impl Environment {
    | ---------------- methods in this implementation
...
309 |     pub fn types(&self) -> Vec<&Component> {
    |            ^^^^^
...
316 |     pub fn variants(&self) -> Vec<&Component> {
    |            ^^^^^^^^
...
362 |     pub fn types_external(&self, open_modules: &[String]) -> Vec<&Component> {
    |            ^^^^^^^^^^^^^^
...
380 |     pub fn variants_external(&self, open_modules: &[String]) -> Vec<&Component> {
    |            ^^^^^^^^^^^^^^^^^

warning: fields `kind` and `definition` are never read
   --> src/documents.rs:523:9
    |
519 | pub struct Dependency {
    |            ---------- fields in this struct
...
523 |     pub kind: DependencyKind,
    |         ^^^^
524 |     /// `@require:` や `@import` が呼ばれている場所。
525 |     pub definition: Span,
    |         ^^^^^^^^^^
    |
    = note: `Dependency` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis

warning: field `pos_declaration` is never read
   --> src/documents.rs:656:9
    |
643 | pub struct Component {
    |            --------- field in this struct
...
656 |     pub pos_declaration: Option<Span>,
    |         ^^^^^^^^^^^^^^^
    |
    = note: `Component` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis

warning: method `map_types` is never used
   --> src/documents.rs:668:8
    |
667 | impl<'a> ModuleInfo<'a> {
    | ----------------------- method in this implementation
668 |     fn map_types<'b>(&self, program_text: &'b ProgramText) -> HashMap<&'b str, &Signature> {
    |        ^^^^^^^^^

warning: field `type_args` is never read
    --> src/documents.rs:1122:9
     |
1119 |     MathCmd {
     |     ------- field in this variant
...
1122 |         type_args: Vec<String>,
     |         ^^^^^^^^^
     |
     = note: `ComponentBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis

warning: variant `Variant` is never constructed
    --> src/documents.rs:1105:5
     |
1096 | pub enum ComponentBody {
     |          ------------- variant in this enum
...
1105 |     Variant {
     |     ^^^^^^^
     |
     = note: `ComponentBody` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis

warning: field `url` is never read
    --> src/documents.rs:1143:5
     |
1140 | pub struct OpenModule {
     |            ---------- field in this struct
...
1143 |     url: Url,
     |     ^^^
     |
     = note: `OpenModule` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis

warning: `satysfi-language-server` (lib) generated 15 warnings (run `cargo fix --lib -p satysfi-language-server` to apply 4 suggestions)
    Finished `release` profile [optimized] target(s) in 52.24s
  Installing /home/y-aki/.cargo/bin/satysfi-language-server
   Installed package `satysfi-language-server v0.0.1 (https://github.com/monaqa/satysfi-language-server#1ce6bc4d)` (executable `satysfi-language-server`)

エラーが出ている?

Y - AY - A

VSCodeの設定

{
  "satysfi-workshop.languageServer.enabled": true,
  "satysfi-workshop.build.when": "onSave",
  "satysfi-workshop.languageServer.path": "/home/(ユーザー名)/.cargo/bin/satysfi-language-server",
}

settings.jsonに追記

Y - AY - A

インストール先のパスを明示しな場合、次のようなエラーが出た

[Error - 10:43:40 PM] SATySFi Language Server client: couldn't create connection to server.
Launching server using command satysfi-language-server failed. Error: spawn satysfi-language-server ENOENT
Y - AY - A

"satysfi-workshop.build.when": "onSave" を設定した上で、画面を2分割して(.saty と .pdf )編集すると良さそう

Y - AY - A

.saty ファイルを保存すると、自動でPDFが生成される

Y - AY - A

数式プレビューの表示

pdf2svgのインストール

sudo apt install pdf2svg


設定を変更


ちゃんとプレビューが表示された

Y - AY - A

satysfi-class-jlreqを使う

opam install satysfi-class-jlreq
satyrographos install
Y - AY - A
出力
user@******:~$ opam install satysfi-class-jlreq
The following actions will be performed:
  ∗ install satysfi-fonts-dejavu   2.37+satysfi0.0.4   [required by satysfi-base]
  ∗ install satysfi-fonts-junicode 1.0002+satysfi0.0.5 [required by satysfi-fss]
  ∗ install satysfi-base           1.5.0               [required by satysfi-class-jlreq]
  ∗ install satysfi-pagenumber     1.0.0               [required by satysfi-class-jlreq]
  ∗ install satysfi-fss            0.2.0               [required by satysfi-class-jlreq]
  ∗ install satysfi-pagestyle      1.0.0               [required by satysfi-class-jlreq]
  ∗ install satysfi-class-jlreq    0.0.3
===== ∗ 7 =====
Do you want to continue? [Y/n] y

<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
⬇ retrieved satysfi-class-jlreq.0.0.3  (https://github.com/abenori/satysfi-class-jlreq/archive/0.0.3.tar.gz)
⬇ retrieved satysfi-base.1.5.0  (https://github.com/nyuichi/satysfi-base/archive/refs/tags/1.5.0.tar.gz)
⬇ retrieved satysfi-fonts-junicode.1.0002+satysfi0.0.5  (https://github.com/na4zagin3/SATySFi-fonts-junicode/archive/v1.0002+satysfi0.0.5.tar.gz)
⬇ retrieved satysfi-fss.0.2.0  (https://github.com/na4zagin3/satysfi-fss/archive/v0.2.0.tar.gz)
∗ installed satysfi-fonts-junicode.1.0002+satysfi0.0.5
⬇ retrieved satysfi-pagestyle.1.0.0  (https://github.com/abenori/satysfi-pagestyle/archive/1.0.0.tar.gz)
⬇ retrieved satysfi-pagenumber.1.0.0  (https://github.com/abenori/satysfi-pagenumber/archive/1.0.0.tar.gz)
⬇ retrieved satysfi-fonts-dejavu.2.37+satysfi0.0.4  (https://github.com/zeptometer/SATySFi-fonts-dejavu/archive/2.37+satysfi0.0.4.tar.gz)
∗ installed satysfi-fonts-dejavu.2.37+satysfi0.0.4
∗ installed satysfi-base.1.5.0
∗ installed satysfi-fss.0.2.0
∗ installed satysfi-pagenumber.1.0.0
∗ installed satysfi-pagestyle.1.0.0
∗ installed satysfi-class-jlreq.0.0.3
Done.
user@******:~$ satyrographos install
Reading runtime dist: /home/y-aki/.opam/default/share/satysfi/dist
Reading opam libraries: (base class-jlreq dist fonts-dejavu fonts-junicode fss pagenumber pagestyle)
Overriding dist with user installed one
Not gathering system fonts
Installing libraries: (base class-jlreq dist fonts-dejavu fonts-junicode fss pagenumber pagestyle)
Removing destination /home/y-aki/.satysfi/dist
Installation completed!
Y - AY - A

今後やること

  • class-jlreq/jlreqのカスタマイズ
  • GitHub Actions を用いてPDFを出力する
Y - AY - A

GitHub Actions


インストールしたはずなのに satyrographos が見つからない

Y - AY - A

インストールに長い時間かかってしまう。Vivliostyle の方がインストールがはやそう

ログインするとコメントできます