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