package main

import (
	"fmt"
	"os"
	"os/exec"
	"runtime"
)

func isInstalled(name string) bool {
	var cmd *exec.Cmd

	// check for the operating system
	if runtime.GOOS == "windows" {
		// 'where' command is used on Windows to locate executables
		cmd = exec.Command("where.exe", name)
	} else {
		// 'command' is used on Unix systems
		cmd = exec.Command("/bin/sh", "-c", "command -v "+name)
	}

	if err := cmd.Run(); err != nil {
		return false
	}
	return true
}

func subExecute(program string, args ...string) ([]byte, error) {
	cmd := exec.Command(program, args...)
	cmd.Stdin = os.Stdin
	cmd.Stdout = os.Stdout
	cmd.Stderr = os.Stderr
	err := cmd.Run()
	if err != nil {
		fmt.Printf("%v\n", err)
	}
	return cmd.CombinedOutput()
}
