mirror of
https://github.com/go-shiori/shiori.git
synced 2025-10-05 19:25:53 +08:00
Add path generator
This commit is contained in:
parent
6eb8c749a5
commit
106266e87d
3 changed files with 39 additions and 0 deletions
1
go.mod
1
go.mod
|
@ -15,6 +15,7 @@ require (
|
||||||
github.com/mattn/go-colorable v0.1.1 // indirect
|
github.com/mattn/go-colorable v0.1.1 // indirect
|
||||||
github.com/mattn/go-isatty v0.0.7 // indirect
|
github.com/mattn/go-isatty v0.0.7 // indirect
|
||||||
github.com/mattn/go-sqlite3 v1.10.0
|
github.com/mattn/go-sqlite3 v1.10.0
|
||||||
|
github.com/muesli/go-app-paths v0.0.0-20181030220709-913f7f7ac60f
|
||||||
github.com/patrickmn/go-cache v2.1.0+incompatible
|
github.com/patrickmn/go-cache v2.1.0+incompatible
|
||||||
github.com/shurcooL/httpfs v0.0.0-20181222201310-74dc9339e414 // indirect
|
github.com/shurcooL/httpfs v0.0.0-20181222201310-74dc9339e414 // indirect
|
||||||
github.com/shurcooL/vfsgen v0.0.0-20181202132449-6a9ea43bcacd
|
github.com/shurcooL/vfsgen v0.0.0-20181202132449-6a9ea43bcacd
|
||||||
|
|
3
go.sum
3
go.sum
|
@ -50,8 +50,11 @@ github.com/mattn/go-sqlite3 v1.9.0 h1:pDRiWfl+++eC2FEFRy6jXmQlvp4Yh3z1MJKg4UeYM/
|
||||||
github.com/mattn/go-sqlite3 v1.9.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc=
|
github.com/mattn/go-sqlite3 v1.9.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc=
|
||||||
github.com/mattn/go-sqlite3 v1.10.0 h1:jbhqpg7tQe4SupckyijYiy0mJJ/pRyHvXf7JdWK860o=
|
github.com/mattn/go-sqlite3 v1.10.0 h1:jbhqpg7tQe4SupckyijYiy0mJJ/pRyHvXf7JdWK860o=
|
||||||
github.com/mattn/go-sqlite3 v1.10.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc=
|
github.com/mattn/go-sqlite3 v1.10.0/go.mod h1:FPy6KqzDD04eiIsT53CuJW3U88zkxoIYsOqkbpncsNc=
|
||||||
|
github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y=
|
||||||
github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0=
|
github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0=
|
||||||
github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
|
github.com/mitchellh/mapstructure v1.1.2/go.mod h1:FVVH3fgwuzCH5S8UJGiWEs2h04kUh9fWfEaFds41c1Y=
|
||||||
|
github.com/muesli/go-app-paths v0.0.0-20181030220709-913f7f7ac60f h1:qC86+y8MoTDwlkAeS4p8fuo9nzKtZV/Gg9Nbqeu1+LM=
|
||||||
|
github.com/muesli/go-app-paths v0.0.0-20181030220709-913f7f7ac60f/go.mod h1:YIG7FlQLGglsbGA+CX6/boYl9aNdoQXfx+ZtACJCMug=
|
||||||
github.com/patrickmn/go-cache v2.1.0+incompatible h1:HRMgzkcYKYpi3C8ajMPV8OFXaaRUnok+kx1WdO15EQc=
|
github.com/patrickmn/go-cache v2.1.0+incompatible h1:HRMgzkcYKYpi3C8ajMPV8OFXaaRUnok+kx1WdO15EQc=
|
||||||
github.com/patrickmn/go-cache v2.1.0+incompatible/go.mod h1:3Qf8kWWT7OJRJbdiICTKqZju1ZixQ/KpMGzzAfe6+WQ=
|
github.com/patrickmn/go-cache v2.1.0+incompatible/go.mod h1:3Qf8kWWT7OJRJbdiICTKqZju1ZixQ/KpMGzzAfe6+WQ=
|
||||||
github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic=
|
github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic=
|
||||||
|
|
35
path-generator.go
Normal file
35
path-generator.go
Normal file
|
@ -0,0 +1,35 @@
|
||||||
|
// +build !dev
|
||||||
|
|
||||||
|
package main
|
||||||
|
|
||||||
|
import (
|
||||||
|
"os"
|
||||||
|
|
||||||
|
apppaths "github.com/muesli/go-app-paths"
|
||||||
|
)
|
||||||
|
|
||||||
|
func init() {
|
||||||
|
// Get data directory
|
||||||
|
dataDir = getDataDirectory()
|
||||||
|
|
||||||
|
// Make sure directory exist
|
||||||
|
os.MkdirAll(dataDir, os.ModePerm)
|
||||||
|
}
|
||||||
|
|
||||||
|
func getDataDirectory() string {
|
||||||
|
// Try to look at environment variables
|
||||||
|
dataDir, found := os.LookupEnv("ENV_SHIORI_DIR")
|
||||||
|
if found {
|
||||||
|
return dataDir
|
||||||
|
}
|
||||||
|
|
||||||
|
// Try to use platform specific app path
|
||||||
|
userScope := apppaths.NewScope(apppaths.User, "shiori", "shiori")
|
||||||
|
dataDir, err := userScope.DataDir()
|
||||||
|
if err == nil {
|
||||||
|
return dataDir
|
||||||
|
}
|
||||||
|
|
||||||
|
// When all fail, use current working directory
|
||||||
|
return "."
|
||||||
|
}
|
Loading…
Add table
Reference in a new issue