|
|
- package Package
-
- import (
- "PackageManager/Archive"
- "PackageManager/Color"
- "errors"
- "fmt"
- "os"
- )
-
- func UninstallPackage(pkgs []string) error {
- var (
- pkgFiles []string
- pkg string
- f string
- e error
- )
-
- for _, pkg = range pkgs {
- _, e = os.Stat(pkg)
- if os.IsNotExist(e) {
- return errors.New(fmt.Sprintf("Invalid package %s", pkg))
- }
- }
-
- for _, pkg = range pkgs {
- fmt.Printf(
- "Uninstalling %s...\n",
- pkg,
- )
-
- pkgFiles, e = Archive.GetPackageFilePaths(pkg)
- if e != nil {
- return e
- }
-
- for _, f = range pkgFiles {
- e = os.Remove(f)
- if e != nil {
- return e
- }
- }
-
- fmt.Printf(
- Color.Green("%s uninstalled\n"),
- pkg,
- )
- }
-
- return nil
- }
|