Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I am attempting to learn opengl. Due to a hardware failure my primary machine is now an old laptop that has outdated opengl. My box running ubuntu 11.10 server edition does have a suitable graphics card. I would like to develop console to full screen opengl programs on my server box. It is currently my understanding that I need to have X server and a window manager installed in order for opengl programs to function.

I used the following commands:

sudo apt-get install xserver-xorg xserver-xorg-core
sudo apt-get install openbox
sudo apt-get install nvidia-173

To test X server I ran xinit which gave me this output:

X.Org X Server 1.10.4
Release Date: 2011-08-19
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.24-29-server x86_64 Ubuntu
Current Operating System: Linux maximos-ubuntu 3.0.0-12-server #20-Ubuntu SMP Fri Oct 7 16:36:30 UTC 2011 x86_64
Kernel command line: BOOT_IMAGE=/boot/vmlinuz-3.0.0-12-server root=UUID=ffdf63ee-6980-46dc-bc6d-b1e72e0abcce ro
Build Date: 19 October 2011  05:21:26AM
xorg-server 2:1.10.4-1ubuntu4.2 (For technical support please see http://www.ubuntu.com/support)
Current version of pixman: 0.22.2
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Tue Dec 27 17:18:18 2011
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
(EE) Failed to load module "nv" (module does not exist, 0)
xinit: Unable to run program "xterm": No such file or directory
Specify a program on the command line or make sure that /usr/bin
is in your path.

xinit: connection to X server lost

waiting for X server to shut down  ddxSigGiveUp: Closing log

My Xorg.0.log:

[   465.316] 
X.Org X Server 1.10.4
Release Date: 2011-08-19
[   465.316] X Protocol Version 11, Revision 0
[   465.316] Build Operating System: Linux 2.6.24-29-server x86_64 Ubuntu
[   465.316] Current Operating System: Linux maximos-ubuntu 3.0.0-12-server #20-Ubuntu SMP Fri Oct 7 16:36:30 UTC 2011 x86_64
[   465.316] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-3.0.0-12-server root=UUID=ffdf63ee-6980-46dc-bc6d-b1e72e0abcce ro
[   465.316] Build Date: 19 October 2011  05:21:26AM
[   465.316] xorg-server 2:1.10.4-1ubuntu4.2 (For technical support please see http://www.ubuntu.com/support) 
[   465.316] Current version of pixman: 0.22.2
[   465.316]    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
[   465.316] Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[   465.316] (==) Log file: "/var/log/Xorg.0.log", Time: Tue Dec 27 16:53:59 2011
[   465.316] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[   465.317] (==) No Layout section.  Using the first Screen section.
[   465.317] (==) No screen section available. Using defaults.
[   465.317] (**) |-->Screen "Default Screen Section" (0)
[   465.317] (**) |   |-->Monitor "<default monitor>"
[   465.317] (==) No monitor specified for screen "Default Screen Section".
    Using a default monitor configuration.
[   465.317] (==) Automatically adding devices
[   465.317] (==) Automatically enabling devices
[   465.317] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
[   465.317]    Entry deleted from font path.
[   465.317] (WW) The directory "/usr/share/fonts/X11/100dpi/" does not exist.
[   465.317]    Entry deleted from font path.
[   465.317] (WW) The directory "/usr/share/fonts/X11/75dpi/" does not exist.
[   465.317]    Entry deleted from font path.
[   465.317] (WW) The directory "/usr/share/fonts/X11/Type1" does not exist.
[   465.317]    Entry deleted from font path.
[   465.317] (WW) The directory "/usr/share/fonts/X11/100dpi" does not exist.
[   465.317]    Entry deleted from font path.
[   465.317] (WW) The directory "/usr/share/fonts/X11/75dpi" does not exist.
[   465.317]    Entry deleted from font path.
[   465.317] (WW) `fonts.dir' not found (or not valid) in "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType".
[   465.317]    Entry deleted from font path.
[   465.317]    (Run 'mkfontdir' on "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType").
[   465.317] (==) FontPath set to:
    /usr/share/fonts/X11/misc,
    built-ins
[   465.317] (==) ModulePath set to "/usr/lib/x86_64-linux-gnu/xorg/extra-modules,/usr/lib/xorg/extra-modules,/usr/lib/xorg/modules"
[   465.317] (II) The server relies on udev to provide the list of input devices.
    If no devices become available, reconfigure udev or disable AutoAddDevices.
[   465.317] (II) Loader magic: 0x7e0220
[   465.317] (II) Module ABI versions:
[   465.317]    X.Org ANSI C Emulation: 0.4
[   465.317]    X.Org Video Driver: 10.0
[   465.317]    X.Org XInput driver : 12.3
[   465.317]    X.Org Server Extension : 5.0
[   465.318] (--) PCI:*(0:1:0:0) 10de:0613:3842:c879 rev 162, Mem @ 0xfa000000/16777216, 0xe0000000/268435456, 0xf8000000/33554432, I/O @ 0x0000ac00/128, BIOS @ 0x????????/131072
[   465.318] (II) Open ACPI successful (/var/run/acpid.socket)
[   465.318] (II) LoadModule: "extmod"
[   465.318] (II) Loading /usr/lib/xorg/modules/extensions/libextmod.so
[   465.318] (II) Module extmod: vendor="X.Org Foundation"
[   465.318]    compiled for 1.10.4, module version = 1.0.0
[   465.318]    Module class: X.Org Server Extension
[   465.318]    ABI class: X.Org Server Extension, version 5.0
[   465.318] (II) Loading extension MIT-SCREEN-SAVER
[   465.318] (II) Loading extension XFree86-VidModeExtension
[   465.318] (II) Loading extension XFree86-DGA
[   465.318] (II) Loading extension DPMS
[   465.318] (II) Loading extension XVideo
[   465.318] (II) Loading extension XVideo-MotionCompensation
[   465.318] (II) Loading extension X-Resource
[   465.318] (II) LoadModule: "dbe"
[   465.319] (II) Loading /usr/lib/xorg/modules/extensions/libdbe.so
[   465.319] (II) Module dbe: vendor="X.Org Foundation"
[   465.319]    compiled for 1.10.4, module version = 1.0.0
[   465.319]    Module class: X.Org Server Extension
[   465.319]    ABI class: X.Org Server Extension, version 5.0
[   465.319] (II) Loading extension DOUBLE-BUFFER
[   465.319] (II) LoadModule: "glx"
[   465.319] (II) Loading /usr/lib/x86_64-linux-gnu/xorg/extra-modules/libglx.so
[   465.325] (II) Module glx: vendor="NVIDIA Corporation"
[   465.325]    compiled for 4.0.2, module version = 1.0.0
[   465.325]    Module class: X.Org Server Extension
[   465.325] (II) NVIDIA GLX Module  173.14.30  Sat Apr 16 22:45:09 PDT 2011
[   465.325] (II) Loading extension GLX
[   465.325] (II) LoadModule: "record"
[   465.326] (II) Loading /usr/lib/xorg/modules/extensions/librecord.so
[   465.326] (II) Module record: vendor="X.Org Foundation"
[   465.326]    compiled for 1.10.4, module version = 1.13.0
[   465.326]    Module class: X.Org Server Extension
[   465.326]    ABI class: X.Org Server Extension, version 5.0
[   465.326] (II) Loading extension RECORD
[   465.326] (II) LoadModule: "dri"
[   465.326] (II) Loading /usr/lib/xorg/modules/extensions/libdri.so
[   465.326] (II) Module dri: vendor="X.Org Foundation"
[   465.326]    compiled for 1.10.4, module version = 1.0.0
[   465.326]    ABI class: X.Org Server Extension, version 5.0
[   465.326] (II) Loading extension XFree86-DRI
[   465.326] (II) LoadModule: "dri2"
[   465.327] (II) Loading /usr/lib/xorg/modules/extensions/libdri2.so
[   465.327] (II) Module dri2: vendor="X.Org Foundation"
[   465.327]    compiled for 1.10.4, module version = 1.2.0
[   465.327]    ABI class: X.Org Server Extension, version 5.0
[   465.327] (II) Loading extension DRI2
[   465.327] (==) Matched nvidia as autoconfigured driver 0
[   465.327] (==) Matched nouveau as autoconfigured driver 1
[   465.327] (==) Matched nv as autoconfigured driver 2
[   465.327] (==) Matched vesa as autoconfigured driver 3
[   465.327] (==) Matched fbdev as autoconfigured driver 4
[   465.327] (==) Assigned the driver to the xf86ConfigLayout
[   465.327] (II) LoadModule: "nvidia"
[   465.327] (II) Loading /usr/lib/x86_64-linux-gnu/xorg/extra-modules/nvidia_drv.so
[   465.327] (II) Module nvidia: vendor="NVIDIA Corporation"
[   465.327]    compiled for 4.0.2, module version = 1.0.0
[   465.327]    Module class: X.Org Video Driver
[   465.327] (II) LoadModule: "nouveau"
[   465.327] (II) Loading /usr/lib/xorg/modules/drivers/nouveau_drv.so
[   465.328] (II) Module nouveau: vendor="X.Org Foundation"
[   465.328]    compiled for 1.10.1, module version = 0.0.16
[   465.328]    Module class: X.Org Video Driver
[   465.328]    ABI class: X.Org Video Driver, version 10.0
[   465.328] (II) LoadModule: "nv"
[   465.328] (WW) Warning, couldn't open module nv
[   465.328] (II) UnloadModule: "nv"
[   465.328] (II) Unloading nv
[   465.328] (EE) Failed to load module "nv" (module does not exist, 0)
[   465.328] (II) LoadModule: "vesa"
[   465.328] (II) Loading /usr/lib/xorg/modules/drivers/vesa_drv.so
[   465.328] (II) Module vesa: vendor="X.Org Foundation"
[   465.328]    compiled for 1.10.2, module version = 2.3.0
[   465.328]    Module class: X.Org Video Driver
[   465.328]    ABI class: X.Org Video Driver, version 10.0
[   465.328] (II) LoadModule: "fbdev"
[   465.328] (II) Loading /usr/lib/xorg/modules/drivers/fbdev_drv.so
[   465.329] (II) Module fbdev: vendor="X.Org Foundation"
[   465.329]    compiled for 1.10.0, module version = 0.4.2
[   465.329]    ABI class: X.Org Video Driver, version 10.0
[   465.329] (II) NVIDIA dlloader X Driver  173.14.30  Sat Apr 16 22:18:29 PDT 2011
[   465.329] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[   465.329] (II) NOUVEAU driver Date:   Thu Mar 24 02:13:12 2011 +1000
[   465.329] (II) NOUVEAU driver for NVIDIA chipset families :
[   465.329]    RIVA TNT        (NV04)
[   465.329]    RIVA TNT2       (NV05)
[   465.329]    GeForce 256     (NV10)
[   465.329]    GeForce 2       (NV11, NV15)
[   465.329]    GeForce 4MX     (NV17, NV18)
[   465.329]    GeForce 3       (NV20)
[   465.329]    GeForce 4Ti     (NV25, NV28)
[   465.329]    GeForce FX      (NV3x)
[   465.329]    GeForce 6       (NV4x)
[   465.329]    GeForce 7       (G7x)
[   465.329]    GeForce 8       (G8x)
[   465.329]    GeForce GTX 200 (NVA0)
[   465.329]    GeForce GTX 400 (NVC0)
[   465.329] (II) VESA: driver for VESA chipsets: vesa
[   465.329] (II) FBDEV: driver for framebuffer: fbdev
[   465.329] (--) using VT number 7

[   465.330] (II) Loading sub module "fb"
[   465.330] (II) LoadModule: "fb"
[   465.330] (II) Loading /usr/lib/xorg/modules/libfb.so
[   465.330] (II) Module fb: vendor="X.Org Foundation"
[   465.330]    compiled for 1.10.4, module version = 1.0.0
[   465.330]    ABI class: X.Org ANSI C Emulation, version 0.4
[   465.330] (II) Loading sub module "wfb"
[   465.330] (II) LoadModule: "wfb"
[   465.331] (II) Loading /usr/lib/xorg/modules/libwfb.so
[   465.331] (II) Module wfb: vendor="X.Org Foundation"
[   465.331]    compiled for 1.10.4, module version = 1.0.0
[   465.331]    ABI class: X.Org ANSI C Emulation, version 0.4
[   465.331] (II) Loading sub module "ramdac"
[   465.331] (II) LoadModule: "ramdac"
[   465.331] (II) Module "ramdac" already built-in
[   465.331] (II) Loading /usr/lib/x86_64-linux-gnu/xorg/extra-modules/nvidia_drv.so
[   465.331] (II) Loading /usr/lib/xorg/modules/libwfb.so
[   465.331] (II) Loading /usr/lib/xorg/modules/libfb.so
[   465.331] (WW) Falling back to old probe method for vesa
[   465.331] (WW) Falling back to old probe method for fbdev
[   465.331] (II) Loading sub module "fbdevhw"
[   465.331] (II) LoadModule: "fbdevhw"
[   465.331] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[   465.331] (II) Module fbdevhw: vendor="X.Org Foundation"
[   465.331]    compiled for 1.10.4, module version = 0.0.2
[   465.331]    ABI class: X.Org Video Driver, version 10.0
[   465.331] (II) NVIDIA(0): Creating default Display subsection in Screen section
    "Default Screen Section" for depth/fbbpp 24/32
[   465.331] (==) NVIDIA(0): Depth 24, (==) framebuffer bpp 32
[   465.331] (==) NVIDIA(0): RGB weight 888
[   465.331] (==) NVIDIA(0): Default visual is TrueColor
[   465.331] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
[   465.331] (**) NVIDIA(0): Enabling RENDER acceleration
[   465.331] (II) NVIDIA(0): Support for GLX with the Damage and Composite X extensions is
[   465.331] (II) NVIDIA(0):     enabled.
[   465.843] (WW) NVIDIA(GPU-0): Failed to determine GPU name
[   466.036] (II) NVIDIA(0): NVIDIA GPU Unknown (Unknown) at PCI:1:0:0 (GPU-0)
[   466.036] (--) NVIDIA(0): Memory: 524288 kBytes
[   466.036] (--) NVIDIA(0): VideoBIOS: 62.92.89.00.7c
[   466.036] (II) NVIDIA(0): Detected PCI Express Link width: 16X
[   466.036] (--) NVIDIA(0): Interlaced video modes are supported on this GPU
[   466.036] (--) NVIDIA(0): Connected display device(s) on Unknown at PCI:1:0:0:
[   466.036] (--) NVIDIA(0):     CMO CMC 22 W (DFP-1)
[   466.036] (--) NVIDIA(0): CMO CMC 22 W (DFP-1): 330.0 MHz maximum pixel clock
[   466.036] (--) NVIDIA(0): CMO CMC 22 W (DFP-1): Internal Dual Link TMDS
[   466.167] (II) NVIDIA(0): Assigned Display Device: DFP-1
[   466.167] (==) NVIDIA(0): 
[   466.167] (==) NVIDIA(0): No modes were requested; the default mode "nvidia-auto-select"
[   466.167] (==) NVIDIA(0):     will be used as the requested mode.
[   466.167] (==) NVIDIA(0): 
[   466.167] (II) NVIDIA(0): Validated modes:
[   466.167] (II) NVIDIA(0):     "nvidia-auto-select"
[   466.167] (II) NVIDIA(0): Virtual screen size determined to be 1680 x 1050
[   466.190] (--) NVIDIA(0): DPI set to (90, 88); computed from "UseEdidDpi" X config
[   466.190] (--) NVIDIA(0):     option
[   466.190] (==) NVIDIA(0): Enabling 32-bit ARGB GLX visuals.
[   466.190] (II) UnloadModule: "nouveau"
[   466.190] (II) Unloading nouveau
[   466.190] (II) UnloadModule: "vesa"
[   466.190] (II) Unloading vesa
[   466.190] (II) UnloadModule: "fbdev"
[   466.190] (II) Unloading fbdev
[   466.190] (II) UnloadModule: "fbdevhw"
[   466.190] (II) Unloading fbdevhw
[   466.190] (--) Depth 24 pixmap format is 32 bpp
[   466.193] (II) NVIDIA(0): Initialized GPU GART.
[   466.195] (II) NVIDIA(0): Setting mode "nvidia-auto-select"
[   466.241] (II) Loading extension NV-GLX
[   466.296] (II) NVIDIA(0): NVIDIA 3D Acceleration Architecture Initialized
[   466.303] (II) NVIDIA(0): Using the NVIDIA 2D acceleration architecture
[   466.303] (==) NVIDIA(0): Backing store disabled
[   466.303] (==) NVIDIA(0): Silken mouse enabled
[   466.313] (==) NVIDIA(0): DPMS enabled
[   466.313] (II) Loading extension NV-CONTROL
[   466.314] (==) RandR enabled
[   466.314] (II) Initializing built-in extension Generic Event Extension
[   466.314] (II) Initializing built-in extension SHAPE
[   466.314] (II) Initializing built-in extension MIT-SHM
[   466.314] (II) Initializing built-in extension XInputExtension
[   466.314] (II) Initializing built-in extension XTEST
[   466.314] (II) Initializing built-in extension BIG-REQUESTS
[   466.314] (II) Initializing built-in extension SYNC
[   466.314] (II) Initializing built-in extension XKEYBOARD
[   466.314] (II) Initializing built-in extension XC-MISC
[   466.314] (II) Initializing built-in extension SECURITY
[   466.314] (II) Initializing built-in extension XINERAMA
[   466.314] (II) Initializing built-in extension XFIXES
[   466.314] (II) Initializing built-in extension RENDER
[   466.314] (II) Initializing built-in extension RANDR
[   466.314] (II) Initializing built-in extension COMPOSITE
[   466.314] (II) Initializing built-in extension DAMAGE
[   466.314] (II) Initializing built-in extension GESTURE
[   466.315] (II) Initializing extension GLX
[   466.328] (II) XKB: reuse xkmfile /var/lib/xkb/server-B20D7FC79C7F597315E3E501AEF10E0D866E8E92.xkm
[   466.335] (II) config/udev: Adding input device Power Button (/dev/input/event1)
[   466.335] (**) Power Button: Applying InputClass "evdev keyboard catchall"
[   466.335] (II) LoadModule: "evdev"
[   466.335] (II) Loading /usr/lib/xorg/modules/input/evdev_drv.so
[   466.336] (II) Module evdev: vendor="X.Org Foundation"
[   466.336]    compiled for 1.10.2, module version = 2.6.0
[   466.336]    Module class: X.Org XInput Driver
[   466.336]    ABI class: X.Org XInput driver, version 12.3
[   466.336] (II) Using input driver 'evdev' for 'Power Button'
[   466.336] (II) Loading /usr/lib/xorg/modules/input/evdev_drv.so
[   466.336] (**) Power Button: always reports core events
[   466.336] (**) Power Button: Device: "/dev/input/event1"
[   466.336] (--) Power Button: Found keys
[   466.336] (II) Power Button: Configuring as keyboard
[   466.336] (**) Option "config_info" "udev:/sys/devices/LNXSYSTM:00/LNXPWRBN:00/input/input1/event1"
[   466.336] (II) XINPUT: Adding extended input device "Power Button" (type: KEYBOARD)
[   466.336] (**) Option "xkb_rules" "evdev"
[   466.336] (**) Option "xkb_model" "pc105"
[   466.336] (**) Option "xkb_layout" "us"
[   466.339] (II) config/udev: Adding input device Power Button (/dev/input/event0)
[   466.339] (**) Power Button: Applying InputClass "evdev keyboard catchall"
[   466.339] (II) Using input driver 'evdev' for 'Power Button'
[   466.339] (II) Loading /usr/lib/xorg/modules/input/evdev_drv.so
[   466.339] (**) Power Button: always reports core events
[   466.339] (**) Power Button: Device: "/dev/input/event0"
[   466.339] (--) Power Button: Found keys
[   466.339] (II) Power Button: Configuring as keyboard
[   466.339] (**) Option "config_info" "udev:/sys/devices/LNXSYSTM:00/device:00/PNP0C0C:00/input/input0/event0"
[   466.339] (II) XINPUT: Adding extended input device "Power Button" (type: KEYBOARD)
[   466.339] (**) Option "xkb_rules" "evdev"
[   466.339] (**) Option "xkb_model" "pc105"
[   466.339] (**) Option "xkb_layout" "us"
[   466.392] (II) Power Button: Close
[   466.392] (II) UnloadModule: "evdev"
[   466.392] (II) Unloading evdev
[   466.408] (II) Power Button: Close
[   466.408] (II) UnloadModule: "evdev"
[   466.408] (II) Unloading evdev
[   466.754]  ddxSigGiveUp: Closing log

UPDATE escott on efnet pointed out that I do not have a /etc/X11/xorg.conf file. I ran Xorg -configure which generated one but also gave me this error output:

X.Org X Server 1.10.4
Release Date: 2011-08-19
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.24-29-server x86_64 Ubuntu
Current Operating System: Linux maximos-ubuntu 3.0.0-12-server #20-Ubuntu SMP Fri Oct 7 16:36:30 UTC 2011 x86_64
Kernel command line: BOOT_IMAGE=/boot/vmlinuz-3.0.0-12-server root=UUID=ffdf63ee-6980-46dc-bc6d-b1e72e0abcce ro
Build Date: 19 October 2011  05:21:26AM
xorg-server 2:1.10.4-1ubuntu4.2 (For technical support please see http://www.ubuntu.com/support)
Current version of pixman: 0.22.2
        Before reporting problems, check http://wiki.x.org
        to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
        (++) from command line, (!!) notice, (II) informational,
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Wed Dec 28 18:50:40 2011
List of video drivers:
        trident
        tdfx
        siliconmotion
        vmware
        neomagic
        nouveau
        nvidia
        r128
        qxl
        savage
        radeon
        vmwlegacy
        ati
        intel
        mga
        sisusb
        cirrus
        openchrome
        sis
        mach64
        s3
        fbdev
        vesa
(EE) Failed to load module "vmwgfx" (module does not exist, 0)
(EE) vmware: Please ignore the above warnings about not being able to to load module/driver vmwgfx
(++) Using config file: "/home/paul/xorg.conf.new"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
(EE) [drm] No DRICreatePCIBusID symbol
Number of created screens does not match number of detected devices.
  Configuration failed.
 ddxSigGiveUp: Closing log

Escott also pointed out I was missing xterm. I installed it via apt-get. Now when I run xinit my screen will change resolution and I have what appears to be a command line that looks like

root@myhostname:~#

xeyes and xlogo will output

Error: Can't open display:

share|improve this question
add comment

1 Answer

nv was an old open source driver for Nvidia cards, which is now deprecated. Make sure you don't have it in xorg.conf, or try blacklisting it with
echo "blacklist nv" | sudo tee -a "/etc/modprobe.d/blacklist.conf".

share|improve this answer
    
I ran the command above and there is zero change to my xinit output. –  Paul Dec 29 '11 at 1:27
    
The command above add blacklists nv by adding it to blacklist.conf. Have you checked xorg.conf yet? –  mikewhatever Dec 29 '11 at 1:43
    
xorg.conf was missing entirely. See update. –  Paul Dec 29 '11 at 2:21
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.