git.iko.soy/typeable/cabal2nix
on 06cc00a help sign in
.travis.yml+81−137
since splitsnapshots
unifiedsplit
@@ -1,161 +1,105 @@
1# This Travis job script has been generated by a script via
1# This Travis job script has been generated by a script via
2#
2#
3−# haskell-ci '--installed=+all -Cabal' '--hlint' '--doctest' '--doctest-options=-i ../dist-newstyle/build/*/*/cabal2nix-*/build/autogen' '-o' '.travis.yml' 'cabal2nix.cabal' '--head-hackage' '--head-hackage-jobs' '> 8.8'
3+# runghc make_travis_yml_2.hs '--no-installed' '--doctest' '--doctest-options=-i ../dist-newstyle/build/*/*/cabal2nix-*/build/autogen' '--hlint' '-o' '.travis.yml' 'cabal2nix.cabal'
4#
4#
5−# For more information, see https://github.com/haskell-CI/haskell-ci
5+# For more information, see https://github.com/hvr/multi-ghc-travis
6#
6#
7−# version: 0.9.20200306
8−#
9−version: ~> 1.0
10language: c
7language: c
11−os: linux
8+sudo: false
12−dist: xenial
9+
13git:
10git:
14− # whether to recursively clone submodules
11+ submodules: false # whether to recursively clone submodules
15− submodules: false
12+
16cache:
13cache:
17 directories:
14 directories:
18 - $HOME/.cabal/packages
15 - $HOME/.cabal/packages
19 - $HOME/.cabal/store
16 - $HOME/.cabal/store
20− - $HOME/.hlint
17+
21before_cache:
18before_cache:
22− - rm -fv $CABALHOME/packages/hackage.haskell.org/build-reports.log
19+ - rm -fv $HOME/.cabal/packages/hackage.haskell.org/build-reports.log
23 # remove files that are regenerated by 'cabal update'
20 # remove files that are regenerated by 'cabal update'
24− - rm -fv $CABALHOME/packages/hackage.haskell.org/00-index.*
21+ - rm -fv $HOME/.cabal/packages/hackage.haskell.org/00-index.*
25− - rm -fv $CABALHOME/packages/hackage.haskell.org/*.json
22+ - rm -fv $HOME/.cabal/packages/hackage.haskell.org/*.json
26− - rm -fv $CABALHOME/packages/hackage.haskell.org/01-index.cache
23+ - rm -fv $HOME/.cabal/packages/hackage.haskell.org/01-index.cache
27− - rm -fv $CABALHOME/packages/hackage.haskell.org/01-index.tar
24+ - rm -fv $HOME/.cabal/packages/hackage.haskell.org/01-index.tar
28− - rm -fv $CABALHOME/packages/hackage.haskell.org/01-index.tar.idx
25+ - rm -fv $HOME/.cabal/packages/hackage.haskell.org/01-index.tar.idx
26+
29− - rm -rfv $CABALHOME/packages/head.hackage
27+ - rm -rfv $HOME/.cabal/packages/head.hackage
30−jobs:
28+
29+matrix:
31 include:
30 include:
32− - compiler: ghc-8.10.1
31+ - compiler: "ghc-8.4.3"
33− addons: {"apt":{"sources":[{"sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-8.10.1","cabal-install-3.2"]}}
32+ # env: TEST=--disable-tests BENCH=--disable-benchmarks
34− os: linux
33+ addons: {apt: {packages: [ghc-ppa-tools,cabal-install-2.2,ghc-8.4.3], sources: [hvr-ghc]}}
35− - compiler: ghc-8.8.3
36− addons: {"apt":{"sources":[{"sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-8.8.3","cabal-install-3.0"]}}
37− os: linux
38− - compiler: ghc-8.6.5
34+ - compiler: "ghc-8.2.2"
39− addons: {"apt":{"sources":[{"sourceline":"deb http://ppa.launchpad.net/hvr/ghc/ubuntu xenial main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-8.6.5","cabal-install-3.0"]}}
35+ # env: TEST=--disable-tests BENCH=--disable-benchmarks
40− os: linux
36+ addons: {apt: {packages: [ghc-ppa-tools,cabal-install-2.2,ghc-8.2.2], sources: [hvr-ghc]}}
41− allow_failures:
37+
42− - compiler: ghc-8.8.3
43− - compiler: ghc-8.10.1
44before_install:
38before_install:
45− - HC=$(echo "/opt/$CC/bin/ghc" | sed 's/-/\//')
39+ - HC=${CC}
46− - WITHCOMPILER="-w $HC"
47− - HADDOCK=$(echo "/opt/$CC/bin/haddock" | sed 's/-/\//')
48− - HCPKG="$HC-pkg"
40+ - HCPKG=${HC/ghc/ghc-pkg}
49 - unset CC
41 - unset CC
50− - CABAL=/opt/ghc/bin/cabal
42+ - ROOTDIR=$(pwd)
51− - CABALHOME=$HOME/.cabal
43+ - mkdir -p $HOME/.local/bin
52− - export PATH="$CABALHOME/bin:$PATH"
44+ - "PATH=/opt/ghc/bin:/opt/ghc-ppa-tools/bin:$HOME/local/bin:$PATH"
53− - TOP=$(pwd)
54− - "HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\\d+)\\.(\\d+)\\.(\\d+)(\\.(\\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')"
45+ - HCNUMVER=$(( $(${HC} --numeric-version|sed -E 's/([0-9]+)\.([0-9]+)\.([0-9]+).*/\1 * 10000 + \2 * 100 + \3/') ))
55 - echo $HCNUMVER
46 - echo $HCNUMVER
56− - CABAL="$CABAL -vnormal+nowrap"
47+
57− - set -o pipefail
58− - TEST=--enable-tests
59− - BENCH=--enable-benchmarks
60− - HEADHACKAGE=false
61− - if [ $HCNUMVER -ge 80800 ] ; then HEADHACKAGE=true ; fi
62− - rm -f $CABALHOME/config
63− - |
64− echo "verbose: normal +nowrap +markoutput" >> $CABALHOME/config
65− echo "remote-build-reporting: anonymous" >> $CABALHOME/config
66− echo "write-ghc-environment-files: always" >> $CABALHOME/config
67− echo "remote-repo-cache: $CABALHOME/packages" >> $CABALHOME/config
68− echo "logs-dir: $CABALHOME/logs" >> $CABALHOME/config
69− echo "world-file: $CABALHOME/world" >> $CABALHOME/config
70− echo "extra-prog-path: $CABALHOME/bin" >> $CABALHOME/config
71− echo "symlink-bindir: $CABALHOME/bin" >> $CABALHOME/config
72− echo "installdir: $CABALHOME/bin" >> $CABALHOME/config
73− echo "build-summary: $CABALHOME/logs/build.log" >> $CABALHOME/config
74− echo "store-dir: $CABALHOME/store" >> $CABALHOME/config
75− echo "install-dirs user" >> $CABALHOME/config
76− echo " prefix: $CABALHOME" >> $CABALHOME/config
77− echo "repository hackage.haskell.org" >> $CABALHOME/config
78− echo " url: http://hackage.haskell.org/" >> $CABALHOME/config
79− - |
80− if $HEADHACKAGE; then
81− echo "allow-newer: $($HCPKG list --simple-output | sed -E 's/([a-zA-Z-]+)-[0-9.]+/*:\1/g')" >> $CABALHOME/config
82− echo "repository head.hackage.ghc.haskell.org" >> $CABALHOME/config
83− echo " url: https://ghc.gitlab.haskell.org/head.hackage/" >> $CABALHOME/config
84− echo " secure: True" >> $CABALHOME/config
85− echo " root-keys: 7541f32a4ccca4f97aea3b22f5e593ba2c0267546016b992dfadcd2fe944e55d" >> $CABALHOME/config
86− echo " 26021a13b401500c8eb2761ca95c61f2d625bfef951b939a8124ed12ecf07329" >> $CABALHOME/config
87− echo " f76d08be13e9a61a377a85e2fb63f4c5435d40f8feb3e12eb05905edb8cdea89" >> $CABALHOME/config
88− echo " key-threshold: 3" >> $CABALHOME/config
89− fi
90install:
48install:
91− - ${CABAL} --version
49+ - cabal --version
92 - echo "$(${HC} --version) [$(${HC} --print-project-git-commit-id 2> /dev/null || echo '?')]"
50 - echo "$(${HC} --version) [$(${HC} --print-project-git-commit-id 2> /dev/null || echo '?')]"
93− - |
51+ - BENCH=${BENCH---enable-benchmarks}
94− echo "program-default-options" >> $CABALHOME/config
52+ - TEST=${TEST---enable-tests}
95− echo " ghc-options: $GHCJOBS +RTS -M6G -RTS" >> $CABALHOME/config
53+ - HADDOCK=${HADDOCK-true}
96− - cat $CABALHOME/config
54+ - INSTALLED=${INSTALLED-true}
97− - rm -fv cabal.project cabal.project.local cabal.project.freeze
55+ - GHCHEAD=${GHCHEAD-false}
98− - travis_retry ${CABAL} v2-update -v
56+ - travis_retry cabal update -v
57+ - "sed -i.bak 's/^jobs:/-- jobs:/' ${HOME}/.cabal/config"
58+ - rm -fv cabal.project cabal.project.local
59+ - grep -Ev -- '^\s*--' ${HOME}/.cabal/config | grep -Ev '^\s*$'
99− - (cd /tmp && ${CABAL} v2-install $WITHCOMPILER -j2 doctest --constraint='doctest ==0.16.2.*')
60+ - if [ $HCNUMVER -ge 80000 ]; then cabal new-install -w ${HC} --symlink-bindir=$HOME/.local/bin doctest --constraint='doctest ==0.15.*'; fi
100− - if [ $HCNUMVER -lt 80800 ] ; then HLINTVER=$(cd /tmp && (${CABAL} v2-install -v $WITHCOMPILER --dry-run hlint --constraint='hlint ==2.2.*' | perl -ne 'if (/\bhlint-(\d+(\.\d+)*)\b/) { print "$1"; last; }')); echo "HLint version $HLINTVER" ; fi
61+ - if [ $HCNUMVER -eq 80202 ]; then cabal new-install -w ${HC} --symlink-bindir=$HOME/.local/bin hlint --constraint='hlint ==2.1.*'; fi
101− - "if [ $HCNUMVER -lt 80800 ] ; then if [ ! -e $HOME/.hlint/hlint-$HLINTVER/hlint ]; then echo \"Downloading HLint version $HLINTVER\"; mkdir -p $HOME/.hlint; curl --write-out 'Status Code: %{http_code} Redirects: %{num_redirects} Total time: %{time_total} Total Dsize: %{size_download}\\n' --silent --location --output $HOME/.hlint/hlint-$HLINTVER.tar.gz \"https://github.com/ndmitchell/hlint/releases/download/v$HLINTVER/hlint-$HLINTVER-x86_64-linux.tar.gz\"; tar -xzv -f $HOME/.hlint/hlint-$HLINTVER.tar.gz -C $HOME/.hlint; fi ; fi"
62+ - "printf 'packages: \".\"\\n' > cabal.project"
102− - if [ $HCNUMVER -lt 80800 ] ; then mkdir -p $CABALHOME/bin && ln -sf "$HOME/.hlint/hlint-$HLINTVER/hlint" $CABALHOME/bin/hlint ; fi
103− - if [ $HCNUMVER -lt 80800 ] ; then hlint --version ; fi
104− # Generate cabal.project
105− - rm -rf cabal.project cabal.project.local cabal.project.freeze
106− - touch cabal.project
107− - |
108− echo "packages: ." >> cabal.project
109− - |
110− - "for pkg in $($HCPKG list --simple-output); do echo $pkg | sed 's/-[^-]*$//' | (grep -vE -- '^(Cabal|cabal2nix)$' || true) | sed 's/^/constraints: /' | sed 's/$/ installed/' >> cabal.project.local; done"
111− - cat cabal.project || true
63+ - cat cabal.project
112− - cat cabal.project.local || true
113− - if [ -f "./configure.ac" ]; then (cd "." && autoreconf -i); fi
64+ - if [ -f "./configure.ac" ]; then
114− - ${CABAL} v2-freeze $WITHCOMPILER ${TEST} ${BENCH}
65+ (cd "." && autoreconf -i);
66+ fi
115− - "cat cabal.project.freeze | sed -E 's/^(constraints: *| *)//' | sed 's/any.//'"
67+ - rm -f cabal.project.freeze
116− - rm cabal.project.freeze
68+ - cabal new-build -w ${HC} ${TEST} ${BENCH} --project-file="cabal.project" --dep -j2 all
117− - travis_wait 40 ${CABAL} v2-build $WITHCOMPILER ${TEST} ${BENCH} --dep -j2 all
118− - travis_wait 40 ${CABAL} v2-build $WITHCOMPILER --disable-tests --disable-benchmarks --dep -j2 all
69+ - cabal new-build -w ${HC} --disable-tests --disable-benchmarks --project-file="cabal.project" --dep -j2 all
119−script:
70+ - rm -rf .ghc.environment.* "."/dist
120 - DISTDIR=$(mktemp -d /tmp/dist-test.XXXX)
71 - DISTDIR=$(mktemp -d /tmp/dist-test.XXXX)
121− # Packaging...
72+
122− - ${CABAL} v2-sdist all
73+# Here starts the actual work to be performed for the package under test;
123− # Unpacking...
74+# any command which exits with a non-zero exit code causes the build to fail.
75+script:
76+ # test that source-distributions can be generated
77+ - (cd "." && cabal sdist)
124− - mv dist-newstyle/sdist/*.tar.gz ${DISTDIR}/
78+ - mv "."/dist/cabal2nix-*.tar.gz ${DISTDIR}/
125 - cd ${DISTDIR} || false
79 - cd ${DISTDIR} || false
126− - find . -maxdepth 1 -type f -name '*.tar.gz' -exec tar -xvf '{}' \;
80+ - find . -maxdepth 1 -name '*.tar.gz' -exec tar -xvf '{}' \;
127− - find . -maxdepth 1 -type f -name '*.tar.gz' -exec rm '{}' \;
81+ - "printf 'packages: cabal2nix-*/*.cabal\\n' > cabal.project"
128− - PKGDIR_cabal2nix="$(find . -maxdepth 1 -type d -regex '.*/cabal2nix-[0-9.]*')"
129− # Generate cabal.project
130− - rm -rf cabal.project cabal.project.local cabal.project.freeze
131− - touch cabal.project
132− - |
133− echo "packages: ${PKGDIR_cabal2nix}" >> cabal.project
134− - |
135− - "for pkg in $($HCPKG list --simple-output); do echo $pkg | sed 's/-[^-]*$//' | (grep -vE -- '^(Cabal|cabal2nix)$' || true) | sed 's/^/constraints: /' | sed 's/$/ installed/' >> cabal.project.local; done"
136− - cat cabal.project || true
82+ - cat cabal.project
137− - cat cabal.project.local || true
138− # Building...
139 # this builds all libraries and executables (without tests/benchmarks)
83 # this builds all libraries and executables (without tests/benchmarks)
140− - ${CABAL} v2-build $WITHCOMPILER --disable-tests --disable-benchmarks all
84+ - cabal new-build -w ${HC} --disable-tests --disable-benchmarks all
141− # Building with tests and benchmarks...
85+
86+
142 # build & run tests, build benchmarks
87 # build & run tests, build benchmarks
143− - ${CABAL} v2-build $WITHCOMPILER ${TEST} ${BENCH} all
88+ - cabal new-build -w ${HC} ${TEST} ${BENCH} all
144− # Testing...
89+ - if [ "x$TEST" = "x--enable-tests" ]; then cabal new-test -w ${HC} ${TEST} ${BENCH} all; fi
145− - ${CABAL} v2-test $WITHCOMPILER ${TEST} ${BENCH} all
90+
146− # Doctest...
91+ # doctest
147− - (cd ${PKGDIR_cabal2nix} && doctest -i ../dist-newstyle/build/*/*/cabal2nix-*/build/autogen src)
92+ - if [ $HCNUMVER -ge 80000 ]; then (cd cabal2nix-* && doctest -i ../dist-newstyle/build/*/*/cabal2nix-*/build/autogen src); fi
148− # HLint..
93+
149− - if [ $HCNUMVER -lt 80800 ] ; then (cd ${PKGDIR_cabal2nix} && hlint src) ; fi
94+ # hlint
150− - if [ $HCNUMVER -lt 80800 ] ; then (cd ${PKGDIR_cabal2nix} && hlint hackage2nix) ; fi
151− - if [ $HCNUMVER -lt 80800 ] ; then (cd ${PKGDIR_cabal2nix} && hlint cabal2nix) ; fi
95+ - if [ $HCNUMVER -eq 80202 ]; then (cd cabal2nix-* && hlint src); fi
96+
152− # cabal check...
97+ # cabal check
153− - (cd ${PKGDIR_cabal2nix} && ${CABAL} -vnormal check)
98+ - (cd cabal2nix-* && cabal check)
99+
154− # haddock...
100+ # haddock
155− - ${CABAL} v2-haddock $WITHCOMPILER --with-haddock $HADDOCK ${TEST} ${BENCH} all
101+ - rm -rf ./dist-newstyle
156− # Building without installed constraints for packages in global-db...
102+ - if $HADDOCK; then cabal new-haddock -w ${HC} ${TEST} ${BENCH} all; else echo "Skipping haddock generation";fi
157− - rm -f cabal.project.local
158− - ${CABAL} v2-build $WITHCOMPILER --disable-tests --disable-benchmarks all
159
103
160−# REGENDATA ("0.9.20200306",["--installed=+all -Cabal","--hlint","--doctest","--doctest-options=-i ../dist-newstyle/build/*/*/cabal2nix-*/build/autogen","-o",".travis.yml","cabal2nix.cabal","--head-hackage","--head-hackage-jobs","> 8.8"])
104+# REGENDATA ["--no-installed","--doctest","--doctest-options=-i ../dist-newstyle/build/*/*/cabal2nix-*/build/autogen","--hlint","-o",".travis.yml","cabal2nix.cabal"]
161# EOF
105# EOF
README.md+7−12
@@ -1,11 +1,6 @@
1Cabal2nix
1Cabal2nix
2=========
2=========
3
3
4−[![hackage release](https://img.shields.io/hackage/v/cabal2nix.svg?label=hackage)](http://hackage.haskell.org/package/cabal2nix)
5−[![stackage LTS package](http://stackage.org/package/cabal2nix/badge/lts)](http://stackage.org/lts/package/cabal2nix)
6−[![stackage Nightly package](http://stackage.org/package/cabal2nix/badge/nightly)](http://stackage.org/nightly/package/cabal2nix)
7−[![travis build status](https://img.shields.io/travis/NixOS/cabal2nix/master.svg?label=travis+build)](https://travis-ci.org/NixOS/cabal2nix)
8−
9`cabal2nix` converts a single Cabal file into a single Nix build expression.
4`cabal2nix` converts a single Cabal file into a single Nix build expression.
10For example:
5For example:
11
6
@@ -27,16 +22,16 @@ direct `http://host/path/pkg.cabal` URL can be provided, as well as a
27`file:///local/path/pkg.cabal` URI that doesn't depend on network access.
22`file:///local/path/pkg.cabal` URI that doesn't depend on network access.
28However, if the source hash is not already in `cabal2nix`'s cache or provided
23However, if the source hash is not already in `cabal2nix`'s cache or provided
29using the `--sha256` option, `cabal2nix` still needs to download the source
24using the `--sha256` option, `cabal2nix` still needs to download the source
30−code to compute the hash, which still causes network traffic. Run the utility
25+code to compute the hash, which obviously still causes network traffic. Run the
31−with `--help` to see the complete list of supported command-line flags.
26+utility with `--help` to see the complete list of supported command line flags.
32
27
33−Detailed instructions on how to use those generated files with Nix can be found at
28+Detailed instructions how to use those generated files with Nix can be found at
34−https://nixos.org/nixpkgs/manual/#how-to-create-nix-builds-for-your-own-private-haskell-packages.
29+http://nixos.org/nixpkgs/manual/#users-guide-to-the-haskell-infrastructure.
35
30
36`cabal2nix` can also build derivations for projects from other sources than
31`cabal2nix` can also build derivations for projects from other sources than
37−Hackage. You only need to provide a URI that points to a cabal project. The
32+hackage. You only need to provide an URI that points to a cabal project. The
38−most common use-case for this is probably to generate a derivation for a
33+most common usecase for this is probably to generate a derivation for a project
39−project on the local file system:
34+on the local file system:
40
35
41 $ cabal get mtl-2.2.1 && cd mtl-2.2.1
36 $ cabal get mtl-2.2.1 && cd mtl-2.2.1
42 $ cabal2nix .
37 $ cabal2nix .
cabal2nix.cabal+179−138
@@ -1,152 +1,193 @@
1−name: cabal2nix
1+name: cabal2nix
2−version: 2.15.1
2+version: 2.9.2
3−synopsis: Convert Cabal files into Nix build instructions.
3+synopsis: Convert Cabal files into Nix build instructions.
4+category: Distribution, Nix
5+stability: stable
6+homepage: https://github.com/nixos/cabal2nix#readme
7+bug-reports: https://github.com/nixos/cabal2nix/issues
8+author: Peter Simons,
9+ Andres Loeh,
10+ Benno Fünfstück,
11+ Mateusz Kowalczyk,
12+ Michael Alan Dorman,
13+ Tom Smalley,
14+ Mathijs Kwik,
15+ Shea Levy,
16+ Dmitry Malikov,
17+ Eric Seidel,
18+ Jacob Mitchell,
19+ Graham Christensen,
20+ Hamish Mackenzie,
21+ Nikolay Amiantov,
22+ Aycan iRiCAN,
23+ Bryan Gardiner,
24+ Joe Hermaszewski,
25+ John Wiegley,
26+ Philipp Hausmann,
27+ Spencer Janssen,
28+ Tom Hunger,
29+ William Casarin,
30+ koral,
31+ ksaric,
32+ Adam Vogt,
33+ Alexey Shmalko,
34+ Corey O'Connor,
35+ Cray Elliott,
36+ David Johnson,
37+ Dmitry Bushev,
38+ Domen Kožar,
39+ Felix Kunzmann,
40+ Gabriel Ebner,
41+ Gergely Risko,
42+ Joachim Fasting,
43+ John Albietz,
44+ John Chee,
45+ Jussi Maki,
46+ Lisanna Dettwyler,
47+ Mark Laws,
48+ Mark Wotton,
49+ Matthew Pickering,
50+ Matthew Stewart,
51+ Matvey Aksenov,
52+ Nicholas Clarke,
53+ Nicolas Rolland,
54+ Oliver Charles,
55+ Pascal Wittmann,
56+ Patrick John Wheeler,
57+ Phil de Joux,
58+ Piotr Bogdan,
59+ Profpatsch,
60+ Raymond Gauthier,
61+ Renzo Carbonara,
62+ Rodney Lorrimar,
63+ Sibi,
64+ Sukant Hajra,
65+ Tanner Doshier,
66+ Vaibhav Sagar,
67+ Viktar Basharymau,
68+ danbst,
69+ karsten gebbert,
70+ laMudri,
71+ Александр Цамутали
72+maintainer: Peter Simons <simons@cryp.to>
73+license: BSD3
74+license-file: LICENSE
75+tested-with: GHC == 8.2.2, GHC == 8.4.3
76+build-type: Simple
77+cabal-version: 1.24
78+
4description:
79description:
5− Convert Cabal files into Nix build instructions. Users of Nix can install the latest
80+ Convert Cabal files into Nix build instructions. Users of Nix can install the
6− version by running:
81+ latest version by running:
7 .
82 .
8 > nix-env -i cabal2nix
83 > nix-env -i cabal2nix
9−license: BSD3
84+
10−license-file: LICENSE
11−author: Peter Simons, Andres Loeh, Benno Fünfstück, Mateusz Kowalczyk,
12− Michael Alan Dorman, Tom Smalley, Mathijs Kwik, Shea Levy, Dmitry
13− Malikov, Eric Seidel, Jacob Mitchell, Graham Christensen,
14− Hamish Mackenzie, Nikolay Amiantov, Aycan iRiCAN, Bryan
15− Gardiner, Joe Hermaszewski, John Wiegley, Philipp Hausmann,
16− Spencer Janssen, Tom Hunger, William Casarin, koral,
17− ksaric, Adam Vogt, Alexey Shmalko, Corey O'Connor, Cray
18− Elliott, David Johnson, Dmitry Bushev, Domen Kožar, Felix
19− Kunzmann, Gabriel Ebner, Gergely Risko, Joachim Fasting,
20− John Albietz, John Chee, Jussi Maki, Lisanna Dettwyler,
21− Mark Laws, Mark Wotton, Matthew Pickering, Matthew Stewart,
22− Matvey Aksenov, Nicholas Clarke, Nicolas Rolland, Oliver
23− Charles, Pascal Wittmann, Patrick John Wheeler, Phil de
24− Joux, Piotr Bogdan, Profpatsch, Raymond Gauthier, Renzo
25− Carbonara, Rodney Lorrimar, Sibi, Sukant Hajra, Tanner
26− Doshier, Vaibhav Sagar, Viktar Basharymau, danbst, karsten
27− gebbert, laMudri, Александр Цамутали
28−maintainer: Peter Simons <simons@cryp.to>
29−stability: stable
30−tested-with: GHC == 8.6.5, GHC == 8.8.3, GHC == 8.10.1
31−category: Distribution, Nix
32−homepage: https://github.com/nixos/cabal2nix#readme
33−bug-reports: https://github.com/nixos/cabal2nix/issues
34−build-type: Simple
35−extra-source-files: README.md
85+extra-source-files:
86+ README.md
36− test/golden-test-cases/*.cabal
87+ test/golden-test-cases/*.cabal
37− test/golden-test-cases/*.nix.golden
88+ test/golden-test-cases/*.nix.golden
38−cabal-version: 1.24
39
89
40source-repository head
90source-repository head
41− type: git
91+ type: git
42 location: https://github.com/nixos/cabal2nix
92 location: https://github.com/nixos/cabal2nix
43
93
44library
94library
45− exposed-modules: Cabal2nix
46− Distribution.Nixpkgs.Fetch
47− Distribution.Nixpkgs.Haskell
48− Distribution.Nixpkgs.Haskell.BuildInfo
49− Distribution.Nixpkgs.Haskell.Constraint
50− Distribution.Nixpkgs.Haskell.Derivation
51− Distribution.Nixpkgs.Haskell.FromCabal
52− Distribution.Nixpkgs.Haskell.FromCabal.Configuration
53− Distribution.Nixpkgs.Haskell.FromCabal.Flags
54− Distribution.Nixpkgs.Haskell.FromCabal.License
55− Distribution.Nixpkgs.Haskell.FromCabal.Name
56− Distribution.Nixpkgs.Haskell.FromCabal.Normalize
57− Distribution.Nixpkgs.Haskell.FromCabal.PostProcess
58− Distribution.Nixpkgs.Haskell.Hackage
59− Distribution.Nixpkgs.Haskell.OrphanInstances
60− Distribution.Nixpkgs.Haskell.PackageSourceSpec
61− other-modules: Paths_cabal2nix
62− hs-source-dirs: src
95+ hs-source-dirs:
96+ src
97+ other-extensions: CPP DeriveGeneric FlexibleInstances MultiParamTypeClasses OverloadedStrings RecordWildCards ScopedTypeVariables StandaloneDeriving TemplateHaskell
98+ ghc-options: -Wall
63− build-depends: base > 4.11
99+ build-depends:
64− , Cabal == 3.0.*
100+ Cabal >2.2
65− , aeson > 1
101+ , aeson
66− , ansi-wl-pprint
102+ , ansi-wl-pprint
103+ , base <5
67− , bytestring
104+ , bytestring
68− , containers >= 0.5.9
105+ , containers
69− , deepseq >= 1.4
106+ , deepseq >=1.4
70− , directory
107+ , directory
71− , distribution-nixpkgs >= 1.3.1
108+ , distribution-nixpkgs >=1.1.1
72− , filepath
109+ , filepath
73− , hackage-db >= 2.0.1
110+ , hackage-db >=2.0.1
74− , hopenssl >= 2
111+ , hopenssl >=2
75− , hpack >= 0.29.6
112+ , hpack >= 0.26
76− , language-nix
113+ , language-nix
77− , lens
114+ , lens
78− , optparse-applicative
115+ , optparse-applicative
79− , pretty >= 1.1.2
116+ , pretty >=1.1.2
80− , process
117+ , process
81− , split
118+ , split
82− , text
119+ , text
83− , time
120+ , time
84− , transformers
121+ , transformers
85− , yaml
122+ , yaml
123+ exposed-modules:
124+ Cabal2nix
125+ Distribution.Nixpkgs.Fetch
126+ Distribution.Nixpkgs.Haskell
127+ Distribution.Nixpkgs.Haskell.BuildInfo
128+ Distribution.Nixpkgs.Haskell.Constraint
129+ Distribution.Nixpkgs.Haskell.Derivation
130+ Distribution.Nixpkgs.Haskell.FromCabal
131+ Distribution.Nixpkgs.Haskell.FromCabal.Configuration
132+ Distribution.Nixpkgs.Haskell.FromCabal.Flags
133+ Distribution.Nixpkgs.Haskell.FromCabal.License
134+ Distribution.Nixpkgs.Haskell.FromCabal.Name
135+ Distribution.Nixpkgs.Haskell.FromCabal.Normalize
136+ Distribution.Nixpkgs.Haskell.FromCabal.PostProcess
137+ Distribution.Nixpkgs.Haskell.Hackage
138+ Distribution.Nixpkgs.Haskell.OrphanInstances
139+ Distribution.Nixpkgs.Haskell.PackageSourceSpec
140+ other-modules:
141+ Paths_cabal2nix
86− default-language: Haskell2010
142+ default-language: Haskell2010
87− other-extensions: MultiParamTypeClasses
88− ScopedTypeVariables
89− FlexibleInstances
90− CPP
91− TemplateHaskell
92− StandaloneDeriving
93− RecordWildCards
94− OverloadedStrings
95− DeriveGeneric
96− ghc-options: -Wall -Wcompat -Wincomplete-uni-patterns -Wincomplete-record-updates
97− -Wredundant-constraints
98
143
99executable cabal2nix
144executable cabal2nix
100− main-is: Main.hs
145+ main-is: Main.hs
101− hs-source-dirs: cabal2nix
146+ hs-source-dirs: cabal2nix
147+ ghc-options: -Wall
102− build-depends: base, cabal2nix
148+ build-depends: base, cabal2nix
103− default-language: Haskell2010
149+ default-language: Haskell2010
104− ghc-options: -Wall -Wcompat -Wincomplete-uni-patterns -Wincomplete-record-updates
105− -Wredundant-constraints
106
150
107executable hackage2nix
151executable hackage2nix
108− main-is: Main.hs
152+ main-is: Main.hs
109− other-modules: HackageGit
110− Paths_cabal2nix
111− hs-source-dirs: hackage2nix
153+ hs-source-dirs: hackage2nix
154+ ghc-options: -Wall -threaded -rtsopts -with-rtsopts=-N
112− build-depends: base < 5
155+ build-depends:
113− , Cabal
156+ Cabal >2.2
114− , aeson
157+ , aeson
158+ , base <5
115− , bytestring
159+ , bytestring
116− , cabal2nix
160+ , cabal2nix
117− , containers
161+ , containers
118− , directory
162+ , directory
119− , distribution-nixpkgs >= 1.2
163+ , distribution-nixpkgs >=1.1.1
120− , filepath
164+ , filepath
121− , hopenssl >= 2
165+ , hopenssl >=2
122− , language-nix
166+ , language-nix
123− , lens
167+ , lens
124− , monad-par
168+ , monad-par
125− , monad-par-extras
169+ , monad-par-extras
126− , mtl
170+ , mtl
127− , optparse-applicative
171+ , optparse-applicative
128− , pretty >= 1.1.2
172+ , pretty >=1.1.2
173+ other-modules:
174+ Paths_cabal2nix
175+ HackageGit
129− default-language: Haskell2010
176+ default-language: Haskell2010
130− ghc-options: -Wall -Wcompat -Wincomplete-uni-patterns -Wincomplete-record-updates
131− -Wredundant-constraints -threaded -rtsopts -with-rtsopts=-maxN16
132
177
133test-suite regression-test
178test-suite regression-test
134− type: exitcode-stdio-1.0
179+ type: exitcode-stdio-1.0
135− main-is: Main.hs
180+ main-is: Main.hs
136− hs-source-dirs: test
181+ hs-source-dirs: test
137− build-depends: base
182+ build-depends: base
138− , Cabal
183+ , Cabal >2.2
139− , cabal2nix
184+ , cabal2nix
140− , containers
141− , directory
142− , filepath
185+ , filepath
143− , language-nix
186+ , language-nix
144− , lens
187+ , lens
145− , pretty
188+ , pretty
146− , process > 1.2
147− , tasty
189+ , tasty
148− , tasty-golden
190+ , tasty-golden
149− default-language: Haskell2010
191+ -- TODO: Why does 1K not work any longer?
150− build-tools: cabal2nix
192+ ghc-options: -Wall -with-rtsopts=-K48K
151− ghc-options: -Wall -Wcompat -Wincomplete-uni-patterns -Wincomplete-record-updates
193+ default-language: Haskell2010
152− -Wredundant-constraints -threaded -with-rtsopts=-K64K
doc/01-use-function-application-to-escape-override-hell.md+1−1
@@ -116,7 +116,7 @@ reflection. Nixpkgs defines the Haskell package set recursively as a function
116produce and then uses that information to the produce the attribute set it's
116produce and then uses that information to the produce the attribute set it's
117already received as an argument. It's a mind-boggling way to define a recursive
117already received as an argument. It's a mind-boggling way to define a recursive
118attribute set `rec { ... }` without actually using the `rec` keyword. Every
118attribute set `rec { ... }` without actually using the `rec` keyword. Every
119−computable function of this kind has a fixed point: a value `x` that satisfies
119+computable function of this kind has a fixed point: a value `x` that satifies
120`f x = x`. That `x` is the result we actually want --- it's an ordinary
120`f x = x`. That `x` is the result we actually want --- it's an ordinary
121attribute set with all the `self`-references resolved and replaced by actual
121attribute set with all the `self`-references resolved and replaced by actual
122values. The details of fixed points aren't important, though. What's important
122values. The details of fixed points aren't important, though. What's important
doc/hal8.md+1−1
@@ -190,7 +190,7 @@ Haskell Platform later, so one doesn't have to worry that every single install
190is going to be that expensive.
190is going to be that expensive.
191
191
192In its last step, `nix-env` creates a "user environment" at
192In its last step, `nix-env` creates a "user environment" at
193−`$HOME/.nix-profile`, which simplifies use of the installed packages a lot. That
193+`$HOME/.nix-profile`, which simplies use of the installed packages a lot. That
194environment uses symlinks to create a view of the Nix store that combines those
194environment uses symlinks to create a view of the Nix store that combines those
195packages that have been installed into a single hierarchy. For example, the
195packages that have been installed into a single hierarchy. For example, the
196path `~/.nix-profile/bin/ghc` will be a symlink to
196path `~/.nix-profile/bin/ghc` will be a symlink to
hackage2nix/Main.hs+20−29
@@ -1,5 +1,6 @@
1{-# LANGUAGE OverloadedStrings #-}
1{-# LANGUAGE OverloadedStrings #-}
2{-# LANGUAGE RecordWildCards #-}
2{-# LANGUAGE RecordWildCards #-}
3+{-# LANGUAGE CPP #-}
3
4
4module Main ( main ) where
5module Main ( main ) where
5
6
@@ -10,10 +11,13 @@ import Control.Monad
10import Control.Monad.Par.Combinator
11import Control.Monad.Par.Combinator
11import Control.Monad.Par.IO
12import Control.Monad.Par.IO
12import Control.Monad.Trans ( liftIO )
13import Control.Monad.Trans ( liftIO )
13−import Data.List ( intercalate )
14+import Data.List
14import Data.Map.Strict ( Map )
15import Data.Map.Strict ( Map )
15import qualified Data.Map.Strict as Map
16import qualified Data.Map.Strict as Map
16import Data.Maybe
17import Data.Maybe
18+#if !MIN_VERSION_base(4,11,0)
19+import Data.Monoid
20+#endif
17import Data.Set ( Set )
21import Data.Set ( Set )
18import qualified Data.Set as Set
22import qualified Data.Set as Set
19import Data.String
23import Data.String
@@ -23,11 +27,10 @@ import Distribution.Nixpkgs.Haskell.Constraint
23import Distribution.Nixpkgs.Haskell.FromCabal
27import Distribution.Nixpkgs.Haskell.FromCabal
24import Distribution.Nixpkgs.Haskell.FromCabal.Configuration as Config
28import Distribution.Nixpkgs.Haskell.FromCabal.Configuration as Config
25import Distribution.Nixpkgs.Haskell.FromCabal.Flags
29import Distribution.Nixpkgs.Haskell.FromCabal.Flags
26−import Distribution.Nixpkgs.Haskell.OrphanInstances ( )
27import Distribution.Nixpkgs.Meta
30import Distribution.Nixpkgs.Meta
28import Distribution.Nixpkgs.PackageMap
31import Distribution.Nixpkgs.PackageMap
29import Distribution.Package
32import Distribution.Package
30−import Distribution.PackageDescription hiding ( options, extraLibs, buildTools, homepage )
33+import Distribution.PackageDescription hiding ( options, buildDepends, extraLibs, buildTools, homepage )
31import Distribution.System
34import Distribution.System
32import Distribution.Text
35import Distribution.Text
33import Distribution.Version
36import Distribution.Version
@@ -63,7 +66,7 @@ main = do
63 pinfo :: ParserInfo CLI
66 pinfo :: ParserInfo CLI
64 pinfo = info
67 pinfo = info
65 ( helper
68 ( helper
66− <*> infoOption ("hackage2nix " ++ prettyShow Main.version) (long "version" <> help "Show version number")
69+ <*> infoOption ("hackage2nix " ++ display Main.version) (long "version" <> help "Show version number")
67 <*> cliOptions
70 <*> cliOptions
68 )
71 )
69 ( fullDesc
72 ( fullDesc
@@ -72,15 +75,13 @@ main = do
72 CLI {..} <- execParser pinfo
75 CLI {..} <- execParser pinfo
73
76
74 config <- readConfiguration (nixpkgsRepository </> configFile)
77 config <- readConfiguration (nixpkgsRepository </> configFile)
75− nixpkgs <- readNixpkgPackageMap ["-f", nixpkgsRepository, "--arg", "config", "{ allowAliases = false; }"]
78+ nixpkgs <- readNixpkgPackageMap nixpkgsRepository Nothing
76 preferredVersions <- readPreferredVersions (fromMaybe (hackageRepository </> "preferred-versions") preferredVersionsFile)
79 preferredVersions <- readPreferredVersions (fromMaybe (hackageRepository </> "preferred-versions") preferredVersionsFile)
77 let fixup = Map.delete "acme-everything" -- TODO: https://github.com/NixOS/cabal2nix/issues/164
80 let fixup = Map.delete "acme-everything" -- TODO: https://github.com/NixOS/cabal2nix/issues/164
78 . Map.delete "som" -- TODO: https://github.com/NixOS/cabal2nix/issues/164
81 . Map.delete "som" -- TODO: https://github.com/NixOS/cabal2nix/issues/164
79 . Map.delete "type" -- TODO: https://github.com/NixOS/cabal2nix/issues/163
82 . Map.delete "type" -- TODO: https://github.com/NixOS/cabal2nix/issues/163
80 . Map.delete "control-invariants" -- TODO: depends on "assert"
83 . Map.delete "control-invariants" -- TODO: depends on "assert"
81− . Map.delete "with" -- TODO: https://github.com/NixOS/cabal2nix/issues/164
82− . Map.delete "telega" -- TODO: depends on "with"
83− . over (at "hermes") (fmap (set (contains "1.3.4.3") False)) -- TODO: https://github.com/haskell/hackage-server/issues/436
84+ . over (at ("hermes")) ((fmap (set (contains "1.3.4.3") False))) -- TODO: https://github.com/haskell/hackage-server/issues/436
84 hackage <- fixup <$> readHackage hackageRepository
85 hackage <- fixup <$> readHackage hackageRepository
85 let
86 let
86 hackagePackagesFile :: FilePath
87 hackagePackagesFile :: FilePath
@@ -93,7 +94,7 @@ main = do
93 latestVersionSet = Map.map Set.findMax (Map.filter (not . Set.null) (Map.mapWithKey (enforcePreferredVersions preferredVersions) hackage))
94 latestVersionSet = Map.map Set.findMax (Map.filter (not . Set.null) (Map.mapWithKey (enforcePreferredVersions preferredVersions) hackage))
94
95
95 defaultPackageOverridesSet :: PackageSet
96 defaultPackageOverridesSet :: PackageSet
96− defaultPackageOverridesSet = Map.fromList [ (name, resolveConstraint c hackage) | c@(Dependency name _ _) <- defaultPackageOverrides config ]
97+ defaultPackageOverridesSet = Map.fromList [ (name, resolveConstraint c hackage) | c@(Dependency name _) <- defaultPackageOverrides config ]
97
98
98 generatedDefaultPackageSet :: PackageSet
99 generatedDefaultPackageSet :: PackageSet
99 generatedDefaultPackageSet = (defaultPackageOverridesSet `Map.union` latestVersionSet) `Map.difference` corePackageSet
100 generatedDefaultPackageSet = (defaultPackageOverridesSet `Map.union` latestVersionSet) `Map.difference` corePackageSet
@@ -106,7 +107,7 @@ main = do
106
107
107 extraPackageSet :: PackageMultiSet
108 extraPackageSet :: PackageMultiSet
108 extraPackageSet = Map.unionsWith Set.union
109 extraPackageSet = Map.unionsWith Set.union
109− [ Map.singleton name (Set.singleton (resolveConstraint c hackage)) | c@(Dependency name _ _) <- extraPackages config ]
110+ [ Map.singleton name (Set.singleton (resolveConstraint c hackage)) | c@(Dependency name _) <- extraPackages config ]
110
111
111 db :: PackageMultiSet
112 db :: PackageMultiSet
112 db = Map.unionsWith Set.union [ Map.map Set.singleton generatedDefaultPackageSet
113 db = Map.unionsWith Set.union [ Map.map Set.singleton generatedDefaultPackageSet
@@ -116,7 +117,7 @@ main = do
116 ]
117 ]
117
118
118 haskellResolver :: Dependency -> Bool
119 haskellResolver :: Dependency -> Bool
119− haskellResolver (Dependency name vrange _)
120+ haskellResolver (Dependency name vrange)
120 | Just v <- Map.lookup name corePackageSet = v `withinRange` vrange
121 | Just v <- Map.lookup name corePackageSet = v `withinRange` vrange
121 | Just v <- Map.lookup name generatedDefaultPackageSet = v `withinRange` vrange
122 | Just v <- Map.lookup name generatedDefaultPackageSet = v `withinRange` vrange
122 | otherwise = False
123 | otherwise = False
@@ -135,13 +136,8 @@ main = do
135 (descr, cabalSHA256) <- readPackage hackageRepository pkgId
136 (descr, cabalSHA256) <- readPackage hackageRepository pkgId
136 meta <- readPackageMeta hackageRepository pkgId
137 meta <- readPackageMeta hackageRepository pkgId
137
138
138− let isInDefaultPackageSet, isHydraEnabled, isBroken :: Bool
139+ let isInDefaultPackageSet :: Bool
139− isInDefaultPackageSet = (== Just v) (Map.lookup name generatedDefaultPackageSet)
140+ isInDefaultPackageSet = maybe False (== v) (Map.lookup name generatedDefaultPackageSet)
140− isHydraEnabled = isInDefaultPackageSet && not (isBroken || name `Set.member` dontDistributePackages config)
141− isBroken = any (withinRange v) [ vr | Dependency pn vr _ <- brokenPackages config, pn == name ]
142−
143− droppedPlatforms :: Set Platform
144− droppedPlatforms = Map.findWithDefault mempty name (unsupportedPlatforms config)
145
141
146 tarballSHA256 :: SHA256Hash
142 tarballSHA256 :: SHA256Hash
147 tarballSHA256 = fromMaybe (error (display pkgId ++ ": meta data has no hash for the tarball"))
143 tarballSHA256 = fromMaybe (error (display pkgId ++ ": meta data has no hash for the tarball"))
@@ -155,17 +151,15 @@ main = do
155
151
156 drv :: Derivation
152 drv :: Derivation
157 drv = fromGenericPackageDescription haskellResolver nixpkgsResolver targetPlatform (compilerInfo config) flagAssignment [] descr
153 drv = fromGenericPackageDescription haskellResolver nixpkgsResolver targetPlatform (compilerInfo config) flagAssignment [] descr
158− & src .~ urlDerivationSource ("mirror://hackage/" ++ display pkgId ++ ".tar.gz") tarballSHA256
154+ & src .~ DerivationSource "url" ("mirror://hackage/" ++ display pkgId ++ ".tar.gz") "" tarballSHA256
159 & editedCabalFile .~ cabalSHA256
155 & editedCabalFile .~ cabalSHA256
160− & metaSection.platforms %~ (`Set.difference` Map.findWithDefault Set.empty name (unsupportedPlatforms config))
156+ & metaSection.hydraPlatforms %~ (`Set.difference` Map.findWithDefault Set.empty name (dontDistributePackages config))
161− & metaSection.hydraPlatforms %~ (if Set.null droppedPlatforms then id else (`Set.difference` droppedPlatforms))
162− & metaSection.hydraPlatforms %~ (if isHydraEnabled then id else const Set.empty)
163− & metaSection.broken ||~ isBroken
164 & metaSection.maintainers .~ Map.findWithDefault Set.empty name globalPackageMaintainers
157 & metaSection.maintainers .~ Map.findWithDefault Set.empty name globalPackageMaintainers
158+ & metaSection.hydraPlatforms %~ (if isInDefaultPackageSet then id else const Set.empty)
165 & metaSection.homepage .~ ""
159 & metaSection.homepage .~ ""
166
160
167 overrides :: Doc
161 overrides :: Doc
168− overrides = fcat $ punctuate space [ pPrint b <> semi | b <- Set.toList (view (dependencies . each) drv `Set.union` view extraFunctionArgs drv), not (isFromHackage b) ]
162+ overrides = fcat $ punctuate space [ disp b <> semi | b <- Set.toList ((view (dependencies . each) drv) `Set.union` view extraFunctionArgs drv), not (isFromHackage b) ]
169 return $ render $ nest 2 $
163 return $ render $ nest 2 $
170 hang (doubleQuotes (text attr) <+> equals <+> text "callPackage") 2 (parens (pPrint drv)) <+> (braces overrides <> semi)
164 hang (doubleQuotes (text attr) <+> equals <+> text "callPackage") 2 (parens (pPrint drv)) <+> (braces overrides <> semi)
171
165
@@ -199,13 +193,10 @@ enforcePreferredVersions cs pkg = Set.filter (\v -> PackageIdentifier pkg v `sat
199
193
200resolveConstraint :: Constraint -> Hackage -> Version
194resolveConstraint :: Constraint -> Hackage -> Version
201resolveConstraint c = fromMaybe (error msg) . resolveConstraint' c
195resolveConstraint c = fromMaybe (error msg) . resolveConstraint' c
202− where msg = unlines [ "constraint " ++ display c ++ " cannot be resolved in Hackage"
196+ where msg = "constraint " ++ display c ++ " cannot be resolved in Hackage"
203− , "This could be due the package being missing in the hackage directory"
204− , "or the file system not being case sensitive."
205− ]
206
197
207resolveConstraint' :: Constraint -> Hackage -> Maybe Version
198resolveConstraint' :: Constraint -> Hackage -> Maybe Version
208−resolveConstraint' (Dependency name vrange _) hackage
199+resolveConstraint' (Dependency name vrange) hackage
209 | Just vset' <- Map.lookup name hackage
200 | Just vset' <- Map.lookup name hackage
210 , vset <- Set.filter (`withinRange` vrange) vset'
201 , vset <- Set.filter (`withinRange` vrange) vset'
211 , not (Set.null vset) = Just (Set.findMax vset)
202 , not (Set.null vset) = Just (Set.findMax vset)
hackage2nix/README.md−3
@@ -15,9 +15,6 @@ and we want to check that hackage-packages.nix will be updated correctly.
15On macOS you can use [this](https://gist.github.com/dixson3/8360571) to create one
15On macOS you can use [this](https://gist.github.com/dixson3/8360571) to create one
16(you can replace 60g with 4g as that should be plenty).
16(you can replace 60g with 4g as that should be plenty).
17
17
18−There is a [video on YouTube](https://www.youtube.com/watch?v=qX0mgtSm360)
19−that gives a thorough walk-through of these steps.
20−
21#### Setup
18#### Setup
22Replace `git@github.com:NixOS/nixpkgs.git` with a fork you have access to.
19Replace `git@github.com:NixOS/nixpkgs.git` with a fork you have access to.
23```
20```
src/Cabal2nix.hs+36−47
@@ -3,20 +3,21 @@
3{-# LANGUAGE RecordWildCards #-}
3{-# LANGUAGE RecordWildCards #-}
4
4
5module Cabal2nix
5module Cabal2nix
6− ( main, cabal2nix, cabal2nix', cabal2nixWithDB, parseArgs
6+ ( main, cabal2nix, cabal2nix', cabal2nixWithDB
7− , Options(..)
8 )
7 )
9 where
8 where
10
9
11import Control.Exception ( bracket )
10import Control.Exception ( bracket )
12import Control.Lens
11import Control.Lens
13−import Control.Monad
12+import Control.Monad ( when )
14−import Data.List ( intercalate, isPrefixOf )
13+import Data.List
15import Data.List.Split
14import Data.List.Split
16import Data.Maybe ( fromMaybe, isJust, listToMaybe )
15import Data.Maybe ( fromMaybe, isJust, listToMaybe )
16+import Data.Monoid ( (<>) )
17import qualified Data.Set as Set
17import qualified Data.Set as Set
18import Data.String
18import Data.String
19import Data.Time
19import Data.Time
20+import qualified Distribution.Compat.ReadP as P
20import Distribution.Compiler
21import Distribution.Compiler
21import Distribution.Nixpkgs.Fetch
22import Distribution.Nixpkgs.Fetch
22import Distribution.Nixpkgs.Haskell
23import Distribution.Nixpkgs.Haskell
@@ -24,31 +25,29 @@ import Distribution.Nixpkgs.Haskell.FromCabal
24import Distribution.Nixpkgs.Haskell.FromCabal.Flags
25import Distribution.Nixpkgs.Haskell.FromCabal.Flags
25import qualified Distribution.Nixpkgs.Haskell.FromCabal.PostProcess as PP (pkg)
26import qualified Distribution.Nixpkgs.Haskell.FromCabal.PostProcess as PP (pkg)
26import qualified Distribution.Nixpkgs.Haskell.Hackage as DB
27import qualified Distribution.Nixpkgs.Haskell.Hackage as DB
27−import Distribution.Nixpkgs.Haskell.OrphanInstances ( )
28import Distribution.Nixpkgs.Haskell.PackageSourceSpec
28import Distribution.Nixpkgs.Haskell.PackageSourceSpec
29import Distribution.Nixpkgs.Meta
29import Distribution.Nixpkgs.Meta
30−import Distribution.Package ( packageId )
31import Distribution.PackageDescription ( mkFlagName, mkFlagAssignment, FlagAssignment )
30import Distribution.PackageDescription ( mkFlagName, mkFlagAssignment, FlagAssignment )
32−import Distribution.Parsec as P
31+import Distribution.Package ( packageId )
33import Distribution.Simple.Utils ( lowercase )
32import Distribution.Simple.Utils ( lowercase )
34import Distribution.System
33import Distribution.System
34+import Distribution.Text
35import Language.Nix
35import Language.Nix
36import Options.Applicative
36import Options.Applicative
37import Paths_cabal2nix ( version )
37import Paths_cabal2nix ( version )
38import System.Environment ( getArgs )
38import System.Environment ( getArgs )
39import System.IO ( hFlush, hPutStrLn, stdout, stderr )
39import System.IO ( hFlush, hPutStrLn, stdout, stderr )
40import qualified Text.PrettyPrint.ANSI.Leijen as P2
40import qualified Text.PrettyPrint.ANSI.Leijen as P2
41−import Text.PrettyPrint.HughesPJClass ( Doc, Pretty(..), text, vcat, hcat, semi, render, prettyShow )
41+import Text.PrettyPrint.HughesPJClass ( Doc, Pretty(..), text, vcat, hcat, semi )
42
42
43data Options = Options
43data Options = Options
44 { optSha256 :: Maybe String
44 { optSha256 :: Maybe String
45 , optMaintainer :: [String]
45 , optMaintainer :: [String]
46--, optPlatform :: [String] -- TODO: fix command line handling of platforms
46--, optPlatform :: [String] -- TODO: fix command line handling of platforms
47 , optHaddock :: Bool
47 , optHaddock :: Bool
48− , optHpack :: HpackUse
48+ , optHpack :: Bool
49 , optDoCheck :: Bool
49 , optDoCheck :: Bool
50 , optJailbreak :: Bool
50 , optJailbreak :: Bool
51− , optDoBenchmark :: Bool
52 , optRevision :: Maybe String
51 , optRevision :: Maybe String
53 , optHyperlinkSource :: Bool
52 , optHyperlinkSource :: Bool
54 , optEnableLibraryProfiling :: Bool
53 , optEnableLibraryProfiling :: Bool
@@ -62,10 +61,9 @@ data Options = Options
62 , optSystem :: Platform
61 , optSystem :: Platform
63 , optSubpath :: Maybe FilePath
62 , optSubpath :: Maybe FilePath
64 , optHackageSnapshot :: Maybe UTCTime
63 , optHackageSnapshot :: Maybe UTCTime
65− , optNixpkgsIdentifier :: NixpkgsResolver
66 , optUrl :: String
64 , optUrl :: String
67− , optFetchSubmodules :: Bool
68 }
65 }
66+ deriving (Show)
69
67
70options :: Parser Options
68options :: Parser Options
71options = Options
69options = Options
@@ -73,17 +71,9 @@ options = Options
73 <*> many (strOption $ long "maintainer" <> metavar "MAINTAINER" <> help "maintainer of this package (may be specified multiple times)")
71 <*> many (strOption $ long "maintainer" <> metavar "MAINTAINER" <> help "maintainer of this package (may be specified multiple times)")
74-- <*> many (strOption $ long "platform" <> metavar "PLATFORM" <> help "supported build platforms (may be specified multiple times)")
72-- <*> many (strOption $ long "platform" <> metavar "PLATFORM" <> help "supported build platforms (may be specified multiple times)")
75 <*> flag True False (long "no-haddock" <> help "don't run Haddock when building this package")
73 <*> flag True False (long "no-haddock" <> help "don't run Haddock when building this package")
76− <*>
77− (
78− flag' ForceHpack (long "hpack" <> help "run hpack before configuring this package (only non-hackage packages)")
74+ <*> switch (long "hpack" <> help "run hpack before configuring this package (only non-hackage packages)")
79− <|>
80− flag' NoHpack (long "no-hpack" <> help "disable hpack run and use only cabal disregarding package.yaml existence")
81− <|>
82− pure PackageYamlHpack
83− )
84 <*> flag True False (long "no-check" <> help "don't run regression test suites of this package")
75 <*> flag True False (long "no-check" <> help "don't run regression test suites of this package")
85 <*> switch (long "jailbreak" <> help "disregard version restrictions on build inputs")
76 <*> switch (long "jailbreak" <> help "disregard version restrictions on build inputs")
86− <*> switch (long "benchmark" <> help "enable benchmarks for this package")
87 <*> optional (strOption $ long "revision" <> help "revision to use when fetching from VCS")
77 <*> optional (strOption $ long "revision" <> help "revision to use when fetching from VCS")
88 <*> flag True False (long "no-hyperlink-source" <> help "don't generate pretty-printed source code for the documentation")
78 <*> flag True False (long "no-hyperlink-source" <> help "don't generate pretty-printed source code for the documentation")
89 <*> switch (long "enable-library-profiling" <> help "enable library profiling in the generated build")
79 <*> switch (long "enable-library-profiling" <> help "enable library profiling in the generated build")
@@ -93,13 +83,11 @@ options = Options
93 <*> optional (strOption $ long "hackage-db" <> metavar "PATH" <> help "path to the local hackage db in tar format")
83 <*> optional (strOption $ long "hackage-db" <> metavar "PATH" <> help "path to the local hackage db in tar format")
94 <*> switch (long "shell" <> help "generate output suitable for nix-shell")
84 <*> switch (long "shell" <> help "generate output suitable for nix-shell")
95 <*> many (strOption $ short 'f' <> long "flag" <> help "Cabal flag (may be specified multiple times)")
85 <*> many (strOption $ short 'f' <> long "flag" <> help "Cabal flag (may be specified multiple times)")
96− <*> option parseCabal (long "compiler" <> help "compiler to use when evaluating the Cabal file" <> value buildCompilerId <> showDefaultWith prettyShow)
86+ <*> option (readP parse) (long "compiler" <> help "compiler to use when evaluating the Cabal file" <> value buildCompilerId <> showDefaultWith display)
97− <*> option (maybeReader parsePlatform) (long "system" <> help "host system (in either short Nix format or full LLVM style) to use when evaluating the Cabal file" <> value buildPlatform <> showDefaultWith prettyShow)
87+ <*> option (maybeReader parsePlatform) (long "system" <> help "host system (in either short Nix format or full LLVM style) to use when evaluating the Cabal file" <> value buildPlatform <> showDefaultWith display)
98 <*> optional (strOption $ long "subpath" <> metavar "PATH" <> help "Path to Cabal file's directory relative to the URI (default is root directory)")
88 <*> optional (strOption $ long "subpath" <> metavar "PATH" <> help "Path to Cabal file's directory relative to the URI (default is root directory)")
99 <*> optional (option utcTimeReader (long "hackage-snapshot" <> help "hackage snapshot time, ISO format"))
89 <*> optional (option utcTimeReader (long "hackage-snapshot" <> help "hackage snapshot time, ISO format"))
100− <*> pure (\i -> Just (binding # (i, path # [ident # "pkgs", i])))
101 <*> strArgument (metavar "URI")
90 <*> strArgument (metavar "URI")
102− <*> flag True False (long "dont-fetch-submodules" <> help "do not fetch git submodules from git sources")
103
91
104-- | A parser for the date. Hackage updates happen maybe once or twice a month.
92-- | A parser for the date. Hackage updates happen maybe once or twice a month.
105-- Example: parseTime defaultTimeLocale "%FT%T%QZ" "2017-11-20T12:18:35Z" :: Maybe UTCTime
93-- Example: parseTime defaultTimeLocale "%FT%T%QZ" "2017-11-20T12:18:35Z" :: Maybe UTCTime
@@ -109,8 +97,10 @@ utcTimeReader = eitherReader $ \arg ->
109 Nothing -> Left $ "Cannot parse date, ISO format used ('2017-11-20T12:18:35Z'): " ++ arg
97 Nothing -> Left $ "Cannot parse date, ISO format used ('2017-11-20T12:18:35Z'): " ++ arg
110 Just utcTime -> Right utcTime
98 Just utcTime -> Right utcTime
111
99
112−parseCabal :: Parsec a => ReadM a
100+readP :: P.ReadP a a -> ReadM a
113−parseCabal = eitherReader eitherParsec
101+readP p = eitherReader $ \s -> case [ r' | (r',"") <- P.readP_to_S p s ] of
102+ (r:_) -> Right r
103+ _ -> Left ("invalid value " ++ show s)
114
104
115-- | Replicate the normalization performed by GHC_CONVERT_CPU in GHC's aclocal.m4
105-- | Replicate the normalization performed by GHC_CONVERT_CPU in GHC's aclocal.m4
116-- since the output of that is what Cabal parses.
106-- since the output of that is what Cabal parses.
@@ -135,7 +125,6 @@ ghcConvertOS os = case os of
135 "watchos" -> "ios"
125 "watchos" -> "ios"
136 "tvos" -> "ios"
126 "tvos" -> "ios"
137 "linux-android" -> "linux-android"
127 "linux-android" -> "linux-android"
138− "linux-androideabi" -> "linux-androideabi"
139 _ | "linux-" `isPrefixOf` os -> "linux"
128 _ | "linux-" `isPrefixOf` os -> "linux"
140 _ -> fromMaybe os $ listToMaybe
129 _ -> fromMaybe os $ listToMaybe
141 [prefix | prefix <- osPrefixes, prefix `isPrefixOf` os]
130 [prefix | prefix <- osPrefixes, prefix `isPrefixOf` os]
@@ -162,7 +151,7 @@ parsePlatformParts = \case
162pinfo :: ParserInfo Options
151pinfo :: ParserInfo Options
163pinfo = info
152pinfo = info
164 ( helper
153 ( helper
165− <*> infoOption ("cabal2nix " ++ prettyShow version) (long "version" <> help "Show version number")
154+ <*> infoOption ("cabal2nix " ++ display version) (long "version" <> help "Show version number")
166 <*> options
155 <*> options
167 )
156 )
168 ( fullDesc
157 ( fullDesc
@@ -191,21 +180,23 @@ main = bracket (return ()) (\() -> hFlush stdout >> hFlush stderr) $ \() ->
191 cabal2nix =<< getArgs
180 cabal2nix =<< getArgs
192
181
193hpackOverrides :: Derivation -> Derivation
182hpackOverrides :: Derivation -> Derivation
194−hpackOverrides = over phaseOverrides (++ "prePatch = \"hpack\";")
183+hpackOverrides = over phaseOverrides (++ "preConfigure = \"hpack\";")
195 . set (libraryDepends . tool . contains (PP.pkg "hpack")) True
184 . set (libraryDepends . tool . contains (PP.pkg "hpack")) True
196
185
197−cabal2nix' :: Options -> IO (Either Doc Derivation)
186+cabal2nix' :: [String] -> IO (Either Doc Derivation)
198−cabal2nix' opts@Options{..} = do
187+cabal2nix' args = do
199− pkg <- getPackage optHpack optFetchSubmodules optHackageDb optHackageSnapshot $
188+ opts@Options {..} <- handleParseResult $ execParserPure defaultPrefs pinfo args
189+
200− Source optUrl (fromMaybe "" optRevision) (maybe UnknownHash Guess optSha256) (fromMaybe "" optSubpath)
190+ pkg <- getPackage optHpack optHackageDb optHackageSnapshot $ Source optUrl (fromMaybe "" optRevision) (maybe UnknownHash Guess optSha256) (fromMaybe "" optSubpath)
201 processPackage opts pkg
191 processPackage opts pkg
202
192
203−cabal2nixWithDB :: DB.HackageDB -> Options -> IO (Either Doc Derivation)
193+cabal2nixWithDB :: DB.HackageDB -> [String] -> IO (Either Doc Derivation)
204−cabal2nixWithDB db opts@Options{..} = do
194+cabal2nixWithDB db args = do
195+ opts@Options {..} <- handleParseResult $ execParserPure defaultPrefs pinfo args
205 when (isJust optHackageDb) $ hPutStrLn stderr "WARN: HackageDB provided directly; ignoring --hackage-db"
196 when (isJust optHackageDb) $ hPutStrLn stderr "WARN: HackageDB provided directly; ignoring --hackage-db"
206 when (isJust optHackageSnapshot) $ hPutStrLn stderr "WARN: HackageDB provided directly; ignoring --hackage-snapshot"
197 when (isJust optHackageSnapshot) $ hPutStrLn stderr "WARN: HackageDB provided directly; ignoring --hackage-snapshot"
207− pkg <- getPackage' optHpack optFetchSubmodules (return db) $
198+
208− Source optUrl (fromMaybe "" optRevision) (maybe UnknownHash Guess optSha256) (fromMaybe "" optSubpath)
199+ pkg <- getPackage' optHpack (return db) $ Source optUrl (fromMaybe "" optRevision) (maybe UnknownHash Guess optSha256) (fromMaybe "" optSubpath)
209 processPackage opts pkg
200 processPackage opts pkg
210
201
211processPackage :: Options -> Package -> IO (Either Doc Derivation)
202processPackage :: Options -> Package -> IO (Either Doc Derivation)
@@ -219,7 +210,7 @@ processPackage Options{..} pkg = do
219
210
220 deriv :: Derivation
211 deriv :: Derivation
221 deriv = withHpackOverrides $ fromGenericPackageDescription (const True)
212 deriv = withHpackOverrides $ fromGenericPackageDescription (const True)
222− optNixpkgsIdentifier
213+ (\i -> Just (binding # (i, path # [i])))
223 optSystem
214 optSystem
224 (unknownCompilerInfo optCompiler NoAbiTag)
215 (unknownCompilerInfo optCompiler NoAbiTag)
225 flags
216 flags
@@ -227,7 +218,7 @@ processPackage Options{..} pkg = do
227 (pkgCabal pkg)
218 (pkgCabal pkg)
228 & src .~ pkgSource pkg
219 & src .~ pkgSource pkg
229 & subpath .~ fromMaybe "." optSubpath
220 & subpath .~ fromMaybe "." optSubpath
230− & runHaddock %~ (optHaddock &&)
221+ & runHaddock .~ optHaddock
231 & jailbreak .~ optJailbreak
222 & jailbreak .~ optJailbreak
232 & hyperlinkSource .~ optHyperlinkSource
223 & hyperlinkSource .~ optHyperlinkSource
233 & enableLibraryProfiling .~ (fromMaybe False optEnableProfiling || optEnableLibraryProfiling)
224 & enableLibraryProfiling .~ (fromMaybe False optEnableProfiling || optEnableLibraryProfiling)
@@ -235,7 +226,6 @@ processPackage Options{..} pkg = do
235 & metaSection.maintainers .~ Set.fromList (map (review ident) optMaintainer)
226 & metaSection.maintainers .~ Set.fromList (map (review ident) optMaintainer)
236-- & metaSection.platforms .~ Set.fromList optPlatform
227-- & metaSection.platforms .~ Set.fromList optPlatform
237 & doCheck &&~ optDoCheck
228 & doCheck &&~ optDoCheck
238− & doBenchmark ||~ optDoBenchmark
239 & extraFunctionArgs %~ Set.union (Set.fromList ("inherit stdenv":map (fromString . ("inherit " ++)) optExtraArgs))
229 & extraFunctionArgs %~ Set.union (Set.fromList ("inherit stdenv":map (fromString . ("inherit " ++)) optExtraArgs))
240
230
241 shell :: Doc
231 shell :: Doc
@@ -263,12 +253,11 @@ processPackage Options{..} pkg = do
263 pure $ if optNixShellOutput then Left shell else Right deriv
253 pure $ if optNixShellOutput then Left shell else Right deriv
264
254
265cabal2nix :: [String] -> IO ()
255cabal2nix :: [String] -> IO ()
266−cabal2nix = parseArgs >=> cabal2nix' >=> putStrLn . either render prettyShow
256+cabal2nix args = do
267−
257+ v <- cabal2nix' args
268−parseArgs :: [String] -> IO Options
258+ print $ case v of
269−parseArgs = handleParseResult . execParserPure defaultPrefs pinfo
259+ Left shell -> shell
270−
260+ Right d -> pPrint d
271−-- Utils
272
261
273readFlagList :: [String] -> FlagAssignment
262readFlagList :: [String] -> FlagAssignment
274readFlagList = mkFlagAssignment . map tagWithValue
263readFlagList = mkFlagAssignment . map tagWithValue
src/Distribution/Nixpkgs/Fetch.hs+8−46
@@ -6,7 +6,7 @@
6module Distribution.Nixpkgs.Fetch
6module Distribution.Nixpkgs.Fetch
7 ( Source(..)
7 ( Source(..)
8 , Hash(..)
8 , Hash(..)
9− , DerivationSource(..), fromDerivationSource, urlDerivationSource
9+ , DerivationSource(..), fromDerivationSource
10 , fetch
10 , fetch
11 , fetchWith
11 , fetchWith
12 ) where
12 ) where
@@ -18,10 +18,7 @@ import Control.Monad.IO.Class
18import Control.Monad.Trans.Maybe
18import Control.Monad.Trans.Maybe
19import Data.Aeson
19import Data.Aeson
20import qualified Data.ByteString.Lazy.Char8 as BS
20import qualified Data.ByteString.Lazy.Char8 as BS
21−import qualified Data.List as L
22−import Data.Maybe
23import GHC.Generics ( Generic )
21import GHC.Generics ( Generic )
24−import Language.Nix.PrettyPrinting as PP
25import System.Directory
22import System.Directory
26import System.Environment
23import System.Environment
27import System.Exit
24import System.Exit
@@ -59,7 +56,6 @@ data DerivationSource = DerivationSource
59 , derivUrl :: String -- ^ URL to fetch from.
56 , derivUrl :: String -- ^ URL to fetch from.
60 , derivRevision :: String -- ^ Revision to use. Leave empty if the fetcher doesn't support revisions.
57 , derivRevision :: String -- ^ Revision to use. Leave empty if the fetcher doesn't support revisions.
61 , derivHash :: String -- ^ The hash of the source.
58 , derivHash :: String -- ^ The hash of the source.
62− , derivSubmodule :: Maybe Bool -- ^ The fetchSubmodule setting (if any)
63 }
59 }
64 deriving (Show, Eq, Ord, Generic)
60 deriving (Show, Eq, Ord, Generic)
65
61
@@ -70,46 +66,22 @@ instance FromJSON DerivationSource where
70 <$> o .: "url"
66 <$> o .: "url"
71 <*> o .: "rev"
67 <*> o .: "rev"
72 <*> o .: "sha256"
68 <*> o .: "sha256"
73− <*> o .: "fetchSubmodules"
74 parseJSON _ = error "invalid DerivationSource"
69 parseJSON _ = error "invalid DerivationSource"
75
70
76−instance PP.Pretty DerivationSource where
77− pPrint DerivationSource {..} =
78− let isHackagePackage = "mirror://hackage/" `L.isPrefixOf` derivUrl
79− fetched = derivKind /= ""
80− in if isHackagePackage then attr "sha256" $ string derivHash
81− else if not fetched then attr "src" $ text derivUrl
82− else vcat
83− [ text "src" <+> equals <+> text ("fetch" ++ derivKind) <+> lbrace
84− , nest 2 $ vcat
85− [ attr "url" $ string derivUrl
86− , attr "sha256" $ string derivHash
87− , if derivRevision /= "" then attr "rev" (string derivRevision) else PP.empty
88− , boolattr "fetchSubmodules" (isJust derivSubmodule) (fromJust derivSubmodule)
89− ]
90− , rbrace PP.<> semi
91− ]
92−
93−
94−urlDerivationSource :: String -> String -> DerivationSource
95−urlDerivationSource url hash = DerivationSource "url" url "" hash Nothing
96−
97fromDerivationSource :: DerivationSource -> Source
71fromDerivationSource :: DerivationSource -> Source
98fromDerivationSource DerivationSource{..} = Source derivUrl derivRevision (Certain derivHash) "."
72fromDerivationSource DerivationSource{..} = Source derivUrl derivRevision (Certain derivHash) "."
99
73
100-- | Fetch a source, trying any of the various nix-prefetch-* scripts.
74-- | Fetch a source, trying any of the various nix-prefetch-* scripts.
101−fetch :: forall a.
102− Bool -- ^ If True, fetch submodules when the source is a git repository
103− -> (String -> MaybeT IO a) -- ^ This function is passed the output path name as an argument.
75+fetch :: forall a. (String -> MaybeT IO a) -- ^ This function is passed the output path name as an argument.
104 -- It should return 'Nothing' if the file doesn't match the expected format.
76 -- It should return 'Nothing' if the file doesn't match the expected format.
105 -- This is required, because we cannot always check if a download succeeded otherwise.
77 -- This is required, because we cannot always check if a download succeeded otherwise.
106 -> Source -- ^ The source to fetch from.
78 -> Source -- ^ The source to fetch from.
107 -> IO (Maybe (DerivationSource, a)) -- ^ The derivation source and the result of the processing function. Returns Nothing if the download failed.
79 -> IO (Maybe (DerivationSource, a)) -- ^ The derivation source and the result of the processing function. Returns Nothing if the download failed.
108−fetch optSubModules f = runMaybeT . fetchers where
80+fetch f = runMaybeT . fetchers where
109 fetchers :: Source -> MaybeT IO (DerivationSource, a)
81 fetchers :: Source -> MaybeT IO (DerivationSource, a)
110 fetchers source = msum . (fetchLocal source :) $ map (\fetcher -> fetchWith fetcher source >>= process)
82 fetchers source = msum . (fetchLocal source :) $ map (\fetcher -> fetchWith fetcher source >>= process)
111 [ (False, "url", [])
83 [ (False, "url", [])
112− , (True, "git", ["--fetch-submodules" | optSubModules ])
84+ , (True, "git", ["--fetch-submodules"])
113 , (True, "hg", [])
85 , (True, "hg", [])
114 , (True, "svn", [])
86 , (True, "svn", [])
115 , (True, "bzr", [])
87 , (True, "bzr", [])
@@ -128,19 +100,17 @@ fetch optSubModules f = runMaybeT . fetchers where
128 guard $ existsDir || existsFile
100 guard $ existsDir || existsFile
129 let path' | '/' `elem` path = path
101 let path' | '/' `elem` path = path
130 | otherwise = "./" ++ path
102 | otherwise = "./" ++ path
131− process (localDerivationSource path', path') <|> localArchive path'
103+ process (DerivationSource "" path' "" "", path') <|> localArchive path'
132
104
133 localArchive :: FilePath -> MaybeT IO (DerivationSource, a)
105 localArchive :: FilePath -> MaybeT IO (DerivationSource, a)
134 localArchive path = do
106 localArchive path = do
135 absolutePath <- liftIO $ canonicalizePath path
107 absolutePath <- liftIO $ canonicalizePath path
136 unpacked <- snd <$> fetchWith (False, "url", ["--unpack"]) (Source ("file://" ++ absolutePath) "" UnknownHash ".")
108 unpacked <- snd <$> fetchWith (False, "url", ["--unpack"]) (Source ("file://" ++ absolutePath) "" UnknownHash ".")
137− process (localDerivationSource absolutePath, unpacked)
109+ process (DerivationSource "" absolutePath "" "", unpacked)
138
110
139 process :: (DerivationSource, FilePath) -> MaybeT IO (DerivationSource, a)
111 process :: (DerivationSource, FilePath) -> MaybeT IO (DerivationSource, a)
140 process (derivSource, file) = (,) derivSource <$> f file
112 process (derivSource, file) = (,) derivSource <$> f file
141
113
142− localDerivationSource p = DerivationSource "" p "" "" Nothing
143−
144-- | Like 'fetch', but allows to specify which script to use.
114-- | Like 'fetch', but allows to specify which script to use.
145fetchWith :: (Bool, String, [String]) -> Source -> MaybeT IO (DerivationSource, FilePath)
115fetchWith :: (Bool, String, [String]) -> Source -> MaybeT IO (DerivationSource, FilePath)
146fetchWith (supportsRev, kind, addArgs) source = do
116fetchWith (supportsRev, kind, addArgs) source = do
@@ -161,19 +131,11 @@ fetchWith (supportsRev, kind, addArgs) source = do
161 ExitFailure _ -> return Nothing
131 ExitFailure _ -> return Nothing
162 ExitSuccess -> do
132 ExitSuccess -> do
163 buf <- BS.hGetContents stdoutH
133 buf <- BS.hGetContents stdoutH
164− let (l,ls) = case reverse (BS.lines buf) of
134+ let (l:ls) = reverse (BS.lines buf)
165− [] -> error "This can't happen, but GHC doesn't know that."
166− (x:xs) -> (x,xs)
167 buf' = BS.unlines (reverse ls)
135 buf' = BS.unlines (reverse ls)
168 case length ls of
136 case length ls of
169 0 -> return Nothing
137 0 -> return Nothing
170− 1 -> return (Just (DerivationSource { derivKind = kind
138+ 1 -> return (Just (DerivationSource kind (sourceUrl source) "" (BS.unpack (head ls)) , sourceUrl source))
171− , derivUrl = sourceUrl source
172− , derivRevision = ""
173− , derivHash = BS.unpack (head ls)
174− , derivSubmodule = Nothing
175− }
176− , sourceUrl source))
177 _ -> case eitherDecode buf' of
139 _ -> case eitherDecode buf' of
178 Left err -> error ("invalid JSON: " ++ err ++ " in " ++ show buf')
140 Left err -> error ("invalid JSON: " ++ err ++ " in " ++ show buf')
179 Right ds -> return (Just (ds { derivKind = kind }, BS.unpack l))
141 Right ds -> return (Just (ds { derivKind = kind }, BS.unpack l))
src/Distribution/Nixpkgs/Haskell/Constraint.hs+1−1
@@ -9,7 +9,7 @@ import Distribution.Nixpkgs.Haskell.OrphanInstances ( )
9type Constraint = Dependency
9type Constraint = Dependency
10
10
11satisfiesConstraint :: PackageIdentifier -> Constraint -> Bool
11satisfiesConstraint :: PackageIdentifier -> Constraint -> Bool
12−satisfiesConstraint (PackageIdentifier pn v) (Dependency cn vr _) = (pn /= cn) || (v `withinRange` vr)
12+satisfiesConstraint (PackageIdentifier pn v) (Dependency cn vr) = (pn /= cn) || (v `withinRange` vr)
13
13
14satisfiesConstraints :: PackageIdentifier -> [Constraint] -> Bool
14satisfiesConstraints :: PackageIdentifier -> [Constraint] -> Bool
15satisfiesConstraints p = all (satisfiesConstraint p)
15satisfiesConstraints p = all (satisfiesConstraint p)
src/Distribution/Nixpkgs/Haskell/Derivation.hs+17−8
@@ -7,7 +7,7 @@
7module Distribution.Nixpkgs.Haskell.Derivation
7module Distribution.Nixpkgs.Haskell.Derivation
8 ( Derivation, nullDerivation, pkgid, revision, src, subpath, isLibrary, isExecutable
8 ( Derivation, nullDerivation, pkgid, revision, src, subpath, isLibrary, isExecutable
9 , extraFunctionArgs, libraryDepends, executableDepends, testDepends, configureFlags
9 , extraFunctionArgs, libraryDepends, executableDepends, testDepends, configureFlags
10− , cabalFlags, runHaddock, jailbreak, doCheck, doBenchmark, testTarget, hyperlinkSource, enableSplitObjs
10+ , cabalFlags, runHaddock, jailbreak, doCheck, testTarget, hyperlinkSource, enableSplitObjs
11 , enableLibraryProfiling, enableExecutableProfiling, phaseOverrides, editedCabalFile, metaSection
11 , enableLibraryProfiling, enableExecutableProfiling, phaseOverrides, editedCabalFile, metaSection
12 , dependencies, setupDepends, benchmarkDepends, enableSeparateDataOutput
12 , dependencies, setupDepends, benchmarkDepends, enableSeparateDataOutput
13 )
13 )
@@ -15,7 +15,7 @@ module Distribution.Nixpkgs.Haskell.Derivation
15
15
16import Control.DeepSeq
16import Control.DeepSeq
17import Control.Lens
17import Control.Lens
18−import Data.List ( isPrefixOf )
18+import Data.List
19import Data.Set ( Set )
19import Data.Set ( Set )
20import qualified Data.Set as Set
20import qualified Data.Set as Set
21import Data.Set.Lens
21import Data.Set.Lens
@@ -55,7 +55,6 @@ data Derivation = MkDerivation
55 , _runHaddock :: Bool
55 , _runHaddock :: Bool
56 , _jailbreak :: Bool
56 , _jailbreak :: Bool
57 , _doCheck :: Bool
57 , _doCheck :: Bool
58− , _doBenchmark :: Bool
59 , _testTarget :: String
58 , _testTarget :: String
60 , _hyperlinkSource :: Bool
59 , _hyperlinkSource :: Bool
61 , _enableLibraryProfiling :: Bool
60 , _enableLibraryProfiling :: Bool
@@ -87,7 +86,6 @@ nullDerivation = MkDerivation
87 , _runHaddock = error "undefined Derivation.runHaddock"
86 , _runHaddock = error "undefined Derivation.runHaddock"
88 , _jailbreak = error "undefined Derivation.jailbreak"
87 , _jailbreak = error "undefined Derivation.jailbreak"
89 , _doCheck = error "undefined Derivation.doCheck"
88 , _doCheck = error "undefined Derivation.doCheck"
90− , _doBenchmark = error "undefined Derivation.doBenchmark"
91 , _testTarget = error "undefined Derivation.testTarget"
89 , _testTarget = error "undefined Derivation.testTarget"
92 , _hyperlinkSource = error "undefined Derivation.hyperlinkSource"
90 , _hyperlinkSource = error "undefined Derivation.hyperlinkSource"
93 , _enableLibraryProfiling = error "undefined Derivation.enableLibraryProfiling"
91 , _enableLibraryProfiling = error "undefined Derivation.enableLibraryProfiling"
@@ -112,9 +110,9 @@ instance Pretty Derivation where
112 pPrint drv@MkDerivation {..} = funargs (map text ("mkDerivation" : toAscList inputs)) $$ vcat
110 pPrint drv@MkDerivation {..} = funargs (map text ("mkDerivation" : toAscList inputs)) $$ vcat
113 [ text "mkDerivation" <+> lbrace
111 [ text "mkDerivation" <+> lbrace
114 , nest 2 $ vcat
112 , nest 2 $ vcat
115− [ attr "pname" $ doubleQuotes $ pPrint (packageName _pkgid)
113+ [ attr "pname" $ doubleQuotes $ disp (packageName _pkgid)
116− , attr "version" $ doubleQuotes $ pPrint (packageVersion _pkgid)
114+ , attr "version" $ doubleQuotes $ disp (packageVersion _pkgid)
117− , pPrint _src
115+ , sourceAttr _src
118 , onlyIf (_subpath /= ".") $ attr "postUnpack" postUnpack
116 , onlyIf (_subpath /= ".") $ attr "postUnpack" postUnpack
119 , onlyIf (_revision > 0) $ attr "revision" $ doubleQuotes $ int _revision
117 , onlyIf (_revision > 0) $ attr "revision" $ doubleQuotes $ int _revision
120 , onlyIf (not (null _editedCabalFile) && _revision > 0) $ attr "editedCabalFile" $ string _editedCabalFile
118 , onlyIf (not (null _editedCabalFile) && _revision > 0) $ attr "editedCabalFile" $ string _editedCabalFile
@@ -133,7 +131,6 @@ instance Pretty Derivation where
133 , boolattr "doHaddock" (not _runHaddock) _runHaddock
131 , boolattr "doHaddock" (not _runHaddock) _runHaddock
134 , boolattr "jailbreak" _jailbreak _jailbreak
132 , boolattr "jailbreak" _jailbreak _jailbreak
135 , boolattr "doCheck" (not _doCheck) _doCheck
133 , boolattr "doCheck" (not _doCheck) _doCheck
136− , boolattr "doBenchmark" _doBenchmark _doBenchmark
137 , onlyIf (not (null _testTarget)) $ attr "testTarget" $ string _testTarget
134 , onlyIf (not (null _testTarget)) $ attr "testTarget" $ string _testTarget
138 , boolattr "hyperlinkSource" (not _hyperlinkSource) _hyperlinkSource
135 , boolattr "hyperlinkSource" (not _hyperlinkSource) _hyperlinkSource
139 , onlyIf (not (null _phaseOverrides)) $ vcat ((map text . lines) _phaseOverrides)
136 , onlyIf (not (null _phaseOverrides)) $ vcat ((map text . lines) _phaseOverrides)
@@ -151,5 +148,17 @@ instance Pretty Derivation where
151 renderedFlags = [ text "-f" <> (if enable then empty else char '-') <> text (unFlagName f) | (f, enable) <- unFlagAssignment _cabalFlags ]
148 renderedFlags = [ text "-f" <> (if enable then empty else char '-') <> text (unFlagName f) | (f, enable) <- unFlagAssignment _cabalFlags ]
152 ++ map text (toAscList _configureFlags)
149 ++ map text (toAscList _configureFlags)
153 isHackagePackage = "mirror://hackage/" `isPrefixOf` derivUrl _src
150 isHackagePackage = "mirror://hackage/" `isPrefixOf` derivUrl _src
151+ sourceAttr DerivationSource {..}
152+ | isHackagePackage = attr "sha256" $ string derivHash
153+ | derivKind /= "" = vcat
154+ [ text "src" <+> equals <+> text ("fetch" ++ derivKind) <+> lbrace
155+ , nest 2 $ vcat
156+ [ attr "url" $ string derivUrl
157+ , attr "sha256" $ string derivHash
158+ , if derivRevision /= "" then attr "rev" (string derivRevision) else empty
159+ ]
160+ , rbrace <> semi
161+ ]
162+ | otherwise = attr "src" $ text derivUrl
154
163
155 postUnpack = string $ "sourceRoot+=/" ++ _subpath ++ "; echo source root reset to $sourceRoot"
164 postUnpack = string $ "sourceRoot+=/" ++ _subpath ++ "; echo source root reset to $sourceRoot"
src/Distribution/Nixpkgs/Haskell/FromCabal.hs+14−23
@@ -11,6 +11,7 @@ import Data.Maybe
11import Data.Set ( Set )
11import Data.Set ( Set )
12import qualified Data.Set as Set
12import qualified Data.Set as Set
13import Distribution.Compiler
13import Distribution.Compiler
14+import Distribution.License
14import Distribution.Nixpkgs.Haskell
15import Distribution.Nixpkgs.Haskell
15import qualified Distribution.Nixpkgs.Haskell as Nix
16import qualified Distribution.Nixpkgs.Haskell as Nix
16import Distribution.Nixpkgs.Haskell.Constraint
17import Distribution.Nixpkgs.Haskell.Constraint
@@ -52,20 +53,20 @@ finalizeGenericPackageDescription haskellResolver arch compiler flags constraint
52 finalize resolver = finalizePD flags requestedComponents resolver arch compiler constraints genDesc
53 finalize resolver = finalizePD flags requestedComponents resolver arch compiler constraints genDesc
53
54
54 requestedComponents :: ComponentRequestedSpec
55 requestedComponents :: ComponentRequestedSpec
55− requestedComponents = ComponentRequestedSpec
56+ requestedComponents = defaultComponentRequestedSpec
56 { testsRequested = True
57 { testsRequested = True
57 , benchmarksRequested = True
58 , benchmarksRequested = True
58 }
59 }
59
60
60 jailbroken :: HaskellResolver -> HaskellResolver
61 jailbroken :: HaskellResolver -> HaskellResolver
61− jailbroken resolver (Dependency pkg _ _) = resolver (Dependency pkg anyVersion mempty)
62+ jailbroken resolver (Dependency pkg _) = resolver (Dependency pkg anyVersion)
62
63
63 withInternalLibs :: HaskellResolver -> HaskellResolver
64 withInternalLibs :: HaskellResolver -> HaskellResolver
64 withInternalLibs resolver d = depPkgName d `elem` internalNames || resolver d
65 withInternalLibs resolver d = depPkgName d `elem` internalNames || resolver d
65
66
66 internalNames :: [PackageName]
67 internalNames :: [PackageName]
67 internalNames = [ unqualComponentNameToPackageName n | (n,_) <- condSubLibraries genDesc ]
68 internalNames = [ unqualComponentNameToPackageName n | (n,_) <- condSubLibraries genDesc ]
68− ++ [ unqualComponentNameToPackageName n | LSubLibName n <- libName <$> subLibraries (packageDescription genDesc) ]
69+ ++ [ unqualComponentNameToPackageName n | Just n <- libName <$> subLibraries (packageDescription genDesc) ]
69
70
70 in case finalize (jailbroken (withInternalLibs haskellResolver)) of
71 in case finalize (jailbroken (withInternalLibs haskellResolver)) of
71 Left m -> case finalize (const True) of
72 Left m -> case finalize (const True) of
@@ -91,7 +92,6 @@ fromPackageDescription haskellResolver nixpkgsResolver missingDeps flags Package
91 & runHaddock .~ doHaddockPhase
92 & runHaddock .~ doHaddockPhase
92 & jailbreak .~ False
93 & jailbreak .~ False
93 & doCheck .~ True
94 & doCheck .~ True
94− & doBenchmark .~ False
95 & testTarget .~ mempty
95 & testTarget .~ mempty
96 & hyperlinkSource .~ True
96 & hyperlinkSource .~ True
97 & enableSplitObjs .~ True
97 & enableSplitObjs .~ True
@@ -108,7 +108,7 @@ fromPackageDescription haskellResolver nixpkgsResolver missingDeps flags Package
108 & Nix.description .~ synopsis
108 & Nix.description .~ synopsis
109 & Nix.license .~ nixLicense
109 & Nix.license .~ nixLicense
110 & Nix.platforms .~ Nix.allKnownPlatforms
110 & Nix.platforms .~ Nix.allKnownPlatforms
111− & Nix.hydraPlatforms .~ (if isFreeLicense nixLicense then Nix.allKnownPlatforms else Set.empty)
111+ & Nix.hydraPlatforms .~ (if nixLicense == Nix.Known "stdenv.lib.licenses.unfree" then Set.empty else Nix.allKnownPlatforms)
112 & Nix.maintainers .~ mempty
112 & Nix.maintainers .~ mempty
113 & Nix.broken .~ not (null missingDeps)
113 & Nix.broken .~ not (null missingDeps)
114 )
114 )
@@ -116,39 +116,30 @@ fromPackageDescription haskellResolver nixpkgsResolver missingDeps flags Package
116 xrev = maybe 0 read (lookup "x-revision" customFieldsPD)
116 xrev = maybe 0 read (lookup "x-revision" customFieldsPD)
117
117
118 nixLicense :: Nix.License
118 nixLicense :: Nix.License
119− nixLicense = either fromSPDXLicense fromCabalLicense licenseRaw
119+ nixLicense = fromCabalLicense (either licenseFromSPDX id licenseRaw)
120
120
121 resolveInHackage :: Identifier -> Binding
121 resolveInHackage :: Identifier -> Binding
122− resolveInHackage i | (i^.ident) `elem` [ unPackageName n | (Dependency n _ _) <- missingDeps ] = bindNull i
122+ resolveInHackage i | (i^.ident) `elem` [ unPackageName n | (Dependency n _) <- missingDeps ] = bindNull i
123 | otherwise = binding # (i, path # ["self",i]) -- TODO: "self" shouldn't be hardcoded.
123 | otherwise = binding # (i, path # ["self",i]) -- TODO: "self" shouldn't be hardcoded.
124
124
125− -- TODO: This is all very confusing. Haskell packages refer to the Nixpkgs
126− -- derivation 'foo' as 'pkgs.foo', because they live in the 'haskellPackages'
127− -- name space -- not on the top level. Therefore, we built our Nixpkgs lookup
128− -- function so that top level names are returned as 'pkgs.foo'. As a result, we
129− -- end up pre-pending that path to all kinds of names all over the place. I
130− -- suppose the correct approach would be to assume that the lookup function
131− -- returns names that live in the top-level and to adapt the code in
132− -- PostProcess.hs et all to that fact.
133 goodScopes :: Set [Identifier]
125 goodScopes :: Set [Identifier]
134 goodScopes = Set.fromList (map ("pkgs":) [[], ["xorg"], ["xlibs"], ["gnome2"], ["gnome"], ["gnome3"], ["kde4"]])
126 goodScopes = Set.fromList (map ("pkgs":) [[], ["xorg"], ["xlibs"], ["gnome2"], ["gnome"], ["gnome3"], ["kde4"]])
135
127
136 resolveInNixpkgs :: Identifier -> Binding
128 resolveInNixpkgs :: Identifier -> Binding
137 resolveInNixpkgs i
129 resolveInNixpkgs i
138 | i `elem` ["clang","lldb","llvm"] = binding # (i, path # ["self","llvmPackages",i]) -- TODO: evil!
130 | i `elem` ["clang","lldb","llvm"] = binding # (i, path # ["self","llvmPackages",i]) -- TODO: evil!
139− | i == "gtk2" = binding # (i, path # ["pkgs","gtk2"]) -- TODO: these cases should not be necessary
131+ | i == "gtk2" = binding # (i, path # ["pkgs","gnome2","gtk"])
140− | i == "gtk3" = binding # (i, path # ["pkgs","gtk3"])
132+ | i == "gtk3" = binding # (i, path # ["pkgs","gnome3","gtk"])
141− | i == "gtksourceview3" = binding # (i, path # ["pkgs","gtksourceview3"])
133+ | i == "gtksourceview3" = binding # (i, path # ["pkgs","gnome3","gtksourceview"])
142− | i == "vte_291" = binding # (i, path # ["pkgs","vte"])
143 | Just p <- nixpkgsResolver i, init (view (reference . path) p) `Set.member` goodScopes = p
134 | Just p <- nixpkgsResolver i, init (view (reference . path) p) `Set.member` goodScopes = p
144 | otherwise = bindNull i
135 | otherwise = bindNull i
145
136
146 resolveInHackageThenNixpkgs :: Identifier -> Binding
137 resolveInHackageThenNixpkgs :: Identifier -> Binding
147− resolveInHackageThenNixpkgs i | haskellResolver (Dependency (mkPackageName (i^.ident)) anyVersion mempty) = resolveInHackage i
138+ resolveInHackageThenNixpkgs i | haskellResolver (Dependency (mkPackageName (i^.ident)) anyVersion) = resolveInHackage i
148 | otherwise = resolveInNixpkgs i
139 | otherwise = resolveInNixpkgs i
149
140
150 internalLibNames :: [PackageName]
141 internalLibNames :: [PackageName]
151− internalLibNames = [ unqualComponentNameToPackageName n | LSubLibName n <- libName <$> subLibraries ]
142+ internalLibNames = fmap unqualComponentNameToPackageName . catMaybes $ libName <$> subLibraries
152
143
153 doHaddockPhase :: Bool
144 doHaddockPhase :: Bool
154 doHaddockPhase | not (null internalLibNames) = False
145 doHaddockPhase | not (null internalLibNames) = False
@@ -158,7 +149,7 @@ fromPackageDescription haskellResolver nixpkgsResolver missingDeps flags Package
158 convertBuildInfo :: Cabal.BuildInfo -> Nix.BuildInfo
149 convertBuildInfo :: Cabal.BuildInfo -> Nix.BuildInfo
159 convertBuildInfo Cabal.BuildInfo {..} | not buildable = mempty
150 convertBuildInfo Cabal.BuildInfo {..} | not buildable = mempty
160 convertBuildInfo Cabal.BuildInfo {..} = mempty
151 convertBuildInfo Cabal.BuildInfo {..} = mempty
161− & haskell .~ Set.fromList [ resolveInHackage (toNixName x) | (Dependency x _ _) <- targetBuildDepends, x `notElem` internalLibNames ]
152+ & haskell .~ Set.fromList [ resolveInHackage (toNixName x) | (Dependency x _) <- targetBuildDepends, x `notElem` internalLibNames ]
162 & system .~ Set.fromList [ resolveInNixpkgs y | x <- extraLibs, y <- libNixName x ]
153 & system .~ Set.fromList [ resolveInNixpkgs y | x <- extraLibs, y <- libNixName x ]
163 & pkgconfig .~ Set.fromList [ resolveInNixpkgs y | PkgconfigDependency x _ <- pkgconfigDepends, y <- libNixName (unPkgconfigName x) ]
154 & pkgconfig .~ Set.fromList [ resolveInNixpkgs y | PkgconfigDependency x _ <- pkgconfigDepends, y <- libNixName (unPkgconfigName x) ]
164 & tool .~ Set.fromList (map resolveInHackageThenNixpkgs . concatMap buildToolNixName
155 & tool .~ Set.fromList (map resolveInHackageThenNixpkgs . concatMap buildToolNixName
@@ -166,7 +157,7 @@ fromPackageDescription haskellResolver nixpkgsResolver missingDeps flags Package
166
157
167 convertSetupBuildInfo :: Cabal.SetupBuildInfo -> Nix.BuildInfo
158 convertSetupBuildInfo :: Cabal.SetupBuildInfo -> Nix.BuildInfo
168 convertSetupBuildInfo bi = mempty
159 convertSetupBuildInfo bi = mempty
169− & haskell .~ Set.fromList [ resolveInHackage (toNixName x) | (Dependency x _ _) <- Cabal.setupDepends bi ]
160+ & haskell .~ Set.fromList [ resolveInHackage (toNixName x) | (Dependency x _) <- Cabal.setupDepends bi ]
170
161
171bindNull :: Identifier -> Binding
162bindNull :: Identifier -> Binding
172bindNull i = binding # (i, path # ["null"])
163bindNull i = binding # (i, path # ["null"])
src/Distribution/Nixpkgs/Haskell/FromCabal/Configuration.hs+32−28
@@ -1,21 +1,16 @@
1{-# LANGUAGE RecordWildCards #-}
1{-# LANGUAGE RecordWildCards #-}
2+{-# LANGUAGE CPP #-}
2{-# LANGUAGE FlexibleInstances #-}
3{-# LANGUAGE FlexibleInstances #-}
3{-# LANGUAGE OverloadedStrings #-}
4{-# LANGUAGE OverloadedStrings #-}
4{-# LANGUAGE DeriveGeneric #-}
5{-# LANGUAGE DeriveGeneric #-}
5{-# OPTIONS_GHC -fno-warn-orphans #-}
6{-# OPTIONS_GHC -fno-warn-orphans #-}
6
7
7−module Distribution.Nixpkgs.Haskell.FromCabal.Configuration
8+module Distribution.Nixpkgs.Haskell.FromCabal.Configuration ( Configuration(..), readConfiguration, assertConsistency ) where
8− ( Configuration(..), readConfiguration, assertConsistency
9− )
10− where
11
9
12−import Prelude hiding ( fail )
13−
14−import Control.DeepSeq
15import Control.Exception ( throwIO )
10import Control.Exception ( throwIO )
11+import Control.DeepSeq
16import Control.Lens
12import Control.Lens
17−import Control.Monad hiding ( fail )
13+import Control.Monad
18−import Control.Monad.Fail
19import Data.Aeson
14import Data.Aeson
20import Data.Map as Map
15import Data.Map as Map
21import Data.Set as Set
16import Data.Set as Set
@@ -45,22 +40,14 @@ data Configuration = Configuration
45 -- role during dependency resolution.
40 -- role during dependency resolution.
46 , extraPackages :: [Constraint]
41 , extraPackages :: [Constraint]
47
42
43+ -- |We know that these packages won't build, so we give them an empty
44+ -- meta.hydraPlatforms attribute to avoid cluttering our Hydra output with
45+ -- lots of failure messages.
46+ , dontDistributePackages :: Map PackageName (Set Platform)
47+
48 -- |This information is used by the @hackage2nix@ utility to determine the
48 -- |This information is used by the @hackage2nix@ utility to determine the
49 -- 'maintainers' for a given Haskell package.
49 -- 'maintainers' for a given Haskell package.
50 , packageMaintainers :: Map Identifier (Set PackageName)
50 , packageMaintainers :: Map Identifier (Set PackageName)
51−
52− -- |These packages (by design) don't support certain platforms.
53− , unsupportedPlatforms :: Map PackageName (Set Platform)
54−
55− -- |These packages cannot be distributed by Hydra, i.e. because they have an
56− -- unfree license or depend on other tools that cannot be distributed for
57− -- some reason.
58− , dontDistributePackages :: Set PackageName
59−
60− -- |We know that these packages won't compile, so we mark them as broken and
61− -- also disable their meta.hydraPlatforms attribute to avoid cluttering our
62− -- Hydra job with lots of failure messages.
63− , brokenPackages :: [Constraint]
64 }
51 }
65 deriving (Show, Generic)
52 deriving (Show, Generic)
66
53
@@ -72,33 +59,50 @@ instance FromJSON Configuration where
72 <*> o .:? "core-packages" .!= mempty
59 <*> o .:? "core-packages" .!= mempty
73 <*> o .:? "default-package-overrides" .!= mempty
60 <*> o .:? "default-package-overrides" .!= mempty
74 <*> o .:? "extra-packages" .!= mempty
61 <*> o .:? "extra-packages" .!= mempty
75− <*> o .:? "package-maintainers" .!= mempty
76− <*> o .:? "unsupported-platforms" .!= mempty
77 <*> o .:? "dont-distribute-packages" .!= mempty
62 <*> o .:? "dont-distribute-packages" .!= mempty
78− <*> o .:? "broken-packages" .!= mempty
63+ <*> o .:? "package-maintainers" .!= mempty
79 parseJSON _ = error "invalid Configuration"
64 parseJSON _ = error "invalid Configuration"
80
65
81instance FromJSON Identifier where
66instance FromJSON Identifier where
82 parseJSON (String s) = pure (review ident (T.unpack s))
67 parseJSON (String s) = pure (review ident (T.unpack s))
83 parseJSON s = fail ("parseJSON: " ++ show s ++ " is not a valid Nix identifier")
68 parseJSON s = fail ("parseJSON: " ++ show s ++ " is not a valid Nix identifier")
84
69
70+#if MIN_VERSION_aeson(1,0,0)
71+
85instance FromJSONKey Identifier where
72instance FromJSONKey Identifier where
86 fromJSONKey = FromJSONKeyText parseKey
73 fromJSONKey = FromJSONKeyText parseKey
87
74
88instance FromJSONKey PackageName where
75instance FromJSONKey PackageName where
89 fromJSONKey = FromJSONKeyText parseKey
76 fromJSONKey = FromJSONKeyText parseKey
90
77
78+#elif MIN_VERSION_aeson(0,11,0)
79+
80+instance (FromJSON v) => FromJSON (Map Identifier v) where
81+ parseJSON = fmap (Map.mapKeys parseKey) . parseJSON
82+
83+instance (FromJSON v) => FromJSON (Map PackageName v) where
84+ parseJSON = fmap (Map.mapKeys parseKey) . parseJSON
85+
86+#else
87+
88+instance (Ord k, FromJSON k, FromJSON v) => FromJSON (Map k v) where
89+ parseJSON = fmap (Map.mapKeys parseKey) . parseJSON
90+
91+#endif
92+
91parseKey :: FromJSON k => Text -> k
93parseKey :: FromJSON k => Text -> k
92parseKey s = either error id (parseEither parseJSON (String s))
94parseKey s = either error id (parseEither parseJSON (String s))
93
95
94readConfiguration :: FilePath -> IO Configuration
96readConfiguration :: FilePath -> IO Configuration
97+readConfiguration path =
95−readConfiguration path = decodeFileEither path >>= either throwIO assertConsistency
98+ decodeFileEither path >>= either throwIO assertConsistency
96
99
97−assertConsistency :: MonadFail m => Configuration -> m Configuration
100+assertConsistency :: Monad m => Configuration -> m Configuration
98assertConsistency cfg@Configuration {..} = do
101assertConsistency cfg@Configuration {..} = do
99 let report msg = fail ("*** configuration error: " ++ msg)
102 let report msg = fail ("*** configuration error: " ++ msg)
103+
100 maintainedPackages = Set.unions (Map.elems packageMaintainers)
104 maintainedPackages = Set.unions (Map.elems packageMaintainers)
101− disabledPackages = dontDistributePackages `Set.union` Set.fromList (depPkgName <$> brokenPackages)
105+ disabledPackages = Map.keysSet dontDistributePackages
102 disabledMaintainedPackages = maintainedPackages `Set.intersection` disabledPackages
106 disabledMaintainedPackages = maintainedPackages `Set.intersection` disabledPackages
103 unless (Set.null disabledMaintainedPackages) $
107 unless (Set.null disabledMaintainedPackages) $
104 report ("disabled packages that have a maintainer: " ++ show disabledMaintainedPackages)
108 report ("disabled packages that have a maintainer: " ++ show disabledMaintainedPackages)
src/Distribution/Nixpkgs/Haskell/FromCabal/Flags.hs+16−17
@@ -4,7 +4,6 @@ module Distribution.Nixpkgs.Haskell.FromCabal.Flags ( configureCabalFlags ) wher
4
4
5import Distribution.Nixpkgs.Haskell.OrphanInstances ( )
5import Distribution.Nixpkgs.Haskell.OrphanInstances ( )
6
6
7−import Data.Char
8import Distribution.Package
7import Distribution.Package
9import Distribution.PackageDescription
8import Distribution.PackageDescription
10import Distribution.Version
9import Distribution.Version
@@ -16,25 +15,30 @@ configureCabalFlags' :: PackageIdentifier -> [(FlagName,Bool)]
16configureCabalFlags' (PackageIdentifier name version)
15configureCabalFlags' (PackageIdentifier name version)
17 | name == "accelerate-examples"= [disable "opencl"]
16 | name == "accelerate-examples"= [disable "opencl"]
18 | name == "arithmoi" = [disable "llvm"]
17 | name == "arithmoi" = [disable "llvm"]
19− | name == "bustle" = [disable "hgettext"] -- https://gitlab.freedesktop.org/bustle/bustle/issues/13
20 | name == "cabal-plan" = [enable "exe"]
18 | name == "cabal-plan" = [enable "exe"]
21 | name == "cassava" = [disable "bytestring--lt-0_10_4"]
19 | name == "cassava" = [disable "bytestring--lt-0_10_4"]
22 | name == "darcs" = [enable "library", enable "force-char8-encoding"]
20 | name == "darcs" = [enable "library", enable "force-char8-encoding"]
23 | name == "diagrams-builder" = [enable "cairo", enable "svg", enable "ps", enable "rasterific"]
21 | name == "diagrams-builder" = [enable "cairo", enable "svg", enable "ps", enable "rasterific"]
24− | name == "fltkhs" = [enable "opengl"]
25 | name == "folds" = [disable "test-hlint"]
22 | name == "folds" = [disable "test-hlint"]
26 | name == "git-annex" = [ enable "assistant"
23 | name == "git-annex" = [ enable "assistant"
27− , disable "benchmark"
24+ , enable "cryptonite"
28 , enable "dbus"
25 , enable "dbus"
29− , disable "debuglocks"
26+ , enable "desktopnotify"
30− , enable "magicmime"
27+ , enable "dns"
31− , enable "networkbsd"
28+ , enable "feed"
29+ , enable "inotify"
32 , enable "pairing"
30 , enable "pairing"
33 , enable "production"
31 , enable "production"
32+ , enable "quvi"
34 , enable "s3"
33 , enable "s3"
34+ , enable "tahoe"
35+ , enable "tdfa"
36+ , ("testsuite", version `withinRange` "< 6.20170925 || >= 6.20171214")
35 , enable "torrentparser"
37 , enable "torrentparser"
36 , enable "webapp"
38 , enable "webapp"
39+ , enable "webapp-secure"
37 , enable "webdav"
40 , enable "webdav"
41+ , enable "xmpp"
38 ]
42 ]
39 | name == "haskeline" = [enable "terminfo"]
43 | name == "haskeline" = [enable "terminfo"]
40 | name == "haste-compiler" = [enable "portable"]
44 | name == "haste-compiler" = [enable "portable"]
@@ -42,27 +46,22 @@ configureCabalFlags' (PackageIdentifier name version)
42 | name == "hlibsass" && version >= mkVersion [0,1,5]
46 | name == "hlibsass" && version >= mkVersion [0,1,5]
43 = [enable "externalLibsass"]
47 = [enable "externalLibsass"]
44 | name == "hmatrix" = [enable "openblas", enable "disable-default-paths"]
48 | name == "hmatrix" = [enable "openblas", enable "disable-default-paths"]
45− | name == "hslua" = [enable "system-lua", disable "use-pkgconfig"]
49+ | name == "hslua" = [enable "system-lua"]
46 | name == "idris" = [enable "gmp", enable "ffi", enable "curses", ("execonly", version `withinRange` orLaterVersion (mkVersion [1,1,1])) ]
50 | name == "idris" = [enable "gmp", enable "ffi", enable "curses", ("execonly", version `withinRange` orLaterVersion (mkVersion [1,1,1])) ]
47 | name == "io-streams" = [enable "NoInteractiveTests"]
51 | name == "io-streams" = [enable "NoInteractiveTests"]
48 | name == "liquid-fixpoint" = [enable "build-external"]
52 | name == "liquid-fixpoint" = [enable "build-external"]
49 | name == "pandoc" = [enable "https", disable "trypandoc"]
53 | name == "pandoc" = [enable "https", disable "trypandoc"]
50− | name == "pandoc-placetable" = [enable "inlineMarkdown"]
51 | name == "persistent-sqlite" = [enable "systemlib"]
54 | name == "persistent-sqlite" = [enable "systemlib"]
52 | name == "reactive-banana-wx" = [disable "buildExamples"]
55 | name == "reactive-banana-wx" = [disable "buildExamples"]
53 | name == "snap-server" = [enable "openssl"]
56 | name == "snap-server" = [enable "openssl"]
54− | name == "stack" = [enable "disable-git-info", enable "hide-dependency-versions", enable "supported-build"]
57+ | name == "xmobar" = [enable "all_extensions"]
55− | name == "xmobar" = [enable "with_alsa", enable "with_conduit", enable "with_datezone", enable "with_dbus", enable "with_inotify", enable "with_iwlib", enable "with_mpd", enable "with_mpris", enable "with_rtsopts", enable "with_threaded", enable "with_utf8", enable "with_uvmeter", enable "with_weather", enable "with_xft", enable "with_xpm"]
56 | name == "xmonad-extras" = [disable "with_hlist", enable "with_split", enable "with_parsec"]
58 | name == "xmonad-extras" = [disable "with_hlist", enable "with_split", enable "with_parsec"]
57− | name == "yaml" = [("system-libyaml", version >= "0.10.1.1")]
59+ | name == "yaml" = [enable "system-libyaml"]
58 | name == "yi" = [enable "pango", enable "vty"]
60 | name == "yi" = [enable "pango", enable "vty"]
59 | otherwise = []
61 | otherwise = []
60
62
61enable :: String -> (FlagName,Bool)
63enable :: String -> (FlagName,Bool)
62−enable name = (mkFlagName' name, True)
64+enable name = (mkFlagName name, True)
63
65
64disable :: String -> (FlagName,Bool)
66disable :: String -> (FlagName,Bool)
65−disable name = (mkFlagName' name, False)
67+disable name = (mkFlagName name, False)
66−
67−mkFlagName' :: String -> FlagName
68−mkFlagName' = mkFlagName . map toLower
src/Distribution/Nixpkgs/Haskell/FromCabal/License.hs+4−134
@@ -1,20 +1,14 @@
1{-# LANGUAGE ViewPatterns #-}
1{-# LANGUAGE ViewPatterns #-}
2
2
3−module Distribution.Nixpkgs.Haskell.FromCabal.License
3+module Distribution.Nixpkgs.Haskell.FromCabal.License ( fromCabalLicense ) where
4− ( fromCabalLicense
5− , fromSPDXLicense
6− , isFreeLicense
7− ) where
8
4
9−import Data.List (intercalate)
10−import Distribution.License ( License(..), knownLicenses )
11import Distribution.Nixpkgs.License
5import Distribution.Nixpkgs.License
12−import Distribution.Pretty (prettyShow)
6+import Distribution.License ( License(..), knownLicenses )
13−import qualified Distribution.SPDX as SPDX
14import Distribution.Text (display)
7import Distribution.Text (display)
8+import Data.List (intercalate)
15import Distribution.Version
9import Distribution.Version
16
10
17−-- TODO: Programmatically strip trailing zeros from license version numbers.
11+-- TODO: Programatically strip trailing zeros from license version numbers.
18
12
19fromCabalLicense :: Distribution.License.License -> Distribution.Nixpkgs.License.License
13fromCabalLicense :: Distribution.License.License -> Distribution.Nixpkgs.License.License
20fromCabalLicense (GPL Nothing) = Unknown (Just "GPL")
14fromCabalLicense (GPL Nothing) = Unknown (Just "GPL")
@@ -42,129 +36,5 @@ fromCabalLicense (Apache (Just (versionNumbers -> [2,0]))) = Known "stdenv.lib.l
42fromCabalLicense ISC = Known "stdenv.lib.licenses.isc"
36fromCabalLicense ISC = Known "stdenv.lib.licenses.isc"
43fromCabalLicense OtherLicense = Unknown Nothing
37fromCabalLicense OtherLicense = Unknown Nothing
44fromCabalLicense (UnknownLicense "CC0-1.0") = Known "stdenv.lib.licenses.cc0"
38fromCabalLicense (UnknownLicense "CC0-1.0") = Known "stdenv.lib.licenses.cc0"
45−fromCabalLicense (UnknownLicense "BSD3ClauseORApache20") = Known "stdenv.lib.licenses.bsd3"
46fromCabalLicense l = error $ "Distribution.Nixpkgs.Haskell.FromCabal.License.fromCabalLicense: unknown license"
39fromCabalLicense l = error $ "Distribution.Nixpkgs.Haskell.FromCabal.License.fromCabalLicense: unknown license"
47 ++ show l ++"\nChoose one of: " ++ intercalate ", " (map display knownLicenses)
40 ++ show l ++"\nChoose one of: " ++ intercalate ", " (map display knownLicenses)
48−
49−fromSPDXLicense :: SPDX.License -> Distribution.Nixpkgs.License.License
50−fromSPDXLicense SPDX.NONE = Unknown Nothing
51−fromSPDXLicense (SPDX.License expr) =
52− case expr of
53− SPDX.ELicense simpl Nothing ->
54− -- Not handled: license exceptions
55− case simpl of
56− SPDX.ELicenseId lid ->
57− case lid of
58− SPDX.AFL_2_1 -> Known "stdenv.lib.licenses.afl21"
59− SPDX.AFL_3_0 -> Known "stdenv.lib.licenses.afl3"
60− SPDX.AGPL_3_0_only -> Known "stdenv.lib.licenses.agpl3"
61− SPDX.AGPL_3_0_or_later -> Known "stdenv.lib.licenses.agpl3Plus"
62− SPDX.APSL_2_0 -> Known "stdenv.lib.licenses.apsl20"
63− SPDX.Artistic_1_0 -> Known "stdenv.lib.licenses.artistic1"
64− SPDX.Artistic_2_0 -> Known "stdenv.lib.licenses.artistic2"
65− SPDX.Apache_2_0 -> Known "stdenv.lib.licenses.asl20"
66− SPDX.BSL_1_0 -> Known "stdenv.lib.licenses.boost"
67− SPDX.Beerware -> Known "stdenv.lib.licenses.beerware"
68− SPDX.NullBSD -> Known "stdenv.lib.licenses.bsd0"
69− SPDX.BSD_2_Clause -> Known "stdenv.lib.licenses.bsd2"
70− SPDX.BSD_3_Clause -> Known "stdenv.lib.licenses.bsd3"
71− SPDX.BSD_4_Clause -> Known "stdenv.lib.licenses.bsdOriginal"
72− SPDX.ClArtistic -> Known "stdenv.lib.licenses.clArtistic"
73− SPDX.CC0_1_0 -> Known "stdenv.lib.licenses.cc0"
74− SPDX.CC_BY_NC_SA_2_0 -> Known "stdenv.lib.licenses.cc-by-nc-sa-20"
75− SPDX.CC_BY_NC_SA_2_5 -> Known "stdenv.lib.licenses.cc-by-nc-sa-25"
76− SPDX.CC_BY_NC_SA_3_0 -> Known "stdenv.lib.licenses.cc-by-nc-sa-30"
77− SPDX.CC_BY_NC_SA_4_0 -> Known "stdenv.lib.licenses.cc-by-nc-sa-40"
78− SPDX.CC_BY_NC_4_0 -> Known "stdenv.lib.licenses.cc-by-nc-40"
79− SPDX.CC_BY_ND_3_0 -> Known "stdenv.lib.licenses.cc-by-nd-30"
80− SPDX.CC_BY_SA_2_5 -> Known "stdenv.lib.licenses.cc-by-sa-25"
81− SPDX.CC_BY_3_0 -> Known "stdenv.lib.licenses.cc-by-30"
82− SPDX.CC_BY_SA_3_0 -> Known "stdenv.lib.licenses.cc-by-sa-30"
83− SPDX.CC_BY_4_0 -> Known "stdenv.lib.licenses.cc-by-40"
84− SPDX.CC_BY_SA_4_0 -> Known "stdenv.lib.licenses.cc-by-sa-40"
85− SPDX.CDDL_1_0 -> Known "stdenv.lib.licenses.cddl"
86− SPDX.CECILL_2_0 -> Known "stdenv.lib.licenses.cecill20"
87− SPDX.CECILL_B -> Known "stdenv.lib.licenses.cecill-b"
88− SPDX.CECILL_C -> Known "stdenv.lib.licenses.cecill-c"
89− SPDX.CPAL_1_0 -> Known "stdenv.lib.licenses.cpal10"
90− SPDX.CPL_1_0 -> Known "stdenv.lib.licenses.cpl10"
91− SPDX.Curl -> Known "stdenv.lib.licenses.curl"
92− SPDX.DOC -> Known "stdenv.lib.licenses.doc"
93− SPDX.EFL_1_0 -> Known "stdenv.lib.licenses.efl10"
94− SPDX.EFL_2_0 -> Known "stdenv.lib.licenses.efl20"
95− SPDX.EPL_1_0 -> Known "stdenv.lib.licenses.epl10"
96− SPDX.EPL_2_0 -> Known "stdenv.lib.licenses.epl20"
97− SPDX.EUPL_1_1 -> Known "stdenv.lib.licenses.eupl11"
98− SPDX.GFDL_1_2_only -> Known "stdenv.lib.licenses.fdl12"
99− SPDX.GFDL_1_3_only -> Known "stdenv.lib.licenses.fdl13"
100− SPDX.GPL_1_0_only -> Known "stdenv.lib.licenses.gpl1"
101− SPDX.GPL_1_0_or_later -> Known "stdenv.lib.licenses.gpl1Plus"
102− SPDX.GPL_2_0_only -> Known "stdenv.lib.licenses.gpl2"
103− SPDX.GPL_2_0_or_later -> Known "stdenv.lib.licenses.gpl2Plus"
104− SPDX.GPL_3_0_only -> Known "stdenv.lib.licenses.gpl3"
105− SPDX.GPL_3_0_or_later -> Known "stdenv.lib.licenses.gpl3Plus"
106− SPDX.HPND -> Known "stdenv.lib.licenses.hpnd"
107− SPDX.IJG -> Known "stdenv.lib.licenses.ijg"
108− SPDX.ImageMagick -> Known "stdenv.lib.licenses.imagemagick"
109− SPDX.IPA -> Known "stdenv.lib.licenses.ipa"
110− SPDX.IPL_1_0 -> Known "stdenv.lib.licenses.ipl10"
111− SPDX.ISC -> Known "stdenv.lib.licenses.isc"
112− SPDX.JasPer_2_0 -> Known "stdenv.lib.licenses.jasper"
113− SPDX.LGPL_2_0_only -> Known "stdenv.lib.licenses.lgpl2"
114− SPDX.LGPL_2_0_or_later -> Known "stdenv.lib.licenses.lgpl2Plus"
115− SPDX.LGPL_2_1_only -> Known "stdenv.lib.licenses.lgpl21"
116− SPDX.LGPL_2_1_or_later -> Known "stdenv.lib.licenses.lgpl21Plus"
117− SPDX.LGPL_3_0_only -> Known "stdenv.lib.licenses.lgpl3"
118− SPDX.LGPL_3_0_or_later -> Known "stdenv.lib.licenses.lgpl3Plus"
119− SPDX.Libpng -> Known "stdenv.lib.licenses.libpng"
120− SPDX.Libtiff -> Known "stdenv.lib.licenses.libtiff"
121− SPDX.LPPL_1_2 -> Known "stdenv.lib.licenses.lppl12"
122− SPDX.LPPL_1_3c -> Known "stdenv.lib.licenses.lppl13c"
123− SPDX.LPL_1_02 -> Known "stdenv.lib.licenses.lpl-102"
124− SPDX.MIT -> Known "stdenv.lib.licenses.mit"
125− SPDX.MPL_1_0 -> Known "stdenv.lib.licenses.mpl10"
126− SPDX.MPL_1_1 -> Known "stdenv.lib.licenses.mpl11"
127− SPDX.MPL_2_0 -> Known "stdenv.lib.licenses.mpl20"
128− SPDX.MS_PL -> Known "stdenv.lib.licenses.mspl"
129− SPDX.NCSA -> Known "stdenv.lib.licenses.ncsa"
130− SPDX.NPOSL_3_0 -> Known "stdenv.lib.licenses.nposl3"
131− SPDX.OFL_1_1 -> Known "stdenv.lib.licenses.ofl"
132− SPDX.OLDAP_2_8 -> Known "stdenv.lib.licenses.openldap"
133− SPDX.OpenSSL -> Known "stdenv.lib.licenses.openssl"
134− SPDX.OSL_2_1 -> Known "stdenv.lib.licenses.osl21"
135− SPDX.OSL_3_0 -> Known "stdenv.lib.licenses.osl3"
136− SPDX.PHP_3_01 -> Known "stdenv.lib.licenses.php201"
137− SPDX.PostgreSQL -> Known "stdenv.lib.licenses.postgresql"
138− SPDX.Python_2_0 -> Known "stdenv.lib.licenses.psfl"
139− SPDX.QPL_1_0 -> Known "stdenv.lib.licenses.qpl"
140− SPDX.Ruby -> Known "stdenv.lib.licenses.ruby"
141− SPDX.Sendmail -> Known "stdenv.lib.licenses.sendmail"
142− SPDX.SGI_B_2_0 -> Known "stdenv.lib.licenses.sgi-b-0"
143− SPDX.Sleepycat -> Known "stdenv.lib.licenses.sleepycat"
144− SPDX.TCL -> Known "stdenv.lib.licenses.tcltx"
145− SPDX.Unlicense -> Known "stdenv.lib.licenses.unlicense"
146− SPDX.Vim -> Known "stdenv.lib.licenses.vim"
147− SPDX.VSL_1_0 -> Known "stdenv.lib.licenses.vsl10"
148− SPDX.Watcom_1_0 -> Known "stdenv.lib.licenses.watcom"
149− SPDX.W3C -> Known "stdenv.lib.licenses.w3c"
150− SPDX.WTFPL -> Known "stdenv.lib.licenses.wtfpl"
151− SPDX.Zlib -> Known "stdenv.lib.licenses.zlib"
152− SPDX.ZPL_2_0 -> Known "stdenv.lib.licenses.zpl20"
153− SPDX.ZPL_2_1 -> Known "stdenv.lib.licenses.zpl21"
154− _ ->
155− -- Licence is not in Nixpkgs.
156− -- Use the SPDX expression as a free-form license string.
157− Unknown (Just $ prettyShow expr)
158− _ ->
159− -- Not handed: the '+' suffix and user-defined licences references.
160− -- Use the SPDX expression as a free-form license string.
161− Unknown (Just $ prettyShow expr)
162− _ ->
163− -- Not handled: compound expressions, not expressible in Nixpkgs.
164− -- Use the SPDX expression as a free-form license string.
165− Unknown (Just $ prettyShow expr)
166−
167−isFreeLicense :: Distribution.Nixpkgs.License.License -> Bool
168−isFreeLicense (Known "stdenv.lib.licenses.unfree") = False
169−isFreeLicense (Unknown Nothing) = False
170−isFreeLicense _ = True
src/Distribution/Nixpkgs/Haskell/FromCabal/Name.hs+9−23
@@ -29,7 +29,6 @@ libNixName "appindicator-0.1" = return "libappindicator-gtk2"
29libNixName "appindicator3-0.1" = return "libappindicator-gtk3"
29libNixName "appindicator3-0.1" = return "libappindicator-gtk3"
30libNixName "asound" = return "alsaLib"
30libNixName "asound" = return "alsaLib"
31libNixName "b2" = return "libb2"
31libNixName "b2" = return "libb2"
32−libNixName "boost_context" = return "boost"
33libNixName "bz2" = return "bzip2"
32libNixName "bz2" = return "bzip2"
34libNixName "c++" = [] -- What is that?
33libNixName "c++" = [] -- What is that?
35libNixName "cairo-gobject" = return "cairo"
34libNixName "cairo-gobject" = return "cairo"
@@ -39,7 +38,7 @@ libNixName "cairo-svg" = return "cairo"
39libNixName "crypt" = [] -- provided by glibc
38libNixName "crypt" = [] -- provided by glibc
40libNixName "crypto" = return "openssl"
39libNixName "crypto" = return "openssl"
41libNixName "curses" = return "ncurses"
40libNixName "curses" = return "ncurses"
42−libNixName "dbusmenu-glib-0.4" = return "libdbusmenu"
41+libNixName "dbusmenu-glib-0.4" = return "libdbusmenu-glib"
43libNixName "dbusmenu-gtk3-0.4" = ["libdbusmenu-gtk3", "gtk3"]
42libNixName "dbusmenu-gtk3-0.4" = ["libdbusmenu-gtk3", "gtk3"]
44libNixName "dl" = [] -- provided by glibc
43libNixName "dl" = [] -- provided by glibc
45libNixName "fftw3" = return "fftw"
44libNixName "fftw3" = return "fftw"
@@ -48,7 +47,7 @@ libNixName "gconf" = return "GConf"
48libNixName "gconf-2.0" = return "GConf"
47libNixName "gconf-2.0" = return "GConf"
49libNixName "gdk-2.0" = return "gtk2"
48libNixName "gdk-2.0" = return "gtk2"
50libNixName "gdk-3.0" = return "gtk3"
49libNixName "gdk-3.0" = return "gtk3"
51−libNixName "gdk-pixbuf-2.0" = return "gdk-pixbuf"
50+libNixName "gdk-pixbuf-2.0" = return "gdk_pixbuf"
52libNixName "gdk-x11-2.0" = return "gdk_x11"
51libNixName "gdk-x11-2.0" = return "gdk_x11"
53libNixName "gdk-x11-3.0" = return "gtk3"
52libNixName "gdk-x11-3.0" = return "gtk3"
54libNixName "gio-2.0" = return "glib"
53libNixName "gio-2.0" = return "glib"
@@ -56,11 +55,11 @@ libNixName "GL" = return "libGL"
56libNixName "GLU" = ["libGLU","libGL"]
55libNixName "GLU" = ["libGLU","libGL"]
57libNixName "glut" = ["freeglut","libGLU","libGL"]
56libNixName "glut" = ["freeglut","libGLU","libGL"]
58libNixName "gnome-keyring" = return "gnome-keyring"
57libNixName "gnome-keyring" = return "gnome-keyring"
59−libNixName "gnome-keyring-1" = return "libgnome-keyring"
58+libNixName "gnome-keyring-1" = return "gnome-keyring"
60libNixName "gnome-vfs-2.0" = return "gnome-vfs"
59libNixName "gnome-vfs-2.0" = return "gnome-vfs"
61libNixName "gnome-vfs-module-2.0" = return "gnome-vfs_module"
60libNixName "gnome-vfs-module-2.0" = return "gnome-vfs_module"
62libNixName "gobject-2.0" = return "glib"
61libNixName "gobject-2.0" = return "glib"
63−libNixName "gobject-introspection-1.0" = return "gobject-introspection"
62+libNixName "gobject-introspection-1.0" = return "gobjectIntrospection"
64libNixName "gstreamer-audio-0.10" = return "gst-plugins-base"
63libNixName "gstreamer-audio-0.10" = return "gst-plugins-base"
65libNixName "gstreamer-audio-1.0" = return "gst-plugins-base"
64libNixName "gstreamer-audio-1.0" = return "gst-plugins-base"
66libNixName "gstreamer-base-0.10" = return "gst-plugins-base"
65libNixName "gstreamer-base-0.10" = return "gst-plugins-base"
@@ -85,8 +84,8 @@ libNixName "ImageMagick" = return "imagemagick"
85libNixName "Imlib2" = return "imlib2"
84libNixName "Imlib2" = return "imlib2"
86libNixName "iw" = return "wirelesstools"
85libNixName "iw" = return "wirelesstools"
87libNixName "jack" = return "libjack2"
86libNixName "jack" = return "libjack2"
88−libNixName "javascriptcoregtk-3.0" = return "webkitgtk24x-gtk3" -- These are the old APIs, of which 2.4 is the last provider, so map directly to that.
87+libNixName "javascriptcoregtk-3.0" = return "webkitgtk24x-gtk3" -- These are the old APIs, of which 2.4 is the last provider, so map directly to that.
89−libNixName "javascriptcoregtk-4.0" = return "webkitgtk"
88+libNixName "javascriptcoregtk-4.0" = return "webkitgtk" -- This is the current API, so let it reference an alias for the latest version.
90libNixName "jpeg" = return "libjpeg"
89libNixName "jpeg" = return "libjpeg"
91libNixName "jvm" = return "jdk"
90libNixName "jvm" = return "jdk"
92libNixName "lapack" = return "liblapack"
91libNixName "lapack" = return "liblapack"
@@ -95,26 +94,18 @@ libNixName "ldap" = return "openldap"
95libNixName "libavutil" = return "ffmpeg"
94libNixName "libavutil" = return "ffmpeg"
96libNixName "libgsasl" = return "gsasl"
95libNixName "libgsasl" = return "gsasl"
97libNixName "libpcre" = return "pcre"
96libNixName "libpcre" = return "pcre"
98−libNixName "libpcre2" = return "pcre2"
99−libNixName "libpcre2-8" = libNixName "libpcre2"
100−libNixName "libqrencode" = return "qrencode"
101libNixName "libR" = return "R"
97libNixName "libR" = return "R"
102libNixName "libsoup-gnome-2.4" = return "libsoup"
98libNixName "libsoup-gnome-2.4" = return "libsoup"
103libNixName "libsystemd" = return "systemd"
99libNixName "libsystemd" = return "systemd"
104−libNixName "libudev" = return "systemd"
105libNixName "libxml-2.0" = return "libxml2"
100libNixName "libxml-2.0" = return "libxml2"
106libNixName "libzip" = return "libzip"
101libNixName "libzip" = return "libzip"
107libNixName "libzmq" = return "zeromq"
102libNixName "libzmq" = return "zeromq"
108libNixName "m" = [] -- in stdenv
103libNixName "m" = [] -- in stdenv
109libNixName "magic" = return "file"
104libNixName "magic" = return "file"
110libNixName "MagickWand" = return "imagemagick"
105libNixName "MagickWand" = return "imagemagick"
111−libNixName "mnl" = return "libmnl"
112libNixName "mpi" = return "openmpi"
106libNixName "mpi" = return "openmpi"
113libNixName "ncursesw" = return "ncurses"
107libNixName "ncursesw" = return "ncurses"
114libNixName "netsnmp" = return "net_snmp"
108libNixName "netsnmp" = return "net_snmp"
115−libNixName "nix-expr" = return "nix"
116−libNixName "nix-main" = return "nix"
117−libNixName "nix-store" = return "nix"
118libNixName "notify" = return "libnotify"
109libNixName "notify" = return "libnotify"
119libNixName "odbc" = return "unixODBC"
110libNixName "odbc" = return "unixODBC"
120libNixName "openblas" = return "openblasCompat"
111libNixName "openblas" = return "openblasCompat"
@@ -135,10 +126,10 @@ libNixName "Qt5Gui" = return "qt5"
135libNixName "Qt5Qml" = return "qt5"
126libNixName "Qt5Qml" = return "qt5"
136libNixName "Qt5Quick" = return "qt5"
127libNixName "Qt5Quick" = return "qt5"
137libNixName "Qt5Widgets" = return "qt5"
128libNixName "Qt5Widgets" = return "qt5"
138−libNixName "quadprog" = return "QuadProgpp"
139libNixName "rt" = [] -- in glibc
129libNixName "rt" = [] -- in glibc
140libNixName "rtlsdr" = return "rtl-sdr"
130libNixName "rtlsdr" = return "rtl-sdr"
141libNixName "ruby1.8" = return "ruby"
131libNixName "ruby1.8" = return "ruby"
132+libNixName "sane-backends" = return "saneBackends"
142libNixName "sass" = return "libsass"
133libNixName "sass" = return "libsass"
143libNixName "sctp" = return "lksctp-tools" -- This is linux-specific, we should create a common attribute if we ever add sctp support for other systems.
134libNixName "sctp" = return "lksctp-tools" -- This is linux-specific, we should create a common attribute if we ever add sctp support for other systems.
144libNixName "sdl2" = return "SDL2"
135libNixName "sdl2" = return "SDL2"
@@ -153,20 +144,16 @@ libNixName "stdc++.dll" = [] -- What is that?
153libNixName "systemd-journal" = return "systemd"
144libNixName "systemd-journal" = return "systemd"
154libNixName "tag_c" = return "taglib"
145libNixName "tag_c" = return "taglib"
155libNixName "taglib_c" = return "taglib"
146libNixName "taglib_c" = return "taglib"
156−libNixName "tensorflow" = return "libtensorflow"
157libNixName "udev" = return "systemd";
147libNixName "udev" = return "systemd";
158libNixName "uuid" = return "libossp_uuid";
148libNixName "uuid" = return "libossp_uuid";
159−libNixName "vte-2.91" = return "vte_291"
160libNixName "wayland-client" = return "wayland"
149libNixName "wayland-client" = return "wayland"
161libNixName "wayland-cursor" = return "wayland"
150libNixName "wayland-cursor" = return "wayland"
162libNixName "wayland-egl" = return "libGL"
151libNixName "wayland-egl" = return "libGL"
163libNixName "wayland-server" = return "wayland"
152libNixName "wayland-server" = return "wayland"
164−libNixName "webkit2gtk" = return "webkitgtk"
153+libNixName "webkit2gtk-4.0" = return "webkitgtk" -- This is the current API, so let it reference an alias for the latest version.
165−libNixName "webkit2gtk-4.0" = return "webkitgtk"
166−libNixName "webkit2gtk-web-extension-4.0" = return "webkitgtk"
154+libNixName "webkit2gtk-web-extension-4.0" = return "webkitgtk-web-extension" -- This package doesn't actually exist in nixpkgs at present.
167libNixName "webkitgtk-3.0" = return "webkitgtk24x-gtk3" -- These are the old APIs, of which 2.4 is the last provider, so map directly to that
155libNixName "webkitgtk-3.0" = return "webkitgtk24x-gtk3" -- These are the old APIs, of which 2.4 is the last provider, so map directly to that
168libNixName "X11" = return "libX11"
156libNixName "X11" = return "libX11"
169−libNixName "x11" = return "xlibsWrapper"
170libNixName "xau" = return "libXau"
157libNixName "xau" = return "libXau"
171libNixName "Xcursor" = return "libXcursor"
158libNixName "Xcursor" = return "libXcursor"
172libNixName "xerces-c" = return "xercesc"
159libNixName "xerces-c" = return "xercesc"
@@ -182,7 +169,6 @@ libNixName "Xrender" = return "libXrender"
182libNixName "Xss" = return "libXScrnSaver"
169libNixName "Xss" = return "libXScrnSaver"
183libNixName "Xtst" = return "libXtst"
170libNixName "Xtst" = return "libXtst"
184libNixName "Xxf86vm" = return "libXxf86vm"
171libNixName "Xxf86vm" = return "libXxf86vm"
185−libNixName "yaml" = return "libyaml"
186libNixName "yaml-0.1" = return "libyaml"
172libNixName "yaml-0.1" = return "libyaml"
187libNixName "z" = return "zlib"
173libNixName "z" = return "zlib"
188libNixName "zmq" = return "zeromq"
174libNixName "zmq" = return "zeromq"
src/Distribution/Nixpkgs/Haskell/FromCabal/PostProcess.hs+34−138
@@ -1,19 +1,14 @@
1{-# LANGUAGE OverloadedStrings #-}
1{-# LANGUAGE OverloadedStrings #-}
2−{-# LANGUAGE ScopedTypeVariables #-}
3
2
4module Distribution.Nixpkgs.Haskell.FromCabal.PostProcess ( postProcess, pkg ) where
3module Distribution.Nixpkgs.Haskell.FromCabal.PostProcess ( postProcess, pkg ) where
5
4
6import Control.Lens
5import Control.Lens
7−import Control.Monad.Trans.State
8import Data.List.Split
6import Data.List.Split
9−import Data.Map ( Map )
10−import qualified Data.Map as Map
11−import Data.Map.Lens
12import Data.Set ( Set )
7import Data.Set ( Set )
13import qualified Data.Set as Set
8import qualified Data.Set as Set
9+import Data.Set.Lens
14import Distribution.Nixpkgs.Haskell
10import Distribution.Nixpkgs.Haskell
15import Distribution.Nixpkgs.Meta
11import Distribution.Nixpkgs.Meta
16−import Distribution.Nixpkgs.License
17import Distribution.Package
12import Distribution.Package
18import Distribution.System
13import Distribution.System
19import Distribution.Text
14import Distribution.Text
@@ -21,11 +16,7 @@ import Distribution.Version
21import Language.Nix
16import Language.Nix
22
17
23postProcess :: Derivation -> Derivation
18postProcess :: Derivation -> Derivation
24−postProcess deriv =
25− foldr (.) id [ f | (Dependency n vr _, f) <- hooks, packageName deriv == n, packageVersion deriv `withinRange` vr ]
19+postProcess deriv = foldr ($) (fixGtkBuilds deriv) [ f | (Dependency n vr, f) <- hooks, packageName deriv == n, packageVersion deriv `withinRange` vr ]
26− . fixGtkBuilds
27− . fixBuildDependsForTools
28− $ deriv
29
20
30fixGtkBuilds :: Derivation -> Derivation
21fixGtkBuilds :: Derivation -> Derivation
31fixGtkBuilds drv = drv & dependencies . pkgconfig %~ Set.filter (not . collidesWithHaskellName)
22fixGtkBuilds drv = drv & dependencies . pkgconfig %~ Set.filter (not . collidesWithHaskellName)
@@ -33,79 +24,41 @@ fixGtkBuilds drv = drv & dependencies . pkgconfig %~ Set.filter (not . collidesW
33 & dependencies . tool %~ Set.filter (not . collidesWithHaskellName)
24 & dependencies . tool %~ Set.filter (not . collidesWithHaskellName)
34 where
25 where
35 collidesWithHaskellName :: Binding -> Bool
26 collidesWithHaskellName :: Binding -> Bool
36− collidesWithHaskellName b = case buildDeps Map.!? view localName b of
27+ collidesWithHaskellName b = view localName b `Set.member` buildDeps
37− Nothing -> False -- totally uncollided
38− Just p -> p /= view reference b -- identical is not collision, and important to preserve for cross
39
28
40 myName :: Identifier
29 myName :: Identifier
41 myName = ident # unPackageName (packageName drv)
30 myName = ident # unPackageName (packageName drv)
42
31
43− buildDeps :: Map Identifier Path
32+ buildDeps :: Set Identifier
44− buildDeps = Map.delete myName (toMapOf (dependencies . haskell . to Set.toList . traverse . binding . ifolded) drv)
33+ buildDeps = Set.delete myName (setOf (dependencies . haskell . folded . localName) drv)
45−
46−-- Per https://github.com/haskell/cabal/issues/5412 hvr considers
47−-- `build-depends` providing executables an accident, and fragile one at that,
48−-- unworthy of any compatibility hacks. But while he and the other Hackage
49−-- maintainers is dedicated to fixing executables and libraries on Hackage, test
50−-- suites and benchmarks are not a priority, as it is trivial to skip building
51−-- test-suites with cabal-install. Nix however wishes to build test suites much
52−-- more widely, so skipping those components is not an option.
53−--
54−-- Between that, and Stack not changing behavior as of
55−-- https://github.com/commercialhaskell/stack/pull/4132, it seems likely that
56−-- for a while packages scraped from Hackage will continue to improperly use
57−-- `build-depends: package-for-tool` instead of `build-tool-depends` (which does
58−-- also work for Stack). Until that changes, we provide do this to work around
59−-- those package's brokenness.
60−fixBuildDependsForTools :: Derivation -> Derivation
61−fixBuildDependsForTools = foldr (.) id
62− [ fmap snd $ runState $ do
63− needs <- use $ cloneLens c . haskell . contains p
64− cloneLens c . tool . contains p ||= needs
65− | (c :: ALens' Derivation BuildInfo) <- [ testDepends, benchmarkDepends ]
66− , p <- self <$> [ "hspec-discover"
67− , "tasty-discover"
68− , "hsx2hs"
69− , "markdown-unlit"
70− ]
71− ]
72
34
73hooks :: [(Dependency, Derivation -> Derivation)]
35hooks :: [(Dependency, Derivation -> Derivation)]
74hooks =
36hooks =
75 [ ("Agda < 2.5", set (executableDepends . tool . contains (pkg "emacs")) True . set phaseOverrides agdaPostInstall)
37 [ ("Agda < 2.5", set (executableDepends . tool . contains (pkg "emacs")) True . set phaseOverrides agdaPostInstall)
76 , ("Agda >= 2.5", set (executableDepends . tool . contains (pkg "emacs")) True . set phaseOverrides agda25PostInstall)
38 , ("Agda >= 2.5", set (executableDepends . tool . contains (pkg "emacs")) True . set phaseOverrides agda25PostInstall)
77 , ("alex < 3.1.5", set (testDepends . tool . contains (pkg "perl")) True)
39 , ("alex < 3.1.5", set (testDepends . tool . contains (pkg "perl")) True)
78− , ("alex", set (executableDepends . tool . contains (self "happy")) True)
40+ , ("alex", set (executableDepends . tool . contains (bind "self.happy")) True)
79− , ("alsa-core", over (metaSection . platforms) (Set.filter (\(Platform _ os) -> os == Linux)))
41+ , ("alsa-core", over (metaSection . platforms) (Set.filter (\(Platform _ os) -> os == Linux))) , ("bustle", set (libraryDepends . pkgconfig . contains "system-glib = pkgs.glib") True)
80 , ("bindings-GLFW", over (libraryDepends . system) (Set.union (Set.fromList [bind "pkgs.xorg.libXext", bind "pkgs.xorg.libXfixes"])))
42 , ("bindings-GLFW", over (libraryDepends . system) (Set.union (Set.fromList [bind "pkgs.xorg.libXext", bind "pkgs.xorg.libXfixes"])))
81− , ("bindings-lxc", over (metaSection . platforms) (Set.filter (\(Platform _ os) -> os == Linux)))
43+ , ("bindings-lxc", over (metaSection . platforms) (Set.filter (\(Platform _ os) -> os == Linux))) , ("bustle", set (libraryDepends . pkgconfig . contains "system-glib = pkgs.glib") True)
82− , ("bustle", bustleOverrides)
44+ , ("bustle", set (libraryDepends . pkgconfig . contains "system-glib = pkgs.glib") True)
83 , ("Cabal", set doCheck False) -- test suite doesn't work in Nix
45 , ("Cabal", set doCheck False) -- test suite doesn't work in Nix
84− , ("Cabal >2.2", over (setupDepends . haskell) (Set.union (Set.fromList [self "mtl", self "parsec"]))) -- https://github.com/haskell/cabal/issues/5391
85 , ("cabal-helper", set doCheck False) -- https://github.com/DanielG/cabal-helper/issues/17
46 , ("cabal-helper", set doCheck False) -- https://github.com/DanielG/cabal-helper/issues/17
86 , ("cabal-install", set doCheck False . set phaseOverrides cabalInstallPostInstall)
47 , ("cabal-install", set doCheck False . set phaseOverrides cabalInstallPostInstall)
87− , ("cabal2nix > 2", cabal2nixOverrides)
88 , ("darcs", set phaseOverrides darcsInstallPostInstall . set doCheck False)
48 , ("darcs", set phaseOverrides darcsInstallPostInstall . set doCheck False)
89 , ("dbus", set doCheck False) -- don't execute tests that try to access the network
49 , ("dbus", set doCheck False) -- don't execute tests that try to access the network
90 , ("dns", set testTarget "spec") -- don't execute tests that try to access the network
50 , ("dns", set testTarget "spec") -- don't execute tests that try to access the network
91 , ("eventstore", over (metaSection . platforms) (Set.filter (\(Platform arch _) -> arch == X86_64)))
51 , ("eventstore", over (metaSection . platforms) (Set.filter (\(Platform arch _) -> arch == X86_64)))
92 , ("freenect < 1.2.1", over configureFlags (Set.union (Set.fromList ["--extra-include-dirs=${pkgs.freenect}/include/libfreenect", "--extra-lib-dirs=${pkgs.freenect}/lib"])))
52 , ("freenect < 1.2.1", over configureFlags (Set.union (Set.fromList ["--extra-include-dirs=${pkgs.freenect}/include/libfreenect", "--extra-lib-dirs=${pkgs.freenect}/lib"])))
93− , ("fltkhs", set (libraryDepends . system . contains (pkg "fltk14")) True . over (libraryDepends . pkgconfig) (Set.union (pkgs ["libGLU", "libGL"]))) -- TODO: fltk14 belongs into the *setup* dependencies.
94 , ("gf", set phaseOverrides gfPhaseOverrides . set doCheck False)
53 , ("gf", set phaseOverrides gfPhaseOverrides . set doCheck False)
95 , ("gi-cairo", giCairoPhaseOverrides) -- https://github.com/haskell-gi/haskell-gi/issues/36
54 , ("gi-cairo", giCairoPhaseOverrides) -- https://github.com/haskell-gi/haskell-gi/issues/36
96− , ("gi-gdk", set runHaddock True )
97− , ("gi-gio", set runHaddock True )
98− , ("gi-glib", set runHaddock True )
99 , ("gi-gst", giGstLibOverrides "gstreamer") -- https://github.com/haskell-gi/haskell-gi/issues/36
55 , ("gi-gst", giGstLibOverrides "gstreamer") -- https://github.com/haskell-gi/haskell-gi/issues/36
100 , ("gi-gstaudio", giGstLibOverrides "gst-plugins-base") -- https://github.com/haskell-gi/haskell-gi/issues/36
56 , ("gi-gstaudio", giGstLibOverrides "gst-plugins-base") -- https://github.com/haskell-gi/haskell-gi/issues/36
101 , ("gi-gstbase", giGstLibOverrides "gst-plugins-base") -- https://github.com/haskell-gi/haskell-gi/issues/36
57 , ("gi-gstbase", giGstLibOverrides "gst-plugins-base") -- https://github.com/haskell-gi/haskell-gi/issues/36
102 , ("gi-gstvideo", giGstLibOverrides "gst-plugins-base") -- https://github.com/haskell-gi/haskell-gi/issues/36
58 , ("gi-gstvideo", giGstLibOverrides "gst-plugins-base") -- https://github.com/haskell-gi/haskell-gi/issues/36
103− , ("gi-gtk", set runHaddock True )
104 , ("gi-javascriptcore < 4.0.0.0", webkitgtk24xHook) -- https://github.com/haskell-gi/haskell-gi/issues/36
59 , ("gi-javascriptcore < 4.0.0.0", webkitgtk24xHook) -- https://github.com/haskell-gi/haskell-gi/issues/36
105 , ("gi-pango", giCairoPhaseOverrides) -- https://github.com/haskell-gi/haskell-gi/issues/36
60 , ("gi-pango", giCairoPhaseOverrides) -- https://github.com/haskell-gi/haskell-gi/issues/36
106− , ("gi-pango", set runHaddock True )
107 , ("gi-pangocairo", giCairoPhaseOverrides) -- https://github.com/haskell-gi/haskell-gi/issues/36
61 , ("gi-pangocairo", giCairoPhaseOverrides) -- https://github.com/haskell-gi/haskell-gi/issues/36
108− , ("gi-vte", set runHaddock True )
109 , ("gi-webkit", webkitgtk24xHook) -- https://github.com/haskell-gi/haskell-gi/issues/36
62 , ("gi-webkit", webkitgtk24xHook) -- https://github.com/haskell-gi/haskell-gi/issues/36
110 , ("gio", set (libraryDepends . pkgconfig . contains "system-glib = pkgs.glib") True)
63 , ("gio", set (libraryDepends . pkgconfig . contains "system-glib = pkgs.glib") True)
111 , ("git", set doCheck False) -- https://github.com/vincenthz/hit/issues/33
64 , ("git", set doCheck False) -- https://github.com/vincenthz/hit/issues/33
@@ -114,9 +67,7 @@ hooks =
114 , ("github-backup", set (executableDepends . tool . contains (pkg "git")) True)
67 , ("github-backup", set (executableDepends . tool . contains (pkg "git")) True)
115 , ("GLFW", over (libraryDepends . system) (Set.union (Set.fromList [bind "pkgs.xorg.libXext", bind "pkgs.xorg.libXfixes"])))
68 , ("GLFW", over (libraryDepends . system) (Set.union (Set.fromList [bind "pkgs.xorg.libXext", bind "pkgs.xorg.libXfixes"])))
116 , ("GlomeVec", set (libraryDepends . pkgconfig . contains (bind "self.llvmPackages.llvm")) True)
69 , ("GlomeVec", set (libraryDepends . pkgconfig . contains (bind "self.llvmPackages.llvm")) True)
117− , ("graphviz", set (testDepends . system . contains (pkg "graphviz")) True)
118 , ("gtk3", gtk3Hook)
70 , ("gtk3", gtk3Hook)
119− , ("gtkglext", gtkglextHook)
120 , ("haddock", haddockHook) -- https://github.com/haskell/haddock/issues/511
71 , ("haddock", haddockHook) -- https://github.com/haskell/haddock/issues/511
121 , ("hakyll", set (testDepends . tool . contains (pkg "utillinux")) True) -- test suite depends on "rev"
72 , ("hakyll", set (testDepends . tool . contains (pkg "utillinux")) True) -- test suite depends on "rev"
122 , ("haskell-src-exts", set doCheck False)
73 , ("haskell-src-exts", set doCheck False)
@@ -127,34 +78,31 @@ hooks =
127 , ("holy-project", set doCheck False) -- attempts to access the network
78 , ("holy-project", set doCheck False) -- attempts to access the network
128 , ("hoogle", set testTarget "--test-option=--no-net")
79 , ("hoogle", set testTarget "--test-option=--no-net")
129 , ("hsignal < 0.2.7.4", set phaseOverrides "prePatch = \"rm -v Setup.lhs\";") -- https://github.com/amcphail/hsignal/issues/1
80 , ("hsignal < 0.2.7.4", set phaseOverrides "prePatch = \"rm -v Setup.lhs\";") -- https://github.com/amcphail/hsignal/issues/1
130− , ("hslua < 0.9.3", over (libraryDepends . system) (replace (pkg "lua") (pkg "lua5_1")))
81+ , ("hslua < 0.9.3", over (libraryDepends . each) (replace (pkg "lua") (pkg "lua5_1")))
131− , ("hslua >= 0.9.3", over (libraryDepends . system) (replace (pkg "lua") (pkg "lua5_3")))
82+ , ("hslua >= 0.9.3", over (libraryDepends . each) (replace (pkg "lua") (pkg "lua5_3")))
132 , ("hspec-core >= 2.4.4", hspecCoreOverrides)
83 , ("hspec-core >= 2.4.4", hspecCoreOverrides)
133 , ("http-client", set doCheck False) -- attempts to access the network
84 , ("http-client", set doCheck False) -- attempts to access the network
134 , ("http-client-openssl >= 0.2.0.1", set doCheck False) -- attempts to access the network
85 , ("http-client-openssl >= 0.2.0.1", set doCheck False) -- attempts to access the network
135 , ("http-client-tls >= 0.2.2", set doCheck False) -- attempts to access the network
86 , ("http-client-tls >= 0.2.2", set doCheck False) -- attempts to access the network
136 , ("http-conduit", set doCheck False) -- attempts to access the network
87 , ("http-conduit", set doCheck False) -- attempts to access the network
137 , ("imagemagick", set (libraryDepends . pkgconfig . contains (pkg "imagemagick")) True) -- https://github.com/NixOS/cabal2nix/issues/136
88 , ("imagemagick", set (libraryDepends . pkgconfig . contains (pkg "imagemagick")) True) -- https://github.com/NixOS/cabal2nix/issues/136
138− , ("include-file <= 0.1.0.2", set (libraryDepends . haskell . contains (self "random")) True) -- https://github.com/Daniel-Diaz/include-file/issues/1
89+ , ("include-file <= 0.1.0.2", set (libraryDepends . haskell . contains (bind "self.random")) True) -- https://github.com/Daniel-Diaz/include-file/issues/1
139 , ("js-jquery", set doCheck False) -- attempts to access the network
90 , ("js-jquery", set doCheck False) -- attempts to access the network
140 , ("libconfig", over (libraryDepends . system) (replace "config = null" (pkg "libconfig")))
91 , ("libconfig", over (libraryDepends . system) (replace "config = null" (pkg "libconfig")))
141 , ("libxml", set (configureFlags . contains "--extra-include-dir=${libxml2.dev}/include/libxml2") True)
92 , ("libxml", set (configureFlags . contains "--extra-include-dir=${libxml2.dev}/include/libxml2") True)
142 , ("liquid-fixpoint", set (executableDepends . system . contains (pkg "ocaml")) True . set (testDepends . system . contains (pkg "z3")) True . set (testDepends . system . contains (pkg "nettools")) True . set (testDepends . system . contains (pkg "git")) True . set doCheck False)
93 , ("liquid-fixpoint", set (executableDepends . system . contains (pkg "ocaml")) True . set (testDepends . system . contains (pkg "z3")) True . set (testDepends . system . contains (pkg "nettools")) True . set (testDepends . system . contains (pkg "git")) True . set doCheck False)
143 , ("liquidhaskell", set (testDepends . system . contains (pkg "z3")) True)
94 , ("liquidhaskell", set (testDepends . system . contains (pkg "z3")) True)
144− , ("lzma-clib", over (metaSection . platforms) (Set.filter (\(Platform _ os) -> os == Windows)) . set (libraryDepends . haskell . contains (self "only-buildable-on-windows")) False)
95+ , ("lzma-clib", over (metaSection . platforms) (Set.filter (\(Platform _ os) -> os == Windows)) . set (libraryDepends . haskell . contains (bind "self.only-buildable-on-windows")) False)
145− , ("MFlow < 4.6", set (libraryDepends . tool . contains (self "cpphs")) True)
96+ , ("MFlow < 4.6", set (libraryDepends . tool . contains (bind "self.cpphs")) True)
146 , ("mwc-random", set doCheck False)
97 , ("mwc-random", set doCheck False)
147 , ("mysql", set (libraryDepends . system . contains (pkg "mysql")) True)
98 , ("mysql", set (libraryDepends . system . contains (pkg "mysql")) True)
148 , ("network-attoparsec", set doCheck False) -- test suite requires network access
99 , ("network-attoparsec", set doCheck False) -- test suite requires network access
149 , ("numeric-qq", set doCheck False) -- test suite doesn't finish even after 1+ days
100 , ("numeric-qq", set doCheck False) -- test suite doesn't finish even after 1+ days
150 , ("opencv", opencvOverrides)
101 , ("opencv", opencvOverrides)
151− , ("pandoc >= 1.16.0.2 && < 2.5", set doCheck False) -- https://github.com/jgm/pandoc/issues/2709 and https://github.com/fpco/stackage/issues/1332
102+ , ("pandoc >= 1.16.0.2", set doCheck False) -- https://github.com/jgm/pandoc/issues/2709 and https://github.com/fpco/stackage/issues/1332
152− , ("pandoc < 2.6", pandocPre26Overrides)
103+ , ("pandoc", set jailbreak False) -- jailbreak-cabal break the build
153− , ("pandoc >= 2.6", pandocOverrides)
154− , ("pandoc-citeproc", set doCheck False) -- https://github.com/jgm/pandoc-citeproc/issues/369
104+ , ("pandoc-citeproc", set doCheck False) -- https://github.com/jgm/pandoc-citeproc/issues/172
155 , ("purescript", set doCheck False) -- test suite doesn't cope with Nix build env
105 , ("purescript", set doCheck False) -- test suite doesn't cope with Nix build env
156− , ("proto-lens-protobuf-types", set (libraryDepends . tool . contains (pkg "protobuf")) True)
157− , ("proto-lens-protoc", set (libraryDepends . tool . contains (pkg "protobuf")) True)
158 , ("qtah-cpp-qt5", set (libraryDepends . system . contains (bind "pkgs.qt5.qtbase")) True)
106 , ("qtah-cpp-qt5", set (libraryDepends . system . contains (bind "pkgs.qt5.qtbase")) True)
159 , ("qtah-qt5", set (libraryDepends . tool . contains (bind "pkgs.qt5.qtbase")) True)
107 , ("qtah-qt5", set (libraryDepends . tool . contains (bind "pkgs.qt5.qtbase")) True)
160 , ("readline", over (libraryDepends . system) (Set.union (pkgs ["readline", "ncurses"])))
108 , ("readline", over (libraryDepends . system) (Set.union (pkgs ["readline", "ncurses"])))
@@ -168,11 +116,10 @@ hooks =
168 , ("target", set (testDepends . system . contains (pkg "z3")) True)
116 , ("target", set (testDepends . system . contains (pkg "z3")) True)
169 , ("terminfo", set (libraryDepends . system . contains (pkg "ncurses")) True)
117 , ("terminfo", set (libraryDepends . system . contains (pkg "ncurses")) True)
170 , ("text", set doCheck False) -- break infinite recursion
118 , ("text", set doCheck False) -- break infinite recursion
171− , ("tensorflow-proto", set (libraryDepends . tool . contains (pkg "protobuf")) True)
172− , ("thyme", set (libraryDepends . tool . contains (self "cpphs")) True) -- required on Darwin
119+ , ("thyme", set (libraryDepends . tool . contains (bind "self.cpphs")) True) -- required on Darwin
173 , ("twilio", set doCheck False) -- attempts to access the network
120 , ("twilio", set doCheck False) -- attempts to access the network
174 , ("tz", set phaseOverrides "preConfigure = \"export TZDIR=${pkgs.tzdata}/share/zoneinfo\";")
121 , ("tz", set phaseOverrides "preConfigure = \"export TZDIR=${pkgs.tzdata}/share/zoneinfo\";")
175− , ("udev", over (metaSection . platforms) (Set.filter (\(Platform _ os) -> os == Linux)))
122+ , ("udev", over (metaSection . platforms) (Set.filter (\(Platform _ os) -> os == Linux))) , ("bustle", set (libraryDepends . pkgconfig . contains "system-glib = pkgs.glib") True)
176 , ("webkitgtk3", webkitgtk24xHook) -- https://github.com/haskell-gi/haskell-gi/issues/36
123 , ("webkitgtk3", webkitgtk24xHook) -- https://github.com/haskell-gi/haskell-gi/issues/36
177 , ("webkitgtk3-javascriptcore", webkitgtk24xHook) -- https://github.com/haskell-gi/haskell-gi/issues/36
124 , ("webkitgtk3-javascriptcore", webkitgtk24xHook) -- https://github.com/haskell-gi/haskell-gi/issues/36
178 , ("websockets", set doCheck False) -- https://github.com/jaspervdj/websockets/issues/104
125 , ("websockets", set doCheck False) -- https://github.com/jaspervdj/websockets/issues/104
@@ -181,18 +128,14 @@ hooks =
181 , ("wxc", wxcHook)
128 , ("wxc", wxcHook)
182 , ("wxcore", set (libraryDepends . pkgconfig . contains (pkg "wxGTK")) True)
129 , ("wxcore", set (libraryDepends . pkgconfig . contains (pkg "wxGTK")) True)
183 , ("X11", over (libraryDepends . system) (Set.union (Set.fromList $ map bind ["pkgs.xorg.libXinerama","pkgs.xorg.libXext","pkgs.xorg.libXrender","pkgs.xorg.libXScrnSaver"])))
130 , ("X11", over (libraryDepends . system) (Set.union (Set.fromList $ map bind ["pkgs.xorg.libXinerama","pkgs.xorg.libXext","pkgs.xorg.libXrender","pkgs.xorg.libXScrnSaver"])))
184− , ("xmonad >= 0.14.2", set phaseOverrides xmonadPostInstall)
131+ , ("xmonad", set phaseOverrides xmonadPostInstall)
185− , ("zip-archive < 0.3.1", over (testDepends . tool) (replace (self "zip") (pkg "zip")))
132+ , ("zip-archive < 0.3.1", over (testDepends . tool) (replace (bind "self.zip") (pkg "zip")))
186 , ("zip-archive >= 0.3.1 && < 0.3.2.3", over (testDepends . tool) (Set.union (Set.fromList [pkg "zip", pkg "unzip"]))) -- https://github.com/jgm/zip-archive/issues/35
133 , ("zip-archive >= 0.3.1 && < 0.3.2.3", over (testDepends . tool) (Set.union (Set.fromList [pkg "zip", pkg "unzip"]))) -- https://github.com/jgm/zip-archive/issues/35
187− , ("zip-archive >= 0.4", set (testDepends . tool . contains (pkg "which")) True)
188 ]
134 ]
189
135
190pkg :: Identifier -> Binding
136pkg :: Identifier -> Binding
191pkg i = binding # (i, path # ["pkgs",i])
137pkg i = binding # (i, path # ["pkgs",i])
192
138
193−self :: Identifier -> Binding
194−self i = binding # (i, path # ["self",i])
195−
196pkgs :: [Identifier] -> Set Binding
139pkgs :: [Identifier] -> Set Binding
197pkgs = Set.fromList . map pkg
140pkgs = Set.fromList . map pkg
198
141
@@ -202,18 +145,10 @@ bind s = binding # (i, path # is)
202 is = map (review ident) (splitOn "." s)
145 is = map (review ident) (splitOn "." s)
203 i = last is
146 i = last is
204
147
205−-- | @replace old new bset@ replaces the Nix binding @old@ with @new@ in the
206−-- set of bindings @bset@. If @old@ is not found in @bset@, then the function
207−-- fails with an 'error'.
208replace :: Binding -> Binding -> Set Binding -> Set Binding
148replace :: Binding -> Binding -> Set Binding -> Set Binding
209−replace old new bs
210− | old `Set.member` bs = Set.insert new (Set.delete old bs)
149+replace old new bs = if old `Set.member` bs then Set.insert new (Set.delete old bs) else bs
211− | otherwise = error (unwords [ "post-process: cannot replace name binding"
212− , show old, "by", show new
213− , "because it's not found in set"
214− , show bs
215− ])
216
150
151+-- TODO: I need to figure out how to conveniently replace a binding in a set.
217gtk3Hook :: Derivation -> Derivation -- https://github.com/NixOS/cabal2nix/issues/145
152gtk3Hook :: Derivation -> Derivation -- https://github.com/NixOS/cabal2nix/issues/145
218gtk3Hook = set (libraryDepends . pkgconfig . contains (pkg "gtk3")) True
153gtk3Hook = set (libraryDepends . pkgconfig . contains (pkg "gtk3")) True
219 . over (libraryDepends . pkgconfig) (Set.filter (\b -> view localName b /= "gtk3"))
154 . over (libraryDepends . pkgconfig) (Set.filter (\b -> view localName b /= "gtk3"))
@@ -230,12 +165,13 @@ gitAnnexHook = set phaseOverrides gitAnnexOverrides
230 where
165 where
231 gitAnnexOverrides = unlines
166 gitAnnexOverrides = unlines
232 [ "preConfigure = \"export HOME=$TEMPDIR; patchShebangs .\";"
167 [ "preConfigure = \"export HOME=$TEMPDIR; patchShebangs .\";"
233− , "postBuild = ''"
168+ , "installPhase = \"make PREFIX=$out BUILDER=: install\";"
169+ , "checkPhase = ''"
234 , " ln -sf dist/build/git-annex/git-annex git-annex"
170 , " ln -sf dist/build/git-annex/git-annex git-annex"
235 , " ln -sf git-annex git-annex-shell"
171 , " ln -sf git-annex git-annex-shell"
172+ , " export PATH+=\":$PWD\""
173+ , " git-annex test"
236 , "'';"
174 , "'';"
237− , "installPhase = \"make PREFIX=$out BUILDER=: install install-completions\";"
238− , "checkPhase = ''PATH+=\":$PWD\" git-annex test'';"
239 , "enableSharedExecutables = false;"
175 , "enableSharedExecutables = false;"
240 ]
176 ]
241 buildInputs = pkgs ["git","rsync","gnupg","curl","wget","lsof","openssh","which","bup","perl"]
177 buildInputs = pkgs ["git","rsync","gnupg","curl","wget","lsof","openssh","which","bup","perl"]
@@ -256,7 +192,7 @@ gfPhaseOverrides = unlines
256 , " sed -i \"s|numJobs (bf bi)++||\" ./Setup.hs"
192 , " sed -i \"s|numJobs (bf bi)++||\" ./Setup.hs"
257 -- Parallel compilation fails. Disable it.
193 -- Parallel compilation fails. Disable it.
258 , "'';"
194 , "'';"
259− , "preBuild = ''export LD_LIBRARY_PATH=`pwd`/dist/build''${LD_LIBRARY_PATH:+:}$LD_LIBRARY_PATH'';"
195+ , "preBuild = ''export LD_LIBRARY_PATH=`pwd`/dist/build:$LD_LIBRARY_PATH'';"
260 -- The build step itself, after having built the library, needs to be able
196 -- The build step itself, after having built the library, needs to be able
261 -- to find the library it just built in order to compile grammar files.
197 -- to find the library it just built in order to compile grammar files.
262 ]
198 ]
@@ -292,8 +228,10 @@ darcsInstallPostInstall = unlines
292xmonadPostInstall :: String
228xmonadPostInstall :: String
293xmonadPostInstall = unlines
229xmonadPostInstall = unlines
294 [ "postInstall = ''"
230 [ "postInstall = ''"
295− , " install -D man/xmonad.1 ''${!outputDoc}/share/man/man1/xmonad.1"
231+ , " shopt -s globstar"
296− , " install -D man/xmonad.hs ''${!outputDoc}/share/doc/$name/sample-xmonad.hs"
232+ , " mkdir -p $doc/share/man/man1"
233+ , " mv \"$data/\"**\"/man/\"*[0-9] $doc/share/man/man1/"
234+ , " rm \"$data/\"**\"/man/\"*"
297 , "'';"
235 , "'';"
298 ]
236 ]
299
237
@@ -360,50 +298,8 @@ webkitgtk24xHook = set (libraryDepends . pkgconfig . contains (pkg "webkitgtk24x
360opencvOverrides :: Derivation -> Derivation
298opencvOverrides :: Derivation -> Derivation
361opencvOverrides = set phaseOverrides "hardeningDisable = [ \"bindnow\" ];"
299opencvOverrides = set phaseOverrides "hardeningDisable = [ \"bindnow\" ];"
362 . over (libraryDepends . pkgconfig) (replace (pkg "opencv") (pkg "opencv3"))
300 . over (libraryDepends . pkgconfig) (replace (pkg "opencv") (pkg "opencv3"))
301+ . set (configureFlags . contains "--with-gcc=${stdenv.cc}/bin/c++") True
302+ . set (configureFlags . contains "--with-ld=${stdenv.cc}/bin/c++") True
363
303
364hspecCoreOverrides :: Derivation -> Derivation -- https://github.com/hspec/hspec/issues/330
304hspecCoreOverrides :: Derivation -> Derivation -- https://github.com/hspec/hspec/issues/330
365hspecCoreOverrides = set phaseOverrides "testTarget = \"--test-option=--skip --test-option='Test.Hspec.Core.Runner.hspecResult runs specs in parallel'\";"
305hspecCoreOverrides = set phaseOverrides "testTarget = \"--test-option=--skip --test-option='Test.Hspec.Core.Runner.hspecResult runs specs in parallel'\";"
366−
367−cabal2nixOverrides :: Derivation -> Derivation
368−cabal2nixOverrides = set phaseOverrides $ unlines
369− [ "preCheck = ''"
370− , " export PATH=\"$PWD/dist/build/cabal2nix:$PATH\""
371− , " export HOME=\"$TMPDIR/home\""
372− , "'';"
373− ]
374−
375−gtkglextHook :: Derivation -> Derivation
376−gtkglextHook = over (libraryDepends . system) (Set.union (Set.fromList deps))
377− where
378− deps :: [Binding]
379− deps = bind <$> [ "pkgs.gtk2"
380− , "pkgs.libGLU"
381− , "pkgs.xorg.libSM"
382− , "pkgs.xorg.libICE"
383− , "pkgs.xorg.libXt"
384− , "pkgs.xorg.libXmu"
385− ]
386−
387−pandocPre26Overrides :: Derivation -> Derivation
388−pandocPre26Overrides = set phaseOverrides postInstall
389− where
390− postInstall = unlines [ "postInstall = ''"
391− , " mkdir -p $out/share"
392− , " mv $data/*/*/man $out/share/"
393− , "'';"
394− ]
395−
396−pandocOverrides :: Derivation -> Derivation
397−pandocOverrides = set phaseOverrides postInstall
398− where
399− postInstall = unlines [ "postInstall = ''"
400− , " mkdir -p $out/share/man/man1"
401− , " mv \"man/\"*.1 $out/share/man/man1/"
402− , "'';"
403− ]
404−
405−bustleOverrides :: Derivation -> Derivation
406−bustleOverrides = set (libraryDepends . pkgconfig . contains "system-glib = pkgs.glib") True
407− . set (executableDepends . pkgconfig . contains "gio-unix = null") False
408− . set (metaSection . license) (Known "stdenv.lib.licenses.lgpl21Plus")
409− . set (metaSection . hydraPlatforms) allKnownPlatforms
src/Distribution/Nixpkgs/Haskell/Hackage.hs+1−1
@@ -1,6 +1,6 @@
1module Distribution.Nixpkgs.Haskell.Hackage
1module Distribution.Nixpkgs.Haskell.Hackage
2 ( HackageDB, PackageData, VersionData(..)
2 ( HackageDB, PackageData, VersionData(..)
3− , hackageTarball, readTarball, parsePackageData
3+ , hackageTarball, readTarball
4 )
4 )
5 where
5 where
6
6
src/Distribution/Nixpkgs/Haskell/OrphanInstances.hs+3−28
@@ -9,12 +9,9 @@ import qualified Data.Text as T
9import Data.Yaml
9import Data.Yaml
10import Distribution.Compiler
10import Distribution.Compiler
11import Distribution.Package
11import Distribution.Package
12−import Distribution.Parsec
13import Distribution.System
12import Distribution.System
14−import Distribution.Pretty as Cabal
13+import Distribution.Text
15−import qualified Data.Version as Base
16import Distribution.Version
14import Distribution.Version
17−import Language.Nix.PrettyPrinting as Nix
18
15
19instance NFData CompilerInfo
16instance NFData CompilerInfo
20instance NFData AbiTag
17instance NFData AbiTag
@@ -52,10 +49,6 @@ instance FromJSON PackageIdentifier where
52 parseJSON (String s) = return (fromString (T.unpack s))
49 parseJSON (String s) = return (fromString (T.unpack s))
53 parseJSON s = fail ("parseJSON: " ++ show s ++ " is not a valid Haskell package identifier")
50 parseJSON s = fail ("parseJSON: " ++ show s ++ " is not a valid Haskell package identifier")
54
51
55−instance FromJSON VersionRange where
56− parseJSON (String s) = return (fromString (T.unpack s))
57− parseJSON s = fail ("parseJSON: " ++ show s ++ " is not a valid Cabal VersionRange")
58−
59instance FromJSON Dependency where
52instance FromJSON Dependency where
60 parseJSON (String s) = return (fromString (T.unpack s))
53 parseJSON (String s) = return (fromString (T.unpack s))
61 parseJSON s = fail ("parseJSON: " ++ show s ++ " is not a valid Haskell Dependency")
54 parseJSON s = fail ("parseJSON: " ++ show s ++ " is not a valid Haskell Dependency")
@@ -64,25 +57,7 @@ instance FromJSON CompilerInfo where
64 parseJSON (String s) = return (unknownCompilerInfo (fromString (T.unpack s)) NoAbiTag)
57 parseJSON (String s) = return (unknownCompilerInfo (fromString (T.unpack s)) NoAbiTag)
65 parseJSON s = fail ("parseJSON: " ++ show s ++ " is not a valid Haskell compiler")
58 parseJSON s = fail ("parseJSON: " ++ show s ++ " is not a valid Haskell compiler")
66
59
67−instance Nix.Pretty Version where
68− pPrint = pretty
69−
70−instance Nix.Pretty PackageName where
71− pPrint = pretty
72−
73−instance Nix.Pretty PackageIdentifier where
74− pPrint = pretty
75−
76−instance Nix.Pretty CompilerId where
77− pPrint = pretty
78−
79−instance Nix.Pretty Platform where
80− pPrint = pretty
81−
82−instance Nix.Pretty Base.Version where
83− pPrint = text . Base.showVersion
84−
85-- parsing tools
60-- parsing tools
86
61
87−text2isString :: Parsec a => String -> String -> a
62+text2isString :: Text a => String -> String -> a
88−text2isString t s = fromMaybe (error ("fromString: " ++ show s ++ " is not a valid " ++ t)) (simpleParsec s)
63+text2isString t s = fromMaybe (error ("fromString: " ++ show s ++ " is not a valid " ++ t)) (simpleParse s)
src/Distribution/Nixpkgs/Haskell/PackageSourceSpec.hs+36−62
@@ -1,5 +1,5 @@
1module Distribution.Nixpkgs.Haskell.PackageSourceSpec
1module Distribution.Nixpkgs.Haskell.PackageSourceSpec
2− ( HpackUse(..), Package(..), getPackage, getPackage', loadHackageDB, sourceFromHackage
2+ ( Package(..), getPackage, getPackage', loadHackageDB, sourceFromHackage
3 ) where
3 ) where
4
4
5import qualified Control.Exception as Exception
5import qualified Control.Exception as Exception
@@ -11,18 +11,16 @@ import qualified Data.ByteString.Char8 as BS
11import Data.List ( isSuffixOf, isPrefixOf )
11import Data.List ( isSuffixOf, isPrefixOf )
12import qualified Data.Map as DB
12import qualified Data.Map as DB
13import Data.Maybe
13import Data.Maybe
14−import qualified Data.Text as T
15−import qualified Data.Text.Encoding as T
16import Data.Time
14import Data.Time
17import Distribution.Nixpkgs.Fetch
15import Distribution.Nixpkgs.Fetch
18import Distribution.Nixpkgs.Hashes
16import Distribution.Nixpkgs.Hashes
19import qualified Distribution.Nixpkgs.Haskell.Hackage as DB
17import qualified Distribution.Nixpkgs.Haskell.Hackage as DB
20−import Distribution.Nixpkgs.Haskell.OrphanInstances ( )
21import qualified Distribution.Package as Cabal
18import qualified Distribution.Package as Cabal
22import Distribution.PackageDescription
19import Distribution.PackageDescription
23import qualified Distribution.PackageDescription as Cabal
20import qualified Distribution.PackageDescription as Cabal
24import Distribution.PackageDescription.Parsec as Cabal
21import Distribution.PackageDescription.Parsec as Cabal
25−import Distribution.Parsec
22+import Distribution.Parsec.Common (showPError)
23+import Distribution.Text ( simpleParse, display )
26import Distribution.Version
24import Distribution.Version
27import qualified Hpack.Config as Hpack
25import qualified Hpack.Config as Hpack
28import qualified Hpack.Render as Hpack
26import qualified Hpack.Render as Hpack
@@ -31,12 +29,8 @@ import System.Directory ( doesDirectoryExist, doesFileExist, createDirectoryIfMi
31import System.Exit ( exitFailure )
29import System.Exit ( exitFailure )
32import System.FilePath ( (</>), (<.>) )
30import System.FilePath ( (</>), (<.>) )
33import System.IO
31import System.IO
34−import Text.PrettyPrint.HughesPJClass hiding ( first )
32+import qualified Data.Text as T
35−
33+import qualified Data.Text.Encoding as T
36−data HpackUse
37− = ForceHpack
38− | PackageYamlHpack
39− | NoHpack
40
34
41data Package = Package
35data Package = Package
42 { pkgSource :: DerivationSource
36 { pkgSource :: DerivationSource
@@ -45,43 +39,37 @@ data Package = Package
45 }
39 }
46 deriving (Show)
40 deriving (Show)
47
41
48−getPackage :: HpackUse
42+getPackage :: Bool
49− -- ^ the way hpack should be used.
43+ -- ^ Whether hpack should regenerate the cabal file.
50− -> Bool
51− -- ^ Whether to fetch submodules if fetching from git
52 -> Maybe FilePath
44 -> Maybe FilePath
53 -- ^ The path to the Hackage database.
45 -- ^ The path to the Hackage database.
54 -> Maybe UTCTime
46 -> Maybe UTCTime
55 -- ^ If we have hackage-snapshot time.
47 -- ^ If we have hackage-snapshot time.
56 -> Source
48 -> Source
57 -> IO Package
49 -> IO Package
58−getPackage optHpack optSubmodules optHackageDB optHackageSnapshot =
50+getPackage optHpack optHackageDB optHackageSnapshot =
59− getPackage' optHpack optSubmodules (loadHackageDB optHackageDB optHackageSnapshot)
51+ getPackage' optHpack (loadHackageDB optHackageDB optHackageSnapshot)
60
52
61−getPackage' :: HpackUse
53+getPackage' :: Bool
62− -- ^ the way hpack should be used.
54+ -- ^ Whether hpack should regenerate the cabal file.
63− -> Bool
64− -- ^ Whether to fetch submodules if fetching from git
65 -> IO DB.HackageDB
55 -> IO DB.HackageDB
66 -> Source
56 -> Source
67 -> IO Package
57 -> IO Package
68−getPackage' optHpack optSubmodules hackageDB source = do
58+getPackage' optHpack hackageDB source = do
69− (derivSource, ranHpack, pkgDesc) <- fetchOrFromDB optHpack optSubmodules hackageDB source
59+ (derivSource, ranHpack, pkgDesc) <- fetchOrFromDB optHpack hackageDB source
70 (\s -> Package s ranHpack pkgDesc) <$> maybe (sourceFromHackage (sourceHash source) (showPackageIdentifier pkgDesc) $ sourceCabalDir source) return derivSource
60 (\s -> Package s ranHpack pkgDesc) <$> maybe (sourceFromHackage (sourceHash source) (showPackageIdentifier pkgDesc) $ sourceCabalDir source) return derivSource
71
61
72−fetchOrFromDB :: HpackUse
62+fetchOrFromDB :: Bool
73− -- ^ the way hpack should be used
63+ -- ^ Whether hpack should regenerate the cabal file
74− -> Bool
75− -- ^ Whether to fetch submodules if fetching from git
76 -> IO DB.HackageDB
64 -> IO DB.HackageDB
77 -> Source
65 -> Source
78 -> IO (Maybe DerivationSource, Bool, Cabal.GenericPackageDescription)
66 -> IO (Maybe DerivationSource, Bool, Cabal.GenericPackageDescription)
79−fetchOrFromDB optHpack optSubmodules hackageDB src
67+fetchOrFromDB optHpack hackageDB src
80 | "cabal://" `isPrefixOf` sourceUrl src = do
68 | "cabal://" `isPrefixOf` sourceUrl src = do
81 (msrc, pkgDesc) <- fromDB hackageDB . drop (length "cabal://") $ sourceUrl src
69 (msrc, pkgDesc) <- fromDB hackageDB . drop (length "cabal://") $ sourceUrl src
82 return (msrc, False, pkgDesc)
70 return (msrc, False, pkgDesc)
83 | otherwise = do
71 | otherwise = do
84− r <- fetch optSubmodules (\dir -> cabalFromPath optHpack (dir </> sourceCabalDir src)) src
72+ r <- fetch (\dir -> cabalFromPath optHpack (dir </> sourceCabalDir src)) src
85 case r of
73 case r of
86 Nothing -> fail $ "Failed to fetch source. Does this source exist? " ++ show src
74 Nothing -> fail $ "Failed to fetch source. Does this source exist? " ++ show src
87 Just (derivSource, (externalSource, ranHpack, pkgDesc)) ->
75 Just (derivSource, (externalSource, ranHpack, pkgDesc)) ->
@@ -104,16 +92,16 @@ fromDB hackageDBIO pkg = do
104 vd <- maybe unknownPackageError return (DB.lookup name hackageDB >>= lookupVersion)
92 vd <- maybe unknownPackageError return (DB.lookup name hackageDB >>= lookupVersion)
105 let ds = case DB.tarballSha256 vd of
93 let ds = case DB.tarballSha256 vd of
106 Nothing -> Nothing
94 Nothing -> Nothing
107− Just hash -> Just (urlDerivationSource url hash)
95+ Just hash -> Just (DerivationSource "url" url "" hash)
108 return (ds, setCabalFileHash (DB.cabalFileSha256 vd) (DB.cabalFile vd))
96 return (ds, setCabalFileHash (DB.cabalFileSha256 vd) (DB.cabalFile vd))
109 where
97 where
110 pkgId :: Cabal.PackageIdentifier
98 pkgId :: Cabal.PackageIdentifier
111− pkgId = fromMaybe (error ("invalid Haskell package id " ++ show pkg)) (simpleParsec pkg)
99+ pkgId = fromMaybe (error ("invalid Haskell package id " ++ show pkg)) (simpleParse pkg)
112 name = Cabal.packageName pkgId
100 name = Cabal.packageName pkgId
113
101
114− unknownPackageError = fail $ "No such package " ++ prettyShow pkgId ++ " in the cabal database. Did you run cabal update?"
102+ unknownPackageError = fail $ "No such package " ++ display pkgId ++ " in the cabal database. Did you run cabal update?"
115
103
116− url = "mirror://hackage/" ++ prettyShow pkgId ++ ".tar.gz"
104+ url = "mirror://hackage/" ++ display pkgId ++ ".tar.gz"
117
105
118 version :: Version
106 version :: Version
119 version = Cabal.packageVersion pkgId
107 version = Cabal.packageVersion pkgId
@@ -150,20 +138,20 @@ sourceFromHackage optHash pkgId cabalDir = do
150 -- Use the cached hash (either from cache file or given on cmdline via sha256 opt)
138 -- Use the cached hash (either from cache file or given on cmdline via sha256 opt)
151 -- if available, otherwise download from hackage to compute hash.
139 -- if available, otherwise download from hackage to compute hash.
152 case cachedHash of
140 case cachedHash of
153− Guess hash -> return $ urlDerivationSource url hash
141+ Guess hash -> return $ DerivationSource "url" url "" hash
154 Certain hash ->
142 Certain hash ->
155 -- We need to force the hash here. If we didn't do this, then when reading the
143 -- We need to force the hash here. If we didn't do this, then when reading the
156 -- hash from the cache file, the cache file will still be open for reading
144 -- hash from the cache file, the cache file will still be open for reading
157 -- (because lazy io) when writeFile opens the file again for writing. By forcing
145 -- (because lazy io) when writeFile opens the file again for writing. By forcing
158 -- the hash here, we ensure that the file is closed before opening it again.
146 -- the hash here, we ensure that the file is closed before opening it again.
159 seq (length hash) $
147 seq (length hash) $
160− urlDerivationSource url hash <$ writeFile cacheFile hash
148+ DerivationSource "url" url "" hash <$ writeFile cacheFile hash
161 UnknownHash -> do
149 UnknownHash -> do
162 maybeHash <- runMaybeT (derivHash . fst <$> fetchWith (False, "url", []) (Source url "" UnknownHash cabalDir))
150 maybeHash <- runMaybeT (derivHash . fst <$> fetchWith (False, "url", []) (Source url "" UnknownHash cabalDir))
163 case maybeHash of
151 case maybeHash of
164 Just hash ->
152 Just hash ->
165 seq (length hash) $
153 seq (length hash) $
166− urlDerivationSource url hash <$ writeFile cacheFile hash
154+ DerivationSource "url" url "" hash <$ writeFile cacheFile hash
167 Nothing -> do
155 Nothing -> do
168 hPutStr stderr $ unlines
156 hPutStr stderr $ unlines
169 [ "*** cannot compute hash. (Not a hackage project?)"
157 [ "*** cannot compute hash. (Not a hackage project?)"
@@ -176,12 +164,12 @@ sourceFromHackage optHash pkgId cabalDir = do
176 exitFailure
164 exitFailure
177
165
178showPackageIdentifier :: Cabal.GenericPackageDescription -> String
166showPackageIdentifier :: Cabal.GenericPackageDescription -> String
179−showPackageIdentifier pkgDesc = name ++ "-" ++ prettyShow version where
167+showPackageIdentifier pkgDesc = name ++ "-" ++ display version where
180 pkgId = Cabal.package . Cabal.packageDescription $ pkgDesc
168 pkgId = Cabal.package . Cabal.packageDescription $ pkgDesc
181 name = Cabal.unPackageName (Cabal.packageName pkgId)
169 name = Cabal.unPackageName (Cabal.packageName pkgId)
182 version = Cabal.packageVersion pkgId
170 version = Cabal.packageVersion pkgId
183
171
184−cabalFromPath :: HpackUse -- ^ the way hpack should be used
172+cabalFromPath :: Bool -- ^ Whether hpack should regenerate the cabal file
185 -> FilePath -> MaybeT IO (Bool, Bool, Cabal.GenericPackageDescription)
173 -> FilePath -> MaybeT IO (Bool, Bool, Cabal.GenericPackageDescription)
186cabalFromPath optHpack path = do
174cabalFromPath optHpack path = do
187 d <- liftIO $ doesDirectoryExist path
175 d <- liftIO $ doesDirectoryExist path
@@ -191,25 +179,17 @@ cabalFromPath optHpack path = do
191 return (d, ranHpack, pkg)
179 return (d, ranHpack, pkg)
192 else (,,) d False <$> cabalFromFile False path
180 else (,,) d False <$> cabalFromFile False path
193
181
194−cabalFromDirectory :: HpackUse -- ^ the way hpack should be used
182+cabalFromDirectory :: Bool -- ^ Whether hpack should regenerate the cabal file
195 -> FilePath -> MaybeT IO (Bool, Cabal.GenericPackageDescription)
183 -> FilePath -> MaybeT IO (Bool, Cabal.GenericPackageDescription)
196−cabalFromDirectory ForceHpack dir = hpackDirectory dir
184+cabalFromDirectory True dir = hpackDirectory dir
197−cabalFromDirectory NoHpack dir = onlyCabalFromDirectory dir "*** No .cabal file was found. Exiting."
185+cabalFromDirectory False dir = do
198−cabalFromDirectory PackageYamlHpack dir = do
199− useHpack <- liftIO $ doesFileExist (dir </> "package.yaml")
200− if useHpack
201− then do
202− liftIO $ hPutStrLn stderr "*** found package.yaml. Using hpack..."
203− hpackDirectory dir
204− else onlyCabalFromDirectory dir "*** Found neither a .cabal file nor package.yaml. Exiting."
205−
206−onlyCabalFromDirectory :: FilePath -> String -> MaybeT IO (Bool, Cabal.GenericPackageDescription)
207−onlyCabalFromDirectory dir errMsg = do
208 cabals <- liftIO $ getDirectoryContents dir >>= filterM doesFileExist . map (dir </>) . filter (".cabal" `isSuffixOf`)
186 cabals <- liftIO $ getDirectoryContents dir >>= filterM doesFileExist . map (dir </>) . filter (".cabal" `isSuffixOf`)
209 case cabals of
187 case cabals of
210− [] -> fail errMsg
188+ [] -> do
189+ liftIO $ hPutStrLn stderr "*** found zero cabal files. Trying hpack..."
190+ hpackDirectory dir
211 [cabalFile] -> (,) False <$> cabalFromFile True cabalFile
191 [cabalFile] -> (,) False <$> cabalFromFile True cabalFile
212− _ -> liftIO $ fail ("*** found more than one cabal file (" ++ show cabals ++ "). Exiting.")
192+ _ -> liftIO $ fail ("*** found more than one cabal file (" ++ show cabals ++ "). Exiting.")
213
193
214handleIO :: (Exception.IOException -> IO a) -> IO a -> IO a
194handleIO :: (Exception.IOException -> IO a) -> IO a -> IO a
215handleIO = Exception.handle
195handleIO = Exception.handle
@@ -219,17 +199,11 @@ encodeUtf8 = T.encodeUtf8 . T.pack
219
199
220hpackDirectory :: FilePath -> MaybeT IO (Bool, Cabal.GenericPackageDescription)
200hpackDirectory :: FilePath -> MaybeT IO (Bool, Cabal.GenericPackageDescription)
221hpackDirectory dir = do
201hpackDirectory dir = do
222− mPackage <- liftIO $ Hpack.readPackageConfig Hpack.defaultDecodeOptions {
202+ mPackage <- liftIO $ Hpack.readPackageConfig Hpack.defaultDecodeOptions {Hpack.decodeOptionsTarget = dir </> Hpack.packageConfig}
223− Hpack.decodeOptionsProgramName = Hpack.ProgramName "cabal2nix"
224− , Hpack.decodeOptionsTarget = dir </> Hpack.packageConfig
225− }
226 case mPackage of
203 case mPackage of
227 Left err -> liftIO $ hPutStrLn stderr ("*** hpack error: " ++ show err ++ ". Exiting.") >> exitFailure
204 Left err -> liftIO $ hPutStrLn stderr ("*** hpack error: " ++ show err ++ ". Exiting.") >> exitFailure
228− Right r -> do
205+ Right (Hpack.DecodeResult pkg' _ _) -> do
229− let hpackOutput =
206+ let hpackOutput = encodeUtf8 $ Hpack.renderPackage [] pkg'
230− let body = Hpack.renderPackage [] (Hpack.decodeResultPackage r)
231− cabalVersion = Hpack.decodeResultCabalVersion r
232− in encodeUtf8 $ cabalVersion ++ body
233 hash = printSHA256 $ digest (digestByName "sha256") hpackOutput
207 hash = printSHA256 $ digest (digestByName "sha256") hpackOutput
234 case runParseGenericPackageDescription "<hpack output>" hpackOutput of
208 case runParseGenericPackageDescription "<hpack output>" hpackOutput of
235 Left msg -> liftIO $ do
209 Left msg -> liftIO $ do
test/Main.hs+22−92
@@ -1,122 +1,52 @@
1−{-# LANGUAGE OverloadedStrings #-}
2−
3module Main ( main ) where
1module Main ( main ) where
4
2
5−import Distribution.Nixpkgs.Fetch
6−import Distribution.Nixpkgs.Haskell.Derivation
7import Distribution.Nixpkgs.Haskell.FromCabal
3import Distribution.Nixpkgs.Haskell.FromCabal
8−import Distribution.Nixpkgs.Haskell.FromCabal.Flags
4+import Distribution.Nixpkgs.Haskell.Derivation
5+import Distribution.Nixpkgs.Fetch
9
6
10import Control.Lens
7import Control.Lens
11−import Control.Monad
12−import qualified Data.Set as Set
13import Distribution.Compiler
8import Distribution.Compiler
14−import Distribution.Package
15import Distribution.PackageDescription
9import Distribution.PackageDescription
16import Distribution.PackageDescription.Parsec
10import Distribution.PackageDescription.Parsec
17import Distribution.System
11import Distribution.System
18import Distribution.Verbosity
12import Distribution.Verbosity
19import Distribution.Version
13import Distribution.Version
20import Language.Nix
14import Language.Nix
21−import System.Directory
22import System.FilePath
15import System.FilePath
23−import System.Process
24import Test.Tasty
16import Test.Tasty
25import Test.Tasty.Golden
17import Test.Tasty.Golden
26import Text.PrettyPrint.HughesPJClass
18import Text.PrettyPrint.HughesPJClass
27
19
28main :: IO ()
20main :: IO ()
29main = do
21main = do
30− -- TODO: Run this test with all kinds of setLocaleEncoding values to ensure we don't
22+ -- TODO: run this test with all kinds of setLocaleEncoding values to ensure we don't
31− -- depend on the system environment: https://github.com/NixOS/cabal2nix/issues/333.
23+ -- depend on the system environment: https://github.com/NixOS/cabal2nix/issues/333
32− --
33− -- TODO: Run this test without $HOME defined to ensure that we don't need that variable.
34− cabal2nix <- findExecutable "cabal2nix" >>= maybe (fail "cannot find 'cabal2nix' in $PATH") return
35− testCases <- listDirectoryFilesBySuffix ".cabal" "test/golden-test-cases"
24+ testCases <- findByExtension [".cabal"] "test/golden-test-cases"
36− defaultMain $ testGroup "regression-tests"
25+ defaultMain $ testGroup "regression-tests" (map regressionTest testCases)
37− [ testGroup "cabal2nix library" (map testLibrary testCases)
38− , testGroup "cabal2nix executable" (map (testExecutable cabal2nix) testCases)
39− ]
40
26
41−testLibrary :: String -> TestTree
27+regressionTest :: String -> TestTree
42−testLibrary cabalFile = do
28+regressionTest cabalFile = do
43 let nixFile = cabalFile `replaceExtension` "nix"
29 let nixFile = cabalFile `replaceExtension` "nix"
44 goldenFile = nixFile `addExtension` "golden"
30 goldenFile = nixFile `addExtension` "golden"
45
31
46 cabal2nix :: GenericPackageDescription -> Derivation
32 cabal2nix :: GenericPackageDescription -> Derivation
47 cabal2nix gpd = fromGenericPackageDescription
33 cabal2nix gpd = fromGenericPackageDescription
48− (const True)
34+ (const True)
49− (\i -> Just (binding # (i, path # [ident # "pkgs", i])))
35+ (\i -> Just (binding # (i, path # [i])))
50− (Platform X86_64 Linux)
36+ (Platform X86_64 Linux)
51− (unknownCompilerInfo (CompilerId GHC (mkVersion [8,2])) NoAbiTag)
37+ (unknownCompilerInfo (CompilerId GHC (mkVersion [8,2])) NoAbiTag)
52− (configureCabalFlags (packageId gpd))
38+ mempty
53− []
39+ []
54− gpd
40+ gpd
55− & src .~ DerivationSource
41+ & src .~ DerivationSource
56− { derivKind = "url"
42+ { derivKind = "url"
57− , derivUrl = "mirror://hackage/foo.tar.gz"
43+ , derivUrl = "http://example.org/"
58− , derivRevision = ""
44+ , derivRevision = ""
59− , derivHash = "deadbeef"
45+ , derivHash = "abc"
60− , derivSubmodule = Nothing
61− }
46+ }
62− & extraFunctionArgs %~ Set.union (Set.singleton "inherit stdenv")
63 goldenVsFileDiff
47 goldenVsFileDiff
64 nixFile
48 nixFile
65 (\ref new -> ["diff", "-u", ref, new])
49 (\ref new -> ["diff", "-u", ref, new])
66 goldenFile
50 goldenFile
67 nixFile
51 nixFile
68− (readGenericPackageDescription silent cabalFile >>= writeFileLn nixFile . prettyShow . cabal2nix)
52+ (readGenericPackageDescription silent cabalFile >>= writeFile nixFile . prettyShow . cabal2nix)
69−
70−-- | TODO:
71−--
72−-- * Run cabal2nix in an empty environment. Currently, this fails because the
73−-- tool uses $HOME to write cache files for SHA256 hashes. To fix this, use
74−-- of the cache directory ought to be optional. Arguably, the whole notion
75−-- of caching those hashes is a bit silly in the presence of format 01
76−-- cabal-install tarballs which contain them already.
77−--
78−-- * If we cannot get along without $HOME, then we should at least set it to
79−-- some temporary location that is empty.
80−--
81−-- * Run this test with different kinds of encodings.
82−--
83−-- * Run tests with a different target OS, like Darwin. The packages "iconv",
84−-- "crypt-sha512", "gl" might be worthwhile for testing since their output
85−-- differs on Darwin.
86−
87−testExecutable :: FilePath -> FilePath -> TestTree
88−testExecutable exe cabalFile = do
89− let nixFile = cabalFile `replaceExtension` "nix"
90− goldenFile = nixFile `addExtension` "golden"
91− goldenVsFileDiff
92− nixFile
93− (\ref new -> ["diff", "-u", ref, new])
94− goldenFile
95− nixFile
96− (callCommand (unwords ["env LANG=en_US.UTF-8", exe, "--sha256=deadbeef", "--system=x86_64-linux", "--compiler=ghc-8.2", "--", cabalFile, ">"++nixFile]))
97−
98−-------------------------------------------------------------------------------
99−-- * Helper functions
100−-------------------------------------------------------------------------------
101−
102−-- | Find all *files* in the given directory that end with the given suffix.
103−-- This function does not recurse, nor does it include the special entries
104−-- @'.'@ or @'..'@ in the result.
105−--
106−-- "Test.Tasty.Golden" offers 'findByExtension', which does something similar
107−-- (and arguably more general) as those two functions, but unfortunately that
108−-- function recurses through the directory hierarchy and in the process needs
109−-- plenty of stack space. There might be a space leak in that code, I am not
110−-- sure. Anyhow, since our test suite is supposed to run with 1K stack space,
111−-- we prefer our own simpler code.
112−
113−listDirectoryFilesBySuffix :: String -> FilePath -> IO [FilePath]
114−listDirectoryFilesBySuffix suff dirPath = do
115− entries <- listDirectory dirPath
116− filterM doesFileExist [ dirPath </> e | e <- entries, takeExtension e == suff ]
117−
118−-- | A variant of 'writeFile' that appends a newline to the end of the buffer
119−-- before writing.
120−
121−writeFileLn :: FilePath -> String -> IO ()
122−writeFileLn p buf = writeFile p (buf ++ "\n")
test/golden-test-cases/ChasingBottoms.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, array, base, containers, mtl, QuickCheck, random
1+{ mkDerivation, array, base, containers, fetchurl, mtl, QuickCheck
2−, stdenv, syb
2+, random, syb
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "ChasingBottoms";
5 pname = "ChasingBottoms";
6 version = "1.3.1.3";
6 version = "1.3.1.3";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base containers mtl QuickCheck random syb
12 base containers mtl QuickCheck random syb
10 ];
13 ];
@@ -13,4 +16,4 @@ mkDerivation {
13 ];
16 ];
14 description = "For testing partial and infinite values";
17 description = "For testing partial and infinite values";
15 license = stdenv.lib.licenses.mit;
18 license = stdenv.lib.licenses.mit;
16−}
19+}
test/golden-test-cases/Clipboard.nix.golden+7−3
@@ -1,10 +1,14 @@
1−{ mkDerivation, base, directory, stdenv, unix, utf8-string, X11 }:
1+{ mkDerivation, base, directory, fetchurl, unix, utf8-string, X11
2+}:
2mkDerivation {
3mkDerivation {
3 pname = "Clipboard";
4 pname = "Clipboard";
4 version = "2.3.2.0";
5 version = "2.3.2.0";
6+ src = fetchurl {
7+ url = "http://example.org/";
5− sha256 = "deadbeef";
8+ sha256 = "abc";
9+ };
6 libraryHaskellDepends = [ base directory unix utf8-string X11 ];
10 libraryHaskellDepends = [ base directory unix utf8-string X11 ];
7 homepage = "http://haskell.org/haskellwiki/Clipboard";
11 homepage = "http://haskell.org/haskellwiki/Clipboard";
8 description = "System clipboard interface";
12 description = "System clipboard interface";
9 license = stdenv.lib.licenses.bsd3;
13 license = stdenv.lib.licenses.bsd3;
10−}
14+}
test/golden-test-cases/FenwickTree.nix.golden+6−3
@@ -1,12 +1,15 @@
1−{ mkDerivation, base, QuickCheck, stdenv, template-haskell }:
1+{ mkDerivation, base, fetchurl, QuickCheck, template-haskell }:
2mkDerivation {
2mkDerivation {
3 pname = "FenwickTree";
3 pname = "FenwickTree";
4 version = "0.1.2.1";
4 version = "0.1.2.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 enableSeparateDataOutput = true;
9 enableSeparateDataOutput = true;
7 libraryHaskellDepends = [ base QuickCheck template-haskell ];
10 libraryHaskellDepends = [ base QuickCheck template-haskell ];
8 testHaskellDepends = [ base QuickCheck template-haskell ];
11 testHaskellDepends = [ base QuickCheck template-haskell ];
9 homepage = "https://github.com/mgajda/FenwickTree";
12 homepage = "https://github.com/mgajda/FenwickTree";
10 description = "Data structure for fast query and update of cumulative sums";
13 description = "Data structure for fast query and update of cumulative sums";
11 license = stdenv.lib.licenses.bsd3;
14 license = stdenv.lib.licenses.bsd3;
12−}
15+}
test/golden-test-cases/GPipe-GLFW.nix.golden+7−3
@@ -1,12 +1,16 @@
1−{ mkDerivation, async, base, containers, GLFW-b, GPipe, stdenv, stm
1+{ mkDerivation, async, base, containers, fetchurl, GLFW-b, GPipe
2+, stm
2}:
3}:
3mkDerivation {
4mkDerivation {
4 pname = "GPipe-GLFW";
5 pname = "GPipe-GLFW";
5 version = "1.4.1.1";
6 version = "1.4.1.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
6− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
7 enableSeparateDataOutput = true;
11 enableSeparateDataOutput = true;
8 libraryHaskellDepends = [ async base containers GLFW-b GPipe stm ];
12 libraryHaskellDepends = [ async base containers GLFW-b GPipe stm ];
9 homepage = "https://github.com/plredmond/GPipe-GLFW";
13 homepage = "https://github.com/plredmond/GPipe-GLFW";
10 description = "GLFW OpenGL context creation for GPipe";
14 description = "GLFW OpenGL context creation for GPipe";
11 license = stdenv.lib.licenses.mit;
15 license = stdenv.lib.licenses.mit;
12−}
16+}
test/golden-test-cases/GenericPretty.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, ghc-prim, pretty, stdenv }:
1+{ mkDerivation, base, fetchurl, ghc-prim, pretty }:
2mkDerivation {
2mkDerivation {
3 pname = "GenericPretty";
3 pname = "GenericPretty";
4 version = "1.2.1";
4 version = "1.2.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ghc-prim pretty ];
9 libraryHaskellDepends = [ base ghc-prim pretty ];
7 homepage = "https://github.com/RazvanRanca/GenericPretty";
10 homepage = "https://github.com/RazvanRanca/GenericPretty";
8 description = "A generic, derivable, haskell pretty printer";
11 description = "A generic, derivable, haskell pretty printer";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/HPDF.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, array, base, base64-bytestring, binary, bytestring
1{ mkDerivation, array, base, base64-bytestring, binary, bytestring
2−, containers, errors, HTF, mtl, random, stdenv, vector, zlib
2+, containers, errors, fetchurl, HTF, mtl, random, vector, zlib
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "HPDF";
5 pname = "HPDF";
6 version = "1.4.10";
6 version = "1.4.10";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 array base base64-bytestring binary bytestring containers errors
12 array base base64-bytestring binary bytestring containers errors
10 mtl random vector zlib
13 mtl random vector zlib
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "http://www.alpheccar.org";
16 homepage = "http://www.alpheccar.org";
14 description = "Generation of PDF documents";
17 description = "Generation of PDF documents";
15 license = stdenv.lib.licenses.bsd3;
18 license = stdenv.lib.licenses.bsd3;
16−}
19+}
test/golden-test-cases/HTF.nix.golden+8−5
@@ -1,14 +1,17 @@
1{ mkDerivation, aeson, aeson-pretty, array, base, base64-bytestring
1{ mkDerivation, aeson, aeson-pretty, array, base, base64-bytestring
2−, bytestring, containers, cpphs, Diff, directory, filepath
2+, bytestring, containers, cpphs, Diff, directory, fetchurl
3−, haskell-src, HUnit, lifted-base, monad-control, mtl, old-time
3+, filepath, haskell-src, HUnit, lifted-base, monad-control, mtl
4−, pretty, process, QuickCheck, random, regex-compat, stdenv
4+, old-time, pretty, process, QuickCheck, random, regex-compat
5, template-haskell, temporary, text, time, unix
5, template-haskell, temporary, text, time, unix
6, unordered-containers, vector, xmlgen
6, unordered-containers, vector, xmlgen
7}:
7}:
8mkDerivation {
8mkDerivation {
9 pname = "HTF";
9 pname = "HTF";
10 version = "0.13.2.2";
10 version = "0.13.2.2";
11+ src = fetchurl {
12+ url = "http://example.org/";
11− sha256 = "deadbeef";
13+ sha256 = "abc";
14+ };
12 isLibrary = true;
15 isLibrary = true;
13 isExecutable = true;
16 isExecutable = true;
14 libraryHaskellDepends = [
17 libraryHaskellDepends = [
@@ -28,4 +31,4 @@ mkDerivation {
28 homepage = "https://github.com/skogsbaer/HTF/";
31 homepage = "https://github.com/skogsbaer/HTF/";
29 description = "The Haskell Test Framework";
32 description = "The Haskell Test Framework";
30 license = "LGPL";
33 license = "LGPL";
31−}
34+}
test/golden-test-cases/HTTP.nix.golden+8−5
@@ -1,12 +1,15 @@
1{ mkDerivation, array, base, bytestring, case-insensitive, conduit
1{ mkDerivation, array, base, bytestring, case-insensitive, conduit
2−, conduit-extra, deepseq, http-types, httpd-shed, HUnit, mtl
2+, conduit-extra, deepseq, fetchurl, http-types, httpd-shed, HUnit
3−, network, network-uri, parsec, pureMD5, split, stdenv
3+, mtl, network, network-uri, parsec, pureMD5, split, test-framework
4−, test-framework, test-framework-hunit, time, wai, warp
4+, test-framework-hunit, time, wai, warp
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "HTTP";
7 pname = "HTTP";
8 version = "4000.3.9";
8 version = "4000.3.9";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
11 array base bytestring mtl network network-uri parsec time
14 array base bytestring mtl network network-uri parsec time
12 ];
15 ];
@@ -18,4 +21,4 @@ mkDerivation {
18 homepage = "https://github.com/haskell/HTTP";
21 homepage = "https://github.com/haskell/HTTP";
19 description = "A library for client-side HTTP";
22 description = "A library for client-side HTTP";
20 license = stdenv.lib.licenses.bsd3;
23 license = stdenv.lib.licenses.bsd3;
21−}
24+}
test/golden-test-cases/Hclip.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, mtl, process, stdenv, strict }:
1+{ mkDerivation, base, fetchurl, mtl, process, strict }:
2mkDerivation {
2mkDerivation {
3 pname = "Hclip";
3 pname = "Hclip";
4 version = "3.0.0.4";
4 version = "3.0.0.4";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base mtl process strict ];
9 libraryHaskellDepends = [ base mtl process strict ];
7 homepage = "https://github.com/jetho/Hclip";
10 homepage = "https://github.com/jetho/Hclip";
8 description = "A small cross-platform library for reading and modifying the system clipboard";
11 description = "A small cross-platform library for reading and modifying the system clipboard";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/MissingH.nix.golden+8−5
@@ -1,12 +1,15 @@
1{ mkDerivation, array, base, containers, directory
1{ mkDerivation, array, base, containers, directory
2−, errorcall-eq-instance, filepath, hslogger, HUnit, mtl, network
2+, errorcall-eq-instance, fetchurl, filepath, hslogger, HUnit, mtl
3−, old-locale, old-time, parsec, process, QuickCheck, random
3+, network, old-locale, old-time, parsec, process, QuickCheck
4−, regex-compat, stdenv, testpack, time, unix
4+, random, regex-compat, testpack, time, unix
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "MissingH";
7 pname = "MissingH";
8 version = "1.4.0.1";
8 version = "1.4.0.1";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
11 array base containers directory filepath hslogger HUnit mtl network
14 array base containers directory filepath hslogger HUnit mtl network
12 old-locale old-time parsec process random regex-compat time unix
15 old-locale old-time parsec process random regex-compat time unix
@@ -19,4 +22,4 @@ mkDerivation {
19 homepage = "http://software.complete.org/missingh";
22 homepage = "http://software.complete.org/missingh";
20 description = "Large utility library";
23 description = "Large utility library";
21 license = stdenv.lib.licenses.bsd3;
24 license = stdenv.lib.licenses.bsd3;
22−}
25+}
test/golden-test-cases/ObjectName.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv, transformers }:
1+{ mkDerivation, base, fetchurl, transformers }:
2mkDerivation {
2mkDerivation {
3 pname = "ObjectName";
3 pname = "ObjectName";
4 version = "1.1.0.1";
4 version = "1.1.0.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base transformers ];
9 libraryHaskellDepends = [ base transformers ];
7 homepage = "https://github.com/svenpanne/ObjectName";
10 homepage = "https://github.com/svenpanne/ObjectName";
8 description = "Explicitly handled object names";
11 description = "Explicitly handled object names";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/Only.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, base, deepseq, stdenv }:
1+{ mkDerivation, base, deepseq, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "Only";
3 pname = "Only";
4 version = "0.1";
4 version = "0.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base deepseq ];
9 libraryHaskellDepends = [ base deepseq ];
7 description = "The 1-tuple type or single-value \"collection\"";
10 description = "The 1-tuple type or single-value \"collection\"";
8 license = stdenv.lib.licenses.bsd3;
11 license = stdenv.lib.licenses.bsd3;
9−}
12+}
test/golden-test-cases/QuasiText.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, attoparsec, base, haskell-src-meta, stdenv
1+{ mkDerivation, attoparsec, base, fetchurl, haskell-src-meta
2, template-haskell, text, th-lift-instances
2, template-haskell, text, th-lift-instances
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "QuasiText";
5 pname = "QuasiText";
6 version = "0.1.2.6";
6 version = "0.1.2.6";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 attoparsec base haskell-src-meta template-haskell text
12 attoparsec base haskell-src-meta template-haskell text
10 th-lift-instances
13 th-lift-instances
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://github.com/mikeplus64/QuasiText";
15 homepage = "https://github.com/mikeplus64/QuasiText";
13 description = "A QuasiQuoter for Text";
16 description = "A QuasiQuoter for Text";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/QuickCheck.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, containers, deepseq, random, stdenv
1+{ mkDerivation, base, containers, deepseq, fetchurl, random
2, template-haskell, tf-random, transformers
2, template-haskell, tf-random, transformers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "QuickCheck";
5 pname = "QuickCheck";
6 version = "2.10.1";
6 version = "2.10.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base containers deepseq random template-haskell tf-random
12 base containers deepseq random template-haskell tf-random
10 transformers
13 transformers
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/nick8325/quickcheck";
16 homepage = "https://github.com/nick8325/quickcheck";
14 description = "Automatic testing of Haskell programs";
17 description = "Automatic testing of Haskell programs";
15 license = stdenv.lib.licenses.bsd3;
18 license = stdenv.lib.licenses.bsd3;
16−}
19+}
test/golden-test-cases/ReadArgs.nix.golden+6−3
@@ -1,8 +1,11 @@
1−{ mkDerivation, base, hspec, stdenv, system-filepath, text }:
1+{ mkDerivation, base, fetchurl, hspec, system-filepath, text }:
2mkDerivation {
2mkDerivation {
3 pname = "ReadArgs";
3 pname = "ReadArgs";
4 version = "1.2.3";
4 version = "1.2.3";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 isLibrary = true;
9 isLibrary = true;
7 isExecutable = true;
10 isExecutable = true;
8 libraryHaskellDepends = [ base system-filepath text ];
11 libraryHaskellDepends = [ base system-filepath text ];
@@ -11,4 +14,4 @@ mkDerivation {
11 homepage = "http://github.com/rampion/ReadArgs";
14 homepage = "http://github.com/rampion/ReadArgs";
12 description = "Simple command line argument parsing";
15 description = "Simple command line argument parsing";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/SHA.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, array, base, binary, bytestring, QuickCheck, stdenv
1+{ mkDerivation, array, base, binary, bytestring, fetchurl
2−, test-framework, test-framework-quickcheck2
2+, QuickCheck, test-framework, test-framework-quickcheck2
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "SHA";
5 pname = "SHA";
6 version = "1.6.4.2";
6 version = "1.6.4.2";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 isLibrary = true;
11 isLibrary = true;
9 isExecutable = true;
12 isExecutable = true;
10 libraryHaskellDepends = [ array base binary bytestring ];
13 libraryHaskellDepends = [ array base binary bytestring ];
@@ -14,4 +17,4 @@ mkDerivation {
14 ];
17 ];
15 description = "Implementations of the SHA suite of message digest functions";
18 description = "Implementations of the SHA suite of message digest functions";
16 license = stdenv.lib.licenses.bsd3;
19 license = stdenv.lib.licenses.bsd3;
17−}
20+}
test/golden-test-cases/Strafunski-StrategyLib.nix.golden+7−3
@@ -1,9 +1,13 @@
1−{ mkDerivation, base, directory, mtl, stdenv, syb, transformers }:
1+{ mkDerivation, base, directory, fetchurl, mtl, syb, transformers
2+}:
2mkDerivation {
3mkDerivation {
3 pname = "Strafunski-StrategyLib";
4 pname = "Strafunski-StrategyLib";
4 version = "5.0.0.10";
5 version = "5.0.0.10";
6+ src = fetchurl {
7+ url = "http://example.org/";
5− sha256 = "deadbeef";
8+ sha256 = "abc";
9+ };
6 libraryHaskellDepends = [ base directory mtl syb transformers ];
10 libraryHaskellDepends = [ base directory mtl syb transformers ];
7 description = "Library for strategic programming";
11 description = "Library for strategic programming";
8 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
9−}
13+}
test/golden-test-cases/accelerate-fftw.nix.golden+7−4
@@ -1,14 +1,17 @@
1−{ mkDerivation, accelerate, accelerate-io, base, carray, fft
1+{ mkDerivation, accelerate, accelerate-io, base, carray, fetchurl
2−, stdenv, storable-complex
2+, fft, storable-complex
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "accelerate-fftw";
5 pname = "accelerate-fftw";
6 version = "1.0";
6 version = "1.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 accelerate accelerate-io base carray fft storable-complex
12 accelerate accelerate-io base carray fft storable-complex
10 ];
13 ];
11 homepage = "http://hub.darcs.net/thielema/accelerate-fftw/";
14 homepage = "http://hub.darcs.net/thielema/accelerate-fftw/";
12 description = "Accelerate frontend to the FFTW library (Fourier transform)";
15 description = "Accelerate frontend to the FFTW library (Fourier transform)";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/accelerate.nix.golden+7−4
@@ -1,12 +1,15 @@
1{ mkDerivation, ansi-wl-pprint, base, base-orphans, containers
1{ mkDerivation, ansi-wl-pprint, base, base-orphans, containers
2−, deepseq, directory, exceptions, fclabels, filepath, ghc-prim
2+, deepseq, directory, exceptions, fclabels, fetchurl, filepath
3−, hashable, hashtables, mtl, stdenv, template-haskell, time
3+, ghc-prim, hashable, hashtables, mtl, template-haskell, time
4, transformers, unique, unix, unordered-containers
4, transformers, unique, unix, unordered-containers
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "accelerate";
7 pname = "accelerate";
8 version = "1.1.1.0";
8 version = "1.1.1.0";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
11 ansi-wl-pprint base base-orphans containers deepseq directory
14 ansi-wl-pprint base base-orphans containers deepseq directory
12 exceptions fclabels filepath ghc-prim hashable hashtables mtl
15 exceptions fclabels filepath ghc-prim hashable hashtables mtl
@@ -15,4 +18,4 @@ mkDerivation {
15 homepage = "https://github.com/AccelerateHS/accelerate/";
18 homepage = "https://github.com/AccelerateHS/accelerate/";
16 description = "An embedded language for accelerated array processing";
19 description = "An embedded language for accelerated array processing";
17 license = stdenv.lib.licenses.bsd3;
20 license = stdenv.lib.licenses.bsd3;
18−}
21+}
test/golden-test-cases/active.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, lens, linear, QuickCheck, semigroupoids
1+{ mkDerivation, base, fetchurl, lens, linear, QuickCheck
2−, semigroups, stdenv, vector
2+, semigroupoids, semigroups, vector
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "active";
5 pname = "active";
6 version = "0.2.0.13";
6 version = "0.2.0.13";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base lens linear semigroupoids semigroups vector
12 base lens linear semigroupoids semigroups vector
10 ];
13 ];
@@ -13,4 +16,4 @@ mkDerivation {
13 ];
16 ];
14 description = "Abstractions for animation";
17 description = "Abstractions for animation";
15 license = stdenv.lib.licenses.bsd3;
18 license = stdenv.lib.licenses.bsd3;
16−}
19+}
test/golden-test-cases/adjunctions.nix.golden+7−4
@@ -1,11 +1,14 @@
1{ mkDerivation, array, base, comonad, containers, contravariant
1{ mkDerivation, array, base, comonad, containers, contravariant
2−, distributive, free, mtl, profunctors, semigroupoids, semigroups
2+, distributive, fetchurl, free, mtl, profunctors, semigroupoids
3−, stdenv, tagged, transformers, transformers-compat, void
3+, semigroups, tagged, transformers, transformers-compat, void
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "adjunctions";
6 pname = "adjunctions";
7 version = "4.3";
7 version = "4.3";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 array base comonad containers contravariant distributive free mtl
13 array base comonad containers contravariant distributive free mtl
11 profunctors semigroupoids semigroups tagged transformers
14 profunctors semigroupoids semigroups tagged transformers
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "http://github.com/ekmett/adjunctions/";
17 homepage = "http://github.com/ekmett/adjunctions/";
15 description = "Adjunctions and representable functors";
18 description = "Adjunctions and representable functors";
16 license = stdenv.lib.licenses.bsd3;
19 license = stdenv.lib.licenses.bsd3;
17−}
20+}
test/golden-test-cases/aeson-diff.nix.golden+8−5
@@ -1,12 +1,15 @@
1{ mkDerivation, aeson, base, bytestring, directory, doctest
1{ mkDerivation, aeson, base, bytestring, directory, doctest
2−, edit-distance-vector, filepath, Glob, hashable, hlint, mtl
2+, edit-distance-vector, fetchurl, filepath, Glob, hashable, hlint
3−, optparse-applicative, QuickCheck, quickcheck-instances
3+, mtl, optparse-applicative, QuickCheck, quickcheck-instances
4−, scientific, stdenv, text, unordered-containers, vector
4+, scientific, text, unordered-containers, vector
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "aeson-diff";
7 pname = "aeson-diff";
8 version = "1.1.0.4";
8 version = "1.1.0.4";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 isLibrary = true;
13 isLibrary = true;
11 isExecutable = true;
14 isExecutable = true;
12 libraryHaskellDepends = [
15 libraryHaskellDepends = [
@@ -23,4 +26,4 @@ mkDerivation {
23 homepage = "https://github.com/thsutton/aeson-diff";
26 homepage = "https://github.com/thsutton/aeson-diff";
24 description = "Extract and apply patches to JSON documents";
27 description = "Extract and apply patches to JSON documents";
25 license = stdenv.lib.licenses.bsd3;
28 license = stdenv.lib.licenses.bsd3;
26−}
29+}
test/golden-test-cases/aeson-pretty.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, aeson, attoparsec, base, base-compat, bytestring
1{ mkDerivation, aeson, attoparsec, base, base-compat, bytestring
2−, cmdargs, scientific, stdenv, text, unordered-containers, vector
2+, cmdargs, fetchurl, scientific, text, unordered-containers, vector
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "aeson-pretty";
5 pname = "aeson-pretty";
6 version = "0.8.5";
6 version = "0.8.5";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 isLibrary = true;
11 isLibrary = true;
9 isExecutable = true;
12 isExecutable = true;
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
@@ -17,4 +20,4 @@ mkDerivation {
17 homepage = "http://github.com/informatikr/aeson-pretty";
20 homepage = "http://github.com/informatikr/aeson-pretty";
18 description = "JSON pretty-printing library and command-line tool";
21 description = "JSON pretty-printing library and command-line tool";
19 license = stdenv.lib.licenses.bsd3;
22 license = stdenv.lib.licenses.bsd3;
20−}
23+}
test/golden-test-cases/algebraic-graphs.nix.golden+7−4
@@ -1,14 +1,17 @@
1−{ mkDerivation, array, base, containers, criterion, extra
1+{ mkDerivation, array, base, containers, criterion, extra, fetchurl
2−, QuickCheck, stdenv
2+, QuickCheck
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "algebraic-graphs";
5 pname = "algebraic-graphs";
6 version = "0.0.5";
6 version = "0.0.5";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ array base containers ];
11 libraryHaskellDepends = [ array base containers ];
9 testHaskellDepends = [ base containers extra QuickCheck ];
12 testHaskellDepends = [ base containers extra QuickCheck ];
10 benchmarkHaskellDepends = [ base containers criterion ];
13 benchmarkHaskellDepends = [ base containers criterion ];
11 homepage = "https://github.com/snowleopard/alga";
14 homepage = "https://github.com/snowleopard/alga";
12 description = "A library for algebraic graph construction and transformation";
15 description = "A library for algebraic graph construction and transformation";
13 license = stdenv.lib.licenses.mit;
16 license = stdenv.lib.licenses.mit;
14−}
17+}
test/golden-test-cases/amazonka-cloudtrail.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
2−, stdenv, tasty, tasty-hunit, text, time, unordered-containers
2+, fetchurl, tasty, tasty-hunit, text, time, unordered-containers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "amazonka-cloudtrail";
5 pname = "amazonka-cloudtrail";
6 version = "1.5.0";
6 version = "1.5.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ amazonka-core base ];
11 libraryHaskellDepends = [ amazonka-core base ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
13 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/brendanhay/amazonka";
16 homepage = "https://github.com/brendanhay/amazonka";
14 description = "Amazon CloudTrail SDK";
17 description = "Amazon CloudTrail SDK";
15 license = stdenv.lib.licenses.mpl20;
18 license = stdenv.lib.licenses.mpl20;
16−}
19+}
test/golden-test-cases/amazonka-cloudwatch-logs.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
2−, stdenv, tasty, tasty-hunit, text, time, unordered-containers
2+, fetchurl, tasty, tasty-hunit, text, time, unordered-containers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "amazonka-cloudwatch-logs";
5 pname = "amazonka-cloudwatch-logs";
6 version = "1.5.0";
6 version = "1.5.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ amazonka-core base ];
11 libraryHaskellDepends = [ amazonka-core base ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
13 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/brendanhay/amazonka";
16 homepage = "https://github.com/brendanhay/amazonka";
14 description = "Amazon CloudWatch Logs SDK";
17 description = "Amazon CloudWatch Logs SDK";
15 license = stdenv.lib.licenses.mpl20;
18 license = stdenv.lib.licenses.mpl20;
16−}
19+}
test/golden-test-cases/amazonka-codedeploy.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
2−, stdenv, tasty, tasty-hunit, text, time, unordered-containers
2+, fetchurl, tasty, tasty-hunit, text, time, unordered-containers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "amazonka-codedeploy";
5 pname = "amazonka-codedeploy";
6 version = "1.5.0";
6 version = "1.5.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ amazonka-core base ];
11 libraryHaskellDepends = [ amazonka-core base ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
13 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/brendanhay/amazonka";
16 homepage = "https://github.com/brendanhay/amazonka";
14 description = "Amazon CodeDeploy SDK";
17 description = "Amazon CodeDeploy SDK";
15 license = stdenv.lib.licenses.mpl20;
18 license = stdenv.lib.licenses.mpl20;
16−}
19+}
test/golden-test-cases/amazonka-cognito-idp.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
2−, stdenv, tasty, tasty-hunit, text, time, unordered-containers
2+, fetchurl, tasty, tasty-hunit, text, time, unordered-containers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "amazonka-cognito-idp";
5 pname = "amazonka-cognito-idp";
6 version = "1.5.0";
6 version = "1.5.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ amazonka-core base ];
11 libraryHaskellDepends = [ amazonka-core base ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
13 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/brendanhay/amazonka";
16 homepage = "https://github.com/brendanhay/amazonka";
14 description = "Amazon Cognito Identity Provider SDK";
17 description = "Amazon Cognito Identity Provider SDK";
15 license = stdenv.lib.licenses.mpl20;
18 license = stdenv.lib.licenses.mpl20;
16−}
19+}
test/golden-test-cases/amazonka-ecs.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
2−, stdenv, tasty, tasty-hunit, text, time, unordered-containers
2+, fetchurl, tasty, tasty-hunit, text, time, unordered-containers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "amazonka-ecs";
5 pname = "amazonka-ecs";
6 version = "1.5.0";
6 version = "1.5.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ amazonka-core base ];
11 libraryHaskellDepends = [ amazonka-core base ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
13 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/brendanhay/amazonka";
16 homepage = "https://github.com/brendanhay/amazonka";
14 description = "Amazon EC2 Container Service SDK";
17 description = "Amazon EC2 Container Service SDK";
15 license = stdenv.lib.licenses.mpl20;
18 license = stdenv.lib.licenses.mpl20;
16−}
19+}
test/golden-test-cases/amazonka-kms.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
2−, stdenv, tasty, tasty-hunit, text, time, unordered-containers
2+, fetchurl, tasty, tasty-hunit, text, time, unordered-containers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "amazonka-kms";
5 pname = "amazonka-kms";
6 version = "1.5.0";
6 version = "1.5.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ amazonka-core base ];
11 libraryHaskellDepends = [ amazonka-core base ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
13 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/brendanhay/amazonka";
16 homepage = "https://github.com/brendanhay/amazonka";
14 description = "Amazon Key Management Service SDK";
17 description = "Amazon Key Management Service SDK";
15 license = stdenv.lib.licenses.mpl20;
18 license = stdenv.lib.licenses.mpl20;
16−}
19+}
test/golden-test-cases/amazonka-lightsail.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
2−, stdenv, tasty, tasty-hunit, text, time, unordered-containers
2+, fetchurl, tasty, tasty-hunit, text, time, unordered-containers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "amazonka-lightsail";
5 pname = "amazonka-lightsail";
6 version = "1.5.0";
6 version = "1.5.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ amazonka-core base ];
11 libraryHaskellDepends = [ amazonka-core base ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
13 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/brendanhay/amazonka";
16 homepage = "https://github.com/brendanhay/amazonka";
14 description = "Amazon Lightsail SDK";
17 description = "Amazon Lightsail SDK";
15 license = stdenv.lib.licenses.mpl20;
18 license = stdenv.lib.licenses.mpl20;
16−}
19+}
test/golden-test-cases/amazonka-route53-domains.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
2−, stdenv, tasty, tasty-hunit, text, time, unordered-containers
2+, fetchurl, tasty, tasty-hunit, text, time, unordered-containers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "amazonka-route53-domains";
5 pname = "amazonka-route53-domains";
6 version = "1.5.0";
6 version = "1.5.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ amazonka-core base ];
11 libraryHaskellDepends = [ amazonka-core base ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
13 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/brendanhay/amazonka";
16 homepage = "https://github.com/brendanhay/amazonka";
14 description = "Amazon Route 53 Domains SDK";
17 description = "Amazon Route 53 Domains SDK";
15 license = stdenv.lib.licenses.mpl20;
18 license = stdenv.lib.licenses.mpl20;
16−}
19+}
test/golden-test-cases/amazonka-waf.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
1{ mkDerivation, amazonka-core, amazonka-test, base, bytestring
2−, stdenv, tasty, tasty-hunit, text, time, unordered-containers
2+, fetchurl, tasty, tasty-hunit, text, time, unordered-containers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "amazonka-waf";
5 pname = "amazonka-waf";
6 version = "1.5.0";
6 version = "1.5.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ amazonka-core base ];
11 libraryHaskellDepends = [ amazonka-core base ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
13 amazonka-core amazonka-test base bytestring tasty tasty-hunit text
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/brendanhay/amazonka";
16 homepage = "https://github.com/brendanhay/amazonka";
14 description = "Amazon WAF SDK";
17 description = "Amazon WAF SDK";
15 license = stdenv.lib.licenses.mpl20;
18 license = stdenv.lib.licenses.mpl20;
16−}
19+}
test/golden-test-cases/api-field-json-th.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, aeson, base, HUnit, lens, split, stdenv
1+{ mkDerivation, aeson, base, fetchurl, HUnit, lens, split
2, template-haskell, text
2, template-haskell, text
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "api-field-json-th";
5 pname = "api-field-json-th";
6 version = "0.1.0.2";
6 version = "0.1.0.2";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 aeson base lens split template-haskell text
12 aeson base lens split template-haskell text
10 ];
13 ];
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://github.com/nakaji-dayo/api-field-json-th";
15 homepage = "https://github.com/nakaji-dayo/api-field-json-th";
13 description = "option of aeson's deriveJSON";
16 description = "option of aeson's deriveJSON";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/app-settings.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, containers, directory, hspec, HUnit, mtl
1+{ mkDerivation, base, containers, directory, fetchurl, hspec, HUnit
2−, parsec, stdenv, text
2+, mtl, parsec, text
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "app-settings";
5 pname = "app-settings";
6 version = "0.2.0.11";
6 version = "0.2.0.11";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base containers directory mtl parsec text
12 base containers directory mtl parsec text
10 ];
13 ];
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "https://github.com/emmanueltouzery/app-settings";
17 homepage = "https://github.com/emmanueltouzery/app-settings";
15 description = "A library to manage application settings (INI file-like)";
18 description = "A library to manage application settings (INI file-like)";
16 license = stdenv.lib.licenses.bsd3;
19 license = stdenv.lib.licenses.bsd3;
17−}
20+}
test/golden-test-cases/apply-refact.nix.golden+8−5
@@ -1,12 +1,15 @@
1−{ mkDerivation, base, containers, directory, filemanip, filepath
1+{ mkDerivation, base, containers, directory, fetchurl, filemanip
2−, ghc, ghc-exactprint, mtl, optparse-applicative, process, refact
2+, filepath, ghc, ghc-exactprint, mtl, optparse-applicative, process
3−, silently, stdenv, syb, tasty, tasty-expected-failure
3+, refact, silently, syb, tasty, tasty-expected-failure
4, tasty-golden, temporary, transformers, unix-compat
4, tasty-golden, temporary, transformers, unix-compat
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "apply-refact";
7 pname = "apply-refact";
8 version = "0.4.1.0";
8 version = "0.4.1.0";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 isLibrary = true;
13 isLibrary = true;
11 isExecutable = true;
14 isExecutable = true;
12 libraryHaskellDepends = [
15 libraryHaskellDepends = [
@@ -26,4 +29,4 @@ mkDerivation {
26 ];
29 ];
27 description = "Perform refactorings specified by the refact library";
30 description = "Perform refactorings specified by the refact library";
28 license = stdenv.lib.licenses.bsd3;
31 license = stdenv.lib.licenses.bsd3;
29−}
32+}
test/golden-test-cases/async.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, HUnit, stdenv, stm, test-framework
1+{ mkDerivation, base, fetchurl, HUnit, stm, test-framework
2, test-framework-hunit
2, test-framework-hunit
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "async";
5 pname = "async";
6 version = "2.1.1.1";
6 version = "2.1.1.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base stm ];
11 libraryHaskellDepends = [ base stm ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 base HUnit test-framework test-framework-hunit
13 base HUnit test-framework test-framework-hunit
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://github.com/simonmar/async";
15 homepage = "https://github.com/simonmar/async";
13 description = "Run IO operations asynchronously and wait for their results";
16 description = "Run IO operations asynchronously and wait for their results";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/attoparsec-expr.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, attoparsec, base, stdenv }:
1+{ mkDerivation, attoparsec, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "attoparsec-expr";
3 pname = "attoparsec-expr";
4 version = "0.1.1.2";
4 version = "0.1.1.2";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ attoparsec base ];
9 libraryHaskellDepends = [ attoparsec base ];
7 description = "Port of parsec's expression parser to attoparsec";
10 description = "Port of parsec's expression parser to attoparsec";
8 license = stdenv.lib.licenses.bsd3;
11 license = stdenv.lib.licenses.bsd3;
9−}
12+}
test/golden-test-cases/attoparsec-time.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, attoparsec, base, base-prelude, bytestring, Cabal
1{ mkDerivation, attoparsec, base, base-prelude, bytestring, Cabal
2−, cabal-doctest, directory, doctest, filepath, scientific, stdenv
2+, cabal-doctest, directory, doctest, fetchurl, filepath, scientific
3, text, time
3, text, time
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "attoparsec-time";
6 pname = "attoparsec-time";
7 version = "1";
7 version = "1";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 setupHaskellDepends = [ base Cabal cabal-doctest ];
12 setupHaskellDepends = [ base Cabal cabal-doctest ];
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
11 attoparsec base base-prelude bytestring scientific text time
14 attoparsec base base-prelude bytestring scientific text time
@@ -16,4 +19,4 @@ mkDerivation {
16 homepage = "https://github.com/nikita-volkov/attoparsec-time";
19 homepage = "https://github.com/nikita-volkov/attoparsec-time";
17 description = "Attoparsec parsers of time";
20 description = "Attoparsec parsers of time";
18 license = stdenv.lib.licenses.mit;
21 license = stdenv.lib.licenses.mit;
19−}
22+}
test/golden-test-cases/avers-server.nix.golden+8−5
@@ -1,13 +1,16 @@
1{ mkDerivation, aeson, avers, avers-api, base, base64-bytestring
1{ mkDerivation, aeson, avers, avers-api, base, base64-bytestring
2, bytestring, bytestring-conversion, containers, cookie, cryptonite
2, bytestring, bytestring-conversion, containers, cookie, cryptonite
3−, http-types, memory, mtl, resource-pool, rethinkdb-client-driver
3+, fetchurl, http-types, memory, mtl, resource-pool
4−, servant, servant-server, stdenv, stm, text, time, transformers
4+, rethinkdb-client-driver, servant, servant-server, stm, text, time
5−, wai, wai-websockets, websockets
5+, transformers, wai, wai-websockets, websockets
6}:
6}:
7mkDerivation {
7mkDerivation {
8 pname = "avers-server";
8 pname = "avers-server";
9 version = "0.1.0";
9 version = "0.1.0";
10+ src = fetchurl {
11+ url = "http://example.org/";
10− sha256 = "deadbeef";
12+ sha256 = "abc";
13+ };
11 libraryHaskellDepends = [
14 libraryHaskellDepends = [
12 aeson avers avers-api base base64-bytestring bytestring
15 aeson avers avers-api base base64-bytestring bytestring
13 bytestring-conversion containers cookie cryptonite http-types
16 bytestring-conversion containers cookie cryptonite http-types
@@ -18,4 +21,4 @@ mkDerivation {
18 homepage = "http://github.com/wereHamster/avers-server";
21 homepage = "http://github.com/wereHamster/avers-server";
19 description = "Server implementation of the Avers API";
22 description = "Server implementation of the Avers API";
20 license = stdenv.lib.licenses.mit;
23 license = stdenv.lib.licenses.mit;
21−}
24+}
test/golden-test-cases/aws.nix.golden+9−6
@@ -2,17 +2,20 @@
2, base64-bytestring, blaze-builder, byteable, bytestring
2, base64-bytestring, blaze-builder, byteable, bytestring
3, case-insensitive, cereal, conduit, conduit-combinators
3, case-insensitive, cereal, conduit, conduit-combinators
4, conduit-extra, containers, cryptonite, data-default, directory
4, conduit-extra, containers, cryptonite, data-default, directory
5−, errors, filepath, http-client, http-client-tls, http-conduit
5+, errors, fetchurl, filepath, http-client, http-client-tls
6−, http-types, lifted-base, memory, monad-control, mtl, network
6+, http-conduit, http-types, lifted-base, memory, monad-control, mtl
7−, old-locale, QuickCheck, quickcheck-instances, resourcet, safe
7+, network, old-locale, QuickCheck, quickcheck-instances, resourcet
8−, scientific, stdenv, tagged, tasty, tasty-hunit, tasty-quickcheck
8+, safe, scientific, tagged, tasty, tasty-hunit, tasty-quickcheck
9, text, time, transformers, transformers-base, unordered-containers
9, text, time, transformers, transformers-base, unordered-containers
10, utf8-string, vector, xml-conduit
10, utf8-string, vector, xml-conduit
11}:
11}:
12mkDerivation {
12mkDerivation {
13 pname = "aws";
13 pname = "aws";
14 version = "0.18";
14 version = "0.18";
15+ src = fetchurl {
16+ url = "http://example.org/";
15− sha256 = "deadbeef";
17+ sha256 = "abc";
18+ };
16 isLibrary = true;
19 isLibrary = true;
17 isExecutable = true;
20 isExecutable = true;
18 libraryHaskellDepends = [
21 libraryHaskellDepends = [
@@ -32,4 +35,4 @@ mkDerivation {
32 homepage = "http://github.com/aristidb/aws";
35 homepage = "http://github.com/aristidb/aws";
33 description = "Amazon Web Services (AWS) for Haskell";
36 description = "Amazon Web Services (AWS) for Haskell";
34 license = stdenv.lib.licenses.bsd3;
37 license = stdenv.lib.licenses.bsd3;
35−}
38+}
test/golden-test-cases/bbdb.nix.golden+6−3
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, hspec, parsec, stdenv }:
1+{ mkDerivation, base, fetchurl, hspec, parsec }:
2mkDerivation {
2mkDerivation {
3 pname = "bbdb";
3 pname = "bbdb";
4 version = "0.8";
4 version = "0.8";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base parsec ];
9 libraryHaskellDepends = [ base parsec ];
7 testHaskellDepends = [ base hspec parsec ];
10 testHaskellDepends = [ base hspec parsec ];
8 homepage = "https://github.com/henrylaxen/bbdb";
11 homepage = "https://github.com/henrylaxen/bbdb";
9 description = "Ability to read, write, and modify BBDB files";
12 description = "Ability to read, write, and modify BBDB files";
10 license = stdenv.lib.licenses.gpl3;
13 license = stdenv.lib.licenses.gpl3;
11−}
14+}
test/golden-test-cases/benchpress.nix.golden+6−3
@@ -1,8 +1,11 @@
1−{ mkDerivation, base, bytestring, mtl, stdenv, time }:
1+{ mkDerivation, base, bytestring, fetchurl, mtl, time }:
2mkDerivation {
2mkDerivation {
3 pname = "benchpress";
3 pname = "benchpress";
4 version = "0.2.2.10";
4 version = "0.2.2.10";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 isLibrary = true;
9 isLibrary = true;
7 isExecutable = true;
10 isExecutable = true;
8 libraryHaskellDepends = [ base mtl time ];
11 libraryHaskellDepends = [ base mtl time ];
@@ -10,4 +13,4 @@ mkDerivation {
10 homepage = "https://github.com/WillSewell/benchpress";
13 homepage = "https://github.com/WillSewell/benchpress";
11 description = "Micro-benchmarking with detailed statistics";
14 description = "Micro-benchmarking with detailed statistics";
12 license = stdenv.lib.licenses.bsd3;
15 license = stdenv.lib.licenses.bsd3;
13−}
16+}
test/golden-test-cases/binary-bits.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, binary, bytestring, QuickCheck, random
1+{ mkDerivation, base, binary, bytestring, fetchurl, QuickCheck
2−, stdenv, test-framework, test-framework-quickcheck2
2+, random, test-framework, test-framework-quickcheck2
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "binary-bits";
5 pname = "binary-bits";
6 version = "0.5";
6 version = "0.5";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base binary bytestring ];
11 libraryHaskellDepends = [ base binary bytestring ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 base binary bytestring QuickCheck random test-framework
13 base binary bytestring QuickCheck random test-framework
@@ -12,4 +15,4 @@ mkDerivation {
12 ];
15 ];
13 description = "Bit parsing/writing on top of binary";
16 description = "Bit parsing/writing on top of binary";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/binary-tagged.nix.golden+7−4
@@ -1,13 +1,16 @@
1{ mkDerivation, aeson, array, base, base16-bytestring, bifunctors
1{ mkDerivation, aeson, array, base, base16-bytestring, bifunctors
2, binary, binary-orphans, bytestring, containers, criterion
2, binary, binary-orphans, bytestring, containers, criterion
3−, deepseq, generics-sop, hashable, nats, quickcheck-instances
3+, deepseq, fetchurl, generics-sop, hashable, nats
4−, scientific, semigroups, SHA, stdenv, tagged, tasty
4+, quickcheck-instances, scientific, semigroups, SHA, tagged, tasty
5, tasty-quickcheck, text, time, unordered-containers, vector
5, tasty-quickcheck, text, time, unordered-containers, vector
6}:
6}:
7mkDerivation {
7mkDerivation {
8 pname = "binary-tagged";
8 pname = "binary-tagged";
9 version = "0.1.4.2";
9 version = "0.1.4.2";
10+ src = fetchurl {
11+ url = "http://example.org/";
10− sha256 = "deadbeef";
12+ sha256 = "abc";
13+ };
11 libraryHaskellDepends = [
14 libraryHaskellDepends = [
12 aeson array base base16-bytestring binary bytestring containers
15 aeson array base base16-bytestring binary bytestring containers
13 generics-sop hashable nats scientific semigroups SHA tagged text
16 generics-sop hashable nats scientific semigroups SHA tagged text
@@ -27,4 +30,4 @@ mkDerivation {
27 homepage = "https://github.com/phadej/binary-tagged#readme";
30 homepage = "https://github.com/phadej/binary-tagged#readme";
28 description = "Tagged binary serialisation";
31 description = "Tagged binary serialisation";
29 license = stdenv.lib.licenses.bsd3;
32 license = stdenv.lib.licenses.bsd3;
30−}
33+}
test/golden-test-cases/bindings-uname.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, base, stdenv }:
1+{ mkDerivation, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "bindings-uname";
3 pname = "bindings-uname";
4 version = "0.1";
4 version = "0.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 description = "Low-level binding to POSIX uname(3)";
10 description = "Low-level binding to POSIX uname(3)";
8 license = stdenv.lib.licenses.publicDomain;
11 license = stdenv.lib.licenses.publicDomain;
9−}
12+}
test/golden-test-cases/bioalign.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, biocore, bytestring, stdenv }:
1+{ mkDerivation, base, biocore, bytestring, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "bioalign";
3 pname = "bioalign";
4 version = "0.0.5";
4 version = "0.0.5";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base biocore bytestring ];
9 libraryHaskellDepends = [ base biocore bytestring ];
7 homepage = "https://patch-tag.com/r/dfornika/biophd/home";
10 homepage = "https://patch-tag.com/r/dfornika/biophd/home";
8 description = "Data structures and helper functions for calculating alignments";
11 description = "Data structures and helper functions for calculating alignments";
9 license = "GPL";
12 license = "GPL";
10−}
13+}
test/golden-test-cases/bits.nix.golden+7−4
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, bytes, Cabal, cabal-doctest, doctest, mtl
1+{ mkDerivation, base, bytes, Cabal, cabal-doctest, doctest
2−, stdenv, transformers
2+, fetchurl, mtl, transformers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "bits";
5 pname = "bits";
6 version = "0.5.1";
6 version = "0.5.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 setupHaskellDepends = [ base Cabal cabal-doctest ];
11 setupHaskellDepends = [ base Cabal cabal-doctest ];
9 libraryHaskellDepends = [ base bytes mtl transformers ];
12 libraryHaskellDepends = [ base bytes mtl transformers ];
10 testHaskellDepends = [ base doctest ];
13 testHaskellDepends = [ base doctest ];
11 homepage = "http://github.com/ekmett/bits";
14 homepage = "http://github.com/ekmett/bits";
12 description = "Various bit twiddling and bitwise serialization primitives";
15 description = "Various bit twiddling and bitwise serialization primitives";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/blank-canvas.nix.golden+7−4
@@ -1,13 +1,16 @@
1{ mkDerivation, aeson, base, base-compat, base64-bytestring
1{ mkDerivation, aeson, base, base-compat, base64-bytestring
2, bytestring, colour, containers, data-default-class, directory
2, bytestring, colour, containers, data-default-class, directory
3−, http-types, kansas-comet, mime-types, process, scotty, shake
3+, fetchurl, http-types, kansas-comet, mime-types, process, scotty
4−, stdenv, stm, text, text-show, time, transformers, unix, vector
4+, shake, stm, text, text-show, time, transformers, unix, vector
5, wai, wai-extra, warp
5, wai, wai-extra, warp
6}:
6}:
7mkDerivation {
7mkDerivation {
8 pname = "blank-canvas";
8 pname = "blank-canvas";
9 version = "0.6.1";
9 version = "0.6.1";
10+ src = fetchurl {
11+ url = "http://example.org/";
10− sha256 = "deadbeef";
12+ sha256 = "abc";
13+ };
11 enableSeparateDataOutput = true;
14 enableSeparateDataOutput = true;
12 libraryHaskellDepends = [
15 libraryHaskellDepends = [
13 aeson base base-compat base64-bytestring bytestring colour
16 aeson base base-compat base64-bytestring bytestring colour
@@ -20,4 +23,4 @@ mkDerivation {
20 homepage = "https://github.com/ku-fpg/blank-canvas/wiki";
23 homepage = "https://github.com/ku-fpg/blank-canvas/wiki";
21 description = "HTML5 Canvas Graphics Library";
24 description = "HTML5 Canvas Graphics Library";
22 license = stdenv.lib.licenses.bsd3;
25 license = stdenv.lib.licenses.bsd3;
23−}
26+}
test/golden-test-cases/blaze-html.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, base, blaze-builder, blaze-markup, bytestring
1{ mkDerivation, base, blaze-builder, blaze-markup, bytestring
2−, containers, HUnit, QuickCheck, stdenv, test-framework
2+, containers, fetchurl, HUnit, QuickCheck, test-framework
3, test-framework-hunit, test-framework-quickcheck2, text
3, test-framework-hunit, test-framework-quickcheck2, text
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "blaze-html";
6 pname = "blaze-html";
7 version = "0.9.0.1";
7 version = "0.9.0.1";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 base blaze-builder blaze-markup bytestring text
13 base blaze-builder blaze-markup bytestring text
11 ];
14 ];
@@ -17,4 +20,4 @@ mkDerivation {
17 homepage = "http://jaspervdj.be/blaze";
20 homepage = "http://jaspervdj.be/blaze";
18 description = "A blazingly fast HTML combinator library for Haskell";
21 description = "A blazingly fast HTML combinator library for Haskell";
19 license = stdenv.lib.licenses.bsd3;
22 license = stdenv.lib.licenses.bsd3;
20−}
23+}
test/golden-test-cases/blaze-markup.nix.golden+7−4
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, blaze-builder, bytestring, containers, HUnit
1+{ mkDerivation, base, blaze-builder, bytestring, containers
2−, QuickCheck, stdenv, test-framework, test-framework-hunit
2+, fetchurl, HUnit, QuickCheck, test-framework, test-framework-hunit
3, test-framework-quickcheck2, text
3, test-framework-quickcheck2, text
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "blaze-markup";
6 pname = "blaze-markup";
7 version = "0.8.0.0";
7 version = "0.8.0.0";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [ base blaze-builder bytestring text ];
12 libraryHaskellDepends = [ base blaze-builder bytestring text ];
10 testHaskellDepends = [
13 testHaskellDepends = [
11 base blaze-builder bytestring containers HUnit QuickCheck
14 base blaze-builder bytestring containers HUnit QuickCheck
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "http://jaspervdj.be/blaze";
17 homepage = "http://jaspervdj.be/blaze";
15 description = "A blazingly fast markup combinator library for Haskell";
18 description = "A blazingly fast markup combinator library for Haskell";
16 license = stdenv.lib.licenses.bsd3;
19 license = stdenv.lib.licenses.bsd3;
17−}
20+}
test/golden-test-cases/blaze-svg.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, blaze-markup, mtl, stdenv }:
1+{ mkDerivation, base, blaze-markup, fetchurl, mtl }:
2mkDerivation {
2mkDerivation {
3 pname = "blaze-svg";
3 pname = "blaze-svg";
4 version = "0.3.6.1";
4 version = "0.3.6.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base blaze-markup mtl ];
9 libraryHaskellDepends = [ base blaze-markup mtl ];
7 homepage = "https://github.com/deepakjois/blaze-svg";
10 homepage = "https://github.com/deepakjois/blaze-svg";
8 description = "SVG combinator library";
11 description = "SVG combinator library";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/blosum.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, containers, fasta, lens, optparse-applicative
1+{ mkDerivation, base, containers, fasta, fetchurl, lens
2−, pipes, pipes-text, split, stdenv, text, text-show
2+, optparse-applicative, pipes, pipes-text, split, text, text-show
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "blosum";
5 pname = "blosum";
6 version = "0.1.1.4";
6 version = "0.1.1.4";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 isLibrary = true;
11 isLibrary = true;
9 isExecutable = true;
12 isExecutable = true;
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
@@ -17,4 +20,4 @@ mkDerivation {
17 homepage = "http://github.com/GregorySchwartz/blosum#readme";
20 homepage = "http://github.com/GregorySchwartz/blosum#readme";
18 description = "BLOSUM generator";
21 description = "BLOSUM generator";
19 license = stdenv.lib.licenses.gpl2;
22 license = stdenv.lib.licenses.gpl2;
20−}
23+}
test/golden-test-cases/boomerang.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, base, mtl, stdenv, template-haskell, text }:
1+{ mkDerivation, base, fetchurl, mtl, template-haskell, text }:
2mkDerivation {
2mkDerivation {
3 pname = "boomerang";
3 pname = "boomerang";
4 version = "1.4.5.3";
4 version = "1.4.5.3";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base mtl template-haskell text ];
9 libraryHaskellDepends = [ base mtl template-haskell text ];
7 description = "Library for invertible parsing and printing";
10 description = "Library for invertible parsing and printing";
8 license = stdenv.lib.licenses.bsd3;
11 license = stdenv.lib.licenses.bsd3;
9−}
12+}
test/golden-test-cases/boxes.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, QuickCheck, split, stdenv }:
1+{ mkDerivation, base, fetchurl, QuickCheck, split }:
2mkDerivation {
2mkDerivation {
3 pname = "boxes";
3 pname = "boxes";
4 version = "0.1.4";
4 version = "0.1.4";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base split ];
9 libraryHaskellDepends = [ base split ];
7 testHaskellDepends = [ base QuickCheck split ];
10 testHaskellDepends = [ base QuickCheck split ];
8 description = "2D text pretty-printing library";
11 description = "2D text pretty-printing library";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/brittany.nix.golden+8−5
@@ -1,14 +1,17 @@
1{ mkDerivation, aeson, base, butcher, bytestring, cmdargs
1{ mkDerivation, aeson, base, butcher, bytestring, cmdargs
2, containers, czipwith, data-tree-print, deepseq, directory, extra
2, containers, czipwith, data-tree-print, deepseq, directory, extra
3−, filepath, ghc, ghc-boot-th, ghc-exactprint, ghc-paths, hspec
3+, fetchurl, filepath, ghc, ghc-boot-th, ghc-exactprint, ghc-paths
4−, monad-memo, mtl, multistate, neat-interpolation, parsec, pretty
4+, hspec, monad-memo, mtl, multistate, neat-interpolation, parsec
5−, safe, semigroups, stdenv, strict, syb, text, transformers
5+, pretty, safe, semigroups, strict, syb, text, transformers
6, uniplate, unsafe, yaml
6, uniplate, unsafe, yaml
7}:
7}:
8mkDerivation {
8mkDerivation {
9 pname = "brittany";
9 pname = "brittany";
10 version = "0.9.0.0";
10 version = "0.9.0.0";
11+ src = fetchurl {
12+ url = "http://example.org/";
11− sha256 = "deadbeef";
13+ sha256 = "abc";
14+ };
12 isLibrary = true;
15 isLibrary = true;
13 isExecutable = true;
16 isExecutable = true;
14 libraryHaskellDepends = [
17 libraryHaskellDepends = [
@@ -35,4 +38,4 @@ mkDerivation {
35 homepage = "https://github.com/lspitzner/brittany/";
38 homepage = "https://github.com/lspitzner/brittany/";
36 description = "Haskell source code formatter";
39 description = "Haskell source code formatter";
37 license = stdenv.lib.licenses.agpl3;
40 license = stdenv.lib.licenses.agpl3;
38−}
41+}
test/golden-test-cases/broadcast-chan.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv }:
1+{ mkDerivation, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "broadcast-chan";
3 pname = "broadcast-chan";
4 version = "0.1.1";
4 version = "0.1.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 homepage = "https://github.com/merijn/broadcast-chan";
10 homepage = "https://github.com/merijn/broadcast-chan";
8 description = "Broadcast channel type that avoids 0 reader space leaks";
11 description = "Broadcast channel type that avoids 0 reader space leaks";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/butcher.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, base, bifunctors, containers, deque, either, extra
1{ mkDerivation, base, bifunctors, containers, deque, either, extra
2−, free, microlens, microlens-th, mtl, multistate, pretty, stdenv
2+, fetchurl, free, microlens, microlens-th, mtl, multistate, pretty
3, transformers, unsafe, void
3, transformers, unsafe, void
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "butcher";
6 pname = "butcher";
7 version = "1.2.1.0";
7 version = "1.2.1.0";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 base bifunctors containers deque either extra free microlens
13 base bifunctors containers deque either extra free microlens
11 microlens-th mtl multistate pretty transformers unsafe void
14 microlens-th mtl multistate pretty transformers unsafe void
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/lspitzner/butcher/";
16 homepage = "https://github.com/lspitzner/butcher/";
14 description = "Chops a command or program invocation into digestable pieces";
17 description = "Chops a command or program invocation into digestable pieces";
15 license = stdenv.lib.licenses.bsd3;
18 license = stdenv.lib.licenses.bsd3;
16−}
19+}
test/golden-test-cases/bzlib.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, bzip2, stdenv }:
1+{ mkDerivation, base, bytestring, bzip2, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "bzlib";
3 pname = "bzlib";
4 version = "0.5.0.5";
4 version = "0.5.0.5";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base bytestring ];
9 libraryHaskellDepends = [ base bytestring ];
7 librarySystemDepends = [ bzip2 ];
10 librarySystemDepends = [ bzip2 ];
8 description = "Compression and decompression in the bzip2 format";
11 description = "Compression and decompression in the bzip2 format";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/case-insensitive.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, criterion, deepseq, hashable
1+{ mkDerivation, base, bytestring, criterion, deepseq, fetchurl
2−, HUnit, stdenv, test-framework, test-framework-hunit, text
2+, hashable, HUnit, test-framework, test-framework-hunit, text
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "case-insensitive";
5 pname = "case-insensitive";
6 version = "1.2.0.10";
6 version = "1.2.0.10";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base bytestring deepseq hashable text ];
11 libraryHaskellDepends = [ base bytestring deepseq hashable text ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 base bytestring HUnit test-framework test-framework-hunit text
13 base bytestring HUnit test-framework test-framework-hunit text
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/basvandijk/case-insensitive";
16 homepage = "https://github.com/basvandijk/case-insensitive";
14 description = "Case insensitive string comparison";
17 description = "Case insensitive string comparison";
15 license = stdenv.lib.licenses.bsd3;
18 license = stdenv.lib.licenses.bsd3;
16−}
19+}
test/golden-test-cases/cassava-conduit.nix.golden+7−4
@@ -1,11 +1,14 @@
1{ mkDerivation, array, base, bifunctors, bytestring, cassava
1{ mkDerivation, array, base, bifunctors, bytestring, cassava
2−, conduit, conduit-extra, containers, criterion, mtl, QuickCheck
2+, conduit, conduit-extra, containers, criterion, fetchurl, mtl
3−, stdenv, text
3+, QuickCheck, text
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "cassava-conduit";
6 pname = "cassava-conduit";
7 version = "0.4.0.1";
7 version = "0.4.0.1";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 array base bifunctors bytestring cassava conduit conduit-extra
13 array base bifunctors bytestring cassava conduit conduit-extra
11 containers mtl text
14 containers mtl text
@@ -17,4 +20,4 @@ mkDerivation {
17 homepage = "https://github.com/domdere/cassava-conduit";
20 homepage = "https://github.com/domdere/cassava-conduit";
18 description = "Conduit interface for cassava package";
21 description = "Conduit interface for cassava package";
19 license = stdenv.lib.licenses.bsd3;
22 license = stdenv.lib.licenses.bsd3;
20−}
23+}
test/golden-test-cases/cassette.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, base, stdenv }:
1+{ mkDerivation, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "cassette";
3 pname = "cassette";
4 version = "0.1.0";
4 version = "0.1.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 description = "A combinator library for simultaneously defining parsers and pretty printers";
10 description = "A combinator library for simultaneously defining parsers and pretty printers";
8 license = stdenv.lib.licenses.bsd3;
11 license = stdenv.lib.licenses.bsd3;
9−}
12+}
test/golden-test-cases/cereal-text.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, cereal, stdenv, text }:
1+{ mkDerivation, base, cereal, fetchurl, text }:
2mkDerivation {
2mkDerivation {
3 pname = "cereal-text";
3 pname = "cereal-text";
4 version = "0.1.0.2";
4 version = "0.1.0.2";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base cereal text ];
9 libraryHaskellDepends = [ base cereal text ];
7 homepage = "https://github.com/ulikoehler/cereal-text";
10 homepage = "https://github.com/ulikoehler/cereal-text";
8 description = "Data.Text instances for the cereal serialization library";
11 description = "Data.Text instances for the cereal serialization library";
9 license = stdenv.lib.licenses.asl20;
12 license = stdenv.lib.licenses.asl20;
10−}
13+}
test/golden-test-cases/cheapskate.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, base, blaze-html, bytestring, containers
1{ mkDerivation, base, blaze-html, bytestring, containers
2−, data-default, deepseq, mtl, stdenv, syb, text, uniplate
2+, data-default, deepseq, fetchurl, mtl, syb, text, uniplate
3, xss-sanitize
3, xss-sanitize
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "cheapskate";
6 pname = "cheapskate";
7 version = "0.1.1";
7 version = "0.1.1";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 isLibrary = true;
12 isLibrary = true;
10 isExecutable = true;
13 isExecutable = true;
11 libraryHaskellDepends = [
14 libraryHaskellDepends = [
@@ -16,4 +19,4 @@ mkDerivation {
16 homepage = "http://github.com/jgm/cheapskate";
19 homepage = "http://github.com/jgm/cheapskate";
17 description = "Experimental markdown processor";
20 description = "Experimental markdown processor";
18 license = stdenv.lib.licenses.bsd3;
21 license = stdenv.lib.licenses.bsd3;
19−}
22+}
test/golden-test-cases/chell.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, ansi-terminal, base, bytestring, options, patience
1+{ mkDerivation, ansi-terminal, base, bytestring, fetchurl, options
2−, random, stdenv, template-haskell, text, transformers
2+, patience, random, template-haskell, text, transformers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "chell";
5 pname = "chell";
6 version = "0.4.0.2";
6 version = "0.4.0.2";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 ansi-terminal base bytestring options patience random
12 ansi-terminal base bytestring options patience random
10 template-haskell text transformers
13 template-haskell text transformers
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://john-millikin.com/software/chell/";
15 homepage = "https://john-millikin.com/software/chell/";
13 description = "A simple and intuitive library for automated testing";
16 description = "A simple and intuitive library for automated testing";
14 license = stdenv.lib.licenses.mit;
17 license = stdenv.lib.licenses.mit;
15−}
18+}
test/golden-test-cases/clumpiness.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, base, containers, stdenv, tree-fun }:
1+{ mkDerivation, base, containers, fetchurl, tree-fun }:
2mkDerivation {
2mkDerivation {
3 pname = "clumpiness";
3 pname = "clumpiness";
4 version = "0.17.0.0";
4 version = "0.17.0.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base containers tree-fun ];
9 libraryHaskellDepends = [ base containers tree-fun ];
7 description = "Calculate the clumpiness of leaf properties in a tree";
10 description = "Calculate the clumpiness of leaf properties in a tree";
8 license = stdenv.lib.licenses.gpl3;
11 license = stdenv.lib.licenses.gpl3;
9−}
12+}
test/golden-test-cases/code-page.nix.golden+6−3
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, stdenv }:
1+{ mkDerivation, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "code-page";
3 pname = "code-page";
4 version = "0.1.3";
4 version = "0.1.3";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 testHaskellDepends = [ base ];
10 testHaskellDepends = [ base ];
8 homepage = "https://github.com/RyanGlScott/code-page";
11 homepage = "https://github.com/RyanGlScott/code-page";
9 description = "Windows code page library for Haskell";
12 description = "Windows code page library for Haskell";
10 license = stdenv.lib.licenses.bsd3;
13 license = stdenv.lib.licenses.bsd3;
11−}
14+}
test/golden-test-cases/colorize-haskell.nix.golden+6−3
@@ -1,8 +1,11 @@
1−{ mkDerivation, ansi-terminal, base, haskell-lexer, stdenv }:
1+{ mkDerivation, ansi-terminal, base, fetchurl, haskell-lexer }:
2mkDerivation {
2mkDerivation {
3 pname = "colorize-haskell";
3 pname = "colorize-haskell";
4 version = "1.0.1";
4 version = "1.0.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 isLibrary = true;
9 isLibrary = true;
7 isExecutable = true;
10 isExecutable = true;
8 libraryHaskellDepends = [ ansi-terminal base haskell-lexer ];
11 libraryHaskellDepends = [ ansi-terminal base haskell-lexer ];
@@ -10,4 +13,4 @@ mkDerivation {
10 homepage = "http://github.com/yav/colorize-haskell";
13 homepage = "http://github.com/yav/colorize-haskell";
11 description = "Highligt Haskell source";
14 description = "Highligt Haskell source";
12 license = stdenv.lib.licenses.bsd3;
15 license = stdenv.lib.licenses.bsd3;
13−}
16+}
test/golden-test-cases/countable.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, silently, stdenv, tasty
1+{ mkDerivation, base, bytestring, fetchurl, silently, tasty
2, tasty-golden, tasty-hunit
2, tasty-golden, tasty-hunit
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "countable";
5 pname = "countable";
6 version = "1.0";
6 version = "1.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base ];
11 libraryHaskellDepends = [ base ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 base bytestring silently tasty tasty-golden tasty-hunit
13 base bytestring silently tasty tasty-golden tasty-hunit
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://github.com/AshleyYakeley/countable";
15 homepage = "https://github.com/AshleyYakeley/countable";
13 description = "Countable, Searchable, Finite, Empty classes";
16 description = "Countable, Searchable, Finite, Empty classes";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/cpu.nix.golden+6−3
@@ -1,8 +1,11 @@
1−{ mkDerivation, base, stdenv }:
1+{ mkDerivation, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "cpu";
3 pname = "cpu";
4 version = "0.1.2";
4 version = "0.1.2";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 isLibrary = true;
9 isLibrary = true;
7 isExecutable = true;
10 isExecutable = true;
8 enableSeparateDataOutput = true;
11 enableSeparateDataOutput = true;
@@ -10,4 +13,4 @@ mkDerivation {
10 homepage = "http://github.com/vincenthz/hs-cpu";
13 homepage = "http://github.com/vincenthz/hs-cpu";
11 description = "Cpu information and properties helpers";
14 description = "Cpu information and properties helpers";
12 license = stdenv.lib.licenses.bsd3;
15 license = stdenv.lib.licenses.bsd3;
13−}
16+}
test/golden-test-cases/criterion.nix.golden+7−4
@@ -1,15 +1,18 @@
1{ mkDerivation, aeson, ansi-wl-pprint, base, base-compat, binary
1{ mkDerivation, aeson, ansi-wl-pprint, base, base-compat, binary
2, bytestring, cassava, code-page, containers, deepseq, directory
2, bytestring, cassava, code-page, containers, deepseq, directory
3−, exceptions, filepath, Glob, HUnit, js-flot, js-jquery
3+, exceptions, fetchurl, filepath, Glob, HUnit, js-flot, js-jquery
4, microstache, mtl, mwc-random, optparse-applicative, parsec
4, microstache, mtl, mwc-random, optparse-applicative, parsec
5−, QuickCheck, semigroups, statistics, stdenv, tasty, tasty-hunit
5+, QuickCheck, semigroups, statistics, tasty, tasty-hunit
6, tasty-quickcheck, text, time, transformers, transformers-compat
6, tasty-quickcheck, text, time, transformers, transformers-compat
7, vector, vector-algorithms
7, vector, vector-algorithms
8}:
8}:
9mkDerivation {
9mkDerivation {
10 pname = "criterion";
10 pname = "criterion";
11 version = "1.2.6.0";
11 version = "1.2.6.0";
12+ src = fetchurl {
13+ url = "http://example.org/";
12− sha256 = "deadbeef";
14+ sha256 = "abc";
15+ };
13 isLibrary = true;
16 isLibrary = true;
14 isExecutable = true;
17 isExecutable = true;
15 enableSeparateDataOutput = true;
18 enableSeparateDataOutput = true;
@@ -28,4 +31,4 @@ mkDerivation {
28 homepage = "http://www.serpentine.com/criterion";
31 homepage = "http://www.serpentine.com/criterion";
29 description = "Robust, reliable performance measurement and analysis";
32 description = "Robust, reliable performance measurement and analysis";
30 license = stdenv.lib.licenses.bsd3;
33 license = stdenv.lib.licenses.bsd3;
31−}
34+}
test/golden-test-cases/crypt-sha512.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, attoparsec, base, bytestring, cryptohash-sha512
1{ mkDerivation, attoparsec, base, bytestring, cryptohash-sha512
2−, quickcheck-instances, stdenv, tasty, tasty-hunit
2+, fetchurl, quickcheck-instances, tasty, tasty-hunit
3, tasty-quickcheck
3, tasty-quickcheck
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "crypt-sha512";
6 pname = "crypt-sha512";
7 version = "0";
7 version = "0";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 attoparsec base bytestring cryptohash-sha512
13 attoparsec base bytestring cryptohash-sha512
11 ];
14 ];
@@ -16,4 +19,4 @@ mkDerivation {
16 homepage = "https://github.com/phadej/crypt-sha512";
19 homepage = "https://github.com/phadej/crypt-sha512";
17 description = "Pure Haskell implelementation for GNU SHA512 crypt algorithm";
20 description = "Pure Haskell implelementation for GNU SHA512 crypt algorithm";
18 license = stdenv.lib.licenses.bsd3;
21 license = stdenv.lib.licenses.bsd3;
19−}
22+}
test/golden-test-cases/crypto-random-api.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, entropy, stdenv }:
1+{ mkDerivation, base, bytestring, entropy, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "crypto-random-api";
3 pname = "crypto-random-api";
4 version = "0.2.0";
4 version = "0.2.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base bytestring entropy ];
9 libraryHaskellDepends = [ base bytestring entropy ];
7 homepage = "http://github.com/vincenthz/hs-crypto-random-api";
10 homepage = "http://github.com/vincenthz/hs-crypto-random-api";
8 description = "Simple random generators API for cryptography related code";
11 description = "Simple random generators API for cryptography related code";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/csv.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, base, filepath, parsec, stdenv }:
1+{ mkDerivation, base, fetchurl, filepath, parsec }:
2mkDerivation {
2mkDerivation {
3 pname = "csv";
3 pname = "csv";
4 version = "0.1.2";
4 version = "0.1.2";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base filepath parsec ];
9 libraryHaskellDepends = [ base filepath parsec ];
7 description = "CSV loader and dumper";
10 description = "CSV loader and dumper";
8 license = stdenv.lib.licenses.mit;
11 license = stdenv.lib.licenses.mit;
9−}
12+}
test/golden-test-cases/data-accessor.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, array, base, containers, stdenv, transformers }:
1+{ mkDerivation, array, base, containers, fetchurl, transformers }:
2mkDerivation {
2mkDerivation {
3 pname = "data-accessor";
3 pname = "data-accessor";
4 version = "0.2.2.7";
4 version = "0.2.2.7";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ array base containers transformers ];
9 libraryHaskellDepends = [ array base containers transformers ];
7 homepage = "http://www.haskell.org/haskellwiki/Record_access";
10 homepage = "http://www.haskell.org/haskellwiki/Record_access";
8 description = "Utilities for accessing and manipulating fields of records";
11 description = "Utilities for accessing and manipulating fields of records";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/data-default-instances-containers.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, base, containers, data-default-class, stdenv }:
1+{ mkDerivation, base, containers, data-default-class, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "data-default-instances-containers";
3 pname = "data-default-instances-containers";
4 version = "0.0.1";
4 version = "0.0.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base containers data-default-class ];
9 libraryHaskellDepends = [ base containers data-default-class ];
7 description = "Default instances for types in containers";
10 description = "Default instances for types in containers";
8 license = stdenv.lib.licenses.bsd3;
11 license = stdenv.lib.licenses.bsd3;
9−}
12+}
test/golden-test-cases/data-endian.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv }:
1+{ mkDerivation, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "data-endian";
3 pname = "data-endian";
4 version = "0.1.1";
4 version = "0.1.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 homepage = "https://github.com/mvv/data-endian";
10 homepage = "https://github.com/mvv/data-endian";
8 description = "Endian-sensitive data";
11 description = "Endian-sensitive data";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/data-msgpack.nix.golden+7−4
@@ -1,11 +1,14 @@
1{ mkDerivation, base, binary, bytestring, containers, criterion
1{ mkDerivation, base, binary, bytestring, containers, criterion
2−, data-binary-ieee754, deepseq, groom, hashable, hspec, QuickCheck
2+, data-binary-ieee754, deepseq, fetchurl, groom, hashable, hspec
3−, stdenv, text, unordered-containers, vector, void
3+, QuickCheck, text, unordered-containers, vector, void
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "data-msgpack";
6 pname = "data-msgpack";
7 version = "0.0.10";
7 version = "0.0.10";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 isLibrary = true;
12 isLibrary = true;
10 isExecutable = true;
13 isExecutable = true;
11 libraryHaskellDepends = [
14 libraryHaskellDepends = [
@@ -23,4 +26,4 @@ mkDerivation {
23 homepage = "http://msgpack.org/";
26 homepage = "http://msgpack.org/";
24 description = "A Haskell implementation of MessagePack";
27 description = "A Haskell implementation of MessagePack";
25 license = stdenv.lib.licenses.bsd3;
28 license = stdenv.lib.licenses.bsd3;
26−}
29+}
test/golden-test-cases/data-serializer.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, base, binary, bytestring, cereal, data-endian
1{ mkDerivation, base, binary, bytestring, cereal, data-endian
2−, parsers, semigroups, split, stdenv, tasty, tasty-quickcheck
2+, fetchurl, parsers, semigroups, split, tasty, tasty-quickcheck
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "data-serializer";
5 pname = "data-serializer";
6 version = "0.3.2";
6 version = "0.3.2";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base binary bytestring cereal data-endian parsers semigroups split
12 base binary bytestring cereal data-endian parsers semigroups split
10 ];
13 ];
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "https://github.com/mvv/data-serializer";
17 homepage = "https://github.com/mvv/data-serializer";
15 description = "Common API for serialization libraries";
18 description = "Common API for serialization libraries";
16 license = stdenv.lib.licenses.bsd3;
19 license = stdenv.lib.licenses.bsd3;
17−}
20+}
test/golden-test-cases/deque.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv }:
1+{ mkDerivation, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "deque";
3 pname = "deque";
4 version = "0.2";
4 version = "0.2";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 homepage = "https://github.com/nikita-volkov/deque";
10 homepage = "https://github.com/nikita-volkov/deque";
8 description = "Double-ended queue";
11 description = "Double-ended queue";
9 license = stdenv.lib.licenses.mit;
12 license = stdenv.lib.licenses.mit;
10−}
13+}
test/golden-test-cases/dhall-bash.nix.golden+7−4
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, bytestring, containers, dhall
1+{ mkDerivation, base, bytestring, containers, dhall, fetchurl
2−, neat-interpolation, optparse-generic, shell-escape, stdenv, text
2+, neat-interpolation, optparse-generic, shell-escape, text
3, text-format, trifecta, vector
3, text-format, trifecta, vector
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "dhall-bash";
6 pname = "dhall-bash";
7 version = "1.0.6";
7 version = "1.0.6";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 isLibrary = true;
12 isLibrary = true;
10 isExecutable = true;
13 isExecutable = true;
11 libraryHaskellDepends = [
14 libraryHaskellDepends = [
@@ -17,4 +20,4 @@ mkDerivation {
17 ];
20 ];
18 description = "Compile Dhall to Bash";
21 description = "Compile Dhall to Bash";
19 license = stdenv.lib.licenses.bsd3;
22 license = stdenv.lib.licenses.bsd3;
20−}
23+}
test/golden-test-cases/diagrams-solve.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, deepseq, stdenv, tasty, tasty-hunit
1+{ mkDerivation, base, deepseq, fetchurl, tasty, tasty-hunit
2, tasty-quickcheck
2, tasty-quickcheck
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "diagrams-solve";
5 pname = "diagrams-solve";
6 version = "0.1.1";
6 version = "0.1.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base ];
11 libraryHaskellDepends = [ base ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 base deepseq tasty tasty-hunit tasty-quickcheck
13 base deepseq tasty tasty-hunit tasty-quickcheck
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "http://projects.haskell.org/diagrams";
15 homepage = "http://projects.haskell.org/diagrams";
13 description = "Pure Haskell solver routines used by diagrams";
16 description = "Pure Haskell solver routines used by diagrams";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/discrimination.nix.golden+7−4
@@ -1,12 +1,15 @@
1{ mkDerivation, array, base, containers, contravariant, criterion
1{ mkDerivation, array, base, containers, contravariant, criterion
2−, deepseq, ghc-prim, hashable, primitive, profunctors, promises
2+, deepseq, fetchurl, ghc-prim, hashable, primitive, profunctors
3−, semigroups, stdenv, transformers, transformers-compat
3+, promises, semigroups, transformers, transformers-compat
4, unordered-containers, vector, void
4, unordered-containers, vector, void
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "discrimination";
7 pname = "discrimination";
8 version = "0.3";
8 version = "0.3";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
11 array base containers contravariant deepseq ghc-prim hashable
14 array base containers contravariant deepseq ghc-prim hashable
12 primitive profunctors promises semigroups transformers
15 primitive profunctors promises semigroups transformers
@@ -19,4 +22,4 @@ mkDerivation {
19 homepage = "http://github.com/ekmett/discrimination/";
22 homepage = "http://github.com/ekmett/discrimination/";
20 description = "Fast generic linear-time sorting, joins and container construction";
23 description = "Fast generic linear-time sorting, joins and container construction";
21 license = stdenv.lib.licenses.bsd3;
24 license = stdenv.lib.licenses.bsd3;
22−}
25+}
test/golden-test-cases/dotenv.nix.golden+8−5
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, base-compat, directory, exceptions, hspec
1+{ mkDerivation, base, base-compat, directory, exceptions, fetchurl
2−, hspec-megaparsec, megaparsec, optparse-applicative, process
2+, hspec, hspec-megaparsec, megaparsec, optparse-applicative
3−, stdenv, text, transformers, yaml
3+, process, text, transformers, yaml
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "dotenv";
6 pname = "dotenv";
7 version = "0.5.2.1";
7 version = "0.5.2.1";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 isLibrary = true;
12 isLibrary = true;
10 isExecutable = true;
13 isExecutable = true;
11 enableSeparateDataOutput = true;
14 enableSeparateDataOutput = true;
@@ -24,4 +27,4 @@ mkDerivation {
24 homepage = "https://github.com/stackbuilders/dotenv-hs";
27 homepage = "https://github.com/stackbuilders/dotenv-hs";
25 description = "Loads environment variables from dotenv files";
28 description = "Loads environment variables from dotenv files";
26 license = stdenv.lib.licenses.mit;
29 license = stdenv.lib.licenses.mit;
27−}
30+}
test/golden-test-cases/dotnet-timespan.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv }:
1+{ mkDerivation, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "dotnet-timespan";
3 pname = "dotnet-timespan";
4 version = "0.0.1.0";
4 version = "0.0.1.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 homepage = "http://github.com/YoEight/dotnet-timespan";
10 homepage = "http://github.com/YoEight/dotnet-timespan";
8 description = ".NET TimeSpan";
11 description = ".NET TimeSpan";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/dpor.nix.golden+7−4
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, containers, deepseq, random, semigroups
1+{ mkDerivation, base, containers, deepseq, fetchurl, random
2−, stdenv
2+, semigroups
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "dpor";
5 pname = "dpor";
6 version = "0.2.0.0";
6 version = "0.2.0.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base containers deepseq random semigroups
12 base containers deepseq random semigroups
10 ];
13 ];
11 homepage = "https://github.com/barrucadu/dejafu";
14 homepage = "https://github.com/barrucadu/dejafu";
12 description = "A generic implementation of dynamic partial-order reduction (DPOR) for testing arbitrary models of concurrency";
15 description = "A generic implementation of dynamic partial-order reduction (DPOR) for testing arbitrary models of concurrency";
13 license = stdenv.lib.licenses.mit;
16 license = stdenv.lib.licenses.mit;
14−}
17+}
test/golden-test-cases/drawille.nix.golden+6−3
@@ -1,8 +1,11 @@
1−{ mkDerivation, base, containers, hspec, QuickCheck, stdenv }:
1+{ mkDerivation, base, containers, fetchurl, hspec, QuickCheck }:
2mkDerivation {
2mkDerivation {
3 pname = "drawille";
3 pname = "drawille";
4 version = "0.1.2.0";
4 version = "0.1.2.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 isLibrary = true;
9 isLibrary = true;
7 isExecutable = true;
10 isExecutable = true;
8 libraryHaskellDepends = [ base containers ];
11 libraryHaskellDepends = [ base containers ];
@@ -10,4 +13,4 @@ mkDerivation {
10 homepage = "https://github.com/yamadapc/haskell-drawille#readme";
13 homepage = "https://github.com/yamadapc/haskell-drawille#readme";
11 description = "A port of asciimoo's drawille to haskell";
14 description = "A port of asciimoo's drawille to haskell";
12 license = stdenv.lib.licenses.gpl3;
15 license = stdenv.lib.licenses.gpl3;
13−}
16+}
test/golden-test-cases/drifter-postgresql.nix.golden+8−5
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, containers, drifter, either, mtl
1+{ mkDerivation, base, containers, drifter, either, fetchurl, mtl
2−, postgresql-simple, stdenv, tasty, tasty-hunit, text, time
2+, postgresql-simple, tasty, tasty-hunit, text, time, transformers
3−, transformers, transformers-compat
3+, transformers-compat
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "drifter-postgresql";
6 pname = "drifter-postgresql";
7 version = "0.2.1";
7 version = "0.2.1";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 base containers drifter mtl postgresql-simple time transformers
13 base containers drifter mtl postgresql-simple time transformers
11 transformers-compat
14 transformers-compat
@@ -16,4 +19,4 @@ mkDerivation {
16 homepage = "http://github.com/michaelxavier/drifter-postgresql";
19 homepage = "http://github.com/michaelxavier/drifter-postgresql";
17 description = "PostgreSQL support for the drifter schema migration tool";
20 description = "PostgreSQL support for the drifter schema migration tool";
18 license = stdenv.lib.licenses.mit;
21 license = stdenv.lib.licenses.mit;
19−}
22+}
test/golden-test-cases/ede.nix.golden+7−5
@@ -1,13 +1,16 @@
1{ mkDerivation, aeson, ansi-wl-pprint, base, bifunctors, bytestring
1{ mkDerivation, aeson, ansi-wl-pprint, base, bifunctors, bytestring
2−, comonad, directory, double-conversion, filepath, free, lens, mtl
2+, comonad, directory, double-conversion, fetchurl, filepath, free
3−, parsers, scientific, semigroups, stdenv, tasty, tasty-golden
3+, lens, mtl, parsers, scientific, semigroups, tasty, tasty-golden
4, text, text-format, text-manipulate, trifecta
4, text, text-format, text-manipulate, trifecta
5, unordered-containers, vector
5, unordered-containers, vector
6}:
6}:
7mkDerivation {
7mkDerivation {
8 pname = "ede";
8 pname = "ede";
9 version = "0.2.8.7";
9 version = "0.2.8.7";
10+ src = fetchurl {
11+ url = "http://example.org/";
10− sha256 = "deadbeef";
12+ sha256 = "abc";
13+ };
11 enableSeparateDataOutput = true;
14 enableSeparateDataOutput = true;
12 libraryHaskellDepends = [
15 libraryHaskellDepends = [
13 aeson ansi-wl-pprint base bifunctors bytestring comonad directory
16 aeson ansi-wl-pprint base bifunctors bytestring comonad directory
@@ -21,5 +24,4 @@ mkDerivation {
21 homepage = "http://github.com/brendanhay/ede";
24 homepage = "http://github.com/brendanhay/ede";
22 description = "Templating language with similar syntax and features to Liquid or Jinja2";
25 description = "Templating language with similar syntax and features to Liquid or Jinja2";
23 license = "unknown";
26 license = "unknown";
24− hydraPlatforms = stdenv.lib.platforms.none;
25−}
27+}
test/golden-test-cases/ekg-cloudwatch.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, amazonka, amazonka-cloudwatch, amazonka-core, base
1{ mkDerivation, amazonka, amazonka-cloudwatch, amazonka-core, base
2−, bytestring, ekg-core, lens, resourcet, semigroups, stdenv, text
2+, bytestring, ekg-core, fetchurl, lens, resourcet, semigroups, text
3, time, unordered-containers
3, time, unordered-containers
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "ekg-cloudwatch";
6 pname = "ekg-cloudwatch";
7 version = "0.0.1.6";
7 version = "0.0.1.6";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 amazonka amazonka-cloudwatch amazonka-core base bytestring ekg-core
13 amazonka amazonka-cloudwatch amazonka-core base bytestring ekg-core
11 lens resourcet semigroups text time unordered-containers
14 lens resourcet semigroups text time unordered-containers
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/sellerlabs/ekg-cloudwatch#readme";
16 homepage = "https://github.com/sellerlabs/ekg-cloudwatch#readme";
14 description = "An ekg backend for Amazon Cloudwatch";
17 description = "An ekg backend for Amazon Cloudwatch";
15 license = stdenv.lib.licenses.bsd3;
18 license = stdenv.lib.licenses.bsd3;
16−}
19+}
test/golden-test-cases/emailaddress.nix.golden+8−5
@@ -1,12 +1,15 @@
1{ mkDerivation, aeson, base, bifunctors, bytestring, doctest
1{ mkDerivation, aeson, base, bifunctors, bytestring, doctest
2−, email-validate, Glob, http-api-data, opaleye, path-pieces
2+, email-validate, fetchurl, Glob, http-api-data, opaleye
3−, persistent, postgresql-simple, product-profunctors, profunctors
3+, path-pieces, persistent, postgresql-simple, product-profunctors
4−, stdenv, text
4+, profunctors, text
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "emailaddress";
7 pname = "emailaddress";
8 version = "0.2.0.0";
8 version = "0.2.0.0";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
11 aeson base bifunctors bytestring email-validate http-api-data
14 aeson base bifunctors bytestring email-validate http-api-data
12 opaleye path-pieces persistent postgresql-simple
15 opaleye path-pieces persistent postgresql-simple
@@ -16,4 +19,4 @@ mkDerivation {
16 homepage = "https://github.com/cdepillabout/emailaddress#readme";
19 homepage = "https://github.com/cdepillabout/emailaddress#readme";
17 description = "Wrapper around email-validate library adding instances for common type classes";
20 description = "Wrapper around email-validate library adding instances for common type classes";
18 license = stdenv.lib.licenses.bsd3;
21 license = stdenv.lib.licenses.bsd3;
19−}
22+}
test/golden-test-cases/envelope.nix.golden+7−4
@@ -1,13 +1,16 @@
1−{ mkDerivation, aeson, base, doctest, Glob, http-api-data, mtl
1+{ mkDerivation, aeson, base, doctest, fetchurl, Glob, http-api-data
2−, stdenv, text
2+, mtl, text
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "envelope";
5 pname = "envelope";
6 version = "0.2.2.0";
6 version = "0.2.2.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ aeson base http-api-data mtl text ];
11 libraryHaskellDepends = [ aeson base http-api-data mtl text ];
9 testHaskellDepends = [ base doctest Glob ];
12 testHaskellDepends = [ base doctest Glob ];
10 homepage = "https://github.com/cdepillabout/envelope#readme";
13 homepage = "https://github.com/cdepillabout/envelope#readme";
11 description = "Defines generic 'Envelope' type to wrap reponses from a JSON API";
14 description = "Defines generic 'Envelope' type to wrap reponses from a JSON API";
12 license = stdenv.lib.licenses.bsd3;
15 license = stdenv.lib.licenses.bsd3;
13−}
16+}
test/golden-test-cases/eventful-sqlite.nix.golden+7−4
@@ -1,11 +1,14 @@
1{ mkDerivation, aeson, base, bytestring, eventful-core
1{ mkDerivation, aeson, base, bytestring, eventful-core
2−, eventful-sql-common, eventful-test-helpers, hspec, HUnit, mtl
2+, eventful-sql-common, eventful-test-helpers, fetchurl, hspec
3−, persistent, persistent-sqlite, stdenv, text, uuid
3+, HUnit, mtl, persistent, persistent-sqlite, text, uuid
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "eventful-sqlite";
6 pname = "eventful-sqlite";
7 version = "0.2.0";
7 version = "0.2.0";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 aeson base bytestring eventful-core eventful-sql-common mtl
13 aeson base bytestring eventful-core eventful-sql-common mtl
11 persistent text uuid
14 persistent text uuid
@@ -18,4 +21,4 @@ mkDerivation {
18 homepage = "https://github.com/jdreaver/eventful#readme";
21 homepage = "https://github.com/jdreaver/eventful#readme";
19 description = "SQLite implementations for eventful";
22 description = "SQLite implementations for eventful";
20 license = stdenv.lib.licenses.mit;
23 license = stdenv.lib.licenses.mit;
21−}
24+}
test/golden-test-cases/exact-pi.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, numtype-dk, stdenv }:
1+{ mkDerivation, base, fetchurl, numtype-dk }:
2mkDerivation {
2mkDerivation {
3 pname = "exact-pi";
3 pname = "exact-pi";
4 version = "0.4.1.2";
4 version = "0.4.1.2";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base numtype-dk ];
9 libraryHaskellDepends = [ base numtype-dk ];
7 homepage = "https://github.com/dmcclean/exact-pi/";
10 homepage = "https://github.com/dmcclean/exact-pi/";
8 description = "Exact rational multiples of pi (and integer powers of pi)";
11 description = "Exact rational multiples of pi (and integer powers of pi)";
9 license = stdenv.lib.licenses.mit;
12 license = stdenv.lib.licenses.mit;
10−}
13+}
test/golden-test-cases/expiring-cache-map.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, containers, hashable, stdenv
1+{ mkDerivation, base, bytestring, containers, fetchurl, hashable
2, time, unordered-containers
2, time, unordered-containers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "expiring-cache-map";
5 pname = "expiring-cache-map";
6 version = "0.0.6.1";
6 version = "0.0.6.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base containers hashable unordered-containers
12 base containers hashable unordered-containers
10 ];
13 ];
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "https://github.com/elblake/expiring-cache-map";
17 homepage = "https://github.com/elblake/expiring-cache-map";
15 description = "General purpose simple caching";
18 description = "General purpose simple caching";
16 license = stdenv.lib.licenses.bsd3;
19 license = stdenv.lib.licenses.bsd3;
17−}
20+}
test/golden-test-cases/explicit-exception.nix.golden+6−3
@@ -1,12 +1,15 @@
1−{ mkDerivation, base, deepseq, stdenv, transformers }:
1+{ mkDerivation, base, deepseq, fetchurl, transformers }:
2mkDerivation {
2mkDerivation {
3 pname = "explicit-exception";
3 pname = "explicit-exception";
4 version = "0.1.9";
4 version = "0.1.9";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 isLibrary = true;
9 isLibrary = true;
7 isExecutable = true;
10 isExecutable = true;
8 libraryHaskellDepends = [ base deepseq transformers ];
11 libraryHaskellDepends = [ base deepseq transformers ];
9 homepage = "http://www.haskell.org/haskellwiki/Exception";
12 homepage = "http://www.haskell.org/haskellwiki/Exception";
10 description = "Exceptions which are explicit in the type signature";
13 description = "Exceptions which are explicit in the type signature";
11 license = stdenv.lib.licenses.bsd3;
14 license = stdenv.lib.licenses.bsd3;
12−}
15+}
test/golden-test-cases/fdo-notify.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, containers, dbus, stdenv }:
1+{ mkDerivation, base, containers, dbus, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "fdo-notify";
3 pname = "fdo-notify";
4 version = "0.3.1";
4 version = "0.3.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base containers dbus ];
9 libraryHaskellDepends = [ base containers dbus ];
7 homepage = "http://bitbucket.org/taejo/fdo-notify/";
10 homepage = "http://bitbucket.org/taejo/fdo-notify/";
8 description = "Desktop Notifications client";
11 description = "Desktop Notifications client";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/fgl.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, array, base, containers, deepseq, hspec, microbench
1+{ mkDerivation, array, base, containers, deepseq, fetchurl, hspec
2−, QuickCheck, stdenv, transformers
2+, microbench, QuickCheck, transformers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "fgl";
5 pname = "fgl";
6 version = "5.5.4.0";
6 version = "5.5.4.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 array base containers deepseq transformers
12 array base containers deepseq transformers
10 ];
13 ];
@@ -12,4 +15,4 @@ mkDerivation {
12 benchmarkHaskellDepends = [ base deepseq microbench ];
15 benchmarkHaskellDepends = [ base deepseq microbench ];
13 description = "Martin Erwig's Functional Graph Library";
16 description = "Martin Erwig's Functional Graph Library";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/file-modules.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, async, base, directory, filepath, haskell-src-exts
1+{ mkDerivation, async, base, directory, fetchurl, filepath
2−, MissingH, regex-compat, regex-pcre, stdenv
2+, haskell-src-exts, MissingH, regex-compat, regex-pcre
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "file-modules";
5 pname = "file-modules";
6 version = "0.1.2.4";
6 version = "0.1.2.4";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 isLibrary = true;
11 isLibrary = true;
9 isExecutable = true;
12 isExecutable = true;
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
@@ -18,4 +21,4 @@ mkDerivation {
18 homepage = "https://github.com/yamadapc/stack-run-auto";
21 homepage = "https://github.com/yamadapc/stack-run-auto";
19 description = "Takes a Haskell source-code file and outputs its modules";
22 description = "Takes a Haskell source-code file and outputs its modules";
20 license = stdenv.lib.licenses.mit;
23 license = stdenv.lib.licenses.mit;
21−}
24+}
test/golden-test-cases/fingertree.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, HUnit, QuickCheck, stdenv, test-framework
1+{ mkDerivation, base, fetchurl, HUnit, QuickCheck, test-framework
2, test-framework-hunit, test-framework-quickcheck2
2, test-framework-hunit, test-framework-quickcheck2
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "fingertree";
5 pname = "fingertree";
6 version = "0.1.3.1";
6 version = "0.1.3.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base ];
11 libraryHaskellDepends = [ base ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 base HUnit QuickCheck test-framework test-framework-hunit
13 base HUnit QuickCheck test-framework test-framework-hunit
@@ -12,4 +15,4 @@ mkDerivation {
12 ];
15 ];
13 description = "Generic finger-tree structure, with example instances";
16 description = "Generic finger-tree structure, with example instances";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/fixed-vector.nix.golden+7−4
@@ -1,12 +1,15 @@
1−{ mkDerivation, base, deepseq, doctest, filemanip, primitive
1+{ mkDerivation, base, deepseq, doctest, fetchurl, filemanip
2−, stdenv
2+, primitive
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "fixed-vector";
5 pname = "fixed-vector";
6 version = "1.0.0.0";
6 version = "1.0.0.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base deepseq primitive ];
11 libraryHaskellDepends = [ base deepseq primitive ];
9 testHaskellDepends = [ base doctest filemanip primitive ];
12 testHaskellDepends = [ base doctest filemanip primitive ];
10 description = "Generic vectors with statically known size";
13 description = "Generic vectors with statically known size";
11 license = stdenv.lib.licenses.bsd3;
14 license = stdenv.lib.licenses.bsd3;
12−}
15+}
test/golden-test-cases/fixed.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv }:
1+{ mkDerivation, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "fixed";
3 pname = "fixed";
4 version = "0.2.1.1";
4 version = "0.2.1.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 homepage = "http://github.com/ekmett/fixed";
10 homepage = "http://github.com/ekmett/fixed";
8 description = "Signed 15.16 precision fixed point arithmetic";
11 description = "Signed 15.16 precision fixed point arithmetic";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/foundation.nix.golden+6−3
@@ -1,12 +1,15 @@
1−{ mkDerivation, base, basement, gauge, ghc-prim, stdenv }:
1+{ mkDerivation, base, basement, fetchurl, gauge, ghc-prim }:
2mkDerivation {
2mkDerivation {
3 pname = "foundation";
3 pname = "foundation";
4 version = "0.0.17";
4 version = "0.0.17";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base basement ghc-prim ];
9 libraryHaskellDepends = [ base basement ghc-prim ];
7 testHaskellDepends = [ base basement ];
10 testHaskellDepends = [ base basement ];
8 benchmarkHaskellDepends = [ base basement gauge ];
11 benchmarkHaskellDepends = [ base basement gauge ];
9 homepage = "https://github.com/haskell-foundation/foundation";
12 homepage = "https://github.com/haskell-foundation/foundation";
10 description = "Alternative prelude with batteries and no dependencies";
13 description = "Alternative prelude with batteries and no dependencies";
11 license = stdenv.lib.licenses.bsd3;
14 license = stdenv.lib.licenses.bsd3;
12−}
15+}
test/golden-test-cases/frisby.nix.golden+7−3
@@ -1,10 +1,14 @@
1−{ mkDerivation, array, base, containers, mtl, semigroups, stdenv }:
1+{ mkDerivation, array, base, containers, fetchurl, mtl, semigroups
2+}:
2mkDerivation {
3mkDerivation {
3 pname = "frisby";
4 pname = "frisby";
4 version = "0.2.2";
5 version = "0.2.2";
6+ src = fetchurl {
7+ url = "http://example.org/";
5− sha256 = "deadbeef";
8+ sha256 = "abc";
9+ };
6 libraryHaskellDepends = [ array base containers mtl semigroups ];
10 libraryHaskellDepends = [ array base containers mtl semigroups ];
7 homepage = "http://repetae.net/computer/frisby/";
11 homepage = "http://repetae.net/computer/frisby/";
8 description = "Linear time composable parser for PEG grammars";
12 description = "Linear time composable parser for PEG grammars";
9 license = stdenv.lib.licenses.bsd3;
13 license = stdenv.lib.licenses.bsd3;
10−}
14+}
test/golden-test-cases/funcmp.nix.golden+6−3
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, filepath, process, stdenv }:
1+{ mkDerivation, base, fetchurl, filepath, process }:
2mkDerivation {
2mkDerivation {
3 pname = "funcmp";
3 pname = "funcmp";
4 version = "1.8";
4 version = "1.8";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 enableSeparateDataOutput = true;
9 enableSeparateDataOutput = true;
7 libraryHaskellDepends = [ base filepath process ];
10 libraryHaskellDepends = [ base filepath process ];
8 homepage = "http://savannah.nongnu.org/projects/funcmp/";
11 homepage = "http://savannah.nongnu.org/projects/funcmp/";
9 description = "Functional MetaPost";
12 description = "Functional MetaPost";
10 license = stdenv.lib.licenses.gpl3;
13 license = stdenv.lib.licenses.gpl3;
11−}
14+}
test/golden-test-cases/functor-classes-compat.nix.golden+6−3
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, containers, hashable, stdenv
1+{ mkDerivation, base, containers, fetchurl, hashable
2, unordered-containers, vector
2, unordered-containers, vector
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "functor-classes-compat";
5 pname = "functor-classes-compat";
6 version = "1";
6 version = "1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base containers hashable unordered-containers vector
12 base containers hashable unordered-containers vector
10 ];
13 ];
11 homepage = "https://github.com/phadej/functor-classes-compat#readme";
14 homepage = "https://github.com/phadej/functor-classes-compat#readme";
12 description = "Data.Functor.Classes instances for core packages";
15 description = "Data.Functor.Classes instances for core packages";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/general-games.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, hspec, HUnit, monad-loops, MonadRandom
1+{ mkDerivation, base, fetchurl, hspec, HUnit, monad-loops
2−, random, random-shuffle, stdenv
2+, MonadRandom, random, random-shuffle
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "general-games";
5 pname = "general-games";
6 version = "1.0.5";
6 version = "1.0.5";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base monad-loops MonadRandom random random-shuffle
12 base monad-loops MonadRandom random random-shuffle
10 ];
13 ];
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://github.com/cgorski/general-games";
15 homepage = "https://github.com/cgorski/general-games";
13 description = "Library supporting simulation of a number of games";
16 description = "Library supporting simulation of a number of games";
14 license = stdenv.lib.licenses.mit;
17 license = stdenv.lib.licenses.mit;
15−}
18+}
test/golden-test-cases/generic-lens.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, criterion, deepseq, doctest
1+{ mkDerivation, base, criterion, deepseq, doctest, fetchurl
2−, inspection-testing, lens, profunctors, QuickCheck, stdenv, tagged
2+, inspection-testing, lens, profunctors, QuickCheck, tagged
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "generic-lens";
5 pname = "generic-lens";
6 version = "0.5.1.0";
6 version = "0.5.1.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base profunctors tagged ];
11 libraryHaskellDepends = [ base profunctors tagged ];
9 testHaskellDepends = [ base doctest inspection-testing lens ];
12 testHaskellDepends = [ base doctest inspection-testing lens ];
10 benchmarkHaskellDepends = [
13 benchmarkHaskellDepends = [
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/kcsongor/generic-lens";
16 homepage = "https://github.com/kcsongor/generic-lens";
14 description = "Generic data-structure operations exposed as lenses";
17 description = "Generic data-structure operations exposed as lenses";
15 license = stdenv.lib.licenses.bsd3;
18 license = stdenv.lib.licenses.bsd3;
16−}
19+}
test/golden-test-cases/genvalidity-aeson.nix.golden+8−5
@@ -1,12 +1,15 @@
1−{ mkDerivation, aeson, base, genvalidity, genvalidity-hspec
1+{ mkDerivation, aeson, base, fetchurl, genvalidity
2−, genvalidity-scientific, genvalidity-text
2+, genvalidity-hspec, genvalidity-scientific, genvalidity-text
3, genvalidity-unordered-containers, genvalidity-vector, hspec
3, genvalidity-unordered-containers, genvalidity-vector, hspec
4−, QuickCheck, stdenv, validity, validity-aeson
4+, QuickCheck, validity, validity-aeson
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "genvalidity-aeson";
7 pname = "genvalidity-aeson";
8 version = "0.1.0.0";
8 version = "0.1.0.0";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
11 aeson base genvalidity genvalidity-scientific genvalidity-text
14 aeson base genvalidity genvalidity-scientific genvalidity-text
12 genvalidity-unordered-containers genvalidity-vector QuickCheck
15 genvalidity-unordered-containers genvalidity-vector QuickCheck
@@ -18,4 +21,4 @@ mkDerivation {
18 homepage = "https://github.com/NorfairKing/validity#readme";
21 homepage = "https://github.com/NorfairKing/validity#readme";
19 description = "GenValidity support for aeson";
22 description = "GenValidity support for aeson";
20 license = stdenv.lib.licenses.mit;
23 license = stdenv.lib.licenses.mit;
21−}
24+}
test/golden-test-cases/genvalidity-hspec-aeson.nix.golden+7−4
@@ -1,11 +1,14 @@
1−{ mkDerivation, aeson, base, bytestring, deepseq, doctest
1+{ mkDerivation, aeson, base, bytestring, deepseq, doctest, fetchurl
2, genvalidity, genvalidity-aeson, genvalidity-hspec
2, genvalidity, genvalidity-aeson, genvalidity-hspec
3−, genvalidity-text, hspec, QuickCheck, stdenv, text
3+, genvalidity-text, hspec, QuickCheck, text
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "genvalidity-hspec-aeson";
6 pname = "genvalidity-hspec-aeson";
7 version = "0.1.0.1";
7 version = "0.1.0.1";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 aeson base bytestring deepseq genvalidity genvalidity-hspec hspec
13 aeson base bytestring deepseq genvalidity genvalidity-hspec hspec
11 QuickCheck
14 QuickCheck
@@ -17,4 +20,4 @@ mkDerivation {
17 homepage = "http://cs-syd.eu";
20 homepage = "http://cs-syd.eu";
18 description = "Standard spec's for aeson-related instances";
21 description = "Standard spec's for aeson-related instances";
19 license = stdenv.lib.licenses.mit;
22 license = stdenv.lib.licenses.mit;
20−}
23+}
test/golden-test-cases/genvalidity-hspec-binary.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, binary, deepseq, doctest, genvalidity
1+{ mkDerivation, base, binary, deepseq, doctest, fetchurl
2−, genvalidity-hspec, hspec, QuickCheck, stdenv
2+, genvalidity, genvalidity-hspec, hspec, QuickCheck
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "genvalidity-hspec-binary";
5 pname = "genvalidity-hspec-binary";
6 version = "0.1.0.0";
6 version = "0.1.0.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base binary deepseq genvalidity genvalidity-hspec hspec QuickCheck
12 base binary deepseq genvalidity genvalidity-hspec hspec QuickCheck
10 ];
13 ];
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://github.com/NorfairKing/validity#readme";
15 homepage = "https://github.com/NorfairKing/validity#readme";
13 description = "Standard spec's for binary-related Instances";
16 description = "Standard spec's for binary-related Instances";
14 license = stdenv.lib.licenses.mit;
17 license = stdenv.lib.licenses.mit;
15−}
18+}
test/golden-test-cases/genvalidity-scientific.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, genvalidity, genvalidity-hspec, hspec
1+{ mkDerivation, base, fetchurl, genvalidity, genvalidity-hspec
2−, QuickCheck, scientific, stdenv, validity, validity-scientific
2+, hspec, QuickCheck, scientific, validity, validity-scientific
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "genvalidity-scientific";
5 pname = "genvalidity-scientific";
6 version = "0.1.0.0";
6 version = "0.1.0.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base genvalidity QuickCheck scientific validity validity-scientific
12 base genvalidity QuickCheck scientific validity validity-scientific
10 ];
13 ];
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "https://github.com/NorfairKing/validity#readme";
17 homepage = "https://github.com/NorfairKing/validity#readme";
15 description = "GenValidity support for Scientific";
18 description = "GenValidity support for Scientific";
16 license = stdenv.lib.licenses.mit;
19 license = stdenv.lib.licenses.mit;
17−}
20+}
test/golden-test-cases/genvalidity-uuid.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, genvalidity, genvalidity-hspec, hspec
1+{ mkDerivation, base, fetchurl, genvalidity, genvalidity-hspec
2−, QuickCheck, stdenv, uuid, validity, validity-uuid
2+, hspec, QuickCheck, uuid, validity, validity-uuid
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "genvalidity-uuid";
5 pname = "genvalidity-uuid";
6 version = "0.0.0.0";
6 version = "0.0.0.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base genvalidity QuickCheck uuid validity validity-uuid
12 base genvalidity QuickCheck uuid validity validity-uuid
10 ];
13 ];
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "https://github.com/NorfairKing/validity#readme";
17 homepage = "https://github.com/NorfairKing/validity#readme";
15 description = "GenValidity support for UUID";
18 description = "GenValidity support for UUID";
16 license = stdenv.lib.licenses.mit;
19 license = stdenv.lib.licenses.mit;
17−}
20+}
test/golden-test-cases/ghc-syb-utils.nix.golden+6−3
@@ -1,13 +1,16 @@
1−{ mkDerivation, base, directory, filepath, ghc, ghc-paths, stdenv
1+{ mkDerivation, base, directory, fetchurl, filepath, ghc, ghc-paths
2, syb
2, syb
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "ghc-syb-utils";
5 pname = "ghc-syb-utils";
6 version = "0.2.3.3";
6 version = "0.2.3.3";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base ghc syb ];
11 libraryHaskellDepends = [ base ghc syb ];
9 testHaskellDepends = [ base directory filepath ghc ghc-paths ];
12 testHaskellDepends = [ base directory filepath ghc ghc-paths ];
10 homepage = "http://github.com/nominolo/ghc-syb";
13 homepage = "http://github.com/nominolo/ghc-syb";
11 description = "Scrap Your Boilerplate utilities for the GHC API";
14 description = "Scrap Your Boilerplate utilities for the GHC API";
12 license = stdenv.lib.licenses.bsd3;
15 license = stdenv.lib.licenses.bsd3;
13−}
16+}
test/golden-test-cases/ghcid.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, ansi-terminal, base, cmdargs, containers, directory
1{ mkDerivation, ansi-terminal, base, cmdargs, containers, directory
2−, extra, filepath, fsnotify, process, stdenv, tasty, tasty-hunit
2+, extra, fetchurl, filepath, fsnotify, process, tasty, tasty-hunit
3, terminal-size, time, unix
3, terminal-size, time, unix
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "ghcid";
6 pname = "ghcid";
7 version = "0.6.8";
7 version = "0.6.8";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 isLibrary = true;
12 isLibrary = true;
10 isExecutable = true;
13 isExecutable = true;
11 libraryHaskellDepends = [
14 libraryHaskellDepends = [
@@ -22,4 +25,4 @@ mkDerivation {
22 homepage = "https://github.com/ndmitchell/ghcid#readme";
25 homepage = "https://github.com/ndmitchell/ghcid#readme";
23 description = "GHCi based bare bones IDE";
26 description = "GHCi based bare bones IDE";
24 license = stdenv.lib.licenses.bsd3;
27 license = stdenv.lib.licenses.bsd3;
25−}
28+}
test/golden-test-cases/giphy-api.nix.golden+8−5
@@ -1,12 +1,15 @@
1{ mkDerivation, aeson, base, basic-prelude, bytestring, containers
1{ mkDerivation, aeson, base, basic-prelude, bytestring, containers
2−, directory, hspec, http-api-data, http-client, http-client-tls
2+, directory, fetchurl, hspec, http-api-data, http-client
3−, lens, microlens, microlens-th, mtl, network-uri, servant
3+, http-client-tls, lens, microlens, microlens-th, mtl, network-uri
4−, servant-client, stdenv, text, transformers
4+, servant, servant-client, text, transformers
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "giphy-api";
7 pname = "giphy-api";
8 version = "0.5.2.0";
8 version = "0.5.2.0";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 isLibrary = true;
13 isLibrary = true;
11 isExecutable = true;
14 isExecutable = true;
12 libraryHaskellDepends = [
15 libraryHaskellDepends = [
@@ -21,4 +24,4 @@ mkDerivation {
21 homepage = "http://github.com/passy/giphy-api#readme";
24 homepage = "http://github.com/passy/giphy-api#readme";
22 description = "Giphy HTTP API wrapper and CLI search tool";
25 description = "Giphy HTTP API wrapper and CLI search tool";
23 license = stdenv.lib.licenses.bsd3;
26 license = stdenv.lib.licenses.bsd3;
24−}
27+}
test/golden-test-cases/github.nix.golden+9−6
@@ -1,16 +1,19 @@
1{ mkDerivation, aeson, aeson-compat, base, base-compat
1{ mkDerivation, aeson, aeson-compat, base, base-compat
2, base16-bytestring, binary, binary-orphans, byteable, bytestring
2, base16-bytestring, binary, binary-orphans, byteable, bytestring
3, containers, cryptohash, deepseq, deepseq-generics, exceptions
3, containers, cryptohash, deepseq, deepseq-generics, exceptions
4−, file-embed, hashable, hspec, hspec-discover, http-client
4+, fetchurl, file-embed, hashable, hspec, hspec-discover
5−, http-client-tls, http-link-header, http-types, iso8601-time, mtl
5+, http-client, http-client-tls, http-link-header, http-types
6−, network-uri, semigroups, stdenv, text, time, tls, transformers
6+, iso8601-time, mtl, network-uri, semigroups, text, time, tls
7−, transformers-compat, unordered-containers, vector
7+, transformers, transformers-compat, unordered-containers, vector
8, vector-instances
8, vector-instances
9}:
9}:
10mkDerivation {
10mkDerivation {
11 pname = "github";
11 pname = "github";
12 version = "0.18";
12 version = "0.18";
13+ src = fetchurl {
14+ url = "http://example.org/";
13− sha256 = "deadbeef";
15+ sha256 = "abc";
16+ };
14 libraryHaskellDepends = [
17 libraryHaskellDepends = [
15 aeson aeson-compat base base-compat base16-bytestring binary
18 aeson aeson-compat base base-compat base16-bytestring binary
16 binary-orphans byteable bytestring containers cryptohash deepseq
19 binary-orphans byteable bytestring containers cryptohash deepseq
@@ -27,4 +30,4 @@ mkDerivation {
27 homepage = "https://github.com/phadej/github";
30 homepage = "https://github.com/phadej/github";
28 description = "Access to the GitHub API, v3";
31 description = "Access to the GitHub API, v3";
29 license = stdenv.lib.licenses.bsd3;
32 license = stdenv.lib.licenses.bsd3;
30−}
33+}
test/golden-test-cases/gl.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, Cabal, containers, directory, filepath, fixed
1+{ mkDerivation, base, Cabal, containers, directory, fetchurl
2−, half, hxt, libGL, stdenv, transformers
2+, filepath, fixed, half, hxt, libGL, transformers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "gl";
5 pname = "gl";
6 version = "0.8.0";
6 version = "0.8.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 setupHaskellDepends = [
11 setupHaskellDepends = [
9 base Cabal containers directory filepath hxt transformers
12 base Cabal containers directory filepath hxt transformers
10 ];
13 ];
@@ -14,4 +17,4 @@ mkDerivation {
14 librarySystemDepends = [ libGL ];
17 librarySystemDepends = [ libGL ];
15 description = "Complete OpenGL raw bindings";
18 description = "Complete OpenGL raw bindings";
16 license = stdenv.lib.licenses.bsd3;
19 license = stdenv.lib.licenses.bsd3;
17−}
20+}
test/golden-test-cases/gogol-adexchange-buyer.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-adexchange-buyer";
3 pname = "gogol-adexchange-buyer";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google Ad Exchange Buyer SDK";
11 description = "Google Ad Exchange Buyer SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/gogol-admin-emailmigration.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-admin-emailmigration";
3 pname = "gogol-admin-emailmigration";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google Email Migration API v2 SDK";
11 description = "Google Email Migration API v2 SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/gogol-affiliates.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-affiliates";
3 pname = "gogol-affiliates";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google Affiliate Network SDK";
11 description = "Google Affiliate Network SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/gogol-apps-tasks.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-apps-tasks";
3 pname = "gogol-apps-tasks";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google Tasks SDK";
11 description = "Google Tasks SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/gogol-appstate.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-appstate";
3 pname = "gogol-appstate";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google App State SDK";
11 description = "Google App State SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/gogol-blogger.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-blogger";
3 pname = "gogol-blogger";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google Blogger SDK";
11 description = "Google Blogger SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/gogol-datastore.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-datastore";
3 pname = "gogol-datastore";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google Cloud Datastore SDK";
11 description = "Google Cloud Datastore SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/gogol-dfareporting.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-dfareporting";
3 pname = "gogol-dfareporting";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google DCM/DFA Reporting And Trafficking SDK";
11 description = "Google DCM/DFA Reporting And Trafficking SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/gogol-firebase-rules.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-firebase-rules";
3 pname = "gogol-firebase-rules";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google Firebase Rules SDK";
11 description = "Google Firebase Rules SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/gogol-gmail.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-gmail";
3 pname = "gogol-gmail";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google Gmail SDK";
11 description = "Google Gmail SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/gogol-kgsearch.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-kgsearch";
3 pname = "gogol-kgsearch";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google Knowledge Graph Search SDK";
11 description = "Google Knowledge Graph Search SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/gogol-maps-engine.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-maps-engine";
3 pname = "gogol-maps-engine";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google Maps Engine SDK";
11 description = "Google Maps Engine SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/gogol-plus.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-plus";
3 pname = "gogol-plus";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google + SDK";
11 description = "Google + SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/gogol-resourceviews.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-resourceviews";
3 pname = "gogol-resourceviews";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google Compute Engine Instance Groups SDK";
11 description = "Google Compute Engine Instance Groups SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/gogol-translate.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-translate";
3 pname = "gogol-translate";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google Translate SDK";
11 description = "Google Translate SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/gogol-webmaster-tools.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-webmaster-tools";
3 pname = "gogol-webmaster-tools";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google Search Console SDK";
11 description = "Google Search Console SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/gogol-youtube.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, gogol-core, stdenv }:
1+{ mkDerivation, base, fetchurl, gogol-core }:
2mkDerivation {
2mkDerivation {
3 pname = "gogol-youtube";
3 pname = "gogol-youtube";
4 version = "0.3.0";
4 version = "0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base gogol-core ];
9 libraryHaskellDepends = [ base gogol-core ];
7 homepage = "https://github.com/brendanhay/gogol";
10 homepage = "https://github.com/brendanhay/gogol";
8 description = "Google YouTube Data SDK";
11 description = "Google YouTube Data SDK";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/groundhog-mysql.nix.golden+7−4
@@ -1,15 +1,18 @@
1−{ mkDerivation, base, bytestring, containers, groundhog
1+{ mkDerivation, base, bytestring, containers, fetchurl, groundhog
2, monad-control, monad-logger, mysql, mysql-simple, resource-pool
2, monad-control, monad-logger, mysql, mysql-simple, resource-pool
3−, resourcet, stdenv, text, time, transformers
3+, resourcet, text, time, transformers
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "groundhog-mysql";
6 pname = "groundhog-mysql";
7 version = "0.8";
7 version = "0.8";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 base bytestring containers groundhog monad-control monad-logger
13 base bytestring containers groundhog monad-control monad-logger
11 mysql mysql-simple resource-pool resourcet text time transformers
14 mysql mysql-simple resource-pool resourcet text time transformers
12 ];
15 ];
13 description = "MySQL backend for the groundhog library";
16 description = "MySQL backend for the groundhog library";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/gsasl.nix.golden+6−3
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, bytestring, gsasl, stdenv, transformers }:
1+{ mkDerivation, base, bytestring, fetchurl, gsasl, transformers }:
2mkDerivation {
2mkDerivation {
3 pname = "gsasl";
3 pname = "gsasl";
4 version = "0.3.6";
4 version = "0.3.6";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base bytestring transformers ];
9 libraryHaskellDepends = [ base bytestring transformers ];
7 libraryPkgconfigDepends = [ gsasl ];
10 libraryPkgconfigDepends = [ gsasl ];
8 homepage = "https://john-millikin.com/software/haskell-gsasl/";
11 homepage = "https://john-millikin.com/software/haskell-gsasl/";
9 description = "Bindings for GNU libgsasl";
12 description = "Bindings for GNU libgsasl";
10 license = stdenv.lib.licenses.gpl3;
13 license = stdenv.lib.licenses.gpl3;
11−}
14+}
test/golden-test-cases/hOpenPGP.nix.golden+7−4
@@ -2,17 +2,20 @@
2, base64-bytestring, bifunctors, binary, binary-conduit, byteable
2, base64-bytestring, bifunctors, binary, binary-conduit, byteable
3, bytestring, bzlib, conduit, conduit-extra, containers, criterion
3, bytestring, bzlib, conduit, conduit-extra, containers, criterion
4, crypto-cipher-types, cryptonite, data-default-class, errors
4, crypto-cipher-types, cryptonite, data-default-class, errors
5−, hashable, incremental-parser, ixset-typed, lens, memory
5+, fetchurl, hashable, incremental-parser, ixset-typed, lens, memory
6, monad-loops, nettle, network, network-uri, newtype
6, monad-loops, nettle, network, network-uri, newtype
7, openpgp-asciiarmor, QuickCheck, quickcheck-instances, resourcet
7, openpgp-asciiarmor, QuickCheck, quickcheck-instances, resourcet
8−, securemem, semigroups, split, stdenv, tasty, tasty-hunit
8+, securemem, semigroups, split, tasty, tasty-hunit
9, tasty-quickcheck, text, time, time-locale-compat, transformers
9, tasty-quickcheck, text, time, time-locale-compat, transformers
10, unordered-containers, wl-pprint-extras, zlib
10, unordered-containers, wl-pprint-extras, zlib
11}:
11}:
12mkDerivation {
12mkDerivation {
13 pname = "hOpenPGP";
13 pname = "hOpenPGP";
14 version = "2.5.5";
14 version = "2.5.5";
15+ src = fetchurl {
16+ url = "http://example.org/";
15− sha256 = "deadbeef";
17+ sha256 = "abc";
18+ };
16 libraryHaskellDepends = [
19 libraryHaskellDepends = [
17 aeson attoparsec base base16-bytestring base64-bytestring
20 aeson attoparsec base base16-bytestring base64-bytestring
18 bifunctors binary binary-conduit byteable bytestring bzlib conduit
21 bifunctors binary binary-conduit byteable bytestring bzlib conduit
@@ -46,4 +49,4 @@ mkDerivation {
46 homepage = "http://floss.scru.org/hOpenPGP/";
49 homepage = "http://floss.scru.org/hOpenPGP/";
47 description = "native Haskell implementation of OpenPGP (RFC4880)";
50 description = "native Haskell implementation of OpenPGP (RFC4880)";
48 license = stdenv.lib.licenses.mit;
51 license = stdenv.lib.licenses.mit;
49−}
52+}
test/golden-test-cases/hPDB-examples.nix.golden+7−4
@@ -1,12 +1,15 @@
1{ mkDerivation, AC-Vector, base, bytestring, containers, deepseq
1{ mkDerivation, AC-Vector, base, bytestring, containers, deepseq
2−, directory, ghc-prim, GLUT, hPDB, IfElse, iterable, mtl, Octree
2+, directory, fetchurl, ghc-prim, GLUT, hPDB, IfElse, iterable, mtl
3−, OpenGL, process, QuickCheck, stdenv, template-haskell, text
3+, Octree, OpenGL, process, QuickCheck, template-haskell, text
4, text-format, time, vector
4, text-format, time, vector
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "hPDB-examples";
7 pname = "hPDB-examples";
8 version = "1.2.0.8";
8 version = "1.2.0.8";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 isLibrary = false;
13 isLibrary = false;
11 isExecutable = true;
14 isExecutable = true;
12 executableHaskellDepends = [
15 executableHaskellDepends = [
@@ -21,4 +24,4 @@ mkDerivation {
21 homepage = "https://github.com/BioHaskell/hPDB-examples";
24 homepage = "https://github.com/BioHaskell/hPDB-examples";
22 description = "Examples for hPDB library";
25 description = "Examples for hPDB library";
23 license = stdenv.lib.licenses.bsd3;
26 license = stdenv.lib.licenses.bsd3;
24−}
27+}
test/golden-test-cases/haddock-library.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, base-compat, bytestring, deepseq, hspec
1+{ mkDerivation, base, base-compat, bytestring, deepseq, fetchurl
2−, hspec-discover, QuickCheck, stdenv, transformers
2+, hspec, hspec-discover, QuickCheck, transformers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "haddock-library";
5 pname = "haddock-library";
6 version = "1.4.5";
6 version = "1.4.5";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base bytestring deepseq transformers ];
11 libraryHaskellDepends = [ base bytestring deepseq transformers ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 base base-compat bytestring deepseq hspec QuickCheck transformers
13 base base-compat bytestring deepseq hspec QuickCheck transformers
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "http://www.haskell.org/haddock/";
17 homepage = "http://www.haskell.org/haddock/";
15 description = "Library exposing some functionality of Haddock";
18 description = "Library exposing some functionality of Haddock";
16 license = stdenv.lib.licenses.bsd3;
19 license = stdenv.lib.licenses.bsd3;
17−}
20+}
test/golden-test-cases/hakyll.nix.golden+9−6
@@ -1,17 +1,20 @@
1{ mkDerivation, base, binary, blaze-html, blaze-markup, bytestring
1{ mkDerivation, base, binary, blaze-html, blaze-markup, bytestring
2, containers, cryptohash, data-default, deepseq, directory
2, containers, cryptohash, data-default, deepseq, directory
3−, filepath, fsnotify, http-conduit, http-types, lrucache, mtl
3+, fetchurl, filepath, fsnotify, http-conduit, http-types, lrucache
4−, network, network-uri, optparse-applicative, pandoc
4+, mtl, network, network-uri, optparse-applicative, pandoc
5, pandoc-citeproc, parsec, process, QuickCheck, random, regex-base
5, pandoc-citeproc, parsec, process, QuickCheck, random, regex-base
6−, regex-tdfa, resourcet, scientific, stdenv, system-filepath
6+, regex-tdfa, resourcet, scientific, system-filepath, tagsoup
7−, tagsoup, tasty, tasty-hunit, tasty-quickcheck, text, time
7+, tasty, tasty-hunit, tasty-quickcheck, text, time
8, time-locale-compat, unordered-containers, utillinux, vector, wai
8, time-locale-compat, unordered-containers, utillinux, vector, wai
9, wai-app-static, warp, yaml
9, wai-app-static, warp, yaml
10}:
10}:
11mkDerivation {
11mkDerivation {
12 pname = "hakyll";
12 pname = "hakyll";
13 version = "4.10.0.0";
13 version = "4.10.0.0";
14+ src = fetchurl {
15+ url = "http://example.org/";
14− sha256 = "deadbeef";
16+ sha256 = "abc";
17+ };
15 isLibrary = true;
18 isLibrary = true;
16 isExecutable = true;
19 isExecutable = true;
17 enableSeparateDataOutput = true;
20 enableSeparateDataOutput = true;
@@ -39,4 +42,4 @@ mkDerivation {
39 homepage = "http://jaspervdj.be/hakyll";
42 homepage = "http://jaspervdj.be/hakyll";
40 description = "A static website compiler library";
43 description = "A static website compiler library";
41 license = stdenv.lib.licenses.bsd3;
44 license = stdenv.lib.licenses.bsd3;
42−}
45+}
test/golden-test-cases/happstack-hsp.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, happstack-server, harp, hsp
1+{ mkDerivation, base, bytestring, fetchurl, happstack-server, harp
2−, hsx2hs, mtl, stdenv, syb, text, utf8-string
2+, hsp, hsx2hs, mtl, syb, text, utf8-string
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "happstack-hsp";
5 pname = "happstack-hsp";
6 version = "7.3.7.3";
6 version = "7.3.7.3";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base bytestring happstack-server harp hsp hsx2hs mtl syb text
12 base bytestring happstack-server harp hsp hsx2hs mtl syb text
10 utf8-string
13 utf8-string
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "http://www.happstack.com/";
15 homepage = "http://www.happstack.com/";
13 description = "Support for using HSP templates in Happstack";
16 description = "Support for using HSP templates in Happstack";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/happy.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, array, base, Cabal, containers, directory, filepath
1+{ mkDerivation, array, base, Cabal, containers, directory, fetchurl
2−, mtl, process, stdenv
2+, filepath, mtl, process
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "happy";
5 pname = "happy";
6 version = "1.19.8";
6 version = "1.19.8";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 isLibrary = false;
11 isLibrary = false;
9 isExecutable = true;
12 isExecutable = true;
10 setupHaskellDepends = [ base Cabal directory filepath ];
13 setupHaskellDepends = [ base Cabal directory filepath ];
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://www.haskell.org/happy/";
16 homepage = "https://www.haskell.org/happy/";
14 description = "Happy is a parser generator for Haskell";
17 description = "Happy is a parser generator for Haskell";
15 license = stdenv.lib.licenses.bsd2;
18 license = stdenv.lib.licenses.bsd2;
16−}
19+}
test/golden-test-cases/harp.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv }:
1+{ mkDerivation, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "harp";
3 pname = "harp";
4 version = "0.4.3";
4 version = "0.4.3";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 homepage = "https://github.com/seereason/harp";
10 homepage = "https://github.com/seereason/harp";
8 description = "HaRP allows pattern-matching with regular expressions";
11 description = "HaRP allows pattern-matching with regular expressions";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/hashtables.nix.golden+7−3
@@ -1,13 +1,17 @@
1−{ mkDerivation, base, ghc-prim, hashable, primitive, stdenv, vector
1+{ mkDerivation, base, fetchurl, ghc-prim, hashable, primitive
2+, vector
2}:
3}:
3mkDerivation {
4mkDerivation {
4 pname = "hashtables";
5 pname = "hashtables";
5 version = "1.2.2.1";
6 version = "1.2.2.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
6− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
7 libraryHaskellDepends = [
11 libraryHaskellDepends = [
8 base ghc-prim hashable primitive vector
12 base ghc-prim hashable primitive vector
9 ];
13 ];
10 homepage = "http://github.com/gregorycollins/hashtables";
14 homepage = "http://github.com/gregorycollins/hashtables";
11 description = "Mutable hash tables in the ST monad";
15 description = "Mutable hash tables in the ST monad";
12 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
13−}
17+}
test/golden-test-cases/haskell-tools-debug.nix.golden+9−6
@@ -1,12 +1,15 @@
1−{ mkDerivation, base, filepath, ghc, ghc-paths, haskell-tools-ast
1+{ mkDerivation, base, fetchurl, filepath, ghc, ghc-paths
2+, haskell-tools-ast, haskell-tools-backend-ghc
2−, haskell-tools-backend-ghc, haskell-tools-builtin-refactorings
3+, haskell-tools-builtin-refactorings, haskell-tools-prettyprint
3−, haskell-tools-prettyprint, haskell-tools-refactor, references
4+, haskell-tools-refactor, references, split, template-haskell
4−, split, stdenv, template-haskell
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "haskell-tools-debug";
7 pname = "haskell-tools-debug";
8 version = "1.0.0.3";
8 version = "1.0.0.3";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 isLibrary = true;
13 isLibrary = true;
11 isExecutable = true;
14 isExecutable = true;
12 libraryHaskellDepends = [
15 libraryHaskellDepends = [
@@ -19,4 +22,4 @@ mkDerivation {
19 homepage = "https://github.com/haskell-tools/haskell-tools";
22 homepage = "https://github.com/haskell-tools/haskell-tools";
20 description = "Debugging Tools for Haskell-tools";
23 description = "Debugging Tools for Haskell-tools";
21 license = stdenv.lib.licenses.bsd3;
24 license = stdenv.lib.licenses.bsd3;
22−}
25+}
test/golden-test-cases/haskell-tools-rewrite.nix.golden+8−5
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, containers, directory, filepath, ghc
1+{ mkDerivation, base, containers, directory, fetchurl, filepath
2−, haskell-tools-ast, haskell-tools-prettyprint, mtl, references
2+, ghc, haskell-tools-ast, haskell-tools-prettyprint, mtl
3−, stdenv, tasty, tasty-hunit
3+, references, tasty, tasty-hunit
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "haskell-tools-rewrite";
6 pname = "haskell-tools-rewrite";
7 version = "1.0.0.3";
7 version = "1.0.0.3";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 base containers ghc haskell-tools-ast haskell-tools-prettyprint mtl
13 base containers ghc haskell-tools-ast haskell-tools-prettyprint mtl
11 references
14 references
@@ -17,4 +20,4 @@ mkDerivation {
17 homepage = "https://github.com/haskell-tools/haskell-tools";
20 homepage = "https://github.com/haskell-tools/haskell-tools";
18 description = "Facilities for generating new parts of the Haskell-Tools AST";
21 description = "Facilities for generating new parts of the Haskell-Tools AST";
19 license = stdenv.lib.licenses.bsd3;
22 license = stdenv.lib.licenses.bsd3;
20−}
23+}
test/golden-test-cases/hasql.nix.golden+10−7
@@ -1,15 +1,18 @@
1{ mkDerivation, attoparsec, base, base-prelude, bug, bytestring
1{ mkDerivation, attoparsec, base, base-prelude, bug, bytestring
2, bytestring-strict-builder, contravariant, contravariant-extras
2, bytestring-strict-builder, contravariant, contravariant-extras
3−, criterion, data-default-class, dlist, hashable, hashtables
3+, criterion, data-default-class, dlist, fetchurl, hashable
4−, loch-th, mtl, placeholders, postgresql-binary, postgresql-libpq
4+, hashtables, loch-th, mtl, placeholders, postgresql-binary
5−, profunctors, QuickCheck, quickcheck-instances, rebase, rerebase
5+, postgresql-libpq, profunctors, QuickCheck, quickcheck-instances
6−, semigroups, stdenv, tasty, tasty-hunit, tasty-quickcheck, text
6+, rebase, rerebase, semigroups, tasty, tasty-hunit
7−, transformers, vector
7+, tasty-quickcheck, text, transformers, vector
8}:
8}:
9mkDerivation {
9mkDerivation {
10 pname = "hasql";
10 pname = "hasql";
11 version = "1.1.1";
11 version = "1.1.1";
12+ src = fetchurl {
13+ url = "http://example.org/";
12− sha256 = "deadbeef";
14+ sha256 = "abc";
15+ };
13 libraryHaskellDepends = [
16 libraryHaskellDepends = [
14 attoparsec base base-prelude bytestring bytestring-strict-builder
17 attoparsec base base-prelude bytestring bytestring-strict-builder
15 contravariant contravariant-extras data-default-class dlist
18 contravariant contravariant-extras data-default-class dlist
@@ -24,4 +27,4 @@ mkDerivation {
24 homepage = "https://github.com/nikita-volkov/hasql";
27 homepage = "https://github.com/nikita-volkov/hasql";
25 description = "An efficient PostgreSQL driver and a flexible mapping API";
28 description = "An efficient PostgreSQL driver and a flexible mapping API";
26 license = stdenv.lib.licenses.mit;
29 license = stdenv.lib.licenses.mit;
27−}
30+}
test/golden-test-cases/hformat.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, ansi-terminal, base, base-unicode-symbols, hspec
1+{ mkDerivation, ansi-terminal, base, base-unicode-symbols, fetchurl
2−, stdenv, text
2+, hspec, text
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "hformat";
5 pname = "hformat";
6 version = "0.3.1.0";
6 version = "0.3.1.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 ansi-terminal base base-unicode-symbols text
12 ansi-terminal base base-unicode-symbols text
10 ];
13 ];
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "http://github.com/mvoidex/hformat";
15 homepage = "http://github.com/mvoidex/hformat";
13 description = "Simple Haskell formatting";
16 description = "Simple Haskell formatting";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/highlighting-kate.nix.golden+8−6
@@ -1,16 +1,18 @@
1−{ mkDerivation, base, blaze-html, bytestring, containers, Diff
1+{ mkDerivation, base, blaze-html, containers, Diff, directory
2−, directory, filepath, mtl, parsec, pcre-light, process, stdenv
2+, fetchurl, filepath, mtl, parsec, process, regex-pcre-builtin
3, utf8-string
3, utf8-string
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "highlighting-kate";
6 pname = "highlighting-kate";
7 version = "0.6.4";
7 version = "0.6.4";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
9− configureFlags = [ "-fpcre-light" ];
11+ };
10 isLibrary = true;
12 isLibrary = true;
11 isExecutable = true;
13 isExecutable = true;
12 libraryHaskellDepends = [
14 libraryHaskellDepends = [
13− base blaze-html bytestring containers mtl parsec pcre-light
15+ base blaze-html containers mtl parsec regex-pcre-builtin
14 utf8-string
16 utf8-string
15 ];
17 ];
16 testHaskellDepends = [
18 testHaskellDepends = [
@@ -19,4 +21,4 @@ mkDerivation {
19 homepage = "http://github.com/jgm/highlighting-kate";
21 homepage = "http://github.com/jgm/highlighting-kate";
20 description = "Syntax highlighting";
22 description = "Syntax highlighting";
21 license = "GPL";
23 license = "GPL";
22−}
24+}
test/golden-test-cases/hit.nix.golden+9−5
@@ -1,12 +1,16 @@
1{ mkDerivation, attoparsec, base, byteable, bytedump, bytestring
1{ mkDerivation, attoparsec, base, byteable, bytedump, bytestring
2−, containers, cryptohash, hourglass, mtl, parsec, patience, random
2+, containers, cryptohash, fetchurl, hourglass, mtl, parsec
3−, stdenv, system-fileio, system-filepath, tasty, tasty-quickcheck
3+, patience, random, system-fileio, system-filepath, tasty
4−, unix-compat, utf8-string, vector, zlib, zlib-bindings
4+, tasty-quickcheck, unix-compat, utf8-string, vector, zlib
5+, zlib-bindings
5}:
6}:
6mkDerivation {
7mkDerivation {
7 pname = "hit";
8 pname = "hit";
8 version = "0.6.3";
9 version = "0.6.3";
10+ src = fetchurl {
11+ url = "http://example.org/";
9− sha256 = "deadbeef";
12+ sha256 = "abc";
13+ };
10 isLibrary = true;
14 isLibrary = true;
11 isExecutable = true;
15 isExecutable = true;
12 enableSeparateDataOutput = true;
16 enableSeparateDataOutput = true;
@@ -21,4 +25,4 @@ mkDerivation {
21 homepage = "http://github.com/vincenthz/hit";
25 homepage = "http://github.com/vincenthz/hit";
22 description = "Git operations in haskell";
26 description = "Git operations in haskell";
23 license = stdenv.lib.licenses.bsd3;
27 license = stdenv.lib.licenses.bsd3;
24−}
28+}
test/golden-test-cases/hjson.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, base, containers, parsec, stdenv }:
1+{ mkDerivation, base, containers, fetchurl, parsec }:
2mkDerivation {
2mkDerivation {
3 pname = "hjson";
3 pname = "hjson";
4 version = "1.3.2";
4 version = "1.3.2";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base containers parsec ];
9 libraryHaskellDepends = [ base containers parsec ];
7 description = "JSON parsing library";
10 description = "JSON parsing library";
8 license = stdenv.lib.licenses.bsd3;
11 license = stdenv.lib.licenses.bsd3;
9−}
12+}
test/golden-test-cases/hmpfr.nix.golden+6−3
@@ -1,12 +1,15 @@
1−{ mkDerivation, base, integer-gmp, mpfr, stdenv }:
1+{ mkDerivation, base, fetchurl, integer-gmp, mpfr }:
2mkDerivation {
2mkDerivation {
3 pname = "hmpfr";
3 pname = "hmpfr";
4 version = "0.4.3";
4 version = "0.4.3";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 enableSeparateDataOutput = true;
9 enableSeparateDataOutput = true;
7 libraryHaskellDepends = [ base integer-gmp ];
10 libraryHaskellDepends = [ base integer-gmp ];
8 librarySystemDepends = [ mpfr ];
11 librarySystemDepends = [ mpfr ];
9 homepage = "https://github.com/michalkonecny/hmpfr";
12 homepage = "https://github.com/michalkonecny/hmpfr";
10 description = "Haskell binding to the MPFR library";
13 description = "Haskell binding to the MPFR library";
11 license = stdenv.lib.licenses.bsd3;
14 license = stdenv.lib.licenses.bsd3;
12−}
15+}
test/golden-test-cases/hoogle.nix.golden+8−5
@@ -1,15 +1,18 @@
1{ mkDerivation, aeson, base, binary, bytestring, cmdargs, conduit
1{ mkDerivation, aeson, base, binary, bytestring, cmdargs, conduit
2, conduit-extra, connection, containers, deepseq, directory, extra
2, conduit-extra, connection, containers, deepseq, directory, extra
3−, filepath, haskell-src-exts, http-conduit, http-types, js-flot
3+, fetchurl, filepath, haskell-src-exts, http-conduit, http-types
4−, js-jquery, mmap, network, network-uri, old-locale, process
4+, js-flot, js-jquery, mmap, network, network-uri, old-locale
5−, process-extras, QuickCheck, resourcet, stdenv, storable-tuple
5+, process, process-extras, QuickCheck, resourcet, storable-tuple
6, tar, template-haskell, text, time, transformers, uniplate
6, tar, template-haskell, text, time, transformers, uniplate
7, utf8-string, vector, wai, wai-logger, warp, warp-tls, zlib
7, utf8-string, vector, wai, wai-logger, warp, warp-tls, zlib
8}:
8}:
9mkDerivation {
9mkDerivation {
10 pname = "hoogle";
10 pname = "hoogle";
11 version = "5.0.14";
11 version = "5.0.14";
12+ src = fetchurl {
13+ url = "http://example.org/";
12− sha256 = "deadbeef";
14+ sha256 = "abc";
15+ };
13 isLibrary = true;
16 isLibrary = true;
14 isExecutable = true;
17 isExecutable = true;
15 enableSeparateDataOutput = true;
18 enableSeparateDataOutput = true;
@@ -27,4 +30,4 @@ mkDerivation {
27 homepage = "http://hoogle.haskell.org/";
30 homepage = "http://hoogle.haskell.org/";
28 description = "Haskell API Search";
31 description = "Haskell API Search";
29 license = stdenv.lib.licenses.bsd3;
32 license = stdenv.lib.licenses.bsd3;
30−}
33+}
test/golden-test-cases/hostname-validate.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, attoparsec, base, bytestring, stdenv }:
1+{ mkDerivation, attoparsec, base, bytestring, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "hostname-validate";
3 pname = "hostname-validate";
4 version = "1.0.0";
4 version = "1.0.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ attoparsec base bytestring ];
9 libraryHaskellDepends = [ attoparsec base bytestring ];
7 description = "Validate hostnames e.g. localhost or foo.co.uk.";
10 description = "Validate hostnames e.g. localhost or foo.co.uk.";
8 license = stdenv.lib.licenses.bsd3;
11 license = stdenv.lib.licenses.bsd3;
9−}
12+}
test/golden-test-cases/hsinstall.nix.golden+6−3
@@ -1,8 +1,11 @@
1−{ mkDerivation, base, directory, filepath, stdenv }:
1+{ mkDerivation, base, directory, fetchurl, filepath }:
2mkDerivation {
2mkDerivation {
3 pname = "hsinstall";
3 pname = "hsinstall";
4 version = "1.6";
4 version = "1.6";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 isLibrary = true;
9 isLibrary = true;
7 isExecutable = true;
10 isExecutable = true;
8 enableSeparateDataOutput = true;
11 enableSeparateDataOutput = true;
@@ -10,4 +13,4 @@ mkDerivation {
10 executableHaskellDepends = [ base directory filepath ];
13 executableHaskellDepends = [ base directory filepath ];
11 description = "Install Haskell software";
14 description = "Install Haskell software";
12 license = stdenv.lib.licenses.isc;
15 license = stdenv.lib.licenses.isc;
13−}
16+}
test/golden-test-cases/hstatsd.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, mtl, network, stdenv, text }:
1+{ mkDerivation, base, bytestring, fetchurl, mtl, network, text }:
2mkDerivation {
2mkDerivation {
3 pname = "hstatsd";
3 pname = "hstatsd";
4 version = "0.1";
4 version = "0.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base bytestring mtl network text ];
9 libraryHaskellDepends = [ base bytestring mtl network text ];
7 homepage = "https://github.com/mokus0/hstatsd";
10 homepage = "https://github.com/mokus0/hstatsd";
8 description = "Quick and dirty statsd interface";
11 description = "Quick and dirty statsd interface";
9 license = stdenv.lib.licenses.publicDomain;
12 license = stdenv.lib.licenses.publicDomain;
10−}
13+}
test/golden-test-cases/hsx-jmacro.nix.golden+6−3
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, hsp, jmacro, mtl, stdenv, text
1+{ mkDerivation, base, fetchurl, hsp, jmacro, mtl, text
2, wl-pprint-text
2, wl-pprint-text
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "hsx-jmacro";
5 pname = "hsx-jmacro";
6 version = "7.3.8";
6 version = "7.3.8";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base hsp jmacro mtl text wl-pprint-text
12 base hsp jmacro mtl text wl-pprint-text
10 ];
13 ];
11 homepage = "http://www.happstack.com/";
14 homepage = "http://www.happstack.com/";
12 description = "hsp+jmacro support";
15 description = "hsp+jmacro support";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/hsyslog.nix.golden+6−3
@@ -1,8 +1,11 @@
1−{ mkDerivation, base, Cabal, cabal-doctest, doctest, stdenv }:
1+{ mkDerivation, base, Cabal, cabal-doctest, doctest, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "hsyslog";
3 pname = "hsyslog";
4 version = "5.0.1";
4 version = "5.0.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 isLibrary = true;
9 isLibrary = true;
7 isExecutable = true;
10 isExecutable = true;
8 setupHaskellDepends = [ base Cabal cabal-doctest ];
11 setupHaskellDepends = [ base Cabal cabal-doctest ];
@@ -11,4 +14,4 @@ mkDerivation {
11 homepage = "http://github.com/peti/hsyslog";
14 homepage = "http://github.com/peti/hsyslog";
12 description = "FFI interface to syslog(3) from POSIX.1-2001";
15 description = "FFI interface to syslog(3) from POSIX.1-2001";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/htoml.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, aeson, base, bytestring, containers, criterion
1{ mkDerivation, aeson, base, bytestring, containers, criterion
2−, file-embed, old-locale, parsec, stdenv, tasty, tasty-hspec
2+, fetchurl, file-embed, old-locale, parsec, tasty, tasty-hspec
3, tasty-hunit, text, time, unordered-containers, vector
3, tasty-hunit, text, time, unordered-containers, vector
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "htoml";
6 pname = "htoml";
7 version = "1.0.0.3";
7 version = "1.0.0.3";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 aeson base containers old-locale parsec text time
13 aeson base containers old-locale parsec text time
11 unordered-containers vector
14 unordered-containers vector
@@ -21,4 +24,4 @@ mkDerivation {
21 homepage = "https://github.com/cies/htoml";
24 homepage = "https://github.com/cies/htoml";
22 description = "Parser for TOML files";
25 description = "Parser for TOML files";
23 license = stdenv.lib.licenses.bsd3;
26 license = stdenv.lib.licenses.bsd3;
24−}
27+}
test/golden-test-cases/http-conduit.nix.golden+8−6
@@ -1,15 +1,17 @@
1{ mkDerivation, aeson, base, blaze-builder, bytestring
1{ mkDerivation, aeson, base, blaze-builder, bytestring
2, case-insensitive, conduit, conduit-extra, connection, cookie
2, case-insensitive, conduit, conduit-extra, connection, cookie
3−, data-default-class, exceptions, hspec, http-client
3+, data-default-class, exceptions, fetchurl, hspec, http-client
4, http-client-tls, http-types, HUnit, lifted-base, monad-control
4, http-client-tls, http-types, HUnit, lifted-base, monad-control
5−, mtl, network, resourcet, stdenv, streaming-commons, temporary
5+, mtl, network, resourcet, streaming-commons, temporary, text, time
6−, text, time, transformers, utf8-string, wai, wai-conduit, warp
6+, transformers, utf8-string, wai, wai-conduit, warp, warp-tls
7−, warp-tls
8}:
7}:
9mkDerivation {
8mkDerivation {
10 pname = "http-conduit";
9 pname = "http-conduit";
11 version = "2.2.4";
10 version = "2.2.4";
11+ src = fetchurl {
12+ url = "http://example.org/";
12− sha256 = "deadbeef";
13+ sha256 = "abc";
14+ };
13 libraryHaskellDepends = [
15 libraryHaskellDepends = [
14 aeson base bytestring conduit conduit-extra exceptions http-client
16 aeson base bytestring conduit conduit-extra exceptions http-client
15 http-client-tls http-types lifted-base monad-control mtl resourcet
17 http-client-tls http-types lifted-base monad-control mtl resourcet
@@ -26,4 +28,4 @@ mkDerivation {
26 homepage = "http://www.yesodweb.com/book/http-conduit";
28 homepage = "http://www.yesodweb.com/book/http-conduit";
27 description = "HTTP client package with conduit interface and HTTPS support";
29 description = "HTTP client package with conduit interface and HTTPS support";
28 license = stdenv.lib.licenses.bsd3;
30 license = stdenv.lib.licenses.bsd3;
29−}
31+}
test/golden-test-cases/http-link-header.nix.golden+7−5
@@ -1,12 +1,14 @@
1{ mkDerivation, attoparsec, base, bytestring, bytestring-conversion
1{ mkDerivation, attoparsec, base, bytestring, bytestring-conversion
2−, criterion, directory, errors, hspec, hspec-attoparsec
2+, criterion, directory, errors, fetchurl, hspec, hspec-attoparsec
3−, http-api-data, network-uri, QuickCheck, stdenv, text
3+, http-api-data, network-uri, QuickCheck, text, transformers
4−, transformers
5}:
4}:
6mkDerivation {
5mkDerivation {
7 pname = "http-link-header";
6 pname = "http-link-header";
8 version = "1.0.3";
7 version = "1.0.3";
8+ src = fetchurl {
9+ url = "http://example.org/";
9− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
10 libraryHaskellDepends = [
12 libraryHaskellDepends = [
11 attoparsec base bytestring bytestring-conversion errors
13 attoparsec base bytestring bytestring-conversion errors
12 http-api-data network-uri text
14 http-api-data network-uri text
@@ -20,4 +22,4 @@ mkDerivation {
20 homepage = "https://github.com/myfreeweb/http-link-header";
22 homepage = "https://github.com/myfreeweb/http-link-header";
21 description = "A parser and writer for the HTTP Link header as specified in RFC 5988 \"Web Linking\"";
23 description = "A parser and writer for the HTTP Link header as specified in RFC 5988 \"Web Linking\"";
22 license = stdenv.lib.licenses.publicDomain;
24 license = stdenv.lib.licenses.publicDomain;
23−}
25+}
test/golden-test-cases/http-media.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, base, bytestring, case-insensitive, containers
1{ mkDerivation, base, bytestring, case-insensitive, containers
2−, QuickCheck, stdenv, test-framework, test-framework-quickcheck2
2+, fetchurl, QuickCheck, test-framework, test-framework-quickcheck2
3, utf8-string
3, utf8-string
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "http-media";
6 pname = "http-media";
7 version = "0.7.1.1";
7 version = "0.7.1.1";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 base bytestring case-insensitive containers utf8-string
13 base bytestring case-insensitive containers utf8-string
11 ];
14 ];
@@ -16,4 +19,4 @@ mkDerivation {
16 homepage = "https://github.com/zmthy/http-media";
19 homepage = "https://github.com/zmthy/http-media";
17 description = "Processing HTTP Content-Type and Accept headers";
20 description = "Processing HTTP Content-Type and Accept headers";
18 license = stdenv.lib.licenses.mit;
21 license = stdenv.lib.licenses.mit;
19−}
22+}
test/golden-test-cases/hxt-charproperties.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv }:
1+{ mkDerivation, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "hxt-charproperties";
3 pname = "hxt-charproperties";
4 version = "9.2.0.1";
4 version = "9.2.0.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 homepage = "https://github.com/UweSchmidt/hxt";
10 homepage = "https://github.com/UweSchmidt/hxt";
8 description = "Character properties and classes for XML and Unicode";
11 description = "Character properties and classes for XML and Unicode";
9 license = stdenv.lib.licenses.mit;
12 license = stdenv.lib.licenses.mit;
10−}
13+}
test/golden-test-cases/hxt-expat.nix.golden+6−4
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, bytestring, hexpat, hxt, stdenv }:
1+{ mkDerivation, base, bytestring, fetchurl, hexpat, hxt }:
2mkDerivation {
2mkDerivation {
3 pname = "hxt-expat";
3 pname = "hxt-expat";
4 version = "9.1.1";
4 version = "9.1.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base bytestring hexpat hxt ];
9 libraryHaskellDepends = [ base bytestring hexpat hxt ];
7 homepage = "http://www.fh-wedel.de/~si/HXmlToolbox/index.html";
10 homepage = "http://www.fh-wedel.de/~si/HXmlToolbox/index.html";
8 description = "Expat parser for HXT";
11 description = "Expat parser for HXT";
9 license = "unknown";
12 license = "unknown";
10− hydraPlatforms = stdenv.lib.platforms.none;
11−}
13+}
test/golden-test-cases/hxt-tagsoup.nix.golden+7−5
@@ -1,15 +1,17 @@
1−{ mkDerivation, base, hxt, hxt-charproperties, hxt-unicode, stdenv
1+{ mkDerivation, base, fetchurl, hxt, hxt-charproperties
2−, tagsoup
2+, hxt-unicode, tagsoup
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "hxt-tagsoup";
5 pname = "hxt-tagsoup";
6 version = "9.1.4";
6 version = "9.1.4";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base hxt hxt-charproperties hxt-unicode tagsoup
12 base hxt hxt-charproperties hxt-unicode tagsoup
10 ];
13 ];
11 homepage = "https://github.com/UweSchmidt/hxt";
14 homepage = "https://github.com/UweSchmidt/hxt";
12 description = "TagSoup parser for HXT";
15 description = "TagSoup parser for HXT";
13 license = "unknown";
16 license = "unknown";
14− hydraPlatforms = stdenv.lib.platforms.none;
15−}
17+}
test/golden-test-cases/iconv.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, base, bytestring, stdenv }:
1+{ mkDerivation, base, bytestring, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "iconv";
3 pname = "iconv";
4 version = "0.4.1.3";
4 version = "0.4.1.3";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base bytestring ];
9 libraryHaskellDepends = [ base bytestring ];
7 description = "String encoding conversion";
10 description = "String encoding conversion";
8 license = stdenv.lib.licenses.bsd3;
11 license = stdenv.lib.licenses.bsd3;
9−}
12+}
test/golden-test-cases/incremental-parser.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, base, bytestring, checkers, criterion, deepseq
1{ mkDerivation, base, bytestring, checkers, criterion, deepseq
2−, monoid-subclasses, QuickCheck, stdenv, tasty, tasty-quickcheck
2+, fetchurl, monoid-subclasses, QuickCheck, tasty, tasty-quickcheck
3, text
3, text
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "incremental-parser";
6 pname = "incremental-parser";
7 version = "0.2.5.2";
7 version = "0.2.5.2";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [ base monoid-subclasses ];
12 libraryHaskellDepends = [ base monoid-subclasses ];
10 testHaskellDepends = [
13 testHaskellDepends = [
11 base checkers monoid-subclasses QuickCheck tasty tasty-quickcheck
14 base checkers monoid-subclasses QuickCheck tasty tasty-quickcheck
@@ -16,4 +19,4 @@ mkDerivation {
16 homepage = "https://github.com/blamario/incremental-parser";
19 homepage = "https://github.com/blamario/incremental-parser";
17 description = "Generic parser library capable of providing partial results from partial input";
20 description = "Generic parser library capable of providing partial results from partial input";
18 license = "GPL";
21 license = "GPL";
19−}
22+}
test/golden-test-cases/indentation-core.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, mtl, stdenv }:
1+{ mkDerivation, base, fetchurl, mtl }:
2mkDerivation {
2mkDerivation {
3 pname = "indentation-core";
3 pname = "indentation-core";
4 version = "0.0.0.1";
4 version = "0.0.0.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base mtl ];
9 libraryHaskellDepends = [ base mtl ];
7 homepage = "https://bitbucket.org/adamsmd/indentation";
10 homepage = "https://bitbucket.org/adamsmd/indentation";
8 description = "Indentation sensitive parsing combinators core library";
11 description = "Indentation sensitive parsing combinators core library";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/indentation-parsec.nix.golden+7−4
@@ -1,13 +1,16 @@
1−{ mkDerivation, base, indentation-core, mtl, parsec, stdenv, tasty
1+{ mkDerivation, base, fetchurl, indentation-core, mtl, parsec
2−, tasty-hunit
2+, tasty, tasty-hunit
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "indentation-parsec";
5 pname = "indentation-parsec";
6 version = "0.0.0.1";
6 version = "0.0.0.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base indentation-core mtl parsec ];
11 libraryHaskellDepends = [ base indentation-core mtl parsec ];
9 testHaskellDepends = [ base parsec tasty tasty-hunit ];
12 testHaskellDepends = [ base parsec tasty tasty-hunit ];
10 homepage = "https://bitbucket.org/adamsmd/indentation";
13 homepage = "https://bitbucket.org/adamsmd/indentation";
11 description = "Indentation sensitive parsing combinators for Parsec";
14 description = "Indentation sensitive parsing combinators for Parsec";
12 license = stdenv.lib.licenses.bsd3;
15 license = stdenv.lib.licenses.bsd3;
13−}
16+}
test/golden-test-cases/inline-c-cpp.nix.golden+6−3
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, hspec, inline-c, safe-exceptions, stdenv
1+{ mkDerivation, base, fetchurl, hspec, inline-c, safe-exceptions
2, template-haskell
2, template-haskell
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "inline-c-cpp";
5 pname = "inline-c-cpp";
6 version = "0.2.1.0";
6 version = "0.2.1.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base inline-c safe-exceptions template-haskell
12 base inline-c safe-exceptions template-haskell
10 ];
13 ];
11 testHaskellDepends = [ base hspec inline-c safe-exceptions ];
14 testHaskellDepends = [ base hspec inline-c safe-exceptions ];
12 description = "Lets you embed C++ code into Haskell";
15 description = "Lets you embed C++ code into Haskell";
13 license = stdenv.lib.licenses.mit;
16 license = stdenv.lib.licenses.mit;
14−}
17+}
test/golden-test-cases/integer-logarithms.nix.golden+7−4
@@ -1,11 +1,14 @@
1−{ mkDerivation, array, base, ghc-prim, integer-gmp, QuickCheck
1+{ mkDerivation, array, base, fetchurl, ghc-prim, integer-gmp
2−, smallcheck, stdenv, tasty, tasty-hunit, tasty-quickcheck
2+, QuickCheck, smallcheck, tasty, tasty-hunit, tasty-quickcheck
3, tasty-smallcheck
3, tasty-smallcheck
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "integer-logarithms";
6 pname = "integer-logarithms";
7 version = "1.0.2";
7 version = "1.0.2";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [ array base ghc-prim integer-gmp ];
12 libraryHaskellDepends = [ array base ghc-prim integer-gmp ];
10 testHaskellDepends = [
13 testHaskellDepends = [
11 base QuickCheck smallcheck tasty tasty-hunit tasty-quickcheck
14 base QuickCheck smallcheck tasty tasty-hunit tasty-quickcheck
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "https://github.com/phadej/integer-logarithms";
17 homepage = "https://github.com/phadej/integer-logarithms";
15 description = "Integer logarithms";
18 description = "Integer logarithms";
16 license = stdenv.lib.licenses.mit;
19 license = stdenv.lib.licenses.mit;
17−}
20+}
test/golden-test-cases/intero.nix.golden+7−4
@@ -1,12 +1,15 @@
1{ mkDerivation, array, base, bytestring, containers, directory
1{ mkDerivation, array, base, bytestring, containers, directory
2−, filepath, ghc, ghc-boot-th, ghc-paths, ghci, haskeline, hspec
2+, fetchurl, filepath, ghc, ghc-boot-th, ghc-paths, ghci, haskeline
3−, process, regex-compat, stdenv, syb, temporary, time, transformers
3+, hspec, process, regex-compat, syb, temporary, time, transformers
4, unix
4, unix
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "intero";
7 pname = "intero";
8 version = "0.1.24";
8 version = "0.1.24";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 isLibrary = false;
13 isLibrary = false;
11 isExecutable = true;
14 isExecutable = true;
12 enableSeparateDataOutput = true;
15 enableSeparateDataOutput = true;
@@ -21,4 +24,4 @@ mkDerivation {
21 homepage = "https://github.com/commercialhaskell/intero";
24 homepage = "https://github.com/commercialhaskell/intero";
22 description = "Complete interactive development program for Haskell";
25 description = "Complete interactive development program for Haskell";
23 license = stdenv.lib.licenses.bsd3;
26 license = stdenv.lib.licenses.bsd3;
24−}
27+}
test/golden-test-cases/invariant.nix.golden+7−4
@@ -1,13 +1,16 @@
1{ mkDerivation, array, base, bifunctors, comonad, containers
1{ mkDerivation, array, base, bifunctors, comonad, containers
2−, contravariant, ghc-prim, hspec, profunctors, QuickCheck
2+, contravariant, fetchurl, ghc-prim, hspec, profunctors, QuickCheck
3−, semigroups, StateVar, stdenv, stm, tagged, template-haskell
3+, semigroups, StateVar, stm, tagged, template-haskell
4, th-abstraction, transformers, transformers-compat
4, th-abstraction, transformers, transformers-compat
5, unordered-containers
5, unordered-containers
6}:
6}:
7mkDerivation {
7mkDerivation {
8 pname = "invariant";
8 pname = "invariant";
9 version = "0.5";
9 version = "0.5";
10+ src = fetchurl {
11+ url = "http://example.org/";
10− sha256 = "deadbeef";
12+ sha256 = "abc";
13+ };
11 libraryHaskellDepends = [
14 libraryHaskellDepends = [
12 array base bifunctors comonad containers contravariant ghc-prim
15 array base bifunctors comonad containers contravariant ghc-prim
13 profunctors semigroups StateVar stm tagged template-haskell
16 profunctors semigroups StateVar stm tagged template-haskell
@@ -18,4 +21,4 @@ mkDerivation {
18 homepage = "https://github.com/nfrisby/invariant-functors";
21 homepage = "https://github.com/nfrisby/invariant-functors";
19 description = "Haskell98 invariant functors";
22 description = "Haskell98 invariant functors";
20 license = stdenv.lib.licenses.bsd2;
23 license = stdenv.lib.licenses.bsd2;
21−}
24+}
test/golden-test-cases/io-machine.nix.golden+6−3
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, stdenv, time }:
1+{ mkDerivation, base, fetchurl, time }:
2mkDerivation {
2mkDerivation {
3 pname = "io-machine";
3 pname = "io-machine";
4 version = "0.2.0.0";
4 version = "0.2.0.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base time ];
9 libraryHaskellDepends = [ base time ];
7 testHaskellDepends = [ base ];
10 testHaskellDepends = [ base ];
8 homepage = "https://github.com/YoshikuniJujo/io-machine#readme";
11 homepage = "https://github.com/YoshikuniJujo/io-machine#readme";
9 description = "Easy I/O model to learn IO monad";
12 description = "Easy I/O model to learn IO monad";
10 license = stdenv.lib.licenses.bsd3;
13 license = stdenv.lib.licenses.bsd3;
11−}
14+}
test/golden-test-cases/io-streams-haproxy.nix.golden+7−4
@@ -1,11 +1,14 @@
1−{ mkDerivation, attoparsec, base, bytestring, HUnit, io-streams
1+{ mkDerivation, attoparsec, base, bytestring, fetchurl, HUnit
2−, network, stdenv, test-framework, test-framework-hunit
2+, io-streams, network, test-framework, test-framework-hunit
3, transformers
3, transformers
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "io-streams-haproxy";
6 pname = "io-streams-haproxy";
7 version = "1.0.0.2";
7 version = "1.0.0.2";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 attoparsec base bytestring io-streams network transformers
13 attoparsec base bytestring io-streams network transformers
11 ];
14 ];
@@ -16,4 +19,4 @@ mkDerivation {
16 homepage = "http://snapframework.com/";
19 homepage = "http://snapframework.com/";
17 description = "HAProxy protocol 1.5 support for io-streams";
20 description = "HAProxy protocol 1.5 support for io-streams";
18 license = stdenv.lib.licenses.bsd3;
21 license = stdenv.lib.licenses.bsd3;
19−}
22+}
test/golden-test-cases/ip.nix.golden+7−4
@@ -1,12 +1,15 @@
1{ mkDerivation, aeson, attoparsec, base, bytestring, criterion
1{ mkDerivation, aeson, attoparsec, base, bytestring, criterion
2−, doctest, hashable, HUnit, primitive, QuickCheck
2+, doctest, fetchurl, hashable, HUnit, primitive, QuickCheck
3−, quickcheck-classes, stdenv, test-framework, test-framework-hunit
3+, quickcheck-classes, test-framework, test-framework-hunit
4, test-framework-quickcheck2, text, vector
4, test-framework-quickcheck2, text, vector
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "ip";
7 pname = "ip";
8 version = "1.1.1";
8 version = "1.1.1";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
11 aeson attoparsec base bytestring hashable primitive text vector
14 aeson attoparsec base bytestring hashable primitive text vector
12 ];
15 ];
@@ -21,4 +24,4 @@ mkDerivation {
21 homepage = "https://github.com/andrewthad/haskell-ip#readme";
24 homepage = "https://github.com/andrewthad/haskell-ip#readme";
22 description = "Library for IP and MAC addresses";
25 description = "Library for IP and MAC addresses";
23 license = stdenv.lib.licenses.bsd3;
26 license = stdenv.lib.licenses.bsd3;
24−}
27+}
test/golden-test-cases/iso639.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv }:
1+{ mkDerivation, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "iso639";
3 pname = "iso639";
4 version = "0.1.0.3";
4 version = "0.1.0.3";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 homepage = "https://github.com/HugoDaniel/iso639";
10 homepage = "https://github.com/HugoDaniel/iso639";
8 description = "ISO-639-1 language codes";
11 description = "ISO-639-1 language codes";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/iso8601-time.nix.golden+6−3
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, hspec, HUnit, stdenv, time }:
1+{ mkDerivation, base, fetchurl, hspec, HUnit, time }:
2mkDerivation {
2mkDerivation {
3 pname = "iso8601-time";
3 pname = "iso8601-time";
4 version = "0.1.4";
4 version = "0.1.4";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base time ];
9 libraryHaskellDepends = [ base time ];
7 testHaskellDepends = [ base hspec HUnit time ];
10 testHaskellDepends = [ base hspec HUnit time ];
8 homepage = "https://github.com/nh2/iso8601-time";
11 homepage = "https://github.com/nh2/iso8601-time";
9 description = "Convert to/from the ISO 8601 time format";
12 description = "Convert to/from the ISO 8601 time format";
10 license = stdenv.lib.licenses.mit;
13 license = stdenv.lib.licenses.mit;
11−}
14+}
test/golden-test-cases/jmacro-rpc-happstack.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, aeson, base, blaze-html, bytestring, containers
1{ mkDerivation, aeson, base, blaze-html, bytestring, containers
2−, happstack-server, jmacro, jmacro-rpc, mtl, stdenv
2+, fetchurl, happstack-server, jmacro, jmacro-rpc, mtl
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "jmacro-rpc-happstack";
5 pname = "jmacro-rpc-happstack";
6 version = "0.3.2";
6 version = "0.3.2";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 aeson base blaze-html bytestring containers happstack-server jmacro
12 aeson base blaze-html bytestring containers happstack-server jmacro
10 jmacro-rpc mtl
13 jmacro-rpc mtl
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "http://hub.darcs.net/gershomb/jmacro-rpc";
15 homepage = "http://hub.darcs.net/gershomb/jmacro-rpc";
13 description = "Happstack backend for jmacro-rpc";
16 description = "Happstack backend for jmacro-rpc";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/jmacro-rpc.nix.golden+7−4
@@ -1,11 +1,14 @@
1{ mkDerivation, aeson, attoparsec, base, blaze-html, bytestring
1{ mkDerivation, aeson, attoparsec, base, blaze-html, bytestring
2−, containers, contravariant, jmacro, mtl, scientific, split, stdenv
2+, containers, contravariant, fetchurl, jmacro, mtl, scientific
3−, text, unordered-containers, vector
3+, split, text, unordered-containers, vector
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "jmacro-rpc";
6 pname = "jmacro-rpc";
7 version = "0.3.2";
7 version = "0.3.2";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 aeson attoparsec base blaze-html bytestring containers
13 aeson attoparsec base blaze-html bytestring containers
11 contravariant jmacro mtl scientific split text unordered-containers
14 contravariant jmacro mtl scientific split text unordered-containers
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "http://hub.darcs.net/gershomb/jmacro";
17 homepage = "http://hub.darcs.net/gershomb/jmacro";
15 description = "JSON-RPC clients and servers using JMacro, and evented client-server Reactive Programming";
18 description = "JSON-RPC clients and servers using JMacro, and evented client-server Reactive Programming";
16 license = stdenv.lib.licenses.bsd3;
19 license = stdenv.lib.licenses.bsd3;
17−}
20+}
test/golden-test-cases/jose.nix.golden+10−6
@@ -1,13 +1,17 @@
1{ mkDerivation, aeson, attoparsec, base, base64-bytestring
1{ mkDerivation, aeson, attoparsec, base, base64-bytestring
2−, bytestring, concise, containers, cryptonite, hspec, lens, memory
2+, bytestring, concise, containers, cryptonite, fetchurl, hspec
3−, monad-time, mtl, network-uri, QuickCheck, quickcheck-instances
3+, lens, memory, monad-time, mtl, network-uri, QuickCheck
4−, safe, semigroups, stdenv, tasty, tasty-hspec, tasty-quickcheck
4+, quickcheck-instances, safe, semigroups, tasty, tasty-hspec
5+, tasty-quickcheck, template-haskell, text, time
5−, template-haskell, text, time, unordered-containers, vector, x509
6+, unordered-containers, vector, x509
6}:
7}:
7mkDerivation {
8mkDerivation {
8 pname = "jose";
9 pname = "jose";
9 version = "0.6.0.3";
10 version = "0.6.0.3";
11+ src = fetchurl {
12+ url = "http://example.org/";
10− sha256 = "deadbeef";
13+ sha256 = "abc";
14+ };
11 isLibrary = true;
15 isLibrary = true;
12 isExecutable = true;
16 isExecutable = true;
13 libraryHaskellDepends = [
17 libraryHaskellDepends = [
@@ -27,4 +31,4 @@ mkDerivation {
27 homepage = "https://github.com/frasertweedale/hs-jose";
31 homepage = "https://github.com/frasertweedale/hs-jose";
28 description = "Javascript Object Signing and Encryption and JSON Web Token library";
32 description = "Javascript Object Signing and Encryption and JSON Web Token library";
29 license = stdenv.lib.licenses.asl20;
33 license = stdenv.lib.licenses.asl20;
30−}
34+}
test/golden-test-cases/katip-elasticsearch.nix.golden+9−6
@@ -1,14 +1,17 @@
1{ mkDerivation, aeson, async, base, bloodhound, bytestring
1{ mkDerivation, aeson, async, base, bloodhound, bytestring
2, containers, criterion, deepseq, enclosed-exceptions, exceptions
2, containers, criterion, deepseq, enclosed-exceptions, exceptions
3−, http-client, http-types, katip, lens, lens-aeson
3+, fetchurl, http-client, http-types, katip, lens, lens-aeson
4−, quickcheck-instances, random, retry, scientific, stdenv, stm
4+, quickcheck-instances, random, retry, scientific, stm, stm-chans
5−, stm-chans, tagged, tasty, tasty-hunit, tasty-quickcheck, text
5+, tagged, tasty, tasty-hunit, tasty-quickcheck, text, time
6−, time, transformers, unordered-containers, uuid, vector
6+, transformers, unordered-containers, uuid, vector
7}:
7}:
8mkDerivation {
8mkDerivation {
9 pname = "katip-elasticsearch";
9 pname = "katip-elasticsearch";
10 version = "0.4.0.3";
10 version = "0.4.0.3";
11+ src = fetchurl {
12+ url = "http://example.org/";
11− sha256 = "deadbeef";
13+ sha256 = "abc";
14+ };
12 libraryHaskellDepends = [
15 libraryHaskellDepends = [
13 aeson async base bloodhound bytestring enclosed-exceptions
16 aeson async base bloodhound bytestring enclosed-exceptions
14 exceptions http-client http-types katip retry scientific stm
17 exceptions http-client http-types katip retry scientific stm
@@ -27,4 +30,4 @@ mkDerivation {
27 homepage = "https://github.com/Soostone/katip";
30 homepage = "https://github.com/Soostone/katip";
28 description = "ElasticSearch scribe for the Katip logging framework";
31 description = "ElasticSearch scribe for the Katip logging framework";
29 license = stdenv.lib.licenses.bsd3;
32 license = stdenv.lib.licenses.bsd3;
30−}
33+}
test/golden-test-cases/katip.nix.golden+9−6
@@ -1,9 +1,9 @@
1{ mkDerivation, aeson, async, auto-update, base, blaze-builder
1{ mkDerivation, aeson, async, auto-update, base, blaze-builder
2, bytestring, containers, criterion, deepseq, directory, either
2, bytestring, containers, criterion, deepseq, directory, either
3−, filepath, hostname, microlens, microlens-th, monad-control, mtl
3+, fetchurl, filepath, hostname, microlens, microlens-th
4−, old-locale, quickcheck-instances, regex-tdfa, resourcet
4+, monad-control, mtl, old-locale, quickcheck-instances, regex-tdfa
5−, safe-exceptions, scientific, semigroups, stdenv, stm, string-conv
5+, resourcet, safe-exceptions, scientific, semigroups, stm
6−, tasty, tasty-golden, tasty-hunit, tasty-quickcheck
6+, string-conv, tasty, tasty-golden, tasty-hunit, tasty-quickcheck
7, template-haskell, text, time, time-locale-compat, transformers
7, template-haskell, text, time, time-locale-compat, transformers
8, transformers-base, transformers-compat, unix
8, transformers-base, transformers-compat, unix
9, unordered-containers
9, unordered-containers
@@ -11,7 +11,10 @@
11mkDerivation {
11mkDerivation {
12 pname = "katip";
12 pname = "katip";
13 version = "0.5.2.0";
13 version = "0.5.2.0";
14+ src = fetchurl {
15+ url = "http://example.org/";
14− sha256 = "deadbeef";
16+ sha256 = "abc";
17+ };
15 libraryHaskellDepends = [
18 libraryHaskellDepends = [
16 aeson async auto-update base bytestring containers either hostname
19 aeson async auto-update base bytestring containers either hostname
17 microlens microlens-th monad-control mtl old-locale resourcet
20 microlens microlens-th monad-control mtl old-locale resourcet
@@ -32,4 +35,4 @@ mkDerivation {
32 homepage = "https://github.com/Soostone/katip";
35 homepage = "https://github.com/Soostone/katip";
33 description = "A structured logging framework";
36 description = "A structured logging framework";
34 license = stdenv.lib.licenses.bsd3;
37 license = stdenv.lib.licenses.bsd3;
35−}
38+}
test/golden-test-cases/katydid.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, containers, directory, filepath, HUnit, hxt
1+{ mkDerivation, base, containers, directory, fetchurl, filepath
2−, json, mtl, parsec, regex-tdfa, stdenv, tasty, tasty-hunit
2+, HUnit, hxt, json, mtl, parsec, regex-tdfa, tasty, tasty-hunit
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "katydid";
5 pname = "katydid";
6 version = "0.1.1.0";
6 version = "0.1.1.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 isLibrary = true;
11 isLibrary = true;
9 isExecutable = true;
12 isExecutable = true;
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
@@ -18,4 +21,4 @@ mkDerivation {
18 homepage = "https://github.com/katydid/katydid-haskell";
21 homepage = "https://github.com/katydid/katydid-haskell";
19 description = "A haskell implementation of Katydid";
22 description = "A haskell implementation of Katydid";
20 license = stdenv.lib.licenses.bsd3;
23 license = stdenv.lib.licenses.bsd3;
21−}
24+}
test/golden-test-cases/kawhi.nix.golden+9−6
@@ -1,12 +1,15 @@
1−{ mkDerivation, aeson, base, bytestring, exceptions, http-client
1+{ mkDerivation, aeson, base, bytestring, exceptions, fetchurl
2−, http-conduit, http-types, mtl, safe, scientific, smallcheck
2+, http-client, http-conduit, http-types, mtl, safe, scientific
3−, stdenv, tasty, tasty-hunit, tasty-quickcheck, tasty-smallcheck
3+, smallcheck, tasty, tasty-hunit, tasty-quickcheck
4−, text
4+, tasty-smallcheck, text
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "kawhi";
7 pname = "kawhi";
8 version = "0.3.0";
8 version = "0.3.0";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
11 aeson base bytestring exceptions http-client http-conduit
14 aeson base bytestring exceptions http-client http-conduit
12 http-types mtl safe scientific text
15 http-types mtl safe scientific text
@@ -19,4 +22,4 @@ mkDerivation {
19 homepage = "https://github.com/thunky-monk/kawhi";
22 homepage = "https://github.com/thunky-monk/kawhi";
20 description = "stats.NBA.com library";
23 description = "stats.NBA.com library";
21 license = stdenv.lib.licenses.mit;
24 license = stdenv.lib.licenses.mit;
22−}
25+}
test/golden-test-cases/kraken.nix.golden+7−4
@@ -1,13 +1,16 @@
1−{ mkDerivation, aeson, base, bytestring, http-client
1+{ mkDerivation, aeson, base, bytestring, fetchurl, http-client
2−, http-client-tls, mtl, stdenv
2+, http-client-tls, mtl
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "kraken";
5 pname = "kraken";
6 version = "0.1.0";
6 version = "0.1.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 aeson base bytestring http-client http-client-tls mtl
12 aeson base bytestring http-client http-client-tls mtl
10 ];
13 ];
11 description = "Kraken.io API client";
14 description = "Kraken.io API client";
12 license = stdenv.lib.licenses.mit;
15 license = stdenv.lib.licenses.mit;
13−}
16+}
test/golden-test-cases/l10n.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv, text, time }:
1+{ mkDerivation, base, fetchurl, text, time }:
2mkDerivation {
2mkDerivation {
3 pname = "l10n";
3 pname = "l10n";
4 version = "0.1.0.1";
4 version = "0.1.0.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base text time ];
9 libraryHaskellDepends = [ base text time ];
7 homepage = "https://github.com/louispan/l10n#readme";
10 homepage = "https://github.com/louispan/l10n#readme";
8 description = "Enables providing localization as typeclass instances in separate files";
11 description = "Enables providing localization as typeclass instances in separate files";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/lambdabot-social-plugins.nix.golden+7−4
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, binary, bytestring, containers
1+{ mkDerivation, base, binary, bytestring, containers, fetchurl
2−, lambdabot-core, mtl, split, stdenv, time
2+, lambdabot-core, mtl, split, time
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "lambdabot-social-plugins";
5 pname = "lambdabot-social-plugins";
6 version = "5.1.0.1";
6 version = "5.1.0.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base binary bytestring containers lambdabot-core mtl split time
12 base binary bytestring containers lambdabot-core mtl split time
10 ];
13 ];
11 homepage = "https://wiki.haskell.org/Lambdabot";
14 homepage = "https://wiki.haskell.org/Lambdabot";
12 description = "Social plugins for Lambdabot";
15 description = "Social plugins for Lambdabot";
13 license = "GPL";
16 license = "GPL";
14−}
17+}
test/golden-test-cases/lazy-csv.nix.golden+6−3
@@ -1,8 +1,11 @@
1−{ mkDerivation, base, bytestring, stdenv }:
1+{ mkDerivation, base, bytestring, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "lazy-csv";
3 pname = "lazy-csv";
4 version = "0.5.1";
4 version = "0.5.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 isLibrary = true;
9 isLibrary = true;
7 isExecutable = true;
10 isExecutable = true;
8 libraryHaskellDepends = [ base bytestring ];
11 libraryHaskellDepends = [ base bytestring ];
@@ -10,4 +13,4 @@ mkDerivation {
10 homepage = "http://code.haskell.org/lazy-csv";
13 homepage = "http://code.haskell.org/lazy-csv";
11 description = "Efficient lazy parsers for CSV (comma-separated values)";
14 description = "Efficient lazy parsers for CSV (comma-separated values)";
12 license = stdenv.lib.licenses.bsd3;
15 license = stdenv.lib.licenses.bsd3;
13−}
16+}
test/golden-test-cases/lens-aeson.nix.golden+8−5
@@ -1,12 +1,15 @@
1{ mkDerivation, aeson, attoparsec, base, bytestring, Cabal
1{ mkDerivation, aeson, attoparsec, base, bytestring, Cabal
2−, cabal-doctest, doctest, generic-deriving, lens, scientific
2+, cabal-doctest, doctest, fetchurl, generic-deriving, lens
3−, semigroups, simple-reflect, stdenv, text, unordered-containers
3+, scientific, semigroups, simple-reflect, text
4−, vector
4+, unordered-containers, vector
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "lens-aeson";
7 pname = "lens-aeson";
8 version = "1.0.2";
8 version = "1.0.2";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 setupHaskellDepends = [ base Cabal cabal-doctest ];
13 setupHaskellDepends = [ base Cabal cabal-doctest ];
11 libraryHaskellDepends = [
14 libraryHaskellDepends = [
12 aeson attoparsec base bytestring lens scientific text
15 aeson attoparsec base bytestring lens scientific text
@@ -18,4 +21,4 @@ mkDerivation {
18 homepage = "http://github.com/lens/lens-aeson/";
21 homepage = "http://github.com/lens/lens-aeson/";
19 description = "Law-abiding lenses for aeson";
22 description = "Law-abiding lenses for aeson";
20 license = stdenv.lib.licenses.mit;
23 license = stdenv.lib.licenses.mit;
21−}
24+}
test/golden-test-cases/lens.nix.golden+9−6
@@ -1,10 +1,10 @@
1{ mkDerivation, array, base, base-orphans, bifunctors, bytestring
1{ mkDerivation, array, base, base-orphans, bifunctors, bytestring
2, Cabal, cabal-doctest, call-stack, comonad, containers
2, Cabal, cabal-doctest, call-stack, comonad, containers
3, contravariant, criterion, deepseq, directory, distributive
3, contravariant, criterion, deepseq, directory, distributive
4−, doctest, exceptions, filepath, free, generic-deriving, ghc-prim
4+, doctest, exceptions, fetchurl, filepath, free, generic-deriving
5−, hashable, HUnit, kan-extensions, mtl, nats, parallel, profunctors
5+, ghc-prim, hashable, HUnit, kan-extensions, mtl, nats, parallel
6−, QuickCheck, reflection, semigroupoids, semigroups, simple-reflect
6+, profunctors, QuickCheck, reflection, semigroupoids, semigroups
7−, stdenv, tagged, template-haskell, test-framework
7+, simple-reflect, tagged, template-haskell, test-framework
8, test-framework-hunit, test-framework-quickcheck2
8, test-framework-hunit, test-framework-quickcheck2
9, test-framework-th, text, th-abstraction, transformers
9, test-framework-th, text, th-abstraction, transformers
10, transformers-compat, unordered-containers, vector, void
10, transformers-compat, unordered-containers, vector, void
@@ -12,7 +12,10 @@
12mkDerivation {
12mkDerivation {
13 pname = "lens";
13 pname = "lens";
14 version = "4.15.4";
14 version = "4.15.4";
15+ src = fetchurl {
16+ url = "http://example.org/";
15− sha256 = "deadbeef";
17+ sha256 = "abc";
18+ };
16 setupHaskellDepends = [ base Cabal cabal-doctest filepath ];
19 setupHaskellDepends = [ base Cabal cabal-doctest filepath ];
17 libraryHaskellDepends = [
20 libraryHaskellDepends = [
18 array base base-orphans bifunctors bytestring call-stack comonad
21 array base base-orphans bifunctors bytestring call-stack comonad
@@ -36,4 +39,4 @@ mkDerivation {
36 homepage = "http://github.com/ekmett/lens/";
39 homepage = "http://github.com/ekmett/lens/";
37 description = "Lenses, Folds and Traversals";
40 description = "Lenses, Folds and Traversals";
38 license = stdenv.lib.licenses.bsd2;
41 license = stdenv.lib.licenses.bsd2;
39−}
42+}
test/golden-test-cases/libgit.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, mtl, process, stdenv }:
1+{ mkDerivation, base, fetchurl, mtl, process }:
2mkDerivation {
2mkDerivation {
3 pname = "libgit";
3 pname = "libgit";
4 version = "0.3.1";
4 version = "0.3.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base mtl process ];
9 libraryHaskellDepends = [ base mtl process ];
7 homepage = "https://github.com/vincenthz/hs-libgit";
10 homepage = "https://github.com/vincenthz/hs-libgit";
8 description = "Simple Git Wrapper";
11 description = "Simple Git Wrapper";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/librato.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, aeson, attoparsec, base, bytestring, either
1{ mkDerivation, aeson, attoparsec, base, bytestring, either
2−, http-client, http-conduit, http-types, mtl, resourcet, stdenv
2+, fetchurl, http-client, http-conduit, http-types, mtl, resourcet
3, text, unordered-containers, uri-templater, vector
3, text, unordered-containers, uri-templater, vector
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "librato";
6 pname = "librato";
7 version = "0.2.0.1";
7 version = "0.2.0.1";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 aeson attoparsec base bytestring either http-client http-conduit
13 aeson attoparsec base bytestring either http-client http-conduit
11 http-types mtl resourcet text unordered-containers uri-templater
14 http-types mtl resourcet text unordered-containers uri-templater
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "https://github.com/SaneTracker/librato";
17 homepage = "https://github.com/SaneTracker/librato";
15 description = "Bindings to the Librato API";
18 description = "Bindings to the Librato API";
16 license = stdenv.lib.licenses.mit;
19 license = stdenv.lib.licenses.mit;
17−}
20+}
test/golden-test-cases/lifted-async.nix.golden+8−5
@@ -1,11 +1,14 @@
1−{ mkDerivation, async, base, constraints, criterion, deepseq, HUnit
1+{ mkDerivation, async, base, constraints, criterion, deepseq
2−, lifted-base, monad-control, mtl, stdenv, tasty, tasty-hunit
2+, fetchurl, HUnit, lifted-base, monad-control, mtl, tasty
3−, tasty-th, transformers-base
3+, tasty-hunit, tasty-th, transformers-base
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "lifted-async";
6 pname = "lifted-async";
7 version = "0.9.3.2";
7 version = "0.9.3.2";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 async base constraints lifted-base monad-control transformers-base
13 async base constraints lifted-base monad-control transformers-base
11 ];
14 ];
@@ -17,4 +20,4 @@ mkDerivation {
17 homepage = "https://github.com/maoe/lifted-async";
20 homepage = "https://github.com/maoe/lifted-async";
18 description = "Run lifted IO operations asynchronously and wait for their results";
21 description = "Run lifted IO operations asynchronously and wait for their results";
19 license = stdenv.lib.licenses.bsd3;
22 license = stdenv.lib.licenses.bsd3;
20−}
23+}
test/golden-test-cases/lmdb.nix.golden+6−3
@@ -1,11 +1,14 @@
1−{ mkDerivation, array, base, lmdb, stdenv }:
1+{ mkDerivation, array, base, fetchurl, lmdb }:
2mkDerivation {
2mkDerivation {
3 pname = "lmdb";
3 pname = "lmdb";
4 version = "0.2.5";
4 version = "0.2.5";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ array base ];
9 libraryHaskellDepends = [ array base ];
7 librarySystemDepends = [ lmdb ];
10 librarySystemDepends = [ lmdb ];
8 homepage = "http://github.com/dmbarbour/haskell-lmdb";
11 homepage = "http://github.com/dmbarbour/haskell-lmdb";
9 description = "Lightning MDB bindings";
12 description = "Lightning MDB bindings";
10 license = stdenv.lib.licenses.bsd2;
13 license = stdenv.lib.licenses.bsd2;
11−}
14+}
test/golden-test-cases/logging-effect-extra-file.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, logging-effect, stdenv, template-haskell
1+{ mkDerivation, base, fetchurl, logging-effect, template-haskell
2, wl-pprint-text
2, wl-pprint-text
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "logging-effect-extra-file";
5 pname = "logging-effect-extra-file";
6 version = "1.1.1";
6 version = "1.1.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 isLibrary = true;
11 isLibrary = true;
9 isExecutable = true;
12 isExecutable = true;
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "https://github.com/jship/logging-effect-extra#readme";
17 homepage = "https://github.com/jship/logging-effect-extra#readme";
15 description = "TH splices to augment log messages with file info";
18 description = "TH splices to augment log messages with file info";
16 license = stdenv.lib.licenses.mit;
19 license = stdenv.lib.licenses.mit;
17−}
20+}
test/golden-test-cases/lucid.nix.golden+7−4
@@ -1,11 +1,14 @@
1{ mkDerivation, base, bifunctors, blaze-builder, bytestring
1{ mkDerivation, base, bifunctors, blaze-builder, bytestring
2−, containers, criterion, deepseq, hashable, hspec, HUnit, mmorph
2+, containers, criterion, deepseq, fetchurl, hashable, hspec, HUnit
3−, mtl, parsec, stdenv, text, transformers, unordered-containers
3+, mmorph, mtl, parsec, text, transformers, unordered-containers
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "lucid";
6 pname = "lucid";
7 version = "2.9.9";
7 version = "2.9.9";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 base blaze-builder bytestring containers hashable mmorph mtl text
13 base blaze-builder bytestring containers hashable mmorph mtl text
11 transformers unordered-containers
14 transformers unordered-containers
@@ -19,4 +22,4 @@ mkDerivation {
19 homepage = "https://github.com/chrisdone/lucid";
22 homepage = "https://github.com/chrisdone/lucid";
20 description = "Clear to write, read and edit DSL for HTML";
23 description = "Clear to write, read and edit DSL for HTML";
21 license = stdenv.lib.licenses.bsd3;
24 license = stdenv.lib.licenses.bsd3;
22−}
25+}
test/golden-test-cases/mainland-pretty.nix.golden+6−3
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, containers, srcloc, stdenv, text
1+{ mkDerivation, base, containers, fetchurl, srcloc, text
2, transformers
2, transformers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "mainland-pretty";
5 pname = "mainland-pretty";
6 version = "0.6.1";
6 version = "0.6.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base containers srcloc text transformers
12 base containers srcloc text transformers
10 ];
13 ];
11 homepage = "https://github.com/mainland/mainland-pretty";
14 homepage = "https://github.com/mainland/mainland-pretty";
12 description = "Pretty printing designed for printing source code";
15 description = "Pretty printing designed for printing source code";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/matrices.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, criterion, deepseq, primitive, stdenv, tasty
1+{ mkDerivation, base, criterion, deepseq, fetchurl, primitive
2−, tasty-hunit, tasty-quickcheck, vector
2+, tasty, tasty-hunit, tasty-quickcheck, vector
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "matrices";
5 pname = "matrices";
6 version = "0.4.5";
6 version = "0.4.5";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base deepseq primitive vector ];
11 libraryHaskellDepends = [ base deepseq primitive vector ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 base tasty tasty-hunit tasty-quickcheck vector
13 base tasty tasty-hunit tasty-quickcheck vector
@@ -12,4 +15,4 @@ mkDerivation {
12 benchmarkHaskellDepends = [ base criterion vector ];
15 benchmarkHaskellDepends = [ base criterion vector ];
13 description = "native matrix based on vector";
16 description = "native matrix based on vector";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/median-stream.nix.golden+6−3
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, heap, QuickCheck, stdenv }:
1+{ mkDerivation, base, fetchurl, heap, QuickCheck }:
2mkDerivation {
2mkDerivation {
3 pname = "median-stream";
3 pname = "median-stream";
4 version = "0.7.0.0";
4 version = "0.7.0.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base heap ];
9 libraryHaskellDepends = [ base heap ];
7 testHaskellDepends = [ base QuickCheck ];
10 testHaskellDepends = [ base QuickCheck ];
8 homepage = "https://github.com/caneroj1/median-stream#readme";
11 homepage = "https://github.com/caneroj1/median-stream#readme";
9 description = "Constant-time queries for the median of a stream of numeric data";
12 description = "Constant-time queries for the median of a stream of numeric data";
10 license = stdenv.lib.licenses.bsd3;
13 license = stdenv.lib.licenses.bsd3;
11−}
14+}
test/golden-test-cases/megaparsec.nix.golden+8−5
@@ -1,12 +1,15 @@
1{ mkDerivation, base, bytestring, case-insensitive, containers
1{ mkDerivation, base, bytestring, case-insensitive, containers
2−, criterion, deepseq, hspec, hspec-expectations, mtl
2+, criterion, deepseq, fetchurl, hspec, hspec-expectations, mtl
3−, parser-combinators, QuickCheck, scientific, stdenv, text
3+, parser-combinators, QuickCheck, scientific, text, transformers
4−, transformers, weigh
4+, weigh
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "megaparsec";
7 pname = "megaparsec";
8 version = "6.3.0";
8 version = "6.3.0";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
11 base bytestring case-insensitive containers deepseq mtl
14 base bytestring case-insensitive containers deepseq mtl
12 parser-combinators scientific text transformers
15 parser-combinators scientific text transformers
@@ -19,4 +22,4 @@ mkDerivation {
19 homepage = "https://github.com/mrkkrp/megaparsec";
22 homepage = "https://github.com/mrkkrp/megaparsec";
20 description = "Monadic parser combinators";
23 description = "Monadic parser combinators";
21 license = stdenv.lib.licenses.bsd2;
24 license = stdenv.lib.licenses.bsd2;
22−}
25+}
test/golden-test-cases/mersenne-random.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, old-time, stdenv }:
1+{ mkDerivation, base, fetchurl, old-time }:
2mkDerivation {
2mkDerivation {
3 pname = "mersenne-random";
3 pname = "mersenne-random";
4 version = "1.0.0.1";
4 version = "1.0.0.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base old-time ];
9 libraryHaskellDepends = [ base old-time ];
7 homepage = "http://code.haskell.org/~dons/code/mersenne-random";
10 homepage = "http://code.haskell.org/~dons/code/mersenne-random";
8 description = "Generate high quality pseudorandom numbers using a SIMD Fast Mersenne Twister";
11 description = "Generate high quality pseudorandom numbers using a SIMD Fast Mersenne Twister";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/messagepack.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, base, bytestring, cereal, containers, deepseq
1{ mkDerivation, base, bytestring, cereal, containers, deepseq
2−, QuickCheck, stdenv, test-framework, test-framework-quickcheck2
2+, fetchurl, QuickCheck, test-framework, test-framework-quickcheck2
3, test-framework-th
3, test-framework-th
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "messagepack";
6 pname = "messagepack";
7 version = "0.5.4";
7 version = "0.5.4";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 base bytestring cereal containers deepseq
13 base bytestring cereal containers deepseq
11 ];
14 ];
@@ -16,4 +19,4 @@ mkDerivation {
16 homepage = "https://github.com/rodrigosetti/messagepack";
19 homepage = "https://github.com/rodrigosetti/messagepack";
17 description = "Serialize instance for Message Pack Object";
20 description = "Serialize instance for Message Pack Object";
18 license = stdenv.lib.licenses.mit;
21 license = stdenv.lib.licenses.mit;
19−}
22+}
test/golden-test-cases/microlens-ghc.nix.golden+7−4
@@ -1,14 +1,17 @@
1−{ mkDerivation, array, base, bytestring, containers, microlens
1+{ mkDerivation, array, base, bytestring, containers, fetchurl
2−, stdenv, transformers
2+, microlens, transformers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "microlens-ghc";
5 pname = "microlens-ghc";
6 version = "0.4.8.0";
6 version = "0.4.8.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 array base bytestring containers microlens transformers
12 array base bytestring containers microlens transformers
10 ];
13 ];
11 homepage = "http://github.com/aelve/microlens";
14 homepage = "http://github.com/aelve/microlens";
12 description = "microlens + array, bytestring, containers, transformers";
15 description = "microlens + array, bytestring, containers, transformers";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/microlens.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv }:
1+{ mkDerivation, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "microlens";
3 pname = "microlens";
4 version = "0.4.8.1";
4 version = "0.4.8.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 homepage = "http://github.com/aelve/microlens";
10 homepage = "http://github.com/aelve/microlens";
8 description = "A tiny lens library with no dependencies. If you're writing an app, you probably want microlens-platform, not this.";
11 description = "A tiny lens library with no dependencies. If you're writing an app, you probably want microlens-platform, not this.";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/minio-hs.nix.golden+11−7
@@ -1,16 +1,20 @@
1{ mkDerivation, aeson, async, base, base64-bytestring, bytestring
1{ mkDerivation, aeson, async, base, base64-bytestring, bytestring
2, case-insensitive, conduit, conduit-combinators, conduit-extra
2, case-insensitive, conduit, conduit-combinators, conduit-extra
3, containers, cryptonite, cryptonite-conduit, data-default
3, containers, cryptonite, cryptonite-conduit, data-default
4−, directory, exceptions, filepath, http-client, http-conduit
4+, directory, exceptions, fetchurl, filepath, http-client
5−, http-types, lifted-async, lifted-base, memory, monad-control
5+, http-conduit, http-types, lifted-async, lifted-base, memory
6−, protolude, QuickCheck, resourcet, stdenv, tasty, tasty-hunit
6+, monad-control, protolude, QuickCheck, resourcet, tasty
7−, tasty-quickcheck, tasty-smallcheck, temporary, text, text-format
7+, tasty-hunit, tasty-quickcheck, tasty-smallcheck, temporary, text
8−, time, transformers, transformers-base, vector, xml-conduit
8+, text-format, time, transformers, transformers-base, vector
9+, xml-conduit
9}:
10}:
10mkDerivation {
11mkDerivation {
11 pname = "minio-hs";
12 pname = "minio-hs";
12 version = "0.3.2";
13 version = "0.3.2";
14+ src = fetchurl {
15+ url = "http://example.org/";
13− sha256 = "deadbeef";
16+ sha256 = "abc";
17+ };
14 libraryHaskellDepends = [
18 libraryHaskellDepends = [
15 aeson async base base64-bytestring bytestring case-insensitive
19 aeson async base base64-bytestring bytestring case-insensitive
16 conduit conduit-combinators conduit-extra containers cryptonite
20 conduit conduit-combinators conduit-extra containers cryptonite
@@ -31,4 +35,4 @@ mkDerivation {
31 homepage = "https://github.com/minio/minio-hs#readme";
35 homepage = "https://github.com/minio/minio-hs#readme";
32 description = "A Minio Haskell Library for Amazon S3 compatible cloud storage";
36 description = "A Minio Haskell Library for Amazon S3 compatible cloud storage";
33 license = stdenv.lib.licenses.asl20;
37 license = stdenv.lib.licenses.asl20;
34−}
38+}
test/golden-test-cases/mmorph.nix.golden+6−3
@@ -1,13 +1,16 @@
1−{ mkDerivation, base, mtl, stdenv, transformers
1+{ mkDerivation, base, fetchurl, mtl, transformers
2, transformers-compat
2, transformers-compat
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "mmorph";
5 pname = "mmorph";
6 version = "1.1.0";
6 version = "1.1.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base mtl transformers transformers-compat
12 base mtl transformers transformers-compat
10 ];
13 ];
11 description = "Monad morphisms";
14 description = "Monad morphisms";
12 license = stdenv.lib.licenses.bsd3;
15 license = stdenv.lib.licenses.bsd3;
13−}
16+}
test/golden-test-cases/mnist-idx.nix.golden+7−4
@@ -1,13 +1,16 @@
1−{ mkDerivation, base, binary, bytestring, directory, hspec, stdenv
1+{ mkDerivation, base, binary, bytestring, directory, fetchurl
2−, vector
2+, hspec, vector
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "mnist-idx";
5 pname = "mnist-idx";
6 version = "0.1.2.8";
6 version = "0.1.2.8";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base binary bytestring vector ];
11 libraryHaskellDepends = [ base binary bytestring vector ];
9 testHaskellDepends = [ base binary directory hspec vector ];
12 testHaskellDepends = [ base binary directory hspec vector ];
10 homepage = "https://github.com/kryoxide/mnist-idx/";
13 homepage = "https://github.com/kryoxide/mnist-idx/";
11 description = "Read and write IDX data that is used in e.g. the MNIST database.";
14 description = "Read and write IDX data that is used in e.g. the MNIST database.";
12 license = stdenv.lib.licenses.lgpl3;
15 license = stdenv.lib.licenses.lgpl3;
13−}
16+}
test/golden-test-cases/mole.nix.golden+10−7
@@ -1,14 +1,17 @@
1{ mkDerivation, attoparsec, base, base64-bytestring, bytestring
1{ mkDerivation, attoparsec, base, base64-bytestring, bytestring
2−, containers, cryptohash, css-syntax, directory, filemanip
2+, containers, cryptohash, css-syntax, directory, fetchurl
3−, filepath, fsnotify, hspec, hspec-smallcheck, kraken, mtl
3+, filemanip, filepath, fsnotify, hspec, hspec-smallcheck, kraken
4−, network-uri, optparse-applicative, process, smallcheck, snap-core
4+, mtl, network-uri, optparse-applicative, process, smallcheck
5−, snap-server, stdenv, stm, tagsoup, text, time, transformers, unix
5+, snap-core, snap-server, stm, tagsoup, text, time, transformers
6−, unordered-containers, vector
6+, unix, unordered-containers, vector
7}:
7}:
8mkDerivation {
8mkDerivation {
9 pname = "mole";
9 pname = "mole";
10 version = "0.0.6";
10 version = "0.0.6";
11+ src = fetchurl {
12+ url = "http://example.org/";
11− sha256 = "deadbeef";
13+ sha256 = "abc";
14+ };
12 isLibrary = false;
15 isLibrary = false;
13 isExecutable = true;
16 isExecutable = true;
14 executableHaskellDepends = [
17 executableHaskellDepends = [
@@ -23,4 +26,4 @@ mkDerivation {
23 ];
26 ];
24 description = "A glorified string replacement tool";
27 description = "A glorified string replacement tool";
25 license = stdenv.lib.licenses.mit;
28 license = stdenv.lib.licenses.mit;
26−}
29+}
test/golden-test-cases/monad-products.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, semigroupoids, stdenv }:
1+{ mkDerivation, base, fetchurl, semigroupoids }:
2mkDerivation {
2mkDerivation {
3 pname = "monad-products";
3 pname = "monad-products";
4 version = "4.0.1";
4 version = "4.0.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base semigroupoids ];
9 libraryHaskellDepends = [ base semigroupoids ];
7 homepage = "http://github.com/ekmett/monad-products";
10 homepage = "http://github.com/ekmett/monad-products";
8 description = "Monad products";
11 description = "Monad products";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/monadcryptorandom.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, crypto-api, exceptions, mtl
1+{ mkDerivation, base, bytestring, crypto-api, exceptions, fetchurl
2−, stdenv, tagged, transformers, transformers-compat
2+, mtl, tagged, transformers, transformers-compat
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "monadcryptorandom";
5 pname = "monadcryptorandom";
6 version = "0.7.1";
6 version = "0.7.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base bytestring crypto-api exceptions mtl tagged transformers
12 base bytestring crypto-api exceptions mtl tagged transformers
10 transformers-compat
13 transformers-compat
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://github.com/TomMD/monadcryptorandom";
15 homepage = "https://github.com/TomMD/monadcryptorandom";
13 description = "A monad for using CryptoRandomGen";
16 description = "A monad for using CryptoRandomGen";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/monadloc.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv, template-haskell, transformers }:
1+{ mkDerivation, base, fetchurl, template-haskell, transformers }:
2mkDerivation {
2mkDerivation {
3 pname = "monadloc";
3 pname = "monadloc";
4 version = "0.7.1";
4 version = "0.7.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base template-haskell transformers ];
9 libraryHaskellDepends = [ base template-haskell transformers ];
7 homepage = "http://github.com/pepeiborra/monadloc";
10 homepage = "http://github.com/pepeiborra/monadloc";
8 description = "A class for monads which can keep a monadic call trace";
11 description = "A class for monads which can keep a monadic call trace";
9 license = stdenv.lib.licenses.publicDomain;
12 license = stdenv.lib.licenses.publicDomain;
10−}
13+}
test/golden-test-cases/mongoDB.nix.golden+8−5
@@ -1,14 +1,17 @@
1{ mkDerivation, array, base, base16-bytestring, base64-bytestring
1{ mkDerivation, array, base, base16-bytestring, base64-bytestring
2, binary, bson, bytestring, conduit, conduit-extra, containers
2, binary, bson, bytestring, conduit, conduit-extra, containers
3−, criterion, cryptohash, data-default-class, hashtables, hspec
3+, criterion, cryptohash, data-default-class, fetchurl, hashtables
4−, lifted-base, monad-control, mtl, network, nonce, old-locale
4+, hspec, lifted-base, monad-control, mtl, network, nonce
5−, parsec, pureMD5, random, random-shuffle, resourcet, stdenv
5+, old-locale, parsec, pureMD5, random, random-shuffle, resourcet
6, tagged, text, time, tls, transformers, transformers-base
6, tagged, text, time, tls, transformers, transformers-base
7}:
7}:
8mkDerivation {
8mkDerivation {
9 pname = "mongoDB";
9 pname = "mongoDB";
10 version = "2.3.0.1";
10 version = "2.3.0.1";
11+ src = fetchurl {
12+ url = "http://example.org/";
11− sha256 = "deadbeef";
13+ sha256 = "abc";
14+ };
12 libraryHaskellDepends = [
15 libraryHaskellDepends = [
13 array base base16-bytestring base64-bytestring binary bson
16 array base base16-bytestring base64-bytestring binary bson
14 bytestring conduit conduit-extra containers cryptohash
17 bytestring conduit conduit-extra containers cryptohash
@@ -26,4 +29,4 @@ mkDerivation {
26 homepage = "https://github.com/mongodb-haskell/mongodb";
29 homepage = "https://github.com/mongodb-haskell/mongodb";
27 description = "Driver (client) for MongoDB, a free, scalable, fast, document DBMS";
30 description = "Driver (client) for MongoDB, a free, scalable, fast, document DBMS";
28 license = stdenv.lib.licenses.asl20;
31 license = stdenv.lib.licenses.asl20;
29−}
32+}
test/golden-test-cases/monoid-extras.nix.golden+7−4
@@ -1,12 +1,15 @@
1−{ mkDerivation, base, criterion, groups, semigroupoids, semigroups
1+{ mkDerivation, base, criterion, fetchurl, groups, semigroupoids
2−, stdenv
2+, semigroups
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "monoid-extras";
5 pname = "monoid-extras";
6 version = "0.4.2";
6 version = "0.4.2";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base groups semigroupoids semigroups ];
11 libraryHaskellDepends = [ base groups semigroupoids semigroups ];
9 benchmarkHaskellDepends = [ base criterion ];
12 benchmarkHaskellDepends = [ base criterion ];
10 description = "Various extra monoid-related definitions and utilities";
13 description = "Various extra monoid-related definitions and utilities";
11 license = stdenv.lib.licenses.bsd3;
14 license = stdenv.lib.licenses.bsd3;
12−}
15+}
test/golden-test-cases/mwc-random-monad.nix.golden+7−4
@@ -1,13 +1,16 @@
1−{ mkDerivation, base, monad-primitive, mwc-random, primitive
1+{ mkDerivation, base, fetchurl, monad-primitive, mwc-random
2−, stdenv, transformers, vector
2+, primitive, transformers, vector
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "mwc-random-monad";
5 pname = "mwc-random-monad";
6 version = "0.7.3.1";
6 version = "0.7.3.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base monad-primitive mwc-random primitive transformers vector
12 base monad-primitive mwc-random primitive transformers vector
10 ];
13 ];
11 description = "Monadic interface for mwc-random";
14 description = "Monadic interface for mwc-random";
12 license = stdenv.lib.licenses.bsd3;
15 license = stdenv.lib.licenses.bsd3;
13−}
16+}
test/golden-test-cases/mwc-random.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, math-functions, primitive, stdenv, time
1+{ mkDerivation, base, fetchurl, math-functions, primitive, time
2, vector
2, vector
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "mwc-random";
5 pname = "mwc-random";
6 version = "0.13.6.0";
6 version = "0.13.6.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base math-functions primitive time vector
12 base math-functions primitive time vector
10 ];
13 ];
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://github.com/bos/mwc-random";
15 homepage = "https://github.com/bos/mwc-random";
13 description = "Fast, high quality pseudo random number generation";
16 description = "Fast, high quality pseudo random number generation";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/nanospec.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, hspec, silently, stdenv }:
1+{ mkDerivation, base, fetchurl, hspec, silently }:
2mkDerivation {
2mkDerivation {
3 pname = "nanospec";
3 pname = "nanospec";
4 version = "0.2.1";
4 version = "0.2.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 testHaskellDepends = [ base hspec silently ];
10 testHaskellDepends = [ base hspec silently ];
8 description = "A lightweight implementation of a subset of Hspec's API";
11 description = "A lightweight implementation of a subset of Hspec's API";
9 license = stdenv.lib.licenses.mit;
12 license = stdenv.lib.licenses.mit;
10−}
13+}
test/golden-test-cases/netpbm.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, attoparsec, attoparsec-binary, base, bytestring
1{ mkDerivation, attoparsec, attoparsec-binary, base, bytestring
2−, criterion, hspec, HUnit, stdenv, storable-record
2+, criterion, fetchurl, hspec, HUnit, storable-record
3, unordered-containers, vector, vector-th-unbox
3, unordered-containers, vector, vector-th-unbox
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "netpbm";
6 pname = "netpbm";
7 version = "1.0.2";
7 version = "1.0.2";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 attoparsec attoparsec-binary base bytestring storable-record
13 attoparsec attoparsec-binary base bytestring storable-record
11 unordered-containers vector vector-th-unbox
14 unordered-containers vector vector-th-unbox
@@ -15,4 +18,4 @@ mkDerivation {
15 homepage = "https://github.com/nh2/haskell-netpbm";
18 homepage = "https://github.com/nh2/haskell-netpbm";
16 description = "Loading PBM, PGM, PPM image files";
19 description = "Loading PBM, PGM, PPM image files";
17 license = stdenv.lib.licenses.mit;
20 license = stdenv.lib.licenses.mit;
18−}
21+}
test/golden-test-cases/network-protocol-xmpp.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, gnuidn, gnutls, gsasl, libxml-sax
1+{ mkDerivation, base, bytestring, fetchurl, gnuidn, gnutls, gsasl
2−, monads-tf, network, stdenv, text, transformers, xml-types
2+, libxml-sax, monads-tf, network, text, transformers, xml-types
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "network-protocol-xmpp";
5 pname = "network-protocol-xmpp";
6 version = "0.4.8";
6 version = "0.4.8";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base bytestring gnuidn gnutls gsasl libxml-sax monads-tf network
12 base bytestring gnuidn gnutls gsasl libxml-sax monads-tf network
10 text transformers xml-types
13 text transformers xml-types
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://john-millikin.com/software/haskell-xmpp/";
15 homepage = "https://john-millikin.com/software/haskell-xmpp/";
13 description = "Client library for the XMPP protocol";
16 description = "Client library for the XMPP protocol";
14 license = stdenv.lib.licenses.gpl3;
17 license = stdenv.lib.licenses.gpl3;
15−}
18+}
test/golden-test-cases/network-transport-tcp.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, base, bytestring, containers, data-accessor
1{ mkDerivation, base, bytestring, containers, data-accessor
2−, network, network-transport, network-transport-tests, stdenv
2+, fetchurl, network, network-transport, network-transport-tests
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "network-transport-tcp";
5 pname = "network-transport-tcp";
6 version = "0.6.0";
6 version = "0.6.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base bytestring containers data-accessor network network-transport
12 base bytestring containers data-accessor network network-transport
10 ];
13 ];
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "http://haskell-distributed.github.com";
17 homepage = "http://haskell-distributed.github.com";
15 description = "TCP instantiation of Network.Transport";
18 description = "TCP instantiation of Network.Transport";
16 license = stdenv.lib.licenses.bsd3;
19 license = stdenv.lib.licenses.bsd3;
17−}
20+}
test/golden-test-cases/nix-paths.nix.golden+6−3
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, nix, process, stdenv }:
1+{ mkDerivation, base, fetchurl, nix, process }:
2mkDerivation {
2mkDerivation {
3 pname = "nix-paths";
3 pname = "nix-paths";
4 version = "1.0.1";
4 version = "1.0.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base process ];
9 libraryHaskellDepends = [ base process ];
7 libraryToolDepends = [ nix ];
10 libraryToolDepends = [ nix ];
8 homepage = "https://github.com/peti/nix-paths";
11 homepage = "https://github.com/peti/nix-paths";
9 description = "Knowledge of Nix's installation directories";
12 description = "Knowledge of Nix's installation directories";
10 license = stdenv.lib.licenses.bsd3;
13 license = stdenv.lib.licenses.bsd3;
11−}
14+}
test/golden-test-cases/nvim-hs.nix.golden+9−7
@@ -1,9 +1,9 @@
1{ mkDerivation, ansi-wl-pprint, base, bytestring, cereal
1{ mkDerivation, ansi-wl-pprint, base, bytestring, cereal
2, cereal-conduit, conduit, conduit-extra, containers, data-default
2, cereal-conduit, conduit, conduit-extra, containers, data-default
3−, deepseq, directory, dyre, exceptions, filepath, foreign-store
3+, deepseq, directory, dyre, exceptions, fetchurl, filepath
4−, hslogger, hspec, hspec-discover, HUnit, lifted-base, megaparsec
4+, foreign-store, hslogger, hspec, hspec-discover, HUnit
5−, messagepack, monad-control, mtl, network, optparse-applicative
5+, lifted-base, megaparsec, messagepack, monad-control, mtl, network
6−, process, QuickCheck, resourcet, setenv, stdenv, stm
6+, optparse-applicative, process, QuickCheck, resourcet, setenv, stm
7, streaming-commons, template-haskell, text, time
7, streaming-commons, template-haskell, text, time
8, time-locale-compat, transformers, transformers-base, utf8-string
8, time-locale-compat, transformers, transformers-base, utf8-string
9, void
9, void
@@ -11,7 +11,10 @@
11mkDerivation {
11mkDerivation {
12 pname = "nvim-hs";
12 pname = "nvim-hs";
13 version = "0.2.5";
13 version = "0.2.5";
14+ src = fetchurl {
15+ url = "http://example.org/";
14− sha256 = "deadbeef";
16+ sha256 = "abc";
17+ };
15 isLibrary = true;
18 isLibrary = true;
16 isExecutable = true;
19 isExecutable = true;
17 libraryHaskellDepends = [
20 libraryHaskellDepends = [
@@ -32,8 +35,7 @@ mkDerivation {
32 template-haskell text time time-locale-compat transformers
35 template-haskell text time time-locale-compat transformers
33 transformers-base utf8-string
36 transformers-base utf8-string
34 ];
37 ];
35− testToolDepends = [ hspec-discover ];
36 homepage = "https://github.com/neovimhaskell/nvim-hs";
38 homepage = "https://github.com/neovimhaskell/nvim-hs";
37 description = "Haskell plugin backend for neovim";
39 description = "Haskell plugin backend for neovim";
38 license = stdenv.lib.licenses.asl20;
40 license = stdenv.lib.licenses.asl20;
39−}
41+}
test/golden-test-cases/once.nix.golden+6−3
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, containers, hashable, stdenv
1+{ mkDerivation, base, containers, fetchurl, hashable
2, template-haskell, unordered-containers
2, template-haskell, unordered-containers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "once";
5 pname = "once";
6 version = "0.2";
6 version = "0.2";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base containers hashable template-haskell unordered-containers
12 base containers hashable template-haskell unordered-containers
10 ];
13 ];
11 homepage = "https://anonscm.debian.org/cgit/users/kaction-guest/haskell-once.git";
14 homepage = "https://anonscm.debian.org/cgit/users/kaction-guest/haskell-once.git";
12 description = "memoization for IO actions and functions";
15 description = "memoization for IO actions and functions";
13 license = stdenv.lib.licenses.gpl3;
16 license = stdenv.lib.licenses.gpl3;
14−}
17+}
test/golden-test-cases/one-liner.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bifunctors, contravariant, ghc-prim, HUnit
1+{ mkDerivation, base, bifunctors, contravariant, fetchurl, ghc-prim
2−, profunctors, stdenv, tagged, transformers
2+, HUnit, profunctors, tagged, transformers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "one-liner";
5 pname = "one-liner";
6 version = "0.9.2";
6 version = "0.9.2";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base bifunctors contravariant ghc-prim profunctors tagged
12 base bifunctors contravariant ghc-prim profunctors tagged
10 transformers
13 transformers
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/sjoerdvisscher/one-liner";
16 homepage = "https://github.com/sjoerdvisscher/one-liner";
14 description = "Constraint-based generics";
17 description = "Constraint-based generics";
15 license = stdenv.lib.licenses.bsd3;
18 license = stdenv.lib.licenses.bsd3;
16−}
19+}
test/golden-test-cases/online.nix.golden+6−3
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, foldl, numhask, protolude, stdenv, tdigest
1+{ mkDerivation, base, fetchurl, foldl, numhask, protolude, tdigest
2, vector, vector-algorithms
2, vector, vector-algorithms
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "online";
5 pname = "online";
6 version = "0.2.0";
6 version = "0.2.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base foldl numhask protolude tdigest vector vector-algorithms
12 base foldl numhask protolude tdigest vector vector-algorithms
10 ];
13 ];
11 homepage = "https://github.com/tonyday567/online";
14 homepage = "https://github.com/tonyday567/online";
12 description = "online statistics";
15 description = "online statistics";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/opencv.cabaldeleted−263
@@ -1,263 +0,0 @@
1−name: opencv
2−version: 0.0.2.1
3−homepage: https://github.com/LumiGuide/haskell-opencv
4−bug-reports: https://github.com/LumiGuide/haskell-opencv/issues
5−license: BSD3
6−license-file: LICENSE
7−author: Roel van Dijk <roel@lambdacube.nl>, Bas van Dijk <v.dijk.bas@gmail.com>
8−maintainer: Roel van Dijk <roel@lambdacube.nl>, Bas van Dijk <v.dijk.bas@gmail.com>
9−build-type: Custom
10−cabal-version: >=1.23
11−category: AI, Graphics
12−synopsis: Haskell binding to OpenCV-3.x
13−description: <<https://raw.githubusercontent.com/LumiGuide/haskell-opencv/master/data/haskell-opencv-logo-200x82.png>>
14− .
15− This is a Haskell library providing a binding to OpenCV-3.x.
16− It binds directly with the C++ API using the @inline-c@ Haskell library.
17− .
18− The library is far from complete but the framework is there to easily
19− bind missing functionality.
20− .
21− Note that the OpenCV contrib modules are provided by
22− <http://hackage.haskell.org/package/opencv-extra opencv-extra>.
23− .
24− Make sure to checkout the
25− <https://github.com/LumiGuide/haskell-opencv/tree/master/opencv-examples opencv-examples>.
26−
27−extra-source-files:
28− CHANGELOG.md
29− data/*.png
30− data/*.jpg
31− data/*.mp4
32− data/*.xml
33−
34−extra-doc-files:
35− doc/generated/*.png
36− doc/generated/examples/*.png
37− doc/generated/examples/*.gif
38− doc/color_conversions.png
39−
40−source-repository head
41− type: git
42− location: git://github.com/LumiGuide/haskell-opencv.git
43− subdir: opencv
44−
45−flag internal-documentation
46− description: Enables documentation generation for internal modules.
47− default: False
48− manual: True
49−
50−custom-setup
51− setup-depends: base, Cabal >= 1.23
52−
53−library
54− hs-source-dirs: src
55− include-dirs: include
56− install-includes:
57− haskell_opencv_matx_typedefs.hpp
58− hsc_macros.hpp
59− namespace.hpp
60− orb.hpp
61− simple_blob_detector.hpp
62− termcriteria.hpp
63− video_motion_analysis.hpp
64−
65− cc-options: -Wall -std=c++11
66− ghc-options: -Wall -fwarn-incomplete-patterns -funbox-strict-fields
67− if flag(internal-documentation)
68− cpp-options: -DENABLE_INTERNAL_DOCUMENTATION
69−
70− build-depends:
71− aeson >= 0.9.0.1
72− , base >= 4.8 && <5
73− , base64-bytestring >= 1.0.0.1
74− , bindings-DSL >= 1.0.23
75− , bytestring >= 0.10.6
76− , containers >= 0.5.6.2
77− , data-default >= 0.7.1.1
78− , deepseq >= 1.4.1.1
79− , inline-c >= 0.6
80− , inline-c-cpp >= 0.2.1
81− , JuicyPixels >= 3.2.8.1
82− , linear >= 1.20.4
83− , primitive >= 0.6.1
84− , repa >= 3.4.0.2
85− , template-haskell >= 2.10
86− , text >= 1.2.2.1
87− , transformers >= 0.4.2
88− , vector >= 0.11
89−
90− exposed-modules:
91− OpenCV
92− OpenCV.Calib3d
93− OpenCV.Core.ArrayOps
94− OpenCV.Core.Types
95− OpenCV.Core.Types.Mat
96− OpenCV.Core.Types.Mat.HMat
97− OpenCV.Core.Types.Mat.Repa
98− OpenCV.Core.Types.Matx
99− OpenCV.Core.Types.Point
100− OpenCV.Core.Types.Rect
101− OpenCV.Core.Types.Size
102− OpenCV.Core.Types.Vec
103− OpenCV.Exception
104− OpenCV.Features2d
105− OpenCV.HighGui
106− OpenCV.ImgCodecs
107− OpenCV.ImgProc.ColorMaps
108− OpenCV.ImgProc.Drawing
109− OpenCV.ImgProc.FeatureDetection
110− OpenCV.ImgProc.GeometricImgTransform
111− OpenCV.ImgProc.ImgFiltering
112− OpenCV.ImgProc.MiscImgTransform
113− OpenCV.ImgProc.MiscImgTransform.ColorCodes
114− OpenCV.ImgProc.ObjectDetection
115− OpenCV.ImgProc.StructuralAnalysis
116− OpenCV.ImgProc.Types
117− OpenCV.ImgProc.CascadeClassifier
118− OpenCV.JSON
119− OpenCV.Photo
120− OpenCV.TypeLevel
121− OpenCV.Unsafe
122− OpenCV.Video
123− OpenCV.Video.MotionAnalysis
124− OpenCV.VideoIO.Types
125− OpenCV.VideoIO.VideoCapture
126− OpenCV.VideoIO.VideoWriter
127−
128− OpenCV.Internal
129− OpenCV.Internal.Mutable
130− OpenCV.Internal.C.Inline
131− OpenCV.Internal.C.PlacementNew
132− OpenCV.Internal.C.PlacementNew.TH
133− OpenCV.Internal.C.Types
134− OpenCV.Internal.Calib3d.Constants
135− OpenCV.Internal.Core.ArrayOps
136− OpenCV.Internal.Core.Types
137− OpenCV.Internal.Core.Types.Constants
138− OpenCV.Internal.Core.Types.Mat
139− OpenCV.Internal.Core.Types.Mat.Depth
140− OpenCV.Internal.Core.Types.Mat.HMat
141− OpenCV.Internal.Core.Types.Mat.Marshal
142− OpenCV.Internal.Core.Types.Mat.ToFrom
143− OpenCV.Internal.Core.Types.Matx
144− OpenCV.Internal.Core.Types.Matx.TH
145− OpenCV.Internal.Core.Types.Point
146− OpenCV.Internal.Core.Types.Point.TH
147− OpenCV.Internal.Core.Types.Rect
148− OpenCV.Internal.Core.Types.Rect.TH
149− OpenCV.Internal.Core.Types.Size
150− OpenCV.Internal.Core.Types.Size.TH
151− OpenCV.Internal.Core.Types.Vec
152− OpenCV.Internal.Core.Types.Vec.TH
153− OpenCV.Internal.Exception
154− OpenCV.Internal.ImgCodecs
155− OpenCV.Internal.ImgProc.MiscImgTransform
156− OpenCV.Internal.ImgProc.MiscImgTransform.TypeLevel
157− OpenCV.Internal.ImgProc.MiscImgTransform.ColorCodes
158− OpenCV.Internal.ImgProc.Types
159− OpenCV.Internal.Photo.Constants
160− OpenCV.Internal.VideoIO.Constants
161− OpenCV.Internal.VideoIO.Types
162− OpenCV.Juicy
163−
164− default-extensions:
165− BangPatterns
166− DataKinds
167− FlexibleContexts
168− FlexibleInstances
169− LambdaCase
170− OverloadedStrings
171− PackageImports
172− PolyKinds
173− ScopedTypeVariables
174− TupleSections
175− TypeFamilies
176− TypeOperators
177−
178− default-language: Haskell2010
179− pkgconfig-depends: opencv >= 3.0.0
180− extra-libraries: stdc++
181−
182−test-suite doc-images-opencv
183− type: exitcode-stdio-1.0
184− hs-source-dirs: doc
185− main-is: images.hs
186− other-modules:
187− ExampleExtractor
188− Language.Haskell.Meta.Syntax.Translate
189− default-language: Haskell2010
190− ghc-options: -Wall -fwarn-incomplete-patterns -threaded -funbox-strict-fields -rtsopts
191− build-depends:
192− base >= 4.8 && < 5
193− , bytestring >= 0.10.6
194− , containers >= 0.5.6.2
195− , data-default >= 0.7.1.1
196− , directory >= 1.2.2
197− , Glob >= 0.9
198− , haskell-src-exts >= 1.18.2
199− , JuicyPixels >= 3.2.8.1
200− , linear >= 1.20.4
201− , opencv
202− , primitive >= 0.6.1
203− , template-haskell >= 2.10
204− , text >= 1.2.2.1
205− , transformers >= 0.4.2
206− , vector >= 0.11
207−
208− default-extensions:
209− BangPatterns
210− DataKinds
211− LambdaCase
212− OverloadedStrings
213− PackageImports
214− PolyKinds
215− ScopedTypeVariables
216− TupleSections
217− TypeFamilies
218− TypeOperators
219−
220−test-suite test-opencv
221− type: exitcode-stdio-1.0
222− hs-source-dirs: test
223− main-is: test.hs
224− default-language: Haskell2010
225− ghc-options: -Wall -fwarn-incomplete-patterns -threaded -funbox-strict-fields -rtsopts
226− build-depends:
227− base >= 4.8 && < 5
228− , bytestring >= 0.10.6
229− , lens >= 4.13
230− , linear >= 1.20.4
231− , opencv
232− , QuickCheck >= 2.10.1
233− , repa >= 3.4.0.2
234− , tasty >= 0.11.0.2
235− , tasty-hunit >= 0.9.2
236− , tasty-quickcheck >= 0.8.4
237− , transformers >= 0.4.2
238− , vector >= 0.11
239−
240− default-extensions:
241− DataKinds
242− FlexibleContexts
243− PackageImports
244− RankNTypes
245− ScopedTypeVariables
246− TypeOperators
247−
248−benchmark bench-opencv
249− type: exitcode-stdio-1.0
250− hs-source-dirs: bench
251− main-is: bench.hs
252− default-language: Haskell2010
253− ghc-options: -Wall -fwarn-incomplete-patterns -threaded -funbox-strict-fields -rtsopts
254− build-depends:
255− base >= 4.8 && < 5
256− , bytestring >= 0.10.6
257− , criterion >= 1.1.1
258− , opencv
259− , repa >= 3.4.0.2
260−
261− default-extensions:
262− DataKinds
263− PackageImports
test/golden-test-cases/opencv.nix.goldendeleted−30
@@ -1,30 +0,0 @@
1−{ mkDerivation, aeson, base, base64-bytestring, bindings-DSL
2−, bytestring, Cabal, containers, criterion, data-default, deepseq
3−, directory, Glob, haskell-src-exts, inline-c, inline-c-cpp
4−, JuicyPixels, lens, linear, opencv3, primitive, QuickCheck, repa
5−, stdenv, tasty, tasty-hunit, tasty-quickcheck, template-haskell
6−, text, transformers, vector
7−}:
8−mkDerivation {
9− pname = "opencv";
10− version = "0.0.2.1";
11− sha256 = "deadbeef";
12− setupHaskellDepends = [ base Cabal ];
13− libraryHaskellDepends = [
14− aeson base base64-bytestring bindings-DSL bytestring containers
15− data-default deepseq inline-c inline-c-cpp JuicyPixels linear
16− primitive repa template-haskell text transformers vector
17− ];
18− libraryPkgconfigDepends = [ opencv3 ];
19− testHaskellDepends = [
20− base bytestring containers data-default directory Glob
21− haskell-src-exts JuicyPixels lens linear primitive QuickCheck repa
22− tasty tasty-hunit tasty-quickcheck template-haskell text
23− transformers vector
24− ];
25− benchmarkHaskellDepends = [ base bytestring criterion repa ];
26− hardeningDisable = [ "bindnow" ];
27− homepage = "https://github.com/LumiGuide/haskell-opencv";
28− description = "Haskell binding to OpenCV-3.x";
29− license = stdenv.lib.licenses.bsd3;
30−}
test/golden-test-cases/openexr-write.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, base, binary, bytestring, data-binary-ieee754
1{ mkDerivation, base, binary, bytestring, data-binary-ieee754
2−, deepseq, directory, hspec, split, stdenv, vector, vector-split
2+, deepseq, directory, fetchurl, hspec, split, vector, vector-split
3, zlib
3, zlib
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "openexr-write";
6 pname = "openexr-write";
7 version = "0.1.0.1";
7 version = "0.1.0.1";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 base binary bytestring data-binary-ieee754 deepseq split vector
13 base binary bytestring data-binary-ieee754 deepseq split vector
11 vector-split zlib
14 vector-split zlib
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "https://github.com/pavolzetor/openexr-write#readme";
17 homepage = "https://github.com/pavolzetor/openexr-write#readme";
15 description = "Library for writing images in OpenEXR HDR file format";
18 description = "Library for writing images in OpenEXR HDR file format";
16 license = stdenv.lib.licenses.gpl3;
19 license = stdenv.lib.licenses.gpl3;
17−}
20+}
test/golden-test-cases/openpgp-asciiarmor.nix.golden+6−4
@@ -1,10 +1,13 @@
1{ mkDerivation, attoparsec, base, base64-bytestring, bytestring
1{ mkDerivation, attoparsec, base, base64-bytestring, bytestring
2−, cereal, HUnit, stdenv, test-framework, test-framework-hunit
2+, cereal, fetchurl, HUnit, test-framework, test-framework-hunit
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "openpgp-asciiarmor";
5 pname = "openpgp-asciiarmor";
6 version = "0.1";
6 version = "0.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 attoparsec base base64-bytestring bytestring cereal
12 attoparsec base base64-bytestring bytestring cereal
10 ];
13 ];
@@ -15,5 +18,4 @@ mkDerivation {
15 homepage = "http://floss.scru.org/openpgp-asciiarmor";
18 homepage = "http://floss.scru.org/openpgp-asciiarmor";
16 description = "OpenPGP (RFC4880) ASCII Armor codec";
19 description = "OpenPGP (RFC4880) ASCII Armor codec";
17 license = "unknown";
20 license = "unknown";
18− hydraPlatforms = stdenv.lib.platforms.none;
19−}
21+}
test/golden-test-cases/pager.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, base, bytestring, conduit, conduit-extra, directory
1{ mkDerivation, base, bytestring, conduit, conduit-extra, directory
2−, process, resourcet, safe, stdenv, terminfo, text, transformers
2+, fetchurl, process, resourcet, safe, terminfo, text, transformers
3, unix
3, unix
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "pager";
6 pname = "pager";
7 version = "0.1.1.0";
7 version = "0.1.1.0";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 isLibrary = true;
12 isLibrary = true;
10 isExecutable = true;
13 isExecutable = true;
11 enableSeparateDataOutput = true;
14 enableSeparateDataOutput = true;
@@ -17,4 +20,4 @@ mkDerivation {
17 homepage = "https://github.com/pharpend/pager";
20 homepage = "https://github.com/pharpend/pager";
18 description = "Open up a pager, like 'less' or 'more'";
21 description = "Open up a pager, like 'less' or 'more'";
19 license = stdenv.lib.licenses.bsd2;
22 license = stdenv.lib.licenses.bsd2;
20−}
23+}
test/golden-test-cases/partial-isomorphisms.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv, template-haskell }:
1+{ mkDerivation, base, fetchurl, template-haskell }:
2mkDerivation {
2mkDerivation {
3 pname = "partial-isomorphisms";
3 pname = "partial-isomorphisms";
4 version = "0.2.2.1";
4 version = "0.2.2.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base template-haskell ];
9 libraryHaskellDepends = [ base template-haskell ];
7 homepage = "http://www.informatik.uni-marburg.de/~rendel/unparse";
10 homepage = "http://www.informatik.uni-marburg.de/~rendel/unparse";
8 description = "Partial isomorphisms";
11 description = "Partial isomorphisms";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/partial-semigroup.nix.golden+6−3
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, doctest, hedgehog, stdenv }:
1+{ mkDerivation, base, doctest, fetchurl, hedgehog }:
2mkDerivation {
2mkDerivation {
3 pname = "partial-semigroup";
3 pname = "partial-semigroup";
4 version = "0.3.0.2";
4 version = "0.3.0.2";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 testHaskellDepends = [ base doctest hedgehog ];
10 testHaskellDepends = [ base doctest hedgehog ];
8 homepage = "https://github.com/chris-martin/partial-semigroup";
11 homepage = "https://github.com/chris-martin/partial-semigroup";
9 description = "A partial binary associative operator";
12 description = "A partial binary associative operator";
10 license = stdenv.lib.licenses.asl20;
13 license = stdenv.lib.licenses.asl20;
11−}
14+}
test/golden-test-cases/pathtype.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, deepseq, directory, old-time, QuickCheck
1+{ mkDerivation, base, deepseq, directory, fetchurl, old-time
2−, random, stdenv, tagged, time, transformers, utility-ht
2+, QuickCheck, random, tagged, time, transformers, utility-ht
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "pathtype";
5 pname = "pathtype";
6 version = "0.8";
6 version = "0.8";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 isLibrary = true;
11 isLibrary = true;
9 isExecutable = true;
12 isExecutable = true;
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
@@ -15,4 +18,4 @@ mkDerivation {
15 homepage = "http://hub.darcs.net/thielema/pathtype/";
18 homepage = "http://hub.darcs.net/thielema/pathtype/";
16 description = "Type-safe replacement for System.FilePath etc";
19 description = "Type-safe replacement for System.FilePath etc";
17 license = stdenv.lib.licenses.bsd3;
20 license = stdenv.lib.licenses.bsd3;
18−}
21+}
test/golden-test-cases/pcap.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, network, stdenv, time }:
1+{ mkDerivation, base, bytestring, fetchurl, network, time }:
2mkDerivation {
2mkDerivation {
3 pname = "pcap";
3 pname = "pcap";
4 version = "0.4.5.2";
4 version = "0.4.5.2";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base bytestring network time ];
9 libraryHaskellDepends = [ base bytestring network time ];
7 homepage = "https://github.com/bos/pcap";
10 homepage = "https://github.com/bos/pcap";
8 description = "A system-independent interface for user-level packet capture";
11 description = "A system-independent interface for user-level packet capture";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/pdfinfo.nix.golden+7−4
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, mtl, old-locale, process-extras, stdenv, text
1+{ mkDerivation, base, fetchurl, mtl, old-locale, process-extras
2−, time, time-locale-compat
2+, text, time, time-locale-compat
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "pdfinfo";
5 pname = "pdfinfo";
6 version = "1.5.4";
6 version = "1.5.4";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base mtl old-locale process-extras text time time-locale-compat
12 base mtl old-locale process-extras text time time-locale-compat
10 ];
13 ];
11 homepage = "https://github.com/chrisdone/pdfinfo";
14 homepage = "https://github.com/chrisdone/pdfinfo";
12 description = "Wrapper around the pdfinfo command";
15 description = "Wrapper around the pdfinfo command";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/pell.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, arithmoi, base, Cabal, cabal-test-quickcheck
1{ mkDerivation, arithmoi, base, Cabal, cabal-test-quickcheck
2−, containers, primes, QuickCheck, stdenv
2+, containers, fetchurl, primes, QuickCheck
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "pell";
5 pname = "pell";
6 version = "0.1.1.0";
6 version = "0.1.1.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ arithmoi base containers ];
11 libraryHaskellDepends = [ arithmoi base containers ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 arithmoi base Cabal cabal-test-quickcheck containers primes
13 arithmoi base Cabal cabal-test-quickcheck containers primes
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/brunjlar/pell";
16 homepage = "https://github.com/brunjlar/pell";
14 description = "Package to solve the Generalized Pell Equation";
17 description = "Package to solve the Generalized Pell Equation";
15 license = stdenv.lib.licenses.mit;
18 license = stdenv.lib.licenses.mit;
16−}
19+}
test/golden-test-cases/persistable-types-HDBC-pg.nix.golden+7−5
@@ -1,11 +1,13 @@
1−{ mkDerivation, base, bytestring, convertible, HDBC
1+{ mkDerivation, base, bytestring, convertible, fetchurl, HDBC
2−, persistable-record, relational-query-HDBC, stdenv
2+, persistable-record, relational-query-HDBC, text-postgresql
3−, text-postgresql
4}:
3}:
5mkDerivation {
4mkDerivation {
6 pname = "persistable-types-HDBC-pg";
5 pname = "persistable-types-HDBC-pg";
7 version = "0.0.1.5";
6 version = "0.0.1.5";
7+ src = fetchurl {
8+ url = "http://example.org/";
8− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
9 libraryHaskellDepends = [
11 libraryHaskellDepends = [
10 base bytestring convertible HDBC persistable-record
12 base bytestring convertible HDBC persistable-record
11 relational-query-HDBC text-postgresql
13 relational-query-HDBC text-postgresql
@@ -13,4 +15,4 @@ mkDerivation {
13 homepage = "http://khibino.github.io/haskell-relational-record/";
15 homepage = "http://khibino.github.io/haskell-relational-record/";
14 description = "HDBC and Relational-Record instances of PostgreSQL extended types";
16 description = "HDBC and Relational-Record instances of PostgreSQL extended types";
15 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
16−}
18+}
test/golden-test-cases/persistent-mysql-haskell.nix.golden+8−5
@@ -1,12 +1,15 @@
1{ mkDerivation, aeson, base, bytestring, conduit, containers
1{ mkDerivation, aeson, base, bytestring, conduit, containers
2−, io-streams, monad-control, monad-logger, mysql-haskell, network
2+, fetchurl, io-streams, monad-control, monad-logger, mysql-haskell
3−, persistent, persistent-template, resource-pool, resourcet, stdenv
3+, network, persistent, persistent-template, resource-pool
4−, text, time, tls, transformers
4+, resourcet, text, time, tls, transformers
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "persistent-mysql-haskell";
7 pname = "persistent-mysql-haskell";
8 version = "0.3.6";
8 version = "0.3.6";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 isLibrary = true;
13 isLibrary = true;
11 isExecutable = true;
14 isExecutable = true;
12 libraryHaskellDepends = [
15 libraryHaskellDepends = [
@@ -20,4 +23,4 @@ mkDerivation {
20 homepage = "http://www.yesodweb.com/book/persistent";
23 homepage = "http://www.yesodweb.com/book/persistent";
21 description = "A pure haskell backend for the persistent library using MySQL database server";
24 description = "A pure haskell backend for the persistent library using MySQL database server";
22 license = stdenv.lib.licenses.mit;
25 license = stdenv.lib.licenses.mit;
23−}
26+}
test/golden-test-cases/picosat.nix.golden+6−3
@@ -1,13 +1,16 @@
1−{ mkDerivation, base, containers, random, rdtsc, stdenv
1+{ mkDerivation, base, containers, fetchurl, random, rdtsc
2, transformers
2, transformers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "picosat";
5 pname = "picosat";
6 version = "0.1.4";
6 version = "0.1.4";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base containers transformers ];
11 libraryHaskellDepends = [ base containers transformers ];
9 testHaskellDepends = [ base containers random rdtsc transformers ];
12 testHaskellDepends = [ base containers random rdtsc transformers ];
10 homepage = "https://github.com/sdiehl/haskell-picosat";
13 homepage = "https://github.com/sdiehl/haskell-picosat";
11 description = "Bindings to the PicoSAT solver";
14 description = "Bindings to the PicoSAT solver";
12 license = stdenv.lib.licenses.mit;
15 license = stdenv.lib.licenses.mit;
13−}
16+}
test/golden-test-cases/pinch.nix.golden+6−4
@@ -1,11 +1,14 @@
1{ mkDerivation, array, base, bytestring, containers, deepseq
1{ mkDerivation, array, base, bytestring, containers, deepseq
2−, ghc-prim, hashable, hspec, hspec-discover, QuickCheck, stdenv
2+, fetchurl, ghc-prim, hashable, hspec, hspec-discover, QuickCheck
3, text, unordered-containers, vector
3, text, unordered-containers, vector
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "pinch";
6 pname = "pinch";
7 version = "0.3.2.0";
7 version = "0.3.2.0";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 array base bytestring containers deepseq ghc-prim hashable text
13 array base bytestring containers deepseq ghc-prim hashable text
11 unordered-containers vector
14 unordered-containers vector
@@ -14,8 +17,7 @@ mkDerivation {
14 base bytestring containers hspec hspec-discover QuickCheck text
17 base bytestring containers hspec hspec-discover QuickCheck text
15 unordered-containers vector
18 unordered-containers vector
16 ];
19 ];
17− testToolDepends = [ hspec-discover ];
18 homepage = "https://github.com/abhinav/pinch#readme";
20 homepage = "https://github.com/abhinav/pinch#readme";
19 description = "An alternative implementation of Thrift for Haskell";
21 description = "An alternative implementation of Thrift for Haskell";
20 license = stdenv.lib.licenses.bsd3;
22 license = stdenv.lib.licenses.bsd3;
21−}
23+}
test/golden-test-cases/pipes-network.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, network, network-simple, pipes
1+{ mkDerivation, base, bytestring, fetchurl, network, network-simple
2−, pipes-safe, stdenv, transformers
2+, pipes, pipes-safe, transformers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "pipes-network";
5 pname = "pipes-network";
6 version = "0.6.4.1";
6 version = "0.6.4.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base bytestring network network-simple pipes pipes-safe
12 base bytestring network network-simple pipes pipes-safe
10 transformers
13 transformers
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://github.com/k0001/pipes-network";
15 homepage = "https://github.com/k0001/pipes-network";
13 description = "Use network sockets together with the pipes library";
16 description = "Use network sockets together with the pipes library";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/pipes-safe.nix.golden+8−4
@@ -1,14 +1,18 @@
1−{ mkDerivation, base, containers, exceptions, monad-control, mtl
1+{ mkDerivation, base, containers, exceptions, fetchurl
2−, pipes, primitive, stdenv, transformers, transformers-base
2+, monad-control, mtl, pipes, primitive, transformers
3+, transformers-base
3}:
4}:
4mkDerivation {
5mkDerivation {
5 pname = "pipes-safe";
6 pname = "pipes-safe";
6 version = "2.2.6";
7 version = "2.2.6";
8+ src = fetchurl {
9+ url = "http://example.org/";
7− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
8 libraryHaskellDepends = [
12 libraryHaskellDepends = [
9 base containers exceptions monad-control mtl pipes primitive
13 base containers exceptions monad-control mtl pipes primitive
10 transformers transformers-base
14 transformers transformers-base
11 ];
15 ];
12 description = "Safety for the pipes ecosystem";
16 description = "Safety for the pipes ecosystem";
13 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
14−}
18+}
test/golden-test-cases/pointed.nix.golden+8−4
@@ -1,11 +1,15 @@
1{ mkDerivation, base, comonad, containers, data-default-class
1{ mkDerivation, base, comonad, containers, data-default-class
2−, hashable, kan-extensions, semigroupoids, semigroups, stdenv, stm
2+, fetchurl, hashable, kan-extensions, semigroupoids, semigroups
3−, tagged, transformers, transformers-compat, unordered-containers
3+, stm, tagged, transformers, transformers-compat
4+, unordered-containers
4}:
5}:
5mkDerivation {
6mkDerivation {
6 pname = "pointed";
7 pname = "pointed";
7 version = "5";
8 version = "5";
9+ src = fetchurl {
10+ url = "http://example.org/";
8− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
9 libraryHaskellDepends = [
13 libraryHaskellDepends = [
10 base comonad containers data-default-class hashable kan-extensions
14 base comonad containers data-default-class hashable kan-extensions
11 semigroupoids semigroups stm tagged transformers
15 semigroupoids semigroups stm tagged transformers
@@ -14,4 +18,4 @@ mkDerivation {
14 homepage = "http://github.com/ekmett/pointed/";
18 homepage = "http://github.com/ekmett/pointed/";
15 description = "Pointed and copointed data";
19 description = "Pointed and copointed data";
16 license = stdenv.lib.licenses.bsd3;
20 license = stdenv.lib.licenses.bsd3;
17−}
21+}
test/golden-test-cases/poly-arity.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, base, constraints, stdenv }:
1+{ mkDerivation, base, constraints, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "poly-arity";
3 pname = "poly-arity";
4 version = "0.1.0";
4 version = "0.1.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base constraints ];
9 libraryHaskellDepends = [ base constraints ];
7 description = "Tools for working with functions of undetermined arity";
10 description = "Tools for working with functions of undetermined arity";
8 license = stdenv.lib.licenses.bsd3;
11 license = stdenv.lib.licenses.bsd3;
9−}
12+}
test/golden-test-cases/polynomials-bernstein.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, base, stdenv, vector }:
1+{ mkDerivation, base, fetchurl, vector }:
2mkDerivation {
2mkDerivation {
3 pname = "polynomials-bernstein";
3 pname = "polynomials-bernstein";
4 version = "1.1.2";
4 version = "1.1.2";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base vector ];
9 libraryHaskellDepends = [ base vector ];
7 description = "A solver for systems of polynomial equations in bernstein form";
10 description = "A solver for systems of polynomial equations in bernstein form";
8 license = "GPL";
11 license = "GPL";
9−}
12+}
test/golden-test-cases/postgresql-simple-url.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, network-uri, postgresql-simple, split, stdenv
1+{ mkDerivation, base, fetchurl, network-uri, postgresql-simple
2−, tasty, tasty-quickcheck
2+, split, tasty, tasty-quickcheck
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "postgresql-simple-url";
5 pname = "postgresql-simple-url";
6 version = "0.2.0.0";
6 version = "0.2.0.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base network-uri postgresql-simple split
12 base network-uri postgresql-simple split
10 ];
13 ];
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "https://github.com/futurice/postgresql-simple-url";
17 homepage = "https://github.com/futurice/postgresql-simple-url";
15 description = "Parse postgres:// url into ConnectInfo";
18 description = "Parse postgres:// url into ConnectInfo";
16 license = stdenv.lib.licenses.mit;
19 license = stdenv.lib.licenses.mit;
17−}
20+}
test/golden-test-cases/prelude-safeenum.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv }:
1+{ mkDerivation, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "prelude-safeenum";
3 pname = "prelude-safeenum";
4 version = "0.1.1.2";
4 version = "0.1.1.2";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 homepage = "http://code.haskell.org/~wren/";
10 homepage = "http://code.haskell.org/~wren/";
8 description = "A redefinition of the Prelude's Enum class in order to render it safe";
11 description = "A redefinition of the Prelude's Enum class in order to render it safe";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/presburger.nix.golden+6−3
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, containers, pretty, QuickCheck, stdenv }:
1+{ mkDerivation, base, containers, fetchurl, pretty, QuickCheck }:
2mkDerivation {
2mkDerivation {
3 pname = "presburger";
3 pname = "presburger";
4 version = "1.3.1";
4 version = "1.3.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base containers pretty ];
9 libraryHaskellDepends = [ base containers pretty ];
7 testHaskellDepends = [ base QuickCheck ];
10 testHaskellDepends = [ base QuickCheck ];
8 homepage = "http://github.com/yav/presburger";
11 homepage = "http://github.com/yav/presburger";
9 description = "A decision procedure for quantifier-free linear arithmetic";
12 description = "A decision procedure for quantifier-free linear arithmetic";
10 license = stdenv.lib.licenses.bsd3;
13 license = stdenv.lib.licenses.bsd3;
11−}
14+}
test/golden-test-cases/prettyclass.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, base, pretty, stdenv }:
1+{ mkDerivation, base, fetchurl, pretty }:
2mkDerivation {
2mkDerivation {
3 pname = "prettyclass";
3 pname = "prettyclass";
4 version = "1.0.0.0";
4 version = "1.0.0.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base pretty ];
9 libraryHaskellDepends = [ base pretty ];
7 description = "Pretty printing class similar to Show";
10 description = "Pretty printing class similar to Show";
8 license = stdenv.lib.licenses.bsd3;
11 license = stdenv.lib.licenses.bsd3;
9−}
12+}
test/golden-test-cases/prettyprinter-compat-ansi-wl-pprint.nix.golden+7−4
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, prettyprinter, prettyprinter-ansi-terminal
1+{ mkDerivation, base, fetchurl, prettyprinter
2−, stdenv, text
2+, prettyprinter-ansi-terminal, text
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "prettyprinter-compat-ansi-wl-pprint";
5 pname = "prettyprinter-compat-ansi-wl-pprint";
6 version = "1.0.1";
6 version = "1.0.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base prettyprinter prettyprinter-ansi-terminal text
12 base prettyprinter prettyprinter-ansi-terminal text
10 ];
13 ];
11 homepage = "http://github.com/quchen/prettyprinter";
14 homepage = "http://github.com/quchen/prettyprinter";
12 description = "Drop-in compatibility package to migrate from »ansi-wl-pprint« to »prettyprinter«";
15 description = "Drop-in compatibility package to migrate from »ansi-wl-pprint« to »prettyprinter«";
13 license = stdenv.lib.licenses.bsd2;
16 license = stdenv.lib.licenses.bsd2;
14−}
17+}
test/golden-test-cases/prettyprinter-compat-wl-pprint.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, prettyprinter, stdenv, text }:
1+{ mkDerivation, base, fetchurl, prettyprinter, text }:
2mkDerivation {
2mkDerivation {
3 pname = "prettyprinter-compat-wl-pprint";
3 pname = "prettyprinter-compat-wl-pprint";
4 version = "1.0.0.1";
4 version = "1.0.0.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base prettyprinter text ];
9 libraryHaskellDepends = [ base prettyprinter text ];
7 homepage = "http://github.com/quchen/prettyprinter";
10 homepage = "http://github.com/quchen/prettyprinter";
8 description = "Prettyprinter compatibility module for previous users of the wl-pprint package";
11 description = "Prettyprinter compatibility module for previous users of the wl-pprint package";
9 license = stdenv.lib.licenses.bsd2;
12 license = stdenv.lib.licenses.bsd2;
10−}
13+}
test/golden-test-cases/primitive.nix.golden+6−3
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, ghc-prim, stdenv, transformers }:
1+{ mkDerivation, base, fetchurl, ghc-prim, transformers }:
2mkDerivation {
2mkDerivation {
3 pname = "primitive";
3 pname = "primitive";
4 version = "0.6.2.0";
4 version = "0.6.2.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ghc-prim transformers ];
9 libraryHaskellDepends = [ base ghc-prim transformers ];
7 testHaskellDepends = [ base ghc-prim ];
10 testHaskellDepends = [ base ghc-prim ];
8 homepage = "https://github.com/haskell/primitive";
11 homepage = "https://github.com/haskell/primitive";
9 description = "Primitive memory-related operations";
12 description = "Primitive memory-related operations";
10 license = stdenv.lib.licenses.bsd3;
13 license = stdenv.lib.licenses.bsd3;
11−}
14+}
test/golden-test-cases/product-profunctors.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, contravariant, profunctors, stdenv, tagged
1+{ mkDerivation, base, contravariant, fetchurl, profunctors, tagged
2, template-haskell
2, template-haskell
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "product-profunctors";
5 pname = "product-profunctors";
6 version = "0.8.0.3";
6 version = "0.8.0.3";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base contravariant profunctors tagged template-haskell
12 base contravariant profunctors tagged template-haskell
10 ];
13 ];
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://github.com/tomjaguarpaw/product-profunctors";
15 homepage = "https://github.com/tomjaguarpaw/product-profunctors";
13 description = "product-profunctors";
16 description = "product-profunctors";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/profiterole.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, containers, directory, extra, filepath
1+{ mkDerivation, base, containers, directory, extra, fetchurl
2−, ghc-prof, hashable, scientific, stdenv, text
2+, filepath, ghc-prof, hashable, scientific, text
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "profiterole";
5 pname = "profiterole";
6 version = "0.1";
6 version = "0.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 isLibrary = false;
11 isLibrary = false;
9 isExecutable = true;
12 isExecutable = true;
10 executableHaskellDepends = [
13 executableHaskellDepends = [
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "https://github.com/ndmitchell/profiterole#readme";
17 homepage = "https://github.com/ndmitchell/profiterole#readme";
15 description = "Restructure GHC profile reports";
18 description = "Restructure GHC profile reports";
16 license = stdenv.lib.licenses.bsd3;
19 license = stdenv.lib.licenses.bsd3;
17−}
20+}
test/golden-test-cases/projectroot.nix.golden+6−3
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, directory, hspec, QuickCheck, stdenv }:
1+{ mkDerivation, base, directory, fetchurl, hspec, QuickCheck }:
2mkDerivation {
2mkDerivation {
3 pname = "projectroot";
3 pname = "projectroot";
4 version = "0.2.0.1";
4 version = "0.2.0.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base directory ];
9 libraryHaskellDepends = [ base directory ];
7 testHaskellDepends = [ base hspec QuickCheck ];
10 testHaskellDepends = [ base hspec QuickCheck ];
8 homepage = "https://github.com/yamadapc/haskell-projectroot";
11 homepage = "https://github.com/yamadapc/haskell-projectroot";
9 description = "Bindings to the projectroot C logic";
12 description = "Bindings to the projectroot C logic";
10 license = stdenv.lib.licenses.mit;
13 license = stdenv.lib.licenses.mit;
11−}
14+}
test/golden-test-cases/proto-lens-optparse.nix.golden+6−3
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, optparse-applicative, proto-lens, stdenv
1+{ mkDerivation, base, fetchurl, optparse-applicative, proto-lens
2, text
2, text
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "proto-lens-optparse";
5 pname = "proto-lens-optparse";
6 version = "0.1.0.4";
6 version = "0.1.0.4";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base optparse-applicative proto-lens text
12 base optparse-applicative proto-lens text
10 ];
13 ];
11 homepage = "https://github.com/google/proto-lens";
14 homepage = "https://github.com/google/proto-lens";
12 description = "Adapting proto-lens to optparse-applicative ReadMs";
15 description = "Adapting proto-lens to optparse-applicative ReadMs";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/proto-lens.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, attoparsec, base, bytestring, containers
1{ mkDerivation, attoparsec, base, bytestring, containers
2−, data-default-class, lens-family, parsec, pretty, stdenv, text
2+, data-default-class, fetchurl, lens-family, parsec, pretty, text
3, transformers, void
3, transformers, void
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "proto-lens";
6 pname = "proto-lens";
7 version = "0.2.2.0";
7 version = "0.2.2.0";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 attoparsec base bytestring containers data-default-class
13 attoparsec base bytestring containers data-default-class
11 lens-family parsec pretty text transformers void
14 lens-family parsec pretty text transformers void
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/google/proto-lens";
16 homepage = "https://github.com/google/proto-lens";
14 description = "A lens-based implementation of protocol buffers in Haskell";
17 description = "A lens-based implementation of protocol buffers in Haskell";
15 license = stdenv.lib.licenses.bsd3;
18 license = stdenv.lib.licenses.bsd3;
16−}
19+}
test/golden-test-cases/psqueues.nix.golden+7−4
@@ -1,13 +1,16 @@
1{ mkDerivation, array, base, containers, criterion, deepseq
1{ mkDerivation, array, base, containers, criterion, deepseq
2−, fingertree-psqueue, ghc-prim, hashable, HUnit, mtl, PSQueue
2+, fetchurl, fingertree-psqueue, ghc-prim, hashable, HUnit, mtl
3−, QuickCheck, random, stdenv, tagged, test-framework
3+, PSQueue, QuickCheck, random, tagged, test-framework
4, test-framework-hunit, test-framework-quickcheck2
4, test-framework-hunit, test-framework-quickcheck2
5, unordered-containers
5, unordered-containers
6}:
6}:
7mkDerivation {
7mkDerivation {
8 pname = "psqueues";
8 pname = "psqueues";
9 version = "0.2.4.0";
9 version = "0.2.4.0";
10+ src = fetchurl {
11+ url = "http://example.org/";
10− sha256 = "deadbeef";
12+ sha256 = "abc";
13+ };
11 libraryHaskellDepends = [ base deepseq ghc-prim hashable ];
14 libraryHaskellDepends = [ base deepseq ghc-prim hashable ];
12 testHaskellDepends = [
15 testHaskellDepends = [
13 array base deepseq ghc-prim hashable HUnit QuickCheck tagged
16 array base deepseq ghc-prim hashable HUnit QuickCheck tagged
@@ -19,4 +22,4 @@ mkDerivation {
19 ];
22 ];
20 description = "Pure priority search queues";
23 description = "Pure priority search queues";
21 license = stdenv.lib.licenses.bsd3;
24 license = stdenv.lib.licenses.bsd3;
22−}
25+}
test/golden-test-cases/pusher-http-haskell.nix.golden+7−4
@@ -1,12 +1,15 @@
1{ mkDerivation, aeson, base, base16-bytestring, bytestring
1{ mkDerivation, aeson, base, base16-bytestring, bytestring
2−, cryptonite, hashable, hspec, http-client, http-types, memory
2+, cryptonite, fetchurl, hashable, hspec, http-client, http-types
3−, QuickCheck, scientific, stdenv, text, time, transformers
3+, memory, QuickCheck, scientific, text, time, transformers
4, unordered-containers, vector
4, unordered-containers, vector
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "pusher-http-haskell";
7 pname = "pusher-http-haskell";
8 version = "1.5.1.0";
8 version = "1.5.1.0";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
11 aeson base base16-bytestring bytestring cryptonite hashable
14 aeson base base16-bytestring bytestring cryptonite hashable
12 http-client http-types memory text time transformers
15 http-client http-types memory text time transformers
@@ -20,4 +23,4 @@ mkDerivation {
20 homepage = "https://github.com/pusher-community/pusher-http-haskell";
23 homepage = "https://github.com/pusher-community/pusher-http-haskell";
21 description = "Haskell client library for the Pusher HTTP API";
24 description = "Haskell client library for the Pusher HTTP API";
22 license = stdenv.lib.licenses.mit;
25 license = stdenv.lib.licenses.mit;
23−}
26+}
test/golden-test-cases/quickcheck-arbitrary-adt.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, hspec, lens, QuickCheck, stdenv
1+{ mkDerivation, base, fetchurl, hspec, lens, QuickCheck
2, template-haskell, transformers
2, template-haskell, transformers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "quickcheck-arbitrary-adt";
5 pname = "quickcheck-arbitrary-adt";
6 version = "0.2.0.0";
6 version = "0.2.0.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base QuickCheck ];
11 libraryHaskellDepends = [ base QuickCheck ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 base hspec lens QuickCheck template-haskell transformers
13 base hspec lens QuickCheck template-haskell transformers
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://github.com/plow-technologies/quickcheck-arbitrary-adt#readme";
15 homepage = "https://github.com/plow-technologies/quickcheck-arbitrary-adt#readme";
13 description = "Generic typeclasses for generating arbitrary ADTs";
16 description = "Generic typeclasses for generating arbitrary ADTs";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/quickcheck-combinators.nix.golden+7−3
@@ -1,9 +1,13 @@
1−{ mkDerivation, base, QuickCheck, stdenv, unfoldable-restricted }:
1+{ mkDerivation, base, fetchurl, QuickCheck, unfoldable-restricted
2+}:
2mkDerivation {
3mkDerivation {
3 pname = "quickcheck-combinators";
4 pname = "quickcheck-combinators";
4 version = "0.0.2";
5 version = "0.0.2";
6+ src = fetchurl {
7+ url = "http://example.org/";
5− sha256 = "deadbeef";
8+ sha256 = "abc";
9+ };
6 libraryHaskellDepends = [ base QuickCheck unfoldable-restricted ];
10 libraryHaskellDepends = [ base QuickCheck unfoldable-restricted ];
7 description = "Simple type-level combinators for augmenting QuickCheck instances";
11 description = "Simple type-level combinators for augmenting QuickCheck instances";
8 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
9−}
13+}
test/golden-test-cases/rank1dynamic.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, binary, HUnit, stdenv, test-framework
1+{ mkDerivation, base, binary, fetchurl, HUnit, test-framework
2, test-framework-hunit
2, test-framework-hunit
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "rank1dynamic";
5 pname = "rank1dynamic";
6 version = "0.4.0";
6 version = "0.4.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base binary ];
11 libraryHaskellDepends = [ base binary ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 base HUnit test-framework test-framework-hunit
13 base HUnit test-framework test-framework-hunit
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "http://haskell-distributed.github.com";
15 homepage = "http://haskell-distributed.github.com";
13 description = "Like Data.Dynamic/Data.Typeable but with support for rank-1 polymorphic types";
16 description = "Like Data.Dynamic/Data.Typeable but with support for rank-1 polymorphic types";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/rasterific-svg.nix.golden+8−5
@@ -1,12 +1,15 @@
1{ mkDerivation, base, binary, bytestring, containers, directory
1{ mkDerivation, base, binary, bytestring, containers, directory
2−, filepath, FontyFruity, JuicyPixels, lens, linear, mtl
2+, fetchurl, filepath, FontyFruity, JuicyPixels, lens, linear, mtl
3−, optparse-applicative, primitive, Rasterific, scientific, stdenv
3+, optparse-applicative, primitive, Rasterific, scientific, svg-tree
4−, svg-tree, text, transformers, vector
4+, text, transformers, vector
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "rasterific-svg";
7 pname = "rasterific-svg";
8 version = "0.3.3";
8 version = "0.3.3";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 isLibrary = true;
13 isLibrary = true;
11 isExecutable = true;
14 isExecutable = true;
12 libraryHaskellDepends = [
15 libraryHaskellDepends = [
@@ -20,4 +23,4 @@ mkDerivation {
20 ];
23 ];
21 description = "SVG renderer based on Rasterific";
24 description = "SVG renderer based on Rasterific";
22 license = stdenv.lib.licenses.bsd3;
25 license = stdenv.lib.licenses.bsd3;
23−}
26+}
test/golden-test-cases/ratio-int.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv }:
1+{ mkDerivation, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "ratio-int";
3 pname = "ratio-int";
4 version = "0.1.2";
4 version = "0.1.2";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 homepage = "https://github.com/RaphaelJ/ratio-int";
10 homepage = "https://github.com/RaphaelJ/ratio-int";
8 description = "Fast specialisation of Data.Ratio for Int.";
11 description = "Fast specialisation of Data.Ratio for Int.";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/rawstring-qm.nix.golden+7−3
@@ -1,10 +1,14 @@
1−{ mkDerivation, base, bytestring, stdenv, template-haskell, text }:
1+{ mkDerivation, base, bytestring, fetchurl, template-haskell, text
2+}:
2mkDerivation {
3mkDerivation {
3 pname = "rawstring-qm";
4 pname = "rawstring-qm";
4 version = "0.2.3.0";
5 version = "0.2.3.0";
6+ src = fetchurl {
7+ url = "http://example.org/";
5− sha256 = "deadbeef";
8+ sha256 = "abc";
9+ };
6 libraryHaskellDepends = [ base bytestring template-haskell text ];
10 libraryHaskellDepends = [ base bytestring template-haskell text ];
7 homepage = "https://github.com/tolysz/rawstring-qm";
11 homepage = "https://github.com/tolysz/rawstring-qm";
8 description = "Simple raw string quotation and dictionary interpolation";
12 description = "Simple raw string quotation and dictionary interpolation";
9 license = stdenv.lib.licenses.bsd3;
13 license = stdenv.lib.licenses.bsd3;
10−}
14+}
test/golden-test-cases/reactive-banana.nix.golden+7−4
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, containers, hashable, HUnit, pqueue, psqueues
1+{ mkDerivation, base, containers, fetchurl, hashable, HUnit, pqueue
2−, stdenv, test-framework, test-framework-hunit, transformers
2+, psqueues, test-framework, test-framework-hunit, transformers
3, unordered-containers, vault
3, unordered-containers, vault
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "reactive-banana";
6 pname = "reactive-banana";
7 version = "1.1.0.1";
7 version = "1.1.0.1";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 base containers hashable pqueue transformers unordered-containers
13 base containers hashable pqueue transformers unordered-containers
11 vault
14 vault
@@ -17,4 +20,4 @@ mkDerivation {
17 homepage = "http://wiki.haskell.org/Reactive-banana";
20 homepage = "http://wiki.haskell.org/Reactive-banana";
18 description = "Library for functional reactive programming (FRP)";
21 description = "Library for functional reactive programming (FRP)";
19 license = stdenv.lib.licenses.bsd3;
22 license = stdenv.lib.licenses.bsd3;
20−}
23+}
test/golden-test-cases/readline.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, ncurses, process, readline, stdenv }:
1+{ mkDerivation, base, fetchurl, ncurses, process, readline }:
2mkDerivation {
2mkDerivation {
3 pname = "readline";
3 pname = "readline";
4 version = "1.0.3.0";
4 version = "1.0.3.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base process ];
9 libraryHaskellDepends = [ base process ];
7 librarySystemDepends = [ ncurses readline ];
10 librarySystemDepends = [ ncurses readline ];
8 description = "An interface to the GNU readline library";
11 description = "An interface to the GNU readline library";
9 license = "GPL";
12 license = "GPL";
10−}
13+}
test/golden-test-cases/rebase.nix.golden+7−4
@@ -1,13 +1,16 @@
1{ mkDerivation, base, base-prelude, bifunctors, bytestring
1{ mkDerivation, base, base-prelude, bifunctors, bytestring
2, containers, contravariant, contravariant-extras, deepseq, dlist
2, containers, contravariant, contravariant-extras, deepseq, dlist
3−, either, fail, hashable, mtl, profunctors, scientific
3+, either, fail, fetchurl, hashable, mtl, profunctors, scientific
4−, semigroupoids, semigroups, stdenv, stm, text, time, transformers
4+, semigroupoids, semigroups, stm, text, time, transformers
5, unordered-containers, uuid, vector, void
5, unordered-containers, uuid, vector, void
6}:
6}:
7mkDerivation {
7mkDerivation {
8 pname = "rebase";
8 pname = "rebase";
9 version = "1.1.1";
9 version = "1.1.1";
10+ src = fetchurl {
11+ url = "http://example.org/";
10− sha256 = "deadbeef";
12+ sha256 = "abc";
13+ };
11 libraryHaskellDepends = [
14 libraryHaskellDepends = [
12 base base-prelude bifunctors bytestring containers contravariant
15 base base-prelude bifunctors bytestring containers contravariant
13 contravariant-extras deepseq dlist either fail hashable mtl
16 contravariant-extras deepseq dlist either fail hashable mtl
@@ -17,4 +20,4 @@ mkDerivation {
17 homepage = "https://github.com/nikita-volkov/rebase";
20 homepage = "https://github.com/nikita-volkov/rebase";
18 description = "A more progressive alternative to the \"base\" package";
21 description = "A more progressive alternative to the \"base\" package";
19 license = stdenv.lib.licenses.mit;
22 license = stdenv.lib.licenses.mit;
20−}
23+}
test/golden-test-cases/reform-blaze.nix.golden+6−3
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, blaze-html, blaze-markup, reform, stdenv
1+{ mkDerivation, base, blaze-html, blaze-markup, fetchurl, reform
2, text
2, text
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "reform-blaze";
5 pname = "reform-blaze";
6 version = "0.2.4.3";
6 version = "0.2.4.3";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base blaze-html blaze-markup reform text
12 base blaze-html blaze-markup reform text
10 ];
13 ];
11 homepage = "http://www.happstack.com/";
14 homepage = "http://www.happstack.com/";
12 description = "Add support for using blaze-html with Reform";
15 description = "Add support for using blaze-html with Reform";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/reform-hsp.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, hsp, hsx2hs, reform, stdenv, text }:
1+{ mkDerivation, base, fetchurl, hsp, hsx2hs, reform, text }:
2mkDerivation {
2mkDerivation {
3 pname = "reform-hsp";
3 pname = "reform-hsp";
4 version = "0.2.7.1";
4 version = "0.2.7.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base hsp hsx2hs reform text ];
9 libraryHaskellDepends = [ base hsp hsx2hs reform text ];
7 homepage = "http://www.happstack.com/";
10 homepage = "http://www.happstack.com/";
8 description = "Add support for using HSP with Reform";
11 description = "Add support for using HSP with Reform";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/regex-compat.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, array, base, regex-base, regex-posix, stdenv }:
1+{ mkDerivation, array, base, fetchurl, regex-base, regex-posix }:
2mkDerivation {
2mkDerivation {
3 pname = "regex-compat";
3 pname = "regex-compat";
4 version = "0.95.1";
4 version = "0.95.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ array base regex-base regex-posix ];
9 libraryHaskellDepends = [ array base regex-base regex-posix ];
7 homepage = "http://sourceforge.net/projects/lazy-regex";
10 homepage = "http://sourceforge.net/projects/lazy-regex";
8 description = "Replaces/Enhances Text.Regex";
11 description = "Replaces/Enhances Text.Regex";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/regex-pcre.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, array, base, bytestring, containers, pcre
1+{ mkDerivation, array, base, bytestring, containers, fetchurl, pcre
2−, regex-base, stdenv
2+, regex-base
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "regex-pcre";
5 pname = "regex-pcre";
6 version = "0.94.4";
6 version = "0.94.4";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 array base bytestring containers regex-base
12 array base bytestring containers regex-base
10 ];
13 ];
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "http://hackage.haskell.org/package/regex-pcre";
15 homepage = "http://hackage.haskell.org/package/regex-pcre";
13 description = "Replaces/Enhances Text.Regex";
16 description = "Replaces/Enhances Text.Regex";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/relational-query.nix.golden+7−4
@@ -1,12 +1,15 @@
1{ mkDerivation, array, base, bytestring, containers, dlist
1{ mkDerivation, array, base, bytestring, containers, dlist
2−, names-th, persistable-record, product-isomorphic
2+, fetchurl, names-th, persistable-record, product-isomorphic
3−, quickcheck-simple, sql-words, stdenv, template-haskell, text
3+, quickcheck-simple, sql-words, template-haskell, text
4, th-reify-compat, time, time-locale-compat, transformers
4, th-reify-compat, time, time-locale-compat, transformers
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "relational-query";
7 pname = "relational-query";
8 version = "0.11.0.0";
8 version = "0.11.0.0";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
11 array base bytestring containers dlist names-th persistable-record
14 array base bytestring containers dlist names-th persistable-record
12 product-isomorphic sql-words template-haskell text th-reify-compat
15 product-isomorphic sql-words template-haskell text th-reify-compat
@@ -18,4 +21,4 @@ mkDerivation {
18 homepage = "http://khibino.github.io/haskell-relational-record/";
21 homepage = "http://khibino.github.io/haskell-relational-record/";
19 description = "Typeful, Modular, Relational, algebraic query engine";
22 description = "Typeful, Modular, Relational, algebraic query engine";
20 license = stdenv.lib.licenses.bsd3;
23 license = stdenv.lib.licenses.bsd3;
21−}
24+}
test/golden-test-cases/relational-schemas.nix.golden+7−4
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, bytestring, containers, relational-query
1+{ mkDerivation, base, bytestring, containers, fetchurl
2−, stdenv, template-haskell, time
2+, relational-query, template-haskell, time
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "relational-schemas";
5 pname = "relational-schemas";
6 version = "0.1.6.1";
6 version = "0.1.6.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base bytestring containers relational-query template-haskell time
12 base bytestring containers relational-query template-haskell time
10 ];
13 ];
11 homepage = "http://khibino.github.io/haskell-relational-record/";
14 homepage = "http://khibino.github.io/haskell-relational-record/";
12 description = "RDBMSs' schema templates for relational-query";
15 description = "RDBMSs' schema templates for relational-query";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/repa-io.nix.golden+7−4
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, binary, bmp, bytestring, old-time, repa
1+{ mkDerivation, base, binary, bmp, bytestring, fetchurl, old-time
2−, stdenv, vector
2+, repa, vector
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "repa-io";
5 pname = "repa-io";
6 version = "3.4.1.1";
6 version = "3.4.1.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base binary bmp bytestring old-time repa vector
12 base binary bmp bytestring old-time repa vector
10 ];
13 ];
11 homepage = "http://repa.ouroborus.net";
14 homepage = "http://repa.ouroborus.net";
12 description = "Read and write Repa arrays in various formats";
15 description = "Read and write Repa arrays in various formats";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/repa.nix.golden+6−3
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, bytestring, ghc-prim, QuickCheck, stdenv
1+{ mkDerivation, base, bytestring, fetchurl, ghc-prim, QuickCheck
2, template-haskell, vector
2, template-haskell, vector
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "repa";
5 pname = "repa";
6 version = "3.4.1.3";
6 version = "3.4.1.3";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base bytestring ghc-prim QuickCheck template-haskell vector
12 base bytestring ghc-prim QuickCheck template-haskell vector
10 ];
13 ];
11 homepage = "http://repa.ouroborus.net";
14 homepage = "http://repa.ouroborus.net";
12 description = "High performance, regular, shape polymorphic parallel arrays";
15 description = "High performance, regular, shape polymorphic parallel arrays";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/rosezipper.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, base, containers, stdenv }:
1+{ mkDerivation, base, containers, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "rosezipper";
3 pname = "rosezipper";
4 version = "0.2";
4 version = "0.2";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base containers ];
9 libraryHaskellDepends = [ base containers ];
7 description = "Generic zipper implementation for Data.Tree";
10 description = "Generic zipper implementation for Data.Tree";
8 license = stdenv.lib.licenses.bsd3;
11 license = stdenv.lib.licenses.bsd3;
9−}
12+}
test/golden-test-cases/rvar.nix.golden+6−3
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, MonadPrompt, mtl, random-source, stdenv
1+{ mkDerivation, base, fetchurl, MonadPrompt, mtl, random-source
2, transformers
2, transformers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "rvar";
5 pname = "rvar";
6 version = "0.2.0.3";
6 version = "0.2.0.3";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base MonadPrompt mtl random-source transformers
12 base MonadPrompt mtl random-source transformers
10 ];
13 ];
11 homepage = "https://github.com/mokus0/random-fu";
14 homepage = "https://github.com/mokus0/random-fu";
12 description = "Random Variables";
15 description = "Random Variables";
13 license = stdenv.lib.licenses.publicDomain;
16 license = stdenv.lib.licenses.publicDomain;
14−}
17+}
test/golden-test-cases/scalpel-core.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, base, bytestring, containers, criterion
1{ mkDerivation, base, bytestring, containers, criterion
2−, data-default, fail, HUnit, regex-base, regex-tdfa, stdenv
2+, data-default, fail, fetchurl, HUnit, regex-base, regex-tdfa
3, tagsoup, text, vector
3, tagsoup, text, vector
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "scalpel-core";
6 pname = "scalpel-core";
7 version = "0.5.1";
7 version = "0.5.1";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 base bytestring containers data-default fail regex-base regex-tdfa
13 base bytestring containers data-default fail regex-base regex-tdfa
11 tagsoup text vector
14 tagsoup text vector
@@ -15,4 +18,4 @@ mkDerivation {
15 homepage = "https://github.com/fimad/scalpel";
18 homepage = "https://github.com/fimad/scalpel";
16 description = "A high level web scraping library for Haskell";
19 description = "A high level web scraping library for Haskell";
17 license = stdenv.lib.licenses.asl20;
20 license = stdenv.lib.licenses.asl20;
18−}
21+}
test/golden-test-cases/sdl2.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, exceptions, linear, SDL2
1+{ mkDerivation, base, bytestring, exceptions, fetchurl, linear
2−, StateVar, stdenv, text, transformers, vector
2+, SDL2, StateVar, text, transformers, vector
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "sdl2";
5 pname = "sdl2";
6 version = "2.3.0";
6 version = "2.3.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 isLibrary = true;
11 isLibrary = true;
9 isExecutable = true;
12 isExecutable = true;
10 enableSeparateDataOutput = true;
13 enableSeparateDataOutput = true;
@@ -15,4 +18,4 @@ mkDerivation {
15 libraryPkgconfigDepends = [ SDL2 ];
18 libraryPkgconfigDepends = [ SDL2 ];
16 description = "Both high- and low-level bindings to the SDL library (version 2.0.4+).";
19 description = "Both high- and low-level bindings to the SDL library (version 2.0.4+).";
17 license = stdenv.lib.licenses.bsd3;
20 license = stdenv.lib.licenses.bsd3;
18−}
21+}
test/golden-test-cases/selda-sqlite.nix.golden+7−4
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, direct-sqlite, directory, exceptions, selda
1+{ mkDerivation, base, direct-sqlite, directory, exceptions
2−, stdenv, text
2+, fetchurl, selda, text
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "selda-sqlite";
5 pname = "selda-sqlite";
6 version = "0.1.6.0";
6 version = "0.1.6.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base direct-sqlite directory exceptions selda text
12 base direct-sqlite directory exceptions selda text
10 ];
13 ];
11 homepage = "https://github.com/valderman/selda";
14 homepage = "https://github.com/valderman/selda";
12 description = "SQLite backend for the Selda database EDSL";
15 description = "SQLite backend for the Selda database EDSL";
13 license = stdenv.lib.licenses.mit;
16 license = stdenv.lib.licenses.mit;
14−}
17+}
test/golden-test-cases/selda.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, exceptions, hashable, mtl
1+{ mkDerivation, base, bytestring, exceptions, fetchurl, hashable
2−, psqueues, stdenv, text, time, unordered-containers
2+, mtl, psqueues, text, time, unordered-containers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "selda";
5 pname = "selda";
6 version = "0.1.11.2";
6 version = "0.1.11.2";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base bytestring exceptions hashable mtl psqueues text time
12 base bytestring exceptions hashable mtl psqueues text time
10 unordered-containers
13 unordered-containers
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://selda.link";
15 homepage = "https://selda.link";
13 description = "Type-safe, high-level EDSL for interacting with relational databases";
16 description = "Type-safe, high-level EDSL for interacting with relational databases";
14 license = stdenv.lib.licenses.mit;
17 license = stdenv.lib.licenses.mit;
15−}
18+}
test/golden-test-cases/servant-checked-exceptions.nix.golden+8−5
@@ -1,12 +1,15 @@
1−{ mkDerivation, aeson, base, bytestring, deepseq, doctest, Glob
1+{ mkDerivation, aeson, base, bytestring, deepseq, doctest, fetchurl
2−, hspec-wai, http-media, profunctors, servant, servant-client
2+, Glob, hspec-wai, http-media, profunctors, servant, servant-client
3−, servant-docs, servant-server, stdenv, tagged, tasty, tasty-hspec
3+, servant-docs, servant-server, tagged, tasty, tasty-hspec
4, tasty-hunit, text, wai
4, tasty-hunit, text, wai
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "servant-checked-exceptions";
7 pname = "servant-checked-exceptions";
8 version = "0.4.1.0";
8 version = "0.4.1.0";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 isLibrary = true;
13 isLibrary = true;
11 isExecutable = true;
14 isExecutable = true;
12 libraryHaskellDepends = [
15 libraryHaskellDepends = [
@@ -20,4 +23,4 @@ mkDerivation {
20 homepage = "https://github.com/cdepillabout/servant-checked-exceptions";
23 homepage = "https://github.com/cdepillabout/servant-checked-exceptions";
21 description = "Checked exceptions for Servant APIs";
24 description = "Checked exceptions for Servant APIs";
22 license = stdenv.lib.licenses.bsd3;
25 license = stdenv.lib.licenses.bsd3;
23−}
26+}
test/golden-test-cases/set-cover.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, containers, enummapset, psqueues, stdenv
1+{ mkDerivation, base, containers, enummapset, fetchurl, psqueues
2, utility-ht
2, utility-ht
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "set-cover";
5 pname = "set-cover";
6 version = "0.0.8";
6 version = "0.0.8";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 isLibrary = true;
11 isLibrary = true;
9 isExecutable = true;
12 isExecutable = true;
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "http://hub.darcs.net/thielema/set-cover/";
16 homepage = "http://hub.darcs.net/thielema/set-cover/";
14 description = "Solve exact set cover problems like Sudoku, 8 Queens, Soma Cube, Tetris Cube";
17 description = "Solve exact set cover problems like Sudoku, 8 Queens, Soma Cube, Tetris Cube";
15 license = stdenv.lib.licenses.bsd3;
18 license = stdenv.lib.licenses.bsd3;
16−}
19+}
test/golden-test-cases/sets.nix.golden+9−6
@@ -1,13 +1,16 @@
1{ mkDerivation, base, commutative, composition, containers
1{ mkDerivation, base, commutative, composition, containers
2−, contravariant, criterion, hashable, keys, mtl, QuickCheck
2+, contravariant, criterion, fetchurl, hashable, keys, mtl
3−, quickcheck-instances, semigroupoids, semigroups, stdenv, tasty
3+, QuickCheck, quickcheck-instances, semigroupoids, semigroups
4−, tasty-hunit, tasty-quickcheck, transformers, transformers-base
4+, tasty, tasty-hunit, tasty-quickcheck, transformers
5−, unordered-containers, witherable
5+, transformers-base, unordered-containers, witherable
6}:
6}:
7mkDerivation {
7mkDerivation {
8 pname = "sets";
8 pname = "sets";
9 version = "0.0.5.2";
9 version = "0.0.5.2";
10+ src = fetchurl {
11+ url = "http://example.org/";
10− sha256 = "deadbeef";
12+ sha256 = "abc";
13+ };
11 libraryHaskellDepends = [
14 libraryHaskellDepends = [
12 base commutative composition containers contravariant hashable keys
15 base commutative composition containers contravariant hashable keys
13 mtl QuickCheck semigroupoids semigroups transformers
16 mtl QuickCheck semigroupoids semigroups transformers
@@ -24,4 +27,4 @@ mkDerivation {
24 ];
27 ];
25 description = "Ducktyped set interface for Haskell containers";
28 description = "Ducktyped set interface for Haskell containers";
26 license = stdenv.lib.licenses.mit;
29 license = stdenv.lib.licenses.mit;
27−}
30+}
test/golden-test-cases/simple-smt.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, base, process, stdenv }:
1+{ mkDerivation, base, fetchurl, process }:
2mkDerivation {
2mkDerivation {
3 pname = "simple-smt";
3 pname = "simple-smt";
4 version = "0.7.1";
4 version = "0.7.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base process ];
9 libraryHaskellDepends = [ base process ];
7 description = "A simple way to interact with an SMT solver process";
10 description = "A simple way to interact with an SMT solver process";
8 license = stdenv.lib.licenses.bsd3;
11 license = stdenv.lib.licenses.bsd3;
9−}
12+}
test/golden-test-cases/slack-web.nix.golden+7−4
@@ -1,11 +1,14 @@
1−{ mkDerivation, aeson, base, containers, errors, hspec
1+{ mkDerivation, aeson, base, containers, errors, fetchurl, hspec
2, http-api-data, http-client, http-client-tls, megaparsec, mtl
2, http-api-data, http-client, http-client-tls, megaparsec, mtl
3−, servant, servant-client, stdenv, text, time, transformers
3+, servant, servant-client, text, time, transformers
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "slack-web";
6 pname = "slack-web";
7 version = "0.2.0.1";
7 version = "0.2.0.1";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 aeson base containers errors http-api-data http-client
13 aeson base containers errors http-api-data http-client
11 http-client-tls megaparsec mtl servant servant-client text time
14 http-client-tls megaparsec mtl servant servant-client text time
@@ -18,4 +21,4 @@ mkDerivation {
18 homepage = "https://github.com/jpvillaisaza/slack-web";
21 homepage = "https://github.com/jpvillaisaza/slack-web";
19 description = "Bindings for the Slack web API";
22 description = "Bindings for the Slack web API";
20 license = stdenv.lib.licenses.mit;
23 license = stdenv.lib.licenses.mit;
21−}
24+}
test/golden-test-cases/slug.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, aeson, base, exceptions, hspec, http-api-data
1+{ mkDerivation, aeson, base, exceptions, fetchurl, hspec
2−, path-pieces, persistent, QuickCheck, stdenv, text
2+, http-api-data, path-pieces, persistent, QuickCheck, text
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "slug";
5 pname = "slug";
6 version = "0.1.7";
6 version = "0.1.7";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 aeson base exceptions http-api-data path-pieces persistent
12 aeson base exceptions http-api-data path-pieces persistent
10 QuickCheck text
13 QuickCheck text
@@ -15,4 +18,4 @@ mkDerivation {
15 homepage = "https://github.com/mrkkrp/slug";
18 homepage = "https://github.com/mrkkrp/slug";
16 description = "Type-safe slugs for Yesod ecosystem";
19 description = "Type-safe slugs for Yesod ecosystem";
17 license = stdenv.lib.licenses.bsd3;
20 license = stdenv.lib.licenses.bsd3;
18−}
21+}
test/golden-test-cases/soxlib.nix.golden+7−4
@@ -1,11 +1,14 @@
1{ mkDerivation, base, bytestring, containers, explicit-exception
1{ mkDerivation, base, bytestring, containers, explicit-exception
2−, extensible-exceptions, sample-frame, sox, stdenv, storablevector
2+, extensible-exceptions, fetchurl, sample-frame, sox
3−, transformers, utility-ht
3+, storablevector, transformers, utility-ht
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "soxlib";
6 pname = "soxlib";
7 version = "0.0.3";
7 version = "0.0.3";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 isLibrary = true;
12 isLibrary = true;
10 isExecutable = true;
13 isExecutable = true;
11 libraryHaskellDepends = [
14 libraryHaskellDepends = [
@@ -16,4 +19,4 @@ mkDerivation {
16 homepage = "http://www.haskell.org/haskellwiki/Sox";
19 homepage = "http://www.haskell.org/haskellwiki/Sox";
17 description = "Write, read, convert audio signals using libsox";
20 description = "Write, read, convert audio signals using libsox";
18 license = stdenv.lib.licenses.bsd3;
21 license = stdenv.lib.licenses.bsd3;
19−}
22+}
test/golden-test-cases/speedy-slice.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, containers, kan-extensions, lens, mcmc-types
1+{ mkDerivation, base, containers, fetchurl, kan-extensions, lens
2−, mwc-probability, pipes, primitive, stdenv, transformers
2+, mcmc-types, mwc-probability, pipes, primitive, transformers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "speedy-slice";
5 pname = "speedy-slice";
6 version = "0.3.0";
6 version = "0.3.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base kan-extensions lens mcmc-types mwc-probability pipes primitive
12 base kan-extensions lens mcmc-types mwc-probability pipes primitive
10 transformers
13 transformers
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "http://github.com/jtobin/speedy-slice";
16 homepage = "http://github.com/jtobin/speedy-slice";
14 description = "Speedy slice sampling";
17 description = "Speedy slice sampling";
15 license = stdenv.lib.licenses.mit;
18 license = stdenv.lib.licenses.mit;
16−}
19+}
test/golden-test-cases/splice.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, network, stdenv }:
1+{ mkDerivation, base, fetchurl, network }:
2mkDerivation {
2mkDerivation {
3 pname = "splice";
3 pname = "splice";
4 version = "0.6.1.1";
4 version = "0.6.1.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base network ];
9 libraryHaskellDepends = [ base network ];
7 homepage = "http://corsis.github.com/splice/";
10 homepage = "http://corsis.github.com/splice/";
8 description = "Cross-platform Socket to Socket Data Splicing";
11 description = "Cross-platform Socket to Socket Data Splicing";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/spreadsheet.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, explicit-exception, stdenv, transformers
1+{ mkDerivation, base, explicit-exception, fetchurl, transformers
2, utility-ht
2, utility-ht
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "spreadsheet";
5 pname = "spreadsheet";
6 version = "0.1.3.7";
6 version = "0.1.3.7";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 isLibrary = true;
11 isLibrary = true;
9 isExecutable = true;
12 isExecutable = true;
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "http://www.haskell.org/haskellwiki/Spreadsheet";
16 homepage = "http://www.haskell.org/haskellwiki/Spreadsheet";
14 description = "Read and write spreadsheets from and to CSV files in a lazy way";
17 description = "Read and write spreadsheets from and to CSV files in a lazy way";
15 license = stdenv.lib.licenses.bsd3;
18 license = stdenv.lib.licenses.bsd3;
16−}
19+}
test/golden-test-cases/stack-type.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv, transformers }:
1+{ mkDerivation, base, fetchurl, transformers }:
2mkDerivation {
2mkDerivation {
3 pname = "stack-type";
3 pname = "stack-type";
4 version = "0.1.0.0";
4 version = "0.1.0.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base transformers ];
9 libraryHaskellDepends = [ base transformers ];
7 homepage = "https://github.com/aiya000/hs-stack-type";
10 homepage = "https://github.com/aiya000/hs-stack-type";
8 description = "The basic stack type";
11 description = "The basic stack type";
9 license = stdenv.lib.licenses.mit;
12 license = stdenv.lib.licenses.mit;
10−}
13+}
test/golden-test-cases/state-codes.nix.golden+7−4
@@ -1,13 +1,16 @@
1−{ mkDerivation, aeson, base, hspec, QuickCheck, shakespeare, stdenv
1+{ mkDerivation, aeson, base, fetchurl, hspec, QuickCheck
2−, text
2+, shakespeare, text
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "state-codes";
5 pname = "state-codes";
6 version = "0.1.3";
6 version = "0.1.3";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ aeson base shakespeare text ];
11 libraryHaskellDepends = [ aeson base shakespeare text ];
9 testHaskellDepends = [ aeson base hspec QuickCheck text ];
12 testHaskellDepends = [ aeson base hspec QuickCheck text ];
10 homepage = "https://github.com/acamino/state-codes#README";
13 homepage = "https://github.com/acamino/state-codes#README";
11 description = "ISO 3166-2:US state codes and i18n names";
14 description = "ISO 3166-2:US state codes and i18n names";
12 license = stdenv.lib.licenses.mit;
15 license = stdenv.lib.licenses.mit;
13−}
16+}
test/golden-test-cases/stb-image-redux.nix.golden+6−3
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, hspec, stdenv, vector }:
1+{ mkDerivation, base, fetchurl, hspec, vector }:
2mkDerivation {
2mkDerivation {
3 pname = "stb-image-redux";
3 pname = "stb-image-redux";
4 version = "0.2.1.2";
4 version = "0.2.1.2";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base vector ];
9 libraryHaskellDepends = [ base vector ];
7 testHaskellDepends = [ base hspec vector ];
10 testHaskellDepends = [ base hspec vector ];
8 homepage = "https://github.com/typedrat/stb-image-redux#readme";
11 homepage = "https://github.com/typedrat/stb-image-redux#readme";
9 description = "Image loading and writing microlibrary";
12 description = "Image loading and writing microlibrary";
10 license = stdenv.lib.licenses.bsd3;
13 license = stdenv.lib.licenses.bsd3;
11−}
14+}
test/golden-test-cases/stm-containers.nix.golden+9−6
@@ -1,13 +1,16 @@
1{ mkDerivation, async, base, base-prelude, containers, criterion
1{ mkDerivation, async, base, base-prelude, containers, criterion
2−, focus, free, hashable, hashtables, HTF, list-t, loch-th, mtl
2+, fetchurl, focus, free, hashable, hashtables, HTF, list-t, loch-th
3−, mtl-prelude, mwc-random, mwc-random-monad, placeholders
3+, mtl, mtl-prelude, mwc-random, mwc-random-monad, placeholders
4−, primitive, QuickCheck, stdenv, text, transformers
4+, primitive, QuickCheck, text, transformers, unordered-containers
5−, unordered-containers, vector
5+, vector
6}:
6}:
7mkDerivation {
7mkDerivation {
8 pname = "stm-containers";
8 pname = "stm-containers";
9 version = "0.2.16";
9 version = "0.2.16";
10+ src = fetchurl {
11+ url = "http://example.org/";
10− sha256 = "deadbeef";
12+ sha256 = "abc";
13+ };
11 libraryHaskellDepends = [
14 libraryHaskellDepends = [
12 base base-prelude focus hashable list-t primitive transformers
15 base base-prelude focus hashable list-t primitive transformers
13 ];
16 ];
@@ -24,4 +27,4 @@ mkDerivation {
24 homepage = "https://github.com/nikita-volkov/stm-containers";
27 homepage = "https://github.com/nikita-volkov/stm-containers";
25 description = "Containers for STM";
28 description = "Containers for STM";
26 license = stdenv.lib.licenses.mit;
29 license = stdenv.lib.licenses.mit;
27−}
30+}
test/golden-test-cases/streaming-commons.nix.golden+7−4
@@ -1,11 +1,14 @@
1{ mkDerivation, array, async, base, blaze-builder, bytestring
1{ mkDerivation, array, async, base, blaze-builder, bytestring
2−, criterion, deepseq, directory, hspec, network, process
2+, criterion, deepseq, directory, fetchurl, hspec, network, process
3−, QuickCheck, random, stdenv, stm, text, transformers, unix, zlib
3+, QuickCheck, random, stm, text, transformers, unix, zlib
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "streaming-commons";
6 pname = "streaming-commons";
7 version = "0.1.18";
7 version = "0.1.18";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 array async base blaze-builder bytestring directory network process
13 array async base blaze-builder bytestring directory network process
11 random stm text transformers unix zlib
14 random stm text transformers unix zlib
@@ -20,4 +23,4 @@ mkDerivation {
20 homepage = "https://github.com/fpco/streaming-commons";
23 homepage = "https://github.com/fpco/streaming-commons";
21 description = "Common lower-level functions needed by various streaming data libraries";
24 description = "Common lower-level functions needed by various streaming data libraries";
22 license = stdenv.lib.licenses.mit;
25 license = stdenv.lib.licenses.mit;
23−}
26+}
test/golden-test-cases/strict-base-types.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, aeson, base, bifunctors, binary, deepseq, ghc-prim
1+{ mkDerivation, aeson, base, bifunctors, binary, deepseq, fetchurl
2−, hashable, lens, QuickCheck, stdenv, strict
2+, ghc-prim, hashable, lens, QuickCheck, strict
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "strict-base-types";
5 pname = "strict-base-types";
6 version = "0.5.0";
6 version = "0.5.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 aeson base bifunctors binary deepseq ghc-prim hashable lens
12 aeson base bifunctors binary deepseq ghc-prim hashable lens
10 QuickCheck strict
13 QuickCheck strict
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://github.com/meiersi/strict-base-types";
15 homepage = "https://github.com/meiersi/strict-base-types";
13 description = "Strict variants of the types provided in base";
16 description = "Strict variants of the types provided in base";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/strict-types.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, array, base, bytestring, containers, deepseq
1{ mkDerivation, array, base, bytestring, containers, deepseq
2−, hashable, stdenv, text, unordered-containers, vector
2+, fetchurl, hashable, text, unordered-containers, vector
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "strict-types";
5 pname = "strict-types";
6 version = "0.1.2";
6 version = "0.1.2";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 array base bytestring containers deepseq hashable text
12 array base bytestring containers deepseq hashable text
10 unordered-containers vector
13 unordered-containers vector
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://github.com/pepeiborra/strict-types";
15 homepage = "https://github.com/pepeiborra/strict-types";
13 description = "A type level predicate ranging over strict types";
16 description = "A type level predicate ranging over strict types";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/string-class.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, stdenv, tagged, text }:
1+{ mkDerivation, base, bytestring, fetchurl, tagged, text }:
2mkDerivation {
2mkDerivation {
3 pname = "string-class";
3 pname = "string-class";
4 version = "0.1.6.5";
4 version = "0.1.6.5";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base bytestring tagged text ];
9 libraryHaskellDepends = [ base bytestring tagged text ];
7 homepage = "https://github.com/bairyn/string-class";
10 homepage = "https://github.com/bairyn/string-class";
8 description = "String class library";
11 description = "String class library";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/stripe-haskell.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv, stripe-core, stripe-http-streams }:
1+{ mkDerivation, base, fetchurl, stripe-core, stripe-http-streams }:
2mkDerivation {
2mkDerivation {
3 pname = "stripe-haskell";
3 pname = "stripe-haskell";
4 version = "2.2.3";
4 version = "2.2.3";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base stripe-core stripe-http-streams ];
9 libraryHaskellDepends = [ base stripe-core stripe-http-streams ];
7 homepage = "https://github.com/dmjio/stripe";
10 homepage = "https://github.com/dmjio/stripe";
8 description = "Stripe API for Haskell";
11 description = "Stripe API for Haskell";
9 license = stdenv.lib.licenses.mit;
12 license = stdenv.lib.licenses.mit;
10−}
13+}
test/golden-test-cases/svg-tree.nix.golden+8−5
@@ -1,15 +1,18 @@
1−{ mkDerivation, attoparsec, base, bytestring, containers
1+{ mkDerivation, attoparsec, base, bytestring, containers, fetchurl
2−, JuicyPixels, lens, linear, mtl, scientific, stdenv, text
2+, JuicyPixels, lens, linear, mtl, scientific, text, transformers
3−, transformers, vector, xml
3+, vector, xml
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "svg-tree";
6 pname = "svg-tree";
7 version = "0.6.2.1";
7 version = "0.6.2.1";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 attoparsec base bytestring containers JuicyPixels lens linear mtl
13 attoparsec base bytestring containers JuicyPixels lens linear mtl
11 scientific text transformers vector xml
14 scientific text transformers vector xml
12 ];
15 ];
13 description = "SVG file loader and serializer";
16 description = "SVG file loader and serializer";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/swagger.nix.golden+7−5
@@ -1,15 +1,17 @@
1−{ mkDerivation, aeson, base, bytestring, stdenv, tasty, tasty-hunit
1+{ mkDerivation, aeson, base, bytestring, fetchurl, tasty
2−, text, time, transformers
2+, tasty-hunit, text, time, transformers
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "swagger";
5 pname = "swagger";
6 version = "0.3.0";
6 version = "0.3.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 aeson base bytestring text time transformers
12 aeson base bytestring text time transformers
10 ];
13 ];
11 testHaskellDepends = [ aeson base bytestring tasty tasty-hunit ];
14 testHaskellDepends = [ aeson base bytestring tasty tasty-hunit ];
12 description = "Implementation of swagger data model";
15 description = "Implementation of swagger data model";
13 license = "unknown";
16 license = "unknown";
14− hydraPlatforms = stdenv.lib.platforms.none;
15−}
17+}
test/golden-test-cases/system-argv0.nix.golden+7−3
@@ -1,10 +1,14 @@
1−{ mkDerivation, base, bytestring, stdenv, system-filepath, text }:
1+{ mkDerivation, base, bytestring, fetchurl, system-filepath, text
2+}:
2mkDerivation {
3mkDerivation {
3 pname = "system-argv0";
4 pname = "system-argv0";
4 version = "0.1.1";
5 version = "0.1.1";
6+ src = fetchurl {
7+ url = "http://example.org/";
5− sha256 = "deadbeef";
8+ sha256 = "abc";
9+ };
6 libraryHaskellDepends = [ base bytestring system-filepath text ];
10 libraryHaskellDepends = [ base bytestring system-filepath text ];
7 homepage = "https://john-millikin.com/software/haskell-filesystem/";
11 homepage = "https://john-millikin.com/software/haskell-filesystem/";
8 description = "Get argv[0] as a FilePath";
12 description = "Get argv[0] as a FilePath";
9 license = stdenv.lib.licenses.mit;
13 license = stdenv.lib.licenses.mit;
10−}
14+}
test/golden-test-cases/system-fileio.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, chell, stdenv, system-filepath
1+{ mkDerivation, base, bytestring, chell, fetchurl, system-filepath
2, temporary, text, time, transformers, unix
2, temporary, text, time, transformers, unix
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "system-fileio";
5 pname = "system-fileio";
6 version = "0.3.16.3";
6 version = "0.3.16.3";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base bytestring system-filepath text time unix
12 base bytestring system-filepath text time unix
10 ];
13 ];
@@ -15,4 +18,4 @@ mkDerivation {
15 homepage = "https://github.com/fpco/haskell-filesystem";
18 homepage = "https://github.com/fpco/haskell-filesystem";
16 description = "Consistent filesystem interaction across GHC versions (deprecated)";
19 description = "Consistent filesystem interaction across GHC versions (deprecated)";
17 license = stdenv.lib.licenses.mit;
20 license = stdenv.lib.licenses.mit;
18−}
21+}
test/golden-test-cases/system-filepath.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, base, bytestring, chell, chell-quickcheck, deepseq
1{ mkDerivation, base, bytestring, chell, chell-quickcheck, deepseq
2−, QuickCheck, stdenv, text
2+, fetchurl, QuickCheck, text
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "system-filepath";
5 pname = "system-filepath";
6 version = "0.4.13.4";
6 version = "0.4.13.4";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base bytestring deepseq text ];
11 libraryHaskellDepends = [ base bytestring deepseq text ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 base bytestring chell chell-quickcheck QuickCheck text
13 base bytestring chell chell-quickcheck QuickCheck text
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://github.com/fpco/haskell-filesystem";
15 homepage = "https://github.com/fpco/haskell-filesystem";
13 description = "High-level, byte-based file and directory path manipulations (deprecated)";
16 description = "High-level, byte-based file and directory path manipulations (deprecated)";
14 license = stdenv.lib.licenses.mit;
17 license = stdenv.lib.licenses.mit;
15−}
18+}
test/golden-test-cases/tagged.nix.golden+6−3
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, deepseq, stdenv, template-haskell
1+{ mkDerivation, base, deepseq, fetchurl, template-haskell
2, transformers, transformers-compat
2, transformers, transformers-compat
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "tagged";
5 pname = "tagged";
6 version = "0.8.5";
6 version = "0.8.5";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base deepseq template-haskell transformers transformers-compat
12 base deepseq template-haskell transformers transformers-compat
10 ];
13 ];
11 homepage = "http://github.com/ekmett/tagged";
14 homepage = "http://github.com/ekmett/tagged";
12 description = "Haskell 98 phantom types to avoid unsafely passing dummy arguments";
15 description = "Haskell 98 phantom types to avoid unsafely passing dummy arguments";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/taggy.nix.golden+6−3
@@ -1,11 +1,14 @@
1{ mkDerivation, attoparsec, base, blaze-html, blaze-markup
1{ mkDerivation, attoparsec, base, blaze-html, blaze-markup
2−, criterion, directory, hspec, hspec-attoparsec, stdenv, tagsoup
2+, criterion, directory, fetchurl, hspec, hspec-attoparsec, tagsoup
3, text, unordered-containers, vector
3, text, unordered-containers, vector
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "taggy";
6 pname = "taggy";
7 version = "0.2.1";
7 version = "0.2.1";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 isLibrary = true;
12 isLibrary = true;
10 isExecutable = true;
13 isExecutable = true;
11 enableSeparateDataOutput = true;
14 enableSeparateDataOutput = true;
@@ -24,4 +27,4 @@ mkDerivation {
24 homepage = "http://github.com/alpmestan/taggy";
27 homepage = "http://github.com/alpmestan/taggy";
25 description = "Efficient and simple HTML/XML parsing library";
28 description = "Efficient and simple HTML/XML parsing library";
26 license = stdenv.lib.licenses.bsd3;
29 license = stdenv.lib.licenses.bsd3;
27−}
30+}
test/golden-test-cases/tagstream-conduit.nix.golden+7−4
@@ -1,12 +1,15 @@
1{ mkDerivation, attoparsec, base, blaze-builder, bytestring
1{ mkDerivation, attoparsec, base, blaze-builder, bytestring
2−, case-insensitive, conduit, conduit-extra, data-default, hspec
2+, case-insensitive, conduit, conduit-extra, data-default, fetchurl
3−, HUnit, QuickCheck, resourcet, stdenv, text, transformers
3+, hspec, HUnit, QuickCheck, resourcet, text, transformers
4, xml-conduit
4, xml-conduit
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "tagstream-conduit";
7 pname = "tagstream-conduit";
8 version = "0.5.5.3";
8 version = "0.5.5.3";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 libraryHaskellDepends = [
13 libraryHaskellDepends = [
11 attoparsec base blaze-builder bytestring case-insensitive conduit
14 attoparsec base blaze-builder bytestring case-insensitive conduit
12 conduit-extra data-default resourcet text transformers xml-conduit
15 conduit-extra data-default resourcet text transformers xml-conduit
@@ -17,4 +20,4 @@ mkDerivation {
17 homepage = "http://github.com/yihuang/tagstream-conduit";
20 homepage = "http://github.com/yihuang/tagstream-conduit";
18 description = "streamlined html tag parser";
21 description = "streamlined html tag parser";
19 license = stdenv.lib.licenses.bsd3;
22 license = stdenv.lib.licenses.bsd3;
20−}
23+}
test/golden-test-cases/tasty-hedgehog.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, hedgehog, stdenv, tagged, tasty
1+{ mkDerivation, base, fetchurl, hedgehog, tagged, tasty
2, tasty-expected-failure
2, tasty-expected-failure
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "tasty-hedgehog";
5 pname = "tasty-hedgehog";
6 version = "0.1.0.1";
6 version = "0.1.0.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base hedgehog tagged tasty ];
11 libraryHaskellDepends = [ base hedgehog tagged tasty ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 base hedgehog tasty tasty-expected-failure
13 base hedgehog tasty tasty-expected-failure
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://github.com/qfpl/tasty-hedghog";
15 homepage = "https://github.com/qfpl/tasty-hedghog";
13 description = "Integrates the hedgehog testing library with the tasty testing framework";
16 description = "Integrates the hedgehog testing library with the tasty testing framework";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/tasty-rerun.nix.golden+8−4
@@ -1,10 +1,14 @@
1−{ mkDerivation, base, containers, mtl, optparse-applicative
1+{ mkDerivation, base, containers, fetchurl, mtl
2−, reducers, split, stdenv, stm, tagged, tasty, transformers
2+, optparse-applicative, reducers, split, stm, tagged, tasty
3+, transformers
3}:
4}:
4mkDerivation {
5mkDerivation {
5 pname = "tasty-rerun";
6 pname = "tasty-rerun";
6 version = "1.1.8";
7 version = "1.1.8";
8+ src = fetchurl {
9+ url = "http://example.org/";
7− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
8 libraryHaskellDepends = [
12 libraryHaskellDepends = [
9 base containers mtl optparse-applicative reducers split stm tagged
13 base containers mtl optparse-applicative reducers split stm tagged
10 tasty transformers
14 tasty transformers
@@ -12,4 +16,4 @@ mkDerivation {
12 homepage = "http://github.com/ocharles/tasty-rerun";
16 homepage = "http://github.com/ocharles/tasty-rerun";
13 description = "Run tests by filtering the test tree depending on the result of previous test runs";
17 description = "Run tests by filtering the test tree depending on the result of previous test runs";
14 license = stdenv.lib.licenses.bsd3;
18 license = stdenv.lib.licenses.bsd3;
15−}
19+}
test/golden-test-cases/tce-conf.nix.golden+6−3
@@ -1,8 +1,11 @@
1−{ mkDerivation, base, containers, HUnit, stdenv }:
1+{ mkDerivation, base, containers, fetchurl, HUnit }:
2mkDerivation {
2mkDerivation {
3 pname = "tce-conf";
3 pname = "tce-conf";
4 version = "1.3";
4 version = "1.3";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 isLibrary = true;
9 isLibrary = true;
7 isExecutable = true;
10 isExecutable = true;
8 libraryHaskellDepends = [ base containers ];
11 libraryHaskellDepends = [ base containers ];
@@ -11,4 +14,4 @@ mkDerivation {
11 homepage = "http://hub.darcs.net/dino/tce-conf";
14 homepage = "http://hub.darcs.net/dino/tce-conf";
12 description = "Very simple config file reading";
15 description = "Very simple config file reading";
13 license = stdenv.lib.licenses.bsd3;
16 license = stdenv.lib.licenses.bsd3;
14−}
17+}
test/golden-test-cases/terminal-progress-bar.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, HUnit, stdenv, stm, stm-chans, test-framework
1+{ mkDerivation, base, fetchurl, HUnit, stm, stm-chans
2−, test-framework-hunit
2+, test-framework, test-framework-hunit
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "terminal-progress-bar";
5 pname = "terminal-progress-bar";
6 version = "0.1.1.1";
6 version = "0.1.1.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 isLibrary = true;
11 isLibrary = true;
9 isExecutable = true;
12 isExecutable = true;
10 libraryHaskellDepends = [ base stm stm-chans ];
13 libraryHaskellDepends = [ base stm stm-chans ];
@@ -14,4 +17,4 @@ mkDerivation {
14 homepage = "https://github.com/roelvandijk/terminal-progress-bar";
17 homepage = "https://github.com/roelvandijk/terminal-progress-bar";
15 description = "A simple progress bar in the terminal";
18 description = "A simple progress bar in the terminal";
16 license = stdenv.lib.licenses.bsd3;
19 license = stdenv.lib.licenses.bsd3;
17−}
20+}
test/golden-test-cases/test-fixture.nix.golden+7−5
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, data-default-class, exceptions
1+{ mkDerivation, base, data-default-class, exceptions, fetchurl
2, haskell-src-exts, haskell-src-meta, hspec, hspec-discover, mtl
2, haskell-src-exts, haskell-src-meta, hspec, hspec-discover, mtl
3−, stdenv, template-haskell, th-orphans, transformers
3+, template-haskell, th-orphans, transformers
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "test-fixture";
6 pname = "test-fixture";
7 version = "0.5.1.0";
7 version = "0.5.1.0";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 base data-default-class exceptions haskell-src-exts
13 base data-default-class exceptions haskell-src-exts
11 haskell-src-meta mtl template-haskell th-orphans
14 haskell-src-meta mtl template-haskell th-orphans
@@ -13,8 +16,7 @@ mkDerivation {
13 testHaskellDepends = [
16 testHaskellDepends = [
14 base hspec hspec-discover mtl template-haskell transformers
17 base hspec hspec-discover mtl template-haskell transformers
15 ];
18 ];
16− testToolDepends = [ hspec-discover ];
17 homepage = "http://github.com/cjdev/test-fixture#readme";
19 homepage = "http://github.com/cjdev/test-fixture#readme";
18 description = "Test monadic side-effects";
20 description = "Test monadic side-effects";
19 license = stdenv.lib.licenses.bsd3;
21 license = stdenv.lib.licenses.bsd3;
20−}
22+}
test/golden-test-cases/texmath.nix.golden+8−5
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, bytestring, containers, directory, filepath
1+{ mkDerivation, base, bytestring, containers, directory, fetchurl
2−, mtl, pandoc-types, parsec, process, split, stdenv, syb, temporary
2+, filepath, mtl, pandoc-types, parsec, process, split, syb
3−, text, utf8-string, xml
3+, temporary, text, utf8-string, xml
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "texmath";
6 pname = "texmath";
7 version = "0.10.1";
7 version = "0.10.1";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 isLibrary = true;
12 isLibrary = true;
10 isExecutable = true;
13 isExecutable = true;
11 libraryHaskellDepends = [
14 libraryHaskellDepends = [
@@ -18,4 +21,4 @@ mkDerivation {
18 homepage = "http://github.com/jgm/texmath";
21 homepage = "http://github.com/jgm/texmath";
19 description = "Conversion between formats used to represent mathematics";
22 description = "Conversion between formats used to represent mathematics";
20 license = "GPL";
23 license = "GPL";
21−}
24+}
test/golden-test-cases/text-icu.nix.golden+8−4
@@ -1,11 +1,15 @@
1{ mkDerivation, array, base, bytestring, deepseq, directory
1{ mkDerivation, array, base, bytestring, deepseq, directory
2−, ghc-prim, HUnit, icu, QuickCheck, random, stdenv, test-framework
2+, fetchurl, ghc-prim, HUnit, icu, QuickCheck, random
3−, test-framework-hunit, test-framework-quickcheck2, text
3+, test-framework, test-framework-hunit, test-framework-quickcheck2
4+, text
4}:
5}:
5mkDerivation {
6mkDerivation {
6 pname = "text-icu";
7 pname = "text-icu";
7 version = "0.7.0.1";
8 version = "0.7.0.1";
9+ src = fetchurl {
10+ url = "http://example.org/";
8− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
9 libraryHaskellDepends = [ base bytestring deepseq text ];
13 libraryHaskellDepends = [ base bytestring deepseq text ];
10 librarySystemDepends = [ icu ];
14 librarySystemDepends = [ icu ];
11 testHaskellDepends = [
15 testHaskellDepends = [
@@ -16,4 +20,4 @@ mkDerivation {
16 homepage = "https://github.com/bos/text-icu";
20 homepage = "https://github.com/bos/text-icu";
17 description = "Bindings to the ICU library";
21 description = "Bindings to the ICU library";
18 license = stdenv.lib.licenses.bsd3;
22 license = stdenv.lib.licenses.bsd3;
19−}
23+}
test/golden-test-cases/text-postgresql.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, dlist, QuickCheck, quickcheck-simple, stdenv
1+{ mkDerivation, base, dlist, fetchurl, QuickCheck
2−, transformers, transformers-compat
2+, quickcheck-simple, transformers, transformers-compat
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "text-postgresql";
5 pname = "text-postgresql";
6 version = "0.0.2.3";
6 version = "0.0.2.3";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base dlist transformers transformers-compat
12 base dlist transformers transformers-compat
10 ];
13 ];
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "http://khibino.github.io/haskell-relational-record/";
15 homepage = "http://khibino.github.io/haskell-relational-record/";
13 description = "Parser and Printer of PostgreSQL extended types";
16 description = "Parser and Printer of PostgreSQL extended types";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/th-expand-syns.nix.golden+7−3
@@ -1,11 +1,15 @@
1−{ mkDerivation, base, containers, stdenv, syb, template-haskell }:
1+{ mkDerivation, base, containers, fetchurl, syb, template-haskell
2+}:
2mkDerivation {
3mkDerivation {
3 pname = "th-expand-syns";
4 pname = "th-expand-syns";
4 version = "0.4.4.0";
5 version = "0.4.4.0";
6+ src = fetchurl {
7+ url = "http://example.org/";
5− sha256 = "deadbeef";
8+ sha256 = "abc";
9+ };
6 libraryHaskellDepends = [ base containers syb template-haskell ];
10 libraryHaskellDepends = [ base containers syb template-haskell ];
7 testHaskellDepends = [ base template-haskell ];
11 testHaskellDepends = [ base template-haskell ];
8 homepage = "https://github.com/DanielSchuessler/th-expand-syns";
12 homepage = "https://github.com/DanielSchuessler/th-expand-syns";
9 description = "Expands type synonyms in Template Haskell ASTs";
13 description = "Expands type synonyms in Template Haskell ASTs";
10 license = stdenv.lib.licenses.bsd3;
14 license = stdenv.lib.licenses.bsd3;
11−}
15+}
test/golden-test-cases/these.nix.golden+8−5
@@ -1,13 +1,16 @@
1{ mkDerivation, aeson, base, bifunctors, binary, containers
1{ mkDerivation, aeson, base, bifunctors, binary, containers
2−, data-default-class, deepseq, hashable, keys, mtl, profunctors
2+, data-default-class, deepseq, fetchurl, hashable, keys, mtl
3−, QuickCheck, quickcheck-instances, semigroupoids, stdenv, tasty
3+, profunctors, QuickCheck, quickcheck-instances, semigroupoids
4−, tasty-quickcheck, transformers, transformers-compat
4+, tasty, tasty-quickcheck, transformers, transformers-compat
5, unordered-containers, vector, vector-instances
5, unordered-containers, vector, vector-instances
6}:
6}:
7mkDerivation {
7mkDerivation {
8 pname = "these";
8 pname = "these";
9 version = "0.7.4";
9 version = "0.7.4";
10+ src = fetchurl {
11+ url = "http://example.org/";
10− sha256 = "deadbeef";
12+ sha256 = "abc";
13+ };
11 libraryHaskellDepends = [
14 libraryHaskellDepends = [
12 aeson base bifunctors binary containers data-default-class deepseq
15 aeson base bifunctors binary containers data-default-class deepseq
13 hashable keys mtl profunctors QuickCheck semigroupoids transformers
16 hashable keys mtl profunctors QuickCheck semigroupoids transformers
@@ -21,4 +24,4 @@ mkDerivation {
21 homepage = "https://github.com/isomorphism/these";
24 homepage = "https://github.com/isomorphism/these";
22 description = "An either-or-both data type & a generalized 'zip with padding' typeclass";
25 description = "An either-or-both data type & a generalized 'zip with padding' typeclass";
23 license = stdenv.lib.licenses.bsd3;
26 license = stdenv.lib.licenses.bsd3;
24−}
27+}
test/golden-test-cases/timezone-series.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, deepseq, stdenv, time }:
1+{ mkDerivation, base, deepseq, fetchurl, time }:
2mkDerivation {
2mkDerivation {
3 pname = "timezone-series";
3 pname = "timezone-series";
4 version = "0.1.8";
4 version = "0.1.8";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base deepseq time ];
9 libraryHaskellDepends = [ base deepseq time ];
7 homepage = "http://projects.haskell.org/time-ng/";
10 homepage = "http://projects.haskell.org/time-ng/";
8 description = "Enhanced timezone handling for Data.Time";
11 description = "Enhanced timezone handling for Data.Time";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/transformers-compat.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, ghc-prim, stdenv, transformers }:
1+{ mkDerivation, base, fetchurl, ghc-prim, transformers }:
2mkDerivation {
2mkDerivation {
3 pname = "transformers-compat";
3 pname = "transformers-compat";
4 version = "0.5.1.4";
4 version = "0.5.1.4";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ghc-prim transformers ];
9 libraryHaskellDepends = [ base ghc-prim transformers ];
7 homepage = "http://github.com/ekmett/transformers-compat/";
10 homepage = "http://github.com/ekmett/transformers-compat/";
8 description = "A small compatibility shim exposing the new types from transformers 0.3 and 0.4 to older Haskell platforms.";
11 description = "A small compatibility shim exposing the new types from transformers 0.3 and 0.4 to older Haskell platforms.";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/transformers-lift.nix.golden+7−3
@@ -1,12 +1,16 @@
1−{ mkDerivation, base, stdenv, transformers, writer-cps-transformers
1+{ mkDerivation, base, fetchurl, transformers
2+, writer-cps-transformers
2}:
3}:
3mkDerivation {
4mkDerivation {
4 pname = "transformers-lift";
5 pname = "transformers-lift";
5 version = "0.2.0.1";
6 version = "0.2.0.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
6− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
7 libraryHaskellDepends = [
11 libraryHaskellDepends = [
8 base transformers writer-cps-transformers
12 base transformers writer-cps-transformers
9 ];
13 ];
10 description = "Ad-hoc type classes for lifting";
14 description = "Ad-hoc type classes for lifting";
11 license = stdenv.lib.licenses.bsd3;
15 license = stdenv.lib.licenses.bsd3;
12−}
16+}
test/golden-test-cases/tree-fun.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, base, containers, mtl, stdenv }:
1+{ mkDerivation, base, containers, fetchurl, mtl }:
2mkDerivation {
2mkDerivation {
3 pname = "tree-fun";
3 pname = "tree-fun";
4 version = "0.8.1.0";
4 version = "0.8.1.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base containers mtl ];
9 libraryHaskellDepends = [ base containers mtl ];
7 description = "Library for functions pertaining to tree exploration and manipulation";
10 description = "Library for functions pertaining to tree exploration and manipulation";
8 license = stdenv.lib.licenses.gpl3;
11 license = stdenv.lib.licenses.gpl3;
9−}
12+}
test/golden-test-cases/ttrie.nix.golden+7−4
@@ -1,13 +1,16 @@
1{ mkDerivation, async, atomic-primops, base, bifunctors, containers
1{ mkDerivation, async, atomic-primops, base, bifunctors, containers
2−, criterion-plus, deepseq, hashable, mwc-random, primitive
2+, criterion-plus, deepseq, fetchurl, hashable, mwc-random
3−, QuickCheck, stdenv, stm, stm-containers, stm-stats
3+, primitive, QuickCheck, stm, stm-containers, stm-stats
4, test-framework, test-framework-quickcheck2, text, transformers
4, test-framework, test-framework-quickcheck2, text, transformers
5, unordered-containers, vector
5, unordered-containers, vector
6}:
6}:
7mkDerivation {
7mkDerivation {
8 pname = "ttrie";
8 pname = "ttrie";
9 version = "0.1.2.1";
9 version = "0.1.2.1";
10+ src = fetchurl {
11+ url = "http://example.org/";
10− sha256 = "deadbeef";
12+ sha256 = "abc";
13+ };
11 libraryHaskellDepends = [
14 libraryHaskellDepends = [
12 atomic-primops base hashable primitive stm
15 atomic-primops base hashable primitive stm
13 ];
16 ];
@@ -23,4 +26,4 @@ mkDerivation {
23 homepage = "http://github.com/mcschroeder/ttrie";
26 homepage = "http://github.com/mcschroeder/ttrie";
24 description = "Contention-free STM hash map";
27 description = "Contention-free STM hash map";
25 license = stdenv.lib.licenses.mit;
28 license = stdenv.lib.licenses.mit;
26−}
29+}
test/golden-test-cases/tuple-th.nix.golden+6−3
@@ -1,9 +1,12 @@
1−{ mkDerivation, base, containers, stdenv, template-haskell }:
1+{ mkDerivation, base, containers, fetchurl, template-haskell }:
2mkDerivation {
2mkDerivation {
3 pname = "tuple-th";
3 pname = "tuple-th";
4 version = "0.2.5";
4 version = "0.2.5";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base containers template-haskell ];
9 libraryHaskellDepends = [ base containers template-haskell ];
7 description = "Generate (non-recursive) utility functions for tuples of statically known size";
10 description = "Generate (non-recursive) utility functions for tuples of statically known size";
8 license = stdenv.lib.licenses.bsd3;
11 license = stdenv.lib.licenses.bsd3;
9−}
12+}
test/golden-test-cases/tuples-homogenous-h98.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, stdenv }:
1+{ mkDerivation, base, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "tuples-homogenous-h98";
3 pname = "tuples-homogenous-h98";
4 version = "0.1.1.0";
4 version = "0.1.1.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 homepage = "https://github.com/ppetr/tuples-homogenous-h98";
10 homepage = "https://github.com/ppetr/tuples-homogenous-h98";
8 description = "Wrappers for n-ary tuples with Traversable and Applicative/Monad instances";
11 description = "Wrappers for n-ary tuples with Traversable and Applicative/Monad instances";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/turtle-options.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, HUnit, optional-args, parsec, stdenv, text
1+{ mkDerivation, base, fetchurl, HUnit, optional-args, parsec, text
2, turtle
2, turtle
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "turtle-options";
5 pname = "turtle-options";
6 version = "0.1.0.4";
6 version = "0.1.0.4";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 isLibrary = true;
11 isLibrary = true;
9 isExecutable = true;
12 isExecutable = true;
10 libraryHaskellDepends = [ base optional-args parsec text turtle ];
13 libraryHaskellDepends = [ base optional-args parsec text turtle ];
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/elaye/turtle-options#readme";
16 homepage = "https://github.com/elaye/turtle-options#readme";
14 description = "Collection of command line options and parsers for these options";
17 description = "Collection of command line options and parsers for these options";
15 license = stdenv.lib.licenses.bsd3;
18 license = stdenv.lib.licenses.bsd3;
16−}
19+}
test/golden-test-cases/type-operators.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, ghc-prim, stdenv }:
1+{ mkDerivation, base, fetchurl, ghc-prim }:
2mkDerivation {
2mkDerivation {
3 pname = "type-operators";
3 pname = "type-operators";
4 version = "0.1.0.4";
4 version = "0.1.0.4";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ghc-prim ];
9 libraryHaskellDepends = [ base ghc-prim ];
7 homepage = "https://github.com/Shou/type-operators#readme";
10 homepage = "https://github.com/Shou/type-operators#readme";
8 description = "Various type-level operators";
11 description = "Various type-level operators";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/type-spec.nix.golden+6−3
@@ -1,11 +1,14 @@
1−{ mkDerivation, base, pretty, stdenv }:
1+{ mkDerivation, base, fetchurl, pretty }:
2mkDerivation {
2mkDerivation {
3 pname = "type-spec";
3 pname = "type-spec";
4 version = "0.3.0.1";
4 version = "0.3.0.1";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base pretty ];
9 libraryHaskellDepends = [ base pretty ];
7 testHaskellDepends = [ base ];
10 testHaskellDepends = [ base ];
8 homepage = "https://github.com/sheyll/type-spec#readme";
11 homepage = "https://github.com/sheyll/type-spec#readme";
9 description = "Type Level Specification by Example";
12 description = "Type Level Specification by Example";
10 license = stdenv.lib.licenses.bsd3;
13 license = stdenv.lib.licenses.bsd3;
11−}
14+}
test/golden-test-cases/unicode-show.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, HUnit, QuickCheck, stdenv, test-framework
1+{ mkDerivation, base, fetchurl, HUnit, QuickCheck, test-framework
2, test-framework-hunit, test-framework-quickcheck2
2, test-framework-hunit, test-framework-quickcheck2
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "unicode-show";
5 pname = "unicode-show";
6 version = "0.1.0.2";
6 version = "0.1.0.2";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base ];
11 libraryHaskellDepends = [ base ];
9 testHaskellDepends = [
12 testHaskellDepends = [
10 base HUnit QuickCheck test-framework test-framework-hunit
13 base HUnit QuickCheck test-framework test-framework-hunit
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "http://github.com/nushio3/unicode-show#readme";
16 homepage = "http://github.com/nushio3/unicode-show#readme";
14 description = "print and show in unicode";
17 description = "print and show in unicode";
15 license = stdenv.lib.licenses.bsd3;
18 license = stdenv.lib.licenses.bsd3;
16−}
19+}
test/golden-test-cases/unique.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, ghc-prim, hashable, stdenv }:
1+{ mkDerivation, base, fetchurl, ghc-prim, hashable }:
2mkDerivation {
2mkDerivation {
3 pname = "unique";
3 pname = "unique";
4 version = "0";
4 version = "0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ghc-prim hashable ];
9 libraryHaskellDepends = [ base ghc-prim hashable ];
7 homepage = "http://github.com/ekmett/unique/";
10 homepage = "http://github.com/ekmett/unique/";
8 description = "Fully concurrent unique identifiers";
11 description = "Fully concurrent unique identifiers";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/unix-bytestring.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, stdenv }:
1+{ mkDerivation, base, bytestring, fetchurl }:
2mkDerivation {
2mkDerivation {
3 pname = "unix-bytestring";
3 pname = "unix-bytestring";
4 version = "0.3.7.3";
4 version = "0.3.7.3";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base bytestring ];
9 libraryHaskellDepends = [ base bytestring ];
7 homepage = "http://code.haskell.org/~wren/";
10 homepage = "http://code.haskell.org/~wren/";
8 description = "Unix/Posix-specific functions for ByteStrings";
11 description = "Unix/Posix-specific functions for ByteStrings";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/unlit.nix.golden+6−3
@@ -1,12 +1,15 @@
1−{ mkDerivation, base, directory, stdenv, text }:
1+{ mkDerivation, base, directory, fetchurl, text }:
2mkDerivation {
2mkDerivation {
3 pname = "unlit";
3 pname = "unlit";
4 version = "0.4.0.0";
4 version = "0.4.0.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 isLibrary = true;
9 isLibrary = true;
7 isExecutable = true;
10 isExecutable = true;
8 libraryHaskellDepends = [ base directory text ];
11 libraryHaskellDepends = [ base directory text ];
9 executableHaskellDepends = [ base directory text ];
12 executableHaskellDepends = [ base directory text ];
10 description = "Tool to convert literate code between styles or to code";
13 description = "Tool to convert literate code between styles or to code";
11 license = stdenv.lib.licenses.bsd3;
14 license = stdenv.lib.licenses.bsd3;
12−}
15+}
test/golden-test-cases/utility-ht.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, QuickCheck, stdenv }:
1+{ mkDerivation, base, fetchurl, QuickCheck }:
2mkDerivation {
2mkDerivation {
3 pname = "utility-ht";
3 pname = "utility-ht";
4 version = "0.0.14";
4 version = "0.0.14";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base ];
9 libraryHaskellDepends = [ base ];
7 testHaskellDepends = [ base QuickCheck ];
10 testHaskellDepends = [ base QuickCheck ];
8 description = "Various small helper functions for Lists, Maybes, Tuples, Functions";
11 description = "Various small helper functions for Lists, Maybes, Tuples, Functions";
9 license = stdenv.lib.licenses.bsd3;
12 license = stdenv.lib.licenses.bsd3;
10−}
13+}
test/golden-test-cases/validity-aeson.nix.golden+8−4
@@ -1,10 +1,14 @@
1−{ mkDerivation, aeson, base, stdenv, validity, validity-scientific
1+{ mkDerivation, aeson, base, fetchurl, validity
2−, validity-text, validity-unordered-containers, validity-vector
2+, validity-scientific, validity-text, validity-unordered-containers
3+, validity-vector
3}:
4}:
4mkDerivation {
5mkDerivation {
5 pname = "validity-aeson";
6 pname = "validity-aeson";
6 version = "0.1.0.0";
7 version = "0.1.0.0";
8+ src = fetchurl {
9+ url = "http://example.org/";
7− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
8 libraryHaskellDepends = [
12 libraryHaskellDepends = [
9 aeson base validity validity-scientific validity-text
13 aeson base validity validity-scientific validity-text
10 validity-unordered-containers validity-vector
14 validity-unordered-containers validity-vector
@@ -12,4 +16,4 @@ mkDerivation {
12 homepage = "https://github.com/NorfairKing/validity#readme";
16 homepage = "https://github.com/NorfairKing/validity#readme";
13 description = "Validity instances for aeson";
17 description = "Validity instances for aeson";
14 license = stdenv.lib.licenses.mit;
18 license = stdenv.lib.licenses.mit;
15−}
19+}
test/golden-test-cases/validity-containers.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, containers, stdenv, validity }:
1+{ mkDerivation, base, containers, fetchurl, validity }:
2mkDerivation {
2mkDerivation {
3 pname = "validity-containers";
3 pname = "validity-containers";
4 version = "0.2.0.0";
4 version = "0.2.0.0";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base containers validity ];
9 libraryHaskellDepends = [ base containers validity ];
7 homepage = "https://github.com/NorfairKing/validity#readme";
10 homepage = "https://github.com/NorfairKing/validity#readme";
8 description = "Validity instances for containers";
11 description = "Validity instances for containers";
9 license = stdenv.lib.licenses.mit;
12 license = stdenv.lib.licenses.mit;
10−}
13+}
test/golden-test-cases/vector-mmap.nix.golden+6−3
@@ -1,13 +1,16 @@
1−{ mkDerivation, base, mmap, primitive, QuickCheck, stdenv
1+{ mkDerivation, base, fetchurl, mmap, primitive, QuickCheck
2, temporary, vector
2, temporary, vector
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "vector-mmap";
5 pname = "vector-mmap";
6 version = "0.0.3";
6 version = "0.0.3";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base mmap primitive vector ];
11 libraryHaskellDepends = [ base mmap primitive vector ];
9 testHaskellDepends = [ base QuickCheck temporary vector ];
12 testHaskellDepends = [ base QuickCheck temporary vector ];
10 homepage = "http://github.com/pumpkin/vector-mmap";
13 homepage = "http://github.com/pumpkin/vector-mmap";
11 description = "Memory map immutable and mutable vectors";
14 description = "Memory map immutable and mutable vectors";
12 license = stdenv.lib.licenses.bsd3;
15 license = stdenv.lib.licenses.bsd3;
13−}
16+}
test/golden-test-cases/vivid-supercollider.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, binary, bytestring, cereal, microspec
1+{ mkDerivation, base, binary, bytestring, cereal, fetchurl
2−, QuickCheck, split, stdenv, utf8-string, vivid-osc
2+, microspec, QuickCheck, split, utf8-string, vivid-osc
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "vivid-supercollider";
5 pname = "vivid-supercollider";
6 version = "0.3.0.0";
6 version = "0.3.0.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base binary bytestring cereal split utf8-string vivid-osc
12 base binary bytestring cereal split utf8-string vivid-osc
10 ];
13 ];
@@ -14,4 +17,4 @@ mkDerivation {
14 ];
17 ];
15 description = "Implementation of SuperCollider server specifications";
18 description = "Implementation of SuperCollider server specifications";
16 license = "GPL";
19 license = "GPL";
17−}
20+}
test/golden-test-cases/vty.nix.golden+9−6
@@ -1,15 +1,18 @@
1{ mkDerivation, base, blaze-builder, bytestring, Cabal, containers
1{ mkDerivation, base, blaze-builder, bytestring, Cabal, containers
2−, deepseq, directory, filepath, hashable, HUnit, microlens
2+, deepseq, directory, fetchurl, filepath, hashable, HUnit
3−, microlens-mtl, microlens-th, mtl, parallel, parsec, QuickCheck
3+, microlens, microlens-mtl, microlens-th, mtl, parallel, parsec
4−, quickcheck-assertions, random, smallcheck, stdenv, stm, string-qq
4+, QuickCheck, quickcheck-assertions, random, smallcheck, stm
5−, terminfo, test-framework, test-framework-hunit
5+, string-qq, terminfo, test-framework, test-framework-hunit
6, test-framework-smallcheck, text, transformers, unix, utf8-string
6, test-framework-smallcheck, text, transformers, unix, utf8-string
7, vector
7, vector
8}:
8}:
9mkDerivation {
9mkDerivation {
10 pname = "vty";
10 pname = "vty";
11 version = "5.19.1";
11 version = "5.19.1";
12+ src = fetchurl {
13+ url = "http://example.org/";
12− sha256 = "deadbeef";
14+ sha256 = "abc";
15+ };
13 isLibrary = true;
16 isLibrary = true;
14 isExecutable = true;
17 isExecutable = true;
15 libraryHaskellDepends = [
18 libraryHaskellDepends = [
@@ -30,4 +33,4 @@ mkDerivation {
30 homepage = "https://github.com/jtdaugherty/vty";
33 homepage = "https://github.com/jtdaugherty/vty";
31 description = "A simple terminal UI library";
34 description = "A simple terminal UI library";
32 license = stdenv.lib.licenses.bsd3;
35 license = stdenv.lib.licenses.bsd3;
33−}
36+}
test/golden-test-cases/wai-cors.nix.golden+7−4
@@ -1,12 +1,15 @@
1{ mkDerivation, attoparsec, base, base-unicode-symbols, bytestring
1{ mkDerivation, attoparsec, base, base-unicode-symbols, bytestring
2−, case-insensitive, directory, filepath, http-types, mtl, network
2+, case-insensitive, directory, fetchurl, filepath, http-types, mtl
3−, process, stdenv, tasty, tasty-hunit, text, transformers, wai
3+, network, process, tasty, tasty-hunit, text, transformers, wai
4, wai-extra, wai-websockets, warp, websockets
4, wai-extra, wai-websockets, warp, websockets
5}:
5}:
6mkDerivation {
6mkDerivation {
7 pname = "wai-cors";
7 pname = "wai-cors";
8 version = "0.2.6";
8 version = "0.2.6";
9+ src = fetchurl {
10+ url = "http://example.org/";
9− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
10 enableSeparateDataOutput = true;
13 enableSeparateDataOutput = true;
11 libraryHaskellDepends = [
14 libraryHaskellDepends = [
12 attoparsec base base-unicode-symbols bytestring case-insensitive
15 attoparsec base base-unicode-symbols bytestring case-insensitive
@@ -20,4 +23,4 @@ mkDerivation {
20 homepage = "https://github.com/larskuhtz/wai-cors";
23 homepage = "https://github.com/larskuhtz/wai-cors";
21 description = "CORS for WAI";
24 description = "CORS for WAI";
22 license = stdenv.lib.licenses.mit;
25 license = stdenv.lib.licenses.mit;
23−}
26+}
test/golden-test-cases/wai-middleware-auth.nix.golden+9−6
@@ -1,15 +1,18 @@
1{ mkDerivation, aeson, base, base64-bytestring, binary
1{ mkDerivation, aeson, base, base64-bytestring, binary
2, blaze-builder, blaze-html, bytestring, case-insensitive, cereal
2, blaze-builder, blaze-html, bytestring, case-insensitive, cereal
3−, clientsession, cookie, exceptions, hoauth2, http-client
3+, clientsession, cookie, exceptions, fetchurl, hoauth2, http-client
4, http-client-tls, http-conduit, http-reverse-proxy, http-types
4, http-client-tls, http-conduit, http-reverse-proxy, http-types
5−, optparse-simple, regex-posix, safe-exceptions, shakespeare
5+, optparse-simple, regex-posix, safe-exceptions, shakespeare, text
6−, stdenv, text, unix-compat, unordered-containers, uri-bytestring
6+, unix-compat, unordered-containers, uri-bytestring, vault, wai
7−, vault, wai, wai-app-static, wai-extra, warp, yaml
7+, wai-app-static, wai-extra, warp, yaml
8}:
8}:
9mkDerivation {
9mkDerivation {
10 pname = "wai-middleware-auth";
10 pname = "wai-middleware-auth";
11 version = "0.1.2.1";
11 version = "0.1.2.1";
12+ src = fetchurl {
13+ url = "http://example.org/";
12− sha256 = "deadbeef";
14+ sha256 = "abc";
15+ };
13 isLibrary = true;
16 isLibrary = true;
14 isExecutable = true;
17 isExecutable = true;
15 libraryHaskellDepends = [
18 libraryHaskellDepends = [
@@ -25,4 +28,4 @@ mkDerivation {
25 ];
28 ];
26 description = "Authentication middleware that secures WAI application";
29 description = "Authentication middleware that secures WAI application";
27 license = stdenv.lib.licenses.mit;
30 license = stdenv.lib.licenses.mit;
28−}
31+}
test/golden-test-cases/wai-middleware-caching-redis.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, blaze-builder, bytestring, hedis, http-types
1+{ mkDerivation, base, blaze-builder, bytestring, fetchurl, hedis
2−, stdenv, text, wai, wai-middleware-caching
2+, http-types, text, wai, wai-middleware-caching
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "wai-middleware-caching-redis";
5 pname = "wai-middleware-caching-redis";
6 version = "0.2.0.0";
6 version = "0.2.0.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base blaze-builder bytestring hedis http-types text wai
12 base blaze-builder bytestring hedis http-types text wai
10 wai-middleware-caching
13 wai-middleware-caching
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "http://github.com/yogsototh/wai-middleware-caching/tree/master/wai-middleware-caching-redis#readme";
16 homepage = "http://github.com/yogsototh/wai-middleware-caching/tree/master/wai-middleware-caching-redis#readme";
14 description = "Cache Wai Middleware using Redis backend";
17 description = "Cache Wai Middleware using Redis backend";
15 license = stdenv.lib.licenses.bsd3;
18 license = stdenv.lib.licenses.bsd3;
16−}
19+}
test/golden-test-cases/wai-middleware-prometheus.nix.golden+6−3
@@ -1,10 +1,13 @@
1{ mkDerivation, base, bytestring, clock, data-default, doctest
1{ mkDerivation, base, bytestring, clock, data-default, doctest
2−, http-types, prometheus-client, stdenv, text, wai
2+, fetchurl, http-types, prometheus-client, text, wai
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "wai-middleware-prometheus";
5 pname = "wai-middleware-prometheus";
6 version = "0.3.0";
6 version = "0.3.0";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base bytestring clock data-default http-types prometheus-client
12 base bytestring clock data-default http-types prometheus-client
10 text wai
13 text wai
@@ -13,4 +16,4 @@ mkDerivation {
13 homepage = "https://github.com/fimad/prometheus-haskell";
16 homepage = "https://github.com/fimad/prometheus-haskell";
14 description = "WAI middlware for exposing http://prometheus.io metrics.";
17 description = "WAI middlware for exposing http://prometheus.io metrics.";
15 license = stdenv.lib.licenses.asl20;
18 license = stdenv.lib.licenses.asl20;
16−}
19+}
test/golden-test-cases/warp.nix.golden+10−7
@@ -1,15 +1,18 @@
1{ mkDerivation, array, async, auto-update, base, blaze-builder
1{ mkDerivation, array, async, auto-update, base, blaze-builder
2, bytestring, bytestring-builder, case-insensitive, containers
2, bytestring, bytestring-builder, case-insensitive, containers
3−, criterion, directory, doctest, ghc-prim, hashable, hspec, HTTP
3+, criterion, directory, doctest, fetchurl, ghc-prim, hashable
4−, http-date, http-types, http2, HUnit, iproute, lifted-base
4+, hspec, HTTP, http-date, http-types, http2, HUnit, iproute
5−, network, process, QuickCheck, silently, simple-sendfile, stdenv
5+, lifted-base, network, process, QuickCheck, silently
6−, stm, streaming-commons, text, time, transformers, unix
6+, simple-sendfile, stm, streaming-commons, text, time, transformers
7−, unix-compat, vault, wai, word8
7+, unix, unix-compat, vault, wai, word8
8}:
8}:
9mkDerivation {
9mkDerivation {
10 pname = "warp";
10 pname = "warp";
11 version = "3.2.13";
11 version = "3.2.13";
12+ src = fetchurl {
13+ url = "http://example.org/";
12− sha256 = "deadbeef";
14+ sha256 = "abc";
15+ };
13 libraryHaskellDepends = [
16 libraryHaskellDepends = [
14 array async auto-update base blaze-builder bytestring
17 array async auto-update base blaze-builder bytestring
15 bytestring-builder case-insensitive containers ghc-prim hashable
18 bytestring-builder case-insensitive containers ghc-prim hashable
@@ -31,4 +34,4 @@ mkDerivation {
31 homepage = "http://github.com/yesodweb/wai";
34 homepage = "http://github.com/yesodweb/wai";
32 description = "A fast, light-weight web server for WAI applications";
35 description = "A fast, light-weight web server for WAI applications";
33 license = stdenv.lib.licenses.mit;
36 license = stdenv.lib.licenses.mit;
34−}
37+}
test/golden-test-cases/weigh.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, deepseq, mtl, process, split, stdenv
1+{ mkDerivation, base, deepseq, fetchurl, mtl, process, split
2, template-haskell, temporary
2, template-haskell, temporary
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "weigh";
5 pname = "weigh";
6 version = "0.0.7";
6 version = "0.0.7";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base deepseq mtl process split template-haskell temporary
12 base deepseq mtl process split template-haskell temporary
10 ];
13 ];
@@ -12,4 +15,4 @@ mkDerivation {
12 homepage = "https://github.com/fpco/weigh#readme";
15 homepage = "https://github.com/fpco/weigh#readme";
13 description = "Measure allocations of a Haskell functions/values";
16 description = "Measure allocations of a Haskell functions/values";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
test/golden-test-cases/xml-hamlet.nix.golden+7−4
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, containers, hspec, HUnit, parsec, shakespeare
1+{ mkDerivation, base, containers, fetchurl, hspec, HUnit, parsec
2−, stdenv, template-haskell, text, xml-conduit
2+, shakespeare, template-haskell, text, xml-conduit
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "xml-hamlet";
5 pname = "xml-hamlet";
6 version = "0.4.1.1";
6 version = "0.4.1.1";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base containers parsec shakespeare template-haskell text
12 base containers parsec shakespeare template-haskell text
10 xml-conduit
13 xml-conduit
@@ -16,4 +19,4 @@ mkDerivation {
16 homepage = "http://www.yesodweb.com/";
19 homepage = "http://www.yesodweb.com/";
17 description = "Hamlet-style quasiquoter for XML content";
20 description = "Hamlet-style quasiquoter for XML content";
18 license = stdenv.lib.licenses.bsd3;
21 license = stdenv.lib.licenses.bsd3;
19−}
22+}
test/golden-test-cases/xmonad-contrib.nix.golden+8−4
@@ -1,11 +1,15 @@
1{ mkDerivation, base, bytestring, containers, directory
1{ mkDerivation, base, bytestring, containers, directory
2−, extensible-exceptions, filepath, mtl, old-locale, old-time
2+, extensible-exceptions, fetchurl, filepath, mtl, old-locale
3−, process, random, stdenv, unix, utf8-string, X11, X11-xft, xmonad
3+, old-time, process, random, unix, utf8-string, X11, X11-xft
4+, xmonad
4}:
5}:
5mkDerivation {
6mkDerivation {
6 pname = "xmonad-contrib";
7 pname = "xmonad-contrib";
7 version = "0.13";
8 version = "0.13";
9+ src = fetchurl {
10+ url = "http://example.org/";
8− sha256 = "deadbeef";
11+ sha256 = "abc";
12+ };
9 libraryHaskellDepends = [
13 libraryHaskellDepends = [
10 base bytestring containers directory extensible-exceptions filepath
14 base bytestring containers directory extensible-exceptions filepath
11 mtl old-locale old-time process random unix utf8-string X11 X11-xft
15 mtl old-locale old-time process random unix utf8-string X11 X11-xft
@@ -14,4 +18,4 @@ mkDerivation {
14 homepage = "http://xmonad.org/";
18 homepage = "http://xmonad.org/";
15 description = "Third party extensions for xmonad";
19 description = "Third party extensions for xmonad";
16 license = stdenv.lib.licenses.bsd3;
20 license = stdenv.lib.licenses.bsd3;
17−}
21+}
test/golden-test-cases/yahoo-finance-api.nix.golden+7−4
@@ -1,11 +1,14 @@
1−{ mkDerivation, aeson, base, doctest, either, Glob, hspec
1+{ mkDerivation, aeson, base, doctest, either, fetchurl, Glob, hspec
2, http-api-data, http-client, http-client-tls, mtl, safe, servant
2, http-api-data, http-client, http-client-tls, mtl, safe, servant
3−, servant-client, stdenv, text, time, transformers, vector
3+, servant-client, text, time, transformers, vector
4}:
4}:
5mkDerivation {
5mkDerivation {
6 pname = "yahoo-finance-api";
6 pname = "yahoo-finance-api";
7 version = "0.2.0.3";
7 version = "0.2.0.3";
8+ src = fetchurl {
9+ url = "http://example.org/";
8− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
9 libraryHaskellDepends = [
12 libraryHaskellDepends = [
10 aeson base either http-api-data http-client mtl servant
13 aeson base either http-api-data http-client mtl servant
11 servant-client text time transformers vector
14 servant-client text time transformers vector
@@ -17,4 +20,4 @@ mkDerivation {
17 homepage = "https://github.com/cdepillabout/yahoo-finance-api";
20 homepage = "https://github.com/cdepillabout/yahoo-finance-api";
18 description = "Read quotes from Yahoo Finance API";
21 description = "Read quotes from Yahoo Finance API";
19 license = stdenv.lib.licenses.bsd3;
22 license = stdenv.lib.licenses.bsd3;
20−}
23+}
test/golden-test-cases/yesod-form-bootstrap4.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, classy-prelude-yesod, stdenv, yesod-form }:
1+{ mkDerivation, base, classy-prelude-yesod, fetchurl, yesod-form }:
2mkDerivation {
2mkDerivation {
3 pname = "yesod-form-bootstrap4";
3 pname = "yesod-form-bootstrap4";
4 version = "0.1.0.2";
4 version = "0.1.0.2";
5+ src = fetchurl {
6+ url = "http://example.org/";
5− sha256 = "deadbeef";
7+ sha256 = "abc";
8+ };
6 libraryHaskellDepends = [ base classy-prelude-yesod yesod-form ];
9 libraryHaskellDepends = [ base classy-prelude-yesod yesod-form ];
7 homepage = "https://github.com/ncaq/yesod-form-bootstrap4#readme";
10 homepage = "https://github.com/ncaq/yesod-form-bootstrap4#readme";
8 description = "renderBootstrap4";
11 description = "renderBootstrap4";
9 license = stdenv.lib.licenses.mit;
12 license = stdenv.lib.licenses.mit;
10−}
13+}
test/golden-test-cases/yesod-gitrepo.nix.golden+8−4
@@ -1,10 +1,14 @@
1−{ mkDerivation, base, directory, enclosed-exceptions, http-types
1+{ mkDerivation, base, directory, enclosed-exceptions, fetchurl
2−, lifted-base, process, stdenv, temporary, text, wai, yesod-core
2+, http-types, lifted-base, process, temporary, text, wai
3+, yesod-core
3}:
4}:
4mkDerivation {
5mkDerivation {
5 pname = "yesod-gitrepo";
6 pname = "yesod-gitrepo";
6 version = "0.2.1.0";
7 version = "0.2.1.0";
8+ src = fetchurl {
9+ url = "http://example.org/";
7− sha256 = "deadbeef";
10+ sha256 = "abc";
11+ };
8 libraryHaskellDepends = [
12 libraryHaskellDepends = [
9 base directory enclosed-exceptions http-types lifted-base process
13 base directory enclosed-exceptions http-types lifted-base process
10 temporary text wai yesod-core
14 temporary text wai yesod-core
@@ -12,4 +16,4 @@ mkDerivation {
12 homepage = "https://github.com/snoyberg/yesod-gitrepo";
16 homepage = "https://github.com/snoyberg/yesod-gitrepo";
13 description = "Host content provided by a Git repo";
17 description = "Host content provided by a Git repo";
14 license = stdenv.lib.licenses.mit;
18 license = stdenv.lib.licenses.mit;
15−}
19+}
test/golden-test-cases/yesod-recaptcha2.nix.golden+6−3
@@ -1,14 +1,17 @@
1−{ mkDerivation, base, classy-prelude-yesod, http-conduit, stdenv
1+{ mkDerivation, base, classy-prelude-yesod, fetchurl, http-conduit
2, yesod-auth
2, yesod-auth
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "yesod-recaptcha2";
5 pname = "yesod-recaptcha2";
6 version = "0.2.3";
6 version = "0.2.3";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [
11 libraryHaskellDepends = [
9 base classy-prelude-yesod http-conduit yesod-auth
12 base classy-prelude-yesod http-conduit yesod-auth
10 ];
13 ];
11 homepage = "https://github.com/ncaq/yesod-recaptcha2#readme";
14 homepage = "https://github.com/ncaq/yesod-recaptcha2#readme";
12 description = "yesod recaptcha2";
15 description = "yesod recaptcha2";
13 license = stdenv.lib.licenses.mit;
16 license = stdenv.lib.licenses.mit;
14−}
17+}
test/golden-test-cases/zlib.nix.golden+6−3
@@ -1,10 +1,13 @@
1−{ mkDerivation, base, bytestring, QuickCheck, stdenv, tasty
1+{ mkDerivation, base, bytestring, fetchurl, QuickCheck, tasty
2, tasty-hunit, tasty-quickcheck, zlib
2, tasty-hunit, tasty-quickcheck, zlib
3}:
3}:
4mkDerivation {
4mkDerivation {
5 pname = "zlib";
5 pname = "zlib";
6 version = "0.6.1.2";
6 version = "0.6.1.2";
7+ src = fetchurl {
8+ url = "http://example.org/";
7− sha256 = "deadbeef";
9+ sha256 = "abc";
10+ };
8 libraryHaskellDepends = [ base bytestring ];
11 libraryHaskellDepends = [ base bytestring ];
9 librarySystemDepends = [ zlib ];
12 librarySystemDepends = [ zlib ];
10 testHaskellDepends = [
13 testHaskellDepends = [
@@ -12,4 +15,4 @@ mkDerivation {
12 ];
15 ];
13 description = "Compression and decompression in the gzip and zlib formats";
16 description = "Compression and decompression in the gzip and zlib formats";
14 license = stdenv.lib.licenses.bsd3;
17 license = stdenv.lib.licenses.bsd3;
15−}
18+}
update-nixpkgs.sh+1−1
@@ -31,7 +31,7 @@ hackage=$(git rev-parse --verify HEAD)
31cd ..
31cd ..
32
32
33# This command needs a recent development version of cabal-install. I don't
33# This command needs a recent development version of cabal-install. I don't
34−# think this works properly in version 2.0.0.0 already.
34+# think this works properly in verson 2.0.0.0 already.
35cabal -v0 new-run hackage2nix -- --nixpkgs="$PWD/nixpkgs" +RTS -M4G -RTS
35cabal -v0 new-run hackage2nix -- --nixpkgs="$PWD/nixpkgs" +RTS -M4G -RTS
36
36
37cd nixpkgs
37cd nixpkgs
update-stackage.sh+7−13
@@ -2,14 +2,11 @@
2
2
3set -eu -o pipefail
3set -eu -o pipefail
4
4
5−cd "$(dirname "$0")"
5+tmpfile=$(mktemp "stackage-update.XXXXXXX")
6+trap "rm $tmpfile" 0
6
7
7−tmpfile=$(mktemp "update-stackage.XXXXXXX")
8−# shellcheck disable=SC2064
9−trap "rm ${tmpfile} ${tmpfile}.new" 0
10−
11−curl -L -s "https://stackage.org/lts/cabal.config" >"$tmpfile"
8+curl -L -s "https://www.stackage.org/lts/cabal.config" >"$tmpfile"
12−version=$(sed -rn "s/^--.*http:..(www.)?stackage.org.snapshot.lts-//p" "$tmpfile")
9+version=$(sed -n "s/^--.*http:..www.stackage.org.snapshot.lts-//p" "$tmpfile")
13
10
14# Create a simple yaml version of the file.
11# Create a simple yaml version of the file.
15sed -r \
12sed -r \
@@ -19,13 +16,12 @@ sed -r \
19 -e 's|,$||' \
16 -e 's|,$||' \
20 -e '/installed$/d' \
17 -e '/installed$/d' \
21 -e '/^$/d' \
18 -e '/^$/d' \
22− < "${tmpfile}" | sort --ignore-case >"${tmpfile}.new"
19+ -i "$tmpfile"
23
20
24# Drop restrictions on some tools where we always want the latest version.
21# Drop restrictions on some tools where we always want the latest version.
25sed -r \
22sed -r \
26 -e '/ cabal-install /d' \
23 -e '/ cabal-install /d' \
27 -e '/ cabal2nix /d' \
24 -e '/ cabal2nix /d' \
28− -e '/ cabal2spec /d' \
29 -e '/ distribution-nixpkgs /d' \
25 -e '/ distribution-nixpkgs /d' \
30 -e '/ git-annex /d' \
26 -e '/ git-annex /d' \
31 -e '/ hindent /d' \
27 -e '/ hindent /d' \
@@ -36,15 +32,13 @@ sed -r \
36 -e '/ jailbreak-cabal /d' \
32 -e '/ jailbreak-cabal /d' \
37 -e '/ json-autotype/d' \
33 -e '/ json-autotype/d' \
38 -e '/ language-nix /d' \
34 -e '/ language-nix /d' \
39− -e '/ shake /d' \
40 -e '/ ShellCheck /d' \
35 -e '/ ShellCheck /d' \
41 -e '/ stack /d' \
36 -e '/ stack /d' \
42 -e '/ weeder /d' \
37 -e '/ weeder /d' \
43− < "${tmpfile}.new" > "${tmpfile}"
38+ -i "$tmpfile"
44
39
45# Drop the previous configuration ...
40# Drop the previous configuration ...
46−# shellcheck disable=SC1004
47−sed -e '/ # LTS Haskell/,/^$/c \TODO\
41+sed -e '/# LTS Haskell/,/^$/c \TODO\
48' -i nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
42' -i nixpkgs/pkgs/development/haskell-modules/configuration-hackage2nix.yaml
49
43
50# ... and replace it with the new one.
44# ... and replace it with the new one.