mirror of https://github.com/ollama/ollama.git
				
				
				
			
		
			
				
	
	
		
			27 lines
		
	
	
		
			598 B
		
	
	
	
		
			Go
		
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			598 B
		
	
	
	
		
			Go
		
	
	
	
package server
 | 
						|
 | 
						|
import (
 | 
						|
	"os"
 | 
						|
	"path/filepath"
 | 
						|
	"strings"
 | 
						|
)
 | 
						|
 | 
						|
// fixBlobs walks the provided dir and replaces (":") to ("-") in the file
 | 
						|
// prefix. (e.g. sha256:1234 -> sha256-1234)
 | 
						|
func fixBlobs(dir string) error {
 | 
						|
	return filepath.Walk(dir, func(path string, info os.FileInfo, err error) error {
 | 
						|
		if err != nil {
 | 
						|
			return err
 | 
						|
		}
 | 
						|
		baseName := filepath.Base(path)
 | 
						|
		typ, sha, ok := strings.Cut(baseName, ":")
 | 
						|
		if ok && typ == "sha256" {
 | 
						|
			newPath := filepath.Join(filepath.Dir(path), typ+"-"+sha)
 | 
						|
			if err := os.Rename(path, newPath); err != nil {
 | 
						|
				return err
 | 
						|
			}
 | 
						|
		}
 | 
						|
		return nil
 | 
						|
	})
 | 
						|
}
 |