Project

General

Profile

CiviCRM for Drupal 8 installation notes » History » Version 14

Jon Goldberg, 04/18/2019 03:16 PM

1 5 Jon Goldberg
{{last_updated_at}} by {{last_updated_by}}
2 1 Jon Goldberg
# CiviCRM for Drupal 8 installation notes
3
4 8 Jon Goldberg
* Make sure your composer version is up to date!  The one that ships with civicrm-buildkit is quite old.
5
* Run the composer command on [David Snopek's blog post](https://www.mydropwizard.com/blog/better-way-install-civicrm-drupal-8) that fits your scenario (creating a new site vs. adding Civi to an existing D8 site).
6
 * New site is: `composer create-project roundearth/drupal-civicrm-project:8.x-dev some-dir --no-interaction`
7
* Add the following to `civicrm.settings.php` (modify the last line for your actual CMS root, and paste this after `CIVICRM_UF_BASEURL` is defined):
8 1 Jon Goldberg
9 8 Jon Goldberg
```php
10
$civicrm_setting['URL Preferences']['userFrameworkResourceURL'] = CIVICRM_UF_BASEURL . '/libraries/civicrm/';                                                                                                     
11
$civicrm_paths['civicrm.root']['url'] = CIVICRM_UF_BASEURL . '/libraries/civicrm/';
12
$civicrm_setting['domain']['userFrameworkResourceURL'] = CIVICRM_UF_BASEURL . '/libraries/civicrm/';
13
$civicrm_paths['cms.root']['path'] = '/home/jon/local/drupal8test/web';
14 2 Jon Goldberg
```
15 8 Jon Goldberg
* If you prefer separate Drupal and Civi databases, [dump the Civi tables only](https://stackoverflow.com/a/5269543/2832108) and [drop the Civi tables](https://stackoverflow.com/a/1589324/2832108).  Load them into a new database and modify your `CIVICRM_DSN` in `civicrm.settings.php` accordingly.
16 1 Jon Goldberg
17 8 Jon Goldberg
#### kcfinder
18
19 13 Jon Goldberg
[Note there is an [merged MR](https://gitlab.com/roundearth/civicrm-composer-plugin/merge_requests/2) to handle the first two steps in `civicrm-composer-plugin` but it's not published to packagist yet.  The third step should be included in Civi 5.13.]
20 8 Jon Goldberg
kcfinder (image browsing/upload within CKEditor) is currently broken.  You need to do several things to fix.
21 1 Jon Goldberg
* First, copy it to libraries/civicrm: `cp -r vendor/civicrm/civicrm-core/packages/kcfinder web/libraries/civicrm/packages/`.
22 13 Jon Goldberg
* Your `<webroot>/libraries/civicrm/settings_location.php` should read:
23
24
```php
25
<?php
26
27 14 Jon Goldberg
define('CIVICRM_CONFDIR', dirname(dirname(dirname(dirname(__FILE__)))) . '/web/sites');
28 13 Jon Goldberg
```
29
30 8 Jon Goldberg
* Apply [this PR](https://github.com/civicrm/civicrm-packages/pull/242) to `<webroot>/libraries/civicrm/packages/kcfinder/integration/civicrm.php`.
31 1 Jon Goldberg
32
#### non-bootstrap scripts
33
34 13 Jon Goldberg
[There's an [open MR](https://gitlab.com/roundearth/civicrm-composer-plugin/merge_requests/4) to handle this]
35 8 Jon Goldberg
36 13 Jon Goldberg
* To get `extern` scripts and `bin/csv/import.php` loading correctly, create a *second* `settings_location.php` in `vendor/civicrm/civicrm-core`:
37
38
```php
39 1 Jon Goldberg
<?php
40 8 Jon Goldberg
41
define('CIVICRM_CONFDIR', dirname(dirname(dirname(__FILE__))) . '/sites');
42 1 Jon Goldberg
```