|
@@ -14,36 +14,17 @@ import (
|
|
|
"github.com/spf13/cobra"
|
|
|
)
|
|
|
|
|
|
-func sockpath() string {
|
|
|
+func cacheDir() string {
|
|
|
home, err := os.UserHomeDir()
|
|
|
if err != nil {
|
|
|
panic(err)
|
|
|
}
|
|
|
|
|
|
- return path.Join(home, ".ollama", "ollama.sock")
|
|
|
-}
|
|
|
-
|
|
|
-func running() bool {
|
|
|
- // Set a timeout duration
|
|
|
- timeout := time.Second
|
|
|
- // Dial the unix socket
|
|
|
- conn, err := net.DialTimeout("unix", sockpath(), timeout)
|
|
|
- if err != nil {
|
|
|
- return false
|
|
|
- }
|
|
|
-
|
|
|
- if conn != nil {
|
|
|
- defer conn.Close()
|
|
|
- }
|
|
|
- return true
|
|
|
+ return path.Join(home, ".ollama")
|
|
|
}
|
|
|
|
|
|
func serve() error {
|
|
|
- sp := sockpath()
|
|
|
-
|
|
|
- if err := os.MkdirAll(path.Dir(sp), 0o700); err != nil {
|
|
|
- return err
|
|
|
- }
|
|
|
+ sp := path.Join(cacheDir(), "ollama.sock")
|
|
|
|
|
|
if err := os.RemoveAll(sp); err != nil {
|
|
|
return err
|
|
@@ -99,16 +80,20 @@ func NewCLI() *cobra.Command {
|
|
|
PersistentPreRun: func(cmd *cobra.Command, args []string) {
|
|
|
// Disable usage printing on errors
|
|
|
cmd.SilenceUsage = true
|
|
|
+ // create the models directory and it's parent
|
|
|
+ if err := os.MkdirAll(path.Join(cacheDir(), "models"), 0o700); err != nil {
|
|
|
+ panic(err)
|
|
|
+ }
|
|
|
},
|
|
|
}
|
|
|
|
|
|
cobra.EnableCommandSorting = false
|
|
|
|
|
|
runCmd := &cobra.Command{
|
|
|
- Use: "run MODEL",
|
|
|
+ Use: "run MODEL",
|
|
|
Short: "Run a model",
|
|
|
- Args: cobra.ExactArgs(1),
|
|
|
- RunE: func(cmd *cobra.Command,args []string) error {
|
|
|
+ Args: cobra.ExactArgs(1),
|
|
|
+ RunE: func(cmd *cobra.Command, args []string) error {
|
|
|
return nil
|
|
|
},
|
|
|
}
|