This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
technical_discussions:sencha_command [2021/06/19 13:47] – created admin | technical_discussions:sencha_command [2022/06/15 08:07] (current) – admin | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Using the Sencha Command to Rebuild Optimized JS code ====== | ====== Using the Sencha Command to Rebuild Optimized JS code ====== | ||
+ | ===== Background ===== | ||
+ | |||
* RADIUSdesk uses the ExtJS toolkit for the GUI | * RADIUSdesk uses the ExtJS toolkit for the GUI | ||
* The version used is the GPL version 7.0 (The Non-GPL version is already at 7.4) | * The version used is the GPL version 7.0 (The Non-GPL version is already at 7.4) | ||
+ | * We assume you have standard install of the Git code of RADIUSdesk. | ||
+ | |||
+ | ===== Get the Sencha Command ===== | ||
+ | * Go to this URL: https:// | ||
+ | * Select under the **Installers without JRE Included** the **LINUX 64-BIT** link and download the latest installer. | ||
+ | * As the link states, there is no JRE bundled with the installer, you have to install a JRE on your system for the JRE to work correct. | ||
+ | * Install a JRE on Ubuntu 20.04 | ||
+ | <code bash> | ||
+ | sudo apt install default-jre | ||
+ | </ | ||
+ | ===== Install the Sencha Command ===== | ||
+ | |||
+ | * Unzip the Sencha Command file | ||
+ | <code bash> | ||
+ | unzip SenchaCmd-7.4.0.39-linux-64-no-jre.zip | ||
+ | #This is the output | ||
+ | # | ||
+ | # inflating: SenchaCmd-7.4.0.39-linux-amd64.sh | ||
+ | </ | ||
+ | * Run the installer shell (using the file which was produced during the unzip) | ||
+ | <code bash> | ||
+ | | ||
+ | #This might be needed (!=== REPLACE '/ | ||
+ | export PATH=$PATH:/ | ||
+ | </ | ||
+ | * Depending if you are on a system with some desktop (like Xfe) or without one, the installer will ask you some questions about the install. Just select the defaults to complete the install. | ||
+ | * After the install, you should be able to run the Sencha command | ||
+ | <code bash> | ||
+ | sencha help | ||
+ | </ | ||
+ | |||
+ | ===== Check out the GPL version of ExtJS ===== | ||
+ | * A git repo with the GPL version of ExtJS 7.0 is here: https:// | ||
+ | * Select a working directory where you want to check it out into | ||
+ | <code bash> | ||
+ | #As an example | ||
+ | cd / | ||
+ | git clone https:// | ||
+ | </ | ||
+ | |||
+ | ===== Link it to the JS Code ===== | ||
+ | * If you have a standard Git install of RADIUSdesk there will be the following folder **/ | ||
+ | * Create the following symbolic link | ||
+ | <code bash> | ||
+ | sudo ln -s / | ||
+ | </ | ||
+ | |||
+ | ===== Change the ownership and make create a dev area ===== | ||
+ | * We will create a dev area to test our changes and see if they are working. | ||
+ | * We assume a user called **system** will edit the files. Change to fit your environment. | ||
+ | <code bash> | ||
+ | sudo ln -s / | ||
+ | sudo chown -R system. / | ||
+ | sudo chown -R www-data. / | ||
+ | sudo chown -R www-data. / | ||
+ | sudo chown -R www-data. / | ||
+ | sudo chown -R www-data. / | ||
+ | sudo chown -R www-data. / | ||
+ | sudo chown -R www-data. / | ||
+ | sudo chown -R www-data. / | ||
+ | sudo chown -R www-data. / | ||
+ | </ | ||
+ | |||
+ | ===== Confirm everything is working ===== | ||
+ | * The following URL will display the non-optimized code | ||
+ | * http:// | ||
+ | * You can now modify the code and test the changes under that URL | ||
+ | * Once you are happy with all your changes its time to optimize the code | ||
+ | <code bash> | ||
+ | cd / | ||
+ | | ||
+ | #Note there will be some JRE related warnings... thats normal | ||
+ | </ | ||
+ | * After the build it optimised you can reach it here | ||
+ | * http:// | ||
+ | * -OR- | ||
+ | * http:// | ||
+ | ===== Making your changes ' | ||
+ | * To serve these latest changes under the document root of Nginx | ||
+ | <code bash> | ||
+ | sudo cp -R / | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||