u&l;z      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyportable experimentalex8k.hibino@gmail.com Safe-Inferred>Monad type with build base directory and build configuration. Build configuration type Specify build dir Name of debian directory .Exclude directories to setup source directory (Type to specify build working directory (Type to specify base directory filepath Action type with trace flag Run  monad  bracket for  monad  bracket_ for  monad 1Command string trace print along with trace flag 0Output string trace print along with trace flag Put log stinrg with flush. (Use current directory as base directory *Use specified directory as base directory <Use relative path from base-dir as build workding directory .Use absolute path as build workding directory zFold build dir Default configuration  Lift from  monad into monad with  configuration. Run  configuration monad  bracket for  monad  bracket_ for  monad Get base directory in  monad Get build configuration in  monad Get build working directory in  monad {Show  is relative or absolute $|}~ z{  |}~ z{portable experimentalex8k.hibino@gmail.comNone Find .cabal file Parse .cabal file %Hackage name and version string from  Hackage name string from  Hackage version string from  -Call cabal library defaultMain like Setup.hs 1Cabal library defaultMain with sub-command clean !5Cabal library defaultMain with sub-command configure "1Cabal library defaultMain with sub-command sdist #1Cabal library defaultMain with sub-command build $3Cabal library defaultMain with sub-command install %4Cabal library defaultMain with sub-command register  !"#$%  !"#$%  "!#$% !"#$%portable experimentalex8k.hibino@gmail.com Safe-Inferred& Debian short name generate rule );Hackage name and version type with debian short name. e.g. src-ext. *Hackage version type +Make * ,Make * -!Extract hackage version numbers. .Make ) /Get package name of ) 0Get version of ) 1Get debian short name of ) 2 Generate )$ type from package name and version  using & 3/Make debian short name from package name using & 4!Package name string with version 5Package archive basename 6Package archive pathname 7,Debian library binary package names for GHC 8-Debian library document package name for GHC 9%Debian library package names for GHC &'()*+,-./012Rule flag to generate names Hackage name string Version of hackage Result hackage meta info 3Rule flag to generate name *Debian source name or Hackage name string 0Debian source package name and short name like (haskell-src-exts, src-exts) 456789&'()*+,-./0123456789*,+-)./012&('3456789&(')*+,-./0123456789portable experimentalex8k.hibino@gmail.com Safe-Inferred:'Debian source package type for Haskell ;.Debian source package type, name with version <Version type for Debian =*Make deebian version from hackage version > Version without debian revision ?Is debian-native or not @#Try to read debian package version AMake ; BSource package name of ; CDebian version of ; D Version without debian revision EIs debian-native or not F!Original source archive basename GDebian native archive basename HSource directory basename I Try to make * from ; JTry to generate ; from debian changelog string K) meta-info of : L#Debian source package meta-info of : M Generate :+ type from debian package name and version  using & N Generate :0 with hackage name and debian package meta-info (:;<=>?@ABCDEFGHIJ"dpkg-parsechangelog result string Source structure KLMHackage name string Version of hackage Debian revision String Result structure NHackage name string Debian package meta info Result :;<=>?@ABCDEFGHIJKLMN<=@>?;ABCDEFGHIJ:KLMN$:;<=>?@ABCDEFGHIJKLMNportable experimentalex8k.hibino@gmail.com Safe-Inferred)&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNportable experimentalex8k.hibino@gmail.com Safe-InferredOBuild mode, all or binary only U:Run command without shell and get standard output string. VRun command without shell WRun command with shell XChange directory action Y(Action to get current working directory ZCreate directory if missing [Rename directory action. e.g. renameDirectory from to \Rename file action. e.g. renameFile from to ]Confirm filepath using ls command ^ Unpack .tar.gz under directory. _$Unpack .tar.gz under archive place. `4Pack directory into .tar.gz under working directory aBPack directory into same location .tar.gz under working directory b%Run action under specified directory c Just call  cabal-debian command dCall  cabal-debian# command under specified directory eQuery debian package version f1Read debian changelog file and try to parse into ; gCall debuild6 under specified directory, with command line options h:Install packages under specified source package directory iBuild package using debuild under specified directory jClean and build package using debuild under specified directory kERemove ghc library packages under specified source package directory "OPQRSTUVWXYZ[\]^_`abcdefghijkOPQRSTUVWXYZ[\]^_`abcdefghijkXYZ[\]^_`acdefghOTSRQPijkbUVWOTSRQPUVWXYZ[\]^_`abcdefghijkportable experimentalex8k.hibino@gmail.comNonelRun Bulid# action under specified directory. mRun  action under base-directory. nRemove build-directory.  Take debian-directory name from  action context. o'Take original source archive name from  action context. p,Take debian native source archive name from  action context. qTake source directory from  action context. rNAction to copy debian directory from base-directory into specified directory. s9Setup source directory and original source archive under  build-directory using rsync. t>Setup native source directory and native source archive under  build-directory using rsync. u2Setup debian source directory and source archive. v9Setup original source directory and archive using Cabal. w0Setup source directory and archive using Cabal. xASetup source directory and archive using Cabal and cabal-debian. y2On the fly setup of source directory and archive. lmnopqrstuvwxylmnopqrstuvwxyopqlmnrstuvwxylmnopqrstuvwxyportable experimentalex8k.hibino@gmail.comNoneN  !"#$%OPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxy      !"#$%&'()*+,-./01234567&'89:%;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ 23@Adebian-build-0.4.0.0Debian.Package.Build.MonadDebian.Package.Build.CabalDebian.Package.Data.HackageDebian.Package.Data.SourceDebian.Package.Build.CommandDebian.Package.Build.SequenceDebian.Package.DataDebian.Package.BuildBuildConfigbuildDir debianDirNamesourceExcludesBuildDirBaseDirTracerunTrace bracketTrace bracketTrace_ traceCommandtraceOutputLogbaseDirCurrentbaseDirSpecifybuildDirRelativebuildDirAbsolute defaultConfig liftTracerunBuild bracketBuild bracketBuild_ askBaseDir askConfig askBuildDirfindDescriptionFileparsePackageDescriptionhackageLongName hackageNamehackageVersionsetupCmdclean configuresdistbuildinstallregisterNameRuleSimpleSuggestHackageHackageVersionmkHackageVersion'mkHackageVersionhackageVersionNumbers mkHackagedebianShortNamemkHackageDefaultdebianNamesFromSourceNamehackageArchiveNamehackageArchiveghcLibraryBinPackagesghcLibraryDocPackageghcLibraryPackagesHaskellPackageSource DebianVersionversionFromHackageVersion origVersion' isNative'readDebianVersionmkSource sourceNameversion origVersionisNativeorigArchiveNamenativeArchiveName sourceDirNamederiveHackageVersionparseChangeLoghackagepackagehaskellPackageDefaulthaskellPackageFromPackage BuildModeIndepDepSrcBinAll readProcess' rawSystem'system'chdirpwdcreateDirectoryIfMissingrenameDirectory renameFile confirmPath unpackInDirunpack packInDir' packInDirwithCurrentDir' cabalDebian' cabalDebianpackageVersiondpkgParseChangeLogdebuilddebi buildPackagerebuildremoveGhcLibrarywithCurrentDirwithBaseCurrentDirremoveBuildDir origArchive nativeArchive sourceDir copyDebianDirrsyncGenOrigSourcesrsyncGenNativeSourcesrsyncGenSourcescabalGenOrigSourcescabalGenSourcescabalAutogenSources genSources unBuildDir$fShowBuildDir unBaseDir readerBracket toBracket_traceIOtprintCabal-1.20.0.2Distribution.PackageDescriptionPackageDescription _testDotCabalsetupdefaultHackageSrcPrefixdistDir$fReadHackageVersion$fShowHackageVersionDebianNonNative DebianNative<$>pure<*>*><|>debianNativeVersiondebianNonNativeVersionlexWord returnParsedreturnParsedVersionreturnParsedNMUparseDebianVersion readMaybe'$fReadDebianVersion$fShowDebianVersion splitCommand handleExit renameMsgrundebuild'debianDirName' getBaseDir getBuildDir withBuildDirrsyncGenOrigSourceDircabalGenArchivecabalGenOrigArchivecabalAutogenDebianDirfindDebianChangeLogfindCabalDescription