diff --git a/cmd.go b/cmd.go index d603a77c..f3043d20 100644 --- a/cmd.go +++ b/cmd.go @@ -48,7 +48,8 @@ Permanent configuration options: Print specific options: -c --complete Used for completions - -d --defaultconfig Print current yay configuration + -d --defaultconfig Print default yay configuration + -g --config Print current yay configuration -n --numberupgrades Print number of updates -s --stats Display system package statistics -u --upgrades Print update list @@ -273,12 +274,11 @@ func sudoLoopBackground() { func sudoLoop() { for { - updateSudo() + updateSudo() time.Sleep(298 * time.Second) } } - func updateSudo() { for { cmd := exec.Command("sudo", "-v") @@ -398,7 +398,11 @@ func handleVersion() { func handlePrint() (err error) { switch { case cmdArgs.existsArg("d", "defaultconfig"): - fmt.Printf("%#v", config) + var tmpConfig Configuration + defaultSettings(&tmpConfig) + fmt.Printf("%v", tmpConfig) + case cmdArgs.existsArg("g", "config"): + fmt.Printf("%v", config) case cmdArgs.existsArg("n", "numberupgrades"): err = printNumberOfUpdates() case cmdArgs.existsArg("u", "upgrades"): diff --git a/config.go b/config.go index 5f595d74..fde84f0d 100644 --- a/config.go +++ b/config.go @@ -1,6 +1,7 @@ package main import ( + "bytes" "encoding/json" "fmt" "os" @@ -194,3 +195,13 @@ func continueTask(s string, def string) (cont bool) { return true } + +func (config Configuration) String() string { + var buf bytes.Buffer + enc := json.NewEncoder(&buf) + enc.SetIndent("", "\t") + if err := enc.Encode(config); err != nil { + fmt.Println(err) + } + return buf.String() +} diff --git a/yay.8 b/yay.8 index d0a1e048..6bdd4e50 100644 --- a/yay.8 +++ b/yay.8 @@ -63,6 +63,11 @@ Remove unneeded dependencies\&. .SH "PRINT OPTIONS (APPLY TO -P AND --PRINT)" \fB\-d \-\-defaultconfig\fR .RS 4 +Print default yay configuration\&. +.RE +.PP +\fB\-g \-\-config\fR +.RS 4 Print current yay configuration\&. .RE .PP