- Add SQLite database connection management with proper error handling - Implement schema for files, chunks, blobs, and snapshots tables - Create repository pattern for each database table - Add transaction support with proper rollback handling - Integrate database module with fx dependency injection - Make index path configurable via VAULTIK_INDEX_PATH env var - Add fatal error handling for database integrity issues - Update DESIGN.md to clarify file_chunks vs chunk_files distinction - Remove FinalHash from BlobInfo (blobs are content-addressable) - Add file metadata support (mtime, ctime, mode, uid, gid, symlinks)
31 lines
455 B
Go
31 lines
455 B
Go
package globals
|
|
|
|
import (
|
|
"time"
|
|
)
|
|
|
|
// these get populated from main() and copied into the Globals object.
|
|
var (
|
|
Appname string = "vaultik"
|
|
Version string = "dev"
|
|
Commit string = "unknown"
|
|
)
|
|
|
|
type Globals struct {
|
|
Appname string
|
|
Version string
|
|
Commit string
|
|
StartTime time.Time
|
|
}
|
|
|
|
func New() (*Globals, error) {
|
|
n := &Globals{
|
|
Appname: Appname,
|
|
Version: Version,
|
|
Commit: Commit,
|
|
StartTime: time.Now(),
|
|
}
|
|
|
|
return n, nil
|
|
}
|