c846e52acb
Cleanup during unpack failures as well
2021-10-10 20:48:33 +02:00
c4ab59f7bf
Make sure to always ass GHC env var, fixes #258
2021-10-03 11:38:53 +02:00
c19dd5ee8b
Implement ghcup gc
command
...
Fixes #241
2021-09-25 22:29:02 +02:00
6ae3bfe395
Merge branch 'fix-hls-build'
2021-09-25 19:21:19 +02:00
8e8198546f
Fix HLS rebuilds
2021-09-25 18:25:03 +02:00
9497e310ca
Improve cli interface with partial versions
...
Fixes #243
2021-09-25 17:13:11 +02:00
15dd810d67
Get rid of concurrent-output
...
Also improve some NO_COLOR foo.
2021-09-24 23:49:50 +02:00
aece305003
Move logger stuff to logger module
2021-09-23 12:53:01 +02:00
ef8da9bcec
Make sure NO_COLOR also applies to logging
2021-09-23 12:16:49 +02:00
31a523755f
Remove solus support
2021-09-20 19:42:06 +02:00
f90741f4d3
Implement compiling HLS from source
2021-09-19 22:04:32 +02:00
4767f3db5b
Implement ghcup unset
2021-09-19 14:17:55 +02:00
c431c0ae00
Implement GPG verification wrt #236
2021-09-18 21:51:19 +02:00
d3a36c2c9a
Merge remote-tracking branch 'origin/merge-requests/156'
2021-09-18 15:19:06 +02:00
Emily Pillmore
e8d962ac44
Add language fixes per issue #237
2021-09-17 14:11:00 -06:00
ae2031174e
Improve warnAboutHlsCompatibility
2021-09-14 12:36:14 +02:00
Arjun Kathuria
7a6a119829
Patch for MonadLogger deletion since new rebase
2021-09-07 14:21:24 +05:30
787c927de6
Improve logging, fixes #228
2021-09-06 23:01:49 +02:00
db8207f8b9
Fixup
2021-09-04 16:06:33 +02:00
d2346a543a
Fixup
2021-09-04 15:53:29 +02:00
9bdf6bde17
Only consider .diff/.patch for patch files wrt #226
2021-09-04 14:25:24 +02:00
bc80b1048f
Fix debug logs
2021-09-03 21:00:39 +02:00
d61981bc1b
Update doc on ghcupURL
2021-09-02 21:27:31 +02:00
d98e54a743
Drop yaml/libyaml
2021-08-30 23:36:11 +02:00
13143b8e4d
Drop monad-logger
2021-08-30 23:36:11 +02:00
a269b60282
Remove extra
2021-08-29 22:37:16 +02:00
430dc2d20b
Remove zip dependency
2021-08-29 20:56:17 +02:00
Jan Hrček
f6b6b36eb7
Apply hlint 3.3.2 suggestions
2021-08-29 17:08:06 +02:00
Jan Hrček
3986677b06
Fix typos and simplify code
2021-08-29 14:50:49 +02:00
b086261c3c
Merge remote-tracking branch 'origin/merge-requests/149'
2021-08-26 20:12:19 +02:00
8c098d4e17
Add solus in getLinuxDistro
2021-08-26 20:09:48 +02:00
14fc6b7281
Remove string-interpolate wrt #212
2021-08-25 18:54:58 +02:00
9d6e469f79
Add solus support
2021-08-25 13:51:34 +02:00
f8cfcd4038
Get rid of tar
2021-08-25 11:48:30 +02:00
bfc50e269c
Show a warning if xattr can't be executed
2021-08-24 15:34:35 +02:00
8247c0b00b
Add more doctests
2021-08-24 10:51:39 +02:00
951e676bee
Fix header reading wrt #213
2021-08-23 23:16:32 +02:00
281f310394
Add some unit tests
2021-08-23 23:16:14 +02:00
Arjun Kathuria
8c486e8d46
Make GHCup isolate installs non-overwriting by default
2021-08-23 20:18:45 +05:30
57c791106b
Fixup rest of the PR
2021-08-11 16:19:31 +02:00
fcba151fad
Merge remote-tracking branch 'origin/merge-requests/134'
2021-08-11 14:20:04 +02:00
3b24f503d1
Fixup rest of the PR
2021-08-11 13:54:02 +02:00
bd18fd9aa1
Merge remote-tracking branch 'origin/merge-requests/127'
2021-08-11 12:28:48 +02:00
Arjun Kathuria
ce6fb0bb1e
Adds new Error type FileAlreadyExistsError
2021-08-11 10:28:30 +05:30
Arjun Kathuria
80fa7965a4
Adds new Error type IsolatedDirNotEmpty
2021-08-10 20:11:32 +05:30
0a0fbd0cb6
Merge branch 'fix-metadata-download'
2021-08-07 19:26:26 +02:00
6dfc04a9f6
Fix metadata file read in --offline mode
2021-08-07 18:31:41 +02:00
72133d0002
Rather skip copying to cache dir if scheme is file://
2021-08-07 10:24:08 +02:00
6e07e9e56b
Skip copying metadata if source and destination match
2021-08-07 09:55:45 +02:00
e903aeb555
Skip cached metadata when url starts with file://
2021-08-07 09:54:26 +02:00
2792f6f4b6
Fix error handling when we can't find a filename
2021-08-06 19:45:59 +02:00
vglfr
1cfff674b7
Implement config CLI MVP
2021-08-03 09:09:47 +03:00
442ddfd4e4
Bump ghcup metadata, because new GHC versions may have different bin/ layout
2021-07-28 20:08:20 +02:00
d3e3ebd63f
Merge branch 'fix-ghcToolFiles'
2021-07-26 21:25:00 +02:00
fdf45e0fe6
Do etags hashing wrt #193
2021-07-25 23:15:59 +02:00
3bdc82c99b
Redo file handling wrt #165 and #187
2021-07-22 17:44:03 +02:00
1c2cf98850
Fix file/dir removal on windows, fixes #165
2021-07-21 20:50:58 +02:00
a4a7f73fb7
Allow to use Hadrian as build system, fixes #35
2021-07-20 23:51:31 +02:00
4ed72fb517
Preserve mtimes on unpacked GHC tarballs on windows wrt #187
2021-07-19 23:33:01 +02:00
3caf91c640
Fix ensureGlobalTools
2021-07-19 19:08:43 +02:00
eaad2caf25
Add prefetch command
2021-07-19 16:51:40 +02:00
6143cdf2e0
Add --offline switch wrt #186
2021-07-19 13:49:24 +02:00
2c7176d998
Use LabelOptic and add LeanAppState
...
Wrt #186
2021-07-18 14:39:49 +02:00
42134fd2a5
Fix whereIsTool for cross
2021-07-15 22:38:42 +02:00
f04708e8ae
Speed up 'whereis' subcommand wrt #179
2021-07-15 20:01:00 +02:00
5cf297a4d2
Clarify stack postinstall message wrt #153
2021-07-11 15:09:16 +02:00
d86f84eef4
Improve logging with newlines
2021-07-11 14:34:05 +02:00
928f4a97de
Fix ghcToolFiles for upcoming GHC build system changes
...
Also see: https://gitlab.haskell.org/ghc/ghc/-/issues/20074#note_363720
2021-07-10 21:43:37 +02:00
8e820c6e89
Clean up and fix nuke command
2021-07-03 11:15:37 +02:00
Arjun Kathuria
6379a26afb
factor out getDirectoryContentsRecursive
function in GHCup.Utils.Prelude
2021-06-26 21:53:14 +05:30
Arjun Kathuria
9515065407
adds conditional export of useXDG in non-windows OS-es. fix in rmGhcupDirs code that used useXDG
2021-06-24 22:48:38 +05:30
Arjun Kathuria
2e3dceecf8
abstracts out getting ghcup conf file path
2021-06-23 10:08:06 +05:30
b56c44a210
Ensure directories
2021-06-13 13:41:06 +02:00
54e8e3efb0
Gracefully handle stack binary not installed by ghcup
2021-06-12 22:27:31 +02:00
4dcc63606e
Remove legacy handling of cabal binary
2021-06-12 22:26:50 +02:00
ac21c19b7e
Remove unnecessary micro version stripping
...
Since we can specify version bounds now, this is unnecessary.
2021-06-11 11:26:44 +02:00
27510b3b51
Allow setting GHCUP_INSTALL_BASE_PREFIX on windows
2021-06-08 18:08:06 +02:00
aa992c0e5d
PrettyShow
2021-06-07 20:09:18 +02:00
443522d526
Improve windows bootstrapping and make msys2 configurable
2021-06-07 19:33:12 +02:00
2f62067d96
Windows support
2021-06-05 21:01:01 +02:00
734916728c
Add stack support
2021-05-15 14:01:00 +02:00
5a86a28d67
Smarter logging
2021-04-29 14:47:30 +02:00
a905c6322c
Fix spelling
2021-04-29 14:47:22 +02:00
9f0ac0ee19
Allow to compile from git repo
2021-04-28 21:17:57 +02:00
1e9ee260e7
Raise minSpace to 5GB
2021-04-25 21:32:58 +02:00
0b7d447aaf
Satisfy hlint
2021-04-25 18:00:32 +02:00
16a9336d31
Fix missing pretty instance
2021-04-25 17:59:15 +02:00
7d13836fea
Warn when /tmp doesn't have 2500 or more of disk space
2021-04-25 17:25:40 +02:00
0c6699c3c6
Allow to check ghcup binaries in validate-tarballs
2021-04-11 22:15:43 +02:00
adf44ba141
Validate subdirs too, fixes #52
2021-04-02 16:54:27 +02:00
7383fdd0c0
Make parser more lax, fixes #119
...
Also make sure we don't print the warning message
20 times, so avoid some repeated IO.
2021-04-01 17:21:00 +02:00
d5b5f1fddd
Chores
2021-03-24 17:56:57 +01:00
f6cc467e95
Fix handling of stray versions wrt #116
2021-03-07 12:02:13 +01:00
8c87c9aeb7
Fix error messages and overhaul pretty printing
...
Fixes #115
2021-03-02 10:35:31 +01:00
f46e7e8c4b
Add "ghcup set ghc next" tag wrt #114
2021-02-25 19:10:55 +01:00
3baf254251
Improve tag completer
2021-02-25 16:13:00 +01:00
47d9766c78
Make sure forFold can properly inline
2021-02-25 15:40:52 +01:00
45ab69960f
Merge remote-tracking branch 'origin/merge-requests/70'
2021-02-25 15:36:37 +01:00
d3505d4ee6
Bump version to 0.1.13
2021-02-25 15:33:52 +01:00
Huw campbell
453a29fdf7
Respect the user's configuration settings
...
Only lookup user configuration before doing a search; implement version completion for Cabal and HLS removal
2021-02-25 16:31:40 +11:00
Huw campbell
1a5f0259f4
Just use the cache for commands which refer to locally stored objects.
...
Setting a version of GHC will fail if provided with a version not installed,
and we don't neede to check the most recent list of GHCs available to know
that.
2021-02-25 10:19:16 +11:00
Huw campbell
d6fa61e223
Add command line completions for installed and available versions.
...
When running `ghcup set ghc` and pressing tab, one should be able to
autocomplete the currently installed GHCs we have available.
Add an optparse applicative completer for install, rm, and set commands
which shows tags and versions. For installation, all are shown; while
for remove and set, only those installed are.
2021-02-25 00:42:16 +11:00
a9b0c0fbc9
Allow for dynamic post-install, post-remove and pre-compile msgs
2021-02-23 11:52:38 +01:00
20338f7d14
Alert user if upgraded ghcup is shadowed by old ghcup
...
Also alerts if the binary is not in PATH at all.
Fixes #111
2021-02-21 19:58:32 +01:00
amesgen
53db68e39f
minor tarball filter format change
2021-01-02 07:58:08 +01:00
amesgen
8944ed6e36
allow to filter tarball validation by a URL substring
...
also, use nubOrd for linearithmic instead of quadratic complexity
2021-01-01 05:45:58 +01:00
b0f90c096f
Fix chmod on executables, wrt #97
2020-12-20 01:27:27 +08:00
82aa6c70ea
Allow to encode version ranges for distro versions
...
Fixes #84
2020-11-21 01:12:15 +01:00
66f989e691
Fix FromJSONKey instances
...
This led to silent Nothing when the parser failed.
2020-11-20 23:18:25 +01:00
1d3e88bdfe
Fix disappearing HLS symlinks wrt #91
...
When installing a new GHC version, the corresponding
HLS symlink of that version may be accidentially removed.
Ooops.
2020-11-20 23:05:37 +01:00
53f5a08924
Allow configuring URLSource as well
2020-10-25 14:47:26 +01:00
4fef93b7b1
Allow to configure ghcup with a yaml config file
...
Fixes #41
2020-10-25 10:22:45 +01:00
241dadbeb5
Update to versions-4.0.1 API
2020-10-25 10:22:35 +01:00
e250d6013f
Redo Settings as AppState
2020-10-24 01:07:31 +02:00
956e11c3f8
Bump version to 0.1.12
2020-10-13 00:09:35 +02:00
57c34a07f2
Allow to hide old versions of tools in TUI
2020-10-09 23:05:11 +02:00
9d7914e69a
Bump ghcupURL
2020-09-22 23:41:19 +02:00
cbbb75062c
Bump version to 0.1.11
2020-09-20 23:09:09 +02:00
bb7c4205db
Allow to install haskell-language-server wrt #65
2020-09-20 23:09:09 +02:00
a269131e2d
Allow to compile over existing version, fixes #59
2020-09-17 21:21:16 +02:00
9d6a5313ab
Add JSON roundtrip specs
2020-09-13 21:10:13 +02:00
de09c950d5
Improve requirements wording, fixes #56
2020-09-13 15:38:51 +02:00
02b360e2a9
Create bindists when compiling GHC wrt #51
2020-09-12 23:47:12 +02:00
326bf510c9
Fix Error when ~/.ghcup is a valid symlink
...
Fixes #49
2020-08-31 13:03:12 +02:00
873c951d6e
Refactor chmod +x
2020-08-14 22:27:05 +02:00
672ebf6426
Bump version
2020-08-14 16:57:15 +02:00
90af68b211
Pre-release 0.1.9
2020-08-11 21:55:15 +02:00
dac64f5718
Make TarDir backwardscompat
2020-08-10 22:28:02 +02:00
5c45884f5f
Allow to specify regex for subdir
2020-08-10 22:27:50 +02:00
cafedd73a2
Use Settings to avoid querying dirs every time
2020-08-10 21:52:30 +02:00
7163b77837
Only query directories once
2020-08-10 21:51:31 +02:00
122c54b51e
Refactor
2020-08-10 21:51:31 +02:00
b9d7d7d007
Fix licences in module haddock
2020-08-10 21:51:29 +02:00
aac8f760ad
Add xdg support wrt #39
2020-08-10 21:51:19 +02:00
86b0e4b31b
Fix cabalSet
for pre-release versions
2020-08-10 21:51:19 +02:00
af811f3dbc
nub
result in getInstalledCabals
2020-08-10 21:51:19 +02:00
d30d2ac8a5
Add cabal-install-3.4.0.0-rc1
2020-08-10 21:51:00 +02:00
391676e90a
Use yaml instead of pesky json
2020-08-09 21:56:11 +02:00
846cf92fa4
Add GHC-8.10.2
2020-08-09 15:49:08 +02:00
826900cc41
Improve documentation
2020-07-22 01:08:58 +02:00
ec6bbdbf06
Update ghcup binaries
2020-07-22 00:18:31 +02:00
4b21adadf1
Release 0.1.8
2020-07-21 22:47:21 +02:00
78ae77780b
Fix bug in logging thread
...
It would die on newlines due to empty String blindness.
Also make sure takeMVar does not block.
2020-07-21 22:43:09 +02:00
21ac670bbe
Update FreeBSD bindist
2020-07-21 21:08:41 +02:00
e1cf11f9d4
Add Alpine GHC 8.4.4 for 64bit
2020-07-21 01:18:03 +02:00
97cd43792d
Set 8.8.4 as recommended GHC version
2020-07-21 00:31:02 +02:00
08693e6d3a
Add more alpine bindists
2020-07-21 00:29:46 +02:00
e2227da8d2
Update ghcup binaries
2020-07-21 00:02:14 +02:00
53148fd1c9
Release 0.1.7
2020-07-20 22:25:28 +02:00
b7faae1203
Add more alpine bindists
2020-07-20 22:20:24 +02:00
b6a9d35c3e
Merge branch 'alpine-bindists'
2020-07-20 20:59:08 +02:00
22a5ad739e
Don't try non-musl bindists for Alpine Linux
2020-07-20 20:47:45 +02:00
9e59f484e3
Fix alpine bindists
2020-07-20 20:30:47 +02:00
3ecdb63063
Update tarballs
2020-07-19 00:50:57 +02:00
4c4266dd8c
Add GHC-8.8.4 for FreeBSD
2020-07-16 14:38:19 +02:00
e8336bbc8a
Add GHC-8.8.4
2020-07-16 10:57:44 +02:00
0f69c73e0e
Rework printing/tee
...
This should be faster to draw, use less syscalls
and generally use EOF and pipes correctly.
2020-07-16 00:10:27 +02:00
3c2e0334b7
Update ghcup binary urls
2020-07-14 19:07:19 +02:00
0679626514
Self host ghcup binaries
2020-07-14 14:29:23 +02:00
5035051135
Update 0.1.6
2020-07-13 23:50:11 +02:00
ba03b78f23
Update ghcup binaries
2020-07-13 22:15:39 +02:00
fb0eba9201
Release 0.1.6
2020-07-13 20:31:14 +02:00
b184ee835f
Add freebsd 8.6.5 bindist
2020-07-13 20:05:02 +02:00
1a64527e14
Improve verbosity
2020-07-13 16:27:01 +02:00
50424c2801
Allow to build with tar-bytestring on e.g. 32bit
2020-07-13 15:41:31 +02:00
531b82a406
Add ghc-8.8.3 freebsd bindist
2020-07-13 15:41:30 +02:00
146ac38549
Add 8.10.1 freebsd bindist
2020-07-12 16:48:25 +02:00
8ef19f0825
Allow to build with ghc-8.10.1 and 8.6.5
2020-07-11 22:53:38 +02:00
bed2cca8d2
Use libarchive instead of tar-bytestring
2020-07-05 23:03:24 +02:00
9717a1c00f
Use os-release package
2020-07-04 23:28:30 +02:00
4b89810892
Rm unused functions
2020-07-04 21:20:08 +02:00
dd7556ba21
Merge branch 'less-bash'
2020-06-27 21:38:12 +02:00
f9251589cd
Add some architectures
2020-06-27 19:00:13 +02:00
2de549862a
Get rid of language-bash
...
And clean up detection logic a bit. We also don't
read /etc/lsb-release manually more, since it's format is
not specified.
2020-06-27 18:54:20 +02:00
86c144b285
Merge remote-tracking branch 'remotes/origin/merge-requests/12' into hadrian
2020-06-20 14:40:47 +02:00
7ec6e8604c
Slight style changes
2020-06-20 14:37:38 +02:00
de70f4820f
Merge remote-tracking branch 'origin/merge-requests/13' into hadrian
2020-06-20 12:39:21 +02:00
Brian McKenna
febe6fcb35
Fix behaviour of non-Hadrian builds
...
getFileStatus will resolve symbolic links. getSymbolicLinkStatus doesn't.
2020-06-20 03:38:41 +00:00
Brian McKenna
3055529d4c
Update GHCupDownloads with ghcup-0.0.2.json content
2020-06-19 23:17:34 +00:00
Brian McKenna
d276bfb3ec
Extract Hadrian logic to isHadrian function with comment
2020-06-19 23:06:46 +00:00
Sigmund Vestergaard
ad53b141c7
Removed reference to specific version of RHEL in GHCupDownloads.hs
2020-06-19 10:49:31 +02:00
Sigmund Vestergaard
23c13a07a9
Added support for RedHat in lib/GHCup/Data/GHCupDownloads.hs
2020-06-19 10:49:31 +02:00
Brian McKenna
a186b07763
Support Hadrian provided bindists
...
Fixes #31
2020-06-18 14:03:51 +00:00
be93a98bd4
Update ToolRequirements for Ubuntu, add Debian
...
Fixes #26
2020-05-17 18:43:58 +02:00
6c95218daf
Support multiple installed versions of cabal
...
Fixes #23
2020-05-13 21:33:45 +02:00
ede6299681
Update darwin binary
2020-05-10 13:47:06 +02:00
378942cbce
Update darwin ghcup-0.1.5 binary
...
Seems to be broken on some systems due to
gitlab CI using homebrew. Switched back
to building it on travis.
Fixes #21
2020-05-07 21:35:40 +02:00
d2b280da2d
Update tarballs
2020-04-30 20:46:45 +02:00
0bbac877bd
Update ghcup tarballs
2020-04-30 00:12:30 +02:00
a8be2efd85
Bump to version 0.1.5
2020-04-29 22:34:20 +02:00
f46700e1cc
First cross try
2020-04-29 20:19:01 +02:00
a1282b2854
Fix missing import
2020-04-29 19:36:16 +02:00
0ff7ebb1fd
Allow to set downloader
2020-04-29 19:12:58 +02:00
56e4a6b15f
Invert curl flag to internal-downloader
2020-04-29 09:56:26 +02:00
56c439d716
Fall back to cached ghcup-<..>.json
2020-04-27 23:23:34 +02:00
fad9f83e6a
Add CentoOS tool requirements
2020-04-27 21:52:44 +02:00
931080244f
Fix bug in logging
2020-04-26 20:17:59 +02:00
8b638c7ecb
Rm stray ghc version
2020-04-25 13:22:12 +02:00
5edebd57d9
Move download info into library
2020-04-22 19:32:48 +02:00
bcaccaaf31
Implement --keep
2020-04-22 19:32:14 +02:00