packages feed

b9-0.5.35: b9.cabal

name:                b9
version:             0.5.35

synopsis:            A tool and library for building virtual machine images.

description:         Build virtual machine images for vm-deployments; resize,
                     un-partition, create from scratch or convert disk image
                     files in a variety of formats; assemble and generate all
                     associated files from templates and regular files.


                     VM images can further be modifed through scripts, which are
                     executed in LXC containers into which the vm-images as well
                     as arbitrary directories from the host are mounted.


                     All assembled files can also be accessed by vm build
                     scripts through a special directory mounted in the build
                     container, and/or can be written to directories, ISO- or
                     VFAT-images.


                     The ISO/VFAT images that B9 creates are compatible to
                     'cloud-init's 'NoCloud' data source;


                     B9 is also very well suited for compiling in a
                     containerized environment. For these applications, the
                     images can be marked as 'Transient' to indicate no further
                     interest in the VM-image itself, and B9 will discard them
                     after the build.


                     B9 will never over-write source files, not even large
                     vm-image files - there is no intended way to modify a
                     source vm-image file 'in-place'.


                     B9 operates in random build directories, which are
                     discarded when the build exists.

license:             MIT
license-file:        LICENSE
author:              Sven Heyll <svh@posteo.de>
maintainer:          svh@posteo.de
homepage:            https://github.com/sheyll/b9-vm-image-builder
bug-reports:         https://github.com/sheyll/b9-vm-image-builder/issues
copyright:           2015, 2016, 2017 Sven Heyll <svh@posteo.de>
category:            Development
build-type:          Simple
extra-source-files:  README.md
                   , build_and_test.sh
                   , build_haddock.sh
                   , LICENSE
                   , TODO.org
                   , Setup.hs
                   , b9.cabal
                   , .gitignore
                   , prepare_release.sh
                   , stack.yaml
                   , stack-lts-5.14.yaml
                   , .travis.yml
                   , CONTRIBUTORS
cabal-version:       >=1.22

source-repository head
  type:                 git
  location:             git://github.com/sheyll/b9-vm-image-builder.git

library
  exposed-modules:   B9
                   , B9.B9Monad
                   , B9.B9Config
                   , B9.Builder
                   , B9.ConfigUtils
                   , B9.ExecEnv
                   , B9.DiskImages
                   , B9.DiskImageBuilder
                   , B9.ShellScript
                   , B9.PartitionTable
                   , B9.MBR
                   , B9.LibVirtLXC
                   , B9.Repository
                   , B9.RepositoryIO
                   , B9.ArtifactGenerator
                   , B9.ArtifactGeneratorImpl
                   , B9.Vm
                   , B9.VmBuilder
                   , B9.Content.ErlTerms
                   , B9.Content.ErlangPropList
                   , B9.Content.YamlObject
                   , B9.Content.AST
                   , B9.Content.Generator
                   , B9.Content.StringTemplate
                   , B9.QCUtil
                   , B9.DSL
  other-modules:   Paths_b9
  -- other-extensions:
  build-depends:     ConfigFile >= 1.1
                   , QuickCheck >= 2.5
                   , aeson >= 1.0
                   , async >= 2.1
                   , base >= 4.8 && < 5
                   , binary >= 0.8.3
                   , bytestring >= 0.10.8
                   , conduit >= 1.2
                   , conduit-extra >= 1.1
                   , directory >= 1.3
                   , filepath >= 1.4
                   , hashable >= 1.2
                   , mtl >= 2.2
                   , time >= 1.6
                   , parallel >= 3.2
                   , parsec >= 3.1
                   , pretty-show >= 1.6
                   , pretty >= 1.1
                   , process >= 1.4
                   , random >= 1.1
                   , semigroups >= 0.18
                   , syb >= 0.6
                   , template >= 0.2
                   , text >= 1.2
                   , transformers >= 0.5
                   , unordered-containers >= 0.2.8
                   , vector >= 0.11
                   , yaml >= 0.8
                   , bifunctors >= 5.4
                   , free >= 4.12
                   , boxes >= 0.1.4
  default-extensions: TupleSections
                    , GeneralizedNewtypeDeriving
                    , DeriveDataTypeable
                    , DeriveGeneric
                    , RankNTypes
                    , FlexibleContexts
                    , GADTs
                    , DataKinds
                    , KindSignatures
                    , TypeFamilies
                    , DeriveFunctor
                    , TemplateHaskell
                    , StandaloneDeriving
                    , CPP
  hs-source-dirs:    src/lib
  default-language:  Haskell2010
  ghc-options:       -Wall
                     -fwarn-unused-binds -fno-warn-unused-do-bind
  if impl(ghc >= 7.8.2) && impl(ghc <= 7.10)
     ghc-options: -fno-warn-amp

executable b9c
  main-is:           Main.hs
  -- other-modules:
  -- other-extensions:
  build-depends:     b9
                   , base >= 4.8 && < 5
                   , directory >= 1.3
                   , bytestring >= 0.10
                   , optparse-applicative >= 0.13
  hs-source-dirs:    src/cli
  default-language:  Haskell2010
  default-extensions: TupleSections
                    , GeneralizedNewtypeDeriving
                    , DeriveDataTypeable
                    , RankNTypes
                    , FlexibleContexts
                    , GADTs
                    , DataKinds
                    , KindSignatures
                    , TypeFamilies
                    , DeriveFunctor
                    , TemplateHaskell
                    , CPP
  ghc-options:       -threaded -with-rtsopts=-N -Wall
                     -fwarn-unused-binds -fno-warn-unused-do-bind
  if impl(ghc >= 7.8.2) && impl(ghc <= 7.10)
     ghc-options: -fno-warn-amp

test-suite spec
  type:              exitcode-stdio-1.0
  ghc-options:       -Wall
  hs-source-dirs:    src/tests
  default-language:  Haskell2010
  main-is:           Spec.hs
  other-modules:     B9.Content.ErlTermsSpec
                   , B9.Content.ErlangPropListSpec
                   , B9.Content.YamlObjectSpec
                   , B9.ArtifactGeneratorImplSpec
                   , B9.DiskImagesSpec
  build-depends:     base >= 4.8 && < 5
                   , b9
                   , hspec 
                   , hspec-expectations
                   , QuickCheck >= 2.5
                   , aeson >= 1.0
                   , yaml >= 0.8
                   , vector >= 0.11
                   , unordered-containers >= 0.2
                   , bytestring >= 0.10
                   , text >= 1.2
                   , semigroups
  default-extensions: TupleSections
                    , GeneralizedNewtypeDeriving
                    , DeriveDataTypeable
                    , RankNTypes
                    , FlexibleContexts
                    , GADTs
                    , DataKinds
                    , KindSignatures
                    , TypeFamilies
                    , DeriveFunctor
                    , TemplateHaskell
                    , CPP
  if impl(ghc >= 7.8.2) && impl(ghc <= 7.10)
     ghc-options: -fno-warn-amp -fno-warn-unused-do-bind