Installing and Using Alternate Developer Tools

This article primarily describes which applications can and cannot be used on BYU Domains.

Can we install other developer applications like node.js, angular, etc.?

No, BYU Domains is built on a LAMP platform. PHP is the primary supported language and all the installed applications are open source, PHP based apps.

Also, because this is a shared server, the processes running on the server affect everyone; this is why users do not have root access to the system. There isn’t sufficient isolation between users to allow any random user to install and run and package as they like. We carefully control what’s installed to make the shared machine appear as if it is many machines. Users wanting to install developer tools and stop Apache need to have their own server because these actions would take down the LAMP environment everyone else is using. This service is not intended to be a server for learning how to do system administration, install packages, etc. The main focus of BYU Domains is to teach the less technical skills necessary to build a site and create an identity.

Some of the commonly requested applications asked about that cannot be installed are

  • node.js, yoman, express, angular
  • Is there a way to get into the sudoers file so we can install applications? No.
  • Is there a way to configure Apache as a normal user? No.
  • Is there a way we can stop Apache so we can use port 80? No.

We are encouraging all users with a large amount of data/files and for those who want to do more systems administration to use something other than BYU Domains (local server, an EC2 or Beanstalk instance Amazon AWS, etc.) since a large amount of data can affect other users on the system.

We usually direct faculty and students to use Amazon AWS Educate. BYU is an institutional member. Upon creating an account you are automatically signed up for the Amazon “Free-Tier,” plus faculty get $200 per year of Amazon credit and students $100 per year of Amazon credit. You are required to enter a credit card in case your usage exceeds the terms of the agreement or for after the term of the agreement expires.

Python & Django Support

Users can run Python and Django. Here's a guide to working with Python on the server:

Essentially it's just a matter of using htaccess to tell the Apache server that you're serving up files that are actually scripts meant to be executed.

Want to learn more about how to add a Python app, see the video below:

Drush Support

Drush is installed and available on the server for all users.

If a user cannot access Drush, it is possible that the user is getting blocked from SSH logins.

If this is the case for you, make sure port 22 is available when trying to connect (some wireless networks may block that). The OIT Service Desk can check the firewall through the IP address if needed.

Supported PHP plug-ins