Skip to content

Commit

Permalink
Fixed shims for user context #164
Browse files Browse the repository at this point in the history
  • Loading branch information
nicholasdille committed Jan 15, 2024
1 parent 39a17d4 commit 2895fe7
Showing 1 changed file with 18 additions and 2 deletions.
20 changes: 18 additions & 2 deletions cmd/uniget/postinstall.go
Original file line number Diff line number Diff line change
Expand Up @@ -106,9 +106,14 @@ func postinstall() error {

func installProfileDShim() error {
profileDShimFile := profileDDirectory + "/uniget-profile.d.sh"
profileDScript := strings.Replace(postinstallProfileDScript, "${target}", "/"+viper.GetString("target"), -1)

if viper.GetBool("user") {
profileDShimFile = viper.GetString("prefix") + "/.config/uniget/profile.d-shim.sh"
profileDScript = strings.Replace(postinstallProfileDScript, "${target}", viper.GetString("prefix")+"/"+viper.GetString("target"), -1)
}

if directoryIsWritable(profileDShimFile) {
profileDScript := strings.Replace(postinstallProfileDScript, "${target}", "/"+viper.GetString("target"), -1)
err := os.WriteFile(
profileDShimFile,
[]byte(profileDScript),
Expand All @@ -124,9 +129,20 @@ func installProfileDShim() error {

func installCompletionShim() error {
completionShimFile := profileDDirectory + "/uniget-completion.sh"
completionScript := strings.Replace(postinstallCompletionScript, "${target}", "/"+viper.GetString("target"), -1)

if viper.GetBool("user") {
dataDirectory := ".local/share"
if os.Getenv("XDG_DATA_HOME") != "" {
if strings.HasPrefix(os.Getenv("XDG_DATA_HOME"), os.Getenv("HOME")) {
dataDirectory = strings.TrimPrefix(os.Getenv("XDG_DATA_HOME"), os.Getenv("HOME")+"/")
}
}
completionShimFile = viper.GetString("prefix") + dataDirectory + "/bash-completion/uniget-shim.sh"
completionScript = strings.Replace(postinstallCompletionScript, "${target}", viper.GetString("prefix")+"/.local", -1)
}

if directoryIsWritable(completionShimFile) {
completionScript := strings.Replace(postinstallCompletionScript, "${target}", "/"+viper.GetString("target"), -1)
err := os.WriteFile(
completionShimFile,
[]byte(completionScript),
Expand Down

0 comments on commit 2895fe7

Please sign in to comment.