
typst
Silent install package for typst
0.12.0-1
- package: tis-typst-portable
- name: typst
- version: 0.12.0-1
- maintainer: Jordan ARNAUD
- licence: Apache-2.0 license
- target_os: debian_based
- architecture: x64
- signature_date:
- size: 13.22 Mo
- homepage : https://typst.app/
package : tis-typst-portable
version : 0.12.0-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 : 761ec915-3239-4b74-909d-d2ab8d604cfd
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 : 2024-10-23T23:00:31.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 : LucDhXGHkMtG59G2w96QxvAjSH0iBORNes9aO6y++Zvo+Pa4l8GOc1YmgcnuSY78S69qV5Ex/KMFM3E3uHy7HKSZprGTlBLAkRlHZhXlPKePKQ1TdDi1d7B1hYQmJWbKJsSISMRzjLcWmWakVd0Fs2jfLQNIazVRRq2/PRSlwB6NJNKbMkCXB2MJMWn72BvsBsBo1BycY16j9vXrIxAn+waOAJ5ajcKj/V0b2AvFTgufC0I/T2JMwK6ZnxCE1vRiz/fvAoRZwyIG1OBJm206ttIplhefXiDHO9c5IK5wpaogpIMGosQ2OoGn2CQjnMbD9dF852ZMWNka27feQP2UXg==
# -*- 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
5824937b6808b190e6fcfb014f9b18d116cd4ef2483211657ba84a151d973a60 : WAPT/control
299c97f82b4e1737475fb5102447fd09d23d2cbda13765e673ef9701a5a01d64 : WAPT/icon.png
f871082de0df695f38bac38bf737458d3d0cd54c19829f37cb33f7cfaf0073f8 : luti.json
85d31017ba07bd674b9605dd47c29ac583ef66ee179a11920d77ce32b6f6d1c4 : setup.py
605130a770ebd59a4a579673079cb913a13e75985231657a71d6239a57539ec3 : typst-x86_64-unknown-linux-musl.tar.xz
41f48e3f0815883207779eb54028e353a86bc666dcf347d1f6a6457185413308 : update_package.py