typst: new package (#47293)
This commit is contained in:
parent
e35bc1f82d
commit
b4b3320f71
37
var/spack/repos/builtin/packages/typst/package.py
Normal file
37
var/spack/repos/builtin/packages/typst/package.py
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
# Copyright 2013-2024 Lawrence Livermore National Security, LLC and other
|
||||||
|
# Spack Project Developers. See the top-level COPYRIGHT file for details.
|
||||||
|
#
|
||||||
|
# SPDX-License-Identifier: (Apache-2.0 OR MIT)
|
||||||
|
|
||||||
|
import re
|
||||||
|
|
||||||
|
from spack.package import *
|
||||||
|
|
||||||
|
|
||||||
|
class Typst(CargoPackage):
|
||||||
|
"""Typst is a new markup-based typesetting system for the sciences."""
|
||||||
|
|
||||||
|
homepage = "https://typst.app"
|
||||||
|
git = "https://github.com/typst/typst"
|
||||||
|
executables = ["^typst$"]
|
||||||
|
|
||||||
|
maintainers("upsj")
|
||||||
|
|
||||||
|
license("Apache-2.0", checked_by="upsj")
|
||||||
|
|
||||||
|
version("0.12.0", commit="737895d769188f6fc154523e67a9102bc24c872e", tag="v0.12.0")
|
||||||
|
|
||||||
|
depends_on("rust@1.81.0:")
|
||||||
|
depends_on("openssl")
|
||||||
|
depends_on("pkgconf", type="build")
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def determine_version(cls, exe):
|
||||||
|
output = Executable(exe)("--version", output=str, error=str)
|
||||||
|
match = re.search(r"typst ([0-9.]+)", output)
|
||||||
|
return match.group(1) if match else None
|
||||||
|
|
||||||
|
def build(self, spec, prefix):
|
||||||
|
# The cargopackage installer doesn't allow for an option to install from a subdir
|
||||||
|
# see: https://github.com/rust-lang/cargo/issues/7599
|
||||||
|
cargo("install", "--root", "out", "--path", "crates/typst-cli")
|
Loading…
Reference in New Issue
Block a user