package Package
|
|
|
|
import (
|
|
"errors"
|
|
"fmt"
|
|
"os"
|
|
|
|
"PackageManager/Archive"
|
|
"PackageManager/Variables"
|
|
)
|
|
|
|
func InstallPackage(pkgs []string) error {
|
|
var (
|
|
pkg 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(
|
|
"Installing %s...\n",
|
|
pkg,
|
|
)
|
|
e = Archive.UntarGzip(pkg, Variables.RootDir)
|
|
fmt.Printf(
|
|
"%s successfully installed\n",
|
|
pkg,
|
|
)
|
|
}
|
|
|
|
return nil
|
|
}
|