Greenmine/install: Difference between revisions

From Woozle Writes Code
Jump to navigation Jump to search
No edit summary
No edit summary
 
(5 intermediate revisions by the same user not shown)
Line 1: Line 1:
* Install [[Ferreteria]]
The previous draft of installation instructions is [[/take 1|here]], for reference. [[Ferreteria]] is now included as a submodule of Greenmine, which affects folder locations and negates the need to clone it separately.
** This creates some folders which the following instructions assume already exist.
* Clone the [https://gitlab.com/woozalia/greenmine Greenmine Git repository] into a folder of your choice, which we'll call {{arg|greenmine base}}.
** My [[setups/vdomain|standard location]] for this is <code>/home/{{arg|user}}/site/git/greenmine/</code>.
* Copy the <code>{{arg|greenmine base}}/config</code> folder to a location outside of <code>[greenmine base]</code>.
** We'll call this new location <code>{{arg|local config}}</code>.
** My [[setups/vdomain|standard location]] for this is <code>/home/{{arg|user}}/site/config/greenmine</code>
* Make a copy of the <code>{{arg|local config}}/example</code> folder and name it <code>{{arg|local config}}/local</code>.


{{hilite|'''documentation in progress'''}}
I'll use the following shorthand:
===Steps===
* '''{{arg|$HOME}}''' = the home folder for all of the domain-user's files
After [[htyp:Ferreteria/install|installing Ferreteria]], run these commands in a terminal on your web server:
* '''{{arg|$WEB}}''' = the public HTML folder (typically <code>public_html</code> or <code>www</code>) inside {{arg|$HOME}}
cd {{arg|$HOME}}
* '''{{arg|$gm}}''' = the Greenmine base folder (My convention: {{arg|$HOME}}/site/git/ferreteria)
su {{arg|$USER}}
 
cd site/git
See [[conventions/vdomain]] for more explanation.
{{l/htyp|git clone}} git@gitlab.com:woozalia/greenmine.git
cd ../config


{| style="background: #fef;"
{| border=1
|-
! Action / Intention !! Commands !! Where You End Up
|-
| Set up folder structure
|-
| || cd {{arg|$HOME}} || {{arg|$HOME}}
|-
| ||
mkdir site
cd site
mkdir git
cd git
| {{arg|$HOME}}/site/git
|-
| Install Greenmine & Ferreteria
|
git clone git@gitlab.com:woozalia/greenmine.git
| {{arg|$HOME}}/site/git
|-
| colspan=3 | Link to Ferreteria from a standard location, so we can use the standard Ferreteria installation instructions.
|-
| || <code>ln -sv greenmine/ferreteria
|-
| colspan=3 | [[htyp:Ferreteria/install|Install Ferreteria]] (skip the <code>git clone</code> step; we've already done that here).
|-
|-
| style="border: 1px solid blue;" valign=top |
| colspan=3 | Set up more folder structure: config folders
====For standard install:====
|-
cp -R ../git/greenmine/config greenmine
| || <code>cd {{arg|$HOME}}/site</code> || {{arg|$HOME}}/site
cp -R greenmine/example greenmine/local
|-
This just copies the config folders from the git repository into the site configuration.
| ||
| style="border: 1px solid blue;" valign=top |
mkdir config
====For developers:====
cd config
  mkdir greenmine
  mkdir greenmine
  ln -rs ../git/greenmine/config/example greenmine/example
  cd greenmine
ln -rs ../git/greenmine/config/portable greenmine/portable
mkdir portable
This makes links from the site configuration folders back to the git repository, so any alterations to portable files will be included in git commits.
| {{arg|$HOME}}/site/config/greenmine/portable
|-
| colspan=3 | Make soft links from <code>{{arg|$gm}}/config/portable/*</code> to <code>{{arg|$HOME}}/config/greenmine/portable/</code>.
|-
| IN PROGRESS
ln -sv ../../../
|}
|}
Then edit the files in <code>greenmine/local</code> as needed. You will definitely need to edit creds.php in order to get things working.


{{hilite|'''documentation in progress'''}}
{{hilite|'''documentation in progress'''}}


Note: might want to link instead of copying files that don't need to be edited, so the defaults get updated. Investigate later.
'''TODO''': document creation of database and tables

Latest revision as of 17:51, 11 November 2021

The previous draft of installation instructions is here, for reference. Ferreteria is now included as a submodule of Greenmine, which affects folder locations and negates the need to clone it separately.

I'll use the following shorthand:

  • <$HOME> = the home folder for all of the domain-user's files
  • <$WEB> = the public HTML folder (typically public_html or www) inside <$HOME>
  • <$gm> = the Greenmine base folder (My convention: <$HOME>/site/git/ferreteria)

See conventions/vdomain for more explanation.

Action / Intention Commands Where You End Up
Set up folder structure
cd <$HOME> <$HOME>
mkdir site
cd site
mkdir git
cd git
<$HOME>/site/git
Install Greenmine & Ferreteria
git clone git@gitlab.com:woozalia/greenmine.git
<$HOME>/site/git
Link to Ferreteria from a standard location, so we can use the standard Ferreteria installation instructions.
ln -sv greenmine/ferreteria
Install Ferreteria (skip the git clone step; we've already done that here).
Set up more folder structure: config folders
cd <$HOME>/site <$HOME>/site
mkdir config
cd config
mkdir greenmine
cd greenmine
mkdir portable
<$HOME>/site/config/greenmine/portable
Make soft links from <$gm>/config/portable/* to <$HOME>/config/greenmine/portable/.
IN PROGRESS
ln -sv ../../../

documentation in progress

TODO: document creation of database and tables