Naviga Web
Docs Home
  • Introduction
  • Release notes
  • Starter kit
    • Introduction
    • Environment Variables
    • Makefile
    • Changelog
    • API
  • Feature: Advanced Search
    • User guide
    • Search Help
    • How to Setup
    • Technical Details
  • Developer documentation
    • Developer prerequisites
      • Developer hardware suggestions
      • Setup on Windows
      • Setup on Linux/Ubuntu
    • Getting started with development
      • Composer package management
      • Gulp and asset building (optional)
      • Git
      • Hosts file
      • Certificate
      • Initiate Naviga Web
      • Start Naviga Web
      • Bin scripts
      • Create theme
      • Environments
      • Deployment
      • Onboarding tasks
        • #0 - New site
        • #1 - Configuration
        • #2 - Front page
        • #3 - Content presentation
        • #4 - OC List
        • #5 - Content containers
        • #6 - Teaser template
        • #7 - Single article
        • #8 - Widget
        • #9 - Custom task
        • #10 - Feedback
    • Architecture
    • Paywall and authentication
      • CloudFront Paywall
      • Engage paywall
      • Lua Paywall (deprecated)
    • Project management: A typical project
    • Database dump
    • Debugging
    • Keep your project up-to-date
    • Gulp and Sass
    • Domain mapping
    • Widgets overview
  • Starter kit packages
    • Base package
      • Changelog
    • Boards plugin (EveryBoard)
      • Installation
      • Setup
      • Board Widgets
        • Linked board
        • Template board
        • Embed widget
        • OC List item
        • Content container
      • Teaser templates
      • Actions and filters
      • Export - import
      • Changelog
    • ContentSync plugin
      • Usage
      • Changelog
    • Drop In Plugins package
      • Changelog
    • Everyware plugin
      • Installation
      • Setup
      • Actions and filters
      • Fetching lists and their content
      • Sorting
      • Widgets
      • Changelog
    • Imengine package
      • Helper class: Imengine
      • Changelog
    • NewsML package
      • Idf Parser
      • Changelog
      • Usage
    • NGINX conf package
      • API
      • Changelog
      • Usage
    • Presentation Preview plugin
      • API
      • Changelog
      • Usage
    • Support package
      • Changelog
    • Theme EU resources package*
      • Changelog
    • Theme US resources package
      • Changelog
    • Twig package
      • Development
        • Filters
          • class_string
          • spacey
          • trim_array
        • Functions
          • php_function
          • php_method
          • render_classes
          • render_partial
        • Operators
          • contains
      • Helper classes
        • View
        • ViewSetup
      • Changelog
  • Widgets and component packages
    • Article List widget
      • Installation
      • Using Article List
      • Changelog
    • Menu handler
      • Usage
      • Changelog
    • Section Header widget
      • Changelog
    • Social media icons widget
      • Installation
      • Changelog
    • Google Analytics plugin
      • Set up Google Analytics
      • Most read widget
      • Changelog
    • Redirect Original URLs plugin
      • Installation
      • Changelog
    • Settings Parameters plugin
      • Installation
      • Usage
      • Changelog
  • Design and theme packages
    • Base theme 1
      • Changelog
    • Base theme 2
      • Colors
      • Fonts
      • Header
      • Menus
      • Pages with Board
      • Sidebars
      • Teaser layouts
      • Article page (text)
      • Article page (embeds)
      • Changelog
    • Example theme
      • Changelog
  • MU Plugins
    • Project Plugin
      • Installation
      • Changelog
    • Starter Package Catalyst
    • Concepts
      • Admin Pages
        • All Concepts
        • Add New Concept
        • Types
        • Errors
        • Concept duplicates
      • API
      • Console
      • Changelog
    • Network
      • Changelog
    • Cache Invalidator
      • Getting Started & WP admin
      • Implementation of Lua endpoint
      • Filters
      • Changelog
    • RSS Feeds
      • Setup
      • Administration pages
      • Changelog
  • Services
    • Imengine
    • Imengine documentation
    • Open Content
    • Writer Bookmarklet
Powered by GitBook
On this page
  • Linux/Ubuntu Development Environment Setup
  • Clone Starter Kit Repository in local from bitbucket:
  • In Starter Kit:
  • Starting the Project:
  • Updating Host File:
  • Common Setup Issues:

Was this helpful?

  1. Developer documentation
  2. Developer prerequisites

Setup on Linux/Ubuntu

Linux/Ubuntu Development Environment Setup

Special setup when developing in the Linux/Ubuntu platform.

Install tools in terminal

#Node.js Installation
sudo apt update
sudo apt install nodejs
#cURL Installation
sudo apt-get install curl
#Composer Installation
sudo apt install curl php-mbstring git unzip
curl -sS https://getcomposer.org/installer | sudo php -- --install-
dir=/usr/local/bin --filename=composer
#Gulp Installation
sudo apt install gulp
#Docker Installation
sudo apt install docker-compose

#Verify Installation (Linux/Ubuntu)

node –v #for node
curl –version #for curl
composer #for composer
gulp –v #for gulp
docker –version #for docker

Clone Starter Kit Repository in local from bitbucket:

  1. Search the repository in bitbucket and clone it from the bitbucket

  2. Popup will open. Select the option ssh and copy the url from it

  3. Paste this url in the terminal

  4. If you are already an existing customer, then you should use your own repository and checkout in the develop branch, by these commands

cd {repository_name}
git checkout develop

In Starter Kit:

  1. Add .env file in the Starter Kit.

  2. Makefile Configuration (Linux/Ubuntu): Update the Makefile in the Starter Kit to fix IP address retrieval issues. Modify the Makefile by making the following adjustments.

Remove below mentioned line

export MY_IP := $(shell ifconfig | awk '/inet (addr:)?([0-9]*\.){3}[0-9]*/ {
print $$2 }' | tail -1)

Add below lines at the same location

ifeq ($(osversion), Linux)
export MY_IP = $(shell ip -4 address | grep 'scope global dynamic' | egrep -
o 'inet [0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | cut -d' ' -f2)
else
export MY_IP := $(shell ifconfig | awk '/inet (addr:)?([0-9]*\.){3}[0-9]*/ {
print $$2 }' | tail -1)
endif
$(info $$MY_IP is [${MY_IP}])

Starting the Project:

  1. Set permissions for docker and initiate the docker container.

sudo chmod 666 /var/run/docker.sock
  1. Install WordPress and Tools: Execute the script for installing WordPress, Composer dependencies, Gulp, and related packages:

./bin/init.sh or make init
  1. Verify Docker Images:

docker ps
  1. Project Start

make start

5. Gulp Start

make gulp watch
  1. Composer Update

make composer update

Updating Host File:

  1. Edit Host File: Open the host file for editing.

sudo nano /etc/hosts
  1. Add Project URLs: Write the following lines at the beginning, replacing existing localhost entries.

127.0.0.1  localhost site.everywarestarterkit.local
everywarestarterkit.local lavender.everywarestarterkit.local

Note: Remove 'https://' and trailing '' from the project URL.

Common Setup Issues:

To prevent conflicts during the setup, ensure that the following services are stopped before initiating the project:

  1. Nginx Nginx is a web server that may interfere with the Starter Kit. Stop it using the command:

sudo service nginx stop
  1. MySQL MySQL is a popular database that may interfere with the Starter Kit. Stop it using the command:

sudo service mysql stop
PreviousSetup on WindowsNextGetting started with development

Last updated 1 year ago

Was this helpful?