diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,12 @@
 # Revision History for cabal2nix
 
+## 2.21.1
+
+* Update attribute names of X11 related libraries to prefer their top
+  level attributes over the deprecated `pkgs.xorg` scope.
+  See [nixpkgs#479553](https://github.com/nixos/nixpkgs/issues/479553)
+  for context.
+
 ## 2.21.0
 
 * In expressions generated by `cabal2nix --shell`, use the `inNixShell`
diff --git a/cabal2nix.cabal b/cabal2nix.cabal
--- a/cabal2nix.cabal
+++ b/cabal2nix.cabal
@@ -1,5 +1,5 @@
 name:               cabal2nix
-version:            2.21.0
+version:            2.21.1
 synopsis:           Convert Cabal files into Nix build instructions.
 description:
   Convert Cabal files into Nix build instructions. Users of Nix can install the latest
diff --git a/src/Distribution/Nixpkgs/Haskell/FromCabal.hs b/src/Distribution/Nixpkgs/Haskell/FromCabal.hs
--- a/src/Distribution/Nixpkgs/Haskell/FromCabal.hs
+++ b/src/Distribution/Nixpkgs/Haskell/FromCabal.hs
@@ -168,7 +168,7 @@
     -- returns names that live in the top-level and to adapt the code in
     -- PostProcess.hs et all to that fact.
     goodScopes :: Set [Identifier]
-    goodScopes = Set.fromList (map ("pkgs":) [[], ["xorg"], ["xlibs"], ["gnome2"], ["gnome"], ["gnome3"], ["kde4"]])
+    goodScopes = Set.fromList (map ("pkgs":) [[], ["gnome2"]])
 
     resolveInNixpkgs :: Identifier -> Binding
     resolveInNixpkgs i
diff --git a/src/Distribution/Nixpkgs/Haskell/FromCabal/Name.hs b/src/Distribution/Nixpkgs/Haskell/FromCabal/Name.hs
--- a/src/Distribution/Nixpkgs/Haskell/FromCabal/Name.hs
+++ b/src/Distribution/Nixpkgs/Haskell/FromCabal/Name.hs
@@ -295,24 +295,24 @@
 libNixName "webkit2gtk-web-extension-4.1"       = return "webkitgtk_4_1"
 libNixName "webkit2gtk-web-extension-6.0"       = return "webkitgtk_6_0"
 libNixName "wxGTK"                              = return "wxGTK32"
-libNixName "X11"                                = return "libX11"
-libNixName "x11"                                = return "libX11"
-libNixName "xau"                                = return "libXau"
-libNixName "Xcursor"                            = return "libXcursor"
+libNixName "X11"                                = return "libx11"
+libNixName "x11"                                = return "libx11"
+libNixName "xau"                                = return "libxau"
+libNixName "Xcursor"                            = return "libxcursor"
 libNixName "xerces-c"                           = return "xercesc"
-libNixName "Xext"                               = return "libXext"
-libNixName "xft"                                = return "libXft"
-libNixName "Xi"                                 = return "libXi"
-libNixName "Xinerama"                           = return "libXinerama"
+libNixName "Xext"                               = return "libxext"
+libNixName "xft"                                = return "libxft"
+libNixName "Xi"                                 = return "libxi"
+libNixName "Xinerama"                           = return "libxinerama"
 libNixName "xkbcommon"                          = return "libxkbcommon"
 libNixName "xml2"                               = return "libxml2"
-libNixName "Xpm"                                = return "libXpm"
-libNixName "Xrandr"                             = return "libXrandr"
-libNixName "Xrender"                            = return "libXrender"
-libNixName "xscrnsaver"                         = return "libXScrnSaver"
-libNixName "Xss"                                = return "libXScrnSaver"
-libNixName "Xtst"                               = return "libXtst"
-libNixName "Xxf86vm"                            = return "libXxf86vm"
+libNixName "Xpm"                                = return "libxpm"
+libNixName "Xrandr"                             = return "libxrandr"
+libNixName "Xrender"                            = return "libxrender"
+libNixName "xscrnsaver"                         = return "libxscrnsaver"
+libNixName "Xss"                                = return "libxscrnsaver"
+libNixName "Xtst"                               = return "libxtst"
+libNixName "Xxf86vm"                            = return "libxxf86vm"
 libNixName "yaml"                               = return "libyaml"
 libNixName "yaml-0.1"                           = return "libyaml"
 libNixName "z"                                  = return "zlib"
diff --git a/src/Distribution/Nixpkgs/Haskell/FromCabal/PostProcess.hs b/src/Distribution/Nixpkgs/Haskell/FromCabal/PostProcess.hs
--- a/src/Distribution/Nixpkgs/Haskell/FromCabal/PostProcess.hs
+++ b/src/Distribution/Nixpkgs/Haskell/FromCabal/PostProcess.hs
@@ -78,7 +78,7 @@
   , ("alex < 3.1.5",  set (testDepends . tool . contains (pkg "perl")) True)
   , ("alex",  set (executableDepends . tool . contains (self "happy")) True)
   , ("alsa-core", set (metaSection . platforms) (Just $ Set.singleton (NixpkgsPlatformGroup (ident # "linux"))))
-  , ("bindings-GLFW", over (libraryDepends . system) (Set.union (Set.fromList [bind "pkgs.xorg.libXext", bind "pkgs.xorg.libXfixes"])))
+  , ("bindings-GLFW", over (libraryDepends . system) (Set.union (Set.fromList [bind "pkgs.libxext", bind "pkgs.libxfixes"])))
   , ("bindings-lxc", set (metaSection . platforms) (Just $ Set.singleton (NixpkgsPlatformGroup (ident # "linux"))))
   , ("bustle", bustleOverrides)
   , ("Cabal", set doCheck False) -- test suite doesn't work in Nix
@@ -92,7 +92,7 @@
   , ("dns", set testTargets ["spec"])      -- don't execute tests that try to access the network
   , ("eventstore", set (metaSection . platforms) (Just $ Set.singleton (NixpkgsPlatformGroup (ident # "x86_64"))))
   , ("freenect < 1.2.1", over configureFlags (Set.union (Set.fromList ["--extra-include-dirs=${lib.getDev pkgs.freenect}/include/libfreenect", "--extra-lib-dirs=${lib.getLib pkgs.freenect}/lib"])))
-  , ("fltkhs", set (libraryDepends . system . contains (pkg "fltk14")) True . over (libraryDepends . pkgconfig) (Set.union (pkgs ["libGLU", "libGL"]))) -- TODO: fltk14 belongs into the *setup* dependencies.
+  , ("fltkhs", set (libraryDepends . system . contains (pkg "fltk_1_4")) True . over (libraryDepends . pkgconfig) (Set.union (pkgs ["libGLU", "libGL"]))) -- TODO: fltk14 belongs into the *setup* dependencies.
   , ("gf", set phaseOverrides gfPhaseOverrides . set doCheck False)
   , ("gi-cairo", giCairoPhaseOverrides)                     -- https://github.com/haskell-gi/haskell-gi/issues/36
   , ("gi-gdk", set runHaddock True )
@@ -111,7 +111,7 @@
   , ("git", set doCheck False)          -- https://github.com/vincenthz/hit/issues/33
   , ("git-annex >= 6.20170925 && < 6.20171214", set doCheck False)      -- some versions of git-annex require their test suite to be run inside of a git checkout
   , ("github-backup", set (executableDepends . tool . contains (pkg "git")) True)
-  , ("GLFW", over (libraryDepends . system) (Set.union (Set.fromList [bind "pkgs.xorg.libXext", bind "pkgs.xorg.libXfixes"])))
+  , ("GLFW", over (libraryDepends . system) (Set.union (Set.fromList [bind "pkgs.libxext", bind "pkgs.libxfixes"])))
   , ("graphviz", set (testDepends . system . contains (pkg "graphviz")) True)
   , ("gtk3", gtk3Hook)
   , ("gtkglext", gtkglextHook)
@@ -171,7 +171,7 @@
   , ("Win32-shortcut", set (metaSection . platforms) (Just $ Set.singleton (NixpkgsPlatformGroup (ident # "windows"))))
   , ("wxc", wxcHook)
   , ("wxcore", set (libraryDepends . pkgconfig . contains (pkg "wxGTK")) True)
-  , ("X11", over (libraryDepends . system) (Set.union (Set.fromList $ map bind ["pkgs.xorg.libXinerama","pkgs.xorg.libXext","pkgs.xorg.libXrender","pkgs.xorg.libXScrnSaver"])))
+  , ("X11", over (libraryDepends . system) (Set.union (Set.fromList $ map bind ["pkgs.libxinerama","pkgs.libxext","pkgs.libxrender","pkgs.libxscrnsaver"])))
   , ("xmonad >= 0.14.2", set phaseOverrides xmonadPostInstall)
   , ("zip-archive < 0.3.1", over (testDepends . tool) (replace (self "zip") (pkg "zip")))
   , ("zip-archive >= 0.3.1 && < 0.3.2.3", over (testDepends . tool) (Set.union (Set.fromList [pkg "zip", pkg "unzip"])))   -- https://github.com/jgm/zip-archive/issues/35
@@ -226,7 +226,7 @@
   ]
 
 wxcHook :: Derivation -> Derivation
-wxcHook drv = drv & libraryDepends . system %~ Set.union (Set.fromList [pkg "libGL", bind "pkgs.xorg.libX11"])
+wxcHook drv = drv & libraryDepends . system %~ Set.union (Set.fromList [pkg "libGL", bind "pkgs.libx11"])
                   & libraryDepends . pkgconfig . contains (pkg "wxGTK") .~ True
                   & phaseOverrides .~ wxcPostInstall (packageVersion drv)
                   & runHaddock .~ False
@@ -332,10 +332,10 @@
     deps :: [Binding]
     deps = bind <$> [ "pkgs.gtk2"
                     , "pkgs.libGLU"
-                    , "pkgs.xorg.libSM"
-                    , "pkgs.xorg.libICE"
-                    , "pkgs.xorg.libXt"
-                    , "pkgs.xorg.libXmu"
+                    , "pkgs.libsm"
+                    , "pkgs.libice"
+                    , "pkgs.libxt"
+                    , "pkgs.libxmu"
                     ]
 
 bustleOverrides :: Derivation -> Derivation
