diff --git a/multimonitor_and_desktop/xf86-intel-multimonitor/20-intel.conf b/multimonitor_and_desktop/xf86-intel-multimonitor/20-intel.conf new file mode 100644 index 0000000..1489299 --- /dev/null +++ b/multimonitor_and_desktop/xf86-intel-multimonitor/20-intel.conf @@ -0,0 +1,18 @@ +Section "Device" + Identifier "Card0" + Driver "intel" + BusID "PCI:0:2:0" + Option "VirtualHeads" "2" +EndSection + +Section "Monitor" + Identifier "HDMI1" + VendorName "Monitor Vendor" + ModelName "Monitor Model" +EndSection + +Section "Monitor" + Identifier "DP1" + VendorName "Monitor Vendor" + ModelName "Monitor Model" +EndSection diff --git a/multimonitor_and_desktop/xf86-intel-multimonitor/PKGBUILD b/multimonitor_and_desktop/xf86-intel-multimonitor/PKGBUILD new file mode 100644 index 0000000..aa4068e --- /dev/null +++ b/multimonitor_and_desktop/xf86-intel-multimonitor/PKGBUILD @@ -0,0 +1,30 @@ +# Maintainer: Pekka Helenius + +pkgname=xf86-intel-multimonitor +pkgver=1 +pkgrel=1 +pkgdesc="Enable multimonitor support for Nvidia Optimus Clevo laptops via Intel VirtualGL" +arch=('any') +#url="" +license=('GPL') +depends=('xf86-video-intel' 'libglvnd' 'libgl' 'xorg-server' 'bumblebee') #'nvidia' 'nvidia-dkms' +source=(20-intel.conf +xorg.conf.nvidia +clevo-multimonitor-on.desktop +clevo-multimonitor-off.desktop) +md5sums=('e637d2a74b7efe0a3dcc846f50292e4c' + '9ba150ba73cd97747531862aae03edcf' + '70fc2ea9f62ae5e7df5286e9bf3ba9f5' + '436ada85ff846c4d5e38a32e9567730c') + +package() { + mkdir -p ${pkgdir}/etc/X11/xorg.conf.d + mkdir -p ${pkgdir}/etc/bumblebee + mkdir -p ${pkgdir}/usr/share/applications/ + install -m 644 ${srcdir}/20-intel.conf ${pkgdir}/etc/X11/xorg.conf.d/20-intel.conf + install -m 644 ${srcdir}/xorg.conf.nvidia ${pkgdir}/etc/bumblebee/xorg.conf.nvidia + + install -m 755 ${srcdir}/clevo-multimonitor-on.desktop ${pkgdir}/usr/share/applications/clevo-multimonitor-on.desktop + install -m 755 ${srcdir}/clevo-multimonitor-off.desktop ${pkgdir}/usr/share/applications/clevo-multimonitor-off.desktop +} + diff --git a/multimonitor_and_desktop/xf86-intel-multimonitor/clevo-multimonitor-off.desktop b/multimonitor_and_desktop/xf86-intel-multimonitor/clevo-multimonitor-off.desktop new file mode 100644 index 0000000..ce7b2e3 --- /dev/null +++ b/multimonitor_and_desktop/xf86-intel-multimonitor/clevo-multimonitor-off.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Name=Multimonitor Support (OFF) +GenericName=Multimonitor Support (OFF) +Comment=Stop multimonitor support for Optimus Clevo laptops +Exec=killall intel-virtual-output +Icon=image-missing +Terminal=false +Type=Application +Categories=Utility; +StartupNotify=false diff --git a/multimonitor_and_desktop/xf86-intel-multimonitor/clevo-multimonitor-on.desktop b/multimonitor_and_desktop/xf86-intel-multimonitor/clevo-multimonitor-on.desktop new file mode 100644 index 0000000..09121af --- /dev/null +++ b/multimonitor_and_desktop/xf86-intel-multimonitor/clevo-multimonitor-on.desktop @@ -0,0 +1,11 @@ +[Desktop Entry] +Name=Multimonitor Support (ON) +GenericName=Multimonitor Support (ON) +Comment=Enable multimonitor support for Optimus Clevo laptops +Exec=intel-virtual-output -f -b +TryExec=/usr/bin/intel-virtual-output +Icon=applications-viewers +Terminal=false +Type=Application +Categories=Utility; +StartupNotify=false diff --git a/multimonitor_and_desktop/xf86-intel-multimonitor/xorg.conf.nvidia b/multimonitor_and_desktop/xf86-intel-multimonitor/xorg.conf.nvidia new file mode 100644 index 0000000..519c017 --- /dev/null +++ b/multimonitor_and_desktop/xf86-intel-multimonitor/xorg.conf.nvidia @@ -0,0 +1,52 @@ +Section "ServerLayout" + Identifier "Layout0" + Option "AutoAddDevices" "true" + Option "AutoAddGPU" "false" +EndSection + +Section "Device" + Identifier "DiscreteNvidia" + Driver "nvidia" + VendorName "NVIDIA Corporation" + +# If the X server does not automatically detect your VGA device, +# you can manually set it here. +# To get the BusID prop, run `lspci | egrep 'VGA|3D'` and input the data +# as you see in the commented example. +# This Setting may be needed in some platforms with more than one +# nvidia card, which may confuse the proprietary driver (e.g., +# trying to take ownership of the wrong device). Also needed on Ubuntu 13.04. +# BusID "PCI:01:00:0" + +# Setting ProbeAllGpus to false prevents the new proprietary driver +# instance spawned to try to control the integrated graphics card, +# which is already being managed outside bumblebee. +# This option doesn't hurt and it is required on platforms running +# more than one nvidia graphics card with the proprietary driver. +# (E.g. Macbook Pro pre-2010 with nVidia 9400M + 9600M GT). +# If this option is not set, the new Xorg may blacken the screen and +# render it unusable (unless you have some way to run killall Xorg). + Option "ProbeAllGpus" "false" + + Option "NoLogo" "true" + #Option "UseEDID" "false" + #Option "UseDisplayDevice" "none" + +# If your NVIDIA drivers are version 331.13 or newer, and you have a laptop +# where some of the video outputs such as HDMI or DisplayPort are connected +# to the NVIDIA GPU, and you sometimes connect an external monitor to those +# ports, comment out the above two options and instead uncomment the option +# below to allow using the external monitor when it is connected while also +# allowing the X server to start when the monitor is disconnected. + + Option "AllowEmptyInitialConfiguration" +EndSection + +Section "ServerFlags" + Option "IgnoreABI" "1" +EndSection + +Section "Screen" + Identifier "Screen0" + Device "DiscreteNvidia" +EndSection