Package: nvidia-graphics-drivers
Version: 1.0.8776-2
Severity: wishlist
Tags: patch

The nvidia-glx package performs some diversions that cause the other 3-D drivers to stop working when it is installed. This causes problems when users swap in a different video card, or move their hard drive into a different machine, or in various other situations. The attached patch to the source package removes the diversions and instead puts the files into subdirectories and modifies /etc/ld.so.conf and /etc/X11/xorg.conf to make the driver work properly. nvidia-enable and nvidia-disable scripts are included.

diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/control nvidia-graphics-drivers-1.0.8776/debian/control
--- nvidia-graphics-drivers-1.0.8776.orig/debian/control	2006-11-29 08:41:11.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/control	2006-11-29 08:52:00.000000000 -0500
@@ -2,13 +2,13 @@
 Section: non-free/x11
 Priority: optional
 Maintainer: Randall Donald <[EMAIL PROTECTED]>
-Build-Depends: debhelper (>> 4.0.0), sed (>> 3.0)
+Build-Depends: debhelper (>> 4.0.0), sed (>> 3.0), ghc6
 Standards-Version: 3.6.2
 
 
 Package: nvidia-glx-ia32
 Architecture: amd64
-Depends: nvidia-kernel-1.0.8776, ia32-libs, ${shlibs:Depends}
+Depends: nvidia-kernel-1.0.8776, nvidia-glx-support, ia32-libs, ${shlibs:Depends}
 Suggests: nvidia-settings, nvidia-kernel-source (>= 1.0.8776)
 Conflicts: nvidia-glx-src
 Replaces: nvidia-glx-src
@@ -31,7 +31,7 @@
 
 Package: nvidia-glx
 Architecture: i386 amd64
-Depends: nvidia-kernel-1.0.8776, x11-common (>= 1:7.0.0), ${shlibs:Depends}
+Depends: nvidia-kernel-1.0.8776, nvidia-glx-support, x11-common (>= 1:7.0.0), ${shlibs:Depends}
 Suggests: nvidia-settings, nvidia-kernel-source (>= 1.0.8776)
 Conflicts: nvidia-glx-src, nvidia-glx-dev (<< 1.0.8774-5)
 Provides: xserver-xorg-video-1.0
@@ -52,7 +52,14 @@
  .
  Please see the nvidia-kernel-source package for building the kernel module
  required by this package.
- 
+
+Package: nvidia-glx-support
+Architecture: i386 amd64
+Description: Support scripts for enabling and disabling the nvidia drivers
+ In order to enable the nvidia drivers it is necessary to edit the xorg.conf
+ file, modify /etc/ld.so.conf, and run ldconfig.  The scripts in this package
+ perform these tasks.
+
 Package: nvidia-glx-dev
 Architecture: i386 amd64
 Depends: nvidia-glx (>= 1.0.8776)
diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/control.in nvidia-graphics-drivers-1.0.8776/debian/control.in
--- nvidia-graphics-drivers-1.0.8776.orig/debian/control.in	2006-11-29 08:41:11.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/control.in	2006-11-29 09:11:18.000000000 -0500
@@ -8,7 +8,7 @@
 
 Package: nvidia-glx-ia32
 Architecture: amd64
-Depends: nvidia-kernel-#VERSION#, ia32-libs, ${shlibs:Depends}
+Depends: nvidia-kernel-#VERSION#, nvidia-glx-support, ia32-libs, ${shlibs:Depends}
 Suggests: nvidia-settings, nvidia-kernel-source (>= #VERSION#)
 Conflicts: nvidia-glx-src
 Replaces: nvidia-glx-src
@@ -31,7 +31,7 @@
 
 Package: nvidia-glx
 Architecture: i386 amd64
-Depends: nvidia-kernel-#VERSION#, x11-common (>= 1:7.0.0), ${shlibs:Depends}
+Depends: nvidia-kernel-#VERSION#, nvidia-glx-support, x11-common (>= 1:7.0.0), ${shlibs:Depends}
 Suggests: nvidia-settings, nvidia-kernel-source (>= #VERSION#)
 Conflicts: nvidia-glx-src, nvidia-glx-dev (<< 1.0.8774-5)
 Provides: xserver-xorg-video-1.0
@@ -52,6 +52,13 @@
  .
  Please see the nvidia-kernel-source package for building the kernel module
  required by this package.
+
+Package: nvidia-glx-support
+Architecture: i386 amd64
+Description: Support scripts for enabling and disabling the nvidia drivers
+ In order to enable the nvidia drivers it is necessary to edit the xorg.conf
+ file, modify /etc/ld.so.conf, and run ldconfig.  The scripts in this package
+ perform these tasks.
  
 Package: nvidia-glx-dev
 Architecture: i386 amd64
diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/editxconf.hs nvidia-graphics-drivers-1.0.8776/debian/editxconf.hs
--- nvidia-graphics-drivers-1.0.8776.orig/debian/editxconf.hs	1969-12-31 19:00:00.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/editxconf.hs	2006-11-29 08:41:56.000000000 -0500
@@ -0,0 +1,240 @@
+#!/usr/bin/runhaskell
+
+-- Parse an xorg.conf file, modify it, and rewrite it.  
+-- Author: David Fox <[EMAIL PROTECTED]>, 19 Nov 2006.
+
+import Control.Exception
+import Data.List
+import Data.Maybe
+import System.Cmd
+import System.Console.GetOpt
+import System.Directory
+import System.Environment
+import System.IO
+import System.Posix.Files
+import Text.Regex
+
+-- | The elements of an xorg.conf file.
+data Line
+    = Comment String String
+    | Section String String String String [Line]
+    | SubSection String String String String [Line]
+    | EndSection String String
+    | EndSubSection String String
+    | Param String String String String String
+    deriving Eq
+
+-- | What we can do - change a line, section or subsection, set the
+-- path of the xorg.conf file, and print the help message.
+data Operation
+    = Function ModifyLine
+    | Path FilePath
+    | Help
+
+-- | The signature of a function that modifies a line or section.
+type ModifyLine = Maybe String -> Maybe String -> Line -> [Line]
+
+instance Show Line where
+    show (Comment prefix suffix) = prefix ++ suffix
+    show (Section prefix sep name suffix lines) =
+        prefix ++ "Section" ++ sep ++ "\"" ++ name ++ "\"" ++
+               suffix ++ concat (map show lines)
+    show (SubSection prefix sep name suffix lines) =
+        prefix ++ "SubSection" ++ sep ++ "\"" ++ name ++ "\"" ++
+               suffix ++ concat (map show lines)
+    show (EndSection prefix suffix) = prefix ++ "EndSection" ++ suffix
+    show (EndSubSection prefix suffix) = prefix ++ "EndSubSection" ++ suffix
+    show (Param prefix name sep value suffix) = 
+        prefix ++ name ++ sep ++ value ++ suffix
+
+defaultPath = "/etc/X11/xorg.conf"
+
+main :: IO ()
+main =
+    do
+      -- Process the command line arguments.
+      args <- System.Environment.getArgs
+      flags <- 
+          case getOpt Permute optSpecs args of
+            (o, [], []) -> return o
+            (o, extra, []) -> return o
+            (_, _, errs) -> ioError (userError (concat errs ++ usage))
+      let help = length (filter isHelp flags) > 0
+      let path = maybe defaultPath id (foldl findPath Nothing flags)
+      let f = foldl findFunction Nothing flags
+      case (help, f) of
+        (True, _) ->
+            putStr usage
+        (False, Just f) ->
+            do
+              -- Read and parse the xorg.conf file
+              text <- readFile path
+              let conf = buildGroups . catMaybes . map parseLine . lines $ text
+              -- Peform the modification
+              let conf' = modify f Nothing Nothing conf
+              -- Rebuild the text file, rewrite it if it changed
+              let text' = concat . map show $ conf'
+              if text /= text' then edit path text' else hPutStrLn stderr ("No modification of " ++ path ++ " required.")
+    where
+      usage = usageInfo ("Usage: editxconf [OPTION...]") optSpecs
+      findPath (Just path) _ = Just path
+      findPath Nothing (Path path) = Just path
+      findPath Nothing _ = Nothing
+      findFunction (Just f) _ = Just f
+      findFunction Nothing (Function f) = Just f
+      findFunction Nothing _ = Nothing
+      isHelp Help = True
+      isHelp _ = False
+
+edit :: FilePath -> String -> IO ()
+-- ^ Modify the contents of a file as safely as possible.  If we
+-- can't write the new text into the file, leave it unchanged.
+-- Assume the new text differs from the old.
+edit path text =
+    do
+      -- Write the new file
+      writeFile (path ++ ".new") text
+      -- Remove any existing backup
+      doesFileExist (path ++ "~") >>= bool (return ()) (removeFile (path ++ "~"))
+      -- Move the original to the backup if it exists and remove the original
+      doesFileExist path >>= bool (return ()) (rename path (path ++ "~"))
+      -- Rename the new file
+      try (rename (path ++ ".new") path) >>= either (\ e -> do rename (path ++ "~") path; error (show e)) return
+      hPutStrLn stderr ("File " ++ path ++ " modified.")
+      system ("diff -ru " ++ path ++ "~ " ++ path ++ " 1>&2")
+      return ()
+
+bool f _ False = f
+bool _ t True = t
+
+parseLine :: String -> Maybe Line
+-- ^ Try to parse a line of an xorg.conf file.  Six different
+-- regular expressions are tried in order, and the first that
+-- matches is used.  The result is passed to the corresponding
+-- function to build the line.
+parseLine line =
+    foldl tryRE Nothing
+              [(commentRE, commentFN),
+               (sectionRE, sectionFN),
+               (subSectionRE, subSectionFN),
+               (endSectionRE, endSectionFN),
+               (endSubSectionRE, endSubSectionFN),
+               (paramRE, paramFN)]
+    where
+      tryRE result (re, f) =
+          case result of
+            Just x -> Just x
+            Nothing -> maybe Nothing (Just . f) (matchRegex re line)
+      commentRE = mkRegex ("^" ++ groupRE optionalWhite ++ "(#.*)?$")
+      commentFN [prefix, suffix] = Comment prefix (suffix ++ "\n")
+      sectionRE = mkRegex ("^" ++ groupRE optionalWhite ++ "Section" ++
+                           groupRE white ++ quotedString ++ groupRE optionalWhite ++ "$")
+      sectionFN [prefix, sep, name, _, suffix] = Section prefix sep name (suffix ++ "\n") []
+      subSectionRE = mkRegex ("^" ++ groupRE optionalWhite ++ "SubSection" ++
+                              groupRE white ++ quotedString ++ groupRE optionalWhite ++ "$")
+      subSectionFN [prefix, sep, name, _, suffix] = SubSection prefix sep name (suffix ++ "\n") []
+      endSectionRE = mkRegex ("^" ++ groupRE optionalWhite ++ "EndSection" ++
+                              groupRE optionalWhite ++ "$")
+      endSectionFN [prefix, suffix] = EndSection prefix (suffix ++ "\n")
+      endSubSectionRE = mkRegex ("^" ++ groupRE optionalWhite ++ "EndSubSection" ++
+                                 groupRE optionalWhite ++ "$")
+      endSubSectionFN [prefix, suffix] = EndSubSection prefix (suffix ++ "\n")
+      paramRE = mkRegex ("^" ++ groupRE optionalWhite ++ groupRE nonWhite ++
+                         groupRE (groupRE white ++ groupRE ".*" ++ groupRE optionalWhite) ++ "?$")
+      paramFN [prefix, name, _, sep, value, suffix] = Param prefix name sep value (suffix ++ "\n")
+
+buildGroups :: [Line] -> [Line]
+-- ^ Group the lines of the sections and subsections
+buildGroups (Section prefix sep name suffix [] : lines) =
+    case break isEndSection lines of
+      (section, (end : extra)) -> Section prefix sep name suffix (buildGroups section ++ [end]) : buildGroups extra
+      (_, []) -> error "Missing EndSection"
+    where
+      isEndSection (EndSection _ _) = True
+      isEndSection _ = False
+buildGroups (SubSection prefix sep name suffix [] : lines) =
+    case break isEndSubSection lines of
+      (section, (end : extra)) -> SubSection prefix sep name suffix (buildGroups section ++ [end]) : buildGroups extra
+      (_, []) -> error "Missing EndSubSection"
+    where
+      isEndSubSection (EndSubSection _ _) = True
+      isEndSubSection _ = False
+buildGroups (line : lines) = line : buildGroups lines
+buildGroups [] = []
+
+modify :: ModifyLine -> Maybe String -> Maybe String -> [Line] -> [Line]
+-- ^ Map every line in the xorg.conf over f to get a modified config.
+-- The function f returns a list of lines, so lines can be added or
+-- eliminated by returning more or less than one line.
+modify f Nothing Nothing (Section prefix sep sectionName suffix sectionLines : lines) =
+    let sectionLines' = modify f (Just sectionName) Nothing sectionLines in
+    let section' = Section prefix sep sectionName suffix sectionLines' in
+    f Nothing Nothing section' ++ modify f Nothing Nothing lines
+modify f _ _ (Section _ _ _ _ _ : _) = error "Misplaced Section"
+modify f (Just sectionName) Nothing (SubSection prefix sep subSectionName suffix subSectionLines : lines) =
+    let subSectionLines' = modify f (Just sectionName) (Just subSectionName) subSectionLines in
+    let subSection' = SubSection prefix sep subSectionName suffix subSectionLines' in
+    f (Just sectionName) Nothing subSection' ++ modify f (Just sectionName) Nothing lines
+modify f _ _ (SubSection _ _ _ _ _ : _) = error "Misplaced SubSection"
+modify f section subsection (line : lines) = f section subsection line ++ modify f section subsection lines
+modify _ _ _ [] = []
+
+addPrefixToModulePath :: FilePath -> Maybe String -> Maybe String -> Line -> [Line]
+-- ^ A modification function to add a path to the beginning
+-- of a colon separated path list, removing any instances
+-- that may already be present.
+addPrefixToModulePath path (Just "Files") Nothing (Param prefix "ModulePath" sep value suffix) =
+    let paths = parseModulePath value in
+    let paths' = path : filter (/= path) paths in
+    [Param prefix "ModulePath" sep ("\"" ++ concat (intersperse ":" paths') ++ "\"") suffix]
+addPrefixToModulePath path _ _ line = [line]
+
+removeFromModulePath :: FilePath -> Maybe String -> Maybe String -> Line -> [Line]
+-- ^ A modification function to remove a path from the ModulePath
+-- value.
+removeFromModulePath path (Just "Files") Nothing (Param prefix "ModulePath" sep value suffix) =
+    let paths = parseModulePath value in
+    let paths' = filter (/= path) paths in
+    [Param prefix "ModulePath" sep ("\"" ++ concat (intersperse ":" paths') ++ "\"") suffix]
+removeFromModulePath path _ _ line = [line]
+
+parseModulePath :: String -> [String]
+-- ^ Given a string of colon separated paths, possibly quoted, return
+-- ^ a list of the paths.
+parseModulePath value =
+    let paths =
+            case matchRegex modulePathRE value of
+              Just [s, _, ""] -> s
+              Just ["", _, s] -> s
+              _ -> error "Internal error" in
+    filter (/= "") . split (== ':') $ paths
+    where
+      modulePathRE = mkRegex ("^" ++ optionalWhite ++ quotedString ++ "|(.*)" ++ optionalWhite ++ "$")
+
+-- Some regular expression components.
+quotedString = "\"" ++ groupRE ((groupRE "[^\"]|\\\"") ++ "*") ++ "\""
+white = "[ \t]+"
+nonWhite = "[^ \t]+"
+optionalWhite = "[ \t]*"
+groupRE s = "(" ++ s ++ ")"
+
+split :: (a -> Bool) -> [a] -> [[a]]
+-- ^ Split a list at the elements which match the predicate.
+split f [] = []
+split f s =
+    case break f s of
+      (s, []) -> [s]
+      (s, _ : t) -> s : split f t
+
+optSpecs :: [OptDescr Operation]
+optSpecs =
+    [Option ['a'] ["add-module-path"] 
+                (ReqArg (\ path -> Function (addPrefixToModulePath path)) "PATH")
+                "Add a path to the beginning of the ModulePath value in the Files section.",
+     Option ['r'] ["remove-module-path"]
+                (ReqArg (\ path -> Function (removeFromModulePath path)) "PATH")
+                "Remove a path from the ModulePath value in the Files section.",
+     Option ['p'] ["xorg-conf-location"]
+                (ReqArg Path "PATH")
+                "Location of xorg.conf file, default is /etc/X11/xorg.conf.",
+     Option ['h', '?'] ["help"] (NoArg Help) "Print usage message."]
diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-disable nvidia-graphics-drivers-1.0.8776/debian/nvidia-disable
--- nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-disable	1969-12-31 19:00:00.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/nvidia-disable	2006-11-29 08:52:28.000000000 -0500
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+PATH=/bin:/sbin:/usr/bin:/usr/sbin
+
+echo "De-configuring the NVIDIA driver" 1>&2
+
+editxconf --remove-module-path /usr/lib/xorg/modules/nvidia
+
+grep -q '^/usr/lib/nvidia$' /etc/ld.so.conf && {
+    rm -f /etc/ld.so.conf.orig
+    cp /etc/ld.so.conf /etc/ld.so.conf.orig
+    grep -v '^/usr/lib/nvidia$' < /etc/ld.so.conf.orig > /etc/ld.so.conf
+    ldconfig
+}
+
+if [ -e /sys/module/nvidia ]; then
+    modprobe -r nvidia || true
+    modprobe -r drm || true
+fi
+
+echo -n > /etc/modprobe.d/aliases.nvidia
+
+exit 0
diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-enable nvidia-graphics-drivers-1.0.8776/debian/nvidia-enable
--- nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-enable	1969-12-31 19:00:00.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/nvidia-enable	2006-11-29 08:52:21.000000000 -0500
@@ -0,0 +1,31 @@
+#!/bin/sh
+
+PATH=/bin:/sbin:/usr/bin:/usr/sbin
+
+editxconf --add-module-path /usr/lib/xorg/modules/nvidia
+
+grep -q '/usr/lib/nvidia' /etc/ld.so.conf || {
+    rm -f /etc/ld.so.conf.orig
+    cp /etc/ld.so.conf /etc/ld.so.conf.orig
+    echo '/usr/lib/nvidia' > /etc/ld.so.conf
+    cat /etc/ld.so.conf.orig >> /etc/ld.so.conf
+    ldconfig
+}
+
+if [ ! -e /sys/module/nvidia ]; then
+    modprobe -r drm || true
+    modprobe nvidia
+fi
+
+# The fglrx module is loaded automatically when the driver starts.
+# However, it is necessary to unload any drm module that is already
+# inserted because it will prevent fglrx from loading.  Theoretically,
+# removing drm should do it, but I've seen that fail.
+
+modprobe -r drm
+
+# This causes the nvidia kernel module to be loaded when any /dev/dri
+# device is probed.
+echo "alias /dev/dri* nvidia" > /etc/modprobe.d/aliases.nvidia
+
+exit 0
diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx.dirs nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx.dirs
--- nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx.dirs	2006-11-29 08:41:11.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx.dirs	2006-11-29 12:06:18.000000000 -0500
@@ -2,9 +2,10 @@
 usr/lib
 usr/share/lintian/overrides
 usr/lib/xorg/modules/drivers
-usr/lib/xorg/modules/extensions
+usr/lib/xorg/modules/nvidia
 usr/lib/tls
 usr/lib/nvidia
+usr/lib/nvidia/tls
 usr/share/bug/nvidia-glx
 etc
 etc/default
diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx-ia32.links nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx-ia32.links
--- nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx-ia32.links	2006-11-29 08:41:11.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx-ia32.links	2006-11-29 08:41:56.000000000 -0500
@@ -1,4 +1,4 @@
-emul/ia32-linux/usr/lib/libGL.so.1.0.8776 emul/ia32-linux/usr/lib/libGL.so.1
-emul/ia32-linux/usr/lib/libGL.so.1.0.8776 emul/ia32-linux/usr/lib/libGL.so
-emul/ia32-linux/usr/lib/libGLcore.so.1.0.8776 emul/ia32-linux/usr/lib/libGLcore.so
+emul/ia32-linux/usr/lib/nvidia/libGL.so.1.0.8776 emul/ia32-linux/usr/lib/nvidia/libGL.so.1
+emul/ia32-linux/usr/lib/nvidia/libGL.so.1.0.8776 emul/ia32-linux/usr/lib/nvidia/libGL.so
+emul/ia32-linux/usr/lib/nvidia/libGLcore.so.1.0.8776 emul/ia32-linux/usr/lib/nvidia/libGLcore.so
 emul/ia32-linux/usr/lib/libnvidia-tls.so.1.0.8776 emul/ia32-linux/usr/lib/libnvidia-tls.so.1
diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx-ia32.links.in nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx-ia32.links.in
--- nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx-ia32.links.in	2006-11-29 08:41:11.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx-ia32.links.in	2006-11-29 08:41:56.000000000 -0500
@@ -1,4 +1,4 @@
-emul/ia32-linux/usr/lib/libGL.so.#VERSION# emul/ia32-linux/usr/lib/libGL.so.1
-emul/ia32-linux/usr/lib/libGL.so.#VERSION# emul/ia32-linux/usr/lib/libGL.so
-emul/ia32-linux/usr/lib/libGLcore.so.#VERSION# emul/ia32-linux/usr/lib/libGLcore.so
+emul/ia32-linux/usr/lib/nvidia/libGL.so.#VERSION# emul/ia32-linux/usr/lib/nvidia/libGL.so.1
+emul/ia32-linux/usr/lib/nvidia/libGL.so.#VERSION# emul/ia32-linux/usr/lib/nvidia/libGL.so
+emul/ia32-linux/usr/lib/nvidia/libGLcore.so.#VERSION# emul/ia32-linux/usr/lib/nvidia/libGLcore.so
 emul/ia32-linux/usr/lib/libnvidia-tls.so.#VERSION# emul/ia32-linux/usr/lib/libnvidia-tls.so.1
diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx-ia32.postrm nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx-ia32.postrm
--- nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx-ia32.postrm	2006-11-29 08:41:11.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx-ia32.postrm	2006-11-29 08:41:56.000000000 -0500
@@ -19,25 +19,25 @@
 case "$1" in
     remove|purge)
 
-	dpkg-divert --remove --rename --package nvidia-glx-ia32 --divert \
-		/emul/ia32-linux/usr/lib/nvidia/libGL.so.1.ia32-libs \
-		/emul/ia32-linux/usr/lib/libGL.so.1 > /dev/null
-	dpkg-divert --remove --rename --package nvidia-glx-ia32 --divert \
-		/emul/ia32-linux/usr/lib/nvidia/libGL.so.1.2.ia32-libs \
-		/emul/ia32-linux/usr/lib/libGL.so.1.2 > /dev/null
-	dpkg-divert --remove --rename --package nvidia-glx-ia32 --divert \
-		/emul/ia32-linux/usr/lib/nvidia/libGL.so.ia32-libs \
-		/emul/ia32-linux/usr/lib/libGL.so > /dev/null
-
-	dpkg-divert --remove --rename --package nvidia-glx-ia32 --divert \
-		/emul/ia32-linux/usr/lib/nvidia/libGL.so.1.ia32-libs \
-		/emul/ia32-linux/usr/lib/libGL.so.1 > /dev/null
-	dpkg-divert --remove --rename --package nvidia-glx-ia32 --divert \
-		/emul/ia32-linux/usr/lib/nvidia/libGL.so.1.2.ia32-libs \
-		/emul/ia32-linux/usr/lib/libGL.so.1.2 > /dev/null
-	dpkg-divert --remove --rename --package nvidia-glx-ia32 --divert \
-		/emul/ia32-linux/usr/lib/nvidia/libGL.so.ia32-libs \
-		/emul/ia32-linux/usr/lib/libGL.so > /dev/null
+	#dpkg-divert --remove --rename --package nvidia-glx-ia32 --divert \
+	#	/emul/ia32-linux/usr/lib/nvidia/libGL.so.1.ia32-libs \
+	#	/emul/ia32-linux/usr/lib/libGL.so.1 > /dev/null
+	#dpkg-divert --remove --rename --package nvidia-glx-ia32 --divert \
+	#	/emul/ia32-linux/usr/lib/nvidia/libGL.so.1.2.ia32-libs \
+	#	/emul/ia32-linux/usr/lib/libGL.so.1.2 > /dev/null
+	#dpkg-divert --remove --rename --package nvidia-glx-ia32 --divert \
+	#	/emul/ia32-linux/usr/lib/nvidia/libGL.so.ia32-libs \
+	#	/emul/ia32-linux/usr/lib/libGL.so > /dev/null
+
+	#dpkg-divert --remove --rename --package nvidia-glx-ia32 --divert \
+	#	/emul/ia32-linux/usr/lib/nvidia/libGL.so.1.ia32-libs \
+	#	/emul/ia32-linux/usr/lib/libGL.so.1 > /dev/null
+	#dpkg-divert --remove --rename --package nvidia-glx-ia32 --divert \
+	#	/emul/ia32-linux/usr/lib/nvidia/libGL.so.1.2.ia32-libs \
+	#	/emul/ia32-linux/usr/lib/libGL.so.1.2 > /dev/null
+	#dpkg-divert --remove --rename --package nvidia-glx-ia32 --divert \
+	#	/emul/ia32-linux/usr/lib/nvidia/libGL.so.ia32-libs \
+	#	/emul/ia32-linux/usr/lib/libGL.so > /dev/null
 
 	test -d /emul/ia32-linux/usr/lib/nvidia && \
 		rmdir /emul/ia32-linux/usr/lib/nvidia || true;
diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx-ia32.preinst nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx-ia32.preinst
--- nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx-ia32.preinst	2006-11-29 08:41:11.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx-ia32.preinst	2006-11-29 08:41:56.000000000 -0500
@@ -21,25 +21,25 @@
 		mkdir -p /emul/ia32-linux/usr/lib/nvidia || true
 	
 	# make diversions
-	dpkg-divert --add --rename --package nvidia-glx-ia32 --divert \
-		/emul/ia32-linux/usr/lib/nvidia/libGL.so.1.ia32-libs \
-		/emul/ia32-linux/usr/lib/libGL.so.1 > /dev/null
-	dpkg-divert --add --rename --package nvidia-glx-ia32 --divert \
-		/emul/ia32-linux/usr/lib/nvidia/libGL.so.1.2.ia32-libs \
-		/emul/ia32-linux/usr/lib/libGL.so.1.2 > /dev/null
-	dpkg-divert --add --rename --package nvidia-glx-ia32 --divert \
-		/emul/ia32-linux/usr/lib/nvidia/libGL.so.ia32-libs \
-		/emul/ia32-linux/usr/lib/libGL.so > /dev/null
-
-	dpkg-divert --add --rename --package nvidia-glx-ia32 --divert \
-		/emul/ia32-linux/usr/lib/nvidia/libGL.so.1.ia32-libs \
-		/emul/ia32-linux/usr/lib/libGL.so.1 > /dev/null
-	dpkg-divert --add --rename --package nvidia-glx-ia32 --divert \
-		/emul/ia32-linux/usr/lib/nvidia/libGL.so.1.2.ia32-libs \
-		/emul/ia32-linux/usr/lib/libGL.so.1.2 > /dev/null
-	dpkg-divert --add --rename --package nvidia-glx-ia32 --divert \
-		/emul/ia32-linux/usr/lib/nvidia/libGL.so.ia32-libs \
-		/emul/ia32-linux/usr/lib/libGL.so > /dev/null
+	#dpkg-divert --add --rename --package nvidia-glx-ia32 --divert \
+	#	/emul/ia32-linux/usr/lib/nvidia/libGL.so.1.ia32-libs \
+	#	/emul/ia32-linux/usr/lib/libGL.so.1 > /dev/null
+	#dpkg-divert --add --rename --package nvidia-glx-ia32 --divert \
+	#	/emul/ia32-linux/usr/lib/nvidia/libGL.so.1.2.ia32-libs \
+	#	/emul/ia32-linux/usr/lib/libGL.so.1.2 > /dev/null
+	#dpkg-divert --add --rename --package nvidia-glx-ia32 --divert \
+	#	/emul/ia32-linux/usr/lib/nvidia/libGL.so.ia32-libs \
+	#	/emul/ia32-linux/usr/lib/libGL.so > /dev/null
+
+	#dpkg-divert --add --rename --package nvidia-glx-ia32 --divert \
+	#	/emul/ia32-linux/usr/lib/nvidia/libGL.so.1.ia32-libs \
+	#	/emul/ia32-linux/usr/lib/libGL.so.1 > /dev/null
+	#dpkg-divert --add --rename --package nvidia-glx-ia32 --divert \
+	#	/emul/ia32-linux/usr/lib/nvidia/libGL.so.1.2.ia32-libs \
+	#	/emul/ia32-linux/usr/lib/libGL.so.1.2 > /dev/null
+	#dpkg-divert --add --rename --package nvidia-glx-ia32 --divert \
+	#	/emul/ia32-linux/usr/lib/nvidia/libGL.so.ia32-libs \
+	#	/emul/ia32-linux/usr/lib/libGL.so > /dev/null
 
     ;;
 
diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx.init nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx.init
--- nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx.init	2006-11-29 08:41:11.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx.init	2006-11-29 08:41:56.000000000 -0500
@@ -32,18 +32,18 @@
   then
     echo -n "Creating NVIDIA TLS links..."
     # remove the symlinks
-    rm -f /usr/lib/tls/libGL.so
-    rm -f /usr/lib/tls/libGL.so.*
+    rm -f /usr/lib/nvidia/tls/libGL.so
+    rm -f /usr/lib/nvidia/tls/libGL.so.*
     rm -f /usr/lib/tls/libnvidia-tls.so
     
     rm -f /usr/lib/tls/libnvidia-tls.so.*
-    rm -f /usr/lib/tls/libGL.la
+    rm -f /usr/lib/nvidia/tls/libGL.la
 
     #remove old ones
-    rm -f /usr/lib/tls/libGLcore.so.1
-    rm -f /usr/lib/tls/libGLcore.so.*
+    rm -f /usr/lib/nvidia/tls/libGLcore.so.1
+    rm -f /usr/lib/nvidia/tls/libGLcore.so.*
     # create the symlinks
-    ln -s /usr/lib/nvidia/libnvidia-tls.so.1.0.8776 /usr/lib/tls/libnvidia-tls.so.1.0.8776
+    ln -s /usr/lib/nvidia/libnvidia-tls.so.1.0.8776 /usr/lib/nvidia/tls/libnvidia-tls.so.1.0.8776
     # reconfigure dynamic linker run-time bindings
     ldconfig
     echo " done."
@@ -58,10 +58,10 @@
   then
     echo -n "Removing NVIDIA TLS links..."
     # remove the symlinks
-    rm -f /usr/lib/tls/libGL.so
-    rm -f /usr/lib/tls/libGL.so.*
-    rm -f /usr/lib/tls/libGL.la
-    rm -f /usr/lib/tls/libGLcore.so.*    
+    rm -f /usr/lib/nvidia/tls/libGL.so
+    rm -f /usr/lib/nvidia/tls/libGL.so.*
+    rm -f /usr/lib/nvidia/tls/libGL.la
+    rm -f /usr/lib/nvidia/tls/libGLcore.so.*    
     rm -f /usr/lib/tls/libnvidia-tls.so
     rm -f /usr/lib/tls/libnvidia-tls.so.*
     # reconfigure dynamic linker run-time bindings
diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx.links nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx.links
--- nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx.links	2006-11-29 08:41:11.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx.links	2006-11-29 12:06:57.000000000 -0500
@@ -1,7 +1,7 @@
-usr/lib/libGL.so.1.0.8776 usr/lib/libGL.so.1
-usr/lib/libGLcore.so.1.0.8776 usr/lib/libGLcore.so.1
+usr/lib/nvidia/libGL.so.1.0.8776 usr/lib/nvidia/libGL.so.1
+usr/lib/nvidia/libGLcore.so.1.0.8776 usr/lib/nvidia/libGLcore.so.1
 usr/lib/libnvidia-tls.so.1.0.8776 usr/lib/libnvidia-tls.so.1
-usr/lib/xorg/modules/extensions/libglx.so.1.0.8776 usr/lib/xorg/modules/extensions/libglx.so
+usr/lib/xorg/modules/nvidia/libglx.so.1.0.8776 usr/lib/xorg/modules/nvidia/libglx.so
 usr/lib/libXvMCNVIDIA.so.1.0.8776 usr/lib/libXvMCNVIDIA.so.1
 usr/lib/libXvMCNVIDIA.so.1.0.8776 usr/lib/libXvMCNVIDIA_dynamic.so.1
 
diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx.links.in nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx.links.in
--- nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx.links.in	2006-11-29 08:41:11.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx.links.in	2006-11-29 12:07:13.000000000 -0500
@@ -1,7 +1,7 @@
-usr/lib/libGL.so.#VERSION# usr/lib/libGL.so.1
-usr/lib/libGLcore.so.#VERSION# usr/lib/libGLcore.so.1
+usr/lib/libGL.so.#VERSION# usr/lib/nvidia/libGL.so.1
+usr/lib/libGLcore.so.#VERSION# usr/lib/nvidia/libGLcore.so.1
 usr/lib/libnvidia-tls.so.#VERSION# usr/lib/libnvidia-tls.so.1
-usr/lib/xorg/modules/extensions/libglx.so.#VERSION# usr/lib/xorg/modules/extensions/libglx.so
+usr/lib/xorg/modules/nvidia/libglx.so.#VERSION# usr/lib/xorg/modules/nvidia/libglx.so
 usr/lib/libXvMCNVIDIA.so.#VERSION# usr/lib/libXvMCNVIDIA.so.1
 usr/lib/libXvMCNVIDIA.so.#VERSION# usr/lib/libXvMCNVIDIA_dynamic.so.1
 
diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx.postrm nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx.postrm
--- nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx.postrm	2006-11-29 08:41:11.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx.postrm	2006-11-29 08:41:56.000000000 -0500
@@ -18,14 +18,14 @@
 
 case "$1" in
     remove|purge)
-	dpkg-divert --remove --rename --package nvidia-glx --divert /usr/lib/nvidia/libGL.so.1.xlibmesa /usr/lib/libGL.so.1 > /dev/null
-	dpkg-divert --remove --rename --package nvidia-glx --divert /usr/lib/nvidia/libGL.so.1.2.xlibmesa /usr/lib/libGL.so.1.2 > /dev/null
+	#dpkg-divert --remove --rename --package nvidia-glx --divert /usr/lib/nvidia/libGL.so.1.xlibmesa /usr/lib/libGL.so.1 > /dev/null
+	#dpkg-divert --remove --rename --package nvidia-glx --divert /usr/lib/nvidia/libGL.so.1.2.xlibmesa /usr/lib/libGL.so.1.2 > /dev/null
 	
-	dpkg-divert --remove --rename --package nvidia-glx --divert /usr/lib/nvidia/libGLcore.a.xlibmesa /usr/lib/xorg/modules/extensions/libGLcore.a > /dev/null
-	dpkg-divert --remove --rename --package nvidia-glx --divert /usr/lib/nvidia/libglx.a.xlibmesa /usr/lib/xorg/modules/extensions/libglx.a > /dev/null
-	dpkg-divert --remove --rename --package nvidia-glx --divert /usr/lib/nvidia/libglx.so.xlibmesa /usr/lib/xorg/modules/extensions/libglx.so > /dev/null
+	#dpkg-divert --remove --rename --package nvidia-glx --divert /usr/lib/nvidia/libGLcore.a.xlibmesa /usr/lib/xorg/modules/extensions/libGLcore.a > /dev/null
+	#dpkg-divert --remove --rename --package nvidia-glx --divert /usr/lib/nvidia/libglx.a.xlibmesa /usr/lib/xorg/modules/extensions/libglx.a > /dev/null
+	#dpkg-divert --remove --rename --package nvidia-glx --divert /usr/lib/nvidia/libglx.so.xlibmesa /usr/lib/xorg/modules/extensions/libglx.so > /dev/null
 
-	dpkg-divert --remove --rename --package nvidia-glx --divert /usr/lib/nvidia/libGL.so.xlibmesa /usr/lib/libGL.so > /dev/null
+	#dpkg-divert --remove --rename --package nvidia-glx --divert /usr/lib/nvidia/libGL.so.xlibmesa /usr/lib/libGL.so > /dev/null
 	rm -f /usr/lib/xorg/modules/extensions/libglx.so.1.0.8776 2> /dev/null || true
 	if [ -d /usr/lib/nvidia ]; then
 		rmdir /usr/lib/nvidia/ || true;
diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx.preinst nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx.preinst
--- nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx.preinst	2006-11-29 08:41:11.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx.preinst	2006-11-29 08:41:56.000000000 -0500
@@ -80,19 +80,19 @@
                dpkg-divert --remove --rename --package nvidia-glx-dev --divert /usr/X11R6/lib/nvidia/libGL.a.xlibmesa /usr/X11R6/lib/libGL.a > /dev/null
         fi
 	# create new diversion directories
-	if [ ! -d /usr/lib/nvidia ]; then
-		mkdir -p /usr/lib/nvidia || true
-	fi
+	#if [ ! -d /usr/lib/nvidia ]; then
+	#	mkdir -p /usr/lib/nvidia || true
+	#fi
 
 	# make new diversions
-	dpkg-divert --add --rename --package nvidia-glx --divert /usr/lib/nvidia/libGL.so.1.xlibmesa /usr/lib/libGL.so.1 > /dev/null
-	dpkg-divert --add --rename --package nvidia-glx --divert /usr/lib/nvidia/libGL.so.1.2.xlibmesa /usr/lib/libGL.so.1.2 > /dev/null
+	#dpkg-divert --add --rename --package nvidia-glx --divert /usr/lib/nvidia/libGL.so.1.xlibmesa /usr/lib/libGL.so.1 > /dev/null
+	#dpkg-divert --add --rename --package nvidia-glx --divert /usr/lib/nvidia/libGL.so.1.2.xlibmesa /usr/lib/libGL.so.1.2 > /dev/null
 
-	dpkg-divert --add --rename --package nvidia-glx --divert /usr/lib/nvidia/libGLcore.a.xlibmesa /usr/lib/xorg/modules/extensions/libGLcore.a > /dev/null
-	dpkg-divert --add --rename --package nvidia-glx --divert /usr/lib/nvidia/libglx.a.xlibmesa /usr/lib/xorg/modules/extensions/libglx.a > /dev/null
-	dpkg-divert --add --rename --package nvidia-glx --divert /usr/lib/nvidia/libglx.so.xlibmesa /usr/lib/xorg/modules/extensions/libglx.so > /dev/null	
+	#dpkg-divert --add --rename --package nvidia-glx --divert /usr/lib/nvidia/libGLcore.a.xlibmesa /usr/lib/xorg/modules/extensions/libGLcore.a > /dev/null
+	#dpkg-divert --add --rename --package nvidia-glx --divert /usr/lib/nvidia/libglx.a.xlibmesa /usr/lib/xorg/modules/extensions/libglx.a > /dev/null
+	#dpkg-divert --add --rename --package nvidia-glx --divert /usr/lib/nvidia/libglx.so.xlibmesa /usr/lib/xorg/modules/extensions/libglx.so > /dev/null	
 
-	dpkg-divert --add --rename --package nvidia-glx --divert /usr/lib/nvidia/libGL.so.xlibmesa /usr/lib/libGL.so > /dev/null
+	#dpkg-divert --add --rename --package nvidia-glx --divert /usr/lib/nvidia/libGL.so.xlibmesa /usr/lib/libGL.so > /dev/null
 	
 	;;
 
diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx-support.dirs nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx-support.dirs
--- nvidia-graphics-drivers-1.0.8776.orig/debian/nvidia-glx-support.dirs	1969-12-31 19:00:00.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/nvidia-glx-support.dirs	2006-11-29 08:41:56.000000000 -0500
@@ -0,0 +1 @@
+sbin
diff -ruN nvidia-graphics-drivers-1.0.8776.orig/debian/rules nvidia-graphics-drivers-1.0.8776/debian/rules
--- nvidia-graphics-drivers-1.0.8776.orig/debian/rules	2006-11-29 08:41:11.000000000 -0500
+++ nvidia-graphics-drivers-1.0.8776/debian/rules	2006-11-29 12:07:30.000000000 -0500
@@ -115,6 +115,7 @@
 	dh_clean 
 
 	rm -fr $(dirname)  nvidia-kernel-source.tar.gz
+	cd debian && rm -f editxconf editxconf.hi editxconf .o
 
 
 
@@ -150,16 +151,16 @@
 		$(CURDIR)/debian/nvidia-glx-dev/usr/include/GL
 
 	install -m 0644 $(dirname)/usr/lib/libGL.so.${version} \
-			$(CURDIR)/debian/nvidia-glx/usr/lib
+			$(CURDIR)/debian/nvidia-glx/usr/lib/nvidia
 	install -m 0644 $(dirname)/usr/lib/libGLcore.so.${version} \
-		$(CURDIR)/debian/nvidia-glx/usr/lib
+		$(CURDIR)/debian/nvidia-glx/usr/lib/nvidia
 	sed "s/__GENERATED_BY__/Debian nvidia-graphics-drivers/" $(dirname)/usr/lib/libGL.la | sed "s/__LIBGL_PATH__/\/usr\/lib/" > $(CURDIR)/debian/nvidia-glx-dev/usr/lib/libGL.la
 	# install -m 0644 $(dirname)/usr/lib/libGL.la $(CURDIR)/debian/nvidia-glx/usr/lib/libGL.la
 
 	# TLS (nvidia-tls new for 6106)
-	install $(dirname)/usr/lib/libnvidia-tls.so.${version} $(CURDIR)/debian/nvidia-glx/usr/lib/
+	install $(dirname)/usr/lib/libnvidia-tls.so.${version} $(CURDIR)/debian/nvidia-glx/usr/lib/nvidia/
 
-	install $(dirname)/usr/lib/tls/libnvidia-tls.so.${version} $(CURDIR)/debian/nvidia-glx/usr/lib/nvidia
+	install $(dirname)/usr/lib/tls/libnvidia-tls.so.${version} $(CURDIR)/debian/nvidia-glx/usr/lib/nvidia/tls
 
 	#sed "s/__GENERATED_BY__/Debian nvidia-graphics-drivers/" $(dirname)/usr/lib/tls/libGL.la | sed "s/__LIBGL_PATH__/\/usr\/lib\/tls/" > $(CURDIR)/debian/nvidia-glx-dev/usr/lib/nvidia/libGL.la
 	# install -m 0644 $(dirname)/usr/lib/tls/libGL.la $(CURDIR)/debian/nvidia-glx/usr/lib/nvidia/libGL.la
@@ -167,7 +168,7 @@
 	install -m 0644 $(dirname)/usr/lib/libnvidia-cfg.so.${version} $(CURDIR)/debian/nvidia-glx/usr/lib/nvidia/
 
 
-	install $(dirname)/usr/X11R6/lib/modules/extensions/libglx.so.${version} $(CURDIR)/debian/nvidia-glx/usr/lib/xorg/modules/extensions/
+	install $(dirname)/usr/X11R6/lib/modules/extensions/libglx.so.${version} $(CURDIR)/debian/nvidia-glx/usr/lib/xorg/modules/nvidia/libglx.so.${version}
 
 	install $(dirname)/usr/bin/tls_test $(CURDIR)/debian/nvidia-glx/usr/lib/nvidia
 	install $(dirname)/usr/bin/tls_test_dso.so $(CURDIR)/debian/nvidia-glx/usr/lib/nvidia
@@ -178,16 +179,21 @@
 
 	if [ "$(DEB_BUILD_ARCH)" == "amd64" ] ; then \
 		install $(dirname)/usr/lib32/libGLcore.so.${version} \
-			$(CURDIR)/debian/nvidia-glx-ia32/emul/ia32-linux/usr/lib ; \
+			$(CURDIR)/debian/nvidia-glx-ia32/emul/ia32-linux/usr/lib/nvidia ; \
 		install $(dirname)/usr/lib32/libGL.so.${version} \
-			$(CURDIR)/debian/nvidia-glx-ia32/emul/ia32-linux/usr/lib ; \
+			$(CURDIR)/debian/nvidia-glx-ia32/emul/ia32-linux/usr/lib/nvidia ; \
 		install $(dirname)/usr/lib32/libnvidia-tls.so.${version} \
-			$(CURDIR)/debian/nvidia-glx-ia32/emul/ia32-linux/usr/lib ; \
+			$(CURDIR)/debian/nvidia-glx-ia32/emul/ia32-linux/usr/lib/nvidia ; \
 		install $(dirname)/usr/lib32/tls/libnvidia-tls.so.${version} \
-			$(CURDIR)/debian/nvidia-glx-ia32/emul/ia32-linux/usr/lib/tls ; \
+			$(CURDIR)/debian/nvidia-glx-ia32/emul/ia32-linux/usr/lib/nvidia/tls ; \
 	fi
 
 	install -m 755 $(dirname)/usr/bin/nvidia-bug-report.sh $(CURDIR)/debian/nvidia-glx/usr/bin/
+	install -m 755 $(CURDIR)/debian/nvidia-enable $(CURDIR)/debian/nvidia-glx-support/sbin/
+	install -m 755 $(CURDIR)/debian/nvidia-disable $(CURDIR)/debian/nvidia-glx-support/sbin/
+	install -m 755 $(CURDIR)/debian/editxconf.hs $(CURDIR)/debian/nvidia-glx-support/sbin/
+	cd $(CURDIR)/debian && ghc6 --make -O2 editxconf.hs -o editxconf && strip editxconf
+	install -m 755 $(CURDIR)/debian/editxconf $(CURDIR)/debian/nvidia-glx-support/sbin/
 	# use separate package
 	#install -m 755 $(dirname)/usr/bin/nvidia-xconfig $(CURDIR)/debian/nvidia-glx/usr/bin/
 

Reply via email to