summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /x11-misc/virtualgl/files
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'x11-misc/virtualgl/files')
-rw-r--r--x11-misc/virtualgl/files/vgl-helper.sh39
-rw-r--r--x11-misc/virtualgl/files/vgl.confd-r127
-rw-r--r--x11-misc/virtualgl/files/vgl.initd-r230
-rw-r--r--x11-misc/virtualgl/files/vgl.service13
4 files changed, 109 insertions, 0 deletions
diff --git a/x11-misc/virtualgl/files/vgl-helper.sh b/x11-misc/virtualgl/files/vgl-helper.sh
new file mode 100644
index 000000000000..805409284862
--- /dev/null
+++ b/x11-misc/virtualgl/files/vgl-helper.sh
@@ -0,0 +1,39 @@
+#!/bin/bash
+
+. /etc/vgl.conf
+
+vgl_start() {
+ truncate --size=0 /var/lib/VirtualGL/vgl_xauth_key
+
+ set_xauth
+ # Check if XAUTHORITY was set successfully, if not wait up to
+ # 60 seconds to allow X start.
+ tries=120
+ while [ ${tries} -gt 0 ]; do
+ tries=$((tries - 1))
+ if [ -z "${XAUTHORITY}" ]; then
+ sleep 0.5
+ set_xauth
+ continue
+ elif [ ! -e "${XAUTHORITY}" ]; then
+ sleep 0.5
+ # fall through, file not existing yet
+ fi
+ break
+ done
+
+ xauth -f /var/lib/VirtualGL/vgl_xauth_key add $DISPLAY . \
+ $(xauth -f $XAUTHORITY list | awk '{print $3;exit}') && \
+ chmod 644 /var/lib/VirtualGL/vgl_xauth_key
+}
+
+vgl_stop() {
+ rm -f /var/lib/VirtualGL/vgl_xauth_key
+}
+
+
+if [ "${1}" = "start" ]; then
+ vgl_start
+elif [ "${1}" = "stop" ]; then
+ vgl_stop
+fi
diff --git a/x11-misc/virtualgl/files/vgl.confd-r1 b/x11-misc/virtualgl/files/vgl.confd-r1
new file mode 100644
index 000000000000..d56414d41110
--- /dev/null
+++ b/x11-misc/virtualgl/files/vgl.confd-r1
@@ -0,0 +1,27 @@
+# /etc/conf.d/vgl
+
+DISPLAY="${DISPLAY:-:0}"
+
+# Make it a function in case we have to repeat it in init script later
+set_xauth() {
+
+# common case (works in almost all tested environments (except of lightdm)):
+XAUTHORITY="$(ps wwax -C X,Xorg -o args= --sort=-stime | grep -m 1 -o '\B[-]auth\s*/var\S*auth\S*' | cut -d ' ' -f 2)"
+
+# kdm and some others:
+# XAUTHORITY="$(find /var/run/xauth/A${DISPLAY}-*|tail -n1)"
+
+# gdm:
+# XAUTHORITY="/var/gdm/${DISPLAY}.Xauth"
+
+# slim:
+# XAUTHORITY="/var/run/slim.auth"
+
+# lightdm:
+# XAUTHORITY="/var/run/lightdm/root/${DISPLAY}"
+
+# lxdm:
+# XAUTHORITY="/var/run/lxdm/lxdm-${DISPLAY}.auth"
+
+}
+set_xauth
diff --git a/x11-misc/virtualgl/files/vgl.initd-r2 b/x11-misc/virtualgl/files/vgl.initd-r2
new file mode 100644
index 000000000000..7d5981f9b8e3
--- /dev/null
+++ b/x11-misc/virtualgl/files/vgl.initd-r2
@@ -0,0 +1,30 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+# TODO: description="*" and other OpenRC 0.9+ candies
+
+depend() {
+ need xdm
+ after sshd
+}
+
+start() {
+ ebegin "Starting VirtualGL"
+ truncate --size=0 /var/lib/VirtualGL/vgl_xauth_key
+
+ # Check if XAUTHORITY was set successfully, if not wait a bit and let X to start
+ [ -z "$XAUTHORITY" ] && sleep 3 && set_xauth
+ [ -e "$XAUTHORITY" ] || sleep 3
+ xauth -f /var/lib/VirtualGL/vgl_xauth_key add $DISPLAY . `xauth -f $XAUTHORITY list | awk '{print $3;exit}'` && \
+ chmod 644 /var/lib/VirtualGL/vgl_xauth_key
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping VirtualGL"
+ [ -f /var/lib/VirtualGL/vgl_xauth_key ] && \
+ rm /var/lib/VirtualGL/vgl_xauth_key
+ eend $?
+}
diff --git a/x11-misc/virtualgl/files/vgl.service b/x11-misc/virtualgl/files/vgl.service
new file mode 100644
index 000000000000..a001e8a1d2f1
--- /dev/null
+++ b/x11-misc/virtualgl/files/vgl.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=VirtualGL service
+After=display-manager.service
+
+[Service]
+RemainAfterExit=yes
+PIDFile=/var/run/named/named.pid
+ExecStart=/usr/libexec/vgl-helper.sh start
+ExecStop=/usr/libexec/vgl-helper.sh stop
+
+[Install]
+WantedBy=multi-user.target
+