diff --git a/modules/base.py b/modules/base.py index 211cf37..6a54612 100644 --- a/modules/base.py +++ b/modules/base.py @@ -22,25 +22,11 @@ class BaseModule(Module): def pacman_packages(self) -> set[str]: return { "base-devel", - "bat", - "btop", - "bun", "curl", - "eza", - "fastfetch", - "fd", "git", - "lazygit", - "micro", - "mise", - "neovim", - "nodejs", - "ripgrep", "sudo", - "trash-cli", "vim", "wget", - "zoxide", } @aur_packages diff --git a/modules/dev.py b/modules/dev.py new file mode 100644 index 0000000..4f32b28 --- /dev/null +++ b/modules/dev.py @@ -0,0 +1,41 @@ +import decman +from decman import Module +from decman.plugins.pacman import packages as pacman_packages + +BUN_GLOBAL_PACKAGES = [ + "@code-yeongyu/comment-checker", + "@mariozechner/pi-coding-agent", + "opencode-ai", +] + + +class DevModule(Module): + def __init__(self, user: str): + super().__init__("dev") + self.user = user + + @pacman_packages + def pacman_packages(self) -> set[str]: + return { + "bat", + "biome", + "btop", + "bun", + "eza", + "fastfetch", + "fd", + "lazygit", + "micro", + "mise", + "neovim", + "nodejs", + "ripgrep", + "trash-cli", + "uv", + "yaml-language-server", + "zoxide", + } + + def on_change(self, store): + for pkg in BUN_GLOBAL_PACKAGES: + decman.prg(["su", "-", self.user, "-c", f"bun add -g {pkg} --trust"]) diff --git a/source.py b/source.py index 3bba378..9bdcd78 100644 --- a/source.py +++ b/source.py @@ -3,7 +3,7 @@ import os import decman import modules.base -import modules.docker +import modules.dev import modules.locale import modules.zsh @@ -17,7 +17,7 @@ if not USERNAME: decman.modules += [ modules.base.BaseModule(), + modules.dev.DevModule(USERNAME), modules.locale.LocaleModule(), - modules.docker.DockerModule(USERNAME), modules.zsh.ZshModule(USERNAME), ]