PackageManager just because
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

32 lines
506 B

  1. package Package
  2. import (
  3. "errors"
  4. "fmt"
  5. "os"
  6. "PackageManager/Archive"
  7. "PackageManager/Variables"
  8. )
  9. func InstallPackage(pkgs []string) error {
  10. var (
  11. pkg string
  12. e error
  13. )
  14. for _, pkg = range pkgs {
  15. _, e = os.Stat(pkg)
  16. if os.IsNotExist(e) {
  17. return errors.New(fmt.Sprintf("Invalid package %s", pkg))
  18. }
  19. }
  20. for _, pkg = range pkgs {
  21. fmt.Printf("Installing %s...", pkg)
  22. e = Archive.UntarGzip(pkg, Variables.DestDir)
  23. fmt.Printf("%s successfully installed", pkg)
  24. }
  25. return nil
  26. }