[xorg] dual screen eeepc1000H (intel 945GME) [résolu]

Xorg, Compiz, KDE / Gnome / Xfce / Fluxbox / e17 / fvwm ... GDM/KDM/XDM...
youshe
Hankyu
Messages : 40
Inscription : sam. 30 août 2008, 22:38

[xorg] dual screen eeepc1000H (intel 945GME) [résolu]

Message par youshe »

Bonsoir,

Cela fait quelques heures maintenant que je tente désespérémant d'avoir un dual screen sur mon EEEPC qui fasse ce que je veux qu'il fasse et non n'importe quoi. Peut être pourriez vous m'apporter vos lumières ?

Donc, le but recherché à terme : sous awesome (ou autre wm), pouvoir réserver un bureau virtuel (disons le 9) pour les projections. Ces projections seront alors expédiées par l'intermédiaires de la sortie VGA pendant que je pourrais faire d'autres choses sur mon ordinateur.

Dans l'imédiat, ce que j'aimerais, c'est avoir sur les deux écrans la même image, mais dont la taille s'adapte à la résolution de l'écran (donc si j'ai bien compris la terminologie de xorg : deux screens).

Ce que j'ai pour l'instant, c'est une même image sur les deux écrans mais l'eeePC ne m'affiche qu'une petite partie de la page qui est affichée sur l'autre écran.
Voici ce que me donne xrandr :

Code : Tout sélectionner

[user@up2 ~]$ xrandr 
Screen 0: minimum 320 x 200, current 1280 x 1024, maximum 1280 x 1280
VGA connected 1280x1024+0+0 (normal left inverted right x axis y axis) 338mm x 270mm
   1280x1024      60.0*+   75.0     59.9  
   1280x960       59.9  
   1152x864       75.0     74.8  
   1024x768       75.1     70.1     60.0  
   832x624        74.6  
   800x600        72.2     75.0     60.3     56.2  
   640x480        75.0     72.8     66.7     60.0  
   720x400        70.1  
LVDS connected 1024x600+0+0 (normal left inverted right x axis y axis) 220mm x 129mm
   1024x600       60.0*+   65.0  
   800x600        60.3  
   640x480        59.9  
TV disconnected (normal left inverted right x axis y axis)
Ce que je comprend comme ça : Trois sorties de moniteurs possibles, et si je ne fais pas d'erreur :
- TV sortie TV (faudra ignorer cette entrée puisqu'il n'y a pas de prise, mais ça, je devrais trouver comment faire, j'ai vu ça dans xorg.conf(5))
- LVDS écran de l'eeepc
- VGA sortie VGA

Mais qu'un seul screen !

De là, après quelques modifications, j'en suis à ce xorg.conf :

Code : Tout sélectionner

Section "ServerLayout"
        Identifier "eeepc"
        Screen     0 "Seeepc" 0 0
        Screen     1 "Svga" LeftOf "Seeepc"
        InputDevice  "Keyboard0" "CoreKeyboard"
        InputDevice  "PS/2 Mouse" "CorePointer"
#       Option "xinerama" # fait planter DRI ?
EndSection

Section "ServerFlags"
        Option "AllowMouseOpenFail"  "true"
        Option "DefaultServerLayout" "eeepc"
EndSection

Section "Files"
        RgbPath      "/usr/share/X11/rgb"
        ModulePath   "/usr/lib/xorg/modules"
        FontPath     "/usr/share/fonts/misc:unscaled"
        FontPath     "/usr/share/fonts/misc"
        FontPath     "/usr/share/fonts/75dpi:unscaled"
        FontPath     "/usr/share/fonts/75dpi"
        FontPath     "/usr/share/fonts/100dpi:unscaled"
        FontPath     "/usr/share/fonts/100dpi"
        FontPath     "/usr/share/fonts/cyrillic"
        FontPath     "/usr/share/fonts/Type1"
EndSection

Section "Module" 
 #les modules qui étaient chargés sont chargés par défaut (sous archlinux du moins)
EndSection

Section "InputDevice"
        Identifier  "Keyboard0"
        Driver      "keyboard"
        Option      "CoreKeyboard"
        Option "XkbRules" "xorg"
        Option "XkbModel" "pc105"
        Option "XkbLayout" "fr"
EndSection

Section "InputDevice"
        Identifier  "PS/2 Mouse"
        Driver      "mouse"
        Option      "Protocol" "auto"
        Option          "ZAxisMapping"          "4 5"
        Option      "Device" "/dev/psaux"
        Option      "Emulate3Buttons" "true"
        Option      "Emulate3Timeout" "70"
        Option      "SendCoreEvents"  "true"
EndSection

Section "InputDevice"
        Identifier      "USB Mouse"
        Driver          "mouse"
        Option          "Device"                "/dev/input/mice"
        Option          "SendCoreEvents"        "true"
        Option          "Protocol"              "IMPS/2"
        Option          "ZAxisMapping"          "4 5"
        Option          "Buttons"               "5"
EndSection

Section "Monitor"
        Identifier "Monitor-VGA" # projecteur
        Option     "DPMS"
EndSection

Section "Monitor"
        Identifier "Monitor-LVDS" # eeepc
        Option     "DPMS"
EndSection


Section "Device"
        Identifier  "Cintel"
        Driver      "intel" # testé avec i810 : ça marche pas
        BusID       "PCI:0:2:0"
        Screen      0
        Option "NoAccel" #j'ai vu qu'un temps, les accélarations posaient problème (cf. mailing list xorg)
EndSection

Section "Device"
        Identifier  "C1intel" # Deuxième carte au même emplacement
        Driver "intel" # Testé avec intel, i810, v4l?, vga, vesa : toujours rien
        BusID  "PCI:0:2.0" # PCI:0:2:1 ne fonctionne pas non plus
        Screen 1
        Option "NoAccel"
#       Option "Monitor-LVDS" "LVDS monitor"
EndSection

Section "Screen"
        Identifier "Seeepc" # Ecran eeePC
        Device "Cintel" # même avec l'autre device, c'est pareil
        Monitor "Monitor-LVDS"
EndSection

Section "Screen"
        Identifier "Svga" # Projecteur
        Device "C1intel" # idem
        Monitor "Monitor-VGA"
EndSection

Section "DRI"
        Mode 0666
EndSection
J'ai d'ailleurs le petit warning suivant qui revient toujours (et que rien n'a fait passé jusqu'à maintenant) :

Code : Tout sélectionner

(WW) intel: No matching Device section for instance (BusID PCI:0:2:1) found
La présence de ce matériel est bien confirmée par un lspci :

Code : Tout sélectionner

00:02.0 VGA compatible controller: Intel Corporation Mobile 945GME Express Integrated Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller (rev 03)
Ce qui parait étrange, c'est les différentes dénominations pour les deux cartes

Les parties qui me semblent importantes dans le /var/log/Xorg.0.log (Il est a noter que j'ai deux écrans branchés au moment du log) :

Code : Tout sélectionner

X.Org X Server 1.4.2
Release Date: 11 June 2008
X Protocol Version 11, Revision 0
Build Operating System: Linux 2.6.26-ARCH i686 
Current Operating System: Linux up2 2.6.27-ARCH #1 SMP PREEMPT Fri Oct 17 07:35:10 UTC 2008 i686
Build Date: 17 August 2008  10:53:07AM
[...]
Module Loader present
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 Nov  4 23:26:44 2008
(==) Using config file: "/etc/X11/xorg.conf"
(**) Option "defaultserverlayout" "eeepc"
(**) ServerLayout "eeepc"
(**) |-->Screen "Seeepc" (0)
(**) |   |-->Monitor "Monitor-LVDS"
(**) |   |-->Device "Cintel"
(**) |-->Screen "Svga" (1)
(**) |   |-->Monitor "Monitor-VGA"
(**) |   |-->Device "C1intel"
(**) |-->Input Device "Keyboard0"
(**) |-->Input Device "PS/2 Mouse"
(==) Automatically adding devices
(==) Automatically enabling devices
[...]
(II) PCI: PCI scan (all values are in hex)
(II) PCI: 00:00:0: chip 8086,27ac card 1043,8340 rev 03 class 06,00,00 hdr 00
(II) PCI: 00:02:0: chip 8086,27ae card 1043,8340 rev 03 class 03,00,00 hdr 80
(II) PCI: 00:02:1: chip 8086,27a6 card 1043,8340 rev 03 class 03,80,00 hdr 80
# On retrouve nos bus incriminés et les (la ?) cartes ?
[...]
(--) PCI:*(0:2:0) Intel Corporation Mobile 945GME Express Integrated Graphics Controller rev 3, Mem @ 0xf7f00000/19, 0xd0000000/28, 0xf7ec0000/18, I/O @ 0xdc00/3
(--) PCI: (0:2:1) Intel Corporation Mobile 945GM/GMS/GME, 943/940GML Express Integrated Graphics Controller rev 3, Mem @ 0xf7f80000/19
[...]
(II) intel: Driver for Intel Integrated Graphics Chipsets: i810,
        i810-dc100, i810e, i815, i830M, 845G, 852GM/855GM, 865G, 915G,
        E7221 (i915), 915GM, 945G, 945GM, 945GME, 965G, G35, 965Q, 946GZ,
        965GM, 965GME/GLE, G33, Q35, Q33, Intel Integrated Graphics Device
(II) Primary Device is: PCI 00:02:0
(WW) intel: No matching Device section for instance (BusID PCI:0:2:1) found
(--) Chipset 945GME found
[...]
(II) Setting vga for screen 0.
[...]
(II) intel(0): Creating default Display subsection in Screen section
        "Seeepc" for depth/fbbpp 24/32
(==) intel(0): Depth 24, (==) framebuffer bpp 32
(==) intel(0): RGB weight 888
(==) intel(0): Default visual is TrueColor
(**) intel(0): Option "NoAccel"
(II) intel(0): Integrated Graphics Chipset: Intel(R) 945GME
(--) intel(0): Chipset: "945GME"
(--) intel(0): Linear framebuffer at 0xD0000000
(--) intel(0): IO registers at addr 0xF7F00000
(II) intel(0): 2 display pipes available.
(**) intel(0): DRI is disabled because it needs HW cursor and 2D acceleration.
(II) Loading sub module "ddc"
(II) LoadModule: "ddc"(II) Module "ddc" already built-in
(II) Loading sub module "i2c"
(II) LoadModule: "i2c"(II) Module "i2c" already built-in
(II) intel(0): Output VGA using monitor section Monitor-LVDS
(II) intel(0): I2C bus "CRTDDC_A" initialized.
(II) intel(0): Output LVDS has no monitor section
(II) intel(0): I2C bus "LVDSDDC_C" initialized.
(II) intel(0): Attempting to determine panel fixed mode.
(II) intel(0): I2C device "LVDSDDC_C:ddc2" registered at address 0xA0.
(II) intel(0): EDID vendor "HSD", prod id 1001
(II) intel(0): DDCModeFromDetailedTiming: 1024x600 Warning: We only handle seperate sync.
(II) Loading sub module "int10"
(II) LoadModule: "int10"
(II) Reloading /usr/lib/xorg/modules//libint10.so
(II) intel(0): initializing int10
(WW) intel(0): Bad V_BIOS checksum
(II) intel(0): Primary V_BIOS segment is: 0xc000
(II) intel(0): VESA BIOS detected
(II) intel(0): VESA VBE Version 3.0
(II) intel(0): VESA VBE Total Mem: 7872 kB
(II) intel(0): VESA VBE OEM: Intel(r) 82945GM Chipset Family Graphics Chip Accelerated VGA BIOS
(II) intel(0): VESA VBE OEM Software Rev: 1.0
(II) intel(0): VESA VBE OEM Vendor: Intel Corporation
(II) intel(0): VESA VBE OEM Product: Intel(r) 82945GM Chipset Family Graphics Controller
(II) intel(0): VESA VBE OEM Product Rev: Hardware Version 0.0
(II) intel(0): I2C bus "SDVOCTRL_E for SDVOB" initialized.
(II) intel(0): I2C device "SDVOCTRL_E for SDVOB:SDVO Controller B" registered at address 0x70.
(II) intel(0): No SDVO device found on SDVOB
(II) intel(0): I2C device "SDVOCTRL_E for SDVOB:SDVO Controller B" removed.
(II) intel(0): I2C bus "SDVOCTRL_E for SDVOB" removed.
(II) intel(0): I2C bus "SDVOCTRL_E for SDVOC" initialized.
(II) intel(0): I2C device "SDVOCTRL_E for SDVOC:SDVO Controller C" registered at address 0x72.
(II) intel(0): No SDVO device found on SDVOC
(II) intel(0): I2C device "SDVOCTRL_E for SDVOC:SDVO Controller C" removed.
(II) intel(0): I2C bus "SDVOCTRL_E for SDVOC" removed.
(II) intel(0): Output TV has no monitor section
(II) intel(0): I2C device "CRTDDC_A:ddc2" registered at address 0xA0.
(II) intel(0): EDID vendor "PHL", prod id 2135
(II) intel(0): Using EDID range info for horizontal sync
(II) intel(0): Using EDID range info for vertical refresh
(II) intel(0): Printing DDC gathered Modelines:
(II) intel(0): Modeline "1280x1024"x0.0  108.00  1280 1328 1440 1688  1024 1025 1028 1066 +hsync +vsync (64.0 kHz)
(II) intel(0): Modeline "800x600"x0.0   40.00  800 840 968 1056  600 601 605 628 +hsync +vsync (37.9 kHz)
(II) intel(0): Modeline "800x600"x0.0   36.00  800 824 896 1024  600 601 603 625 +hsync +vsync (35.2 kHz)
(II) intel(0): Modeline "640x480"x0.0   31.50  640 656 720 840  480 481 484 500 -hsync -vsync (37.5 kHz)
(II) intel(0): Modeline "640x480"x0.0   31.50  640 664 704 832  480 489 491 520 -hsync -vsync (37.9 kHz)
(II) intel(0): Modeline "640x480"x0.0   30.24  640 704 768 864  480 483 486 525 -hsync -vsync (35.0 kHz)
(II) intel(0): Modeline "640x480"x0.0   25.20  640 656 752 800  480 490 492 525 -hsync -vsync (31.5 kHz)
(II) intel(0): Modeline "720x400"x0.0   28.32  720 738 846 900  400 412 414 449 -hsync +vsync (31.5 kHz)
(II) intel(0): Modeline "1280x1024"x0.0  135.00  1280 1296 1440 1688  1024 1025 1028 1066 +hsync +vsync (80.0 kHz)
(II) intel(0): Modeline "1024x768"x0.0   78.80  1024 1040 1136 1312  768 769 772 800 +hsync +vsync (60.1 kHz)
(II) intel(0): Modeline "1024x768"x0.0   75.00  1024 1048 1184 1328  768 771 777 806 -hsync -vsync (56.5 kHz)
(II) intel(0): Modeline "1024x768"x0.0   65.00  1024 1048 1184 1344  768 771 777 806 -hsync -vsync (48.4 kHz)
(II) intel(0): Modeline "832x624"x0.0   57.28  832 864 928 1152  624 625 628 667 -hsync -vsync (49.7 kHz)
(II) intel(0): Modeline "800x600"x0.0   49.50  800 816 896 1056  600 601 604 625 +hsync +vsync (46.9 kHz)
(II) intel(0): Modeline "800x600"x0.0   50.00  800 856 976 1040  600 637 643 666 +hsync +vsync (48.1 kHz)
(II) intel(0): Modeline "1152x864"x0.0  108.00  1152 1216 1344 1600  864 865 868 900 +hsync +vsync (67.5 kHz)
(II) intel(0): Modeline "1152x864"x74.8  104.00  1152 1224 1344 1536  864 867 871 905 -hsync +vsync (67.7 kHz)
(II) intel(0): Modeline "1280x960"x59.9  101.25  1280 1360 1488 1696  960 963 967 996 -hsync +vsync (59.7 kHz)
(II) intel(0): Modeline "1280x1024"x59.9  109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync (63.7 kHz)
(II) intel(0): EDID vendor "PHL", prod id 2135
(II) intel(0): I2C device "LVDSDDC_C:ddc2" removed.
(II) intel(0): Output VGA connected
(II) intel(0): Output LVDS connected
(II) intel(0): Output TV disconnected
(II) intel(0): Output VGA using initial mode 1280x1024
(II) intel(0): Output LVDS using initial mode 1024x600
(II) intel(0): Monitoring connected displays enabled
(II) intel(0): detected 256 kB GTT.
(II) intel(0): detected 7932 kB stolen memory.
(==) intel(0): video overlay key set to 0x101fe
(==) intel(0): Will not try to enable page flipping
(==) intel(0): Triple buffering disabled
(==) intel(0): Intel XvMC decoder disabled
(==) intel(0): Using gamma correction (1.0, 1.0, 1.0)
(**) intel(0): Display dimensions: (340, 270) mm
(**) intel(0): DPI set to (95, 120)
(II) intel(0): Comparing regs from server start up to After PreInit
(WW) intel(0): Register 0x61200 (PP_STATUS) changed from 0xc0000008 to 0xd000000a
(WW) intel(0): PP_STATUS before: on, ready, sequencing idle
(WW) intel(0): PP_STATUS after: on, ready, sequencing on
(==) Depth 24 pixmap format is 32 bpp
(II) do I need RAC?  No, I don't.
(II) resource ranges after preInit:
        [0] 0   0       0xf7ec0000 - 0xf7efffff (0x40000) MS[B]
        [1] 0   0       0xd0000000 - 0xdfffffff (0x10000000) MS[B]
        [2] 0   0       0xf7f00000 - 0xf7f7ffff (0x80000) MS[B]
        [3] -1  0       0x00100000 - 0x3fffffff (0x3ff00000) MX[B]E(B)
        [4] -1  0       0x000f0000 - 0x000fffff (0x10000) MX[B]
        [5] -1  0       0x000c0000 - 0x000effff (0x30000) MX[B]
        [6] -1  0       0x00000000 - 0x0009ffff (0xa0000) MX[B]
        [7] -1  0       0xfbfc0000 - 0xfbffffff (0x40000) MX[B]
        [8] -1  0       0xfbef0000 - 0xfbefffff (0x10000) MX[B]
        [9] -1  0       0xf7eb7c00 - 0xf7eb7fff (0x400) MX[B]
        [10] -1 0       0xf7eb8000 - 0xf7ebbfff (0x4000) MX[B]
        [11] -1 0       0xf7f80000 - 0xf7ffffff (0x80000) MX[B](B)
        [12] -1 0       0xf7ec0000 - 0xf7efffff (0x40000) MX[B](B)
        [13] -1 0       0xd0000000 - 0xdfffffff (0x10000000) MX[B](B)
        [14] -1 0       0xf7f00000 - 0xf7f7ffff (0x80000) MX[B](B)
        [15] 0  0       0x000a0000 - 0x000affff (0x10000) MS[B](OprD)
        [16] 0  0       0x000b0000 - 0x000b7fff (0x8000) MS[B](OprD)
        [17] 0  0       0x000b8000 - 0x000bffff (0x8000) MS[B](OprD)
        [18] 0  0       0x0000dc00 - 0x0000dc07 (0x8) IS[B]
        [19] -1 0       0x0000ffff - 0x0000ffff (0x1) IX[B]
        [20] -1 0       0x00000000 - 0x000000ff (0x100) IX[B]
        [21] -1 0       0x0000ec00 - 0x0000ec7f (0x80) IX[B]
        [22] -1 0       0x0000ffa0 - 0x0000ffaf (0x10) IX[B]
        [23] -1 0       0x000001f0 - 0x000001f0 (0x1) IX[B]
        [24] -1 0       0x000001f0 - 0x000001f7 (0x8) IX[B]
        [25] -1 0       0x000001f0 - 0x000001f0 (0x1) IX[B]
        [26] -1 0       0x000001f0 - 0x000001f7 (0x8) IX[B]
        [27] -1 0       0x0000d880 - 0x0000d89f (0x20) IX[B]
        [28] -1 0       0x0000d800 - 0x0000d81f (0x20) IX[B]
        [29] -1 0       0x0000d480 - 0x0000d49f (0x20) IX[B]
        [30] -1 0       0x0000d400 - 0x0000d41f (0x20) IX[B]
        [31] -1 0       0x0000dc00 - 0x0000dc07 (0x8) IX[B](B)
        [32] 0  0       0x000003b0 - 0x000003bb (0xc) IS[B](OprU)
        [33] 0  0       0x000003c0 - 0x000003df (0x20) IS[B](OprU)
(II) intel(0): Kernel reported 238848 total, 1 used
(II) intel(0): I830CheckAvailableMemory: 955388 kB available
(**) intel(0): Framebuffer compression enabled
(**) intel(0): Tiling enabled
(==) intel(0): VideoRam: 262144 KB
(II) intel(0): Attempting memory allocation with tiled buffers.
(II) intel(0): Allocating 3840 scanlines for pixmap cache
(II) intel(0): Tiled allocation successful.
(--) intel(0): Xv is disabled because it needs 2D accel and AGPGART.
(II) intel(0): adjusting plane->pipe mappings to allow for framebuffer compression
(II) intel(0): Page Flipping disabled
(==) intel(0): Write-combining range (0xd0000000,0x10000000)
(II) intel(0): vgaHWGetIOBase: hwp->IOBase is 0x03d0, hwp->PIOOffset is 0x0000
(==) intel(0): Backing store disabled
(==) intel(0): Silken mouse enabled
(II) intel(0): Initializing HW Cursor
(II) intel(0): xf86BindGARTMemory: bind key 0 at 0x04000000 (pgoffset 16384)
(II) intel(0): Fixed memory allocation layout:
(II) intel(0): 0x00000000-0x005fffff: compressed frame buffer (6144 kB, 0x000000003f800000 physical
)
(II) intel(0): 0x00600000-0x00600fff: compressed ll buffer (4 kB, 0x000000003fe00000 physical
)
(II) intel(0): 0x00601000-0x0060afff: HW cursors (40 kB, 0x000000003fe01000 physical
)
(II) intel(0): 0x0060b000-0x00612fff: logical 3D context (32 kB)
(II) intel(0): 0x00613000-0x00613fff: overlay registers (4 kB, 0x000000003fe13000 physical
)
(II) intel(0): 0x007bf000:            end of stolen memory
(II) intel(0): 0x04000000-0x07ffffff: front buffer (40960 kB) X tiled
(II) intel(0): 0x10000000:            end of aperture
(II) intel(0): Selecting standard 18 bit TMDS pixel format.
(II) intel(0): Output configuration:
(II) intel(0):   Pipe A is on
(II) intel(0):   Display plane B is now enabled and connected to pipe A.
(II) intel(0):   Pipe B is on
(II) intel(0):   Display plane A is now enabled and connected to pipe B.
(II) intel(0):   Output VGA is connected to pipe A
(II) intel(0):   Output LVDS is connected to pipe B
(II) intel(0):   Output TV is connected to pipe none
(II) intel(0): RandR 1.2 enabled, ignore the following RandR disabled message.
(II) intel(0): Selecting standard 18 bit TMDS pixel format.
(**) Option "dpms"
(**) intel(0): DPMS enabled
(II) intel(0): direct rendering: Disabled
(--) RandR disabled
[...]
(II) AIGLX: Screen 0 is not DRI capable
(II) Loading sub module "GLcore"
(II) LoadModule: "GLcore"
(II) Loading /usr/lib/xorg/modules/extensions//libGLcore.so
(II) Module GLcore: vendor="X.Org Foundation"
        compiled for 1.4.2, module version = 1.0.0
        ABI class: X.Org Server Extension, version 0.3
(II) GLX: Initialized MESA-PROXY GL provider for screen 0
(II) intel(0): Setting screen physical size to 338 x 270
[...]
(II) intel(0): EDID vendor "PHL", prod id 2135
(II) intel(0): Using hsync ranges from config file
(II) intel(0): Using vrefresh ranges from config file
(II) intel(0): Printing DDC gathered Modelines:
(II) intel(0): Modeline "1280x1024"x0.0  108.00  1280 1328 1440 1688  1024 1025 1028 1066 +hsync +vsync (64.0 kHz)
(II) intel(0): Modeline "800x600"x0.0   40.00  800 840 968 1056  600 601 605 628 +hsync +vsync (37.9 kHz)
(II) intel(0): Modeline "800x600"x0.0   36.00  800 824 896 1024  600 601 603 625 +hsync +vsync (35.2 kHz)
(II) intel(0): Modeline "640x480"x0.0   31.50  640 656 720 840  480 481 484 500 -hsync -vsync (37.5 kHz)
(II) intel(0): Modeline "640x480"x0.0   31.50  640 664 704 832  480 489 491 520 -hsync -vsync (37.9 kHz)
(II) intel(0): Modeline "640x480"x0.0   30.24  640 704 768 864  480 483 486 525 -hsync -vsync (35.0 kHz)
(II) intel(0): Modeline "640x480"x0.0   25.20  640 656 752 800  480 490 492 525 -hsync -vsync (31.5 kHz)
(II) intel(0): Modeline "720x400"x0.0   28.32  720 738 846 900  400 412 414 449 -hsync +vsync (31.5 kHz)
(II) intel(0): Modeline "1280x1024"x0.0  135.00  1280 1296 1440 1688  1024 1025 1028 1066 +hsync +vsync (80.0 kHz)
(II) intel(0): Modeline "1024x768"x0.0   78.80  1024 1040 1136 1312  768 769 772 800 +hsync +vsync (60.1 kHz)
(II) intel(0): Modeline "1024x768"x0.0   75.00  1024 1048 1184 1328  768 771 777 806 -hsync -vsync (56.5 kHz)
(II) intel(0): Modeline "1024x768"x0.0   65.00  1024 1048 1184 1344  768 771 777 806 -hsync -vsync (48.4 kHz)
(II) intel(0): Modeline "832x624"x0.0   57.28  832 864 928 1152  624 625 628 667 -hsync -vsync (49.7 kHz)
(II) intel(0): Modeline "800x600"x0.0   49.50  800 816 896 1056  600 601 604 625 +hsync +vsync (46.9 kHz)
(II) intel(0): Modeline "800x600"x0.0   50.00  800 856 976 1040  600 637 643 666 +hsync +vsync (48.1 kHz)
(II) intel(0): Modeline "1152x864"x0.0  108.00  1152 1216 1344 1600  864 865 868 900 +hsync +vsync (67.5 kHz)
(II) intel(0): Modeline "1152x864"x74.8  104.00  1152 1224 1344 1536  864 867 871 905 -hsync +vsync (67.7 kHz)
(II) intel(0): Modeline "1280x960"x59.9  101.25  1280 1360 1488 1696  960 963 967 996 -hsync +vsync (59.7 kHz)
(II) intel(0): Modeline "1280x1024"x59.9  109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync (63.7 kHz)
(II) intel(0): EDID vendor "PHL", prod id 2135
(II) intel(0): I2C device "LVDSDDC_C:ddc2" registered at address 0xA0.
(II) intel(0): EDID vendor "HSD", prod id 1001
(II) intel(0): DDCModeFromDetailedTiming: 1024x600 Warning: We only handle seperate sync.
(II) intel(0): EDID vendor "PHL", prod id 2135
(II) intel(0): Using hsync ranges from config file
(II) intel(0): Using vrefresh ranges from config file
(II) intel(0): Printing DDC gathered Modelines:
(II) intel(0): Modeline "1280x1024"x0.0  108.00  1280 1328 1440 1688  1024 1025 1028 1066 +hsync +vsync (64.0 kHz)
(II) intel(0): Modeline "800x600"x0.0   40.00  800 840 968 1056  600 601 605 628 +hsync +vsync (37.9 kHz)
(II) intel(0): Modeline "800x600"x0.0   36.00  800 824 896 1024  600 601 603 625 +hsync +vsync (35.2 kHz)
(II) intel(0): Modeline "640x480"x0.0   31.50  640 656 720 840  480 481 484 500 -hsync -vsync (37.5 kHz)
(II) intel(0): Modeline "640x480"x0.0   31.50  640 664 704 832  480 489 491 520 -hsync -vsync (37.9 kHz)
(II) intel(0): Modeline "640x480"x0.0   30.24  640 704 768 864  480 483 486 525 -hsync -vsync (35.0 kHz)
(II) intel(0): Modeline "640x480"x0.0   25.20  640 656 752 800  480 490 492 525 -hsync -vsync (31.5 kHz)
(II) intel(0): Modeline "720x400"x0.0   28.32  720 738 846 900  400 412 414 449 -hsync +vsync (31.5 kHz)
(II) intel(0): Modeline "1280x1024"x0.0  135.00  1280 1296 1440 1688  1024 1025 1028 1066 +hsync +vsync (80.0 kHz)
(II) intel(0): Modeline "1024x768"x0.0   78.80  1024 1040 1136 1312  768 769 772 800 +hsync +vsync (60.1 kHz)
(II) intel(0): Modeline "1024x768"x0.0   75.00  1024 1048 1184 1328  768 771 777 806 -hsync -vsync (56.5 kHz)
(II) intel(0): Modeline "1024x768"x0.0   65.00  1024 1048 1184 1344  768 771 777 806 -hsync -vsync (48.4 kHz)
(II) intel(0): Modeline "832x624"x0.0   57.28  832 864 928 1152  624 625 628 667 -hsync -vsync (49.7 kHz)
(II) intel(0): Modeline "800x600"x0.0   49.50  800 816 896 1056  600 601 604 625 +hsync +vsync (46.9 kHz)
(II) intel(0): Modeline "800x600"x0.0   50.00  800 856 976 1040  600 637 643 666 +hsync +vsync (48.1 kHz)
(II) intel(0): Modeline "1152x864"x0.0  108.00  1152 1216 1344 1600  864 865 868 900 +hsync +vsync (67.5 kHz)
(II) intel(0): Modeline "1152x864"x74.8  104.00  1152 1224 1344 1536  864 867 871 905 -hsync +vsync (67.7 kHz)
(II) intel(0): Modeline "1280x960"x59.9  101.25  1280 1360 1488 1696  960 963 967 996 -hsync +vsync (59.7 kHz)
(II) intel(0): Modeline "1280x1024"x59.9  109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync (63.7 kHz)
(II) intel(0): EDID vendor "PHL", prod id 2135
(II) intel(0): EDID vendor "HSD", prod id 1001
(II) intel(0): DDCModeFromDetailedTiming: 1024x600 Warning: We only handle seperate sync.
(II) intel(0): xf86UnbindGARTMemory: unbind key 0
(II) Open ACPI successful (/var/run/acpid.socket)
(II) intel(0): xf86BindGARTMemory: bind key 0 at 0x04000000 (pgoffset 16384)
(II) intel(0): Fixed memory allocation layout:
(II) intel(0): 0x00000000-0x005fffff: compressed frame buffer (6144 kB, 0x000000003f800000 physical
)
(II) intel(0): 0x00600000-0x00600fff: compressed ll buffer (4 kB, 0x000000003fe00000 physical
)
(II) intel(0): 0x00601000-0x0060afff: HW cursors (40 kB, 0x000000003fe01000 physical
)
(II) intel(0): 0x0060b000-0x00612fff: logical 3D context (32 kB)
(II) intel(0): 0x00613000-0x00613fff: overlay registers (4 kB, 0x000000003fe13000 physical
)
(II) intel(0): 0x007bf000:            end of stolen memory
(II) intel(0): 0x04000000-0x07ffffff: front buffer (40960 kB) X tiled
(II) intel(0): 0x10000000:            end of aperture
(II) intel(0): Selecting standard 18 bit TMDS pixel format.
(II) intel(0): Output configuration:
(II) intel(0):   Pipe A is on
(II) intel(0):   Display plane B is now enabled and connected to pipe A.
(II) intel(0):   Pipe B is on
(II) intel(0):   Display plane A is now enabled and connected to pipe B.
(II) intel(0):   Output VGA is connected to pipe A
(II) intel(0):   Output LVDS is connected to pipe B
(II) intel(0):   Output TV is connected to pipe none
(II) PS/2 Mouse: ps2EnableDataReporting: succeeded
(II) intel(0): EDID vendor "PHL", prod id 2135
(II) intel(0): Using hsync ranges from config file
(II) intel(0): Using vrefresh ranges from config file
(II) intel(0): Printing DDC gathered Modelines:
(II) intel(0): Modeline "1280x1024"x0.0  108.00  1280 1328 1440 1688  1024 1025 1028 1066 +hsync +vsync (64.0 kHz)
(II) intel(0): Modeline "800x600"x0.0   40.00  800 840 968 1056  600 601 605 628 +hsync +vsync (37.9 kHz)
(II) intel(0): Modeline "800x600"x0.0   36.00  800 824 896 1024  600 601 603 625 +hsync +vsync (35.2 kHz)
(II) intel(0): Modeline "640x480"x0.0   31.50  640 656 720 840  480 481 484 500 -hsync -vsync (37.5 kHz)
(II) intel(0): Modeline "640x480"x0.0   31.50  640 664 704 832  480 489 491 520 -hsync -vsync (37.9 kHz)
(II) intel(0): Modeline "640x480"x0.0   30.24  640 704 768 864  480 483 486 525 -hsync -vsync (35.0 kHz)
(II) intel(0): Modeline "640x480"x0.0   25.20  640 656 752 800  480 490 492 525 -hsync -vsync (31.5 kHz)
(II) intel(0): Modeline "720x400"x0.0   28.32  720 738 846 900  400 412 414 449 -hsync +vsync (31.5 kHz)
(II) intel(0): Modeline "1280x1024"x0.0  135.00  1280 1296 1440 1688  1024 1025 1028 1066 +hsync +vsync (80.0 kHz)
(II) intel(0): Modeline "1024x768"x0.0   78.80  1024 1040 1136 1312  768 769 772 800 +hsync +vsync (60.1 kHz)
(II) intel(0): Modeline "1024x768"x0.0   75.00  1024 1048 1184 1328  768 771 777 806 -hsync -vsync (56.5 kHz)
(II) intel(0): Modeline "1024x768"x0.0   65.00  1024 1048 1184 1344  768 771 777 806 -hsync -vsync (48.4 kHz)
(II) intel(0): Modeline "832x624"x0.0   57.28  832 864 928 1152  624 625 628 667 -hsync -vsync (49.7 kHz)
(II) intel(0): Modeline "800x600"x0.0   49.50  800 816 896 1056  600 601 604 625 +hsync +vsync (46.9 kHz)
(II) intel(0): Modeline "800x600"x0.0   50.00  800 856 976 1040  600 637 643 666 +hsync +vsync (48.1 kHz)
(II) intel(0): Modeline "1152x864"x0.0  108.00  1152 1216 1344 1600  864 865 868 900 +hsync +vsync (67.5 kHz)
(II) intel(0): Modeline "1152x864"x74.8  104.00  1152 1224 1344 1536  864 867 871 905 -hsync +vsync (67.7 kHz)
(II) intel(0): Modeline "1280x960"x59.9  101.25  1280 1360 1488 1696  960 963 967 996 -hsync +vsync (59.7 kHz)
(II) intel(0): Modeline "1280x1024"x59.9  109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync (63.7 kHz)
(II) intel(0): EDID vendor "PHL", prod id 2135
(II) intel(0): EDID vendor "HSD", prod id 1001
(II) intel(0): DDCModeFromDetailedTiming: 1024x600 Warning: We only handle seperate sync.
(II) intel(0): EDID vendor "PHL", prod id 2135
(II) intel(0): Using hsync ranges from config file
(II) intel(0): Using vrefresh ranges from config file
(II) intel(0): Printing DDC gathered Modelines:
(II) intel(0): Modeline "1280x1024"x0.0  108.00  1280 1328 1440 1688  1024 1025 1028 1066 +hsync +vsync (64.0 kHz)
(II) intel(0): Modeline "800x600"x0.0   40.00  800 840 968 1056  600 601 605 628 +hsync +vsync (37.9 kHz)
(II) intel(0): Modeline "800x600"x0.0   36.00  800 824 896 1024  600 601 603 625 +hsync +vsync (35.2 kHz)
(II) intel(0): Modeline "640x480"x0.0   31.50  640 656 720 840  480 481 484 500 -hsync -vsync (37.5 kHz)
(II) intel(0): Modeline "640x480"x0.0   31.50  640 664 704 832  480 489 491 520 -hsync -vsync (37.9 kHz)
(II) intel(0): Modeline "640x480"x0.0   30.24  640 704 768 864  480 483 486 525 -hsync -vsync (35.0 kHz)
(II) intel(0): Modeline "640x480"x0.0   25.20  640 656 752 800  480 490 492 525 -hsync -vsync (31.5 kHz)
(II) intel(0): Modeline "720x400"x0.0   28.32  720 738 846 900  400 412 414 449 -hsync +vsync (31.5 kHz)
(II) intel(0): Modeline "1280x1024"x0.0  135.00  1280 1296 1440 1688  1024 1025 1028 1066 +hsync +vsync (80.0 kHz)
(II) intel(0): Modeline "1024x768"x0.0   78.80  1024 1040 1136 1312  768 769 772 800 +hsync +vsync (60.1 kHz)
(II) intel(0): Modeline "1024x768"x0.0   75.00  1024 1048 1184 1328  768 771 777 806 -hsync -vsync (56.5 kHz)
(II) intel(0): Modeline "1024x768"x0.0   65.00  1024 1048 1184 1344  768 771 777 806 -hsync -vsync (48.4 kHz)
(II) intel(0): Modeline "832x624"x0.0   57.28  832 864 928 1152  624 625 628 667 -hsync -vsync (49.7 kHz)
(II) intel(0): Modeline "800x600"x0.0   49.50  800 816 896 1056  600 601 604 625 +hsync +vsync (46.9 kHz)
(II) intel(0): Modeline "800x600"x0.0   50.00  800 856 976 1040  600 637 643 666 +hsync +vsync (48.1 kHz)
(II) intel(0): Modeline "1152x864"x0.0  108.00  1152 1216 1344 1600  864 865 868 900 +hsync +vsync (67.5 kHz)
(II) intel(0): Modeline "1152x864"x74.8  104.00  1152 1224 1344 1536  864 867 871 905 -hsync +vsync (67.7 kHz)
(II) intel(0): Modeline "1280x960"x59.9  101.25  1280 1360 1488 1696  960 963 967 996 -hsync +vsync (59.7 kHz)
(II) intel(0): Modeline "1280x1024"x59.9  109.00  1280 1368 1496 1712  1024 1027 1034 1063 -hsync +vsync (63.7 kHz)
(II) intel(0): EDID vendor "PHL", prod id 2135
(II) intel(0): EDID vendor "HSD", prod id 1001
(II) intel(0): DDCModeFromDetailedTiming: 1024x600 Warning: We only handle seperate sync.
Voilà, est-ce que quelqu'un aurait une idée pour éclairer ma lanterne ?

Merci pour vos possibles réponses,

Fred
Dernière modification par youshe le mer. 05 nov. 2008, 19:44, modifié 1 fois.
Avatar de l’utilisateur
cdemoulins
Chu Ko Nu
Messages : 310
Inscription : mar. 11 mars 2008, 04:15
Localisation : Paris

Message par cdemoulins »

Je ne pense pas que Xorg et les WM actuelle te permettent d'associer un bureau virtuel à un 'screen' mais j'avoue, ce serait une option assez intéressante pour simplifier l'utilisation de plusieurs écran.

Pareille, je pense pas que Xorg puisse faire ce que tu veux (ce que j'en ai compris) concernant l'affichage plein ecran sur deux ecrans avec des résolutions différentes. Pour moi, dans tous les cas sa reviendrais à limiter aux resolutions communes aux deux écrans. Avec un ecran de portable 16:10 et en projecteur 4:3, tu peux pas faire grand chose sans déformer l'image : du 1024x768 sur un ecran 16:10 c'est vraiment très laid.
La seul piste que je peux te donner c'est d'utiliser xrandr (il existe un bon frontend graphique : arandr) qui permet de disposer les screens sur une zone virtuel. Fait attention avec certaine chipset intel et le driver actuel intel, la zone virtuel est limité à 2048x2048 si tu veux pouvoir garder l'accélération graphique.
Cactus
Maître du Kyudo
Messages : 2073
Inscription : sam. 16 sept. 2006, 10:39
Localisation : 31 - Toulouse Nord

Message par Cactus »

1. sur ta configuration actuelle : il me semble que xorg 7.4 ne prend plus l'option Screen 1 LeftOf Screen 0, mais que maintenant ça se passe dans la section Device "Monitor"... je te dis ça de mémoire, j'avais étudié le truc il y a plus d'un an, mais tu devrais le retrouver facilement (recherche gogole, dual screen, xorg 7.4... voire aussi "xserver 1.4" je crois). A creuser... ;)

2. Pour ce que tu veux faire, ça peut simplement se résumer à un bi-session : 1 serveur X indépendant par écran (seule la souris se balade entre les 2, pas de copier-coler par contre, etc...)
Pour cela, il faut normalement enlever l'option xinerama... Et peut-être aussi d'autres modif, mais je en les connais pas. --> gogole, bi-session, etc...

Bon courage ! :wink:
youshe
Hankyu
Messages : 40
Inscription : sam. 30 août 2008, 22:38

Message par youshe »

Merci pour vos réponses, j'ai enfin réussi à avoir quelque chose de potable mais j'en parle un peu plus loin.
Je ne pense pas que Xorg et les WM actuelle te permettent d'associer un bureau virtuel à un 'screen' mais j'avoue, ce serait une option assez intéressante pour simplifier l'utilisation de plusieurs écran.
Peut être que j'explorerai le sujet prochainement qui sait.
Pour l'instant, ce que j'ai pu voir (cf ma configuration plus loin), c'est que awesome 3 (wm que j'utilise) se lance sur chaque écran. Il y a peut être moyen de modifier le code et la config de awesome ? A voir dirons nous, mais vu ce que permet ce WM, il doit y avoir des choses possibles, va falloir se replonger dans lua :) D'un autre coté, un VM aussi simple au niveau du code qu'un fork de dwm serait une bonne piste de recherche pour ce type d'entreprise. Libre après aux développeurs des autres VM de récupérer les idées, après tout, ça sert à ça le libre ;)
Pareille, je pense pas que Xorg puisse faire ce que tu veux (ce que j'en ai compris) concernant l'affichage plein ecran sur deux ecrans avec des résolutions différentes
[...]
La seul piste que je peux te donner c'est d'utiliser xrandr (il existe un bon frontend graphique : arandr) qui permet de disposer les screens sur une zone virtuel. Fait attention avec certaine chipset intel et le driver actuel intel, la zone virtuel est limité à 2048x2048 si tu veux pouvoir garder l'accélération graphique.
La piste xrandr et zone virtuelle est la bonne mais j'aime bien la ligne de commande :)
Concernant l'accélération graphique, si c'est la 3D, elle ne m'est d'aucune utilité vu la machine (eeePC). Cependant, l'accélération 2D peut avoir son importance pour éviter certains lags dirons nous :)
Enfin, cf. plus loin pour ma solution qui pourrait peut être t'aider qui sait toi aussi
gogole, bi-session, etc...
Ben notre outil favori gogole n'a pas bien répondu à la question de bi-session mais m'a renvoyé (un peu hors sujet) sur : http://wiki.debian.org/XStrikeForce/HowToRandR12 qui m'a aidé à mieux comprendre les choses :



La solution que j'ai adoptée maintenant (je détaille, ça servira de pseudo tuto et d'aide à la résolution de conflits d'autres personnes probablement) :

1. Le xorg.conf :

Code : Tout sélectionner

#Pas de ServerLayout

#Les classiques : 
Section "ServerFlags"
  Option "AllowMouseOpenFail"  "true"
EndSection

Section "Files"
  RgbPath      "/usr/share/X11/rgb"
  ModulePath   "/usr/lib/xorg/modules"
  FontPath     "/usr/share/fonts/misc:unscaled"
  FontPath     "/usr/share/fonts/misc"
  FontPath     "/usr/share/fonts/75dpi:unscaled"
  FontPath     "/usr/share/fonts/75dpi"
  FontPath     "/usr/share/fonts/100dpi:unscaled"
  FontPath     "/usr/share/fonts/100dpi"
  FontPath     "/usr/share/fonts/cyrillic"
  FontPath     "/usr/share/fonts/Type1"
EndSection

Section "Module"
EndSection

Section "InputDevice"
  Identifier  "Keyboard0"
  Driver      "keyboard"
        Option      "CoreKeyboard"
  Option "XkbRules" "xorg"
  Option "XkbModel" "pc105"
  Option "XkbLayout" "fr"
EndSection

Section "InputDevice"
  Identifier  "PS/2 Mouse"
  Driver      "mouse"
  Option      "Protocol" "auto"
  Option          "ZAxisMapping"          "4 5"
  Option      "Device" "/dev/psaux"
  Option      "Emulate3Buttons" "true"
  Option      "Emulate3Timeout" "70"
  Option      "SendCoreEvents"  "true"
EndSection

Section "InputDevice"
        Identifier      "USB Mouse"
        Driver          "mouse"
        Option          "Device"                "/dev/input/mice"
  Option    "SendCoreEvents"  "true"
        Option          "Protocol"              "IMPS/2"
        Option          "ZAxisMapping"          "4 5"
        Option          "Buttons"               "5"
EndSection

# Une entrée par sortie (:))
Section "Monitor" # Moniteur principal (eeePC)
  Identifier "LVDS Monitor"
  Option     "DPMS"
EndSection

Section "Monitor" # Sortie VGA
  Identifier "VGA Monitor"
  Option     "DPMS"
  # Je le place pour des commodités d'utilisation à droite de l'autre
  Option      "RightOf" "LVDS Monitor"
  # Et pour éviter les bugs d'affichage et zones débordantes, j'insère cette ligne. (pour voir comment l'obtenir, cf. fin du xorg.conf)
  Modeline "1024x768_60.00"  64.11  1024 1080 1184 1344  768 769 772 795  -HSync +Vsync
  # On spécifie le mode que l'on préfèrera pour cette sortie
  Option "PreferredMode" "1024x768_60.00"
EndSection

# Une seule entrée pour la carte graphique
Section "Device"
  Identifier   "Cintel"
  Driver        "intel"
  BusID        "PCI:0:2:0" # emplacement (cf. lspci)
  Option      "NoAccel" # J'ai désactivé l'accélération explicitement, peut être pas utile
  # On spécifie les sorties qui peuvent être branchées
  # Le premier argument est sauf erreur "Monitor-<nom_qui_apparait_dans_xrandr>"
  # Le second le nom qui correspond à l'identificateur de section Monitor correspondant
  Option      "Monitor-VGA" "VGA Monitor" 
  Option      "Monitor-LVDS" "LVDS Monitor"
EndSection

# Il reste une sortie dans la carte mais on ne l'utilise pas, autant l'ignorer
Section "Monitor"
  Identifier      "TV"
  Option "Ignore" "true"
EndSection

# Une session screen pour fixer ce qu'on veut faire
Section "Screen"
  Identifier "Seeepc"
  Device "Cintel"  # Carte correspondante
  DefaultDepth 24
      SubSection "Display"
        Depth           24
        Virtual         2048 1200 # La zone virtuelle maximum que l'on souhaite atteindre
      # 2048 : somme des ordonnées max des deux écrans accolés (vu qu'on fait du Right-off
      # 1200 : max (ordonnées des écrans possible) #j'aurais du mettre 1024 moi
      # L'idée du calcul est ici
      EndSubSection
EndSection

# Et ça, visiblement une histoire de droits pour DRI au 0666 mais j'ai pas cherché à savoir
Section "DRI"
  Mode 0666
EndSection
Les choix que j'ai fait sont potentiellement discutables mais l'idée est là.

Donc, pour obtenir la ligne :

Code : Tout sélectionner

Modeline "1024x768_60.00"  64.11  1024 1080 1184 1344  768 769 772 795  -HSync +Vsync
J'ai d'abord fait un xrandr pour savoir quels étaient les modes sympa pour cet écran :

Code : Tout sélectionner

VGA connected 1280x1024+0+0 (normal left inverted right x axis y axis) 338mm x 270mm
   1280x1024      60.0*+   75.0     59.9  
   1280x960       59.9  
   1152x864       75.0     74.8  
   1024x768       75.1     70.1     60.0  
   832x624        74.6  
   800x600        72.2     75.0     60.3     56.2  
   640x480        75.0     72.8     66.7     60.0  
   720x400        70.1  
La ligne qui m'intéresse est la 4 ème, pour connaitre l'entrée à mettre dans xorg.conf, j'ai simplement fait :

Code : Tout sélectionner

[user@up2 ~]$ gtf 1024 768 60

  # 1024x768 @ 60.00 Hz (GTF) hsync: 47.70 kHz; pclk: 64.11 MHz
  Modeline "1024x768_60.00"  64.11  1024 1080 1184 1344  768 769 772 795  -HSync +Vsync

Et un pattern matching humain vous donnera la fameuse ligne :)
(En passant, j'aurais pu prendre une fréquence de raffraichissement plus grande mais pas grave, je me dis que ça utilisera moins de CPU même si je ne sais pas de quoi je parle :))



Bon, revenons à nos moutons. En gros, à l'heure actuelle j'ai en configuration de base :
deux écrans, l'un de 1024x768 à 60Hz sur la sortie VGA et l'autre configuré automatiquement en interne (LVDS). L'écran VGA est virtuellement à droite de l'écran LVDS.


Pour changer de configuration, cela se fait avec xrandr...

Maintenant, je me distingue plusieurs utilisations possibles :

1. Je travaille en solo à l'extérieur sur mon eeePC :
Pas besoin de la sortie VGA
Seulement sortie écran de l'eeePC en 1024x600.
Ce qui donne avec xrandr :

Code : Tout sélectionner

  xrandr --output VGA --off && xrandr --output LVDS --mode 1024x600
2. Je fais une présentation sur un projecteur ou écran qui supporte le 1024x768 à 60 Hz :

Code : Tout sélectionner

xrandr --output LVDS --mode 1024x600 && xrandr --output VGA --mode 1024x768_60.00 --right-of LVDS
Ce qui me permet de travailler à la fois sur l'écran du portable et sur la sortie projecteur/écran

3. Je travaille chez moi et pour plus de confort, j'ai un switch KVM avec un ordi de bureau, ce qui me permet de switcher écran/clavier/souris.
Je n'ai pas besoin de l'écran du portable, seulement de l'écran en sortie qui sera configuré en 1280x1024 :

Code : Tout sélectionner

xrandr --output LVDS   --off && xrandr --output VGA --mode 1280x1024

J'ai presque fini. C'est bien joli tout ça, mais retaper toutes ces commandes à chaque changmenet, c'est pas vivable, l'informaticien est flemmard donc j'ai quelques petites fonctions (à placer dans .bashrc par exemple) :

Code : Tout sélectionner

# Je bosse sur l'eeepc en déplacement
function x_solo () {
        xrandr --output VGA --off && xrandr --output LVDS --mode 1024x600
}

# Je fais une présentation et j'aimerais pouvoir spécifier explicitement la résolution (cf. plus loin)
function x_presentation () {
        xrandr --output LVDS --mode 1024x600 && xrandr --output VGA --mode ${1:-1024x768_60.00} --right-of LVDS
}

# Je bosse sur mon joli écran PHILIPS :)
function x_appart () {
         xrandr --output LVDS   --off && xrandr --output VGA --mode 1280x1024
}
Pour invoquer ces différentes fonctions, je n'ai qu'à me loguer dans un shell bash et taper respectivement :

- Pour bosser en déplacement :

Code : Tout sélectionner

$ x_solo
- Pour faire une présentation en spécifiant éventuellement la [résolution] :

Code : Tout sélectionner

$ x_presentation [résolution]
- Pour bosser sur l'écran de bureau :

Code : Tout sélectionner

$ x_appart
Et comme la configuration la plus souvent utilisée est le x_solo, j'ai modifié mon .xinitrc comme ça :

Code : Tout sélectionner

xrandr --output VGA --off && xrandr --output LVDS --mode 1024x600 && exec awesome

Prochaine étape : mettre un binding de touches pour chacune de ces fonctions mais ça dépend du VM utilisé.
([Mod4] + [F8] pour présentation par exemple, avec détection automatique de la meilleure résolution, tous à vos scripts :))

Voilà, en espérant que ça servira à quelqu'un d'autre. Je pense que l'on peut placer le topic comme résolu :)

En tous cas, merci pour votre aide.

Fred
Cactus
Maître du Kyudo
Messages : 2073
Inscription : sam. 16 sept. 2006, 10:39
Localisation : 31 - Toulouse Nord

Message par Cactus »

Finalement, c'était bien le wiki de debian sur xrandr que je voulais te faire trouver ! bien vu ! ;)

Sinon, pourquoi ne pas faire de simples alias ?
alias clone='xrandr --output VGA-0 --mode 1680x1050 --pos 0x0'
alias dualscreen='xrandr --output VGA-0 --mode 1680x1050 --pos 0x1050'
alias lvdsoff='xrandr --output LVDS --off'
alias lvdson='xrandr --output LVDS --mode 1680x1050'
alias vgaoff='xrandr --output VGA-0 --off'
;)
youshe
Hankyu
Messages : 40
Inscription : sam. 30 août 2008, 22:38

Message par youshe »

Parce que je me suis posé la question sur comment faire les fonctions en bash (je ne me suis jamais penché sur le dev shell :))

Un alias est effectivement possible, mais je savais faire ;)
Et hm, sauf erreur, un alias ne permet pas de récupérer des arguments pour "paramétrer" l'utilisation (x_presentation par exemple).

Fred
Cactus
Maître du Kyudo
Messages : 2073
Inscription : sam. 16 sept. 2006, 10:39
Localisation : 31 - Toulouse Nord

Message par Cactus »

Ben, c'est que j'ai un doute, je ne sais pas s'il est possible de passer un argument avec un alias... je ne pense pas finalement... :wink:

EDIT : j'ai mis mes alias pour que tout le monde s'en inspire, pas que pour toi ! 8)
youshe
Hankyu
Messages : 40
Inscription : sam. 30 août 2008, 22:38

Message par youshe »

Yep, t'as bien fait pour tes alias :)

Fred
Répondre