feat(templates): More package templates, template management start

This commit is contained in:
2026-05-12 14:15:18 +02:00
parent 72a8ceb741
commit e24eb647ca
6 changed files with 74 additions and 1 deletions
+19
View File
@@ -0,0 +1,19 @@
from typing import Literal
from config.dtype import ArchMgrConfig
from templates import ArchMgrTemplates
# TODO: Templates data
def show(
config: ArchMgrConfig, spec: ArchMgrTemplates, kind: Literal["bundle"], arg: str
):
"""Show details / information about things like contents pkg bundles
Args:
config: The configuration
spec: The archmgr templates that were loaded
kind: The type of information to get
arg: The arg for the command (e.g. bundle name)
"""
pass
+2 -1
View File
@@ -27,7 +27,7 @@ boot:
managed: True
bootloader: grub
esp_dir: /boot/
theme_folder: ~/.path/to/theme/
theme_folder: ~/.path/to/theme/ # This could then be used with git to clone it in
os_prober: False
# Also copies over the /etc/default/grub config or equivalent for other supported bootloaders
@@ -39,6 +39,7 @@ themes:
font: Comfortaa 11 # the font name to be used (also needs to be installed)
icon_theme: candy-icons # The icon theme to use (also needs to be installed)
cursor_theme: oreo_spark_blue_cursors # TODO: Consider if GTK settings file should just be copied
# TODO: Cursor theme needs more flexibility
git:
creds:
+1
View File
@@ -0,0 +1 @@
# Import the configuration preset templates
+17
View File
@@ -0,0 +1,17 @@
from config.dtype.others import ArchMgrTemplateData
class ArchMgrTemplates:
pkg_bundles: dict[str, list[str]]
bootloader_config: BootLoaderSettings
theme_templates: ArchMgrTemplateData
repo_config: None # TODO: Define a good dtype here
class BootLoaderSettings:
templates: ArchMgrTemplateData
name: str
def load_templates():
pass
+28
View File
@@ -22,3 +22,31 @@ pipewire:
neovim:
- neovim
- lua
- lua-language-server
- tree-sitter
- tree-sitter-cli
- stylua
archives:
- zip
- unzip
bluetooth:
- blueman
- bluez
- bluez-utils
utils:
- fastfetch
- tldr
- gdu
- dig
- glances
- bashtop
# TODO: For all, make it possible to be pkgs plus configs?
yazi:
- yazi
- xdg-desktop-portal-termfilechooser-hunkyburrito-git
- ouch
+7
View File
@@ -0,0 +1,7 @@
{
"$schema": "http://json-schema.org/draft-07/schema",
"type": "object",
"properties": {
"": {}
}
}