Intial Commit.
This commit is contained in:
36
config/config.go
Normal file
36
config/config.go
Normal file
@@ -0,0 +1,36 @@
|
||||
package config
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"kattudden/newsboat-yt/utils"
|
||||
"path/filepath"
|
||||
)
|
||||
|
||||
|
||||
type Config struct {
|
||||
DatabaseDirectory string
|
||||
DatabaseFilename string
|
||||
DatabasePath string
|
||||
DownloadPath string
|
||||
}
|
||||
|
||||
|
||||
func New() (*Config, error) {
|
||||
databaseFileName := "db.sqlite"
|
||||
databaseDirectory := ".cache/newsboat-yt"
|
||||
downloadDirectory := "Videos/newsboat-yt"
|
||||
|
||||
userHomeDir, err := utils.GetCurrentUserHomeDir()
|
||||
if err != nil {
|
||||
fmt.Println(err)
|
||||
return nil, errors.New("failed to generate config!")
|
||||
}
|
||||
|
||||
return &Config {
|
||||
DatabaseDirectory: databaseDirectory,
|
||||
DatabaseFilename: databaseFileName,
|
||||
DatabasePath: filepath.Join(userHomeDir, databaseDirectory, databaseFileName),
|
||||
DownloadPath: filepath.Join(userHomeDir, downloadDirectory),
|
||||
}, nil
|
||||
}
|
||||
Reference in New Issue
Block a user