hH      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUV W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  Safe  None A variant of G that adds the SHA256 digest of the original Cabal file to the parsed . That hash is required to build packages with an "edited" cabal file, because Nix needs to download the edited file and patch it into the original tarball.w      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'(None)*)*None'Map Cabal names to Nix attribute names.Map libraries to Nix packages.WTODO: This list should not be hard-coded here; it belongs into the Nixpkgs repository.,Map build tool names to Nix attribute names.SafeNone/51+  !"#$%&'()*+,-./0123451+  !"#$%&'()*+,-./012345None678678678678None!"59;;Target compiler. Used by finalizePackageDescription/ to choose appropriate flags and dependencies.<6Compiler core packages that are also found on Hackage.=SThese packages replace the latest respective version during dependency resolution.>bThese packages are added to the generated set, but the play no role during dependency resolution.?We know that these packages won't build, so we give them an empty meta.hydraPlatforms attribute to avoid cluttering our Hydra output with lots of failure messages.@ This information is used by the  hackage2nix utility to determine the  maintainers for a given Haskell package.9:;<=>?@,ABCDEFG 9:;<=>?@AB 9:;<=>?@AB 9:;<=>?@,ABCDEFGNone59;<=J-./01NOPQRSTUJNOPQRJNOPQR J-./01NOPQRSTU None!"5T VrA source for a derivation. It always needs a hash and also has a protocol attached to it (url, git, svn, ...). A DerivationSourceK also always has it's revision fully resolved (not relative revisions like master, HEAD, etc).XVThe kind of the source. The name of the build-support fetch derivation should be fetch kind.YURL to fetch from.ZFRevision to use. Leave empty if the fetcher doesn't support revisions.[The hash of the source.`SA source is a location from which we can fetch, such as a HTTP URL, a GIT URL, ....bURL to fetch from.cpRevision to use. For protocols where this doesn't make sense (such as HTTP), this should be the empty string.d.The expected hash of the source, if available.fAFetch a source, trying any of the various nix-prefetch-* scripts.gLike f,, but allows to specify which script to use.VWXYZ[\]^_`abcd23efOThis function is passed the output path name as an argument. It should return 4 if the file doesn't match the expected format. This is required, because we cannot always check if a download succeeded otherwise.The source to fetch from.hThe derivation source and the result of the processing function. Returns Nothing if the download failed.g5hijkVWXYZ[\]^_`abcdefg`abcd\]^_VWXYZ[efg VWXYZ[\]^_`abcd23efg5hijk None !"59;<=xyA represtation of Nix expressions for building Haskell packages. The data type correspond closely to the definition of PackageDescription from Cabal.5x6789:;<=>?@ABCDEFGHIJKLMy}~xy}~xy~}x6789:;<=>?@ABCDEFGHIJKLMy}~None JNOPQRxy}~ NoneWhen a flag is specified multiple times, the first occurrence counts. This is counter-intuitive, IMHO, but it's how cabal does it. Flag names are spelled in all lowercase.]normalizeCabalFlags [(FlagName "foo", True), (FlagName "FOO", True), (FlagName "Foo", False)][(FlagName "foo",True)]NOPQNOPQ NoneRSTUVWXYZ[\]^_`abcdefghijklmnRSTUVWXYZ[\]^_`abcdefghijklmn None!"ooNonepqrstuvwx pqrstuvwxy !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJJKLMNOPQRSTUVWXYZ[\]^_`ab@cd e e f g h i j k l m n n o p q r s t u v w x y z { | } ~           !!"#$%%&'()*+,-./01223456789:;<ZZ=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[[\]^_`abcdefghijklmnopqrstuvwxyz{|}}~w      !"#$%&'()*+,-Z./01 2 345 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o pqrstuvwxyz&cabal2nix-2.0.2-9A0gogXWJ6RFyFnVWZoKpa$Distribution.Nixpkgs.Haskell.Hackage,Distribution.Nixpkgs.Haskell.FromCabal.Flags+Distribution.Nixpkgs.Haskell.FromCabal.Name.Distribution.Nixpkgs.Haskell.FromCabal.License,Distribution.Nixpkgs.Haskell.OrphanInstances'Distribution.Nixpkgs.Haskell.Constraint4Distribution.Nixpkgs.Haskell.FromCabal.Configuration&Distribution.Nixpkgs.Haskell.BuildInfoDistribution.Nixpkgs.Fetch'Distribution.Nixpkgs.Haskell.Derivation0Distribution.Nixpkgs.Haskell.FromCabal.Normalize2Distribution.Nixpkgs.Haskell.FromCabal.PostProcess&Distribution.Nixpkgs.Haskell.FromCabal.Distribution.Nixpkgs.Haskell.PackageSourceSpecPaths_cabal2nixDistribution.Nixpkgs.HaskellreadHashedHackageconfigureCabalFlags toNixName libNixNamebuildToolNixNamefromCabalLicense$fFromJSONCompilerInfo$fFromJSONDependency$fFromJSONPackageIdentifier$fFromJSONPackageName$fFromJSONPlatform$fIsStringPlatform$fIsStringCompilerId$fIsStringDependency$fIsStringPackageIdentifier$fIsStringVersion$fIsStringPackageName$fNFDataAbiTag$fNFDataCompilerId$fNFDataCompilerInfo$fNFDataPlatform$fNFDataCondition$fNFDataVersionRange$fNFDataTestType$fNFDataTestSuiteInterface$fNFDataTestSuite$fNFDataSourceRepo$fNFDataRepoType$fNFDataRepoKind$fNFDataPackageDescription $fNFDataOS$fNFDataModuleRenaming$fNFDataModuleReexport$fNFDataModuleName$fNFDataLicense$fNFDataLibrary$fNFDataLanguage$fNFDataKnownExtension!$fNFDataGenericPackageDescription$fNFDataFlagName $fNFDataFlag$fNFDataExtension$fNFDataExecutable$fNFDataDependency$fNFDataConfVar$fNFDataCompilerFlavor$fNFDataBuildType$fNFDataBuildInfo$fNFDataBenchmarkType$fNFDataBenchmarkInterface$fNFDataBenchmark $fNFDataArch$fNFDataCondTree$fNFDataSetupBuildInfo ConstraintsatisfiesConstraintsatisfiesConstraints Configuration compilerInfo corePackagesdefaultPackageOverrides extraPackagesdontDistributePackagespackageMaintainersreadConfigurationassertConsistency $fFromJSONMap$fFromJSONMap0$fFromJSONIdentifier$fFromJSONConfiguration$fNFDataConfiguration$fShowConfiguration$fGenericConfiguration BuildInfo$fShowBuildInfo $fEqBuildInfo$fGenericBuildInfohaskell pkgconfigsystemtoolpPrintBuildInfo$fMonoidBuildInfo$fEachBuildInfoBuildInfoSetSetDerivationSource derivKindderivUrl derivRevision derivHashHashCertainGuess UnknownHashSource sourceUrlsourceRevision sourceHashfromDerivationSourcefetch fetchWith$fFromJSONDerivationSource$fNFDataDerivationSource $fNFDataHash$fNFDataSource $fShowHash$fEqHash $fOrdHash $fGenericHash $fShowSource $fEqSource $fOrdSource$fGenericSource$fShowDerivationSource$fEqDerivationSource$fOrdDerivationSource$fGenericDerivationSource DerivationnullDerivation$fShowDerivation$fEqDerivation$fGenericDerivation cabalFlagsconfigureFlagsdoCheckeditedCabalFileenableExecutableProfilingenableLibraryProfilingenableSplitObjsexecutableDependsextraFunctionArgshyperlinkSource isExecutable isLibrary jailbreaklibraryDepends metaSectionphaseOverridespkgidrevision runHaddock setupDependssrc testDepends testTarget dependencies$fPrettyDerivation$fNFDataDerivation$fPackageDerivation normalizenormalizeCabalFlags postProcessNixpkgsResolverHaskellResolverfromGenericPackageDescriptionfromPackageDescriptionPackage pkgSourcepkgCabal getPackagesourceFromHackage $fShowPackagecatchIOversionbindirlibdirdatadir libexecdir sysconfdir getBinDir getLibDir getDataDir getLibexecDir getSysconfDirgetDataFileName&hackage-db-1.22-KVoENN9tEHUFhDagMfERl9Distribution.Hackage.DB.Parsed readHackageCabal-1.24.0.0Distribution.PackageDescriptionGenericPackageDescriptioncOrcAndcNotupdatePackageDescriptionknownRepoTypeshcSharedOptions hcProfOptions hcOptionsemptyHookedBuildInfousedExtensions allExtensions allLanguages allBuildInfoemptyBuildInfo benchmarkTypeknownBenchmarkTypesbenchmarkModules withBenchmarkenabledBenchmarks hasBenchmarksemptyBenchmarktestTypeknownTestTypes testModuleswithTest enabledTestshasTestsemptyTestSuite exeModuleswithExehasExesemptyExecutable libModuleswithLibhasLibs emptyLibrarylookupRenamingdefaultRenamingknownBuildTypesemptyPackageDescriptiondescCabalVersion specVersionPackageDescriptionpackagelicense licenseFiles copyright maintainerauthor stability testedWithhomepagepkgUrl bugReports sourceRepossynopsis descriptioncategorycustomFieldsPD buildDependsspecVersionRaw buildTypesetupBuildInfolibrary executables testSuites benchmarks dataFilesdataDir extraSrcFiles extraTmpFiles extraDocFiles BuildTypeSimple ConfigureMakeCustomUnknownBuildTypeSetupBuildInfodefaultSetupDependsModuleRenamingLibraryexposedModulesreexportedModulesrequiredSignaturesexposedSignatures libExposed libBuildInfoModuleReexportmoduleReexportOriginalPackagemoduleReexportOriginalNamemoduleReexportName ExecutableexeName modulePath buildInfo TestSuitetestName testInterface testBuildInfo testEnabledTestSuiteInterfaceTestSuiteExeV10TestSuiteLibV09TestSuiteUnsupportedTestType TestTypeExe TestTypeLibTestTypeUnknown Benchmark benchmarkNamebenchmarkInterfacebenchmarkBuildInfobenchmarkEnabledBenchmarkInterfaceBenchmarkExeV10BenchmarkUnsupported BenchmarkTypeBenchmarkTypeExeBenchmarkTypeUnknownoptions buildable buildTools cppOptions ccOptions ldOptionspkgconfigDepends frameworksextraFrameworkDirscSources jsSources hsSourceDirs otherModulesdefaultLanguageotherLanguagesdefaultExtensionsotherExtensions oldExtensions extraLibs extraGHCiLibs extraLibDirs includeDirsincludesinstallIncludes profOptions sharedOptionscustomFieldsBItargetBuildDependstargetBuildRenamingHookedBuildInfo SourceReporepoKindrepoType repoLocation repoModule repoBranchrepoTag repoSubdirRepoKindRepoHeadRepoThisRepoKindUnknownRepoTypeDarcsGitSVNCVS MercurialGnuArchBazaarMonotone OtherRepoTypepackageDescriptiongenPackageFlags condLibrarycondExecutablescondTestSuitescondBenchmarksFlagMkFlagflagNameflagDescription flagDefault flagManualFlagNameFlagAssignmentConfVarArchOSImpl ConditionVarLitCNotCOrCAndCondTreeCondNode condTreeDatacondTreeConstraintscondTreeComponentsDistribution.PackageinstalledPackageIdpackageVersion packageNamesimplifyDependencynotThisPackageVersionthisPackageVersionmkLegacyUnitIdmkUnitIdgetHSLibraryName PackageName unPackageName PackageIdPackageIdentifierpkgName pkgVersion ComponentIdInstalledPackageIdUnitId SimpleUnitId Dependency packageId HasUnitIdinstalledUnitIdPackageInstalledinstalledDependsAbiHashbase Data.VersionVersion versionTags versionBranchcontainers-0.5.7.1 Data.Map.BaseMap makeVersion parseVersion showVersionData.Map foldWithKeyfoldinsertLookupWithKey'insertWithKey' insertWith' splitRootvalid showTreeWithshowTree deleteFindMax deleteFindMin splitLookupsplitfromDistinctAscListfromAscListWithKeyfromAscListWith fromAscList toDescList toAscListtoListfromListWithKey fromListWithfromListfromSetkeysSetassocskeyselemsfoldMapWithKey foldlWithKey' foldlWithKey foldrWithKey' foldrWithKeyfoldl'foldlfoldr'foldrmapKeysMonotonic mapKeysWithmapKeysmapAccumRWithKeymapAccumWithKeymapAccumtraverseWithKey mapWithKeymapmapEitherWithKey mapEithermapMaybeWithKeymapMaybepartitionWithKey partition filterWithKeyfilterisProperSubmapOfByisProperSubmapOf isSubmapOfBy isSubmapOf mergeWithKeyintersectionWithKeyintersectionWith intersectiondifferenceWithKeydifferenceWith difference unionWithKey unionWithunion unionsWithunionsmaxViewminViewmaxViewWithKeyminViewWithKeyupdateMaxWithKeyupdateMinWithKey updateMax updateMin deleteMax deleteMinfindMaxfindMindeleteAtupdateAtelemAt lookupIndex findIndexalterupdateLookupWithKey updateWithKeyupdate adjustWithKeyadjustdeleteinsertLookupWithKey insertWithKey insertWithinsert singletonemptylookupGElookupLElookupGTlookupLTfindWithDefault notMembermemberlookupsizenull\\! parseHackage readHackage'HackageDistribution.Hackage.DB.Path hackagePathenabledisable text2isStringparseKey_haskell _pkgconfig_system_tool isUnknown hashToListGHC.BaseNothing stripPrefix MkDerivation_pkgid _revision_src _isLibrary _isExecutable_extraFunctionArgs _setupDepends_libraryDepends_executableDepends _testDepends_configureFlags _cabalFlags _runHaddock _jailbreak_doCheck _testTarget_hyperlinkSource_enableLibraryProfiling_enableExecutableProfiling_enableSplitObjs_phaseOverrides_editedCabalFile _metaSectionnormalizeBuildInfo normalizeMetanormalizeSynopsisquote fixGtkBuildshookspkgpkgsbindreplacegtk3Hook haddockHook gitAnnexHookhfusePreConfiguregfPhaseOverrideswxcHookcabalInstallPostInstalldarcsInstallPostInstallxmonadPostInstallagdaPostInstallagda25PostInstallstackOverridesexportGirSearchPathgiPhaseOverridesgiGdkPhaseOverridesgstLibOverridesgstLibAudioOverridesgiGdkPixBufPhaseOverridesgiGtkPhaseOverridesgiJavascriptCorePhaseOverridesgiCairoPhaseOverridesgiWebkit2PhaseOverrideshfseventsOverridesbindNull fetchOrFromDBfromDB readFileMay hashCachePathshowPackageIdentifier cabalFromPathcabalFromDirectoryhandleIO cabalFromFile