Commit Graph

424 Commits

Author SHA1 Message Date
Julian Ospald 24c36ef856
Fix failure with --isolate=dir --force
Fixes #695
2023-01-02 20:39:27 +08:00
Julian Ospald d5a680e3c6
Don't clean up tmp dirs when --keep=always 2023-01-02 20:38:26 +08:00
Julian Ospald 4d82c37539
Add --metadata-fetching-mode arg, fixes #440 2023-01-01 19:16:32 +08:00
Julian Ospald 6ad9963889
Allow building newer GHCs from git
The user will have to pass --overwrite-version=<ver> because
we can't discover the GHC version from git anymore.

https://gitlab.haskell.org/ghc/ghc/-/issues/22322
2022-12-20 23:18:44 +08:00
Julian Ospald 5cf49bffac
Improve warning for incompatible HLS/GHC combos 2022-12-19 00:40:07 +08:00
Julian Ospald 2abcb46199
Fix ARM etc 2022-12-11 22:11:58 +08:00
Julian Ospald e924ad8278
Allow to statically overwrite distro detection, fixes #421 2022-11-12 14:12:13 +08:00
taylorfausak ab97c80b80 Fix build error 2022-08-23 11:59:08 +00:00
taylorfausak 04369673ef Fix spacing 2022-08-23 11:19:33 +00:00
taylorfausak 63dfdc2da6 Remove hard-coded reference to "cabal"
Fixes #407.
2022-08-22 19:35:38 +00:00
Julian Ospald 5f6b5f845d
Add --disable-ld-override for darwin bindists
Fixes #391
2022-07-25 17:57:10 +08:00
Julian Ospald 00fa70b9de
Merge remote-tracking branch 'origin/merge-requests/266' 2022-07-12 00:15:14 +02:00
Julian Ospald 823275363c
Merge branch 'ghcup-run-improvements' 2022-07-12 00:10:17 +02:00
Julian Ospald ce239ab88e
Fix error message 2022-07-11 19:44:10 +02:00
Julian Ospald b6ff5bc764
Use ghcup's internal dir for 'ghcup run' 2022-07-11 19:43:48 +02:00
Arjun Kathuria 2bd5a8fe1a Removes redundant `putPrompt` function from Prompts module. 2022-07-10 09:45:39 +05:30
Arjun Kathuria 0acccae523 Removes `GHCup.Types.Prompts` module and stuffs it into `GHCup.Types` 2022-07-10 09:44:23 +05:30
Julian Ospald 974112016e
Allow to run 'cabal update' automatically before the HLS build 2022-07-09 23:50:20 +02:00
Julian Ospald 9fb2889696
Allow to build from arbitrary GHC source dists 2022-07-09 23:12:00 +02:00
Julian Ospald 63f22b28d7
Allow to build HLS from hackage 2022-07-09 21:12:23 +02:00
Julian Ospald 13e01ab453
Fix hlint warnings 2022-07-07 15:05:51 +02:00
Julian Ospald 873dd77a6f
Fix build on windows 2022-07-07 15:05:51 +02:00
Julian Ospald 544c618473
Don't remove legacy dir if it doesn't exist 2022-07-07 14:03:49 +02:00
Julian Ospald a264cb088e
Improve 'ghcup compile hls'
1. short hashes now work
2. print the long hash in addition to the detected cabal version of HLS
3. add `--git-describe-version` switch as an alternative to
   `--overwrite-version`

Fix 1. and 2. for GHC as well.
2022-07-06 22:49:11 +02:00
Arjun Kathuria 9ceb66ef21 chore: fix a hlint warning 2022-06-28 22:10:02 +05:30
Arjun Kathuria b8dac2d7cd Updates the Prompt module to use logInfo instead of putStrLn,
makes the prompt look prettier
2022-06-28 19:45:17 +05:30
Julian Ospald d657c17df4
Merge branch 'issue-375' 2022-06-26 23:11:32 +02:00
Arjun Kathuria c7eceb2330 Adds GHCup.Prompt modules and its types to project 2022-06-25 13:44:25 +05:30
Julian Ospald 4022edb12e
Allow passing bindist configure args wrt #377 2022-06-09 14:42:01 +02:00
Julian Ospald bcff46d3d4
Fix mingw PATH handling wrt #371 2022-06-07 14:37:23 +02:00
Julian Ospald d1c72cdff4
Add --mingw-path switch to 'ghcup run' 2022-06-06 23:03:45 +02:00
Julian Ospald fe620835be
Fix 'ghcup run' on windows, fixes #375 2022-06-06 20:18:10 +02:00
Julian Ospald 0653844931
Fix build with ghc-9.0.2 2022-06-04 23:15:06 +02:00
Julian Ospald 16888a12d4
Cleanup 2022-05-28 16:44:08 +02:00
Julian Ospald 0e64d1f22f
Improve AlreadyInstalled 2022-05-23 23:49:43 +02:00
Julian Ospald c7774450bf
Refactor excepts 2022-05-23 23:37:09 +02:00
Julian Ospald 9375255452
Warn on all tools when shadowed 2022-05-23 16:50:23 +02:00
Julian Ospald 2845425099
Restructure modules 2022-05-22 21:11:40 +02:00
Julian Ospald b5fb8772fe
Fix windows 2022-05-21 11:34:57 +02:00
Julian Ospald df89ddcdf5
Use internal tmpdir 2022-05-20 23:19:33 +02:00
Julian Ospald c9e1261af2
Some fixes 2022-05-20 00:46:50 +02:00
Julian Ospald 430b655785
Improve error handling for mergeFileTree 2022-05-20 00:15:25 +02:00
Julian Ospald ca89112a8e
Fix for darwin M1 2022-05-17 01:55:56 +02:00
Julian Ospald 55fdc41137
WIP 2022-05-16 11:29:55 +02:00
Julian Ospald c9790e5823
Use strongly types `GHCupPath` and restrict destructive operations 2022-05-13 21:35:34 +02:00
Julian Ospald db4e411dfd
Fix darwin binaries after copying 2022-05-13 17:58:15 +02:00
Julian Ospald 48aee1e76c
[WIP] Prototype of recording installed files
This also installs makefile based build system via DESTDIR
into a temporary directory and then merges it into the filesystem.
2022-05-13 00:46:47 +02:00
Julian Ospald f7811961b5
Merge branch 'isolateDir' 2022-05-11 20:35:38 +02:00
Julian Ospald 991e540c11
Refactor code around isolateDirs, so we have proper knowledge 2022-05-11 16:18:35 +02:00
Julian Ospald b036c9861f
Re-enable upgrade functionality for all configurations
Adds a --fail-if-shadowed switch.
2022-05-04 14:15:17 +02:00
Julian Ospald f8a1fed1f2
Fix parsing of symlinks with multiple slashes,
Fixes #353
2022-04-29 19:22:16 +08:00
Julian Ospald 2d88b1197e
Fix EXDEV handler on windows wrt #345 2022-04-15 23:01:33 +02:00
Julian Ospald cfe6c47cd7
Fix max path issues on windows with 'ghcup run' 2022-03-18 17:47:49 +01:00
Julian Ospald 8eeb32c495
Overhaul metadata merging and add 'ghcup config add-release-channel URI' 2022-03-18 17:47:49 +01:00
Julian Ospald f9a38e616d
Add --raw-format to 'tool-requirements' subcommand 2022-03-17 15:05:18 +01:00
Julian Ospald 510675622b
Prepare 0.1.17.5 release 2022-02-26 15:33:44 +01:00
Julian Ospald 9faf17634b
Fix hlint and windows build 2022-02-10 21:49:19 +01:00
Julian Ospald c72841ca58
Implement 'ghcup run' 2022-02-09 18:57:59 +01:00
Julian Ospald 63350dab71
Fix recyclePathForcibly on windows 2022-02-06 22:56:22 +01:00
Julian Ospald d110d20879
Fix HLS removal on windows 2022-02-06 22:25:23 +01:00
Julian Ospald 6073ebe476
Fix HLS support and compile errors with boot and TH files 2022-02-06 00:32:18 +01:00
Julian Ospald 684953464b
Silence hlint 2022-02-05 19:39:00 +01:00
Julian Ospald 6831337289
Refactoring and fixes 2022-02-05 19:11:56 +01:00
Julian Ospald e40777a5d3
Resolve paths when using XDG dirs, fixes #311 2022-02-05 16:48:20 +01:00
Julian Ospald 51690d1df3
Support HLS dynamic builds 2022-02-05 16:33:05 +01:00
Julian Ospald b16e561384
Allow unpacking legacy lzma archives, fixes #307 2022-01-28 22:48:23 +01:00
Julian Ospald 67b7b2f292
Don't print to stdout during logging 2022-01-19 15:40:58 +01:00
Julian Ospald 3a7ed5ee2d
Fix hlint warnings 2022-01-12 22:55:00 +01:00
James Hobson 3fd9fae66a
Changed to use IO Exceptions 2022-01-12 13:31:10 +01:00
James Hobson f8548fefb3
Added support for quilt series files when patching 2022-01-12 10:01:48 +01:00
Julian Ospald 3f0befe30d
Fix `ghcup whereis ghc` for non-standard versions, fixes #289 2021-11-22 22:53:59 +01:00
Julian Ospald 76c286f95e
Use upstream terminal-size 2021-11-22 22:51:58 +01:00
Julian Ospald a9630d0802
Cooler patching 2021-11-12 19:52:00 +01:00
Julian Ospald 3a5f8d6139
Fix build on windows 2021-11-12 15:01:24 +01:00
Julian Ospald 626a2dd020
More debug logging 2021-11-12 01:01:21 +01:00
Julian Ospald c05876cc60
Fix build with ghc-8.6.5 2021-11-02 19:53:22 +01:00
Julian Ospald b9c4c9a0b7
Fix hlint 2021-11-02 10:57:27 +01:00
Julian Ospald 2c57def8f1
Fix parsing of atypical ghc versions 2021-11-02 01:22:06 +01:00
Julian Ospald 190b5dedba
Allow to control the metadata cache, fixes #278 2021-10-30 14:16:45 +02:00
Julian Ospald c10821c332
Use github.com/haskell/ghcup-metadata 2021-10-25 21:47:42 +02:00
Julian Ospald 4574f3aa4f
Switch to yaml-streamly 2021-10-21 23:39:07 +02:00
Julian Ospald 9f8c9c228d
Reduce IS_WINDOWS CPP 2021-10-17 20:57:22 +02:00
Julian Ospald ccfaedb7ad
Migrate to aeson-2.0.1.0 2021-10-13 19:47:14 +02:00
Julian Ospald c846e52acb
Cleanup during unpack failures as well 2021-10-10 20:48:33 +02:00
Julian Ospald c4ab59f7bf
Make sure to always ass GHC env var, fixes #258 2021-10-03 11:38:53 +02:00
Julian Ospald c19dd5ee8b
Implement `ghcup gc` command
Fixes #241
2021-09-25 22:29:02 +02:00
Julian Ospald 6ae3bfe395
Merge branch 'fix-hls-build' 2021-09-25 19:21:19 +02:00
Julian Ospald 8e8198546f
Fix HLS rebuilds 2021-09-25 18:25:03 +02:00
Julian Ospald 9497e310ca
Improve cli interface with partial versions
Fixes #243
2021-09-25 17:13:11 +02:00
Julian Ospald 15dd810d67
Get rid of concurrent-output
Also improve some NO_COLOR foo.
2021-09-24 23:49:50 +02:00
Julian Ospald aece305003
Move logger stuff to logger module 2021-09-23 12:53:01 +02:00
Julian Ospald ef8da9bcec
Make sure NO_COLOR also applies to logging 2021-09-23 12:16:49 +02:00
Julian Ospald 31a523755f
Remove solus support 2021-09-20 19:42:06 +02:00
Julian Ospald f90741f4d3
Implement compiling HLS from source 2021-09-19 22:04:32 +02:00
Julian Ospald 4767f3db5b
Implement ghcup unset 2021-09-19 14:17:55 +02:00
Julian Ospald c431c0ae00
Implement GPG verification wrt #236 2021-09-18 21:51:19 +02:00
Julian Ospald 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
Julian Ospald 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
Julian Ospald 787c927de6
Improve logging, fixes #228 2021-09-06 23:01:49 +02:00
Julian Ospald db8207f8b9
Fixup 2021-09-04 16:06:33 +02:00
Julian Ospald d2346a543a
Fixup 2021-09-04 15:53:29 +02:00
Julian Ospald 9bdf6bde17
Only consider .diff/.patch for patch files wrt #226 2021-09-04 14:25:24 +02:00
Julian Ospald bc80b1048f
Fix debug logs 2021-09-03 21:00:39 +02:00
Julian Ospald d61981bc1b
Update doc on ghcupURL 2021-09-02 21:27:31 +02:00
Julian Ospald d98e54a743
Drop yaml/libyaml 2021-08-30 23:36:11 +02:00
Julian Ospald 13143b8e4d
Drop monad-logger 2021-08-30 23:36:11 +02:00
Julian Ospald a269b60282
Remove extra 2021-08-29 22:37:16 +02:00
Julian Ospald 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
Julian Ospald b086261c3c
Merge remote-tracking branch 'origin/merge-requests/149' 2021-08-26 20:12:19 +02:00
Julian Ospald 8c098d4e17
Add solus in getLinuxDistro 2021-08-26 20:09:48 +02:00
Julian Ospald 14fc6b7281
Remove string-interpolate wrt #212 2021-08-25 18:54:58 +02:00
Julian Ospald 9d6e469f79
Add solus support 2021-08-25 13:51:34 +02:00
Julian Ospald f8cfcd4038
Get rid of tar 2021-08-25 11:48:30 +02:00
Julian Ospald bfc50e269c
Show a warning if xattr can't be executed 2021-08-24 15:34:35 +02:00
Julian Ospald 8247c0b00b
Add more doctests 2021-08-24 10:51:39 +02:00
Julian Ospald 951e676bee
Fix header reading wrt #213 2021-08-23 23:16:32 +02:00
Julian Ospald 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
Julian Ospald 57c791106b
Fixup rest of the PR 2021-08-11 16:19:31 +02:00
Julian Ospald fcba151fad
Merge remote-tracking branch 'origin/merge-requests/134' 2021-08-11 14:20:04 +02:00
Julian Ospald 3b24f503d1
Fixup rest of the PR 2021-08-11 13:54:02 +02:00
Julian Ospald 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
Julian Ospald 0a0fbd0cb6
Merge branch 'fix-metadata-download' 2021-08-07 19:26:26 +02:00
Julian Ospald 6dfc04a9f6
Fix metadata file read in --offline mode 2021-08-07 18:31:41 +02:00
Julian Ospald 72133d0002
Rather skip copying to cache dir if scheme is file:// 2021-08-07 10:24:08 +02:00
Julian Ospald 6e07e9e56b
Skip copying metadata if source and destination match 2021-08-07 09:55:45 +02:00
Julian Ospald e903aeb555
Skip cached metadata when url starts with file:// 2021-08-07 09:54:26 +02:00
Julian Ospald 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
Julian Ospald 442ddfd4e4
Bump ghcup metadata, because new GHC versions may have different bin/ layout 2021-07-28 20:08:20 +02:00
Julian Ospald d3e3ebd63f
Merge branch 'fix-ghcToolFiles' 2021-07-26 21:25:00 +02:00
Julian Ospald fdf45e0fe6
Do etags hashing wrt #193 2021-07-25 23:15:59 +02:00
Julian Ospald 3bdc82c99b
Redo file handling wrt #165 and #187 2021-07-22 17:44:03 +02:00
Julian Ospald 1c2cf98850
Fix file/dir removal on windows, fixes #165 2021-07-21 20:50:58 +02:00
Julian Ospald a4a7f73fb7
Allow to use Hadrian as build system, fixes #35 2021-07-20 23:51:31 +02:00
Julian Ospald 4ed72fb517
Preserve mtimes on unpacked GHC tarballs on windows wrt #187 2021-07-19 23:33:01 +02:00
Julian Ospald 3caf91c640
Fix ensureGlobalTools 2021-07-19 19:08:43 +02:00
Julian Ospald eaad2caf25
Add prefetch command 2021-07-19 16:51:40 +02:00
Julian Ospald 6143cdf2e0
Add --offline switch wrt #186 2021-07-19 13:49:24 +02:00
Julian Ospald 2c7176d998
Use LabelOptic and add LeanAppState
Wrt #186
2021-07-18 14:39:49 +02:00
Julian Ospald 42134fd2a5
Fix whereIsTool for cross 2021-07-15 22:38:42 +02:00
Julian Ospald f04708e8ae
Speed up 'whereis' subcommand wrt #179 2021-07-15 20:01:00 +02:00
Julian Ospald 5cf297a4d2
Clarify stack postinstall message wrt #153 2021-07-11 15:09:16 +02:00
Julian Ospald d86f84eef4
Improve logging with newlines 2021-07-11 14:34:05 +02:00