feat(cli): implement search argument
This commit is contained in:
parent
4c1e85018f
commit
8a14b72c5b
3 changed files with 97 additions and 2 deletions
21
osinfo.go
21
osinfo.go
|
|
@ -54,6 +54,7 @@ type OS struct {
|
|||
Version string
|
||||
PackageManager string
|
||||
InstallCommand string
|
||||
SearchCommand string // TODO: has to be implemented
|
||||
}
|
||||
|
||||
func parseOsRelease(osRelease string) *OS {
|
||||
|
|
@ -88,6 +89,10 @@ func parseOsRelease(osRelease string) *OS {
|
|||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
err = result.getSearchCommand()
|
||||
if err != nil {
|
||||
log.Fatal(err)
|
||||
}
|
||||
return &result
|
||||
}
|
||||
|
||||
|
|
@ -145,6 +150,22 @@ func (os *OS) getInstallCommand() error {
|
|||
}
|
||||
}
|
||||
|
||||
func (os *OS) getSearchCommand() error {
|
||||
switch os.PackageManager {
|
||||
case "apt":
|
||||
os.SearchCommand = "apt search"
|
||||
return nil
|
||||
case "pacman":
|
||||
os.SearchCommand = "pacman -Ss"
|
||||
return nil
|
||||
case "dnf":
|
||||
os.SearchCommand = "dnf search"
|
||||
return nil
|
||||
default:
|
||||
return fmt.Errorf("no install command found for package manager: %s", os.ID)
|
||||
}
|
||||
}
|
||||
|
||||
func installBuildEssentials(os *OS, sudoPassword string) error {
|
||||
var command string
|
||||
switch os.PackageManager {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue