Nigthlies
Requirements
File naming and rotation
- Every year has its own file
ghcup-nightlies-<year>-0.0.7.yaml
- The file
ghcup-nightlies-0.0.7.yaml
points to the currently running year (either as a duplicate or a symlink in git)
Bindist storage/fetching
Bindists should be stored on a proper download server. If Gitlab is used, the URLs should follow the stable gitlab REST API as outlined here: https://docs.gitlab.com/ee/api/job_artifacts.html
File Format
GHCup introduced:
- two new tags
Nightly
andLatestNightly
(compare withPrerelease
andLatestPrerelease
here: https://github.com/haskell/ghcup-metadata/blob/develop/ghcup-prereleases-0.0.7.yaml)- all nightlies except the latest one use the tag
Nightly
- the latest nightly uses the tag
LatestNightly
(and only that one)
- all nightlies except the latest one use the tag
- a new key
viReleaseDay
(on the same level asviTags
), where the value is the date of the nightly release, e.g.2022-12-31
The file should start with the following content:
globalTools:
ShimGen:
dlUri: https://downloads.haskell.org/~ghcup/shimgen/shim-2.exe
dlHash: 7c55e201f71860c5babea886007c8fa44b861abf50d1c07e5677eb0bda387a70
toolRequirements: {}
ghcupDownloads:
GHC:
And then followed by the actual entries. No other tools or non-nightly versions should be part of the file.
Two example entries are:
9.6.0.20221230:
viArch:
A_64:
Darwin:
unknown_versioning:
dlHash: 3dcca5e83795b5b7c0af636216dc2ef9c40c70fb368bc7feb2a74921c81445ff
dlSubdir: ghc-9.6.0.20221230-x86_64-apple-darwin
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20221230/ghc-9.6.0.20221230-x86_64-apple-darwin.tar.xz
Linux_UnknownLinux:
unknown_versioning:
dlHash: 97172efe434bfe27c112f16b3ab3708c1fb3defb5c1d1319c738c7afea95901d
dlSubdir: ghc-9.6.0.20221230-x86_64-unknown-linux
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20221230/ghc-9.6.0.20221230-x86_64-rocky8-linux.tar.xz
Windows:
unknown_versioning:
dlHash: 6121a889839d8b409f082169365bbfb6ed9.6.0.20221230f6ff0531d577ef7c2a9a417fb
dlSubdir: ghc-9.6.0.20221230-x86_64-unknown-mingw32
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20221230/ghc-9.6.0.20221230-x86_64-unknown-mingw32.tar.xz
A_ARM64:
Darwin:
unknown_versioning:
dlHash: 1729e8cec960879c620917d935a673e54197fa2ee87c62e45c44fad2e522960a
dlSubdir: ghc-9.6.0.20221230-aarch64-apple-darwin
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20221230/ghc-9.6.0.20221230-aarch64-apple-darwin.tar.xz
Linux_UnknownLinux:
unknown_versioning:
dlHash: 0fd57fdc9e7b9c0850350492deea1c00016d751c89c11478cfe6b6038da0c6db
dlSubdir: ghc-9.6.0.20221230-aarch64-unknown-linux
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20221230/ghc-9.6.0.20221230-aarch64-deb10-linux.tar.xz
viChangeLog: https://downloads.haskell.org/~ghc/9.6.0.20221230/docs/users_guide/9.6.0.20221230-notes.html
viReleaseDay: 2022-12-30
viSourceDL:
dlHash: fe5ac909cb8bb087e235de97fa63aff47a8ae650efaa37a2140f4780e21f34cb
dlSubdir: ghc-9.6.0.20221230
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20221230/ghc-9.6.0.20221230-src.tar.xz
viTags:
- Nightly
- base-4.18.0.0
viTestDL:
dlHash: 8bfa74d102da570cb87fbbc3465c7f778a4e6dc76606fef80207de7e8b64114f
dlSubdir: ghc-9.6.0.20221230
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20221230/ghc-9.6.0.20221230-testsuite.tar.xz
9.6.0.20221231:
viArch:
A_64:
Darwin:
unknown_versioning:
dlHash: 3dcca5e83795b5b7c0af636216dc2ef9c40c70fb368bc7feb2a74921c81445ff
dlSubdir: ghc-9.6.0.20221231-x86_64-apple-darwin
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20221231/ghc-9.6.0.20221231-x86_64-apple-darwin.tar.xz
Linux_UnknownLinux:
unknown_versioning:
dlHash: 97172efe434bfe27c112f16b3ab3708c1fb3defb5c1d1319c738c7afea95901d
dlSubdir: ghc-9.6.0.20221231-x86_64-unknown-linux
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20221231/ghc-9.6.0.20221231-x86_64-rocky8-linux.tar.xz
Windows:
unknown_versioning:
dlHash: 6121a889839d8b409f082169365bbfb6ed9.6.0.20221231f6ff0531d577ef7c2a9a417fb
dlSubdir: ghc-9.6.0.20221231-x86_64-unknown-mingw32
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20221231/ghc-9.6.0.20221231-x86_64-unknown-mingw32.tar.xz
A_ARM64:
Darwin:
unknown_versioning:
dlHash: 1729e8cec960879c620917d935a673e54197fa2ee87c62e45c44fad2e522960a
dlSubdir: ghc-9.6.0.20221231-aarch64-apple-darwin
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20221231/ghc-9.6.0.20221231-aarch64-apple-darwin.tar.xz
Linux_UnknownLinux:
unknown_versioning:
dlHash: 0fd57fdc9e7b9c0850350492deea1c00016d751c89c11478cfe6b6038da0c6db
dlSubdir: ghc-9.6.0.20221231-aarch64-unknown-linux
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20221231/ghc-9.6.0.20221231-aarch64-deb10-linux.tar.xz
viChangeLog: https://downloads.haskell.org/~ghc/9.6.0.20221231/docs/users_guide/9.6.0.20221231-notes.html
viReleaseDay: 2022-12-31
viSourceDL:
dlHash: fe5ac909cb8bb087e235de97fa63aff47a8ae650efaa37a2140f4780e21f34cb
dlSubdir: ghc-9.6.0.20221231
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20221231/ghc-9.6.0.20221231-src.tar.xz
viTags:
- LatestNightly
- base-4.18.0.0
viTestDL:
dlHash: 8bfa74d102da570cb87fbbc3465c7f778a4e6dc76606fef80207de7e8b64114f
dlSubdir: ghc-9.6.0.20221231
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20221231/ghc-9.6.0.20221231-testsuite.tar.xz
References
- ghcup github issue: https://github.com/haskell/ghcup-hs/issues/824
- ghcup PR: https://github.com/haskell/ghcup-hs/pull/825
- example metadata for an entire year: https://gist.github.com/hasufell/ad710e5218969b15b39a1c3eaba2ccfd
Edited by Julian Ospald