Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
authorDaniel Narvaez <dwnarvaez@gmail.com>2012-06-15 20:47:18 (GMT)
committer Daniel Narvaez <dwnarvaez@gmail.com>2012-06-15 20:47:18 (GMT)
commit13dca9c59da4fb811f422a9f60345e3b79dac7c9 (patch)
treefba57a0b3d074de4bd9486e9199302673244b7b7 /scripts
parent6e3cdf1b4855fd0c82ae9abcfcf91400e7341c45 (diff)
Run Xvfb properly
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/check-system17
1 files changed, 15 insertions, 2 deletions
diff --git a/scripts/check-system b/scripts/check-system
index 1469621..ba31063 100755
--- a/scripts/check-system
+++ b/scripts/check-system
@@ -172,15 +172,28 @@ for info in libs:
else:
missing_libs.append(info)
+xvfb_display = ":100"
+xvfb_proc = subprocess.Popen(args=["Xvfb", xvfb_display],
+ stdout=devnull,
+ stderr=subprocess.STDOUT)
+orig_display = os.environ.get("DISPLAY", None)
+os.environ["DISPLAY"] = xvfb_display
+
for info in imports:
- if subprocess.call(["Xvfb", ":100", "-ac",
- "python", "-c", info["import"]],
+ if subprocess.call(["python", "-c", info["import"]],
stdout=devnull, stderr=subprocess.STDOUT) == 1:
if distro in info["packages"]:
packages.append(info["packages"][distro])
else:
missing_libs.append(info)
+if orig_display:
+ os.environ["DISPLAY"] = xvfb_display
+else:
+ del os.environ["DISPLAY"]
+
+xvfb_proc.terminate()
+
if packages:
install_packages(packages)