You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Feb 24, 2023. It is now read-only.
* Re-tool README
* Re-write welcome splash
* Bump copyright and versioning
* Remove outdated configuration manipulations
* Switch to removing existing Makevars
* Switch to removing existing R_ENVIRON
* Switch to a different way of detecting macOS minor version (10.x)
* Pin to Mojave the rest.
* Bring out the label step a bit.
* Add a download function for the gfortran dmg
* Update the install gfortran component
* Add a backup and remove file function. Remove download gfortran
* Port over the configuration checks to use the backup and remove function
* Implement a new gfortran download and installation technique
* Upgrade installer accepted macos versions
* Add changelog details
* Remove dangling installer
* Update splash screen of installer for readme
**Note** The installer package was developed by [James Joseph Balamuta](https://thecoatlessprofessor.com)
22
23
and has no connection with the R project’s macOS CRAN maintainers.
@@ -33,8 +34,7 @@ of the [University of Edinburgh](http://www.ed.ac.uk/).
33
34
34
35
**That's it.**
35
36
36
-
Once installed, you can start using compiled code
37
-
in _R_ like normal with the added benefit of `OpenMP`.
37
+
Once installed, you can start using compiled code in _R_ like normal.
38
38
39
39
If you want to see behind the curtain, continue reading...
40
40
@@ -44,15 +44,12 @@ The macOS _R_ toolchain installer performs four actions that require
44
44
the user's password to accomplish. These actions are:
45
45
46
46
1. download and install XCode CLI via secure Apple product update
47
-
1. download, verify, and install the `clang7` pre-made binary
48
-
files into the `/usr/local/clang7` directory
49
-
1. download, verify, and install `gfortran6.1`
50
-
1. establish the proper header files in `CFLAGS`, `CPPFLAGS`, and `CXXFLAGS` in the `~/.R/Makevars` file
51
-
1. add to the `PATH` variable where the `clang7` binary is by using `~/.Renviron`
47
+
1. remove any existing `~/.R/Makevars` or `~/.Renviron` (backups available with `.bck`)s
48
+
1. determine which `gfortran` version to use
49
+
1. download, verify, and install the appropriate `gfortran` version
52
50
53
-
**Note:** The installer will replace existing `~/.R/Makevars` and `~/.Renviron` files.
51
+
**Note:** The installer will remove any existing `~/.R/Makevars` and `~/.Renviron` files.
54
52
The existing files will be copied to a backup file, e.g. `~/.R/Makevars.bck` and `~/.Renvion.bck`.
55
-
Re-running the installer _will_ result in the old backup files being wiped.
56
53
57
54
Verify steps are conducted using embedded md5 hashes of the files.
58
55
If the hash is not identical to what was embedded, the installer will
@@ -83,22 +80,16 @@ With this being said, the code used to generate the installer has been made publ
83
80
Below is an abridged version of the actions of each file provided.
84
81
85
82
-`scripts/postinstall`
86
-
- Downloads and Installs Xcode CLI, `clang7`, and `gfortran6.1`
83
+
- Downloads and Installs Xcode CLIand the appropriate `gfortran` version
87
84
- Detects the appropriate `Command Line Tools` dmg installer
88
85
by using a [headless cli check](https://github.com/timsutton/osx-vm-templates/blob/ce8df8a7468faa7c5312444ece1b977c1b2f77a4/scripts/xcode-cli-tools.sh#L8-L14),
89
86
downloads the installer from <https://developer.apple.com/download/more/>,
90
87
and installs it using `softwareupdate`.
91
-
- Downloads the `clang-7.0.0.pkg` from
92
-
<https://cran.r-project.org/bin/macosx/tools/> and installs it into `/` directory
93
-
so that it is installed on `/usr/local/clang7`
94
-
- Downloads the gfortran binary 6.1 from
95
-
<https://cran.r-project.org/bin/macosx/tools/gfortran-6.1.pkg>, and
88
+
- Downloads the gfortran binary from
89
+
<https://github.com/fxcoudert/gfortran-for-macOS/releases>, and
96
90
and installs it into `/usr/local/gfortran`.
97
-
- Create the `~/.R/Makevars` file with the necessary implicit variables
98
-
to compile using the new header location.
99
-
- `CFLAGS`, `CPPFLAGS`, `CXXFLAGS` for `clang7`
100
-
- Make the `~/.Renviron` file with a modified `PATH` variable to the location of `clang7`.
101
-
-**Note:** Pre-existing `~/.R/Makevars` and `~/.Renviron` files will be backed up prior to being overridden.
91
+
- Removes the `~/.R/Makevars` and `~/.Renviron` files
92
+
-**Note:** Pre-existing `~/.R/Makevars` and `~/.Renviron` files will be backed up prior to being removed.
102
93
-`make_installer.sh`
103
94
- Create the installer package R binary installer `.pkg`
104
95
- Builds the package from the extracted tar using `pkgbuild`
\f0\b0 package. For this installer to work, please ensure a stable connection to the internet is available to download ~.6 GB of files. The installer will try to:\
14
+
\f0\b0 package. For this installer to work, please ensure a stable connection to the internet is available to download ~.5 GB of files. The installer will try to:\
\ls1\ilvl0\cf0\kerning1\expnd0\expndtw0{\listtext 1. }Install the {\field{\*\fldinst{HYPERLINK "https://developer.apple.com/library/content/technotes/tn2339/_index.html#//apple_ref/doc/uid/DTS40014588-CH1-WHAT_IS_THE_COMMAND_LINE_TOOLS_PACKAGE_"}}{\fldrslt Xcode Command Line Tools}} provided by {\field{\*\fldinst{HYPERLINK "https://developer.apple.com/download/more/"}}{\fldrslt Apple}}.\
18
-
{\listtext 2. }\expnd0\expndtw0\kerning0
19
-
Install the {\field{\*\fldinst{HYPERLINK "https://cran.r-project.org/doc/manuals/r-patched/R-admin.html#macOS"}}{\fldrslt clang7 binaries}} provided by {\field{\*\fldinst{HYPERLINK "https://r.research.att.com/libs"}}{\fldrslt CRAN}}.\
Create and populate{\field{\*\fldinst{HYPERLINK "https://cran.r-project.org/doc/manuals/R-exts.html#Using-Makevars"}}{\fldrslt ~/.R/Makevars}} and ~/.Renviron with the appropriate paths.\
21
+
Remove any existing{\field{\*\fldinst{HYPERLINK "https://cran.r-project.org/doc/manuals/R-exts.html#Using-Makevars"}}{\fldrslt ~/.R/Makevars}} and ~/.Renviron files.\
\ls1\ilvl1\cf0\kerning1\expnd0\expndtw0{\listtext\uc0\u8259}If any file is pre-existing, they will be copied with `.bck` extension. \expnd0\expndtw0\kerning0
23
+
\ls1\ilvl1\cf0\kerning1\expnd0\expndtw0{\listtext\uc0\u8259}Backups of each file will be made available with `.bck` extension. \expnd0\expndtw0\kerning0
0 commit comments