Skip to content
Snippets Groups Projects
Select Git revision
  • a9f11e36bd9c2b62da6441914552c243cef7b502
  • experimental default protected
  • v2023.2.5-ffs
  • nrb/ex400-remove-wps
  • nrb/airmax-test
  • v2023.2.4-ffs
  • nrb/ar9344-reset-sequence
  • autinerd/experimental-openwrt-24.10
  • v2023.2.3-ffs
  • v2023.2.2-ffs
  • v2023.2-ffs
  • v2023.1-ffs
  • v2022.1.4-ffs
  • feature/addMikrotikwAP
  • v2022.1.3-ffs
  • v2021.1.2-ffs
  • v2022.1.1-ffs
  • master protected
  • v2021.1.1-ffs
  • nrb/gluon-master-cpe510
  • v2021.1-ffs
  • experimental-2025-07-22
  • experimental-2025-07-22-base
  • experimental-2025-07-21
  • experimental-2025-07-21-base
  • experimental-2025-07-20
  • experimental-2025-07-20-base
  • experimental-2025-07-19
  • experimental-2025-07-19-base
  • experimental-2025-07-17
  • experimental-2025-07-17-base
  • experimental-2025-07-12
  • experimental-2025-07-12-base
  • experimental-2025-07-04
  • experimental-2025-07-04-base
  • experimental-2025-07-01
  • experimental-2025-07-01-base
  • experimental-2025-06-25
  • experimental-2025-06-25-base
  • experimental-2025-06-24
  • experimental-2025-06-24-base
41 results

gluon-info

Blame
  • user avatar
    a8d6a99f
    History
    gluon-info 1.08 KiB
    #!/usr/bin/lua
    
    local uci = require('simple-uci').cursor()
    local pretty_hostname = require 'pretty_hostname'
    
    local site = require 'gluon.site'
    local sysconfig = require 'gluon.sysconfig'
    local platform = require 'gluon.platform'
    local util = require 'gluon.util'
    local has_vpn, vpn = pcall(require, 'gluon.mesh-vpn')
    
    local pubkey
    if has_vpn and vpn.enabled() then
    	local _, active_vpn = vpn.get_active_provider()
    
    	if active_vpn ~= nil then
    		pubkey = active_vpn.public_key()
    	end
    end
    
    local values = {
    	{ 'Hostname', pretty_hostname.get(uci) },
    	{ 'MAC address', sysconfig.primary_mac },
    	{ 'Hardware model', platform.get_model() },
    	{ 'Gluon version / Site version', util.trim(util.readfile('/lib/gluon/gluon-version'))
    		.. ' / ' .. util.trim(util.readfile('/lib/gluon/site-version')) },
    	{ 'Firmware release', util.trim(util.readfile('/lib/gluon/release')) },
    	{ 'Site', site.site_name() },
    	{ 'Public VPN key', pubkey or 'n/a' },
    }
    
    local padTo = 24
    
    for _, info in ipairs(values) do
    	local labelLen = string.len(info[1]) + 1
    
    	print(info[1] .. ':' .. string.rep(' ', padTo - labelLen), info[2])
    end