cfg

package
v0.16.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 16, 2025 License: Apache-2.0, BSD-2-Clause-Views, BSD-3-Clause, + 4 more Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ConfigDir is the path to the directory storing the application configuration.
	ConfigDir string
	// DataDir is the path to the directory storing the application data.
	DataDir string
	// Version is the current version of the application. Set at compile time for production builds using ldflags (see tasks in the /tasks/build directory).
	Version = "development"
)
View Source
var UpdatePolicyEnum = []struct {
	Value  UpdatePolicyType
	TSName string
}{
	{UpdatePolicyAutomatic, "AUTOMATIC"},
	{UpdatePolicyPrompt, "PROMPT"},
	{UpdatePolicyDisabled, "DISABLED"},
}

Functions

func GetCacheDir added in v0.15.0

func GetCacheDir() (string, error)

Types

type Config

type Config struct {
	sync.RWMutex

	Filter struct {
		FilterLists []filter.List `json:"filterLists"`
		// Deprecated: use Rules.
		MyRules []string `json:"myRules"`
		Rules   []string `json:"rules"`
	} `json:"filter"`
	Certmanager struct {
		CAInstalled bool `json:"caInstalled"`
	} `json:"certmanager"`
	Proxy struct {
		Port         int      `json:"port"`
		IgnoredHosts []string `json:"ignoredHosts"`
		PACPort      int      `json:"pacPort"`
	} `json:"proxy"`
	UpdatePolicy UpdatePolicyType `json:"updatePolicy"`

	Locale string `json:"locale"`
	// contains filtered or unexported fields
}

Config stores and manages the configuration for the application. Although all fields are public, this is only for use by the JSON marshaller. All access to the Config should be done through the exported methods.

func NewConfig

func NewConfig() (*Config, error)

func (*Config) AddFilterList

func (c *Config) AddFilterList(list filter.List) string

AddFilterList adds a new filter list to the list of enabled filter lists.

func (*Config) AddFilterLists

func (c *Config) AddFilterLists(lists []filter.List) error

func (*Config) ExportDebugData added in v0.11.2

func (c *Config) ExportDebugData() (string, error)

func (*Config) GetCAInstalled

func (c *Config) GetCAInstalled() bool

GetCAInstalled returns whether the CA is installed.

func (*Config) GetFilterLists

func (c *Config) GetFilterLists() []filter.List

GetFilterLists returns the list of enabled filter lists.

func (*Config) GetFilterListsByLocales added in v0.13.0

func (c *Config) GetFilterListsByLocales(searchLocales []string) []filter.List

func (*Config) GetFirstLaunch added in v0.13.0

func (c *Config) GetFirstLaunch() bool

func (*Config) GetIgnoredHosts

func (c *Config) GetIgnoredHosts() []string

GetIgnoredHosts returns the list of ignored hosts.

func (*Config) GetLocale

func (c *Config) GetLocale() string

func (*Config) GetPACPort

func (c *Config) GetPACPort() int

func (*Config) GetPort

func (c *Config) GetPort() int

GetPort returns the port the proxy is set to listen on.

func (*Config) GetRules added in v0.16.0

func (c *Config) GetRules() []string

func (*Config) GetTargetTypeFilterLists

func (c *Config) GetTargetTypeFilterLists(targetType filter.ListType) []filter.List

GetTargetTypeFilterLists returns the list of filter lists with particular type.

func (*Config) GetUpdatePolicy

func (c *Config) GetUpdatePolicy() UpdatePolicyType

func (*Config) GetVersion

func (c *Config) GetVersion() string

func (*Config) RemoveFilterList

func (c *Config) RemoveFilterList(url string) string

RemoveFilterList removes a filter list from the list of enabled filter lists.

func (*Config) RunMigrations

func (c *Config) RunMigrations()

RunMigrations runs the version-to-version migrations.

func (*Config) Save

func (c *Config) Save() error

Save saves the config to disk. It is not thread-safe, and should only be called if the caller has a lock on the config.

func (*Config) SetCAInstalled

func (c *Config) SetCAInstalled(caInstalled bool)

SetCAInstalled sets whether the CA is installed.

func (*Config) SetIgnoredHosts

func (c *Config) SetIgnoredHosts(hosts []string) error

SetIgnoredHosts sets the list of ignored hosts.

func (*Config) SetLocale

func (c *Config) SetLocale(l string)

func (*Config) SetPort

func (c *Config) SetPort(port int) string

SetPort sets the port the proxy is set to listen on.

func (*Config) SetRules added in v0.16.0

func (c *Config) SetRules(rules []string) error

func (*Config) SetUpdatePolicy

func (c *Config) SetUpdatePolicy(p UpdatePolicyType)

func (*Config) ToggleFilterList

func (c *Config) ToggleFilterList(url string, enabled bool) string

ToggleFilterList toggles the enabled state of a filter list.

type DebugData added in v0.11.2

type DebugData struct {
	EnabledFilterListURLs []string `json:"enabledFilterListURLs"`
	Rules                 []string `json:"rules"`
	Platform              string   `json:"platform"`
	Architecture          string   `json:"architecture"`
	Version               string   `json:"version"`
}

type UpdatePolicyType

type UpdatePolicyType string
const (
	UpdatePolicyAutomatic UpdatePolicyType = "automatic"
	UpdatePolicyPrompt    UpdatePolicyType = "prompt"
	UpdatePolicyDisabled  UpdatePolicyType = "disabled"
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL