diff --git a/Dockerfile b/Dockerfile index 3809dd6d..28187560 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:12.04 +FROM ubuntu:14.04 ENV HOME /home/stackage ENV LANG en_US.UTF-8 @@ -7,17 +7,17 @@ RUN mkdir /home/stackage -p RUN locale-gen en_US.UTF-8 RUN DEBIAN_FRONTEND=noninteractive apt-get update -RUN DEBIAN_FRONTEND=noninteractive apt-get install -y software-properties-common python-software-properties +RUN DEBIAN_FRONTEND=noninteractive apt-get install -y software-properties-common python-software-properties git RUN DEBIAN_FRONTEND=noninteractive add-apt-repository ppa:hvr/ghc -y ADD debian-bootstrap.sh /tmp/debian-bootstrap.sh RUN DEBIAN_FRONTEND=noninteractive bash /tmp/debian-bootstrap.sh RUN rm /tmp/debian-bootstrap.sh -RUN DEBIAN_FRONTEND=noninteractive apt-get install -y cabal-install-1.20 ghc-7.8.4 alex-3.1.3 happy-1.19.4 sudo +RUN DEBIAN_FRONTEND=noninteractive apt-get install -y cabal-install-1.20 ghc-7.8.4 ghc-7.8.4-htmldocs alex-3.1.3 happy-1.19.4 sudo ENV PATH /home/stackage/.cabal/bin:/usr/local/sbin:/usr/local/bin:/opt/ghc/7.8.4/bin:/opt/cabal/1.20/bin:/opt/alex/3.1.3/bin:/opt/happy/1.19.4/bin:/usr/sbin:/usr/bin:/sbin:/bin RUN cabal update -RUN cabal install hscolour cabal-install --constraint "Cabal < 1.22" && cp $HOME/.cabal/bin/* /usr/local/bin && rm -rf $HOME/.cabal $HOME/.ghc /tmp/stackage +RUN cabal install hscolour cabal-install && cp $HOME/.cabal/bin/* /usr/local/bin && rm -rf $HOME/.cabal $HOME/.ghc /tmp/stackage RUN wget https://s3.amazonaws.com/stackage-travis/stackage-curator/stackage-curator.bz2 && bunzip2 stackage-curator.bz2 && chmod +x stackage-curator && mv stackage-curator /usr/local/bin diff --git a/README.md b/README.md index f7048506..2cc5a0c4 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,11 @@ project information. In addition, we have the following repositories: * [stackage-curator](https://github.com/fpco/stackage-curator) [![Build Status](https://travis-ci.org/fpco/stackage-curator.svg?branch=master)](https://travis-ci.org/fpco/stackage-curator) * [stackage-types](https://github.com/fpco/stackage-types) [![Build Status](https://travis-ci.org/fpco/stackage-types.svg?branch=master)](https://travis-ci.org/fpco/stackage-types) * [lts-haskell](https://github.com/fpco/lts-haskell) +* [stackage-nightly](https://github.com/fpco/stackage-nightly) +* [stackage-cli](https://github.com/fpco/stackage-cli) [![Build Status](https://travis-ci.org/fpco/stackage-cli.svg?branch=master)](https://travis-ci.org/fpco/stackage-cli) +* [stackage-update](https://github.com/fpco/stackage-update) [![Build Status](https://travis-ci.org/fpco/stackage-update.svg?branch=master)](https://travis-ci.org/fpco/stackage-update) +* [stackage-upload](https://github.com/fpco/stackage-upload) [![Build Status](https://travis-ci.org/fpco/stackage-upload.svg?branch=master)](https://travis-ci.org/fpco/stackage-upload) +* [stackage-install](https://github.com/fpco/stackage-install) [![Build Status](https://travis-ci.org/fpco/stackage-install.svg?branch=master)](https://travis-ci.org/fpco/stackage-install) Get your package included ------------------------- diff --git a/automated/.gitignore b/automated/.gitignore new file mode 100644 index 00000000..8285928f --- /dev/null +++ b/automated/.gitignore @@ -0,0 +1,10 @@ +/auth-token +/bin/ +/gitconfig +/hackage-creds +/ssh-nightly/ +/ssh-lts/ +/nighlty/ +/lts-*/ +/stackage-curator/ +/stackage-update/ diff --git a/automated/build.sh b/automated/build.sh new file mode 100755 index 00000000..3d92d45d --- /dev/null +++ b/automated/build.sh @@ -0,0 +1,73 @@ +#!/usr/bin/env bash + +set -eux + +ROOT=$(cd $(dirname $0) ; pwd) +TARGET=$1 +TROOT=$ROOT/$(echo $TARGET | cut -d. -f 1) +PLAN_FILE=current-plan.yaml +BUNDLE_FILE=current.bundle + +CABAL_DIR=$ROOT/cabal +GHC_DIR=$ROOT/ghc +CURATOR_DIR=$ROOT/stackage-curator +UPDATE_DIR=$ROOT/stackage-update +WORKDIR=$TROOT/work +SSH_DIR=$ROOT/ssh-$(echo $TARGET | cut -d- -f 1) + +mkdir -p \ + "$CABAL_DIR" \ + "$GHC_DIR" \ + "$CURATOR_DIR" \ + "$UPDATE_DIR" \ + "$WORKDIR" \ + "$SSH_DIR" + +GITCONFIG=$ROOT/gitconfig +cat >$GITCONFIG <$SSH_DIR/known_hosts <": + - yesod-gitrev - basic-prelude - composition - io-memoize @@ -568,6 +575,15 @@ packages: - yesod-auth-hashdb "Toralf Wittner ": + - bytestring-conversion + - cql + - cql-io + - redis-resp + - redis-io + - swagger + - tinylog + - wai-predicates + - wai-routing - zeromq4-haskell "trupill@gmail.com": @@ -737,6 +753,12 @@ packages: - sdl2 "Leon Mergen leon@solatis.com @solatis": + - base58string + - bitcoin-block + - bitcoin-script + - bitcoin-tx + - bitcoin-types + - hexstring - network-attoparsec - network-anonymous-i2p @@ -762,6 +784,7 @@ packages: "Adam C. Foltzer acfoltzer@galois.com @acfoltzer": - cryptol - gitrev + - persistent-refs "Luke Taylor tekul.hs@gmail.com @tekul": - jose-jwt @@ -798,6 +821,7 @@ packages: - amazonka-kinesis - amazonka-kms - amazonka-lambda + - amazonka-ml - amazonka-opsworks - amazonka-rds - amazonka-redshift @@ -813,6 +837,7 @@ packages: - amazonka-sts - amazonka-support - amazonka-swf + - amazonka-workspaces - ede - pagerduty - semver @@ -863,19 +888,42 @@ packages: "Stefan Saasen ": - jwt + + "Sven Bartscher sven.bartscher@weltraumschlangen.de @kritzefitz": + - setlocale + + "Taylor Fausak @tfausak": + - flow + + "Marios Titas @redneb": + - btrfs + - disk-free-space + - hxt-css + - islink + - linux-file-extents + - linux-namespaces + + "Will Coster @fimad": + - scalpel + + "Smirnov Alexey @chemist": + - snmp + - agentx + + "David Raymond Christiansen @david-christiansen": + - annotated-wl-pprint "Stackage upper bounds": # GHC 7.8 uppdate bound - haddock-api < 2.16 - haddock-library < 1.2 - hdocs < 0.4.2 + - haskell-packages < 0.3 + - compdata < 0.10 # Force a specific version that's compatible with transformers 0.3 - transformers-compat == 0.4.0.3 - # https://github.com/fpco/stackage/issues/467 - - lens < 4.8 - # https://github.com/fpco/stackage/issues/476 - vector-space < 0.10 @@ -904,8 +952,14 @@ packages: # https://github.com/Happstack/happstack-server/issues/6 - happstack-server < 7.4.3 - # https://github.com/mgajda/json-autotype/issues/5 - - json-autotype < 0.4 + # https://github.com/fpco/stackage/issues/531 + - sbv < 4.3 + + # https://github.com/fpco/stackage/issues/537 + - zlib < 0.6 + + # https://github.com/fpco/stackage/issues/549 + - tttool < 1.4 # Package flags are applied to individual packages, and override the values of # global-flags @@ -976,6 +1030,13 @@ package-flags: cabal-debian: pretty-112: false + hledger: + old-locale: true + hledger-lib: + old-locale: true + hledger-web: + old-locale: true + # By skipping a test suite, we do not pull in the build dependencies skipped-tests: - ReadArgs # old version of hspec @@ -1211,6 +1272,8 @@ expected-test-failures: # Requires running server - consul-haskell + - hedis + - redis-io # Haddocks which are expected to fail. Same concept as expected test failures. expected-haddock-failures: @@ -1227,6 +1290,9 @@ expected-haddock-failures: # builds. Could consider special-casing this requirement. - gtk + # Not sure why, but it's a temporary package anyway + - Cabal-ide-backend + # Benchmarks which should not be built. Note that Stackage does *not* generally # build benchmarks. The difference here will be whether dependencies for these # benchmarks are included or not. diff --git a/debian-bootstrap.sh b/debian-bootstrap.sh index 2f158306..8064d9b3 100755 --- a/debian-bootstrap.sh +++ b/debian-bootstrap.sh @@ -10,9 +10,8 @@ # instructions, see: # http://www.stackage.org/install -add-apt-repository -y ppa:chris-lea/zeromq -add-apt-repository -y ppa:floe/libtisch add-apt-repository -y ppa:zoogie/sdl2-snapshots + apt-get update apt-get install -y \ build-essential \ @@ -21,7 +20,6 @@ apt-get install -y \ wget \ m4 \ texlive-full \ - libgmp3c2 \ libgmp3-dev \ zlib1g-dev \ libedit2 \ diff --git a/stackage/ChangeLog.md b/stackage/ChangeLog.md new file mode 100644 index 00000000..51676ad3 --- /dev/null +++ b/stackage/ChangeLog.md @@ -0,0 +1,5 @@ +## 0.7.0.0 + +* First release of this incarnation of the stackage package. Previously, this + package provided completely different functionality. That functionality has + since moved to stackage-curator. diff --git a/stackage/LICENSE b/stackage/LICENSE new file mode 100644 index 00000000..b08099d7 --- /dev/null +++ b/stackage/LICENSE @@ -0,0 +1,20 @@ +Copyright (c) 2015 FP Complete + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be included +in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/stackage/README.md b/stackage/README.md new file mode 100644 index 00000000..941a7319 --- /dev/null +++ b/stackage/README.md @@ -0,0 +1,2 @@ +This is a dummy wrapper package, forcing installation of other packages which +provide real functionality. diff --git a/stackage/Setup.hs b/stackage/Setup.hs new file mode 100644 index 00000000..9a994af6 --- /dev/null +++ b/stackage/Setup.hs @@ -0,0 +1,2 @@ +import Distribution.Simple +main = defaultMain diff --git a/stackage/Stackage/Dummy.hs b/stackage/Stackage/Dummy.hs new file mode 100644 index 00000000..e82e4a47 --- /dev/null +++ b/stackage/Stackage/Dummy.hs @@ -0,0 +1,3 @@ +-- | This module does absolutely nothing. It's present so that cabal can more +-- easily track whether the stackage package is installed. +module Stackage.Dummy () where diff --git a/stackage/stackage.cabal b/stackage/stackage.cabal new file mode 100644 index 00000000..ca16cdd8 --- /dev/null +++ b/stackage/stackage.cabal @@ -0,0 +1,25 @@ +name: stackage +version: 0.7.1.0 +synopsis: Dummy package forcing installation of other Stackage packages +homepage: https://www.stackage.org/ +license: MIT +license-file: LICENSE +author: Michael Snoyman +maintainer: michael@snoyman.com +category: Development +build-type: Simple +extra-source-files: README.md ChangeLog.md +cabal-version: >=1.10 + +library + exposed-modules: Stackage.Dummy + build-depends: base < 10 + , stackage-cli + , stackage-update + , stackage-upload + , stackage-install + default-language: Haskell2010 + +source-repository head + type: git + location: git://github.com/fpco/stackage.git