Add implicit state file support
Read implicit package list from /home/rick/.config/declpac or ~/.config/declpac
This commit is contained in:
@@ -31,6 +31,13 @@ func ReadPackages(stateFiles []string) (map[string]bool, error) {
|
||||
}
|
||||
}
|
||||
|
||||
implicitStateFile := getImplicitStateFile()
|
||||
if fileExists(implicitStateFile) {
|
||||
if err := readStateFile(implicitStateFile, packages); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
|
||||
if err := readStdin(packages); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
@@ -52,6 +59,19 @@ func expandPath(path string) string {
|
||||
return path
|
||||
}
|
||||
|
||||
func fileExists(path string) bool {
|
||||
_, err := os.Stat(path)
|
||||
return err == nil
|
||||
}
|
||||
|
||||
func getImplicitStateFile() string {
|
||||
cfgDir, _ := os.UserConfigDir()
|
||||
if cfgDir == "" {
|
||||
cfgDir = "~/.config"
|
||||
}
|
||||
return filepath.Join(cfgDir, "declpac")
|
||||
}
|
||||
|
||||
func normalizePackageName(name string) string {
|
||||
name = strings.TrimSpace(name)
|
||||
if name == "" || strings.HasPrefix(name, "#") {
|
||||
|
||||
Reference in New Issue
Block a user