summaryrefslogtreecommitdiffhomepage
path: root/applications/luci-app-lxc
diff options
context:
space:
mode:
Diffstat (limited to 'applications/luci-app-lxc')
-rw-r--r--applications/luci-app-lxc/luasrc/controller/lxc.lua40
-rw-r--r--applications/luci-app-lxc/luasrc/model/cbi/lxc.lua2
-rw-r--r--applications/luci-app-lxc/luasrc/view/lxc.htm20
3 files changed, 32 insertions, 30 deletions
diff --git a/applications/luci-app-lxc/luasrc/controller/lxc.lua b/applications/luci-app-lxc/luasrc/controller/lxc.lua
index 8557f2b821..dcba51bf7b 100644
--- a/applications/luci-app-lxc/luasrc/controller/lxc.lua
+++ b/applications/luci-app-lxc/luasrc/controller/lxc.lua
@@ -19,6 +19,7 @@ module("luci.controller.lxc", package.seeall)
local uci = require "luci.model.uci".cursor()
local util = require "luci.util"
local nx = require "nixio"
+local url = uci:get("lxc", "lxc", "url")
function index()
if not nixio.fs.access("/etc/config/lxc") then
@@ -38,12 +39,12 @@ function index()
end
function lxc_get_downloadable()
- local target = lxc_get_arch_target()
- local templates = {}
+ local target = lxc_get_arch_target(url)
local ssl_status = lxc_get_ssl_status()
+ local templates = {}
local f = io.popen('sh /usr/share/lxc/templates/lxc-download --list %s --server %s 2>/dev/null'
- %{ ssl_status, util.shellquote(uci:get("lxc", "lxc", "url")) }, 'r')
+ %{ ssl_status, util.shellquote(url) }, 'r')
local line
for line in f:lines() do
local dist, version, dist_target = line:match("^(%S+)%s+(%S+)%s+(%S+)%s+default%s+%S+$")
@@ -65,18 +66,17 @@ function lxc_create(lxc_name, lxc_template)
return
end
- local ssl_status = lxc_get_ssl_status()
-
local src_err
+ local ssl_status = lxc_get_ssl_status()
local lxc_dist, lxc_release = lxc_template:match("^(.+):(.+)$")
luci.http.write(util.ubus("lxc", "create", {
name = lxc_name,
template = "download",
args = {
- "--server", uci:get("lxc", "lxc", "url"),
+ "--server", url,
"--dist", lxc_dist,
"--release", lxc_release,
- "--arch", lxc_get_arch_target(),
+ "--arch", lxc_get_arch_target(url),
ssl_status
}
}), src_err)
@@ -153,19 +153,21 @@ function lxc_configuration_set(lxc_name)
luci.http.write("0")
end
-function lxc_get_arch_target()
+function lxc_get_arch_target(url)
local target = nx.uname().machine
- local target_map = {
- armv5 = "armel",
- armv6 = "armel",
- armv7 = "armhf",
- armv8 = "arm64",
- x86_64 = "amd64"
- }
- local k, v
- for k, v in pairs(target_map) do
- if target:find("^" ..k.. "$") then
- return v
+ if url and url:match("images.linuxcontainers.org") then
+ local target_map = {
+ armv5 = "armel",
+ armv6 = "armel",
+ armv7 = "armhf",
+ armv8 = "arm64",
+ x86_64 = "amd64"
+ }
+ local k, v
+ for k, v in pairs(target_map) do
+ if target:find(k) then
+ return v
+ end
end
end
return target
diff --git a/applications/luci-app-lxc/luasrc/model/cbi/lxc.lua b/applications/luci-app-lxc/luasrc/model/cbi/lxc.lua
index 8a8fc2be0d..db7d19eb26 100644
--- a/applications/luci-app-lxc/luasrc/model/cbi/lxc.lua
+++ b/applications/luci-app-lxc/luasrc/model/cbi/lxc.lua
@@ -16,7 +16,7 @@ Author: Petar Koretic <petar.koretic@sartura.hr>
m = Map("lxc", translate("LXC Containers"),
translate("<b>Please note:</b> For LXC Containers you need a custom OpenWrt image.<br />")
- .. translate("The image should include at least support for 'kernel cgroups', 'kernel namespaces' and 'miscellaneous LXC related options'."))
+ .. translate("The image should include at least support for 'kernel cgroups', 'kernel namespaces' and 'miscellaneous LXC related options' plus 'kmod-veth' for optional network support."))
m:section(SimpleSection).template = "lxc"
s = m:section(TypedSection, "lxc", translate("Options"))
diff --git a/applications/luci-app-lxc/luasrc/view/lxc.htm b/applications/luci-app-lxc/luasrc/view/lxc.htm
index b45e27f51f..47cc1a5f3f 100644
--- a/applications/luci-app-lxc/luasrc/view/lxc.htm
+++ b/applications/luci-app-lxc/luasrc/view/lxc.htm
@@ -19,8 +19,8 @@ local nx = require "nixio"
local target = nx.uname().machine
-%>
-<fieldset class="cbi-section">
- <legend><%:Available Containers%></legend>
+<div class="cbi-section">
+ <h3><%:Available Containers%></h3>
<div class="cbi-section-node">
<div class="table cbi-section-table" id="t_lxc_list">
<div class="tr cbi-section-table-titles">
@@ -30,15 +30,15 @@ local target = nx.uname().machine
</div>
</div>
</div>
-</fieldset>
+</div>
-<fieldset class="cbi-section">
+<div class="cbi-section">
<span id="lxc-list-output"></span>
-</fieldset>
+</div>
<hr />
-<fieldset class="cbi-section">
- <legend><%:Create New Container%></legend>
+<div class="cbi-section">
+ <h3><%:Create New Container%></h3>
<div class="cbi-section-node">
<div class="table cbi-section-table" id="t_lxc_create">
<div class="tr cbi-section-table-titles">
@@ -56,11 +56,11 @@ local target = nx.uname().machine
</div>
</div>
</div>
-</fieldset>
+</div>
-<fieldset class="cbi-section">
+<div class="cbi-section">
<span id="lxc-add-output"></span>
-</fieldset>
+</div>
<hr />