Commit Graph

275 Commits

Author SHA1 Message Date
Matthias Schiffer
fc7cd56031 gluon-legacy: gluon-mesh-vpn-fastd: correctly set enabled state 2014-02-23 17:35:56 +01:00
Matthias Schiffer
4fa228365a gluon-core: don't call legacy scripts on normal upgrades 2014-02-23 17:29:32 +01:00
Matthias Schiffer
dd0ec447e7 gluon-core: adjust to new escaped array handling for generate expressions 2014-02-23 06:31:23 +01:00
Matthias Schiffer
f5e966a666 gluon-legacy: whitespace fix 2014-02-23 06:21:05 +01:00
Matthias Schiffer
2454c8abb7 Add gluon-legacy package with legacy upgrade scripts 2014-02-22 08:27:51 +01:00
Matthias Schiffer
65c7db78fd Convert more upgrade scripts to the new sysctl helper 2014-02-21 19:58:38 +01:00
Nils Schneider
3e7e4b43af Merge pull request #16 from rubo77/master
gluon-config-mode: Corrected grammar
2014-02-19 15:03:37 +01:00
Nils Schneider
14d0d522bc Merge pull request #19 from sargon/master
gluon-core: force kernel panic on out of memory

This also adds /lib/gluon/functions/sysctl.sh for setting sysctl options.
2014-02-19 14:39:51 +01:00
Nils Schneider
c31df31553 gluon-luci-theme: show gluon release 2014-02-19 11:26:22 +01:00
Nils Schneider
0b3db87d6f gluon-luci-admin: expertmode texts translated 2014-02-19 03:24:48 +01:00
Nils Schneider
cbacca6108 gluon-luci-autoupdater: use expertmode template 2014-02-19 03:16:50 +01:00
Nils Schneider
26305a7150 gluon-luci-admin: replace overview with ssh/pass
Various changes and moving stuff around.
2014-02-19 03:16:50 +01:00
Nils Schneider
072acf5ae3 gluon-luci-admin: remove unused function 2014-02-19 03:16:50 +01:00
Nils Schneider
9c2ba883c9 gluon-luci-admin: system.lua -> upgrade.lua 2014-02-19 03:16:50 +01:00
Nils Schneider
6a2e7d45d8 gluon-autoupdater: drop caches before upgrade
This will free about 5 to 12 MB of RAM even on lightly used devices
yielding plenty of RAM for autoupdate to succeed.
2014-02-19 01:18:54 +01:00
Nils Schneider
3712f8795c gluon-luci-admin: remove backup/restore 2014-02-18 23:13:42 +01:00
Nils Schneider
08bc198e36 gluon-luci-admin: fix firmware upgrade feature 2014-02-18 22:21:31 +01:00
Nils Schneider
123fef47f0 gluon-luci-admin: remove reboot feature
Configmode should be exited by using the wizard instead.
2014-02-18 19:17:47 +01:00
Daniel Ehlers
6f302fc8df gluon-core: force kernel panic on out of memory
In combination with kernel.panic the node will reboot if out of memory.
2014-02-18 00:21:12 +01:00
Matthias Schiffer
c2adf36e20 gluon-config-mode: don't let UCI_CONFIG_DIR leak to the telnet environment etc. 2014-02-13 19:40:36 +01:00
Matthias Schiffer
39eed2b913 gluon-config-mode: simplify dnsmasq command, remove sleep after network setup 2014-02-13 16:27:40 +01:00
Matthias Schiffer
24fd45d424 gluon-config-mode: remove bind mounts 2014-02-13 15:55:52 +01:00
Nils Schneider
601fd3f3ea gluon-status-page: show model 2014-02-13 12:56:14 +01:00
Daniel Ehlers
de2c9ceefa gluon-luci-autoupdater: Fix typo 2014-02-13 00:21:40 +01:00
Matthias Schiffer
30869d9080 gluon-autoupdater: enable by default only if GLUON_BRANCH is set, set default branch accordingly 2014-02-11 17:10:11 +01:00
Nils Schneider
a365d626c2 gluon-luci-core: replacing luci-mod-admin-core
This commit adds gluon-luci-core, a package both gluon-config-mode and
gluon-luci-admin will depend on. gluon-luci-core itself will depends on
gluon-luci-theme, gluon-core and most importantly luci-lib-web. It also
copies a few files from luci-mod-admin-core but leaves out everyting we
do not use.

At a later point I plan to move functionality from luci-lib-web into
this package, too. luci-lib-web contains most parts of luci including
hardcoded templates for CBI, which I intend to replace.
2014-02-09 23:20:38 +01:00
Nils Schneider
6e4596fe87 gluon-luci-admin: remove translation support
We'll have to revisit translations at a later point after configmode and
expertmode have matured. Texts in this package were pretty inconsistent
anyway so there is no point in keeping translations for random text
fragments.
2014-02-09 23:17:50 +01:00
Nils Schneider
bb32d5c3a9 gluon-autoupdater: depend on sha512sum
This makes gluon-autoupdater depend on coreutils-sha512sum when it's not
included in busybox.
2014-02-09 23:16:34 +01:00
ruben
732727dde5 gluon-config-mode: Corrected grammar 2014-02-07 13:11:55 +01:00
Nils Schneider
b4ce341601 gluon-config-mode: fix type (gluon-locaton -> gluon-location) 2014-02-06 20:23:17 +01:00
Matthias Schiffer
cc1af68caa Don't use site config in compile step 2014-02-06 19:57:39 +01:00
Nils Schneider
b562ad7bbd gluon-status-page: escape HTML special characters 2014-02-06 15:35:21 +01:00
Matthias Schiffer
5c81f5fa70 gluon-autoupdater: add SHA512 support 2014-02-06 00:17:33 +01:00
Matthias Schiffer
ebceae82ad gluon-config-mode: don't include sysconfig before the start function is called
Otherwise the enable during image create will throw a few error messages
2014-02-06 00:05:10 +01:00
Nils Schneider
c839bd8892 statusscript 2014-02-04 13:15:18 +01:00
Nils Schneider
2d8dda6eee gluon-status-page: make index.html redirect to cgi 2014-02-03 23:59:22 +01:00
Matthias Schiffer
62c30abd6f gluon-core: ensure the release file is always up-to-date 2014-01-31 15:25:49 +01:00
Nils Schneider
4878839186 gluon-luci-theme: input fields on error readable
Do not use 'red' as text color on input fields with errors as the
backgronud color is already red, rendering the value unreadable.
2014-01-29 23:37:31 +01:00
Matthias Schiffer
d87ba9eb44 Merge branch 'config-mode-hostname' of https://github.com/freifunk-gluon/packages 2014-01-29 19:37:16 +01:00
Matthias Schiffer
869f81d12e Add stub gluon-status-page package 2014-01-29 17:17:49 +01:00
Nils Schneider
1097fadc92 gluon-config-mode: correct hostname on reboot.html
Display the correct hostname on the final page of configmode.
Previously, this page used to simply call luci.sys.hostname() which
would return the current hostname. However, when the configmode changes
the hostname luci.sys.hostname() will not reflect this. This patch
fetches the hostname directly from the UCI system config.

This adds a variable called 'hostname' which may be used in site.conf at
config_mode.msg_reboot and .msg_pubkey.
2014-01-28 03:16:56 +01:00
Matthias Schiffer
5bb4cf4e3a gluon-mesh-vpn-fastd: always use wan DNS servers to resolve the peers 2014-01-25 03:20:03 +01:00
Matthias Schiffer
4cf9b23e02 Enable DNS servers from mesh, disable on wan 2014-01-25 02:09:35 +01:00
Matthias Schiffer
ded5925f83 Remove odhcp6c.user hack 2014-01-25 01:54:19 +01:00
Matthias Schiffer
410733d423 gluon-mesh-batman-adv: use kmod-batman-adv-legacy package 2014-01-24 05:19:00 +01:00
Matthias Schiffer
f5dc52f665 Revert "gluon-radvd: run on br-client"
This reverts commit f5c532a3a923053ab229952bde31da0b0284d8ab.
2014-01-23 18:41:41 +01:00
Matthias Schiffer
ee74235a3b gluon-next-node: don't wait for br-client to get an address 2014-01-23 18:40:59 +01:00
Nils Schneider
5486cf2c4e gluon-config-mode: new helptexts 2014-01-23 02:24:02 +01:00
Nils Schneider
68a0da5daa gluon-config-mode: label submit button "Fertig" 2014-01-23 01:34:25 +01:00
Nils Schneider
ad2d413f23 gluon-config-mode: use welcome text from site.conf 2014-01-23 01:21:43 +01:00
Nils Schneider
1e348ddd45 gluon-config-mode: delay reboot a little
The reboot page should be delayed a little to give the browser time for
fetching assets (like the stylesheet). This adds a two second delay.
Unfortunately, I couldn't think of a sane way to do this within a luci
controller.

This patch forks the process. The parent will continue rendering the
page for the browser while the child will sleep and then reboot the
device. For this to work reliable the child needs to close stdout before
sleeping so the webserver closes the connection to the browser. This,
again, required a hack as lua does not allow closing std filehandles,
when prevented using luci.reboot() which was calling os.execute() and
that function will not work with stdout closed.
2014-01-23 00:04:14 +01:00
Nils Schneider
a299a150b6 gluon-config-mode: fix indentation 2014-01-22 23:18:46 +01:00
Matthias Schiffer
bc1be30486 More fixes for strange network interface configurations 2014-01-22 22:04:08 +01:00
Matthias Schiffer
f1fa2a2971 gluon-radvd: run on br-client 2014-01-22 21:32:02 +01:00
Nils Schneider
cd822a3a57 Merge pull request #11 from freifunk-gluon/expertmode
gluon-luci-admin: various changes
2014-01-22 12:03:00 -08:00
Nils Schneider
528d04cb67 Merge pull request #10 from freifunk-gluon/luci-theme
add new luci-theme
2014-01-22 12:02:48 -08:00
Matthias Schiffer
b8820bab61 Properly support devices with only one ethernet interface 2014-01-22 20:44:34 +01:00
Matthias Schiffer
bb4a9fd5af Fix race condition in dnsmasq config dir handling 2014-01-22 19:52:17 +01:00
Matthias Schiffer
6d5e47eeec gluon-config-mode: respect switch configuration 2014-01-22 19:45:07 +01:00
Matthias Schiffer
3369802094 gluon-core: sysconfig: don't print error message for unset config 2014-01-22 19:45:07 +01:00
Nils Schneider
c7efde1acf gluon-luci-admin: reboot.html, remove refresh
Don't refresh the reboot page after rebooting the node. It's not going
back to configmode anyway so it'll never reload without user
intervention.
2014-01-22 17:05:42 +01:00
Nils Schneider
8d62f92a4d gluon-luci-admin: replace overview text
This completely replaces the text on the overview page. Consider this a
placeholder until someone writes a better suited version :)
2014-01-22 17:05:42 +01:00
Nils Schneider
dd7934a39a gluon-luci-admin: remove redundant headings 2014-01-22 17:05:42 +01:00
Nils Schneider
78f5efa7ce gluon-luci-admin: no logout button in configmode
Hide the "logout" button when in configmode.
2014-01-22 17:05:42 +01:00
Nils Schneider
d85214d4c5 gluon-luci-admin: fix indentation
Replaces double-spaces with tabs to match surrounding code.
2014-01-22 17:05:42 +01:00
Nils Schneider
efc958fbf8 gluon-luci-admin: disable when not in configmode
For security reasons we'd like to disable all HTTP config interfaces
when the node is operating normally. This patch disables gluon-luci-admin
when configmode is not enabled.
2014-01-22 17:05:42 +01:00
Nils Schneider
de22275c60 gluon-config-mode: remove subsection headings
Those headings do not convey much information make the wizard less
compact. The help texts will be rewritten to guide the user instead.
2014-01-22 17:01:27 +01:00
Nils Schneider
57f65acaf2 gluon-config-mode: replace inline style with class
Replace the inline stylesheet for the public key box on the reboot page
with a CSS class so it can be styled using the theme.
2014-01-22 17:00:58 +01:00
Nils Schneider
b1cc62b680 gluon-config-mode,luci-admin: use gluon-luci-theme
This makes gluon-config-mode and gluon-luci-admin depend on
gluon-luci-theme instead of luci-theme-openwrt.
2014-01-22 16:56:54 +01:00
Nils Schneider
40c4659e18 gluon-luci-theme: new theme, still magenta/yellow
This is the initial version of our new configmode theme. It's far from
finished but at least configmode looks good. There are lots of
declarations copied from OpenWRT's default theme so most other luci
modules would be somewhat usable when shown using this theme.
2014-01-22 16:56:32 +01:00
Nils Schneider
5e0048ae84 gluon-config-mode: remove 'reset' button
The reset button resets the form. I don't think this is needed in a
wizard that simple and might confuse users so I removed it.
2014-01-21 23:42:03 +01:00
Nils Schneider
5b8e044893 gluon-config-mode: fix wizard
Due to my previous two commits configmode was broken when either meshvpn
or bandwidth limit was disabled. This fixes it but there may be a
cleaner solution provided by luci.
2014-01-21 22:19:25 +01:00
Nils Schneider
566faeb6ca gluon-config-mode: bwlimit hidden when not meshvpn
Hide the bandwidth limit checkbox when meshvpn is disabled.
2014-01-21 20:02:17 +01:00
Nils Schneider
bb3e93b55d gluon-config-mode: more compact tc form
Hide the downstream/upstream input fields when bandwitdh limiting is
disabled.
2014-01-21 19:50:07 +01:00
Nils Schneider
2f5524fdb4 gluon-autoupdater: Randomize mirror order
This way we have a kind of load balancing among the mirrors.
2014-01-21 13:20:50 +01:00
Daniel Ehlers
2062d1fcb6 gluon-luci-autoupdater: Catch up mirror support in gluon-autoupdater 2014-01-21 05:46:10 +01:00
Matthias Schiffer
ff166453d4 gluon-mesh-batman-adv: accept input on wan interface 2014-01-21 05:24:01 +01:00
Matthias Schiffer
f1dae6ca6e gluon-core: move initial/020-wireless from generate to files 2014-01-21 05:24:01 +01:00
Nils Schneider
c7991c6df4 gluon-autoupdater: add more models to README
This adds a list of known models to the readme.
2014-01-21 04:45:56 +01:00
Matthias Schiffer
e03fb9f8eb gluon-core: add support for NTP server configuration 2014-01-21 04:22:59 +01:00
Matthias Schiffer
e57e88ee6c gluon-mesh-batman-adv: add DNS support 2014-01-21 03:59:15 +01:00
Matthias Schiffer
1ceb38ac26 gluon-mesh-batman-adv: more initial -> invariant conversions 2014-01-21 03:05:42 +01:00
Matthias Schiffer
1ba10ac018 Add support for custom dnsmasq config and odhcp6c handler scripts 2014-01-21 03:01:12 +01:00
Matthias Schiffer
10d6c1930d gluon-autoupdater: allow configuring the branch name independently of the UCI config section name 2014-01-21 00:29:55 +01:00
Matthias Schiffer
72e7ae68fa gluon-autoupdater: adjust example config for mirror support 2014-01-21 00:10:00 +01:00
Daniel Ehlers
27871c0dc3 gluon-autoupdater: Enable list of mirrors for manifest and firmware.
Instead of a single url this patch allows to have a list of urls. So in case
of network instability a router can still reach local mesh-cloud server to pull
a update from. In this stage the autoupdater simply tries every mirror until
one passes all tests.
2014-01-20 23:31:15 +01:00
Daniel Ehlers
cb6c025a7f gluon-autoupdater: Less global variables.
This also removes the need for the cleanup function. Instead the cleanup
code is moved in place.
2014-01-20 23:31:15 +01:00
Daniel Ehlers
f0b63da868 gluon-autoupdater: Refactor code.
Move building blocks of the update into seperate functions.
2014-01-20 13:26:58 +01:00
Matthias Schiffer
1b924d6265 gluon-core: use gluon release in package version string 2014-01-20 05:07:55 +01:00
Matthias Schiffer
ee4e896fea gluon-core: use GLUON_RELEASE from environment 2014-01-20 02:35:21 +01:00
Matthias Schiffer
f36f7bcf26 Merge gluon-release into gluon-core 2014-01-20 01:59:10 +01:00
Matthias Schiffer
8f7b59d787 gluon-simple-tc: add missing defaults on every upgrade 2014-01-20 00:06:55 +01:00
Matthias Schiffer
f9cb8a7258 gluon-mesh-batman-adv: move wifi config to invariant 2014-01-20 00:06:55 +01:00
Matthias Schiffer
59c1900e9a gluon-location: move information to /etc/config/gluon-location 2014-01-20 00:06:55 +01:00
Matthias Schiffer
1dd9a9a8a1 gluon-autoupdater: no need to provide a default config just to delete it in the initial script 2014-01-20 00:06:55 +01:00
Nils Schneider
8e73ff90a0 gluon-autoupdater: typo corrected 2014-01-19 23:19:55 +01:00
Nils Schneider
4fef2e5e11 Merge pull request #7 from FreifunkBremen/master
gluon-autoupdater: get random number from /dev/urandom
2014-01-19 13:40:13 -08:00
Jan-Philipp Litza
7cdf3708f0 gluon-autoupdater: get random number from urandom
The approach with awk's rand() wasn't really random between across
devices: When srand() was called without arguments, time() was used as
seed, which of course is the same on all devices when the script is
called via cron at HH:00:00.

This patch instead uses /dev/urandom as source of random (we don't need
cryptographically strong random numbers, so urandom is just fine) but
still uses awk for the comparison as busybox's ash cannot deal with
floats in $(())
2014-01-19 22:36:49 +01:00
Matthias Schiffer
086efed428 gluon-alfred: add chosen gateway and load average 2014-01-19 21:44:26 +01:00
Matthias Schiffer
74493b2ba5 gluon-alfred: run every minute
The run frequency and exact time affect the alfred announce interval, so we can
just run it every minute to supply alfred with the most up-to-date data.
2014-01-18 21:56:05 +01:00