···437437 <> Text.pack (formatTime defaultTimeLocale "%Y-%m-%d %H:%M UTC" fetchTime)
438438 <> "*"
439439 ]
440440- brokenLine (name, rdeps) = "[" <> name <> "](https://search.nixos.org/packages?channel=unstable&show=haskellPackages." <> name <> "&query=haskellPackages." <> name <> ") :arrow_heading_up: " <> Text.pack (show rdeps)
440440+ brokenLine (name, rdeps) = "[" <> name <> "](https://packdeps.haskellers.com/reverse/" <> name <> ") :arrow_heading_up: " <> Text.pack (show rdeps) <> " "
441441 numSummary = statusToNumSummary summary
442442 jobsByState predicate = Map.filter (predicate . worstState) summary
443443 worstState = foldl' min Success . fmap state . summaryBuilds
···464464 if' (isNothing mergeableJob) "No `mergeable` job found." <>
465465 if' (isNothing maintainedJob) "No `maintained` job found." <>
466466 if' (Unfinished > maybe Success worstState mergeableJob) "`mergeable` jobset failed." <>
467467- if' (outstandingJobs (Platform "x86_64-linux") > 100) "Too much outstanding jobs on x86_64-linux." <>
468468- if' (outstandingJobs (Platform "aarch64-linux") > 100) "Too much outstanding jobs on aarch64-linux."
467467+ if' (outstandingJobs (Platform "x86_64-linux") > 100) "Too many outstanding jobs on x86_64-linux." <>
468468+ if' (outstandingJobs (Platform "aarch64-linux") > 100) "Too many outstanding jobs on aarch64-linux."
469469 if' p e = if p then [e] else mempty
470470 outstandingJobs platform | Table m <- numSummary = Map.findWithDefault 0 (platform, Unfinished) m
471471 maintainedJob = Map.lookup "maintained" summary
+7-3
maintainers/scripts/haskell/merge-and-open-pr.sh
···7575echo "Merging https://github.com/NixOS/nixpkgs/pull/${curr_haskell_updates_pr_num}..."
7676gh pr merge --repo NixOS/nixpkgs --merge "$curr_haskell_updates_pr_num"
77777878+# Update the list of Haskell package versions in NixOS on Hackage.
7979+echo "Updating list of Haskell package versions in NixOS on Hackage..."
8080+./maintainers/scripts/haskell/upload-nixos-package-list-to-hackage.sh
8181+7882# Update stackage, Hackage hashes, and regenerate Haskell package set
7983echo "Updating Stackage..."
8084./maintainers/scripts/haskell/update-stackage.sh --do-commit
···8488./maintainers/scripts/haskell/regenerate-hackage-packages.sh --do-commit
85898690# Push these new commits to the haskell-updates branch
8787-echo "Pushing commits just created to the haskell-updates branch"
9191+echo "Pushing commits just created to the remote haskell-updates branch..."
8892git push
89939094# Open new PR
···93979498This PR is the regular merge of the \`haskell-updates\` branch into \`master\`.
95999696-This branch is being continually built and tested by hydra at https://hydra.nixos.org/jobset/nixpkgs/haskell-updates.
100100+This branch is being continually built and tested by hydra at https://hydra.nixos.org/jobset/nixpkgs/haskell-updates. You may be able to find an up-to-date Hydra build report at [cdepillabout/nix-haskell-updates-status](https://github.com/cdepillabout/nix-haskell-updates-status).
9710198102We roughly aim to merge these \`haskell-updates\` PRs at least once every two weeks. See the @NixOS/haskell [team calendar](https://cloud.maralorn.de/apps/calendar/p/Mw5WLnzsP7fC4Zky) for who is currently in charge of this branch.
99103···114118EOF
115119)
116120117117-echo "Opening a PR for the next haskell-updates merge cycle"
121121+echo "Opening a PR for the next haskell-updates merge cycle..."
118122gh pr create --repo NixOS/nixpkgs --base master --head haskell-updates --title "haskellPackages: update stackage and hackage" --body "$new_pr_body"
···206206 script uses the `gh` command to merge the current PR and open a new one.
207207 You should only need to do this once.
208208209209+ This command can be used to authenticate:
210210+209211 ```console
210212 $ gh auth login
211213 ```
212214215215+ This command can be used to confirm that you have already authenticated:
216216+217217+ ```console
218218+ $ gh auth status
219219+ ```
220220+221221+1. Make sure you have setup your `~/.cabal/config` file for authentication
222222+ for uploading the NixOS package versions to Hackage. See the following
223223+ section for details on how to do this.
224224+2132251. Make sure you have correctly marked packages broken. One of the previous
214226 sections explains how to do this.
227227+228228+ In short:
229229+230230+ ```console
231231+ $ ./maintainers/scripts/haskell/hydra-report.hs get-report
232232+ $ ./maintainers/scripts/haskell/hydra-report.hs mark-broken-list
233233+ $ ./maintainers/scripts/haskell/mark-broken.sh --do-commit
234234+ ```
2152352162361. Merge `master` into `haskell-updates` and make sure to push to the
217237 `haskell-updates` branch. (This can be skipped if `master` has recently
···237257 `origin/haskell-updates`.
238258239259 1. Merges the currently open `haskell-updates` PR.
260260+261261+ 1. Updates the version of Haskell packages in NixOS on Hackage.
240262241263 1. Updates Stackage and Hackage snapshots. Regenerates the Haskell package set.
242264
···6969 ];
70707171 meta = with lib; {
7272- homepage = "http://www.desmume.com";
7272+ homepage = "https://www.github.com/TASVideos/desmume/";
7373 description = "An open-source Nintendo DS emulator";
7474 longDescription = ''
7575- DeSmuME is a freeware emulator for the NDS roms & Nintendo DS
7676- Lite games created by YopYop156. It supports many homebrew nds
7777- rom demoes as well as a handful of Wireless Multiboot demo nds
7878- roms. DeSmuME is also able to emulate nearly all of the
7575+ DeSmuME is a freeware emulator for the NDS roms & Nintendo DS Lite games
7676+ created by YopYop156 and now maintained by the TASvideos team. It supports
7777+ many homebrew nds rom demoes as well as a handful of Wireless Multiboot
7878+ demo nds roms. DeSmuME is also able to emulate nearly all of the
7979 commercial nds rom titles which other DS Emulators aren't.
8080 '';
8181 license = licenses.gpl2Plus;
···8484 };
8585}
8686# TODO: investigate the patches
8787+# TODO: investigate other platforms
···7171 };
72727373 ghc884 = callPackage ../development/compilers/ghc/8.8.4.nix {
7474- # the oldest ghc with aarch64-darwin support is 8.10.5
7575- bootPkgs = if stdenv.isDarwin && stdenv.isAarch64 then
7676- packages.ghc8107BinaryMinimal
7474+ bootPkgs =
7775 # aarch64 ghc865Binary gets SEGVs due to haskell#15449 or similar
7876 # Musl bindists do not exist for ghc 8.6.5, so we use 8.10.* for them
7979- else if stdenv.isAarch64 || stdenv.targetPlatform.isMusl then
7777+ if stdenv.isAarch64 || stdenv.hostPlatform.isMusl then
8078 packages.ghc8102BinaryMinimal
8179 else
8280 packages.ghc865Binary;
···8583 llvmPackages = pkgs.llvmPackages_7;
8684 };
8785 ghc8107 = callPackage ../development/compilers/ghc/8.10.7.nix {
8888- # the oldest ghc with aarch64-darwin support is 8.10.5
8989- bootPkgs = if stdenv.isDarwin && stdenv.isAarch64 then
9090- packages.ghc8107BinaryMinimal
8686+ bootPkgs =
9187 # aarch64 ghc865Binary gets SEGVs due to haskell#15449 or similar
8888+ # the oldest ghc with aarch64-darwin support is 8.10.5
9289 # Musl bindists do not exist for ghc 8.6.5, so we use 8.10.* for them
9393- else if stdenv.isAarch64 || stdenv.isAarch32 || stdenv.targetPlatform.isMusl then
9494- packages.ghc8102BinaryMinimal
9090+ if stdenv.isAarch64 || stdenv.isAarch32 then
9191+ packages.ghc8107BinaryMinimal
9592 else
9696- packages.ghc865Binary;
9393+ packages.ghc8107Binary;
9794 inherit (buildPackages.python3Packages) sphinx;
9895 # Need to use apple's patched xattr until
9996 # https://github.com/xattr/xattr/issues/44 and
···103100 llvmPackages = pkgs.llvmPackages_9;
104101 };
105102 ghc901 = callPackage ../development/compilers/ghc/9.0.1.nix {
106106- # the oldest ghc with aarch64-darwin support is 8.10.5
107107- bootPkgs = if stdenv.isDarwin && stdenv.isAarch64 then
103103+ bootPkgs =
104104+ # aarch64 ghc8107Binary exceeds max output size on hydra
105105+ # the oldest ghc with aarch64-darwin support is 8.10.5
106106+ if stdenv.isAarch64 || stdenv.isAarch32 then
108107 packages.ghc8107BinaryMinimal
109109- # aarch64 ghc8102Binary exceeds max output size on hydra
110110- else if stdenv.isAarch64 || stdenv.isAarch32 then
111111- packages.ghc8102BinaryMinimal
112108 else
113113- packages.ghc8102Binary;
109109+ packages.ghc8107Binary;
114110 inherit (buildPackages.python3Packages) sphinx;
115111 buildLlvmPackages = buildPackages.llvmPackages_10;
116112 llvmPackages = pkgs.llvmPackages_10;
117113 };
118114 ghc921 = callPackage ../development/compilers/ghc/9.2.1.nix {
119119- # aarch64 ghc8102Binary exceeds max output size on hydra
120120- bootPkgs = if stdenv.isAarch64 || stdenv.isAarch32 then
121121- packages.ghc8102BinaryMinimal
115115+ bootPkgs =
116116+ # aarch64 ghc8107Binary exceeds max output size on hydra
117117+ if stdenv.isAarch64 || stdenv.isAarch32 then
118118+ packages.ghc8107BinaryMinimal
122119 else
123123- packages.ghc8102Binary;
120120+ packages.ghc8107Binary;
124121 inherit (buildPackages.python3Packages) sphinx;
125122 # Need to use apple's patched xattr until
126123 # https://github.com/xattr/xattr/issues/44 and