MDietermann
48d50efe19
feat(arduinocli): implement PlanForce
2026-04-14 22:16:18 +02:00
MDietermann
25b4eefecd
feat(neovim): implement PlanForce
2026-04-14 22:15:32 +02:00
MDietermann
77b767aa0e
feat(themes): implement PlanForce
2026-04-14 22:07:48 +02:00
MDietermann
b2cbd4f640
feat(shellconfig): implement PlanForce
2026-04-14 22:06:57 +02:00
MDietermann
4ed257bbd1
feat(zellij): implement PlanForce
2026-04-14 22:06:10 +02:00
MDietermann
47064338c8
feat(zsh): implement PlanForce
2026-04-14 22:05:21 +02:00
MDietermann
abd0a617e2
feat(yazi): implement PlanForce to reinstall all packages
2026-04-14 22:00:42 +02:00
MDietermann
edfff22bac
feat(starship): implement PlanForce to reinstall all packages
2026-04-14 22:00:00 +02:00
MDietermann
bd5c34f293
feat(hello): implement PlanForce placeholder to rewrite marker
2026-04-14 21:57:51 +02:00
MDietermann
372a6598fe
feat(renode): implement PlanForce to reinstall packages and rewrite assets
2026-04-14 21:57:17 +02:00
MDietermann
c056697721
feat(fonts): implement PlanForce to reinstall all fonts via yay
2026-04-14 21:56:23 +02:00
MDietermann
c75afade8c
feat(gittools): implement PlanForce to reinstall all packages
2026-04-14 21:55:43 +02:00
MDietermann
58bd532dba
feat(packages): implement PlanForce to reinstall all packages
...
Adds Reinstall method to PackageManager and AURHelper interfaces
so modules can invoke the concrete Reinstall helpers behind the
interface. *Pacman and *Yay already satisfy it.
2026-04-14 21:55:08 +02:00
MDietermann
613363e993
feat(engine): add RunOptions.Force to skip Detect and call PlanForce
2026-04-14 21:51:29 +02:00
MDietermann
d525646f3a
feat(module): add PlanForce to Module interface with stubs
2026-04-14 21:49:09 +02:00
MDietermann
e6e12ab5fd
feat(platform): add Reinstall helpers to Pacman and Yay
2026-04-14 21:44:47 +02:00
MDietermann
c579375c83
style: gofmt 7 test files
2026-04-14 21:30:50 +02:00
MDietermann
929cee1643
chore: rename module to gitlab.hive-brain.de/MDietermann/Archduino
2026-04-14 14:30:14 +02:00
MDietermann
c710ed81df
feat(doctor): add archduino doctor subcommand
2026-04-14 14:19:12 +02:00
MDietermann
2464e70cd2
feat(newproject): add archduino new project scaffolder
2026-04-14 14:16:07 +02:00
MDietermann
bbaa21a6bf
feat(config): add Scaffolding.Boards typed input with 6 defaults
2026-04-14 14:08:54 +02:00
MDietermann
698271a235
fix(theming): restore gruvbox as default via Default() helper
2026-04-14 13:42:58 +02:00
MDietermann
4f7411ca95
refactor: retire tui.BuiltinThemes in favor of theming.List
...
Make internal/theming.List the single source of truth for themes:
- Drop tui.BuiltinThemes, tui.ThemeByID, and the NvChadTheme field on
tui.Theme. tui.Theme is now a thin {ID, Name} display value.
- Wizard populates its dropdown from theming.List() and uses
DisplayName for the label.
- neovim.resolvedTheme uses theming.Get (with theming.List()[0] as a
fallback) instead of a caller-supplied []tui.Theme slice.
- neovim.New signature loses the themes []tui.Theme parameter; update
cmd/archduino/main.go and all neovim tests to match.
Break the resulting neovim→theming import cycle (theming previously
imported neovim for WriteChadrc) by inverting the dependency:
theming exposes a ChadrcWriter function hook, and neovim registers
its WriteChadrc into it via package init. The theming test stubs
ChadrcWriter directly to exercise the chadrc-rewrite branch without
pulling neovim in and re-creating the cycle.
Delete the now-obsolete TestBuiltinThemesCarryNvChadName / TestThemeByID*
tests in internal/tui/state_test.go — their coverage lives in the
theming package's own tests.
2026-04-14 13:35:10 +02:00
MDietermann
12c502d48a
feat(theming): add catppuccin, dracula, nord, tokyonight themes
2026-04-14 13:25:58 +02:00
MDietermann
770bdcf3a2
feat(theming): integrate NvChad chadrc rewrite into Apply
2026-04-14 13:14:47 +02:00
MDietermann
4fa580f226
feat(theming): apply updates overlay theme_overrides.__active
2026-04-14 13:11:34 +02:00
MDietermann
b422402ffc
feat(theming): apply writes four tool configs to $HOME
2026-04-14 13:07:08 +02:00
MDietermann
b628898c6d
feat(theming): add theme discovery with gruvbox assets
2026-04-14 12:56:09 +02:00
MDietermann
fcbd2201b3
fix(renode): pin wokwi-cli to v0.26.1 (v0.28.1 does not exist)
2026-04-14 12:19:32 +02:00
MDietermann
66f02edfb2
feat(modules): port renode module (AUR + arduino-sim + wokwi-cli) to Go
2026-04-14 12:13:42 +02:00
MDietermann
daa20b1dca
fix(neovim): write mappings.lua to lua/mappings.lua per NvChad convention
2026-04-14 10:09:26 +02:00
MDietermann
8677a1b950
feat(modules): port neovim module (NvChad + Archduino Lua assets) to Go
2026-04-14 10:08:06 +02:00
MDietermann
e2637bc093
feat(config): add Neovim and Renode typed inputs
2026-04-14 10:01:40 +02:00
MDietermann
e830e4dfda
feat(tui): add NvChadTheme field and ThemeByID helper
2026-04-14 09:58:04 +02:00
MDietermann
adfc9232ac
feat(platform): add WriteUserFile atomic user-space writer
2026-04-14 09:53:03 +02:00
MDietermann
7914b7ef51
fix(installer): replace orphaned neofetch with fastfetch, surface stderr on Run failure
...
- neofetch was removed from Arch's official repos; fastfetch is the maintained replacement.
- ExecRunner.Run previously discarded stderr, so any 'sudo pacman' failure surfaced only as 'exit status 1'. Now the returned error includes the captured stderr (matching what Output already did).
2026-04-14 09:27:09 +02:00
MDietermann
7de9d6c72c
feat(modules): port shellconfig module to Go
2026-04-14 09:10:16 +02:00
MDietermann
99db34d70f
feat(modules): port arduino-cli module to Go
2026-04-14 09:07:44 +02:00
MDietermann
9650cd0c82
feat(modules): port themes module to Go
2026-04-14 09:03:49 +02:00
MDietermann
78ad784c7e
feat(modules): port zellij module to Go
2026-04-14 08:59:28 +02:00
MDietermann
4b3ce22491
feat(modules): port fonts module (AUR) to Go
2026-04-14 08:56:22 +02:00
MDietermann
1735f66bf0
feat(modules): port zsh module (zsh + oh-my-zsh + plugins) to Go
2026-04-14 08:52:27 +02:00
MDietermann
6dbfc41ce2
feat(modules): port yazi module to Go
2026-04-14 08:47:00 +02:00
MDietermann
f5a45c4be6
feat(modules): port starship module to Go
2026-04-14 08:47:00 +02:00
MDietermann
2b30b371e4
feat(modules): port gittools (lazygit) module to Go
2026-04-14 08:46:49 +02:00
MDietermann
cba883376a
feat(modules): port packages module to Go
2026-04-14 08:43:22 +02:00
MDietermann
ffd18c5382
feat(config): add typed module-input fields with defaults
2026-04-14 08:40:29 +02:00
MDietermann
fcc24b99b2
feat(platform): add AURHelper with yay bootstrap and install
2026-04-14 08:35:46 +02:00
MDietermann
1903217b5f
feat(platform): add GitClient helper with idempotent EnsureRepo
2026-04-14 08:32:04 +02:00
MDietermann
3f4223879b
feat(platform): add tar.gz and zip extract helpers with traversal guard
2026-04-14 08:29:42 +02:00