Рейтинг:0

Установите настройку прокси-сервера Gsetting в golang

флаг jp

У меня есть программа golang, работающая как корневой сервис и я пытаюсь установить параметр прокси с помощью команды gsettings в моей программе. Я могу прочитать эти настройки в моей программе golang, используя следующий код команды в golang:

u, erru:= user.Lookup("dimdimuser")
если ошибаюсь != ноль {
    вернуть "", fmt.Errorf ("неизвестная информация о пользователе")
}
uid, ошибка = strconv.ParseInt(u.Uid, 10, 32)
gid, err = strconv.ParseInt(u.Gid, 10, 32)
cmd := exec.Command("/usr/bin/gsettings", "get", "org.gnome.system.proxy", "autoconfig-url") 
cmd.Stdout = &out
cmd.Stderr = &stderr
cmd.SysProcAttr = &syscall.SysProcAttr{}
cmd.SysProcAttr.Credential = &syscall.Credential{Uid: uint32(uid), Gid: uint32(gid)}
ошибка = cmd.Выполнить()
если ошибка != ноль {
    
    return "", fmt.Errorf("Ошибка '/usr/bin/gsettings' %s %s ", getOrSet, option)
}


вернуть out.String(), ноль 

но когда я пытаюсь установить эти настройки, команда не сообщает об ошибке, но настройки не меняются. вот код, который я пытаюсь установить autoconfig-url:

cmd := exec.Command("/usr/bin/gsettings", "set", "org.gnome.system.proxy", "autoconfig-url", "HTTP://localhost/dimdimproxy") 
cmd.Stdout = &out
cmd.Stderr = &stderr
cmd.SysProcAttr = &syscall.SysProcAttr{}
cmd.SysProcAttr.Credential = &syscall.Credential{Uid: uint32(uid), Gid: uint32(gid)}
ошибка = cmd.Выполнить()
если ошибка != ноль {
    
    вернуть "", fmt.Errorf ("Ошибка")
}

вернуть out.String(), ноль 

Я попытался использовать dbus-launch, который изменяет настройку, если я пытаюсь получить данные из своей программы или на другой вкладке терминала с правами локального пользователя. но пользовательский интерфейс gnome не отражается. а также системный браузер также не принимает изменения, сделанные следующей командой.

sudo -Hu dimdim dbus-launch gsettings set org.gnome.system.proxy autoconfig-url htt://localhost/dimdimproxy

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.