🏷 feat(types): Define YAML file structure
This commit is contained in:
parent
7d91974c56
commit
cddb305fd3
1 changed files with 58 additions and 11 deletions
69
main.go
69
main.go
|
@ -24,21 +24,68 @@ func initialModel() menu {
|
|||
}
|
||||
}
|
||||
|
||||
type SoftwareDef struct {
|
||||
Bin *string `yaml:"_bin"`
|
||||
Desc string `yaml:"_desc"`
|
||||
Docs *string `yaml:"_docs"`
|
||||
Github *string `yaml:"_github"`
|
||||
Home *string `yaml:"_home"`
|
||||
Name string `yaml:"_name"`
|
||||
Apk *string `yaml:"apk"`
|
||||
Appimage *string `yaml:"appimage"`
|
||||
type YamlStructure struct {
|
||||
InstallerPreferences InstallerPreferences `yaml:"installerPreferences"`
|
||||
SoftwarePackages SoftwarePackages `yaml:"softwarePackages"`
|
||||
}
|
||||
|
||||
type InstallerPreferences struct {
|
||||
Apt []string `yaml:"apt"`
|
||||
Darwin []string `yaml:"darwin"`
|
||||
Dnf []string `yaml:"dnf"`
|
||||
Freebsd []string `yaml:"freebsd"`
|
||||
Pacman []string `yaml:"pacman"`
|
||||
Ubuntu []string `yaml:"ubuntu"`
|
||||
Windows []string `yaml:"windows"`
|
||||
Zypper []string `yaml:"zypper"`
|
||||
}
|
||||
|
||||
type SoftwarePackages map[string]SoftwareDef
|
||||
|
||||
type YamlStructure struct {
|
||||
SoftwarePackages SoftwarePackages `yaml:"softwarePackages"`
|
||||
type SoftwareDef struct {
|
||||
Bin *string `yaml:"_bin"`
|
||||
Desc string `yaml:"_desc"`
|
||||
Deps *[]string `yaml:"_deps"`
|
||||
Docs *string `yaml:"_docs"`
|
||||
Github *string `yaml:"_github"`
|
||||
Home *string `yaml:"_home"`
|
||||
Name string `yaml:"_name"`
|
||||
Apk *string `yaml:"apk"`
|
||||
Appimage *string `yaml:"appimage"`
|
||||
Basher *string `yaml:"basher"`
|
||||
Binary *osNames `yaml:"binary"`
|
||||
Bpkg *string `yaml:"bpkg"`
|
||||
Brew *string `yaml:"brew"`
|
||||
Cargo *string `yaml:"cargo"`
|
||||
Cask *string `yaml:"cask"`
|
||||
Crew *string `yaml:"crew"`
|
||||
Choco *string `yaml:"choco"`
|
||||
Dnf *string `yaml:"dnf"`
|
||||
Flatpak *string `yaml:"flatpak"`
|
||||
Gem *string `yaml:"gem"`
|
||||
Go *string `yaml:"go"`
|
||||
Krew *string `yaml:"krew"`
|
||||
Nix *string `yaml:"nix"`
|
||||
Npm *string `yaml:"npm"`
|
||||
Pacman *string `yaml:"pacman"`
|
||||
Pipx *string `yaml:"pipx"`
|
||||
PkgFreebsd *string `yaml:"pkg-freebsd"`
|
||||
PkgTermux *string `yaml:"pkg-termux"`
|
||||
Port *string `yaml:"port"`
|
||||
Scoop *string `yaml:"scoop"`
|
||||
Script *string `yaml:"string"`
|
||||
Snap *string `yaml:"snap"`
|
||||
Whalebrew *string `yaml:"whalebrew"`
|
||||
Winget *string `yaml:"winget"`
|
||||
Xbps *string `yaml:"xbps"`
|
||||
Yay *string `yaml:"yay"`
|
||||
Zypper *string `yaml:"zypper"`
|
||||
}
|
||||
|
||||
type osNames struct {
|
||||
Darwin *string `yaml:"darwin"`
|
||||
Linux *string `yaml:"linux"`
|
||||
Windows *string `yaml:"windows"`
|
||||
}
|
||||
|
||||
type yamlMsg YamlStructure
|
||||
|
|
Loading…
Reference in a new issue