0100-mesh-vpn.lua 816 B

12345678910111213141516171819202122232425262728293031323334
  1. local uci = require("simple-uci").cursor()
  2. local lutil = require "gluon.web.util"
  3. local site = require 'gluon.site_config'
  4. local sysconfig = require 'gluon.sysconfig'
  5. local util = require "gluon.util"
  6. local pretty_hostname = require 'pretty_hostname'
  7. local meshvpn_enabled = uci:get_bool("fastd", "mesh_vpn", "enabled")
  8. local hostname = pretty_hostname.get(uci)
  9. local contact = uci:get_first("gluon-node-info", "owner", "contact")
  10. local pubkey
  11. local msg
  12. if meshvpn_enabled then
  13. pubkey = util.trim(lutil.exec("/etc/init.d/fastd show_key mesh_vpn"))
  14. msg = _translate('gluon-config-mode:pubkey')
  15. else
  16. msg = _translate('gluon-config-mode:novpn')
  17. end
  18. if not msg then return end
  19. renderer.render_string(msg, {
  20. pubkey = pubkey,
  21. hostname = hostname,
  22. site = site,
  23. sysconfig = sysconfig,
  24. contact = contact,
  25. })