git.iko.soy/typeable/cabal2nix
on 38bb5db help sign in
typeable/cabal2nix/src/hackage2nix.hs
3125 lines 72 kB history raw
1{-# LANGUAGE PatternGuards, CPP #-}
3module Main ( main ) where
5{-
6 I use the following shell script to re-build "hackage-packages.nix":
8 | #! /bin/sh
9 |
10 | set -eu -o pipefail
11 |
12 | cd ~/src/cabal2nix
13 | make --quiet cabal2nix.cabal
14 | cabal build -j hackage2nix
15 | time dist/build/hackage2nix/hackage2nix >hackage-packages.nix
16 | mv hackage-packages.nix ~/.nix-defexpr/pkgs/development/haskell-modules/hackage-packages.nix
17 | nix-env -qaP -A haskellngPackages | tail -1
19 Make sure that "nix-env -qaP" shows the top-level Nixpkgs attributes at the
20 top level, i.e. without any prefix like "nixos.pkgs". Otherwise, the code
21 that resolver in Distribution/Nixpkgs/PackageMap.hs will produce bogus
22 results.
23-}
25-- Run: cabal build -j hackage2nix && time dist/build/hackage2nix/hackage2nix >hackage-packages.nix && mv hackage-packages.nix ~/.nix-defexpr/pkgs/development/haskell-modules/hackage-packages.nix && nix-env -qaP -A haskellngPackages | tail -1
27import Cabal2Nix.Flags ( configureCabalFlags )
28import Cabal2Nix.Generate ( cabal2nix' )
29import Cabal2Nix.Hackage ( readHashedHackage, Hackage )
30import Cabal2Nix.Package
31import Data.List
32import Data.Function
33import Control.Monad
34import Control.Monad.Par.Combinator
35import Control.Monad.Par.IO
36import Control.Monad.Trans ( liftIO )
37import Data.Map.Strict ( Map )
38import qualified Data.Map.Strict as Map
39import Data.Maybe
40import Data.Monoid
41import Data.Set ( Set )
42import qualified Data.Set as Set
43import Distribution.Compiler
44import Distribution.Nixpkgs.Haskell
45import Distribution.Nixpkgs.PackageMap
46import Distribution.Nixpkgs.Util.PrettyPrinting hiding ( attr, (<>) )
47import Distribution.Package
48import Distribution.PackageDescription hiding ( buildDepends, extraLibs, buildTools )
49import Distribution.PackageDescription.Configuration
50import Distribution.System
51import Distribution.Text
52import Distribution.Version
54type Nixpkgs = PackageMap -- Map String (Set [String])
55type PackageSet = Map String Version
56type PackageMultiSet = Map String (Set Version)
58type Constraint = Dependency
60resolveConstraint :: Constraint -> Hackage -> Version
61resolveConstraint c = fromMaybe (error ("constraint " ++ display c ++ " cannot be resolved in Hackage")) .
62 resolveConstraint' c
64resolveConstraint' :: Constraint -> Hackage -> Maybe Version
65resolveConstraint' (Dependency (PackageName name) vrange) hackage | Set.null vs = Nothing
66 | otherwise = Just (Set.findMax vs)
67 where vs = Set.filter (`withinRange` vrange) (Map.keysSet (hackage Map.! name))
69data Configuration = Configuration
70 {
71 -- |Target architecture. Used by 'finalizePackageDescription' to
72 -- choose appropriate flags and dependencies.
73 platform :: Platform
75 -- |Target compiler. Used by 'finalizePackageDescription' to choose
76 -- appropriate flags and dependencies.
77 , compilerId :: CompilerId
79 -- |Core packages found on Hackageg
80 , corePackages :: [PackageIdentifier]
82 -- |Core packages not found on Hackage.
83 , hardCorePackages :: [PackageIdentifier]
85 -- |These packages replace the latest respective version during
86 -- dependency resolution.
87 , defaultPackageOverrides :: [Constraint]
89 -- |These packages are added to the generated set, but the play no
90 -- role during dependency resolution.
91 , extraPackages :: [Constraint]
93 -- |These packages have not succeeded a build yet, so we give them an
94 -- empty meta.hydraPlatforms attribute to avoid cluttering our Hydra
95 -- output with lots of broken builds.
96 , brokenPackages :: Set PackageName
97 }
98 deriving (Read, Show)
100main :: IO ()
101main = do
102 hackage <- readHashedHackage
103 nixpkgs <- readNixpkgPackageMap
104 let fixup = Map.delete "acme-everything" -- TODO: https://github.com/NixOS/cabal2nix/issues/164
105 . Map.delete "type" -- TODO: https://github.com/NixOS/cabal2nix/issues/163
106 runParIO $ generatePackageSet defaultConfiguration (fixup hackage) nixpkgs
108generatePackageSet :: Configuration -> Hackage -> Nixpkgs -> ParIO ()
109generatePackageSet config hackage nixpkgs = do
110 let
111 corePackageSet :: PackageSet
112 corePackageSet = Map.fromList [ (name, v) | PackageIdentifier (PackageName name) v <- corePackages config ++ hardCorePackages config ]
114 latestVersionSet :: PackageSet
115 latestVersionSet = Map.map (Set.findMax . Map.keysSet) hackage
117 defaultPackageOverridesSet :: PackageSet
118 defaultPackageOverridesSet = Map.fromList [ (name, resolveConstraint c hackage) | c@(Dependency (PackageName name) _) <- defaultPackageOverrides config ]
120 generatedDefaultPackageSet :: PackageSet
121 generatedDefaultPackageSet = (defaultPackageOverridesSet `Map.union` latestVersionSet) `Map.difference` corePackageSet
123 latestCorePackageSet :: PackageSet
124 latestCorePackageSet = latestVersionSet `Map.intersection` corePackageSet
126 latestOverridePackageSet :: PackageSet
127 latestOverridePackageSet = latestVersionSet `Map.intersection` defaultPackageOverridesSet
129 extraPackageSet :: PackageMultiSet
130 extraPackageSet = Map.unionsWith Set.union
131 [ Map.singleton name (Set.singleton (resolveConstraint c hackage)) | c@(Dependency (PackageName name) _) <- extraPackages config ]
133 db :: PackageMultiSet
134 db = Map.unionsWith Set.union [ Map.map Set.singleton generatedDefaultPackageSet
135 , Map.map Set.singleton latestCorePackageSet
136 , Map.map Set.singleton latestOverridePackageSet
137 , extraPackageSet
138 ]
140 knownAttributesSet :: Set String
141 knownAttributesSet = Set.union (Map.keysSet hackage) (Map.keysSet corePackageSet)
143 resolver :: Dependency -> Bool
144 resolver (Dependency (PackageName name) vrange)
145 | Just v <- Map.lookup name corePackageSet = v `withinRange` vrange
146 | Just v <- Map.lookup name generatedDefaultPackageSet = v `withinRange` vrange
147 | otherwise = False
149 liftIO $ do putStrLn "/* hackage-packages.nix is an auto-generated file -- DO NOT EDIT! */"
150 putStrLn ""
151 putStrLn "{ pkgs, stdenv, callPackage }:"
152 putStrLn ""
153 putStrLn "self: {"
154 putStrLn ""
155 pkgs <- flip parMapM (Map.toAscList db) $ \(name, vs) -> do
156 defs <- forM (Set.toAscList vs) $ \pkgversion -> do
157 srcSpec <- liftIO $ sourceFromHackage Nothing (name ++ "-" ++ display pkgversion)
158 let Just cabalFileHash = lookup "x-cabal-file-hash" (customFieldsPD (packageDescription descr))
160 -- TODO: Include list of broken dependencies in the generated output.
161 descr = hackage Map.! name Map.! pkgversion
162 (missingDeps, _, drv') = cabal2nix resolver descr
163 drv = drv' { src = srcSpec, editedCabalFile = if revision drv == 0 then "" else cabalFileHash
164 , metaSection = (metaSection drv') { broken = not (Set.null missing) -- Missing Haskell dependencies!
165 , hydraPlatforms = if PackageName name `Set.member` brokenPackages config
166 then Set.singleton "stdenv.lib.platforms.none"
167 else hydraPlatforms (metaSection drv')
168 }
169 , jailbreak = not (null missingDeps) -- Dependency constraints aren't fulfilled
170 }
172 missing :: Set String
173 missing = Set.filter (`Set.notMember` knownAttributesSet) (buildDepends drv `Set.union` testDepends drv)
175 buildInputs :: Map Attribute (Maybe Path)
176 buildInputs = Map.unions
177 [ Map.fromList [ (n, Nothing) | n <- Set.toList missing ]
178 , Map.fromList [ (n, resolveNixpkgsAttribute nixpkgs n) | n <- Set.toAscList (extraLibs drv `Set.union` pkgConfDeps drv) ]
179 , Map.fromList [ (n, resolveNixpkgsOrHackageAttribute nixpkgs hackage n) | n <- Set.toAscList (buildTools drv) ]
180 ]
182 systemOverrides :: Doc
183 systemOverrides = fsep (map (uncurry formatOverride) (Map.toAscList buildInputs))
185 formatOverride :: Attribute -> Maybe Path -> Doc
186 formatOverride n Nothing = space <> text n <> text " = null;" -- missing attribute
187 formatOverride n (Just []) -- Haskell package:
188 | n == name = formatOverride n Nothing -- refers to a missing system library
189 | otherwise = empty -- found by callPackage
190 formatOverride n (Just p) = (text " inherit" <+> parens (text (intercalate "." p)) <+> text n) <> semi
192 overrides :: Doc
193 overrides = systemOverrides
195 attr | Just v <- Map.lookup name generatedDefaultPackageSet, v == pkgversion = name
196 | otherwise = name ++ '_' : [ if c == '.' then '_' else c | c <- display pkgversion ]
198 return $ nest 2 $ hang (string attr <+> equals <+> text "callPackage") 2 (parens (pPrint drv)) <+> (braces overrides <> semi)
199 return (intercalate "\n\n" (map render defs))
201 liftIO $ mapM_ (\pkg -> putStrLn pkg >> putStrLn "") pkgs
202 liftIO $ putStrLn "}"
204resolveNixpkgsOrHackageAttribute :: Nixpkgs -> Hackage -> Attribute -> Maybe Path
205resolveNixpkgsOrHackageAttribute nixpkgs hackage name
206 | p@(Just _) <- resolveNixpkgsAttribute nixpkgs name = p
207 | Just _ <- Map.lookup name hackage = Just []
208 | otherwise = Nothing
210resolveNixpkgsAttribute :: Nixpkgs -> Attribute -> Maybe Path
211resolveNixpkgsAttribute nixpkgs name
212 | name `elem` ["clang","lldb","llvm"] = Just ["self","llvmPackages"]
213 | Just paths <- Map.lookup name nixpkgs = getShortestPath (Set.toList (paths `Set.intersection` goodScopes))
214 | otherwise = Nothing
215 where
216 goodScopes :: Set Path
217 goodScopes = Set.fromList [[], ["xlibs"], ["gnome"], ["gnome3"], ["kde4"]]
219 getShortestPath :: [Path] -> Maybe Path
220 getShortestPath [] = Nothing
221 getShortestPath ps = Just ("pkgs" : minimumBy (on compare length) ps)
223cabal2nix :: (Dependency -> Bool) -> GenericPackageDescription -> ([Dependency], FlagAssignment, Derivation)
224cabal2nix resolver cabal = (missingDeps, flags, drv)
225 where
226 drv = cabal2nix' descr
228 Right (descr, flags) = finalize (if null missingDeps then resolver else const True) cabal
230 missingDeps :: [Dependency]
231 missingDeps = either id (const []) (finalize resolver cabal')
233 finalize :: (Dependency -> Bool) -> GenericPackageDescription -> Either [Dependency] (PackageDescription, FlagAssignment)
234 finalize resolver' = finalizePackageDescription
235 (configureCabalFlags (package (packageDescription cabal)))
236 resolver'
237 (Platform X86_64 Linux) -- shouldn't be hardcoded
238#if MIN_VERSION_Cabal(1,22,0)
239 (unknownCompilerInfo (CompilerId GHC (Version [7,8,4] [])) NoAbiTag)
240#else
241 (CompilerId GHC (Version [7,8,4] []))
242#endif
243 [] -- no additional constraints
245 -- A variant of the cabal file that has all test suites enabled to ensure
246 -- that their dependencies are recognized by finalizePackageDescription.
247 cabal' :: GenericPackageDescription
248 cabal' = cabal { condTestSuites = flaggedTests }
250 flaggedTests :: [(String, CondTree ConfVar [Dependency] TestSuite)]
251 flaggedTests = map (\(n, t) -> (n, mapTreeData enableTest t)) (condTestSuites cabal)
253 enableTest :: TestSuite -> TestSuite
254 enableTest t = t { testEnabled = True }
256defaultConfiguration :: Configuration
257defaultConfiguration = Configuration
258 { platform = Platform X86_64 Linux
260 , compilerId = CompilerId GHC (Version [7,8,4] [])
262 , defaultPackageOverrides = map (\s -> fromMaybe (error (show s ++ " is not a valid override selector")) (simpleParse s))
263 [ "blaze-builder < 0.4" -- the new version breaks many builds, like streaming-commons
264 , "blaze-html < 0.8" -- new versions break pandoc
265 , "blaze-markup < 0.7" -- new versions break pandoc
266 , "control-monad-free < 0.6" -- newer versions don't compile with anything but GHC 7.8.x
267 , "haddock-library == 1.1.*" -- new versions break pandoc
268 , "HStringTemplate < 0.8" -- 0.8 depends on time >= 1.5, which we cannot provide in GHC 7.8.x
269 , "mtl == 2.1.*" -- newer versions require transformers > 0.4.x, which we cannot provide in GHC 7.8.x
270 , "primitive < 0.6" -- newer versions break lens and others packages
271 , "QuickCheck < 2.8" -- 2.8 breaks chell-quickcheck-0.2.4
272 , "utf8-string < 1" -- version 1 breaks several packages right now, most notably hint
273 ]
275 , corePackages = map (\s -> fromMaybe (error (show s ++ " is not a valid core package")) (simpleParse s))
276 [ "Cabal-1.18.1.5"
277 , "array-0.5.0.0"
278 , "base-4.7.0.2"
279 , "binary-0.7.1.0"
280 , "bytestring-0.10.4.0"
281 , "containers-0.5.5.1"
282 , "deepseq-1.3.0.2"
283 , "directory-1.2.1.0"
284 , "filepath-1.3.0.2"
285 , "ghc-prim-0.3.1.0"
286 , "haskeline-0.7.1.2"
287 , "haskell2010-1.1.2.0"
288 , "haskell98-2.0.0.3"
289 , "hoopl-3.10.0.1"
290 , "hpc-0.6.0.1"
291 , "integer-gmp-0.5.1.0"
292 , "old-locale-1.0.0.6"
293 , "old-time-1.1.0.2"
294 , "pretty-1.1.1.1"
295 , "process-1.2.0.0"
296 , "template-haskell-2.9.0.0"
297 , "terminfo-0.4.0.0"
298 , "time-1.4.2"
299 , "transformers-0.3.0.0"
300 , "unix-2.7.0.1"
301 , "xhtml-3000.2.1"
302 ]
304 , hardCorePackages = map (\s -> fromMaybe (error (show s ++ " is not a valid core package")) (simpleParse s))
305 [ "bin-package-db-0.0.0.0"
306 , "ghc-7.8.4"
307 , "rts-1.0"
308 ]
310 , extraPackages = map (\s -> fromMaybe (error (show s ++ " is not a valid extra package selector")) (simpleParse s))
311 [ "aeson < 0.8" -- newer versions don't work with GHC 6.12.3
312 , "blaze-markup >=0.5.2.1 && <0.6.3.0" -- required by idris-0.9.17.1
313 , "blaze-html < 0.7.1" -- required by idris-0.9.17.1
314 , "c2hs < 0.21" -- newer versions cannot compile ncurses
315 , "Cabal == 1.18.*" -- required for cabal-install et al on old GHC versions
316 , "Cabal == 1.20.*" -- required for cabal-install et al on old GHC versions
317 , "cabal-install == 1.18.*" -- required for ghc-mod on 7.8.x
318 , "cpphs < 1.19" -- required to build Agda
319 , "haddock-api < 2.16" -- required on GHC 7.8.x
320 , "containers < 0.5" -- required to build alex with GHC 6.12.3
321 , "deepseq == 1.3.0.1" -- required to build Cabal with GHC 6.12.3
322 , "descriptive < 0.1" -- required for structured-haskell-mode-1.0.8
323 , "equivalence == 0.2.5" -- required to build Agda with GHC 7.8.x
324 , "gloss < 1.9.3" -- new versions don't compile with GHC 7.8.x
325 , "haskell-src-exts < 1.16" -- required for structured-haskell-mode-1.0.8
326 , "lens >=4.1.1 && <4.8" -- required by idris-0.9.17.1
327 , "mtl-prelude < 2" -- required for to build postgrest on mtl 2.1.x platforms
328 , "optparse-applicative == 0.10.*" -- required for elm-make 0.1.1 and elm-package 0.4
329 , "parallel == 3.2.0.3" -- newer versions don't work with GHC 6.12.3
330 , "primitive == 0.5.1.*" -- required to build alex with GHC 6.12.3
331 , "QuickCheck < 2" -- required by test-framework-quickcheck and its users
332 , "seqid < 0.2" -- newer versions depend on transformers 0.4.x which we cannot provide in GHC 7.8.x
333 , "seqid-streams < 0.2" -- newer versions depend on transformers 0.4.x which we cannot provide in GHC 7.8.x
334 , "split < 0.2" -- newer versions don't work with GHC 6.12.3
335 , "vector < 0.10.10" -- newer versions don't work with GHC 6.12.3
336 ]
338 , brokenPackages = Set.fromList $ map PackageName
339 [ "3dmodels"
340 , "4Blocks"
341 , "abcBridge"
342 , "abstract-par-accelerate"
343 , "AC-BuildPlatform"
344 , "accelerate-fftw"
345 , "accentuateus"
346 , "access-time"
347 , "AC-EasyRaster-GTK"
348 , "AC-HalfInteger"
349 , "acme-numbersystem"
350 , "acme-schoenfinkel"
351 , "AC-Terminal"
352 , "ActionKid"
353 , "activehs"
354 , "actor"
355 , "AC-VanillaArray"
356 , "adaptive-containers"
357 , "adaptive-tuple"
358 , "adhoc-network"
359 , "ADPfusion"
360 , "adp-multi"
361 , "adp-multi-monadiccp"
362 , "Advgame"
363 , "AERN-Basics"
364 , "AERN-Net"
365 , "AERN-Real"
366 , "AERN-Real-Double"
367 , "AERN-Real-Interval"
368 , "AERN-RnToRm"
369 , "AERN-RnToRm-Plot"
370 , "aeson-bson"
371 , "AesonBson"
372 , "aeson-native"
373 , "afv"
374 , "Agata"
375 , "agda-server"
376 , "airbrake"
377 , "aivika-transformers"
378 , "ajhc"
379 , "alea"
380 , "algebraic"
381 , "alms"
382 , "alpha"
383 , "alpino-tools"
384 , "alsa"
385 , "alsa-midi"
386 , "alsa-pcm-tests"
387 , "alsa-seq-tests"
388 , "altfloat"
389 , "alure"
390 , "amazon-emailer"
391 , "AMI"
392 , "anansi-pandoc"
393 , "anatomy"
394 , "AndroidViewHierarchyImporter"
395 , "Animas"
396 , "Annotations"
397 , "antagonist"
398 , "antfarm"
399 , "antimirov"
400 , "antlrc"
401 , "anydbm"
402 , "aosd"
403 , "apelsin"
404 , "apiary-helics"
405 , "apis"
406 , "apotiki"
407 , "ApplePush"
408 , "AppleScript"
409 , "approx-rand-test"
410 , "arbb-vm"
411 , "arb-fft"
412 , "archiver"
413 , "archlinux"
414 , "archlinux-web"
415 , "argparser"
416 , "arguedit"
417 , "ariadne"
418 , "arith-encode"
419 , "armada"
420 , "ArrayRef"
421 , "arrowp"
422 , "ascii85-conduit"
423 , "asic"
424 , "asil"
425 , "AspectAG"
426 , "assimp"
427 , "astrds"
428 , "astview"
429 , "async-extras"
430 , "atlassian-connect-core"
431 , "atlassian-connect-descriptor"
432 , "atom-msp430"
433 , "atomo"
434 , "AttoBencode"
435 , "attoparsec-iteratee"
436 , "attoparsec-text"
437 , "attoparsec-text-enumerator"
438 , "atuin"
439 , "augeas"
440 , "augur"
441 , "authoring"
442 , "AutoForms"
443 , "avers"
444 , "AvlTree"
445 , "awesomium"
446 , "awesomium-glut"
447 , "awesomium-raw"
448 , "AWin32Console"
449 , "aws-cloudfront-signer"
450 , "aws-elastic-transcoder"
451 , "aws-kinesis-reshard"
452 , "aws-sdk"
453 , "aws-sign4"
454 , "aws-sns"
455 , "azure-service-api"
456 , "backdropper"
457 , "backtracking-exceptions"
458 , "bamboo"
459 , "bamboo-launcher"
460 , "bamboo-plugin-highlight"
461 , "bamboo-plugin-photo"
462 , "bamboo-theme-blueprint"
463 , "bamboo-theme-mini-html5"
464 , "bamse"
465 , "barchart"
466 , "barley"
467 , "Barracuda"
468 , "barrie"
469 , "barrier-monad"
470 , "baskell"
471 , "battleships"
472 , "bayes-stack"
473 , "beamable"
474 , "beautifHOL"
475 , "bed-and-breakfast"
476 , "Befunge93"
477 , "bein"
478 , "berkeleydb"
479 , "BerkeleyDBXML"
480 , "berp"
481 , "bff"
482 , "bidirectionalization-combined"
483 , "billboard-parser"
484 , "billeksah-forms"
485 , "billeksah-main"
486 , "billeksah-pane"
487 , "billeksah-services"
488 , "binary-derive"
489 , "binary-file"
490 , "binary-protocol-zmq"
491 , "binary-streams"
492 , "binding-gtk"
493 , "bindings-apr"
494 , "bindings-apr-util"
495 , "bindings-bfd"
496 , "bindings-cctools"
497 , "bindings-codec2"
498 , "bindings-common"
499 , "bindings-dc1394"
500 , "bindings-eskit"
501 , "bindings-EsounD"
502 , "bindings-fann"
503 , "bindings-friso"
504 , "bindings-gts"
505 , "bindings-hdf5"
506 , "bindings-K8055"
507 , "bindings-levmar"
508 , "bindings-libftdi"
509 , "bindings-librrd"
510 , "bindings-libstemmer"
511 , "bindings-libv4l2"
512 , "bindings-linux-videodev2"
513 , "bindings-mpdecimal"
514 , "bindings-sc3"
515 , "bindings-sipc"
516 , "bind-marshal"
517 , "Biobase"
518 , "BiobaseBlast"
519 , "BiobaseDotP"
520 , "BiobaseFasta"
521 , "BiobaseFR3D"
522 , "BiobaseInfernal"
523 , "BiobaseMAF"
524 , "BiobaseTrainingData"
525 , "BiobaseTurner"
526 , "BiobaseTypes"
527 , "BiobaseVienna"
528 , "biophd"
529 , "biostockholm"
530 , "bird"
531 , "BirdPP"
532 , "bit-array"
533 , "bitcoin-rpc"
534 , "Bitly"
535 , "bitly-cli"
536 , "bits-conduit"
537 , "bitset"
538 , "bitspeak"
539 , "BitSyntax"
540 , "bittorrent"
541 , "bkr"
542 , "bla"
543 , "black-jewel"
544 , "blakesum"
545 , "blakesum-demo"
546 , "blas"
547 , "blas-hs"
548 , "blaze"
549 , "blaze-html-contrib"
550 , "blaze-html-hexpat"
551 , "blaze-textual-native"
552 , "Blobs"
553 , "blogination"
554 , "BlogLiterately-diagrams"
555 , "Blueprint"
556 , "BNFC-meta"
557 , "board-games"
558 , "bogre-banana"
559 , "boolean-normal-forms"
560 , "bools"
561 , "boomslang"
562 , "borel"
563 , "bot"
564 , "Bravo"
565 , "breakout"
566 , "brians-brain"
567 , "bsd-sysctl"
568 , "bson-generics"
569 , "bson-mapping"
570 , "btree-concurrent"
571 , "buildbox-tools"
572 , "bullet"
573 , "buster"
574 , "Buster"
575 , "buster-gtk"
576 , "buster-network"
577 , "bytable"
578 , "bytestring-class"
579 , "bytestring-csv"
580 , "bytestringparser"
581 , "bytestring-rematch"
582 , "bytestring-short"
583 , "cabal2arch"
584 , "cabal2doap"
585 , "cabal2spec"
586 , "cabal-constraints"
587 , "cabal-dev"
588 , "cabalgraph"
589 , "cabal-graphdeps"
590 , "Cabal-ide-backend"
591 , "cabal-install-ghc72"
592 , "cabal-install-ghc74"
593 , "cabalmdvrpm"
594 , "cabal-query"
595 , "cabalrpmdeps"
596 , "cabal-scripts"
597 , "cabal-setup"
598 , "cabal-test"
599 , "cabal-upload"
600 , "cal3d"
601 , "cal3d-examples"
602 , "cal3d-opengl"
603 , "calc"
604 , "caldims"
605 , "caledon"
606 , "campfire"
607 , "cantor"
608 , "cao"
609 , "cap"
610 , "Capabilities"
611 , "caramia"
612 , "carboncopy"
613 , "carettah"
614 , "casadi-bindings"
615 , "casadi-bindings-control"
616 , "casadi-bindings-core"
617 , "casadi-bindings-internal"
618 , "casadi-bindings-ipopt-interface"
619 , "casadi-bindings-snopt-interface"
620 , "Cascade"
621 , "cascading"
622 , "cash"
623 , "cassandra-thrift"
624 , "cassy"
625 , "castle"
626 , "casui"
627 , "catch-fd"
628 , "categorical-algebra"
629 , "category-extras"
630 , "CBOR"
631 , "CC-delcont-alt"
632 , "cci"
633 , "cctools-workqueue"
634 , "cedict"
635 , "cereal-enumerator"
636 , "cereal-ieee754"
637 , "cereal-plus"
638 , "cflp"
639 , "cfopu"
640 , "cgen"
641 , "cgi"
642 , "cgi-undecidable"
643 , "cgi-utils"
644 , "chalkboard"
645 , "chalkboard-viewer"
646 , "charade"
647 , "chatter"
648 , "checked"
649 , "check-pvp"
650 , "Chitra"
651 , "chp"
652 , "chp-mtl"
653 , "chp-plus"
654 , "chp-spec"
655 , "chp-transformers"
656 , "chuchu"
657 , "chunks"
658 , "church-list"
659 , "cil"
660 , "cinvoke"
661 , "c-io"
662 , "cio"
663 , "citation-resolve"
664 , "clafer"
665 , "claferIG"
666 , "claferwiki"
667 , "clash"
668 , "ClassLaws"
669 , "ClassyPrelude"
670 , "clckwrks"
671 , "clckwrks-cli"
672 , "clckwrks-dot-com"
673 , "clckwrks-plugin-bugs"
674 , "clckwrks-plugin-ircbot"
675 , "clckwrks-plugin-media"
676 , "clckwrks-plugin-page"
677 , "clckwrks-theme-bootstrap"
678 , "clckwrks-theme-clckwrks"
679 , "clckwrks-theme-geo-bootstrap"
680 , "Clean"
681 , "cless"
682 , "clifford"
683 , "clipper"
684 , "clippings"
685 , "clist"
686 , "clocked"
687 , "clogparse"
688 , "clone-all"
689 , "cloudfront-signer"
690 , "cloudyfs"
691 , "clua"
692 , "cluss"
693 , "clustertools"
694 , "clutterhs"
695 , "cmath"
696 , "cmathml3"
697 , "CMCompare"
698 , "cmdargs-browser"
699 , "cmonad"
700 , "cnc-spec-compiler"
701 , "Coadjute"
702 , "Codec-Image-DevIL"
703 , "codec-libevent"
704 , "codecov-haskell"
705 , "codemonitor"
706 , "codepad"
707 , "cognimeta-utils"
708 , "colada"
709 , "colchis"
710 , "collada-output"
711 , "collada-types"
712 , "collections"
713 , "coltrane"
714 , "com"
715 , "Combinatorrent"
716 , "commodities"
717 , "comonad-extras"
718 , "comonad-random"
719 , "compact-map"
720 , "compact-string"
721 , "complexity"
722 , "compression"
723 , "computational-algebra"
724 , "concraft-hr"
725 , "concurrent-state"
726 , "condor"
727 , "Condor"
728 , "condorcet"
729 , "conductive-clock"
730 , "conductive-hsc3"
731 , "conduit-audio-lame"
732 , "conduit-audio-samplerate"
733 , "conduit-iconv"
734 , "conduit-network-stream"
735 , "conduit-resumablesink"
736 , "config-select"
737 , "conjure"
738 , "connection-pool"
739 , "consistent"
740 , "const-math-ghc-plugin"
741 , "constructive-algebra"
742 , "consul-haskell"
743 , "context-stack"
744 , "continue"
745 , "continuum"
746 , "continuum-client"
747 , "Contract"
748 , "control-event"
749 , "control-monad-attempt"
750 , "control-monad-exception-mtl"
751 , "control-monad-failure"
752 , "control-monad-failure-mtl"
753 , "Control-Monad-MultiPass"
754 , "contstuff-monads-tf"
755 , "contstuff-transformers"
756 , "convertible-ascii"
757 , "convertible-text"
758 , "copilot"
759 , "copilot-cbmc"
760 , "COrdering"
761 , "corebot-bliki"
762 , "CoreFoundation"
763 , "core-haskell"
764 , "Coroutine"
765 , "coroutine-iteratee"
766 , "CouchDB"
767 , "couchdb-conduit"
768 , "couchdb-enumerator"
769 , "couch-hs"
770 , "court"
771 , "CPBrainfuck"
772 , "cplusplus-th"
773 , "cpuperf"
774 , "cpython"
775 , "cqrs"
776 , "cqrs-example"
777 , "cqrs-postgresql"
778 , "cqrs-sqlite3"
779 , "cqrs-test"
780 , "cqrs-types"
781 , "cr"
782 , "crack"
783 , "Craft3e"
784 , "craftwerk-gtk"
785 , "crc16"
786 , "crf-chain1"
787 , "crf-chain2-generic"
788 , "criterion-plus"
789 , "crocodile"
790 , "cron"
791 , "crypto-cipher-benchmarks"
792 , "cryptsy-api"
793 , "crystalfontz"
794 , "cse-ghc-plugin"
795 , "cspmchecker"
796 , "CSPM-cspm"
797 , "CSPM-FiringRules"
798 , "CSPM-Frontend"
799 , "CSPM-Interpreter"
800 , "CSPM-ToProlog"
801 , "ctemplate"
802 , "ctkl"
803 , "cudd"
804 , "curlhs"
805 , "curry-base"
806 , "CurryDB"
807 , "curry-frontend"
808 , "cursedcsv"
809 , "CV"
810 , "cv-combinators"
811 , "cypher"
812 , "DAG-Tournament"
813 , "dao"
814 , "Dao"
815 , "dapi"
816 , "darcs2dot"
817 , "darcs-benchmark"
818 , "darcs-beta"
819 , "darcs-buildpackage"
820 , "darcs-cabalized"
821 , "darcsden"
822 , "darcs-fastconvert"
823 , "darcs-graph"
824 , "DarcsHelpers"
825 , "darcs-monitor"
826 , "darcs-scripts"
827 , "darcswatch"
828 , "data-dispersal"
829 , "data-easy"
830 , "data-extra"
831 , "data-ivar"
832 , "data-lens-ixset"
833 , "datalog"
834 , "data-nat"
835 , "data-object-json"
836 , "data-object-yaml"
837 , "data-quotientref"
838 , "data-rope"
839 , "Data-Rope"
840 , "data-store"
841 , "DataTreeView"
842 , "data-type"
843 , "dbjava"
844 , "d-bus"
845 , "DBus"
846 , "dbus-client"
847 , "dclabel"
848 , "ddci-core"
849 , "ddc-tools"
850 , "dead-simple-json"
851 , "decepticons"
852 , "DecisionTree"
853 , "decoder-conduit"
854 , "dedukti"
855 , "deepseq-bounded"
856 , "deepseq-th"
857 , "deepzoom"
858 , "defargs"
859 , "DefendTheKing"
860 , "definitive-filesystem"
861 , "definitive-graphics"
862 , "definitive-reactive"
863 , "definitive-sound"
864 , "deka"
865 , "deka-tests"
866 , "delicious"
867 , "denominate"
868 , "derangement"
869 , "derivation-trees"
870 , "derive-gadt"
871 , "derive-IG"
872 , "derp-lib"
873 , "dewdrop"
874 , "Dflow"
875 , "dfsbuild"
876 , "dgs"
877 , "diagrams-builder"
878 , "diagrams-haddock"
879 , "diagrams-pdf"
880 , "diagrams-tikz"
881 , "dice-entropy-conduit"
882 , "dictparser"
883 , "diffcabal"
884 , "DifferenceLogic"
885 , "DifferentialEvolution"
886 , "digestive-functors-hsp"
887 , "DimensionalHash"
888 , "dingo-core"
889 , "dingo-example"
890 , "dingo-widgets"
891 , "direct-fastcgi"
892 , "direct-plugins"
893 , "DirectSound"
894 , "dirfiles"
895 , "discount"
896 , "disjoint-set"
897 , "DisTract"
898 , "distributed-process-azure"
899 , "distributed-process-execution"
900 , "distributed-process-registry"
901 , "distributed-process-task"
902 , "distributed-process-zookeeper"
903 , "distribution-plot"
904 , "dist-upload"
905 , "djinn-th"
906 , "DnaProteinAlignment"
907 , "dnscache"
908 , "dnssd"
909 , "doccheck"
910 , "docker"
911 , "doc-review"
912 , "DocTest"
913 , "doctest-discover"
914 , "doctest-discover-configurator"
915 , "DOM"
916 , "download"
917 , "download-media-content"
918 , "DP"
919 , "dph-examples"
920 , "dph-lifted-base"
921 , "dph-lifted-copy"
922 , "dph-lifted-vseg"
923 , "dph-par"
924 , "dph-prim-par"
925 , "dph-seq"
926 , "DPM"
927 , "DrHylo"
928 , "dropbox-sdk"
929 , "dropsolve"
930 , "DSH"
931 , "ds-kanren"
932 , "dsmc"
933 , "dsmc-tools"
934 , "dsp"
935 , "DSTM"
936 , "dstring"
937 , "dtab"
938 , "DTC"
939 , "dtd"
940 , "dtd-text"
941 , "dtd-types"
942 , "Dust"
943 , "Dust-crypto"
944 , "Dust-tools"
945 , "Dust-tools-pcap"
946 , "dvda"
947 , "dvdread"
948 , "dx9base"
949 , "dx9d3d"
950 , "dx9d3dx"
951 , "dynamic-object"
952 , "dynobud"
953 , "DysFRP-Cairo"
954 , "DysFRP-Craftwerk"
955 , "easy-api"
956 , "easyplot"
957 , "easyrender"
958 , "ecdsa"
959 , "ecma262"
960 , "ecu"
961 , "ed25519"
962 , "edenskel"
963 , "edge"
964 , "edit-lenses"
965 , "editline"
966 , "EditTimeReport"
967 , "EEConfig"
968 , "effective-aspects"
969 , "effective-aspects-mzv"
970 , "effect-monad"
971 , "egison-quote"
972 , "ehaskell"
973 , "eibd-client-simple"
974 , "eithers"
975 , "EitherT"
976 , "elerea-sdl"
977 , "Elm"
978 , "elm-get"
979 , "elm-reactor"
980 , "elm-server"
981 , "elm-yesod"
982 , "email"
983 , "email-postmark"
984 , "embeddock"
985 , "embeddock-example"
986 , "embroidery"
987 , "Emping"
988 , "empty"
989 , "enumeration"
990 , "enumfun"
991 , "EnumMap"
992 , "enummapmap"
993 , "enummapset"
994 , "env-parser"
995 , "epoll"
996 , "epubname"
997 , "Eq"
998 , "erlang"
999 , "eros-client"
1000 , "error-message"
1001 , "esotericbot"
1002 , "EsounD"
1003 , "estimators"
1004 , "estreps"
1005 , "Etage"
1006 , "Etage-Graph"
1007 , "eternal"
1008 , "Eternal10Seconds"
1009 , "Etherbunny"
1010 , "ethereum-client-haskell"
1011 , "ethereum-merkle-patricia-db"
1012 , "eurofxref"
1013 , "Euterpea"
1014 , "event-monad"
1015 , "EventSocket"
1016 , "every-bit-counts"
1017 , "ewe"
1018 , "exif"
1019 , "expand"
1020 , "expat-enumerator"
1021 , "explain"
1022 , "explicit-sharing"
1023 , "explore"
1024 , "exposed-containers"
1025 , "exp-pairs"
1026 , "extcore"
1027 , "extemp"
1028 , "extended-categories"
1029 , "ez-couch"
1030 , "factual-api"
1031 , "FailureT"
1032 , "fallingblocks"
1033 , "falling-turnip"
1034 , "family-tree"
1035 , "fastcgi"
1036 , "fastirc"
1037 , "fay-hsx"
1038 , "fcd"
1039 , "fckeditor"
1040 , "FComp"
1041 , "feed2lj"
1042 , "feed2twitter"
1043 , "feldspar-compiler"
1044 , "feldspar-language"
1045 , "fences"
1046 , "fenfire"
1047 , "FermatsLastMargin"
1048 , "ffeed"
1049 , "ffmpeg-light"
1050 , "ffmpeg-tutorials"
1051 , "fft"
1052 , "fibon"
1053 , "fields"
1054 , "FieldTrip"
1055 , "fieldwise"
1056 , "FileManip"
1057 , "FileSystem"
1058 , "filesystem-conduit"
1059 , "Finance-Quote-Yahoo"
1060 , "Finance-Treasury"
1061 , "find-conduit"
1062 , "FiniteMap"
1063 , "first-class-patterns"
1064 , "firstify"
1065 , "FirstOrderTheory"
1066 , "fit"
1067 , "fitsio"
1068 , "fixed-point"
1069 , "fixed-point-vector"
1070 , "fixed-point-vector-space"
1071 , "fixed-precision"
1072 , "fixed-storable-array"
1073 , "fix-parser-simple"
1074 , "fix-symbols-gitit"
1075 , "flexiwrap"
1076 , "flexiwrap-smallcheck"
1077 , "flickr"
1078 , "Flippi"
1079 , "flite"
1080 , "flowdock"
1081 , "flowdock-api"
1082 , "flower"
1083 , "FModExRaw"
1084 , "FM-SBLEX"
1085 , "foldl-incremental"
1086 , "folds"
1087 , "folds-common"
1088 , "follower"
1089 , "Folly"
1090 , "font-opengl-basic4x6"
1091 , "foo"
1092 , "fordo"
1093 , "for-free"
1094 , "formal"
1095 , "FormalGrammars"
1096 , "forml"
1097 , "formlets"
1098 , "formlets-hsp"
1099 , "ForSyDe"
1100 , "fpco-api"
1101 , "fpnla-examples"
1102 , "frag"
1103 , "franchise"
1104 , "Frank"
1105 , "free-game"
1106 , "freekick2"
1107 , "freenect"
1108 , "free-operational"
1109 , "freesect"
1110 , "free-theorems"
1111 , "free-theorems-counterexamples"
1112 , "free-theorems-seq"
1113 , "free-theorems-seq-webui"
1114 , "free-theorems-webui"
1115 , "FreeTypeGL"
1116 , "friday"
1117 , "friday-devil"
1118 , "fs-events"
1119 , "ftdi"
1120 , "ftp-conduit"
1121 , "ftshell"
1122 , "full-sessions"
1123 , "fullstop"
1124 , "full-text-search"
1125 , "functional-arrow"
1126 , "function-combine"
1127 , "functor-apply"
1128 , "functorm"
1129 , "funion"
1130 , "funsat"
1131 , "future"
1132 , "fuzzytime"
1133 , "gact"
1134 , "gameclock"
1135 , "Gamgine"
1136 , "Ganymede"
1137 , "gbu"
1138 , "gc-monitoring-wai"
1139 , "gdiff-ig"
1140 , "gdiff-th"
1141 , "gemstone"
1142 , "gencheck"
1143 , "generic-church"
1144 , "genericserialize"
1145 , "generic-storable"
1146 , "generic-xml"
1147 , "genetics"
1148 , "GenI"
1149 , "geniconvert"
1150 , "geni-gui"
1151 , "geniserver"
1152 , "geni-util"
1153 , "GenSmsPdu"
1154 , "GeoIp"
1155 , "geojson"
1156 , "GeomPredicates-SSE"
1157 , "getemx"
1158 , "getflag"
1159 , "gf"
1160 , "ghc-dup"
1161 , "ghc-events-analyze"
1162 , "ghc-generic-instances"
1163 , "ghci-diagrams"
1164 , "ghci-haskeline"
1165 , "ghci-ng"
1166 , "ghclive"
1167 , "ghc-prim_0_4_0_0"
1168 , "ghc-server"
1169 , "ghc-syb"
1170 , "ght"
1171 , "ginsu"
1172 , "gist"
1173 , "git-all"
1174 , "git-checklist"
1175 , "gitdo"
1176 , "git-gpush"
1177 , "gitlib-cross"
1178 , "gitlib-s3"
1179 , "gitlib-utils"
1180 , "git-repair"
1181 , "gitson"
1182 , "gladexml-accessor"
1183 , "GLFW-OGL"
1184 , "glider-nlp"
1185 , "glome-hs"
1186 , "GlomeTrace"
1187 , "GlomeView"
1188 , "gloss-examples"
1189 , "gmap"
1190 , "gmndl"
1191 , "gnome-desktop"
1192 , "gnome-keyring"
1193 , "gnomevfs"
1194 , "g-npm"
1195 , "goa"
1196 , "goatee-gtk"
1197 , "gofer-prelude"
1198 , "google-html5-slide"
1199 , "googleplus"
1200 , "GoogleSB"
1201 , "gopherbot"
1202 , "gpah"
1203 , "GPipe"
1204 , "GPipe-Collada"
1205 , "GPipe-Examples"
1206 , "GPipe-TextureLoad"
1207 , "gps"
1208 , "gps2htmlReport"
1209 , "GPX"
1210 , "gpx-conduit"
1211 , "grammar-combinators"
1212 , "GrammarProducts"
1213 , "GraphHammer-examples"
1214 , "graphicsFormats"
1215 , "graphics-formats-collada"
1216 , "graphicstools"
1217 , "graph-rewriting-cl"
1218 , "graph-rewriting-lambdascope"
1219 , "graphtype"
1220 , "graph-utils"
1221 , "greg-client"
1222 , "Grempa"
1223 , "grm"
1224 , "Grow"
1225 , "GrowlNotify"
1226 , "gruff"
1227 , "gruff-examples"
1228 , "gsl-random"
1229 , "gsl-random-fu"
1230 , "gsmenu"
1231 , "GTALib"
1232 , "gtfs"
1233 , "gtk2hs-cast-gnomevfs"
1234 , "gtk2hs-cast-gtk"
1235 , "gtk2hs-cast-gtkglext"
1236 , "Gtk2hsGenerics"
1237 , "gtk2hs-rpn"
1238 , "gtk3-mac-integration"
1239 , "gtkglext"
1240 , "GtkGLTV"
1241 , "gtkimageview"
1242 , "gtk-mac-integration"
1243 , "gtkrsync"
1244 , "gtk-serialized-event"
1245 , "gtk-toy"
1246 , "guess-combinator"
1247 , "GuiHaskell"
1248 , "GuiTV"
1249 , "haar"
1250 , "Hach"
1251 , "hack2-contrib-extra"
1252 , "hack2-handler-happstack-server"
1253 , "hack2-handler-mongrel2-http"
1254 , "hack2-handler-warp"
1255 , "hack2-interface-wai"
1256 , "hackage2hwn"
1257 , "hackage2twitter"
1258 , "hackage-diff"
1259 , "hackage-proxy"
1260 , "hackage-server"
1261 , "hackage-sparks"
1262 , "hack-contrib"
1263 , "hack-contrib-press"
1264 , "hackernews"
1265 , "hack-frontend-happstack"
1266 , "hack-frontend-monadcgi"
1267 , "hack-handler-epoll"
1268 , "hack-handler-evhttp"
1269 , "hack-handler-fastcgi"
1270 , "hack-handler-happstack"
1271 , "hack-handler-hyena"
1272 , "hack-handler-kibro"
1273 , "hack-handler-simpleserver"
1274 , "hack-middleware-clientsession"
1275 , "hack-middleware-jsonp"
1276 , "hactor"
1277 , "haddock-leksah"
1278 , "haggis"
1279 , "Haggressive"
1280 , "hairy"
1281 , "hakaru"
1282 , "hakismet"
1283 , "hakyll-blaze-templates"
1284 , "hakyll-contrib"
1285 , "hakyll-contrib-links"
1286 , "hakyll-elm"
1287 , "halberd"
1288 , "HaLeX"
1289 , "halfs"
1290 , "halipeto"
1291 , "hampp"
1292 , "hamtmap"
1293 , "hamusic"
1294 , "handle-like"
1295 , "happindicator"
1296 , "happindicator3"
1297 , "happraise"
1298 , "HAppS-Data"
1299 , "HAppSHelpers"
1300 , "happs-hsp"
1301 , "happs-hsp-template"
1302 , "HAppS-IxSet"
1303 , "HAppS-Server"
1304 , "HAppS-State"
1305 , "happstack-auth"
1306 , "happstack-clientsession"
1307 , "happstack-contrib"
1308 , "happstack-data"
1309 , "happstack-dlg"
1310 , "happstack-facebook"
1311 , "happstack-fastcgi"
1312 , "happstack-fay"
1313 , "happstack-foundation"
1314 , "happstack-heist"
1315 , "happstack-helpers"
1316 , "happstack-ixset"
1317 , "happstack-monad-peel"
1318 , "happstack-plugins"
1319 , "happstack-state"
1320 , "happstack-util"
1321 , "happstack-yui"
1322 , "happs-tutorial"
1323 , "HAppS-Util"
1324 , "happybara"
1325 , "happybara-webkit"
1326 , "happybara-webkit-server"
1327 , "harchive"
1328 , "HaRe"
1329 , "hark"
1330 , "HarmTrace"
1331 , "HarmTrace-Base"
1332 , "harpy"
1333 , "has"
1334 , "hascal"
1335 , "hascat"
1336 , "hascat-lib"
1337 , "hascat-setup"
1338 , "hascat-system"
1339 , "HasGP"
1340 , "hash"
1341 , "hashable-generics"
1342 , "Hashell"
1343 , "hasim"
1344 , "hask"
1345 , "haskanoid"
1346 , "haskarrow"
1347 , "haskdeep"
1348 , "haskeem"
1349 , "haskeline-class"
1350 , "haskell-aliyun"
1351 , "haskell-awk"
1352 , "haskell-bcrypt"
1353 , "haskell-brainfuck"
1354 , "haskell-cnc"
1355 , "haskelldb-dynamic"
1356 , "haskelldb-hdbc-mysql"
1357 , "haskelldb-hsql"
1358 , "haskelldb-hsql-mysql"
1359 , "haskelldb-hsql-odbc"
1360 , "haskelldb-hsql-postgresql"
1361 , "haskelldb-hsql-sqlite3"
1362 , "haskelldb-wx"
1363 , "haskell-formatter"
1364 , "haskell-ftp"
1365 , "haskell-neo4j-client"
1366 , "HaskellNN"
1367 , "Haskelloids"
1368 , "haskell-openflow"
1369 , "haskell-pdf-presenter"
1370 , "haskell-platform-test"
1371 , "haskell-plot"
1372 , "haskell-reflect"
1373 , "haskell-rules"
1374 , "haskellscrabble"
1375 , "haskell-spacegoo"
1376 , "haskell-src-meta-mwotton"
1377 , "haskell-token-utils"
1378 , "HaskellTorrent"
1379 , "haskell-type-exts"
1380 , "haskell-tyrant"
1381 , "haskell-xmpp"
1382 , "haskelm"
1383 , "haskgame"
1384 , "haskheap"
1385 , "haskhol-core"
1386 , "hask-home"
1387 , "haskmon"
1388 , "haskoin-wallet"
1389 , "haskoon"
1390 , "haskoon-httpspec"
1391 , "haskoon-salvia"
1392 , "haskore-supercollider"
1393 , "haskore-synthesizer"
1394 , "haslo"
1395 , "hasloGUI"
1396 , "hasparql-client"
1397 , "hastache-aeson"
1398 , "has-th"
1399 , "hat"
1400 , "hatex-guide"
1401 , "HaTeX-meta"
1402 , "hawitter"
1403 , "Hawk"
1404 , "haxparse"
1405 , "hayland"
1406 , "Hayoo"
1407 , "hback"
1408 , "hbb"
1409 , "hBDD-CUDD"
1410 , "hbeat"
1411 , "hblas"
1412 , "hblock"
1413 , "h-booru"
1414 , "hburg"
1415 , "hcheat"
1416 , "hchesslib"
1417 , "HCL"
1418 , "hcltest"
1419 , "hcron"
1420 , "hCsound"
1421 , "hcwiid"
1422 , "hdaemonize-buildfix"
1423 , "HDBC-mysql"
1424 , "hdbi-conduit"
1425 , "hDFA"
1426 , "hdigest"
1427 , "hdirect"
1428 , "hdis86"
1429 , "hdiscount"
1430 , "hdm"
1431 , "HDRUtils"
1432 , "hecc"
1433 , "Hedi"
1434 , "heist-aeson"
1435 , "helics"
1436 , "helics-wai"
1437 , "hellage"
1438 , "hellnet"
1439 , "helm"
1440 , "hemkay"
1441 , "hemokit"
1442 , "hen"
1443 , "henet"
1444 , "HERA"
1445 , "her-lexer"
1446 , "her-lexer-parsec"
1447 , "Hermes"
1448 , "hermit-syb"
1449 , "hesql"
1450 , "hetris"
1451 , "heukarya"
1452 , "hevolisa"
1453 , "hevolisa-dph"
1454 , "hexpat-iteratee"
1455 , "hexpat-pickle-generic"
1456 , "hexquote"
1457 , "hF2"
1458 , "hfann"
1459 , "hfd"
1460 , "hfiar"
1461 , "hfsevents"
1462 , "hgalib"
1463 , "HGamer3D"
1464 , "HGamer3D-API"
1465 , "HGamer3D-Audio"
1466 , "HGamer3D-CAudio-Binding"
1467 , "HGamer3D-CEGUI-Binding"
1468 , "HGamer3D-Enet-Binding"
1469 , "HGamer3D-Graphics3D"
1470 , "HGamer3D-GUI"
1471 , "HGamer3D-InputSystem"
1472 , "HGamer3D-Network"
1473 , "HGamer3D-Ogre-Binding"
1474 , "HGamer3D-OIS-Binding"
1475 , "HGamer3D-SDL2-Binding"
1476 , "HGamer3D-SFML-Binding"
1477 , "HGamer3D-WinEvent"
1478 , "HGamer3D-Wire"
1479 , "hg-buildpackage"
1480 , "hgen"
1481 , "hgeometric"
1482 , "hgithub"
1483 , "hgom"
1484 , "h-gpgme"
1485 , "hharp"
1486 , "HHDL"
1487 , "hiccup"
1488 , "hieraclus"
1489 , "hierarchical-clustering-diagrams"
1490 , "hiernotify"
1491 , "Hieroglyph"
1492 , "HiggsSet"
1493 , "higherorder"
1494 , "highWaterMark"
1495 , "hills"
1496 , "himg"
1497 , "himpy"
1498 , "hinduce-classifier"
1499 , "hinduce-classifier-decisiontree"
1500 , "hinduce-examples"
1501 , "hinvaders"
1502 , "hinze-streams"
1503 , "hircules"
1504 , "hirt"
1505 , "hissmetrics"
1506 , "historian"
1507 , "hist-pl"
1508 , "hist-pl-lmf"
1509 , "hjs"
1510 , "HJVM"
1511 , "hlbfgsb"
1512 , "hlcm"
1513 , "HLearn-algebra"
1514 , "HLearn-approximation"
1515 , "HLearn-classification"
1516 , "HLearn-datastructures"
1517 , "HLearn-distributions"
1518 , "hledger-chart"
1519 , "hledger-vty"
1520 , "hlibev"
1521 , "hlibfam"
1522 , "HListPP"
1523 , "hlogger"
1524 , "HLogger"
1525 , "hmark"
1526 , "hmarkup"
1527 , "hmatrix-banded"
1528 , "hmatrix-gsl-stats"
1529 , "hmatrix-quadprogpp"
1530 , "hmatrix-static"
1531 , "hmatrix-syntax"
1532 , "hmeap-utils"
1533 , "HMM"
1534 , "hMollom"
1535 , "hmp3"
1536 , "Hmpf"
1537 , "hmumps"
1538 , "HNM"
1539 , "hnn"
1540 , "hoauth"
1541 , "hob"
1542 , "hobbits"
1543 , "HODE"
1544 , "hofix-mtl"
1545 , "hog"
1546 , "hogre"
1547 , "hogre-examples"
1548 , "hois"
1549 , "holey-format"
1550 , "Holumbus-Distribution"
1551 , "Holumbus-MapReduce"
1552 , "Holumbus-Searchengine"
1553 , "Holumbus-Storage"
1554 , "homeomorphic"
1555 , "hommage"
1556 , "hommage-ds"
1557 , "HongoDB"
1558 , "hoodle-extra"
1559 , "hoovie"
1560 , "hopencc"
1561 , "hopencl"
1562 , "hopfield"
1563 , "hoq"
1564 , "hothasktags"
1565 , "hp2any-manager"
1566 , "hpage"
1567 , "hpapi"
1568 , "hpaste"
1569 , "hpasteit"
1570 , "HPath"
1571 , "hpc-coveralls"
1572 , "hpc-tracer"
1573 , "hplaylist"
1574 , "HPlot"
1575 , "hpodder"
1576 , "HPong"
1577 , "hprotoc-fork"
1578 , "hps-cairo"
1579 , "hPushover"
1580 , "hpygments"
1581 , "hpylos"
1582 , "hquantlib"
1583 , "hR"
1584 , "hranker"
1585 , "HRay"
1586 , "Hricket"
1587 , "HROOT"
1588 , "HROOT-core"
1589 , "HROOT-graf"
1590 , "HROOT-hist"
1591 , "HROOT-io"
1592 , "HROOT-math"
1593 , "hruby"
1594 , "hs2bf"
1595 , "hs2dot"
1596 , "Hs2lib"
1597 , "hsbackup"
1598 , "hsc2hs"
1599 , "hsc3-cairo"
1600 , "hsc3-data"
1601 , "hsc3-forth"
1602 , "hsc3-graphs"
1603 , "hsc3-lang"
1604 , "hsc3-lisp"
1605 , "hsc3-plot"
1606 , "hsc3-rec"
1607 , "hsc3-server"
1608 , "hsc3-unsafe"
1609 , "hscamwire"
1610 , "hs-carbon-examples"
1611 , "hscassandra"
1612 , "hs-cdb"
1613 , "hsclock"
1614 , "hscurses"
1615 , "hscurses-fish-ex"
1616 , "hs-dotnet"
1617 , "Hsed"
1618 , "hsfacter"
1619 , "HSFFIG"
1620 , "hs-ffmpeg"
1621 , "hs-fltk"
1622 , "hs-GeoIP"
1623 , "hsgnutls"
1624 , "hsgnutls-yj"
1625 , "hsgsom"
1626 , "HsHaruPDF"
1627 , "HSHHelpers"
1628 , "HsHyperEstraier"
1629 , "hsignal"
1630 , "hSimpleDB"
1631 , "hs-json-rpc"
1632 , "HsJudy"
1633 , "hskeleton"
1634 , "hslibsvm"
1635 , "hslogger4j"
1636 , "hs-logo"
1637 , "hslogstash"
1638 , "hsmagick"
1639 , "HSmarty"
1640 , "Hsmtlib"
1641 , "hsmtpclient"
1642 , "hsndfile-storablevector"
1643 , "hsns"
1644 , "hsntp"
1645 , "hsoptions"
1646 , "HSoundFile"
1647 , "hsparql"
1648 , "HsParrot"
1649 , "hsp-cgi"
1650 , "hspec-expectations-pretty"
1651 , "hspec-experimental"
1652 , "hspec-shouldbe"
1653 , "hspec-snap"
1654 , "HsPerl5"
1655 , "hs-pgms"
1656 , "hs-pkpass"
1657 , "hspread"
1658 , "hspresent"
1659 , "hsql-mysql"
1660 , "hsqml-demo-samples"
1661 , "hsqml-morris"
1662 , "hsSqlite3"
1663 , "HsSVN"
1664 , "hstatistics"
1665 , "hstats"
1666 , "hstest"
1667 , "hstidy"
1668 , "hstorchat"
1669 , "hstradeking"
1670 , "hs-twitter"
1671 , "hs-twitterarchiver"
1672 , "hstyle"
1673 , "hsubconvert"
1674 , "HSvm"
1675 , "hswip"
1676 , "hsx"
1677 , "hsXenCtrl"
1678 , "hsx-xhtml"
1679 , "hsyscall"
1680 , "hszephyr"
1681 , "HTab"
1682 , "hTalos"
1683 , "HTicTacToe"
1684 , "html2hamlet"
1685 , "htoml"
1686 , "http-client-request-modifiers"
1687 , "http-conduit-browser"
1688 , "http-enumerator"
1689 , "http-monad"
1690 , "http-proxy"
1691 , "https-everywhere-rules"
1692 , "http-shed"
1693 , "HTTP-Simple"
1694 , "httpspec"
1695 , "htune"
1696 , "htzaar"
1697 , "hubris"
1698 , "hugs2yc"
1699 , "hulk"
1700 , "hums"
1701 , "HUnit-Diff"
1702 , "hunit-gui"
1703 , "HUnit-Plus"
1704 , "hunit-rematch"
1705 , "hurdle"
1706 , "husky"
1707 , "huzzy"
1708 , "hVOIDP"
1709 , "hws"
1710 , "HXMPP"
1711 , "hxmppc"
1712 , "hxournal"
1713 , "HXQ"
1714 , "hxt-binary"
1715 , "hxt-filter"
1716 , "hxthelper"
1717 , "hxweb"
1718 , "hybrid"
1719 , "hydra-hs"
1720 , "hydrogen-util"
1721 , "hyena"
1722 , "hylolib"
1723 , "hylotab"
1724 , "hyloutils"
1725 , "hyperdrive"
1726 , "hyperpublic"
1727 , "ideas"
1728 , "ideas-math"
1729 , "ide-backend"
1730 , "idiii"
1731 , "idna2008"
1732 , "IDynamic"
1733 , "ieee-utils"
1734 , "iException"
1735 , "ig"
1736 , "ige-mac-integration"
1737 , "igraph"
1738 , "ihaskell-magic"
1739 , "ihttp"
1740 , "illuminate"
1741 , "imagepaste"
1742 , "imbib"
1743 , "imgurder"
1744 , "imparse"
1745 , "ImperativeHaskell"
1746 , "implicit"
1747 , "INblobs"
1748 , "inch"
1749 , "increments"
1750 , "indices"
1751 , "infer-upstream"
1752 , "infinity"
1753 , "InfixApplicative"
1754 , "inflections"
1755 , "inflist"
1756 , "informative"
1757 , "instant-zipper"
1758 , "integer-pure"
1759 , "intel-aes"
1760 , "interleavableGen"
1761 , "interleavableIO"
1762 , "internetmarke"
1763 , "interpolatedstring-qq"
1764 , "interpolatedstring-qq-mwotton"
1765 , "intricacy"
1766 , "IOR"
1767 , "io-reactive"
1768 , "IORefCAS"
1769 , "ipatch"
1770 , "ipc"
1771 , "ipopt-hs"
1772 , "iptables-helpers"
1773 , "iptadmin"
1774 , "ircbouncer"
1775 , "IrrHaskell"
1776 , "ismtp"
1777 , "iteratee"
1778 , "iteratee-compress"
1779 , "iteratee-parsec"
1780 , "iteratee-stm"
1781 , "iterIO"
1782 , "iterio-server"
1783 , "iter-stats"
1784 , "ivar-simple"
1785 , "ivor"
1786 , "ivory"
1787 , "ivory-backend-c"
1788 , "ivory-bitdata"
1789 , "ivory-examples"
1790 , "ivory-hw"
1791 , "ivory-opts"
1792 , "ivory-quickcheck"
1793 , "ivory-stdlib"
1794 , "ixdopp"
1795 , "iyql"
1796 , "j2hs"
1797 , "jack-bindings"
1798 , "jackminimix"
1799 , "JackMiniMix"
1800 , "jalla"
1801 , "javasf"
1802 , "Javasf"
1803 , "javav"
1804 , "Javav"
1805 , "jespresso"
1806 , "jobqueue"
1807 , "join"
1808 , "jonathanscard"
1809 , "jort"
1810 , "jsaddle"
1811 , "jsaddle-hello"
1812 , "jsc"
1813 , "JsContracts"
1814 , "jsmw"
1815 , "json2"
1816 , "json2-hdbc"
1817 , "json-b"
1818 , "JSONb"
1819 , "JSON-Combinator"
1820 , "JSON-Combinator-Examples"
1821 , "json-tools"
1822 , "jspath"
1823 , "judy"
1824 , "JunkDB-driver-gdbm"
1825 , "kangaroo"
1826 , "kansas-lava"
1827 , "kansas-lava-cores"
1828 , "kansas-lava-papilio"
1829 , "kansas-lava-shake"
1830 , "keiretsu"
1831 , "Ketchup"
1832 , "kevin"
1833 , "kibro"
1834 , "kicad-data"
1835 , "kickass-torrents-dump-parser"
1836 , "KiCS"
1837 , "KiCS-debugger"
1838 , "KiCS-prophecy"
1839 , "kif-parser"
1840 , "kit"
1841 , "kmeans-par"
1842 , "knots"
1843 , "koellner-phonetic"
1844 , "Konf"
1845 , "korfu"
1846 , "kqueue"
1847 , "kure-your-boilerplate"
1848 , "KyotoCabinet"
1849 , "labeled-graph"
1850 , "labyrinth"
1851 , "labyrinth-server"
1852 , "lambdabot-utils"
1853 , "lambda-bridge"
1854 , "lambdacat"
1855 , "lambdacube"
1856 , "lambdacube-bullet"
1857 , "lambdacube-engine"
1858 , "lambdacube-examples"
1859 , "lambda-devs"
1860 , "lambdaFeed"
1861 , "LambdaPrettyQuote"
1862 , "LambdaShell"
1863 , "lambda-toolbox"
1864 , "lambdatwit"
1865 , "lambdiff"
1866 , "lame-tester"
1867 , "language-boogie"
1868 , "language-c-comments"
1869 , "language-eiffel"
1870 , "language-go"
1871 , "language-java-classfile"
1872 , "language-puppet"
1873 , "language-python-colour"
1874 , "language-sh"
1875 , "language-spelling"
1876 , "language-sqlite"
1877 , "Lastik"
1878 , "lat"
1879 , "latest-npm-version"
1880 , "layers"
1881 , "layers-game"
1882 , "layout"
1883 , "layout-bootstrap"
1884 , "lazyarray"
1885 , "l-bfgs-b"
1886 , "ldif"
1887 , "leaky"
1888 , "learn-physics-examples"
1889 , "leksah"
1890 , "Level0"
1891 , "leveldb-haskell-fork"
1892 , "levmar"
1893 , "levmar-chart"
1894 , "lgtk"
1895 , "LibClang"
1896 , "libcspm"
1897 , "libexpect"
1898 , "libGenI"
1899 , "libhbb"
1900 , "libjenkins"
1901 , "libltdl"
1902 , "liboleg"
1903 , "libpq"
1904 , "libssh2-conduit"
1905 , "libsystemd-daemon"
1906 , "libvirt-hs"
1907 , "libxml"
1908 , "libxslt"
1909 , "lifter"
1910 , "lighttpd-conf"
1911 , "lighttpd-conf-qq"
1912 , "limp"
1913 , "limp-cbc"
1914 , "linear-algebra-cblas"
1915 , "linear-maps"
1916 , "LinearSplit"
1917 , "LinkChecker"
1918 , "linkchk"
1919 , "linkcore"
1920 , "linux-blkid"
1921 , "linux-kmod"
1922 , "linux-ptrace"
1923 , "lio-eci11"
1924 , "lio-simple"
1925 , "listlike-instances"
1926 , "literals"
1927 , "live-sequencer"
1928 , "ll-picosat"
1929 , "llsd"
1930 , "llvm-analysis"
1931 , "llvm-data-interop"
1932 , "llvm-general"
1933 , "llvm-general-pure"
1934 , "llvm-general-quote"
1935 , "llvm-ht"
1936 , "llvm-tools"
1937 , "lmdb"
1938 , "loch"
1939 , "log-effect"
1940 , "logger"
1941 , "logic-classes"
1942 , "LogicGrowsOnTrees"
1943 , "LogicGrowsOnTrees-MPI"
1944 , "LogicGrowsOnTrees-network"
1945 , "LogicGrowsOnTrees-processes"
1946 , "lojban"
1947 , "loli"
1948 , "loopy"
1949 , "lord"
1950 , "loris"
1951 , "lostcities"
1952 , "lscabal"
1953 , "LslPlus"
1954 , "lsystem"
1955 , "luachunk"
1956 , "lucienne"
1957 , "Lucu"
1958 , "lui"
1959 , "luka"
1960 , "lvish"
1961 , "lye"
1962 , "mage"
1963 , "magic"
1964 , "MagicHaskeller"
1965 , "mahoro"
1966 , "mailchimp-subscribe"
1967 , "majordomo"
1968 , "manatee"
1969 , "manatee-anything"
1970 , "manatee-browser"
1971 , "manatee-core"
1972 , "manatee-curl"
1973 , "manatee-editor"
1974 , "manatee-filemanager"
1975 , "manatee-imageviewer"
1976 , "manatee-mplayer"
1977 , "manatee-pdfviewer"
1978 , "manatee-processmanager"
1979 , "manatee-reader"
1980 , "manatee-template"
1981 , "manatee-terminal"
1982 , "manatee-welcome"
1983 , "mandulia"
1984 , "mangopay"
1985 , "marionetta"
1986 , "markdown2svg"
1987 , "markdown-kate"
1988 , "markdown-pap"
1989 , "markov-processes"
1990 , "markup-preview"
1991 , "marxup"
1992 , "masakazu-bot"
1993 , "mathblog"
1994 , "mathlink"
1995 , "matlab"
1996 , "matsuri"
1997 , "maxent"
1998 , "maxsharing"
1999 , "maybench"
2000 , "MaybeT-monads-tf"
2001 , "mbox-tools"
2002 , "MC-Fold-DP"
2003 , "mcmc-samplers"
2004 , "Measure"
2005 , "mecab"
2006 , "mediawiki"
2007 , "mediawiki2latex"
2008 , "mega-sdist"
2009 , "melody"
2010 , "memo-sqlite"
2011 , "metadata"
2012 , "MetaObject"
2013 , "meta-par-accelerate"
2014 , "metaplug"
2015 , "metric"
2016 , "metrics"
2017 , "Metrics"
2018 , "metronome"
2019 , "Mhailist"
2020 , "midisurface"
2021 , "mighttpd"
2022 , "minesweeper"
2023 , "MiniAgda"
2024 , "miniball"
2025 , "minimung"
2026 , "miniplex"
2027 , "minirotate"
2028 , "ministg"
2029 , "mirror-tweet"
2030 , "MissingPy"
2031 , "missing-py2"
2032 , "mix-arrows"
2033 , "mkbndl"
2034 , "mlist"
2035 , "mmtl"
2036 , "mmtl-base"
2037 , "moan"
2038 , "modsplit"
2039 , "modular-prelude-classy"
2040 , "module-management"
2041 , "mohws"
2042 , "monad-abort-fd"
2043 , "monadacme"
2044 , "monad-bool"
2045 , "MonadCatchIO-mtl-foreign"
2046 , "MonadCatchIO-transformers-foreign"
2047 , "monad-exception"
2048 , "monadiccp"
2049 , "monadiccp-gecode"
2050 , "monad-interleave"
2051 , "MonadLab"
2052 , "monad-lrs"
2053 , "monad-open"
2054 , "monad-peel"
2055 , "monad-ran"
2056 , "monarch"
2057 , "Monaris"
2058 , "mongodb-queue"
2059 , "mongrel2-handler"
2060 , "Monocle"
2061 , "monoidplus"
2062 , "monte-carlo"
2063 , "moo"
2064 , "morfeusz"
2065 , "mount"
2066 , "mp3decoder"
2067 , "mpdmate"
2068 , "mprover"
2069 , "mps"
2070 , "mpvguihs"
2071 , "msgpack-idl"
2072 , "msgpack-rpc"
2073 , "mstate"
2074 , "mtgoxapi"
2075 , "mtl-tf"
2076 , "mtlx"
2077 , "mtp"
2078 , "mudbath"
2079 , "multifocal"
2080 , "multipass"
2081 , "multiplate-simplified"
2082 , "multirec-alt-deriver"
2083 , "multirec-binary"
2084 , "multisetrewrite"
2085 , "murder"
2086 , "musicbrainz-email"
2087 , "music-graphics"
2088 , "music-parts"
2089 , "music-pitch"
2090 , "music-preludes"
2091 , "music-sibelius"
2092 , "music-suite"
2093 , "musicxml"
2094 , "mutable-iter"
2095 , "mvclient"
2096 , "mybitcoin-sci"
2097 , "mysnapsession"
2098 , "mysnapsession-example"
2099 , "mysql-simple-typed"
2100 , "myTestlll"
2101 , "mzv"
2102 , "named-lock"
2103 , "nanoAgda"
2104 , "nano-cryptr"
2105 , "nanocurses"
2106 , "nano-hmac"
2107 , "nano-md5"
2108 , "narc"
2109 , "natural-number"
2110 , "nerf"
2111 , "nero"
2112 , "netcore"
2113 , "netlines"
2114 , "NetSNMP"
2115 , "netspec"
2116 , "nettle-frp"
2117 , "nettle-netkit"
2118 , "nettle-openflow"
2119 , "network-address"
2120 , "network-anonymous-i2p"
2121 , "network-builder"
2122 , "network-bytestring"
2123 , "network-connection"
2124 , "network-minihttp"
2125 , "Network-NineP"
2126 , "network-rpca"
2127 , "network-server"
2128 , "network-simple-sockaddr"
2129 , "network-simple-tls"
2130 , "network-topic-models"
2131 , "network-websocket"
2132 , "newports"
2133 , "newsynth"
2134 , "newt"
2135 , "NGrams"
2136 , "nibblestring"
2137 , "nikepub"
2138 , "Ninjas"
2139 , "nitro"
2140 , "nixos-types"
2141 , "nkjp"
2142 , "nm"
2143 , "nme"
2144 , "noise"
2145 , "Nomyx-Rules"
2146 , "NonEmptyList"
2147 , "NoSlow"
2148 , "not-gloss-examples"
2149 , "notmuch-haskell"
2150 , "notmuch-web"
2151 , "np-linear"
2152 , "nthable"
2153 , "null-canvas"
2154 , "numerals-base"
2155 , "numeric-qq"
2156 , "nums"
2157 , "Nussinov78"
2158 , "NXT"
2159 , "NXTDSL"
2160 , "oberon0"
2161 , "obj"
2162 , "ObjectIO"
2163 , "octopus"
2164 , "oculus"
2165 , "OGL"
2166 , "ohloh-hs"
2167 , "ois-input-manager"
2168 , "omaketex"
2169 , "Omega"
2170 , "omnicodec"
2171 , "on-a-horse"
2172 , "onu-course"
2173 , "OpenCL"
2174 , "OpenCLRaw"
2175 , "opencv-raw"
2176 , "openexchangerates"
2177 , "OpenGLCheck"
2178 , "opengles"
2179 , "openid"
2180 , "open-pandoc"
2181 , "openpgp-Crypto"
2182 , "openpgp-crypto-api"
2183 , "opentheory"
2184 , "opentheory-char"
2185 , "opentheory-parser"
2186 , "opentheory-prime"
2187 , "opentheory-primitive"
2188 , "open-union"
2189 , "OpenVG"
2190 , "OpenVGRaw"
2191 , "open-witness"
2192 , "Operads"
2193 , "optimusprime"
2194 , "orchestrate"
2195 , "orchid"
2196 , "orchid-demo"
2197 , "orgmode-parse"
2198 , "OSM"
2199 , "osm-download"
2200 , "ot"
2201 , "package-vt"
2202 , "packedstring"
2203 , "PageIO"
2204 , "panda"
2205 , "PandocAgda"
2206 , "pandoc-unlit"
2207 , "papillon"
2208 , "paragon"
2209 , "Paraiso"
2210 , "parameterized-data"
2211 , "parco"
2212 , "parco-attoparsec"
2213 , "parconc-examples"
2214 , "parco-parsec"
2215 , "parse-help"
2216 , "parsely"
2217 , "parser-helper"
2218 , "partial-lens"
2219 , "partly"
2220 , "pastis"
2221 , "pasty"
2222 , "Pathfinder"
2223 , "pathfindingcore"
2224 , "patterns"
2225 , "paypal-api"
2226 , "pb"
2227 , "pdynload"
2228 , "peakachu"
2229 , "pec"
2230 , "penny"
2231 , "penny-bin"
2232 , "penny-lib"
2233 , "peparser"
2234 , "perdure"
2235 , "PerfectHash"
2236 , "perm"
2237 , "permute"
2238 , "PermuteEffects"
2239 , "persistent-hssqlppp"
2240 , "persistent-map"
2241 , "persistent-protobuf"
2242 , "persistent-refs"
2243 , "persistent-vector"
2244 , "pesca"
2245 , "peyotls"
2246 , "pez"
2247 , "phasechange"
2248 , "phone-push"
2249 , "phooey"
2250 , "photoname"
2251 , "phraskell"
2252 , "phybin"
2253 , "pianola"
2254 , "pi-calculus"
2255 , "picologic"
2256 , "piet"
2257 , "piki"
2258 , "Pipe"
2259 , "pipes-cereal-plus"
2260 , "pipes-conduit"
2261 , "pipes-network-tls"
2262 , "pipes-p2p"
2263 , "pipes-p2p-examples"
2264 , "pisigma"
2265 , "pit"
2266 , "pkggraph"
2267 , "plailude"
2268 , "plivo"
2269 , "PlslTools"
2270 , "plugins-auto"
2271 , "png-file"
2272 , "pngload"
2273 , "pngload-fixed"
2274 , "pointless-lenses"
2275 , "pointless-rewrite"
2276 , "polh-lexicon"
2277 , "polyseq"
2278 , "polytypeable"
2279 , "polytypeable-utils"
2280 , "pontarius-mediaserver"
2281 , "pontarius-xmpp"
2282 , "pontarius-xpmn"
2283 , "pool"
2284 , "pool-conduit"
2285 , "popenhs"
2286 , "ports"
2287 , "positive"
2288 , "posix-acl"
2289 , "posix-pty"
2290 , "posix-waitpid"
2291 , "PostgreSQL"
2292 , "postgresql-simple-typed"
2293 , "postgresql-typed"
2294 , "postmaster"
2295 , "powermate"
2296 , "pqc"
2297 , "pqueue-mtl"
2298 , "practice-room"
2299 , "precis"
2300 , "prefork"
2301 , "press"
2302 , "primula-board"
2303 , "primula-bot"
2304 , "Printf-TH"
2305 , "PriorityChansConverger"
2306 , "priority-queue"
2307 , "ProbabilityMonads"
2308 , "process-iterio"
2309 , "process-leksah"
2310 , "process-progress"
2311 , "process-qq"
2312 , "procrastinating-structure"
2313 , "procrastinating-variable"
2314 , "procstat"
2315 , "prof2dot"
2316 , "profunctor-extras"
2317 , "progress"
2318 , "progressbar"
2319 , "progression"
2320 , "progressive"
2321 , "proj4-hs-bindings"
2322 , "prolog-graph"
2323 , "prolog-graph-lib"
2324 , "propane"
2325 , "Proper"
2326 , "proplang"
2327 , "protobuf-native"
2328 , "prove-everywhere-server"
2329 , "proxy-kindness"
2330 , "pub"
2331 , "publicsuffixlistcreate"
2332 , "pubsub"
2333 , "Pugs"
2334 , "pugs-compat"
2335 , "pugs-DrIFT"
2336 , "pugs-hsregex"
2337 , "pugs-HsSyck"
2338 , "pulse-simple"
2339 , "punkt"
2340 , "Pup-Events"
2341 , "Pup-Events-Demo"
2342 , "puppetresources"
2343 , "pushme"
2344 , "push-notify"
2345 , "push-notify-ccs"
2346 , "push-notify-general"
2347 , "putlenses"
2348 , "puzzle-draw"
2349 , "puzzle-draw-cmdline"
2350 , "pvd"
2351 , "qd"
2352 , "qd-vec"
2353 , "qhull-simple"
2354 , "qudb"
2355 , "querystring-pickle"
2356 , "queuelike"
2357 , "QuickAnnotate"
2358 , "QuickCheck-GenT"
2359 , "quickcheck-poly"
2360 , "quickcheck-regex"
2361 , "quickcheck-relaxng"
2362 , "quickcheck-rematch"
2363 , "quickset"
2364 , "quicktest"
2365 , "radium"
2366 , "radium-formula-parser"
2367 , "rail-compiler-editor"
2368 , "Raincat"
2369 , "rakhana"
2370 , "rallod"
2371 , "RandomDotOrg"
2372 , "random-eff"
2373 , "random-hypergeometric"
2374 , "random-stream"
2375 , "range"
2376 , "rangemin"
2377 , "range-space"
2378 , "Ranka"
2379 , "Rasenschach"
2380 , "raven-haskell-scotty"
2381 , "rbr"
2382 , "rdf4h"
2383 , "rdioh"
2384 , "reactive"
2385 , "reactive-bacon"
2386 , "reactive-balsa"
2387 , "reactive-banana-sdl"
2388 , "reactive-banana-threepenny"
2389 , "reactive-fieldtrip"
2390 , "reactive-glut"
2391 , "reactive-thread"
2392 , "reactor"
2393 , "really-simple-xml-parser"
2394 , "records-th"
2395 , "redHandlers"
2396 , "ref"
2397 , "Ref"
2398 , "refh"
2399 , "reflection-extras"
2400 , "reform-hsp"
2401 , "regex-deriv"
2402 , "regex-dfa"
2403 , "regex-genex"
2404 , "regex-parsec"
2405 , "regex-pderiv"
2406 , "regexp-tries"
2407 , "regexqq"
2408 , "regex-tre"
2409 , "regex-xmlschema"
2410 , "regional-pointers"
2411 , "regions"
2412 , "regions-monadsfd"
2413 , "regions-monadstf"
2414 , "regions-mtl"
2415 , "regular-extras"
2416 , "regular-web"
2417 , "reheat"
2418 , "reify"
2419 , "relational-postgresql8"
2420 , "relational-query"
2421 , "relational-query-HDBC"
2422 , "relational-record"
2423 , "relational-record-examples"
2424 , "relational-schemas"
2425 , "remotion"
2426 , "reorderable"
2427 , "repa-bytestring"
2428 , "repa-fftw"
2429 , "repa-plugin"
2430 , "repa-series"
2431 , "repa-v4l2"
2432 , "repl"
2433 , "repr"
2434 , "representable-functors"
2435 , "representable-profunctors"
2436 , "representable-tries"
2437 , "request-monad"
2438 , "resource-simple"
2439 , "respond"
2440 , "restful-snap"
2441 , "RESTng"
2442 , "restricted-workers"
2443 , "rethinkdb-client-driver"
2444 , "ReviewBoard"
2445 , "rewrite"
2446 , "rezoom"
2447 , "rfc3339"
2448 , "riot"
2449 , "ripple"
2450 , "ripple-federation"
2451 , "risc386"
2452 , "RJson"
2453 , "rmonad"
2454 , "RMP"
2455 , "RNAdesign"
2456 , "RNAFold"
2457 , "RNAFoldProgs"
2458 , "RNAwolf"
2459 , "rocksdb-haskell"
2460 , "roguestar-engine"
2461 , "roguestar-gl"
2462 , "roguestar-glut"
2463 , "RollingDirectory"
2464 , "rosa"
2465 , "roshask"
2466 , "rosso"
2467 , "rounding"
2468 , "roundtrip-xml"
2469 , "route-generator"
2470 , "route-planning"
2471 , "rowrecord"
2472 , "rpc"
2473 , "rpc-framework"
2474 , "rpm"
2475 , "rsagl"
2476 , "rsagl-frp"
2477 , "rsagl-math"
2478 , "rss2irc"
2479 , "rtlsdr"
2480 , "rubberband"
2481 , "ruler-core"
2482 , "rungekutta"
2483 , "safe-access"
2484 , "safe-freeze"
2485 , "safe-globals"
2486 , "safeint"
2487 , "safe-lazy-io"
2488 , "safe-plugins"
2489 , "safer-file-handles"
2490 , "safer-file-handles-bytestring"
2491 , "safer-file-handles-text"
2492 , "Salsa"
2493 , "salvia"
2494 , "salvia-demo"
2495 , "salvia-extras"
2496 , "salvia-protocol"
2497 , "salvia-sessions"
2498 , "salvia-websocket"
2499 , "samtools-iteratee"
2500 , "sasl"
2501 , "sat"
2502 , "satchmo-backends"
2503 , "satchmo-examples"
2504 , "satchmo-funsat"
2505 , "satchmo-minisat"
2506 , "sat-micro-hs"
2507 , "SBench"
2508 , "scan-vector-machine"
2509 , "scat"
2510 , "scenegraph"
2511 , "scgi"
2512 , "scion"
2513 , "scope"
2514 , "scope-cairo"
2515 , "scotty-blaze"
2516 , "scotty-fay"
2517 , "scrabble-bot"
2518 , "ScratchFs"
2519 , "scrz"
2520 , "Scurry"
2521 , "SDL"
2522 , "sdl2-image"
2523 , "sdl2-ttf"
2524 , "SDL2-ttf"
2525 , "SDL-gfx"
2526 , "SDL-image"
2527 , "SDL-mixer"
2528 , "SDL-mpeg"
2529 , "SDL-ttf"
2530 , "seacat"
2531 , "secdh"
2532 , "secret-santa"
2533 , "secret-sharing"
2534 , "secrm"
2535 , "sednaDBXML"
2536 , "selectors"
2537 , "selenium"
2538 , "selenium-server"
2539 , "selinux"
2540 , "Semantique"
2541 , "semigroupoid-extras"
2542 , "semigroups-actions"
2543 , "sensenet"
2544 , "sentry"
2545 , "senza"
2546 , "seqaid"
2547 , "seqloc-datafiles"
2548 , "serf"
2549 , "servant-pool"
2550 , "servant-postgresql"
2551 , "servant-scotty"
2552 , "servius"
2553 , "SessionLogger"
2554 , "sessions"
2555 , "sexpr"
2556 , "SFML"
2557 , "SFML-control"
2558 , "SFont"
2559 , "SG"
2560 , "SGdemo"
2561 , "sgf"
2562 , "shady-gen"
2563 , "shady-graphics"
2564 , "shake-extras"
2565 , "shaker"
2566 , "shakespeare-css"
2567 , "shakespeare-i18n"
2568 , "shapely-data"
2569 , "shared-buffer"
2570 , "she"
2571 , "Shellac-compatline"
2572 , "Shellac-editline"
2573 , "shell-pipe"
2574 , "shelly-extra"
2575 , "shivers-cfg"
2576 , "showdown"
2577 , "sifflet"
2578 , "sifflet-lib"
2579 , "signals"
2580 , "simd"
2581 , "simgi"
2582 , "simple"
2583 , "simple-bluetooth"
2584 , "simple-css"
2585 , "simple-c-value"
2586 , "simple-firewire"
2587 , "SimpleGL"
2588 , "SimpleH"
2589 , "simpleirc"
2590 , "simpleirc-lens"
2591 , "simple-log-syslog"
2592 , "simplenote"
2593 , "simple-postgresql-orm"
2594 , "simpleprelude"
2595 , "simple-session"
2596 , "simple-sessions"
2597 , "simplessh"
2598 , "simple-templates"
2599 , "simple-vec3"
2600 , "simseq"
2601 , "sindre"
2602 , "sirkel"
2603 , "skype4hs"
2604 , "smallarray"
2605 , "smallpt-hs"
2606 , "smallstring"
2607 , "smartGroup"
2608 , "smartword"
2609 , "Smooth"
2610 , "smt-lib"
2611 , "smtp2mta"
2612 , "snap-accept"
2613 , "snap-app"
2614 , "snap-elm"
2615 , "snap-extras"
2616 , "snaplet-actionlog"
2617 , "snaplet-auth-acid"
2618 , "snaplet-environments"
2619 , "snaplet-hdbc"
2620 , "snaplet-i18n"
2621 , "snaplet-mongoDB"
2622 , "snaplet-mongodb-minimalistic"
2623 , "snaplet-oauth"
2624 , "snaplet-redson"
2625 , "snaplet-rest"
2626 , "snaplet-sedna"
2627 , "snaplet-tasks"
2628 , "snappy-iteratee"
2629 , "snap-utils"
2630 , "sndfile-enumerators"
2631 , "SNet"
2632 , "snm"
2633 , "snow-white"
2634 , "Snusmumrik"
2635 , "SoccerFun"
2636 , "SoccerFunGL"
2637 , "sock2stream"
2638 , "socketio"
2639 , "sonic-visualiser"
2640 , "sorted"
2641 , "sound-collage"
2642 , "source-code-server"
2643 , "SourceGraph"
2644 , "sousit"
2645 , "soxlib"
2646 , "soyuz"
2647 , "SpacePrivateers"
2648 , "sparse"
2649 , "sparsebit"
2650 , "spata"
2651 , "special-functors"
2652 , "specialize-th"
2653 , "species"
2654 , "speculation-transformers"
2655 , "sphero"
2656 , "sphinx-cli"
2657 , "spike"
2658 , "splines"
2659 , "split-record"
2660 , "splitter"
2661 , "Spock-auth"
2662 , "spoonutil"
2663 , "Sprig"
2664 , "sqlite-simple-typed"
2665 , "sql-simple"
2666 , "sql-simple-mysql"
2667 , "sql-simple-pool"
2668 , "sql-simple-postgresql"
2669 , "sql-simple-sqlite"
2670 , "sql-words"
2671 , "squeeze"
2672 , "srcinst"
2673 , "ssh"
2674 , "sssp"
2675 , "sstable"
2676 , "stackage-curator"
2677 , "standalone-haddock"
2678 , "starrover2"
2679 , "statgrab"
2680 , "statistics-dirichlet"
2681 , "statistics-fusion"
2682 , "stb-truetype"
2683 , "stepwise"
2684 , "stm-chunked-queues"
2685 , "stmcontrol"
2686 , "stm-firehose"
2687 , "stm-io-hooks"
2688 , "Stomp"
2689 , "storable-static-array"
2690 , "storablevector"
2691 , "storablevector-carray"
2692 , "storablevector-streamfusion"
2693 , "Strafunski-Sdf2Haskell"
2694 , "StrappedTemplates"
2695 , "streamed"
2696 , "StrictBench"
2697 , "strict-concurrency"
2698 , "string"
2699 , "stringlike"
2700 , "stripe-haskell"
2701 , "structural-induction"
2702 , "structured-mongoDB"
2703 , "stunts"
2704 , "suitable"
2705 , "sunroof-compiler"
2706 , "sunroof-examples"
2707 , "sunroof-server"
2708 , "supercollider-midi"
2709 , "superdoc"
2710 , "supero"
2711 , "svg2q"
2712 , "SVG2Q"
2713 , "svm-simple"
2714 , "swagger"
2715 , "swapper"
2716 , "swf"
2717 , "syb-extras"
2718 , "sylvia"
2719 , "sym-plot"
2720 , "sync"
2721 , "synchronous-channels"
2722 , "SyntaxMacros"
2723 , "syntax-pretty"
2724 , "syntax-trees"
2725 , "synthesizer"
2726 , "synthesizer-alsa"
2727 , "synthesizer-core"
2728 , "synthesizer-dimensional"
2729 , "synthesizer-midi"
2730 , "Sysmon"
2731 , "system-lifted"
2732 , "system-random-effect"
2733 , "ta"
2734 , "tableaux"
2735 , "Tables"
2736 , "tablestorage"
2737 , "tabloid"
2738 , "tagged-list"
2739 , "tagged-th"
2740 , "tagsoup-ht"
2741 , "Takusen"
2742 , "takusen-oracle"
2743 , "tamarin-prover"
2744 , "tamarin-prover-term"
2745 , "tamarin-prover-theory"
2746 , "tamarin-prover-utils"
2747 , "target"
2748 , "task"
2749 , "tasty-integrate"
2750 , "TBC"
2751 , "TBit"
2752 , "tbox"
2753 , "tccli"
2754 , "tdd-util"
2755 , "TeaHS"
2756 , "teams"
2757 , "template-haskell_2_10_0_0"
2758 , "template-hsml"
2759 , "term-rewriting"
2760 , "terrahs"
2761 , "test-framework-doctest"
2762 , "testloop"
2763 , "testpattern"
2764 , "testPkg"
2765 , "testrunner"
2766 , "tetris"
2767 , "text-ldap"
2768 , "textmatetags"
2769 , "text-normal"
2770 , "textPlot"
2771 , "texts"
2772 , "text-show-instances"
2773 , "text-xml-generic"
2774 , "text-xml-qq"
2775 , "themoviedb"
2776 , "themplate"
2777 , "Theora"
2778 , "theoremquest-client"
2779 , "thimk"
2780 , "Thingie"
2781 , "th-instances"
2782 , "th-kinds"
2783 , "thrift"
2784 , "Thrift"
2785 , "throttle"
2786 , "tianbar"
2787 , "tic-tac-toe"
2788 , "tidal"
2789 , "tidal-vis"
2790 , "tiger"
2791 , "tighttp"
2792 , "timberc"
2793 , "time-extras"
2794 , "time-http"
2795 , "timeout"
2796 , "timeout-control"
2797 , "TimePiece"
2798 , "time-w3c"
2799 , "TinyURL"
2800 , "Titim"
2801 , "tkhs"
2802 , "tkyprof"
2803 , "tls-extra"
2804 , "to-haskell"
2805 , "toilet"
2806 , "toktok"
2807 , "tokyocabinet-haskell"
2808 , "topkata"
2809 , "torch"
2810 , "to-string-class"
2811 , "to-string-instances"
2812 , "Tournament"
2813 , "tracker"
2814 , "trajectory"
2815 , "transactional-events"
2816 , "transformers-convert"
2817 , "transformers-runnable"
2818 , "translate"
2819 , "traypoweroff"
2820 , "treemap-html-tools"
2821 , "treeviz"
2822 , "TrendGraph"
2823 , "trhsx"
2824 , "triangulation"
2825 , "TrieMap"
2826 , "tsession"
2827 , "tsession-happstack"
2828 , "tsp-viz"
2829 , "tuntap"
2830 , "tupleinstances"
2831 , "twentefp-rosetree"
2832 , "twhs"
2833 , "twidge"
2834 , "twilight-stm"
2835 , "twill"
2836 , "twiml"
2837 , "twine"
2838 , "twisty"
2839 , "twitch"
2840 , "twitter-conduit"
2841 , "twitter-enumerator"
2842 , "twitter-feed"
2843 , "twitter-types"
2844 , "twitter-types-lens"
2845 , "tx"
2846 , "TYB"
2847 , "typalyze"
2848 , "typeable-th"
2849 , "type-cereal"
2850 , "TypeClass"
2851 , "type-digits"
2852 , "typedquery"
2853 , "type-equality-check"
2854 , "typehash"
2855 , "TypeIlluminator"
2856 , "type-level"
2857 , "type-level-sets"
2858 , "typelevel-tensor"
2859 , "type-ord"
2860 , "type-ord-spine-cereal"
2861 , "typeparams"
2862 , "type-prelude"
2863 , "type-settheory"
2864 , "type-spine"
2865 , "type-structure"
2866 , "type-sub-th"
2867 , "uAgda"
2868 , "uconv"
2869 , "udev"
2870 , "uhttpc"
2871 , "UMM"
2872 , "unamb-custom"
2873 , "unbounded-delays-units"
2874 , "unboxed-containers"
2875 , "unfoldable"
2876 , "unicode-normalization"
2877 , "uniqueid"
2878 , "unique-logic-tf"
2879 , "unittyped"
2880 , "universe-th"
2881 , "unix-process-conduit"
2882 , "unlit"
2883 , "unordered-containers-rematch"
2884 , "unpack-funcs"
2885 , "unscramble"
2886 , "uploadcare"
2887 , "upskirt"
2888 , "ureader"
2889 , "urembed"
2890 , "uri-bytestring"
2891 , "uri-conduit"
2892 , "uri-enumerator"
2893 , "uri-enumerator-file"
2894 , "urlcheck"
2895 , "urldecode"
2896 , "UrlDisp"
2897 , "urldisp-happstack"
2898 , "urlencoded"
2899 , "URLT"
2900 , "urxml"
2901 , "usb-enumerator"
2902 , "usb-iteratee"
2903 , "usb-safe"
2904 , "uvector"
2905 , "uvector-algorithms"
2906 , "v4l2"
2907 , "v4l2-examples"
2908 , "vacuum-cairo"
2909 , "vacuum-opengl"
2910 , "validate"
2911 , "vampire"
2912 , "var"
2913 , "Vec-Boolean"
2914 , "Vec-OpenGLRaw"
2915 , "vector-bytestring"
2916 , "vector-conduit"
2917 , "vector-fftw"
2918 , "vector-functorlazy"
2919 , "vector-random"
2920 , "vector-read-instances"
2921 , "vector-static"
2922 , "Vec-Transform"
2923 , "verilog"
2924 , "vigilance"
2925 , "vintage-basic"
2926 , "vinyl-json"
2927 , "virthualenv"
2928 , "vision"
2929 , "visual-graphrewrite"
2930 , "visual-prof"
2931 , "VKHS"
2932 , "vowpal-utils"
2933 , "voyeur"
2934 , "vtegtk3"
2935 , "vty-examples"
2936 , "vty-menu"
2937 , "vty-ui-extras"
2938 , "wai-eventsource"
2939 , "wai-frontend-monadcgi"
2940 , "wai-graceful"
2941 , "wai-handler-devel"
2942 , "wai-handler-snap"
2943 , "wai-handler-webkit"
2944 , "wai-hastache"
2945 , "wai-hmac-auth"
2946 , "wai-lite"
2947 , "wai-logger-prefork"
2948 , "wai-middleware-cache"
2949 , "wai-middleware-cache-redis"
2950 , "wai-middleware-catch"
2951 , "wai-middleware-consul"
2952 , "wai-middleware-etag"
2953 , "wai-middleware-headers"
2954 , "wai-middleware-route"
2955 , "wai-routes"
2956 , "wai-session-tokyocabinet"
2957 , "wai-throttler"
2958 , "warp-dynamic"
2959 , "warp-tls-uid"
2960 , "WashNGo"
2961 , "wavesurfer"
2962 , "weather-api"
2963 , "WebBits-Html"
2964 , "WebBits-multiplate"
2965 , "web-browser-in-haskell"
2966 , "WebCont"
2967 , "webcrank"
2968 , "webdriver-snoy"
2969 , "webify"
2970 , "webkit"
2971 , "webkit-javascriptcore"
2972 , "web-mongrel2"
2973 , "Webrexp"
2974 , "web-routes-quasi"
2975 , "web-routes-transformers"
2976 , "websnap"
2977 , "webwire"
2978 , "weighted-regexp"
2979 , "welshy"
2980 , "Wheb"
2981 , "wheb-mongo"
2982 , "wheb-redis"
2983 , "wheb-strapped"
2984 , "WikimediaParser"
2985 , "wikipedia4epub"
2986 , "Win32"
2987 , "Win32-dhcp-server"
2988 , "Win32-errors"
2989 , "Win32-extras"
2990 , "Win32-junction-point"
2991 , "Win32-notify"
2992 , "Win32-security"
2993 , "Win32-services"
2994 , "Win32-services-wrapper"
2995 , "windowslive"
2996 , "winerror"
2997 , "winio"
2998 , "WL500gPControl"
2999 , "wl-pprint-terminfo"
3000 , "wobsurv"
3001 , "woffex"
3002 , "word24"
3003 , "wordcloud"
3004 , "wordsearch"
3005 , "wp-archivebot"
3006 , "wraxml"
3007 , "wright"
3008 , "wtk"
3009 , "wtk-gtk"
3010 , "wumpus-basic"
3011 , "wumpus-drawing"
3012 , "wumpus-microprint"
3013 , "wumpus-tree"
3014 , "WURFL"
3015 , "wxAsteroids"
3016 , "WXDiffCtrl"
3017 , "wxFruit"
3018 , "wxhnotepad"
3019 , "wxturtle"
3020 , "wyvern"
3021 , "X11-extras"
3022 , "X11-rm"
3023 , "X11-xdamage"
3024 , "X11-xfixes"
3025 , "x11-xinput"
3026 , "xchat-plugin"
3027 , "x-dsp"
3028 , "Xec"
3029 , "xfconf"
3030 , "xhaskell-library"
3031 , "xine"
3032 , "xing-api"
3033 , "XInput"
3034 , "xkbcommon"
3035 , "xkcd"
3036 , "xlsior"
3037 , "xlsx-templater"
3038 , "xml2json"
3039 , "xml2x"
3040 , "xml-catalog"
3041 , "xml-enumerator"
3042 , "xml-enumerator-combinators"
3043 , "XmlHtmlWriter"
3044 , "xml-parsec"
3045 , "xml-pipe"
3046 , "xml-prettify"
3047 , "xml-push"
3048 , "xmltv"
3049 , "XMMS"
3050 , "xmms2-client"
3051 , "xmms2-client-glib"
3052 , "xmonad-contrib-bluetilebranch"
3053 , "xmonad-eval"
3054 , "xmpipe"
3055 , "XMPP"
3056 , "xournal-convert"
3057 , "xournal-render"
3058 , "xsact"
3059 , "XSaiga"
3060 , "xslt"
3061 , "Yablog"
3062 , "YACPong"
3063 , "yahoo-web-search"
3064 , "yajl"
3065 , "yajl-enumerator"
3066 , "yaml2owl"
3067 , "YamlReference"
3068 , "yaml-rpc-scotty"
3069 , "yaml-rpc-snap"
3070 , "yampa-glfw"
3071 , "ycextra"
3072 , "yesod-auth-ldap"
3073 , "yesod-auth-pam"
3074 , "yesod-auth-smbclient"
3075 , "yesod-comments"
3076 , "yesod-continuations"
3077 , "yesod-datatables"
3078 , "yesod-dsl"
3079 , "yesod-eventsource"
3080 , "yesod-examples"
3081 , "yesod-goodies"
3082 , "yesod-mangopay"
3083 , "yesod-paginate"
3084 , "yesod-pagination"
3085 , "yesod-paginator"
3086 , "yesod-platform"
3087 , "yesod-pure"
3088 , "yesod-rst"
3089 , "yesod-s3"
3090 , "yesod-session-redis"
3091 , "yesod-static-angular"
3092 , "yesod-tableview"
3093 , "yesod-test-json"
3094 , "yesod-vend"
3095 , "yesod-worker"
3096 , "YFrob"
3097 , "yhccore"
3098 , "yi-gtk"
3099 , "yi-vty"
3100 , "yjftp"
3101 , "Yogurt"
3102 , "Yogurt-Standalone"
3103 , "yoko"
3104 , "york-lava"
3105 , "yql"
3106 , "yuuko"
3107 , "zasni-gerna"
3108 , "zendesk-api"
3109 , "zeno"
3110 , "zeromq3-conduit"
3111 , "zeromq3-haskell"
3112 , "zeromq-haskell"
3113 , "zeroth"
3114 , "ZMachine"
3115 , "zmcat"
3116 , "zmqat"
3117 , "zoneinfo"
3118 , "zoom"
3119 , "zoom-cache"
3120 , "zoom-cache-pcm"
3121 , "zoom-cache-sndfile"
3122 , "zsh-battery"
3123 , "Zwaluw"