Create Custom Portal Content Loadable
To release content on an aircraft, developers can create, release and deliver a custom content loadable for portals.
The custom content loadable can be created in any JavaScript programming language, such as Angular and ReactJS, with the Mobile Passenger JavaScript SDK. The loadable requires either an emulator or rack environment for testing.
Note: If creating a portal content loadable for a NEXT system, please use Unity CLM. In addition, Unity CLM should be used to create content loadables for Interactives. The application has built in NBD manifest registration and auto signs certs for NEXT systems.
Requirements
- Portal Content Loadable Part Number
- For additional information on obtaining a content loadable part number, please contact your Panasonic focal.
- Operating Systems
- macOS -- versions 12.x Monterey,10.15 Catalina, 10.14 Mojave, 10.13 High Sierra, 10.12 Sierra, 10.11 El Capitan or 10.10 Yosemite (verified)
- Linux Ubuntu -- versions 14.04, 16.04 or 18.04 (verified)
- Linux Fedora -- versions 24 (verified)
- Portal Content Loadable Script
- Download MAKELOADPL_VER=03.20.7 script here: make_content_loadable_v20221026
- Homebrew Package Management Software
- Homebrew is used for macOS only
- Available online on the Homebrew site
Install Software
You can create a custom loadable on a macOS, Ubuntu or Fedora operating system.
macOS Installation
The macOS installation uses Homebrew Package Management Software. Homebrew is a free and open source software package management system that simplifies software installation on macOS.
To begin:
- Download Homebrew from https://docs.brew.sh//installation
- Install the following:
- brew install gnu-tar
- brew install md5sha1sum
- brew install squashfs
- brew install wget
- brew install xmlstarlet
- brew install cpanm
- cpan JSON
- On the macOS terminal, enter the following:
xcode-select --install ruby -e "\$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" brew install gnu-tar brew install md5sha1sum brew install squashfs brew install wget brew install xmlstarlet brew install cpanm sudo cpan JSON
The macOS installation is complete.
Ubuntu Installation
To begin:
- Install the following files:
- squashfs-tools
- libmxl2-utils
- xmlstarlet
- wget
- On the Ubuntu terminal, run:
sudo apt-get install -y squashfs-tools sudo apt-get install -y libxml2-utils sudo apt-get install -y xmlstarlet sudo apt-get install -y wget sudo cpan JSON
The Ubuntu installation is complete.
Fedora Installation
To begin:
- Install the following files:
- squashfs-tools
- libmxl libmxl2
- perl-XML-LibXML
- snapd
- libmxl2-utils
- wget
- On the Fedora terminal, run:
# By root user dnf install -y squashs-tools dnf install -y libxml libxml2 dnf install -y perl-XML-Parser dnf install -y xmlstarlet dnf install -y wget
The Fedora installation is complete.
Extract Make Portal Loadable File
The Make Portal Loadable file must be placed first in your User Home directory. The Make Loadable script does not support a file path with spaces.
To begin:
- Extract the make_portal_loadable_XXXXX.zip file to macOS, Ubuntu or Fedora.
- In the User Home directory, place the make_portal_loadable_vXXXX folder first. The Make Loadable script does not support file path with spaces.
macOS: /Users/${USER}/make_portal_loadable_vXXXX
Example: /Users/user/make_portal_loadable_v20221026
Linux OS: /home/${USER}/make_portal_loadable_vXXXX
Example: /home/user/make_portal_loadable_v20221026
Update Portal Assets
You must update the portal assets, such as HTML, CSS, JavaScript, images and fonts.
To begin:
- In the www folder, review and update the portal assets as follows:
└── www
├── index.html
Make Static Portal Content Loadable
To begin:
- In the make_portal_loadable_vXXXX folder, review and update the portal.info file as follows:
portal.info file for 00000LY0
PORTAL_ROOT_DIR=${W3DATA_DIR}/00000LY0_portal_app_exw_static DOMAIN_HOST_NAME=www.panair.com CONTENT_ACCESS_URL=/ HTTPS_KEYNAME=PANA_PORTAL_KEY HTTPS_CERTNAME=PANA_PORTAL_CERT HTTPS_REDIRECT=0
Parameters
- PORTAL_ROOT_DIR -- Verify the portal content loadable part number and folder name.
- DOMAIN_HOST_NAME -- Specify the portal domain.
- CONTENT_ACCESS_URL -- Specify:
- / - root -- main content
- /subfolder -- subfolder for sub or microsite content loadable.
- HTTPS_KEYNAME -- If the portal requires https access with HTTPS_REDIRECT=1 option, then specify the HTTPS key name.
- HTTPS_CERTNAME -- If the portal requires https access with HTTPS_REDIRECT=1 option, then specify the HTTPS certificate names.
- HTTP_REDIRECT -- Specify 0 for HTTP or 1 for HTTPS.
- Specify the make portal content loadable command.
cd make_portal_loadable_v20221026 ./make_loadable.sh p=00000LY0 v=01.00.00.1
Output Loadable tgz File by make_loadable.sh Command
The portal content loadable tgz file is generated under the Loadable folder. Example: ./loadable/K00000LYO_01.00.00.1.tgz
Make Non-Static Portal Content Loadable for Legacy Support
You can make a non-static portal content loadable to support the legacy PortalWorks portal loader, part number 000002AB.
To begin:
- Specify nonstatic option to the make_loadable.sh with the following options:
- nonstatic -- required for non-static portal content loadable
- p={PART_NUMBER} -- required
- n={CONTENT_FOLDER_NAME} -- required
- v={VERSION_NUMBER} -- required
- url={CONTENT_ACCESS_URL} -- optional
- content -- optional for portal sub content loadable
- Specify the make_loadable.sh options as follows:
For the main portal loadable:
cd make_portal_loadable_v20221026 ./make_loadable.sh p=00000LY0 n=portal_app_exw nonstatic v=01.00.00.1
For the portal sub content, specify the "content " and "url=" options:
cd make_portal_loadable_v20221026 ./make_loadable.sh p=0000LY0 n=portal_app_exw nonstatic content url=/content v=01.00.00.1
Output Loadable tgz File by make_loadable.sh Command
The portal content loadable tgz file is generated under the Loadable folder. Example: ./loadable/K00000LYO_01.00.00.1.tgz