diff --git a/internal/config/load.go b/internal/config/load.go index 44bcf8e3ce87953b9c3589cacaf2fe8a248e97aa..77f53356b1e529cb5592366e1f2f3a8d757a315f 100644 --- a/internal/config/load.go +++ b/internal/config/load.go @@ -17,7 +17,7 @@ import ( "github.com/charmbracelet/crush/internal/log" ) -const catwalkURL = "https://catwalk.charm.sh" +const defaultCatwalkURL = "https://catwalk.charm.sh" // LoadReader config via io.Reader. func LoadReader(fd io.Reader) (*Config, error) { diff --git a/internal/config/provider.go b/internal/config/provider.go index ba02f9d8e1bc0f2ec58c2ed3e736a87e1d7a614b..e1efc503cac556f529f390c63d7dde51870c729b 100644 --- a/internal/config/provider.go +++ b/internal/config/provider.go @@ -1,6 +1,7 @@ package config import ( + "cmp" "encoding/json" "fmt" "log/slog" @@ -74,6 +75,7 @@ func loadProvidersFromCache(path string) ([]catwalk.Provider, error) { } func Providers() ([]catwalk.Provider, error) { + catwalkURL := cmp.Or(os.Getenv("CATWALK_URL"), defaultCatwalkURL) client := catwalk.NewWithURL(catwalkURL) path := providerCacheFileData() return loadProvidersOnce(client, path)