Skip to content

trinity-labs/dashboard-skin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation




Views contributions welcome


From a Skin to an App for Linux Alpine Configuration Framework commonly called ACF

⚠️ Project in constent dev, please report errors!

This project cover ONLY Alpine Linux ACF Core Modules. Just the base framework (acf-lib / acf-core / acf-alpine-baselayout). Other app not covered for now eg: acf-openssl acf-docker acf-etc... It's part of a future project, maybe...

All other core pages should modified once all dashboard modules are in prod (finished)

Up to date shell script setup Lua 5.4

PATH=/usr/local/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/root/bin

# Package for Alpine ACF Lua 5.4
apk add gcc musl-dev make pkgconfig asciidoc lua5.4 lua5.4-dev lua5.4-libs lua5.4-md5 haserl-lua5.4 git || exit 1

# Export config lib lua 5.4
export PKG_CONFIG_PATH=/usr/lib/pkgconfig

# Clone all Lua 5.4 repos

git clone https://github.com/trinity-labs/acf-core-lua5.4
git clone https://github.com/trinity-labs/acf-lib-lua5.4
git clone https://github.com/trinity-labs/lua5.4-subprocess
git clone https://github.com/trinity-labs/dashboard-skin

# build Libs
cd ~/acf-lib-lua5.4
make install

# build ACF
cd ~/acf-core-lua5.4
make install

# build Lua Subprocess
cd ~/lua5.4-subprocess 
make clean
make install

# Setup Dashboard 
cp ~/dashboard-skin/acf.conf /etc/acf/
cp -r ~/dashboard-skin /usr/share/acf/www/skins/dashboard
rm -vf /usr/share/acf/www/skins/dashboard/acf.conf

#Done
exit

✅ Lighttpd Ready - Remove Mini_httpd

ACF on Lighttpd

  • Features

Light-weight App (Less than 2 MB) installed


ACF System Version - ASV


Fisrt check Alpine Linux running version
Then compare to Alpine official Releases website
Finaly build latest version post url from Alpine official website eg :

So we have a basic version checker in Lua that need WAN access and DNS avaible


ACF System Self-check - ASS




Return Lua ACF used version (5.4.6) and ACF Server version :

  • Lighttpd: v.1.4.71 => last released on May 27, 2023 - Light, Fast & Highly customisable | ACF on Lighttpd
  • Mini_httpd: v.1.30 => last released on Oct 26, 2018

⚠️ Lua function, check version of both lighttpd and mini_httpd. If lighttpd is install on system, command return lighttpd as prefered ACF server.

However, it's the best choice to switch to lighttpd for ACF


ACF System Uptime - ASU


Get live uptime timer in Lua and JS to parse /proc/uptime in major Linux distro to convert seconds in human readeable value and up to centuries


ACF CPU Manufacturer - ACM


Return CPU Model and Manufacturer icon. If know, return board and bios infos - (please report errors)


ACF CPU Temp - ACT




Get live proc temp (checked every seconds) from /sys/class/thermal/thermal_zone2/temp (seems target x86_pkg_temp on main x86 systems - please report errors) else print NaN


ACF [Group] [Process] - [Short-Name]


This is the convention for ACF Dashboard Core Modules Naming.
When a module is in prod, it's pushed here!

  • ANG (ACF Network Graph) and ANM (ACF Network Map) work in progress, incoming ...
  • ADV (ACF Disk Viewer) work in progress, incoming ...


  • Install

Install essential packages :

Edit ACF core config file /etc/acf/acf.conf and replace following lines for overriding core template

...
# Directories where the application resides
...
appdir=/usr/share/acf/www/skins/dashboard/app/,/usr/share/acf/app/
libdir=/usr/share/acf/www/skins/dashboard/lib/,/usr/share/acf/lib/
wwwdir=/usr/share/acf/www/skins/dashboard/www/,/usr/share/acf/www/
staticdir=/skins/static/
skindir=/skins/,/userskins/
...
...
# ACF is skinnable - this specifies the active skin
#  will attempt to load skin/basename(skin).css
skin=/skins/dashboard
...


⚠️ CPU Temp bugs - Network Chart only eth0 - Disk Partition to be continued, etc: Please be patient!



  • Logon


  • Dashboard

About

Dashboard App for Alpine Linux ACF

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published