Browse Source

Cache sudo user to avoid repeated env lookups

master
AI Bot 1 week ago committed by Riyyi
parent
commit
317d5f4be9
  1. 8
      pkg/pacman/sync/sync.go

8
pkg/pacman/sync/sync.go

@ -5,6 +5,7 @@ import (
"io" "io"
"os" "os"
"strings" "strings"
"sync"
"time" "time"
"github.com/Riyyi/declpac/pkg/fetch" "github.com/Riyyi/declpac/pkg/fetch"
@ -12,6 +13,9 @@ import (
"github.com/Riyyi/declpac/pkg/log" "github.com/Riyyi/declpac/pkg/log"
) )
var sudoUser string
var sudoUserOnce sync.Once
type Result struct { type Result struct {
Installed int Installed int
Removed int Removed int
@ -238,13 +242,15 @@ func resolveAndInstallDeps(f *fetch.Fetcher, aurInfo *aur.Package, logWriter io.
} }
func getSudoUser() string { func getSudoUser() string {
sudoUser := os.Getenv("SUDO_USER") sudoUserOnce.Do(func() {
sudoUser = os.Getenv("SUDO_USER")
if sudoUser == "" { if sudoUser == "" {
sudoUser = os.Getenv("USER") sudoUser = os.Getenv("USER")
if sudoUser == "" { if sudoUser == "" {
sudoUser = "root" sudoUser = "root"
} }
} }
})
return sudoUser return sudoUser
} }

Loading…
Cancel
Save