diff --git a/howdy-gtk/src/ui.glade b/howdy-gtk/src/ui.glade index 8d9ae8b..778db5c 100644 --- a/howdy-gtk/src/ui.glade +++ b/howdy-gtk/src/ui.glade @@ -276,6 +276,7 @@ + False @@ -295,6 +296,7 @@ + False diff --git a/howdy-gtk/src/window.py b/howdy-gtk/src/window.py index d2607ff..010bff9 100644 --- a/howdy-gtk/src/window.py +++ b/howdy-gtk/src/window.py @@ -5,6 +5,7 @@ import signal import sys import os import elevate +import subprocess # Make sure we have the libs we need gi.require_version("Gtk", "3.0") @@ -81,6 +82,16 @@ class MainWindow(gtk.Window): self.treeview.set_model(self.listmodel) + def on_about_link(self, label, uri): + """Open links on about page as a non-root user""" + try: + user = os.getlogin() + except Exception: + user = os.environ.get("SUDO_USER") + + status, output = subprocess.getstatusoutput(["sudo -u " + user + " timeout 10 xdg-open " + uri]) + return True + def exit(self, widget, context): """Cleanly exit""" gtk.main_quit()