diff --git a/Debian/Changes.hs b/Debian/Changes.hs
--- a/Debian/Changes.hs
+++ b/Debian/Changes.hs
@@ -36,7 +36,7 @@
             , changeInfo :: S.Paragraph' Text	-- ^ The contents of the .changes file
             , changeEntry :: ChangeLogEntry	-- ^ The value of the Changes field of the .changes file
             , changeFiles :: [ChangedFileSpec]	-- ^ The parsed value of the Files attribute
-            } deriving (Eq)
+            } deriving (Eq, Read, Show)
 
 -- |An entry in the list of files generated by the build.
 data ChangedFileSpec =
@@ -47,7 +47,7 @@
                     , changedFileSection :: SubSection
                     , changedFilePriority :: String
                     , changedFileName :: FilePath
-                    } deriving (Eq, Show)
+                    } deriving (Eq, Read, Show)
 
 -- |A changelog is a series of ChangeLogEntries
 data ChangeLogEntry =
@@ -60,9 +60,9 @@
           , logDate :: String
           }
   | WhiteSpace String -- ^ The parser here never returns this
-  deriving Eq
+  deriving (Eq, Read, Show)
 
-newtype ChangeLog = ChangeLog [ChangeLogEntry] deriving Eq
+newtype ChangeLog = ChangeLog [ChangeLogEntry] deriving (Eq, Read, Show)
 
 {-
 instance Show ChangesFile where
diff --git a/Debian/Control/Common.hs b/Debian/Control/Common.hs
--- a/Debian/Control/Common.hs
+++ b/Debian/Control/Common.hs
@@ -27,18 +27,18 @@
 import Text.ParserCombinators.Parsec (ParseError)
 
 newtype Control' a
-    = Control { unControl :: [Paragraph' a] }
+    = Control { unControl :: [Paragraph' a] } deriving (Eq, Ord, Read, Show)
 
 newtype Paragraph' a
     = Paragraph [Field' a]
-    deriving Eq
+    deriving (Eq, Ord, Read, Show)
 
 -- |NOTE: we do not strip the leading or trailing whitespace in the
 -- name or value
 data Field' a
     = Field (a, a)
     | Comment a     -- ^ Lines beginning with #
-      deriving Eq
+      deriving (Eq, Ord, Read, Show)
 
 class ControlFunctions a where
     -- |'parseControlFromFile' @filepath@ is a simple wrapper function
diff --git a/Debian/Relation.hs b/Debian/Relation.hs
--- a/Debian/Relation.hs
+++ b/Debian/Relation.hs
@@ -18,7 +18,7 @@
     -- * Relation Parser
     , RelParser
     , ParseRelations(..)
-    ) where 
+    ) where
 
 import Debian.Arch (Arch(..), ArchOS(..), ArchCPU(..))
 import Debian.Relation.Common (SrcPkgName(..), BinPkgName(..), PkgName(pkgNameFromString))
diff --git a/Debian/Relation/Common.hs b/Debian/Relation/Common.hs
--- a/Debian/Relation/Common.hs
+++ b/Debian/Relation/Common.hs
@@ -1,12 +1,14 @@
-{-# LANGUAGE FlexibleInstances, OverloadedStrings, TypeSynonymInstances #-}
+{-# LANGUAGE DeriveDataTypeable, FlexibleInstances, OverloadedStrings, TypeSynonymInstances #-}
 module Debian.Relation.Common where
 
 -- Standard GHC Modules
 
+import Data.Data (Data)
 import Data.List as List (map, intersperse)
 import Data.Monoid (mconcat, (<>))
 import Data.Function
 import Data.Set as Set (Set, toList)
+import Data.Typeable (Typeable)
 import Debian.Arch (Arch, prettyArch)
 import Debian.Pretty (Pretty(pretty), Doc, text, empty)
 import Prelude hiding (map)
@@ -22,10 +24,10 @@
 type AndRelation = [OrRelation]
 type OrRelation = [Relation]
 
-data Relation = Rel BinPkgName (Maybe VersionReq) (Maybe ArchitectureReq) deriving (Eq, Show)
+data Relation = Rel BinPkgName (Maybe VersionReq) (Maybe ArchitectureReq) deriving (Eq, Read, Show)
 
-newtype SrcPkgName = SrcPkgName {unSrcPkgName :: String} deriving (Show, Eq, Ord)
-newtype BinPkgName = BinPkgName {unBinPkgName :: String} deriving (Show, Eq, Ord)
+newtype SrcPkgName = SrcPkgName {unSrcPkgName :: String} deriving (Read, Show, Eq, Ord, Data, Typeable)
+newtype BinPkgName = BinPkgName {unBinPkgName :: String} deriving (Read, Show, Eq, Ord, Data, Typeable)
 
 class Pretty a => PkgName a where
     pkgNameFromString :: String -> a
@@ -63,7 +65,7 @@
 data ArchitectureReq
     = ArchOnly (Set Arch)
     | ArchExcept (Set Arch)
-    deriving (Eq, Ord, Show)
+    deriving (Eq, Ord, Read, Show)
 
 prettyArchitectureReq :: ArchitectureReq -> Doc
 prettyArchitectureReq (ArchOnly arch) = text " [" <> mconcat (List.map prettyArch (toList arch)) <> text "]"
@@ -75,7 +77,7 @@
     | EEQ  DebianVersion
     | GRE  DebianVersion
     | SGR DebianVersion
-      deriving (Eq, Show)
+      deriving (Eq, Read, Show)
 
 prettyVersionReq :: VersionReq -> Doc
 prettyVersionReq (SLT v) = text " (<< " <> prettyDebianVersion v <> text ")"
diff --git a/Debian/Util/FakeChanges.hs b/Debian/Util/FakeChanges.hs
--- a/Debian/Util/FakeChanges.hs
+++ b/Debian/Util/FakeChanges.hs
@@ -17,7 +17,7 @@
 import System.Posix.Files
 import Text.Regex.TDFA
 import Prelude hiding (concat, foldr, all, mapM, sum)
-import Network.BSD
+import Network.BSD (getHostName)
 
 import Debian.Control
 import qualified Debian.Deb as Deb
diff --git a/Test/Changes.hs b/Test/Changes.hs
--- a/Test/Changes.hs
+++ b/Test/Changes.hs
@@ -9,9 +9,9 @@
 import Debian.Release (ReleaseName(ReleaseName, relName))
 import Debian.Version (parseDebianVersion)
 
-deriving instance Show ChangeLogEntry
-instance Show ChangeLog where
-    show = unpack . render . pretty
+-- deriving instance Show ChangeLogEntry
+-- instance Show ChangeLog where
+--     show = unpack . render . pretty
 
 s3 = unlines
      ["name (version) dist; urgency=urgency",
diff --git a/Test/Control.hs b/Test/Control.hs
--- a/Test/Control.hs
+++ b/Test/Control.hs
@@ -11,8 +11,6 @@
 import Debian.Relation
 import Debian.Version (parseDebianVersion)
 
-deriving instance Eq (Control' Text)
-
 instance Eq DebianControl where
     a == b = unDebianControl a == unDebianControl b
 -- deriving instance Show (Control' Text)
diff --git a/changelog b/changelog
--- a/changelog
+++ b/changelog
@@ -1,3 +1,21 @@
+haskell-debian (3.83.3) unstable; urgency=low
+
+  * Moved repository to https://github.com/ddssff/debian-haskell
+
+ -- David Fox <dsf@seereason.com>  Thu, 28 Aug 2014 08:36:16 -0700
+
+haskell-debian (3.83.2) unstable; urgency=low
+
+  * Add some Read, Show, Data, and Typeable instances.
+
+ -- David Fox <dsf@seereason.com>  Mon, 25 Aug 2014 03:47:38 -0700
+
+haskell-debian (3.83.1) unstable; urgency=low
+
+  * Support new network-uri package.
+
+ -- David Fox <dsf@seereason.com>  Sun, 24 Aug 2014 17:17:55 -0700
+
 haskell-debian (3.83) unstable; urgency=low
 
   * Add a Loc value to the ControlFileError type, the template
diff --git a/debian.cabal b/debian.cabal
--- a/debian.cabal
+++ b/debian.cabal
@@ -1,11 +1,11 @@
 Name:           debian
-Version:        3.83
+Version:        3.83.3
 License:        BSD3
 License-File:   debian/copyright
 Author:         David Fox <dsf@seereason.com>, Jeremy Shaw <jeremy@seereason.com>, Clifford Beshers <beshers@seereason.com>
 Category:       Debian
 Maintainer:     David Fox <dsf@seereason.com>
-Homepage:       http://src.seereason.com/haskell-debian
+Homepage:       https://github.com/ddssff/debian-haskell
 Build-Type:     Simple
 Synopsis:       Modules for working with the Debian package system
 Cabal-Version: >= 1.9
@@ -16,6 +16,10 @@
   Test/Main.hs, Test/Changes.hs, Test/Dependencies.hs,
   Test/SourcesList.hs, Test/VersionPolicy.hs, Test/Versions.hs, Test/Control.hs, changelog, debian/changelog, debian/changelog.pre-debian
 
+flag network-uri
+ Description: Get Network.URI from the network-uri package
+ Default: True
+
 Flag listlike
  Description: Use process-listlike instead of process-extra
  Default: True
@@ -34,7 +38,6 @@
    HUnit,
    ListLike,
    mtl,
-   network >= 2.4,
    old-locale,
    parsec >= 2 && <4,
    process,
@@ -48,6 +51,11 @@
    Unixutils >= 1.50,
    utf8-string,
    zlib
+ if flag(network-uri)
+   Build-Depends: network >= 2.6, network-uri >= 2.6
+ else
+   Build-Depends: network >= 2.4 && < 2.6
+
  if flag(listlike)
    build-depends: process-listlike
  else
@@ -124,7 +132,11 @@
 Executable debian-tests
  Main-is: Test/Main.hs
  ghc-options: -threaded -W -O2
- Build-Depends: ansi-wl-pprint, base, bytestring, containers, debian, directory, exceptions, HUnit, ListLike, mtl, network, parsec, process, regex-compat, regex-tdfa, template-haskell, text, utf8-string
+ Build-Depends: ansi-wl-pprint, base, bytestring, containers, debian, directory, exceptions, HUnit, ListLike, mtl, parsec, process, regex-compat, regex-tdfa, template-haskell, text, utf8-string
+ if flag(network-uri)
+   Build-Depends: network >= 2.6, network-uri >= 2.6
+ else
+   Build-Depends: network >= 2.4 && < 2.6
  if flag(listlike)
    build-depends: process-listlike
  else
@@ -132,4 +144,4 @@
 
 source-repository head
   type:     darcs
-  location: http://src.seereason.com/haskell-debian
+  location: https://github.com/ddssff/debian-haskell
diff --git a/debian/changelog b/debian/changelog
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,21 @@
+haskell-debian (3.83.3) unstable; urgency=low
+
+  * Moved repository to https://github.com/ddssff/debian-haskell
+
+ -- David Fox <dsf@seereason.com>  Thu, 28 Aug 2014 08:36:16 -0700
+
+haskell-debian (3.83.2) unstable; urgency=low
+
+  * Add some Read, Show, Data, and Typeable instances.
+
+ -- David Fox <dsf@seereason.com>  Mon, 25 Aug 2014 03:47:38 -0700
+
+haskell-debian (3.83.1) unstable; urgency=low
+
+  * Support new network-uri package.
+
+ -- David Fox <dsf@seereason.com>  Sun, 24 Aug 2014 17:17:55 -0700
+
 haskell-debian (3.83) unstable; urgency=low
 
   * Add a Loc value to the ControlFileError type, the template
