57 lines
1.6 KiB
Python
57 lines
1.6 KiB
Python
import decman
|
|
from decman.plugins import pacman
|
|
|
|
|
|
class Latex(decman.Module):
|
|
def __init__(self, user: str):
|
|
"""Base packages that should never be uninstalled"""
|
|
self._user = user
|
|
super().__init__("latex")
|
|
|
|
@pacman.packages
|
|
def pkgs(self) -> set[str]:
|
|
return {
|
|
"biber",
|
|
"perl-yaml-tiny",
|
|
"perl-file-homedir",
|
|
"python-pygments",
|
|
"texlab",
|
|
"texlive-basic",
|
|
"texlive-bibtexextra",
|
|
"texlive-binextra",
|
|
"texlive-context",
|
|
"texlive-fontsextra",
|
|
"texlive-fontsrecommended",
|
|
"texlive-fontutils",
|
|
"texlive-formatsextra",
|
|
"texlive-games",
|
|
"texlive-humanities",
|
|
"texlive-latex",
|
|
"texlive-latexextra",
|
|
"texlive-latexrecommended",
|
|
"texlive-lualatex",
|
|
"texlive-mathscience",
|
|
"texlive-metapost",
|
|
"texlive-music",
|
|
"texlive-pictures",
|
|
"texlive-plaingeneric",
|
|
"texlive-pstricks",
|
|
"texlive-publishers",
|
|
"texlive-xetex",
|
|
"texlive-langgerman",
|
|
}
|
|
|
|
def on_enable(self, store: decman.Store):
|
|
out = decman.prg(["cd ~/projects/latex/"], user=self._user)
|
|
if out == "":
|
|
decman.prg(
|
|
[
|
|
"cd",
|
|
"~/projects/",
|
|
"git",
|
|
"clone",
|
|
"https://git.janishutz.com/janishutz/latex",
|
|
],
|
|
user=self._user,
|
|
)
|