diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -26,14 +26,6 @@
 
 By default, the executable will be installed in `~/.cabal/bin`.
 
-Alternatively, texmath can be installed using
-[stack](https://github.com/commercialhaskell/stack).  Install
-the stack binary somewhere in your path.  Then, in the texmath
-repository,
-
-    stack setup
-    stack install --flag texmath:executable
-
 The `texmath` binary will be put in `~/.local/bin`.
 
 Macro definitions may be included before a LaTeX formula.
@@ -46,7 +38,7 @@
 But it is also possible to compile a full webserver with a JSON
 API.  To do this, set the `server` cabal flag, e.g.
 
-    stack install --flag texmath:server
+    cabal install -fserver
 
 To run the server on port 3000:
 
@@ -145,7 +137,7 @@
 
 # The test suite
 
-To run the test suite, do `cabal test` or `stack test`.
+To run the test suite, do `cabal test`.
 
 In its standard mode, the test suite will run golden tests of
 the individual readers and writers.  Reader tests can be found
@@ -160,12 +152,12 @@
 If many tests fail as a result of changes, but the test
 failures are all because of improvements in the output,
 you can pass `--accept` to the test suite (e.g., with
-`--test-arguments=--accept` on `stack test`), and the existing
+`--test-option=--accept` on `cabal test`), and the existing
 golden files will be overwritten.  If you do this, inspect
 the outputs very carefully to make sure they are correct.
 
 If you pass the `--roundtrip` option into the test suite
-(e.g., using `--test-arguments=--roundtrip` with `stack test`),
+(e.g., using `--test-option=--roundtrip` with `cabal test`),
 round-trip tests will be run instead.  Many of these will
 fail. In these tests, the native inputs in `test/roundtrip/*.native`
 will be converted to (respectively) `mml`, `omml`, or `tex`,
diff --git a/changelog.md b/changelog.md
--- a/changelog.md
+++ b/changelog.md
@@ -1,3 +1,8 @@
+texmath (0.13.1.2)
+
+  * Typst writer: Avoid using deprecated symbols (#287).
+    This requires depending on typst-symbols 0.2.*.
+
 texmath (0.13.1.1)
 
   * Typst writer: don't add extra spaces around `|` or escaped
diff --git a/src/Text/TeXMath/Writers/Typst.hs b/src/Text/TeXMath/Writers/Typst.hs
--- a/src/Text/TeXMath/Writers/Typst.hs
+++ b/src/Text/TeXMath/Writers/Typst.hs
@@ -25,7 +25,7 @@
 import qualified Data.Text as T
 import Text.TeXMath.Types
 import qualified Text.TeXMath.Shared as S
-import Typst.Symbols (typstSymbols)
+import qualified Typst.Symbols as TS
 import Data.Generics (everywhere, mkT)
 import Data.Text (Text)
 import Data.Char (isDigit, isAlpha, isAscii)
@@ -310,7 +310,10 @@
 typstSymbolMap :: M.Map Text Text
 typstSymbolMap = M.fromList $
   ("\776", "dot.double") -- see #231
-  : [(s,name) | (name, _, s) <- typstSymbols]
+  : [(s,name) | TS.Sym { TS.symName = name
+                       , TS.symText = s
+                       , TS.symDeprecation = Nothing
+                       } <- TS.typstSymbols]
 
 getAccentCommand :: Text -> Maybe Text
 getAccentCommand ac = do
diff --git a/test/writer/typst/deMorgans_law.test b/test/writer/typst/deMorgans_law.test
--- a/test/writer/typst/deMorgans_law.test
+++ b/test/writer/typst/deMorgans_law.test
@@ -36,4 +36,4 @@
     (ESymbol TOver "\175")
 ]
 >>> typst
-not (p and q) arrow.l.r.double (not p) or (not q) overline(union.big_(i = 1)^n A_i) = sect.big_(i = 1)^n overline(A_i)
+not (p and q) arrow.l.r.double (not p) or (not q) overline(union.big_(i = 1)^n A_i) = inter.big_(i = 1)^n overline(A_i)
diff --git a/test/writer/typst/largeop1.test b/test/writer/typst/largeop1.test
--- a/test/writer/typst/largeop1.test
+++ b/test/writer/typst/largeop1.test
@@ -76,9 +76,9 @@
     ]
 ]
 >>> typst
-upright("displaystyle: false largeop: false") & and.big or.big integral sum product union.big sect.big\
-upright("displaystyle: false largeop: true") & and.big or.big integral sum product union.big sect.big\
-upright("displaystyle: true largeop: false") & and.big or.big integral sum product union.big sect.big\
-upright("displaystyle: true largeop: true") & and.big or.big integral sum product union.big sect.big\
-upright("displaystyle: false largeop: default") & and.big or.big integral sum product union.big sect.big\
-upright("displaystyle: true largeop: default") & and.big or.big integral sum product union.big sect.big
+upright("displaystyle: false largeop: false") & and.big or.big integral sum product union.big inter.big\
+upright("displaystyle: false largeop: true") & and.big or.big integral sum product union.big inter.big\
+upright("displaystyle: true largeop: false") & and.big or.big integral sum product union.big inter.big\
+upright("displaystyle: true largeop: true") & and.big or.big integral sum product union.big inter.big\
+upright("displaystyle: false largeop: default") & and.big or.big integral sum product union.big inter.big\
+upright("displaystyle: true largeop: default") & and.big or.big integral sum product union.big inter.big
diff --git a/test/writer/typst/largeopPos3.test b/test/writer/typst/largeopPos3.test
--- a/test/writer/typst/largeopPos3.test
+++ b/test/writer/typst/largeopPos3.test
@@ -8,4 +8,4 @@
     [ EIdentifier "A" , ESymbol Bin "\8745" , EIdentifier "B" ]
 ]
 >>> typst
-sect.big_(i = 0)^oo A sect B
+inter.big_(i = 0)^oo A inter B
diff --git a/texmath.cabal b/texmath.cabal
--- a/texmath.cabal
+++ b/texmath.cabal
@@ -1,5 +1,5 @@
 Name:                texmath
-Version:             0.13.1.1
+Version:             0.13.1.2
 Cabal-Version:       >= 1.10
 Build-type:          Simple
 Synopsis:            Conversion between math formats.
@@ -80,7 +80,7 @@
                          pandoc-types >= 1.20 && < 1.24,
                          mtl >= 2.2.1,
                          text,
-                         typst-symbols >= 0.1.9.1 && < 0.1.10,
+                         typst-symbols >= 0.2 && < 0.2.1,
                          split
 
     Exposed-modules:     Text.TeXMath,
