RADIUSdesk

Themed RADIUSdesk on Ubuntu 20.04

Creating A Custom Theme - Part 1

  • This part will show you how to modify the base theme which RADIUSdesk uses when building the production optimised Javascript Code.
  • Make sure you have access to the RADIUSdesk repository to check it out using git.
# Check out the latest version of RADIUSdesk
# We will check it out in the home directory of the **system** user.
cd ~
git clone https://github.com/RADIUSdesk/rdcore.git
  • Check out the Ext JS GPL version SDK
cd ~
mkdir extjs-gpl
cd extjs-gpl/
git clone https://github.com/tremez/extjs-gpl.git
ln -s /home/system/extjs-gpl/extjs-gpl /home/system/rdcore/rd/ex
  • For this reference we will create a black theme with red lettering.
cd /home/system/rdcore/rd/packages/local/rd-theme/sass/var
vi Component.scss
  • The file looks as follows
$base-color: #000000 !default;
$panel-header-color: #ff3300 !default;
$tab-color-active: #ff3300 !default;
  • Please adapt to the them you want.
  • After you made the adjustments, you can now build the new theme.
cd /home/system/rdcore/rd/packages/local/rd-theme
sencha package build
  • Now that the theme is completed we can build the RADIUSdesk production GUI to see how it looks.

Creating A Custom Theme - Part 2

Development built

  • One can create a development and/or a production built using the Sencha Command.
  • To build the development code:
cd /home/system/rdcore/rd
sencha app refresh
sencha app build development
  • Create this built if you also want to modify some of the RADIUSdesk GUI code and you want to see the modifications before building the final built.

Production built

  • To build the production ready optimized code
cd /home/system/rdcore/rd
sencha app refresh
sencha app build production
  • This will now build the production ready code but we actually need to see how it looks in order to determine that the theme is in order.
  • The production ready code will sit in this directory /home/system/rdcore/rd/build/production/Rd

Looking At The Results

  • Link the rd directory to the rd_tmp directory served in the webroot of the Nginx web server.
sudo ln -s /home/system/rdcore/rd /var/www/html/rd_tmp