diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -250,17 +250,18 @@
 Lovingly provided by [polyglot](https://github.com/vmchale/polyglot):
 
 ```
--------------------------------------------------------------------------------
+───────────────────────────────────────────────────────────────────────────────
  Language             Files       Lines         Code     Comments       Blanks
--------------------------------------------------------------------------------
- Bash                     5          62           52            5            5
- Cabal                    1         157          143            0           14
+───────────────────────────────────────────────────────────────────────────────
+ Bash                     4          58           49            3            6
+ Cabal                    1         165          147            0           18
  Cabal Project            1           4            3            0            1
- Dhall                    3        5299         4773           10          516
- Haskell                 32        1977         1623           37          317
- Markdown                 5         542          452            0           90
- YAML                     2          51           47            0            4
--------------------------------------------------------------------------------
- Total                   49        8092         7093           52          947
--------------------------------------------------------------------------------
+ Dhall                    5        6412         5724            0          688
+ Haskell                 32        1999         1643           37          319
+ Makefile                 1          12            8            0            4
+ Markdown                 3         556          448            0          108
+ YAML                     4         114          110            0            4
+───────────────────────────────────────────────────────────────────────────────
+ Total                   51        9320         8132           40         1148
+───────────────────────────────────────────────────────────────────────────────
 ```
diff --git a/cabal.project b/cabal.project
--- a/cabal.project
+++ b/cabal.project
@@ -1,4 +1,5 @@
 packages: ./
 constraints: cpkg +development
+           , zlib +pkg-config
 
 max-backjumps: 40000
diff --git a/cpkg.cabal b/cpkg.cabal
--- a/cpkg.cabal
+++ b/cpkg.cabal
@@ -1,6 +1,6 @@
 cabal-version:      1.18
 name:               cpkg
-version:            0.2.4.0
+version:            0.2.4.1
 license:            BSD3
 license-file:       LICENSE
 copyright:          Copyright: (c) 2018-2019 Vanessa McHale
diff --git a/pkgs/pkg-set.dhall b/pkgs/pkg-set.dhall
--- a/pkgs/pkg-set.dhall
+++ b/pkgs/pkg-set.dhall
@@ -687,13 +687,13 @@
           }
 
 let gnutls =
-        λ(cfg : { version : List Natural, patch : Natural })
+        λ(cfg : { version : List Natural, patch : List Natural })
       → let versionString = prelude.showVersion cfg.version
 
         in    prelude.simplePackage
-                { name = "gnutls", version = prelude.fullVersion cfg }
+                { name = "gnutls", version = cfg.version # cfg.patch }
             ⫽ { pkgUrl =
-                  "https://www.gnupg.org/ftp/gcrypt/gnutls/v${versionString}/gnutls-${versionString}.${Natural/show
+                  "https://www.gnupg.org/ftp/gcrypt/gnutls/v${versionString}/gnutls-${versionString}.${prelude.showVersion
                                                                                                          cfg.patch}.tar.xz"
               , pkgDeps =
                   [ prelude.lowerBound { name = "nettle", lower = [ 3, 1 ] }
@@ -2278,6 +2278,8 @@
                     , prelude.symlink
                         "lib/libbz2.so.${versionString}"
                         "lib/libbz2.so"
+                    , prelude.symlinkBinary "bin/bzip2"
+                    , prelude.symlinkBinary "bin/bzip2recover"
                     ]
 
             let bzipShared =
@@ -2364,7 +2366,7 @@
       in    λ(v : List Natural)
           →   prelude.simplePackage { name = "libsepol", version = v }
             ⫽ { pkgUrl =
-                  "https://github.com/SELinuxProject/selinux/releases/download/20190315/libsepol-${prelude.showVersion
+                  "https://github.com/SELinuxProject/selinux/releases/download/20191204/libsepol-${prelude.showVersion
                                                                                                      v}.tar.gz"
               , configureCommand = prelude.doNothing
               , buildCommand = prelude.doNothing
@@ -2405,7 +2407,7 @@
       in    λ(v : List Natural)
           →   prelude.simplePackage { name = "libselinux", version = v }
             ⫽ { pkgUrl =
-                  "https://github.com/SELinuxProject/selinux/releases/download/20190315/libselinux-${prelude.showVersion
+                  "https://github.com/SELinuxProject/selinux/releases/download/20191204/libselinux-${prelude.showVersion
                                                                                                        v}.tar.gz"
               , configureCommand = prelude.doNothing
               , buildCommand = prelude.doNothing
@@ -2671,15 +2673,12 @@
               }
 
 let sqlite =
-        λ(x : { year : Natural, version : List Natural })
-      → let versionString = prelude.squishVersion x.version
-
-        in    prelude.simplePackage { name = "sqlite", version = x.version }
-            ⫽ { pkgUrl =
-                  "https://sqlite.org/${Natural/show
-                                          x.year}/sqlite-autoconf-${versionString}000.tar.gz"
-              , pkgSubdir = "sqlite-autoconf-${versionString}000"
-              }
+        λ(x : { version : List Natural })
+      →   prelude.simplePackage { name = "sqlite", version = x.version }
+        ⫽ { pkgUrl =
+              "https://www.sqlite.org/2019/sqlite-autoconf-3300100.tar.gz"
+          , pkgSubdir = "sqlite-autoconf-3300100"
+          }
 
 let ragel =
         λ(v : List Natural)
@@ -4666,6 +4665,21 @@
                 # prelude.defaultConfigure cfg
           }
 
+let zstd =
+        λ(v : List Natural)
+      → let versionString = prelude.showVersion v
+
+        in    prelude.simplePackage { name = "zstd", version = v }
+            ⫽ prelude.cmakePackage
+            ⫽ { pkgUrl =
+                  "https://github.com/facebook/zstd/releases/download/v${versionString}/zstd-${versionString}.tar.zst"
+              , pkgSubdir = "zstd-${versionString}/build/cmake"
+              , installCommand =
+                    λ(cfg : types.BuildVars)
+                  →   prelude.cmakeInstall cfg
+                    # [ prelude.symlinkBinary "bin/zstd" ]
+              }
+
 in  [ alsa-lib [ 1, 1, 9 ]
     , apr [ 1, 7, 0 ]
     , apr-util [ 1, 6, 1 ]
@@ -4679,9 +4693,9 @@
     , bash [ 5, 0 ]
     , bash-completion [ 2, 9 ]
     , binutils [ 2, 33, 1 ]
-    , bison [ 3, 4, 1 ]
+    , bison [ 3, 5 ]
     , blas [ 3, 8, 0 ]
-    , bzip2 [ 1, 0, 6 ]
+    , bzip2 [ 1, 0, 8 ]
     , cairo [ 1, 16, 0 ]
     , chickenScheme [ 5, 0, 0 ]
     , cimg [ 2, 7, 0 ]
@@ -4697,14 +4711,14 @@
     , diffutils [ 3, 7 ]
     , dri2proto [ 2, 8 ]
     , eigen [ 3, 3, 7 ]
-    , elfutils [ 0, 176 ]
+    , elfutils [ 0, 177 ]
     , emacs [ 26, 3 ]
     , exiftool [ 11, 65 ]
     , exiv2 [ 0, 27, 1 ]
-    , expat [ 2, 2, 8 ]
-    , fdk-aac [ 2, 0, 0 ]
+    , expat [ 2, 2, 9 ]
+    , fdk-aac [ 2, 0, 1 ]
     , feh [ 3, 2, 1 ]
-    , ffmpeg [ 4, 2, 1 ]
+    , ffmpeg [ 4, 2, 2 ]
     , fftw [ 3, 3, 8 ]
     , findutils [ 4, 7, 0 ]
     , fixesproto [ 5, 0 ]
@@ -4714,7 +4728,7 @@
     , fltk [ 1, 3, 5 ]
     , freetype-prebuild [ 2, 10, 1 ]
     , freetype [ 2, 10, 1 ]
-    , fribidi [ 1, 0, 5 ]
+    , fribidi [ 1, 0, 8 ]
     , gawk [ 5, 0, 1 ]
     , gc [ 8, 0, 4 ]
     , gcc [ 9, 2, 0 ]
@@ -4727,8 +4741,8 @@
     , gperf [ 3, 1 ]
     , gperftools [ 2, 7 ]
     , giflib [ 5, 1, 4 ]
-    , git [ 2, 24, 1 ]
-    , glib { version = [ 2, 62 ], patch = 0 }
+    , git [ 2, 25, 0 ]
+    , glib { version = [ 2, 63 ], patch = 3 }
     , glib-networking { version = [ 2, 61 ], patch = 2 }
     , glproto [ 1, 4, 17 ]
     , glu [ 9, 0, 0 ]
@@ -4737,15 +4751,15 @@
     , gmp [ 6, 1, 2 ]
     , gobject-introspection { version = [ 1, 62 ], patch = 0 }
     , gnome-doc-utils { version = [ 0, 20 ], patch = 10 }
-    , gnupg [ 2, 2, 17 ]
-    , gnutls { version = [ 3, 6 ], patch = 9 }
+    , gnupg [ 2, 2, 19 ]
+    , gnutls { version = [ 3, 6 ], patch = [ 11, 1 ] }
     , graphviz [ 2, 40, 1 ]
     , grep [ 3, 3 ]
     , gsl [ 2, 6 ]
     , gtk2 { version = [ 2, 24 ], patch = 32 }
     , gtk3 { version = [ 3, 24 ], patch = 10 }
-    , gzip [ 1, 9 ]
-    , harfbuzz [ 2, 6, 1 ]
+    , gzip [ 1, 10 ]
+    , harfbuzz [ 2, 6, 4 ]
     , htop [ 2, 2, 0 ]
     , hugs
     , icu [ 64, 2 ]
@@ -4784,7 +4798,7 @@
     , libICE [ 1, 0, 9 ]
     , libiconv [ 1, 16 ]
     , libjpeg [ 9 ]
-    , libjpeg-turbo [ 2, 0, 3 ]
+    , libjpeg-turbo [ 2, 0, 4 ]
     , libksba [ 1, 3, 5 ]
     , libmp3lame [ 3, 100 ]
     , libmypaint [ 1, 3, 0 ]
@@ -4800,14 +4814,14 @@
     , librsvg { version = [ 2, 45 ], patch = 8 }
     , libsamplerate [ 0, 1, 9 ]
     , libsass [ 3, 6, 2 ]
-    , libselinux [ 2, 9 ]
+    , libselinux [ 3, 0 ]
     , libsndfile [ 1, 0, 28 ]
-    , libsepol [ 2, 9 ]
+    , libsepol [ 3, 0 ]
     , libsodium [ 1, 0, 17 ]
     , libsoup { version = [ 2, 67 ], patch = 3 }
     , libspng [ 0, 5, 0 ]
     , libssh2 [ 1, 8, 0 ]
-    , libtasn1 [ 4, 14 ]
+    , libtasn1 [ 4, 15, 0 ]
     , libtiff [ 4, 0, 10 ]
     , libtool [ 2, 4, 6 ]
     , libuv [ 1, 24, 0 ]
@@ -4815,7 +4829,7 @@
     , libSM [ 1, 2, 3 ]
     , libthai [ 0, 1, 28 ]
     , libvorbis [ 1, 3, 6 ]
-    , libvpx [ 1, 8, 1 ]
+    , libvpx [ 1, 8, 2 ]
     , libX11 [ 1, 6, 8 ]
     , libXau [ 1, 0, 9 ]
     , libXaw [ 1, 0, 13 ]
@@ -4886,7 +4900,7 @@
     , phash [ 0, 9, 6 ]
     , pixman [ 0, 38, 4 ]
     , pkg-config [ 0, 29, 2 ]
-    , poppler [ 0, 80, 0 ]
+    , poppler [ 0, 84, 0 ]
     , postgresql [ 12, 1 ]
     , protobuf [ 3, 8, 0 ]
     , pycairo [ 1, 18, 1 ]
@@ -4897,7 +4911,7 @@
     , qrencode [ 4, 0, 2 ]
     , qt { version = [ 5, 13 ], patch = 0 }
     , quazip [ 0, 8, 1 ]
-    , r [ 3, 6, 1 ]
+    , r [ 3, 6, 2 ]
     , ragel [ 6, 10 ]
     , randrproto [ 1, 5, 0 ]
     , re2c [ 1, 1, 1 ]
@@ -4911,7 +4925,7 @@
     , sdl2 [ 2, 0, 10 ]
     , sed [ 4, 7 ]
     , shared-mime-info [ 1, 10 ]
-    , sqlite { year = 2019, version = [ 3, 30, 0 ] }
+    , sqlite { version = [ 3, 30, 1 ] }
     , subversion [ 1, 12, 2 ]
     , swig [ 3, 0, 12 ]
     , swi-prolog [ 8, 0, 3 ]
@@ -4939,4 +4953,5 @@
     , xtrans [ 1, 4, 0 ]
     , xz [ 5, 2, 4 ]
     , zlib [ 1, 2, 11 ]
+    , zstd [ 1, 4, 4 ]
     ]
diff --git a/src/Package/C/PackageSet.hs b/src/Package/C/PackageSet.hs
--- a/src/Package/C/PackageSet.hs
+++ b/src/Package/C/PackageSet.hs
@@ -24,7 +24,7 @@
 
 defaultPackageSetDhall :: Maybe String -> IO PackageSetDhall
 defaultPackageSetDhall (Just pkSet) = input auto (T.pack pkSet)
-defaultPackageSetDhall Nothing      = input auto "https://raw.githubusercontent.com/vmchale/cpkg/6635d6c4dd9da9bbe09f1dd0f94b485ba9015c74/pkgs/pkg-set.dhall sha256:cba9042d6520714c9c57cdfe4baf8d4618c15ff5938ce9a4e223bcb9d4f14725"
+defaultPackageSetDhall Nothing      = input auto "https://raw.githubusercontent.com/vmchale/cpkg/33b0eca5b21132e509c23c74ed7c2f1b31001ad5/pkgs/pkg-set.dhall sha256:180fb74ad3ab3a5fdced4efefceb2ccab96d07ef729e5768f3dfaf2e304a351b"
 
 displayPackageSet :: Maybe String -> IO ()
 displayPackageSet = putDoc . pretty <=< defaultPackageSetDhall
