This file is indexed.

/usr/lib/python2.7/dist-packages/xapp/os.py is in python-xapp 1.0.1-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
from __future__ import absolute_import

import os
import psutil
import subprocess

### SESSION DETECTION

SESSION_CINNAMON = "Cinnamon"
SESSION_MATE = "MATE"
SESSION_XFCE = "XFCE"
SESSION_KDE = "KDE"
SESSION_GNOME = "GNOME"
SESSION_UNKNOWN = ""

def get_current_desktop():

    session = os.getenv("XDG_CURRENT_DESKTOP", SESSION_UNKNOWN)

    for name in (SESSION_CINNAMON, SESSION_MATE, SESSION_XFCE, SESSION_KDE):
        if session.lower() == name.lower():
            return name

    if session == "X-Cinnamon":
        return SESSION_CINNAMON

    return SESSION_UNKNOWN

def is_desktop_cinnamon():
    return get_current_desktop() == SESSION_CINNAMON

def is_desktop_mate():
    return get_current_desktop() == SESSION_MATE

def is_desktop_xfce():
    return get_current_desktop() == SESSION_XFCE

def is_desktop_kde():
    return get_current_desktop() == SESSION_KDE

def is_desktop_gnome():
    return get_current_desktop() == SESSION_GNOME

def is_live_session():
    is_live_session = False
    if os.path.exists("/proc/cmdline"):
        cmdline = subprocess.check_output("cat /proc/cmdline", shell = True).decode("utf-8")
        for keyword in ["boot=casper", "boot=live"]:
            if keyword in cmdline:
                is_live_session = True
                break
    return is_live_session

def is_guest_session():
    home_path = os.path.expanduser("~")
    if "/tmp/guest" in home_path:
        return True
    else:
        return False

### PROCESS DETECTION

def is_process_running(process_name):
    for pid in psutil.pids():
        p = psutil.Process(pid)
        if p.name() == process_name:
            return True
    return False

### POLKIT SUPPORT

def is_polkit_running():

    # Check that pkexec is present
    if not os.path.exists("/usr/bin/pkexec"):
        return False

    # Check that the polkit agent is running
    if is_desktop_kde() and is_process_running("polkit-kde-authentication-agent-1"):
        return True
    if is_desktop_mate() and is_process_running("polkit-mate-authentication-agent-1"):
        return True
    elif is_process_running("polkit-gnome-authentication-agent-1"):
        return True
    elif is_process_running("polkitd"):
        return True
    else:
        return False

def pkexec(command):
    if not isinstance(command, list):
        command = command.split(" ")

    subprocess.call(["/usr/bin/pkexec"] + command)

### Run as root

def run_with_admin_privs(command, message=None, icon=None, support_pkexec=False):
    if not isinstance(command, list):
        command = command.split(" ")

    if is_polkit_running() and support_pkexec:
        pkexec(command)
        return True
    elif os.path.exists("/usr/bin/gksu"):
        commands = ["gksu"]
        if message is not None:
            commands = commands + ["--message", "<b>%s</b>" % message]
        commands = commands + command
        subprocess.Popen(commands)
        return True
    elif os.path.exists("/usr/bin/kdesudo"):
        commands = ["kdesudo", "-d"]
        if icon is not None:
            commands = commands + ["-i", icon]
        if message is not None:
            commands = commands + ["--comment", "<b>%s</b>" % message]
        commands = commands + command
        subprocess.Popen(commands)
        return True
    # Finally use pkexec if we have nothing else - it will work, but the executed program
    # may not be properly localized.
    elif is_polkit_running():
        pkexec(command)
        return True
    else:
        return False