{"id":1413,"date":"2008-05-22T10:40:31","date_gmt":"2008-05-22T15:40:31","guid":{"rendered":"http:\/\/blogs.terrorware.com\/geoff\/2008\/05\/22\/dual-headed-x11-setup-with-geforece-8400-gs-on-debian-lennysid\/"},"modified":"2008-05-22T10:40:31","modified_gmt":"2008-05-22T15:40:31","slug":"dual-headed-x11-setup-with-geforece-8400-gs-on-debian-lennysid","status":"publish","type":"post","link":"https:\/\/blogs.terrorware.com\/geoff\/2008\/05\/22\/dual-headed-x11-setup-with-geforece-8400-gs-on-debian-lennysid\/","title":{"rendered":"Dual Headed X11 setup with GeForece 8400 GS on Debian lenny\/sid"},"content":{"rendered":"<p>Having a job at the university means that I have access to hardware that I can&#8217;t afford to buy for myself.\u00c2\u00a0 My coworker was getting a new video card for his workstation and they just ordered me one too.\u00c2\u00a0 The card is an Nvidia GeForce 8400 GS PCI Express card manufactured by <a href=\"http:\/\/www.chaintech.com.tw\">Chaintech<\/a>.<\/p>\n<p>Downloading the Driver<\/p>\n<p>I have zero experience with post AGP video cards or dual head setups, so I just went off of my corworkers recommendation that I use the non-free Nvidia driver.\u00c2\u00a0 I downloaded it from this page:<\/p>\n<p><a href=\"http:\/\/www.nvidia.com\/object\/linux_display_ia32_169.12.html\">http:\/\/www.nvidia.com\/object\/linux_display_ia32_169.12.html<\/a><\/p>\n<p>Installing the Driver<\/p>\n<p>I ran the driver installer with the command:<\/p>\n<pre>sh NVIDIA-Linux-x86-169.12-pkg1.run<\/pre>\n<p>and it told me that it needed to be run as root and after X was shut down, so I had to switch to a console, kill X and su to root.<\/p>\n<p>The installer told me that it couldn&#8217;t find any precompiled drivers for my kernel, so I would have to build them.<\/p>\n<p>The installer also told me that the compiler that it found (gcc-4.2) was different than the one used to build my running kernel (gcc-4.1), so I had to set my CC environment variable to \/usr\/bin\/gcc-4.1:<\/p>\n<pre>export CC=\/usr\/bin\/gcc-4.1<\/pre>\n<p>It then told me that it couldn&#8217;t find the kernel source or kernel headers for my kernel (at the time 2.6.24-1).\u00c2\u00a0 To get the headers, I followed some of the <a href=\"http:\/\/kernel-handbook.alioth.debian.org\/ch-common-tasks.html#s-common-out-of-tree\">directions for building out-of-tree kernel modules<\/a>:<\/p>\n<pre>apt-get install linux-headers-2.6.24-2-686<\/pre>\n<p>Finally, I reran the driver installer, specifying the location of my kernel headers:<\/p>\n<p>sh NVIDIA-Linux-x86-169.12-pkg1.run &#8211;kernel-source-path=\/usr\/src\/linux-headers-2.6.24-1-686\/<\/p>\n<p>and the installation completed without a hitch.<\/p>\n<p>Configuring X (for this card with dual heads)<\/p>\n<p>This was the easy part because my coworker kicked me this config file:<\/p>\n<pre># xorg.conf (X.Org X Window System server configuration file)\r\n#\r\n# This file was generated by failsafeDexconf, using\r\n# values from the debconf database and some overrides to use vesa mode.\r\n#\r\n# You should use dexconf or another such tool for creating a \"real\" xorg.conf\r\n# For example:\r\n#   sudo dpkg-reconfigure -phigh xserver-xorg\r\n\r\nSection \"ServerFlags\"\r\n    Option \"DefaultServerLayout\" \"layout0\"\r\n#    Option \"Xinerama\" \"True\"\r\nEndSection\r\n\r\nSection \"InputDevice\"\r\n\tIdentifier\t\"keyboard0\"\r\n\tDriver\t\t\"kbd\"\r\n\tOption\t\t\"XkbRules\"\t\"xorg\"\r\n\tOption\t\t\"XkbModel\"\t\"pc105\"\r\n\tOption\t\t\"XkbLayout\"\t\"us\"\r\nEndSection\r\n\r\nSection \"InputDevice\"\r\n\tIdentifier\t\"mouse0\"\r\n\tDriver\t\t\"mouse\"\r\nEndSection\r\n\r\nSection \"Device\"\r\n\tIdentifier\t\"nvidia0\"\r\n\tBoardname\t\"GeForce 8400 GS\"\r\n\tBusid\t\t\"PCI:1:0:0\"\r\n\tDriver\t\t\"nvidia\"\r\n\tScreen\t0\r\n#    Option \"Monitor-\" \"monitor0\"\r\n#    Option\t\t\"NoLogo\"\t\"True\"\r\nEndSection\r\n\r\nSection \"Monitor\"\r\n\tIdentifier\t\"monitor0\"\r\n\tVendorname\t\"Plug 'n' Play\"\r\n\tModelname\t\"Plug 'n' Play\"\r\nEndSection\r\n\r\nSection \"Screen\"\r\n\tIdentifier\t\"screen0\"\r\n\tDevice\t\t\"nvidia0\"\r\n\tMonitor\t\t\"monitor0\"\r\n\tDefaultdepth\t24\r\n\tSubSection \"Display\"\r\n\t\tDepth\t24\r\n\tEndSubSection\r\nEndSection\r\n\r\nSection \"Device\"\r\n\tIdentifier\t\"nvidia1\"\r\n\tBoardname\t\"GeForce 8400 GS\"\r\n\tBusid\t\t\"PCI:1:0:0\"\r\n\tDriver\t\t\"nvidia\"\r\n\tScreen\t1\r\n#    Option \"Monitor-\" \"monitor0\"\r\nEndSection\r\n\r\nSection \"Monitor\"\r\n\tIdentifier\t\"monitor1\"\r\n\tVendorname\t\"Plug 'n' Play\"\r\n\tModelname\t\"Plug 'n' Play\"\r\nEndSection\r\n\r\nSection \"Screen\"\r\n\tIdentifier\t\"screen1\"\r\n\tDevice\t\t\"nvidia1\"\r\n\tMonitor\t\t\"monitor1\"\r\n\tDefaultdepth\t24\r\n\tSubSection \"Display\"\r\n\t\tDepth\t24\r\n\tEndSubSection\r\nEndSection\r\n\r\nSection \"ServerLayout\"\r\n\tIdentifier\t\"layout0\"\r\n    Screen 0 \"screen0\" 0 0\r\n    Screen 1 \"screen1\" RightOf \"screen0\"\r\n    Option \"CoreKeyboard\" \"keyboard0\"\r\n    Option \"CorePointer\" \"mouse0\"\r\nEndSection\r\n\r\nSection \"Module\"\r\n\tLoad\t\t\"glx\"\r\n\tLoad\t\t\"v4l\"\r\nEndSection\r\n\r\nSection \"DRI\"\r\n    Mode 0667\r\nEndSection<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Having a job at the university means that I have access to hardware that I can&#8217;t afford to buy for myself.\u00c2\u00a0 My coworker was getting a new video card for his workstation and they just ordered me one too.\u00c2\u00a0 The card is an Nvidia GeForce 8400 GS PCI Express card manufactured by Chaintech. Downloading the&hellip; <a class=\"more-link\" href=\"https:\/\/blogs.terrorware.com\/geoff\/2008\/05\/22\/dual-headed-x11-setup-with-geforece-8400-gs-on-debian-lennysid\/\">Continue reading <span class=\"screen-reader-text\">Dual Headed X11 setup with GeForece 8400 GS on Debian lenny\/sid<\/span><\/a><\/p>\n","protected":false},"author":3,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[5],"tags":[534,252,536,535,21287,9460,537],"class_list":["post-1413","post","type-post","status-publish","format-standard","hentry","category-howto","tag-configuration","tag-debian","tag-geforce","tag-nvidia","tag-howto","tag-x","tag-x11","entry"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p4wnIz-mN","_links":{"self":[{"href":"https:\/\/blogs.terrorware.com\/geoff\/wp-json\/wp\/v2\/posts\/1413","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.terrorware.com\/geoff\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.terrorware.com\/geoff\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.terrorware.com\/geoff\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.terrorware.com\/geoff\/wp-json\/wp\/v2\/comments?post=1413"}],"version-history":[{"count":0,"href":"https:\/\/blogs.terrorware.com\/geoff\/wp-json\/wp\/v2\/posts\/1413\/revisions"}],"wp:attachment":[{"href":"https:\/\/blogs.terrorware.com\/geoff\/wp-json\/wp\/v2\/media?parent=1413"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.terrorware.com\/geoff\/wp-json\/wp\/v2\/categories?post=1413"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.terrorware.com\/geoff\/wp-json\/wp\/v2\/tags?post=1413"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}