From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp2 ([2001:41d0:2:c151::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id MWwBOKZ2RWARQAAA0tVLHw (envelope-from ) for ; Mon, 08 Mar 2021 00:58:14 +0000 Received: from aspmx2.migadu.com ([2001:41d0:2:c151::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp2 with LMTPS id KEc/M6Z2RWBHJgAAB5/wlQ (envelope-from ) for ; Mon, 08 Mar 2021 00:58:14 +0000 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx2.migadu.com (Postfix) with ESMTPS id 83E6C23AB2 for ; Mon, 8 Mar 2021 01:58:13 +0100 (CET) Received: from localhost ([::1]:56510 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lJ4Dr-00072B-F6 for larch@yhetil.org; Sun, 07 Mar 2021 19:58:11 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:34780) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lJ4Dj-00071k-Ro for bug-guix@gnu.org; Sun, 07 Mar 2021 19:58:03 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:58462) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lJ4Di-0005o5-Ba for bug-guix@gnu.org; Sun, 07 Mar 2021 19:58:03 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lJ4Di-00064J-8Y for bug-guix@gnu.org; Sun, 07 Mar 2021 19:58:02 -0500 X-Loop: help-debbugs@gnu.org Subject: bug#46998: wish: package xvfb-run Resent-From: "Dr. Arne Babenhauserheide" Original-Sender: "Debbugs-submit" Resent-CC: bug-guix@gnu.org Resent-Date: Mon, 08 Mar 2021 00:58:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 46998 X-GNU-PR-Package: guix X-GNU-PR-Keywords: To: 46998@debbugs.gnu.org X-Debbugs-Original-To: bug-guix@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.161516506923305 (code B ref -1); Mon, 08 Mar 2021 00:58:02 +0000 Received: (at submit) by debbugs.gnu.org; 8 Mar 2021 00:57:49 +0000 Received: from localhost ([127.0.0.1]:41775 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lJ4DU-00063o-59 for submit@debbugs.gnu.org; Sun, 07 Mar 2021 19:57:48 -0500 Received: from lists.gnu.org ([209.51.188.17]:58110) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lJ4DR-00063e-5K for submit@debbugs.gnu.org; Sun, 07 Mar 2021 19:57:46 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]:34722) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lJ4DQ-0006zV-Ro for bug-guix@gnu.org; Sun, 07 Mar 2021 19:57:44 -0500 Received: from mout.web.de ([212.227.15.4]:44939) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lJ4DN-0005iM-RE for bug-guix@gnu.org; Sun, 07 Mar 2021 19:57:44 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=web.de; s=dbaedf251592; t=1615165057; bh=NXzlPJxUlnbFBflXmjXngBhD9SuEHWUQxNzwR/aj1Q0=; h=X-UI-Sender-Class:From:To:Subject:Date; b=AwwxqFwxFvj5uu4hFhv2yVQSfZaiU8sAkwq1wjaCPRaAQ/oGCPVkJxtKCGXpEnejO UzbojiolAr0EBGXw9xgP6wmAn0EMO+eoC+srmLHUBrVLB8tOpDwnmeuPOcxaEbL83V C9B5LiE2wj58FC1pUsUisUUYX2nAffGCSIYweevM= X-UI-Sender-Class: c548c8c5-30a9-4db5-a2e7-cb6cb037b8f9 Received: from fluss ([84.149.81.26]) by smtp.web.de (mrweb005 [213.165.67.108]) with ESMTPSA (Nemesis) id 1MnX5F-1lzmxo2pOP-00j6hZ; Mon, 08 Mar 2021 01:57:37 +0100 From: "Dr. Arne Babenhauserheide" Date: Mon, 08 Mar 2021 01:57:33 +0100 Message-ID: <87h7lmfon6.fsf@web.de> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" X-Provags-ID: V03:K1:GOFMDyfp63aaa5hD5vpbrfEnw1W8GIHBV0kz/u0yg2y9bYszQu+ bfdSM3cWbF7xE4JHuQbSCx5+gq2zdYUBOmZrKTRx/PDNIoZqg9TPEti3ffMCUwOjQSfx5dc 21EwUbc1bSjQKxwCTLYuwRRfouPbw8t8+9B5hnieUzh1P3fDtFWObrpWlk7VrRKTaMWkjJ3 iz1Gdj0JvFAIainp4I8AQ== X-UI-Out-Filterresults: notjunk:1;V03:K0:YaUeUzvhgzQ=:ZxHwq131fGtbPwJY4CoBqI zC1qZtAHBtqb9qR14VleLYhhWLhKfuIY9DC2hweHucOARz4r6CEVXfs7pb8ewW4w7MV/VOGgA x7K64S2dIcxHUk51+i083SMo1YjalpGybcoL5XuylygPbJP1mUJ5Z+Isb3ycSmvbLrZyC7CXE RDKCvMc0/0qCGIg5JXZKyDQ7b70neUImX7ESjl8cluYI046hajUXgCiVcN5HvpchPhqlggLd9 v757a+gFAbhUq1h5/j5uj0HI52FWoAPs9/trI3hjbF3ibj5pDGHUiEmNX7E4a0/TDs48IxGIr XoiI/By6jhdZNCy4rFX6m6Y1y1fYSFz2IG5I2iiEo75qNDWkwj3DvGoL36wkkY6BBxFSlFVzy vJzgZM1JXsj/Tq6XSh1ao2uxCEMs6U+xUByOHDZUAjOklHjZIT62aEnmNIlqS63Da4GKhKtTj dWpHFI+deo4gQ2pt5bl/7rgHrHfZCDgWbVhNOC/F2Djy2U1QFCvkfNccAcfqzIfN8UvtKQbmB OvdPbbc3RcZXXEhT3Q0VFqblbdJSf4sne08gMA5zkUmnKC1FnpJL2H7rYHdRZuWVTl1GwMuDF nsY9p8FuMcqA7usokdHySuWPyeeEv6+2w/eWEkse3PtNpyBVIBUVnbF4eEyE8sWwukQiQyQjk XMr+Myjm1bzePUX9FKfzp6sfkqsiFlUgCkT2o/LzH2tGjXMzwOd35GjHDu2xPYxTUQWzZ+ozf S0vDEErfW1karb9IpBZHqIvwlboZB+pUOVigX6HsYUkfIsC05GoxSms7nsDNQsTlTUBSWW9XO to+VCNvbeH0yOVqZcrVI17CD/4iW6JQ+2WqGIIMctEWOigyIC7QIl7m+Q3x5cOuiAbJga7msR xGU83AVIM+r5IP1sTI2A== Received-SPF: pass client-ip=212.227.15.4; envelope-from=arne_bab@web.de; helo=mout.web.de X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-guix@gnu.org List-Id: Bug reports for GNU Guix List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-guix-bounces+larch=yhetil.org@gnu.org Sender: "bug-Guix" X-Migadu-Flow: FLOW_IN ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1615165094; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:resent-cc:resent-from:resent-sender: resent-message-id:list-id:list-help:list-unsubscribe:list-subscribe: list-post:dkim-signature; bh=D5PLUn7a01wXXt3YiCEAs6y3GBabaS0Bn1OMOsRd5+0=; b=nq66z9pOFhPareWkUAu2D+fHT92g7InRhiyJDPwlT/Qxdi3LMvUVZac//WXXnUEkhCJlSk F25f8wSV0l0k+jVkUOaicJLZt7Wypvv5fyAv00G0qvx+ccy9ptCbOfBXJMRqO47YiJQdCJ gKX3wgHgu/VmimrzkJc0ihY2CLzCC/FiNljM5+pYW5+ShswNMSvJDuKDUAPn7UwkM1T52W HYfkKSivn7IwF4iqWAWQR7MyeWa3FXZX+xjEFib9ZF41D0LBA8w2jq+o+za55qPRwdQaeZ QCpN/qJYMKb7eOMA0QVtyDkWzB3tAKJ4tu3LDMGZrYIrGSqztUet7AWZXbgReA== ARC-Seal: i=1; s=key1; d=yhetil.org; t=1615165094; a=rsa-sha256; cv=none; b=Y1HKtWbPm5N0Vv+h2tBVvVrg/yWtiGHbUVp6NG8EpEKvXm9Wzx8JeDhiiKMNY8I1576va4 pm6A9sgl2F4O554rfUpBxNkawZMZp1PNYM5jG+msbHvo86jjciDQE/D0+SRw0zXFJeShYL f0rivd3Rv7InB4+aYVKx2r2qSr1JAAL28ypv5UgWdKfwl4PczffqFfKDTIY/UAg1fTyQqb bWeB5YyRzg1CJBotMHY6Be546qVOV1YHyOZWNyYs+a0V1E1I+zIeIs+Bavxt0xrd7Etm3m goKOntoZ2oZnrJNnTDrc9FS0Q2ywQDqDyjBejDgWH+5BhKbY/6M8UeLyurwX9A== ARC-Authentication-Results: i=1; aspmx2.migadu.com; dkim=fail ("headers rsa verify failed") header.d=web.de header.s=dbaedf251592 header.b=AwwxqFwx; dmarc=fail reason="SPF not aligned (relaxed)" header.from=web.de (policy=none); spf=pass (aspmx2.migadu.com: domain of bug-guix-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=bug-guix-bounces@gnu.org X-Migadu-Spam-Score: -2.38 Authentication-Results: aspmx2.migadu.com; dkim=fail ("headers rsa verify failed") header.d=web.de header.s=dbaedf251592 header.b=AwwxqFwx; dmarc=fail reason="SPF not aligned (relaxed)" header.from=web.de (policy=none); spf=pass (aspmx2.migadu.com: domain of bug-guix-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=bug-guix-bounces@gnu.org X-Migadu-Queue-Id: 83E6C23AB2 X-Spam-Score: -2.38 X-Migadu-Scanner: scn0.migadu.com X-TUID: IoSvRC3ZUZBS --=-=-= Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable User-agent: mu4e 1.4.15; emacs 27.1 (emacs:30177): dbind-WARNING **: 01:46:31.849: Could not open X display http://deb.debian.org/debian/pool/main/x/xorg-server/xorg-server_1.20.10-3.= diff.gz +Usage: $PROGNAME [OPTION ...] COMMAND +Options: +DISPLAY=3D:$SERVERNUM XAUTHORITY=3D$AUTHFILE "$@" Dear Guix hackers, One of my main tools for running graphical programs as part of my build pipelines is xvfb-run. Since it is not packaged in Guix, I=E2=80=99ve resor= ted to manual workarounds, but these have annoying drawbacks: Xvfb :3 -screen 0 1024x768x16 & time DISPLAY=3D:3 HOME=3D/path/to/project/.= emacs.d emacs =E2=80=A6 I now get errors about the maximum number of clients reached, because the Xvfb does not get reaped after the build: Maximum number of clients reached Therefore I would ask whether it would be possible to package xvfb-run. It is provided as part of the patches of the xorg-package in Debian: The included xvfb-run and xvfb-run.1: =2D-- xorg-server-1.20.10.orig/debian/local/xvfb-run +++ xorg-server-1.20.10/debian/local/xvfb-run @@ -0,0 +1,191 @@ +#!/bin/sh + +# This script starts an instance of Xvfb, the "fake" X server, runs a comm= and +# with that server available, and kills the X server when done. The return +# value of the command becomes the return value of this script. +# +# If anyone is using this to build a Debian package, make sure the package +# Build-Depends on xvfb and xauth. + +set -e + +PROGNAME=3Dxvfb-run +SERVERNUM=3D99 +AUTHFILE=3D +ERRORFILE=3D/dev/null +XVFBARGS=3D"-screen 0 1280x1024x24" +LISTENTCP=3D"-nolisten tcp" +XAUTHPROTO=3D. + +# Query the terminal to establish a default number of columns to use for +# displaying messages to the user. This is used only as a fallback in the= event +# the COLUMNS variable is not set. ($COLUMNS can react to SIGWINCH while = the +# script is running, and this cannot, only being calculated once.) +DEFCOLUMNS=3D$(stty size 2>/dev/null | awk '{print $2}') || true +case "$DEFCOLUMNS" in + *[!0-9]*|'') DEFCOLUMNS=3D80 ;; +esac + +# Display a message, wrapping lines at the terminal width. +message () { + echo "$PROGNAME: $*" | fmt -t -w ${COLUMNS:-$DEFCOLUMNS} +} + +# Display an error message. +error () { + message "error: $*" >&2 +} + +# Display a usage message. +usage () { + if [ -n "$*" ]; then + message "usage error: $*" + fi + cat <>"$ERRORFILE" 2= >&1 + fi + if [ -n "$XVFB_RUN_TMPDIR" ]; then + if ! rm -r "$XVFB_RUN_TMPDIR"; then + error "problem while cleaning up temporary directory" + exit 5 + fi + fi + if [ -n "$XVFBPID" ]; then + kill "$XVFBPID" >>"$ERRORFILE" 2>&1 + fi +} + +# Parse the command line. +ARGS=3D$(getopt --options +ae:f:hn:lp:s:w: \ + --long auto-servernum,error-file:,auth-file:,help,server-num:,liste= n-tcp,xauth-protocol:,server-args:,wait: \ + --name "$PROGNAME" -- "$@") +GETOPT_STATUS=3D$? + +if [ $GETOPT_STATUS -ne 0 ]; then + error "internal error; getopt exited with status $GETOPT_STATUS" + exit 6 +fi + +eval set -- "$ARGS" + +while :; do + case "$1" in + -a|--auto-servernum) SERVERNUM=3D$(find_free_servernum); AUTONUM= =3D"yes" ;; + -e|--error-file) ERRORFILE=3D"$2"; shift ;; + -f|--auth-file) AUTHFILE=3D"$2"; shift ;; + -h|--help) SHOWHELP=3D"yes" ;; + -n|--server-num) SERVERNUM=3D"$2"; shift ;; + -l|--listen-tcp) LISTENTCP=3D"" ;; + -p|--xauth-protocol) XAUTHPROTO=3D"$2"; shift ;; + -s|--server-args) XVFBARGS=3D"$2"; shift ;; + -w|--wait) shift ;; + --) shift; break ;; + *) error "internal error; getopt permitted \"$1\" unexpectedly" + exit 6 + ;; + esac + shift +done + +if [ "$SHOWHELP" ]; then + usage + exit 0 +fi + +if [ -z "$*" ]; then + usage "need a command to run" >&2 + exit 2 +fi + +if ! command -v xauth >/dev/null; then + error "xauth command not found" + exit 3 +fi + +# tidy up after ourselves +trap clean_up EXIT + +# If the user did not specify an X authorization file to use, set up a tem= porary +# directory to house one. +if [ -z "$AUTHFILE" ]; then + XVFB_RUN_TMPDIR=3D"$(mktemp -d -t $PROGNAME.XXXXXX)" + AUTHFILE=3D"$XVFB_RUN_TMPDIR/Xauthority" + # Create empty file to avoid xauth warning + touch "$AUTHFILE" +fi + +# Start Xvfb. +MCOOKIE=3D$(mcookie) +tries=3D10 +while [ $tries -gt 0 ]; do + tries=3D$(( $tries - 1 )) + XAUTHORITY=3D$AUTHFILE xauth source - << EOF >>"$ERRORFILE" 2>&1 +add :$SERVERNUM $XAUTHPROTO $MCOOKIE +EOF + # handle SIGUSR1 so Xvfb knows to send a signal when it's ready to acc= ept + # connections + trap : USR1 + (trap '' USR1; exec Xvfb ":$SERVERNUM" $XVFBARGS $LISTENTCP -auth $AUT= HFILE >>"$ERRORFILE" 2>&1) & + XVFBPID=3D$! + + wait || : + if kill -0 $XVFBPID 2>/dev/null; then + break + elif [ -n "$AUTONUM" ]; then + # The display is in use so try another one (if '-a' was specified). + SERVERNUM=3D$((SERVERNUM + 1)) + SERVERNUM=3D$(find_free_servernum) + continue + fi + error "Xvfb failed to start" >&2 + XVFBPID=3D + exit 1 +done + +# Start the command and save its exit status. +set +e +RETVAL=3D$? +set -e + +# Return the executed command's exit status. +exit $RETVAL + +# vim:set ai et sts=3D4 sw=3D4 tw=3D80: =2D-- xorg-server-1.20.10.orig/debian/local/xvfb-run.1 +++ xorg-server-1.20.10/debian/local/xvfb-run.1 @@ -0,0 +1,275 @@ +.\" Copyright 1998-2004 Branden Robinson . +.\" +.\" This is free software; you may redistribute it and/or modify +.\" it under the terms of the GNU General Public License as +.\" published by the Free Software Foundation; either version 2, +.\" or (at your option) any later version. +.\" +.\" This is distributed in the hope that it will be useful, but +.\" WITHOUT ANY WARRANTY; without even the implied warranty of +.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +.\" GNU General Public License for more details. +.\" +.\" You should have received a copy of the GNU General Public License with +.\" the Debian operating system, in /usr/share/common-licenses/GPL; if +.\" not, write to the Free Software Foundation, Inc., 59 Temple Place, +.\" Suite 330, Boston, MA 02111-1307 USA +.\" +.\" We need the URL macro from groff's www macro package, but also want +.\" things to work all right for people who don't have it. So we define +.\" our own URL macro and let the www macro package override it if it's +.\" available. +.de URL +\\$2 \(laURL: \\$1 \(ra\\$3 +.. +.if \n[.g] .mso www.tmac +.TH xvfb\-run 1 "2004\-11\-12" "Debian Project" +.SH NAME +xvfb\-run \- run specified X client or command in a virtual X server envir= onment +.SH SYNOPSIS +.B xvfb\-run +[ +.I options +] +.I command +.SH DESCRIPTION +.B xvfb\-run +is a wrapper for the +.BR Xvfb (1x) +command which simplifies the task of running commands (typically an X +client, or a script containing a list of clients to be run) within a virtu= al +X server environment. +.PP +.B xvfb\-run +sets up an X authority file (or uses an existing user\-specified one), +writes a cookie to it (see +.BR xauth (1x)) +and then starts the +.B Xvfb +X server as a background process. +The process ID of +.B Xvfb +is stored for later use. +The specified +.I command +is then run using the X display corresponding to the +.B Xvfb +server +just started and the X authority file created earlier. +.PP +When the +.I command +exits, its status is saved, the +.B Xvfb +server is killed (using the process ID stored earlier), the X authority +cookie removed, and the authority file deleted (if the user did not specify +one to use). +.B xvfb\-run +then exits with the exit status of +.IR command . +.PP +.B xvfb\-run +requires the +.B xauth +command to function. +.SH OPTIONS +.TP +.B \-a\fR,\fB \-\-auto\-servernum +Try to get a free server number, starting at 99, or the argument to +.BR \-\-server\-num . +.TP +.BI \-e\ file \fR,\fB\ \-\-error\-file=3D file +Store output from +.B xauth +and +.B Xvfb +in +.IR file . +The default is +.IR /dev/null . +.TP +.BI \-f\ file \fR,\fB\ \-\-auth\-file=3D file +Store X authentication data in +.IR file . +By default, a temporary directory called +.IR xvfb\-run. PID +(where PID is the process ID of +.B xvfb\-run +itself) is created in the directory specified by the environment variable +.B TMPDIR +(or +.I /tmp +if that variable is null or unset), and the +.BR tempfile (1) +command is used to create a file in that temporary directory called +.IR Xauthority . +.TP +.B \-h\fR,\fB \-\-help +Display a usage message and exit. +.TP +.BI \-n\ servernumber \fR,\fB\ \-\-server\-num=3D servernumber +Use +.I servernumber +as the server number (but see the +.B \-a\fR,\fB \-\-auto\-servernum +option above). +The default is 99. +.TP +.B \-l\fR,\fB \-\-listen\-tcp +Enable TCP port listening in the X server. +For security reasons (to avoid denial\-of\-service attacks or exploits), +TCP port listening is disabled by default. +.TP +.BI \-p\ protocolname \fR,\fB\ \-\-xauth\-protocol=3D protocolname +Use +.I protocolname +as the X authority protocol to use. +The default is \(oq.\(cq, which +.B xauth +interprets as its own default protocol, which is MIT\-MAGIC\-COOKIE\-1. +.TP +.BI \-s\ arguments \fR,\fB\ \-\-server\-args=3D arguments +Pass +.I arguments +to the +.B Xvfb +server. +Be careful to quote any whitespace characters that may occur within +.I arguments +to prevent them from regarded as separators for +.BR xvfb\-run 's +own arguments. +Also, note that specification of \(oq\-nolisten tcp\(cq in +.I arguments +may override the function of +.BR xvfb\-run 's +own +.B \-l\fR,\fB \-\-listen\-tcp +option, and that specification of the server number (e.g., \(oq:1\(cq) may +be ignored because of the way the X server parses its argument list. +Use the +.B xvfb\-run +option +.BI \-n\ servernumber \fR,\fB\ \-\-server\-num=3D servernumber +to achieve the latter function. +The default is \(oq\-screen 0 1280x1024x24\(cq. +.TP +.BI \-w\ delay \fR,\fB\ \-\-wait=3D delay +Ignored for compatibility with earlier versions. +.SH ENVIRONMENT +.TP +.B COLUMNS +indicates the width of the terminal device in character cells. +This value is used for formatting diagnostic messages. +If not set, the terminal is queried using +.BR stty (1) +to determine its width. +If that fails, a value of \(oq80\(cq is assumed. +.TP +.B TMPDIR +specifies the directory in which to place +.BR xvfb\-run 's +temporary directory for storage of the X authority file; only used if the +.B \-f +or +.B \-\-auth\-file +options are not specified. +.SH "OUTPUT FILES" +.PP +Unless the +.B \-f +or +.B \-\-auth\-file +options are specified, a temporary +directory and file within it are created (and deleted) to store the X +authority cookies used by the +.B Xvfb +server and client(s) run under it. +See +.BR tempfile (1). +If \-f or \-\-auth\-file are used, then the specified X authority file is +only written to, not created or deleted (though +.B xauth +creates an authority file itself if told to use use that does not already +exist). +.PP +An error file with a user\-specified name is also created if the +.B \-e +or +.B \-\-error\-file +options are specified; see above. +.SH "EXIT STATUS" +.B xvfb\-run +uses its exit status as well as output to standard error to communicate +diagnostics. +The exit status of \(oq1\(cq is not used, and should be interpreted as fai= lure +of the specified command. +.TP +0 +.B xvfb\-run +only uses this exit status if the +.B \-h\fR,\fB \-\-help +option is given. +In all other situations, this may be interpreted as success of the specifi= ed +command. +.TP +2 +No command to run was specified. +.TP +3 +The +.B xauth +command is not available. +.TP +4 +The temporary directory that was going to be used already exists; since +.B xvfb\-run +produces a uniquely named directory, this may indicate an attempt by anoth= er +process on the system to exploit a temporary file race condition. +.TP +5 +A problem was encountered while cleaning up the temporary directory. +.TP +6 +A problem was encountered while using +.BR getopt (1) +to parse the command\-line arguments. +.SH EXAMPLES +.TP +.B xvfb\-run \-\-auto\-servernum \-\-server\-num=3D1 xlogo +runs the +.BR xlogo (1x) +demonstration client inside the +.B Xvfb +X server on the first available server number greater than or equal to 1. +.TP +.B xvfb\-run \-\-server\-args=3D"\-screen 0 1024x768x24" ico \-faces +runs the +.BR ico (1x) +demonstration client (and passes it the +.B \-faces +argument) inside the +.B Xvfb +X server, configured with a root window of 1024 by 768 pixels and a color +depth of 24 bits. +.PP +Note that the demo X clients used in the above examples will not exit on +their own, so they will have to be killed before +.B xvfb\-run +will exit. +.SH BUGS +See +.URL "https://bugs.debian.org/xvfb" "the Debian Bug Tracking System" . +If you wish to report a bug in +.BR xvfb\-run , +please use the=20 +.BR reportbug (1) +command. +.SH AUTHOR +.B xvfb\-run +was written by Branden Robinson and Jeff Licquia with sponsorship from +Progeny Linux Systems. +.SH "SEE ALSO" +.BR Xvfb (1x), +.BR xauth (1x) +.\" vim:set et tw=3D80: Best wishes, Arne =2D-=20 Unpolitisch sein hei=C3=9Ft politisch sein ohne es zu merken Date: Mon, 08 Mar 2021 01:57:32 +0100 Message-ID: <87im62fon7.fsf@web.de> --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQJEBAEBCAAuFiEE801qEjXQSQPNItXAE++NRSQDw+sFAmBFdoAQHGFybmVfYmFi QHdlYi5kZQAKCRAT741FJAPD6x6oD/oCYVZ8yPbxnI07lxKfLbxWm/uQuXdUS8+L 14cSXMeCxjnsCKQ/Gx1jUysvHbUOq/oeHGBtez3bEhQ4eBkb+IH+uEYNbrflfGbd PZkz4f8qwXG8fXIpBmXjBRyv6zqbi8s/aCUMjEP5DDJHh9tOZXL/oNCZcKDQj565 +fAoXv2Ns+NZk/tL9O3+cc/Ii8UrYv9Sv0/h5LzG5rH0GG95gx8mUtb/lvv4QwaR jcGyTtLuEUVFd4MqqmVDwy7eHmt4trrKlvm3tQwMX/BI0WHtIiK6UXMjqlKwnAED RR8oEPO/92/GGEJ9+PDypc5kj74a+OnqxHOmU56lmyn1caHJjtDKwRWjvwMdkDKC LG/2HPuTHvcMf33mJgof6w7zqNsklWoKOxfPR3UkOTy8GJf75fg8bOd8pvwZIDYA 916rzpvLwBurKFnZLg7jaC7kRhUAM/aEqYk/m6o8XxlNt3eqQHkZq5+vBQQVxUbi w9J1gSlV+VMyLwK4x69G2FSXyGpeBTzbTPzh3jJd/gti7UywRFAjUyYDAYwVM50J doDswsiEklhswBEEVCm83wiwb+K1UPn4NZEE5pfF4jYG3GbxNbxrp5El/30+6/m0 oVvPA9cmIReVv+Z9CUb3PWYuL8EMdPq8p0vllpKCG6OonoGjzggNXmPTL18JMcMi 9Yzd3KSSNojEBAEBCAAuFiEE3Si95tmHXKvOSosd3M8NswvBBUgFAmBFdoAQHGFy bmVfYmFiQHdlYi5kZQAKCRDczw2zC8EFSLUdBACTZDo4Th1GHxP4wwl8MHFZ0DKw mzR9e7hMRTmhJVvknW8UKfBYgWDbqTSR7VRXbkg+gd46o6ZXgM+BP1Wqg+vdJoVK Jd3bIqNs9uQKG8+gbiNYTSR89LsGt2WZMuaE++wuPsSp350FnSmkMdqa8uXEPcq6 5fdqAtE3/5MY/1uSGQ== =p44d -----END PGP SIGNATURE----- --=-=-=--