refactor: 拆分 cli 模块,分离现代终端工具与开发工具链
- 新增 cli 模块:bat, btop, duf, dust, eza, fastfetch, fd, git-delta, jq, micro, procs, ripgrep, tealdeer, trash-cli, yazi, zoxide + git/mise 用户配置 - dev 瘦身为纯开发工具:语言运行时、LSP、编辑器 - base 还原为无参构造,移除用户配置文件职责 - git config 添加 delta pager 配置
This commit is contained in:
+1
-6
@@ -4,9 +4,8 @@ from decman.plugins.pacman import packages as pacman_packages
|
||||
|
||||
|
||||
class BaseModule(Module):
|
||||
def __init__(self, user: str):
|
||||
def __init__(self):
|
||||
super().__init__("base")
|
||||
self.user = user
|
||||
|
||||
def files(self):
|
||||
return {
|
||||
@@ -17,10 +16,6 @@ class BaseModule(Module):
|
||||
source_file="./system/etc/sudoers.d/10-wheel",
|
||||
permissions=0o440,
|
||||
),
|
||||
f"/home/{self.user}/.config/git/config": File(
|
||||
source_file="./home/.config/git/config",
|
||||
owner=self.user,
|
||||
),
|
||||
}
|
||||
|
||||
@pacman_packages
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
from decman import File, Module
|
||||
from decman.plugins.pacman import packages as pacman_packages
|
||||
|
||||
|
||||
class CliModule(Module):
|
||||
def __init__(self, user: str):
|
||||
super().__init__("cli")
|
||||
self.user = user
|
||||
|
||||
def files(self):
|
||||
return {
|
||||
f"/home/{self.user}/.config/git/config": File(
|
||||
source_file="./home/.config/git/config",
|
||||
owner=self.user,
|
||||
),
|
||||
f"/home/{self.user}/.config/mise/config.toml": File(
|
||||
source_file="./home/.config/mise/config.toml",
|
||||
owner=self.user,
|
||||
),
|
||||
}
|
||||
|
||||
@pacman_packages
|
||||
def pacman_packages(self) -> set[str]:
|
||||
return {
|
||||
"bat",
|
||||
"btop",
|
||||
"duf",
|
||||
"dust",
|
||||
"eza",
|
||||
"fastfetch",
|
||||
"fd",
|
||||
"git-delta",
|
||||
"jq",
|
||||
"micro",
|
||||
"procs",
|
||||
"ripgrep",
|
||||
"tealdeer",
|
||||
"trash-cli",
|
||||
"yazi",
|
||||
"zoxide",
|
||||
}
|
||||
+1
-18
@@ -1,5 +1,5 @@
|
||||
import decman
|
||||
from decman import File, Module
|
||||
from decman import Module
|
||||
from decman.plugins.pacman import packages as pacman_packages
|
||||
|
||||
BUN_GLOBAL_PACKAGES = [
|
||||
@@ -17,35 +17,18 @@ class DevModule(Module):
|
||||
super().__init__("dev")
|
||||
self.user = user
|
||||
|
||||
def files(self):
|
||||
return {
|
||||
f"/home/{self.user}/.config/mise/config.toml": File(
|
||||
source_file="./home/.config/mise/config.toml",
|
||||
owner=self.user,
|
||||
),
|
||||
}
|
||||
|
||||
@pacman_packages
|
||||
def pacman_packages(self) -> set[str]:
|
||||
return {
|
||||
"bat",
|
||||
"biome",
|
||||
"btop",
|
||||
"bun",
|
||||
"eza",
|
||||
"fastfetch",
|
||||
"fd",
|
||||
"go",
|
||||
"lazygit",
|
||||
"micro",
|
||||
"mise",
|
||||
"neovim",
|
||||
"nodejs",
|
||||
"ripgrep",
|
||||
"trash-cli",
|
||||
"uv",
|
||||
"yaml-language-server",
|
||||
"zoxide",
|
||||
}
|
||||
|
||||
def after_update(self, store):
|
||||
|
||||
Reference in New Issue
Block a user