diff --git a/Client/Database/Init.go b/Client/Database/Init.go index a06937b..b517637 100644 --- a/Client/Database/Init.go +++ b/Client/Database/Init.go @@ -2,6 +2,7 @@ package Database import ( "database/sql" + "os" "path/filepath" "time" @@ -16,7 +17,18 @@ var ( FsDB *bolt.DB ) -func init() { +func InitConfigDir() error { + var ( + e error + ) + _, e = os.Stat(Variables.ConfigDir) + if os.IsNotExist(e) { + os.MkdirAll(Variables.ConfigDir, 0644) + } + return e +} + +func InitDatabaseFiles() error { var e error // Initialise sqlite3 database for package versioning DB, e = sql.Open( @@ -24,7 +36,7 @@ func init() { filepath.Join(Variables.ConfigDir, Variables.DatabaseName), ) if e != nil { - panic(e) + return e } // Initialise bolt db for filesystem hashing @@ -34,6 +46,17 @@ func init() { &bolt.Options{ Timeout: 5 * time.Second, }) + return e + +} + +func init() { + var e error + e = InitConfigDir() + if e != nil { + panic(e) + } + e = InitDatabaseFiles() if e != nil { panic(e) } diff --git a/Client/main.go b/Client/main.go index 204dd58..a23bc76 100644 --- a/Client/main.go +++ b/Client/main.go @@ -13,17 +13,6 @@ import ( "PackageManager/Variables" ) -func InitConfigDir() error { - var ( - e error - ) - _, e = os.Stat(Variables.ConfigDir) - if os.IsNotExist(e) { - os.MkdirAll(Variables.ConfigDir, 0644) - } - return e -} - func HelpMsg() { var helpMsg string helpMsg = `Usage of %s: @@ -89,12 +78,6 @@ func main() { return } - e = InitConfigDir() - if e != nil { - fmt.Println(Color.Fatal(e)) - return - } - e = Database.InitDB() if e != nil { panic(e)