AllPac/pkg/packagemanager/updater_utils.go

32 lines
820 B
Go
Raw Normal View History

package packagemanager
import (
"fmt"
)
// UpdatePackageByName updates a specific package by its name
func UpdatePackageByName(packageName string) error {
pkgList, err := ReadPackageList()
if err != nil {
return fmt.Errorf("error reading package list: %v", err)
}
pkgInfo, exists := pkgList[packageName]
if !exists {
return fmt.Errorf("package %s not found in package list", packageName)
}
switch pkgInfo.Source {
case "pacman":
return UpdatePacmanPackages(packageName)
case "aur":
return UpdateAURPackages(packageName)
case "snap":
return UpdateSnapPackages(packageName)
case "flatpak":
return UpdateFlatpakPackages(packageName)
default:
return fmt.Errorf("unknown source for package %s", packageName)
}
}