
typst
Silent install package for typst
0.13.1-1
- package: tis-typst-portable
- name: typst
- version: 0.13.1-1
- maintainer: Jordan ARNAUD
- licence: Apache-2.0 license
- target_os: debian_based
- architecture: x64
- signature_date:
- size: 13.62 Mo
- homepage : https://typst.app/
package : tis-typst-portable
version : 0.13.1-1
architecture : x64
section : base
priority : optional
name : typst
categories :
maintainer : Jordan ARNAUD
description : A new, powerful and easy-to-learn markup-based composition system
depends :
conflicts :
maturity : PROD
locale :
target_os : debian_based
min_wapt_version :
sources : https://github.com/typst/typst
installed_size :
impacted_process :
description_fr : Un nouveau système de composition basé sur le balisage, puissant et facile à apprendre
description_pl : Nowy system kompozycji oparty na znacznikach, który jest potężny i łatwy do nauczenia
description_de : Ein neues, auf Markup basierendes Satzsystem, das leistungsstark und leicht zu erlernen ist
description_es : Un nuevo sistema de composición basado en marcas, potente y fácil de aprender
description_pt : Um novo sistema de composição baseado em marcação que é poderoso e fácil de aprender
description_it : Un nuovo sistema di composizione basato su markup, potente e facile da imparare
description_nl : Een nieuw op markup gebaseerd compositiesysteem dat krachtig en gemakkelijk te leren is
description_ru : Новая система композиции на основе разметки, мощная и простая в освоении
audit_schedule :
editor :
keywords :
licence : Apache-2.0 license
homepage : https://typst.app/
package_uuid : a529935b-0cd2-418e-9726-a30d2e9759d3
valid_from :
valid_until :
forced_install_on :
changelog :
min_os_version :
max_os_version :
icon_sha256sum : 299c97f82b4e1737475fb5102447fd09d23d2cbda13765e673ef9701a5a01d64
signer : Tranquil IT
signer_fingerprint: 8c5127a75392be9cc9afd0dbae1222a673072c308c14d88ab246e23832e8c6bb
signature_date : 2025-03-12T16:09:21.000000
signed_attributes : package,version,architecture,section,priority,name,categories,maintainer,description,depends,conflicts,maturity,locale,target_os,min_wapt_version,sources,installed_size,impacted_process,description_fr,description_pl,description_de,description_es,description_pt,description_it,description_nl,description_ru,audit_schedule,editor,keywords,licence,homepage,package_uuid,valid_from,valid_until,forced_install_on,changelog,min_os_version,max_os_version,icon_sha256sum,signer,signer_fingerprint,signature_date,signed_attributes
signature : ObklvqkucQ4bte4OcuAeZCWHMr374kP+NAFTJTah1mThRGumF7ShE59PRtohc6eYdzAxFqh1LiQ/sCh5Zh/i9/kTAnsX4JzgazsrJO41K61HrCLRjrMo+kVKb3OF4djZIt7xN3kXS78tN5ZZ0Se63Y47KFkpEjtEnP1z/eH2xwIjdlOHWuHItQ9iObIzOzDXBB1snfuwIoq9RnSxpM/F1AJK4jikob0JeeVxHaMwEqSJk7jvxa3366TCP66X/Q7ahgsh4qUeNEsfXarVYJKJeyz/AqdiTv4jLsEHHiVRdT8qvHRD2kH1nXAhBt7fkM8qM/bswYnKDxMd09LtvbIUiw==
# -*- coding: utf-8 -*-
from setuphelpers import *
bin_path = makepath("/", "usr", "local", "bin")
app_path = "/opt/typst"
def install():
# Extraction and copying to /opt/typst
extract_path = glob.glob("*.tar.xz")[0]
run(f"tar -xJvf {extract_path}")
char_len = len(extract_path) - len('.tar.xz')
extract_path = extract_path[:char_len]
bin_name = glob.glob(extract_path)[0]
print(f"copying typst to {app_path}")
if not isdir(app_path):
mkdirs(app_path)
copytree2(bin_name, app_path)
# Creation symlink
symlink_path = f"{bin_path}/typst"
if isfile(symlink_path) or os.path.islink(symlink_path):
print("Symlink already exists, removing it")
os.remove(symlink_path)
print("create typst alias in path")
os.symlink(f"{app_path}/typst", symlink_path)
if isdir(extract_path):
remove_tree(extract_path)
def uninstall():
# Removing of symlink
if isfile(f"{bin_path}/typst"):
remove_file(f"{bin_path}/typst")
# Removing of the software
if isdir(app_path):
remove_tree(app_path)
# -*- coding: utf-8 -*-
from setuphelpers import *
from setupdevhelpers import *
import json
# Declaring global variables - Warnings: 1) WAPT context is only available in package functions; 2) Global variables are not persistent between calls
def update_package():
result = False
proxies = get_proxies()
if not proxies:
proxies = get_proxies_from_wapt_console()
git_repo = "typst/typst"
url_api = "https://api.github.com/repos/%s/releases/latest" % git_repo
# Getting latest version information from official sources
print("API used is: %s" % url_api)
json_load = json.loads(wgets(url_api, proxies=proxies))
for download in json_load["assets"]:
if download["browser_download_url"].endswith('.tar.xz') and "x86_64" in download["browser_download_url"] and "linux" in download["browser_download_url"] and "beta" not in download["browser_download_url"] :
url_dl = download["browser_download_url"]
version = json_load["tag_name"].replace("v","")
filename = download["name"]
break
if not isfile(filename):
package_updated = True
print(f'Downloading ' + filename)
wget(url_dl,filename,proxies=proxies)
#nettoyer les fichiers temporaires
for f in glob.glob('*.tar.xz'):
if f != filename:
remove_file(f)
control.set_software_version(version)
control.save_control_to_wapt()
38d056ab130f7bf7c481c12636a4e9959de36561d3dfcbe54c6e3571bc0c1dc3 : WAPT/certificate.crt
64313786ecba87282dcec7ba0b136a790268164ae1971320e69aed62e2a2d9bf : WAPT/control
299c97f82b4e1737475fb5102447fd09d23d2cbda13765e673ef9701a5a01d64 : WAPT/icon.png
52b08e6a71a789761ab410dfd0c7073dc3ec82d24ec273ede9ab08daf42b02da : luti.json
85d31017ba07bd674b9605dd47c29ac583ef66ee179a11920d77ce32b6f6d1c4 : setup.py
7d214bfeffc2e585dc422d1a09d2b144969421281e8c7f5d784b65fc69b5673f : typst-x86_64-unknown-linux-musl.tar.xz
41f48e3f0815883207779eb54028e353a86bc666dcf347d1f6a6457185413308 : update_package.py