Julian Ospald
17aafe3439
posix_realpath: if dir does not exist also append to current dir
...
This matches realpath behavior.
2019-05-17 11:12:12 +08:00
Julian Ospald
6e1ee078cc
posix_realpath: make sure we don't loop infinitely
...
On broken symlink loops this would never terminate. The most
naive and easy solution is a max of loop steps.
2019-05-17 11:12:12 +08:00
Julian Ospald
09abd528ee
Merge branch 'some-error-handling'
2019-05-17 11:05:29 +08:00
Julian Ospald
ed456d2071
Fix cd when CDPATH is set wrt #98
2019-05-17 11:02:07 +08:00
Julian Ospald
3c5e323490
Improve some error handling
2019-04-24 14:38:34 +08:00
Julian Ospald
c64cf0efca
Silence stderr for download_to_stdout
2019-04-11 10:24:30 +08:00
Julian Ospald
f8abcb7d08
Merge branch 'system-reqs'
2019-04-11 10:15:15 +08:00
Julian Ospald
ad75249fc4
Merge branch 'ghcup-upgrade-tweak'
2019-04-10 23:57:35 +08:00
Julian Ospald
ba64b13417
Introduce print-system-reqs wrt #49
...
And also make bootstrap-haskell print this by default.
2019-04-10 23:43:58 +08:00
Julian Ospald
50f661092d
Fix ghcup list -t all
2019-04-10 21:56:48 +08:00
Julian Ospald
2a92c96ea9
Merge branch 'overhaul-list-subcommand'
2019-04-10 19:06:31 +08:00
Julian Ospald
ae8b5ae27e
Debug output to stderr
2019-04-10 14:42:36 +08:00
Julian Ospald
032b95aa9b
Remove show command, which is obsolete now
2019-04-10 14:37:01 +08:00
Julian Ospald
f26830c9b4
Considerably tweak the list subcommand wrt #88
2019-04-10 14:37:01 +08:00
Julian Ospald
36e8389bb0
Tweak ghcup upgrade
...
1. add --inplace flag
2. by default install into BIN_LOCATION
2019-04-07 02:08:09 +08:00
Julian Ospald
ff9261ba0c
Merge branch 'changelog-subcommand'
2019-03-07 20:01:29 +08:00
Julian Ospald
12f9f155fb
Implement changelog subcommand wrt #72
2019-03-07 20:00:43 +08:00
Julian Ospald
d01ed08504
Use trap to clean up interrupted download in cache
...
Fixes #73
2019-03-06 17:10:19 +08:00
Julian Ospald
bbf63c3881
Merge remote-tracking branch 'origin/pr/70'
2019-02-20 18:20:57 +08:00
George Wilson
ae263ac282
Unquote invocations in emake
2019-02-20 13:18:22 +10:00
George Wilson
35bd1c04db
Only read the FreeBSD major version
2019-02-18 15:48:16 +10:00
George Wilson
45d939219c
Make shellcheck happy
2019-02-18 13:19:25 +10:00
Julian Ospald
eb1dd745c1
Hide 'compile' subcommand by default from help menu
2019-02-18 11:01:52 +08:00
George Wilson
398d8d7ae0
Define emake to enable installing on FreeBSD
2019-02-17 09:11:16 +10:00
Joe Kachmar
318fbdc680
Bumps VERSION to 0.0.7
2019-02-12 14:25:04 -05:00
Julian Ospald
225d2d2be4
Merge branch 'bootstrap'
2019-01-07 11:08:40 +08:00
Julian Ospald
82c1636590
Add a bootstrap-haskell script, fixes #36
2019-01-04 17:55:47 +08:00
Julian Ospald
820d8eaa69
Improve error handling
...
In most cases, when we run a subshell with our own function
and assign the result to a variable, we also need to check that
the variable is non-empty, since 'die' and 'edo' don't propagate
to the parent shell.
In some cases, non-emptiness is handled in other ways or is not
fatal.
2019-01-04 16:07:50 +08:00
Julian Ospald
9cc652e34d
Remove is_sourced functionality, it's not needed anymore
2019-01-04 13:53:09 +08:00
Julian Ospald
4c548c1037
Tweak exit code for 'ghcup install'
...
If a GHC is already installed, we shouldn't treat it as an
error.
2019-01-04 13:51:29 +08:00
Julian Ospald
717a8256a6
Make 'ghcup set' tag-aware
2019-01-04 13:51:28 +08:00
Julian Ospald
d1cb7127af
Fix travis with latest shellcheck
2019-01-04 13:49:56 +08:00
Andrea Bedini
5f04b34b15
Introduce distro_alias for Amazon Linux
...
Amazon Linux introduces itself as
```
andrea:~ $ cat /etc/os-release
NAME="Amazon Linux AMI"
VERSION="2018.03"
ID="amzn"
ID_LIKE="rhel fedora"
VERSION_ID="2018.03"
PRETTY_NAME="Amazon Linux AMI 2018.03"
ANSI_COLOR="0;33"
CPE_NAME="cpe:/o:amazon:linux:2018.03:ga"
HOME_URL="http://aws.amazon.com/amazon-linux-ami/ "
```
2018-12-27 15:37:43 +01:00
Julian Ospald
75e48da9a0
Introduce a GHCUP_INSTALL_BASE_PREFIX
...
Partly "fixes" #7
2018-12-15 00:31:19 +08:00
Herbert Valerio Riedel
18d393cfba
Improve detection logic for CentOS/Alpine/AIX/FreeBSD
2018-11-28 01:08:20 +01:00
Herbert Valerio Riedel
d900d0b10c
Emit distro-alias inferred in `debug-info` output
2018-11-28 01:08:20 +01:00
Julian Ospald
907adca572
Create missing haddock -> haddock-ghc symlink
...
Fixes #50
2018-11-19 21:12:22 +08:00
Oleg Grenrus
6008d8a964
Support installing on macOS aka Darwin
...
Resolves https://github.com/haskell/ghcup/issues/33
2018-11-11 20:13:06 +02:00
Julian Ospald
2b9f1a4a20
Include tags in 'ghcup list' and improve formatting
2018-11-06 22:01:02 +08:00
Julian Ospald
5eee1b6d58
Fix check_meta_file_version calls
2018-11-06 16:27:27 +08:00
Julian Ospald
cbb027d1ea
Allow to specify tags for 'install' and 'install-cabal'
2018-11-06 15:14:55 +08:00
Julian Ospald
475d060abe
Rename self-update to upgrade, fixes #38
2018-11-04 19:06:40 +08:00
Julian Ospald
2ef3c22cab
Refactor checking for required commands
2018-11-04 18:26:21 +08:00
Julian Ospald
91f046f6e9
Allow ghcup to be sourced
2018-11-04 18:20:50 +08:00
Julian Ospald
72acd59025
Simplify mkdir calls
...
mkdir -p is POSIX, so just... use it.
2018-10-31 10:30:38 +08:00
Julian Ospald
c04b5bbea0
Some TODO
2018-10-30 22:19:20 +08:00
Julian Ospald
abfca7fa75
Simplify mkdir
2018-10-30 21:33:03 +08:00
Julian Ospald
c261fd7396
Remove stray TODO
2018-10-30 21:31:31 +08:00
Julian Ospald
c1f7ce75f0
Get rid of realpath requirement, fixes #31
2018-10-30 21:21:43 +08:00
Julian Ospald
488079e3a3
Bump VERSION to 0.0.6
2018-10-30 21:21:43 +08:00
Julian Ospald
cbb19a01c0
Check for required commands
...
Fixes #8
2018-10-30 21:21:42 +08:00
Julian Ospald
29911cd420
Introduce and use a meta file format for URLs and available versions
...
Fixes #21
Fixes #9
Fixes #10
Fixes #5
2018-10-30 21:21:42 +08:00
Julian Ospald
3f691b73ad
Fix debug-info to include CACHE_LOCATION
2018-10-28 17:36:10 +08:00
Julian Ospald
e3bc9ce99c
Introduce optional tarball caching, fixes #11
2018-10-28 17:34:37 +08:00
Julian Ospald
86ffcf81d9
Allow to use wget instead of curl, fixes #15
2018-10-28 17:00:54 +08:00
Julian Ospald
f71bf2fd51
Fix dangling GHC symlink check
2018-10-27 16:41:23 +08:00
Julian Ospald
34aa368e9b
Make GHC removal safer
...
Fixes #18
2018-10-27 16:18:14 +08:00
Julian Ospald
83cc66365b
Remove dangling ghc, ghci, ... symlinks after removal of active GHC
2018-10-27 15:16:57 +08:00
Julian Ospald
5bb5389192
Make uninstallation more robust
...
For an incomplete installation, we still want to remove
what is left over, so don't fail on non-existing symlinks
in $BIN_LOCATION.
2018-10-27 14:45:14 +08:00
Julian Ospald
5a18896d7a
Merge branch 'PR/add-debug-info-command'
2018-10-17 21:07:54 +08:00
Julian Ospald
0fd8085327
Merge branch 'PR/update-latest-known-cabal-install'
2018-10-17 21:06:30 +08:00
Julian Ospald
316fde7522
Merge branch 'PR/more-robust-unpacking'
2018-10-17 21:05:33 +08:00
Julian Ospald
0445e06ec1
Add a debug-info subcommand
2018-10-17 21:01:40 +08:00
Julian Ospald
869f306e35
Move error handling into download() function
...
This also makes the verbosity messages better.
2018-10-17 17:21:11 +08:00
Julian Ospald
976635b65f
More robust unpacking
...
On some system, tar might not be able to automatically uncompress,
so do it separately.
2018-10-17 17:21:11 +08:00
Julian Ospald
fe16061905
Latest known cabal is 2.4.0.0 now
2018-10-17 16:38:17 +08:00
Julian Ospald
90d068842d
Do smarter cleanup in case GHC installation fails
2018-10-17 15:42:38 +08:00
Julian Ospald
2eb9549a6c
Remove 'BuildFlavour = quick' since it doesn't have any effect
2018-10-17 10:17:27 +08:00
Julian Ospald
b2b020eff3
Allow to specify a build config for 'ghcup compile'
...
Fixes #19
2018-10-17 10:17:07 +08:00
Julian Ospald
0a5e5cb937
Fix references to hasufell
2018-10-16 14:41:42 +08:00
Julian Ospald
106d2bb81b
Increase version to 0.0.5
2018-10-16 01:06:42 +08:00
Julian Ospald
256d81eb13
Fix OS detection
...
Name is "Debian GNU/Linux" and not "Debian". Wildcard match
to make it more robust, same for Ubuntu.
2018-10-15 23:59:21 +08:00
Julian Ospald
a7c8f9da7c
Update self_update_usage
2018-10-15 22:19:03 +08:00
Sam Halliday
fafb9bbf9d
self-update inplace
2018-10-15 14:32:04 +01:00
Julian Ospald
bd50a5b290
Release 0.0.4
2018-10-09 00:34:17 +08:00
Julian Ospald
2193b42822
Make self-update more robust
...
In fact, the old method was unsafe. Curl would modify the script
in-place and there was no guarantee that the script is already
in memory, leading to harmless, but unnecessary corruption
at the end of the script.
mv is atomic, so will unlink the old file before writing the new one.
2018-10-08 22:42:04 +08:00
Julian Ospald
54c42c7718
Install cabal into BIN_LOCATION
...
See #6
2018-10-05 10:44:23 +08:00
Julian Ospald
1d8f173456
Add compile command to root help
2018-10-05 10:34:26 +08:00
Julian Ospald
ef2f6dfd65
Add vim setting to end of file
2018-10-03 01:41:24 +08:00
Julian Ospald
243b707127
Be paranoid about recursive removal
2018-10-03 01:39:48 +08:00
Julian Ospald
acc0581c08
Remove job setting from 'make install', because it's broken
2018-10-01 14:18:53 +08:00
Julian Ospald
5dc42f08c1
Fix bug with JOBS being set incorrectly
2018-10-01 14:14:01 +08:00
Julian Ospald
ba80c6e409
Improve message when no GHC is installed
2018-10-01 12:28:24 +08:00
Julian Ospald
92b82c4a3e
Allow to build from source, fixes #2
2018-09-30 19:39:40 +08:00
Julian Ospald
ea2d5c20d9
Add install-cabal subcommand, fixes #3
2018-09-30 16:47:04 +08:00
Julian Ospald
894a279a2d
Improve error messages
2018-09-30 16:11:56 +08:00
Julian Ospald
ce314365dd
Fix status message
...
Should only appear when we have actually removed GHC.
2018-09-30 14:41:18 +08:00
Julian Ospald
41199b5ebd
Print usage info when only -v is given
2018-09-30 14:36:50 +08:00
Julian Ospald
b25b907705
set-ghc is set now
2018-09-30 14:33:42 +08:00
Julian Ospald
6e1b6e431e
Pretty doc sections
2018-09-30 14:26:59 +08:00
Julian Ospald
1f02c66e05
Remove unneeded else branch
2018-09-30 14:20:48 +08:00
Julian Ospald
8c775e14fd
More documentation
2018-09-30 14:20:32 +08:00
Julian Ospald
6dce415077
Simplify self_update
2018-09-30 14:00:58 +08:00
Julian Ospald
bc6a15cc91
Verify all function input arguments
2018-09-30 13:52:40 +08:00
Julian Ospald
49a20bc932
Add more code documentation
2018-09-30 13:52:01 +08:00
Julian Ospald
cb601e6df5
Make ghc download baseurl a global var
2018-09-30 13:34:54 +08:00
Julian Ospald
857ccefff4
Make script update url a global var
2018-09-30 13:33:04 +08:00
Julian Ospald
ce9e72795b
Abstract over downloading
2018-09-30 13:31:43 +08:00
Julian Ospald
f3275360f4
Cleanup unset
2018-09-30 13:21:09 +08:00
Julian Ospald
8e1a5a0172
Improve error message
2018-09-30 04:06:53 +08:00