make config parent directies if they don't already exist

This commit is contained in:
andrzej 2024-11-04 16:42:53 +01:00
parent 0c50f6fa72
commit a4b75bb90d
1 changed files with 15 additions and 3 deletions

View File

@ -36,8 +36,8 @@ func (config *Config) load() error {
return err
}
configPath := homeDir + "/.config/gopaper/config.jsonc"
configRaw, err := os.ReadFile(configPath)
configDir := homeDir + "/.config/gopaper/"
configRaw, err := os.ReadFile(configDir)
if err != nil {
if !os.IsExist(err) {
defaultConfig := makeDefaultConfig()
@ -46,7 +46,19 @@ func (config *Config) load() error {
log.Println("could not encode default config!")
return err
}
file, err := os.Create(configPath)
//TODO: make parent directories if they don't exist
err = os.Mkdir(homeDir+".config", 755)
if err != nil && !os.IsExist(err) {
log.Println("could not create .config directory")
return err
}
err = os.Mkdir(configDir, 755)
if err != nil && !os.IsExist(err) {
log.Println("could not create .config/gopaper directory")
return err
}
file, err := os.Create(configDir + "config.jsonc")
defer file.Close()
if err != nil {
log.Println("could not create config file!")