Add package configuration options (not used yet)i; test code/scripts for postinstall/preremove; update TODO; add support for eclipse ShellEd plugin.

This commit is contained in:
Wouter R 2013-05-03 01:09:46 +02:00
parent 3840a8798d
commit 21e5ddb51b
7 changed files with 124 additions and 16 deletions

View File

@ -13,5 +13,6 @@
</buildSpec> </buildSpec>
<natures> <natures>
<nature>org.eclipse.koneki.ldt.nature</nature> <nature>org.eclipse.koneki.ldt.nature</nature>
<nature>net.sourceforge.shelled.core.nature</nature>
</natures> </natures>
</projectDescription> </projectDescription>

View File

@ -7,6 +7,31 @@
bool "Enable development aids" bool "Enable development aids"
default n default n
help help
Enable development features (currently a script to copy and zip all relevant code for updating the git repository). Enable development features (currently a script to copy and zip all relevant
code for updating the git repository, and two shell aliases for convenience,
see /root/.profile).
config WIFIBOX_AP_SSID
depends on PACKAGE_wifibox
string "AP mode SSID"
default "d3d-ap"
help
The SSID the device will use when switching into access point mode.
Note: the Lua scripts do not actually use this yet.
config WIFIBOX_INIT_PRIORITY
depends on PACKAGE_wifibox
int "Init-script priority"
default "18"
help
The priority given to the auto-wifi init-script.
config WIFIBOX_WIRELESS_DEVICE
depends on PACKAGE_wifibox
string "Physical wireless device name"
default "radio0"
help
The wireless device name used in the UCI wireless configuration ('radio0'
on the supported TP-Link devices with a recent OpenWRT version).
#endmenu #endmenu

View File

@ -100,5 +100,10 @@ endif
$(LN) -s /usr/share/lua/autowifi/ext/autowifi_init $(1)/etc/rc.d/S18autowifi_init $(LN) -s /usr/share/lua/autowifi/ext/autowifi_init $(1)/etc/rc.d/S18autowifi_init
endef endef
define Package/wifibox/postinst
#!/bin/sh
touch /.postinst-was-here
endef
$(eval $(call BuildPackage,wifibox)) $(eval $(call BuildPackage,wifibox))

33
post-install.sh Normal file
View File

@ -0,0 +1,33 @@
#!/bin/sh
##############
# MAIN CODE #
############
if [ ! -f /etc/banner.default ]; then
mv /etc/banner /etc/banner.default
cat <<-'EOM' > /etc/banner
........D o o d l e 3 D
.......________ _____ _____ v $(PACKAGE_VERSION)
....../ / / |__ / __/ / - /___ __
...../ / / /--// _|-// - | . /- /
..../________/__//__/__//____/___/_-_\
...
..A cad in a box.
.
EOM
fi
grep '^# DO NOT MODIFY.*wifibox package.$' /root/.profile >/dev/null 2>&1
if [ $? -eq 1 ]; then
cat <<-EOM >> /root/.profile
# DO NOT MODIFY - this block of lines has been added by the wifibox package.
alias wfcfr='/usr/share/lua/autowifi/ext/wfcf'
alias encore='ulimit -c unlimited'
EOM
fi
#3. make sure the radio0 interface is enabled in /etc/config/wireless (preferably through uci)
#4. make sure the wlan net is in the lan zone in /etc/config/dnsmasq (and make sure wlan net exists?)

8
pre-remove.sh Normal file
View File

@ -0,0 +1,8 @@
#!/bin/sh
#if [ -f /etc/banner.default ]; then
# mv /etc/banner.default /etc/banner
#fi
# emit message stating that /root/.profile is not changed back and
# neither are wlan zone and radio0 enabled state

View File

@ -1,6 +1,56 @@
- write a shellscript to automate tasks like swapping out /www and packaging modified code for git merging # TODO
- finish postinst and prerm/postrm scripts - finish postinst and prerm/postrm scripts
- preliminary test with postinst does not seem to work (i.e. touch a file in the device root does not result in a file being there)
- add more config options to package; candidates:
reconf.WWW_RENAME_NAME, wifihelper.{AP_ADDRESS, AP_NETMASK, (NET)}
about bridging this to lua: have some Makefile stage create a ini/lua file with k/v's and have lua read out that file?
- write a shellscript to automate tasks like swapping out /www and packaging modified code for git merging
- do things right and copy (not link) the init script to init.d - do things right and copy (not link) the init script to init.d
(and enable it automatically, which links to it from rc.d with the proper start priority?) (and enable it automatically, which links to it from rc.d with the proper start priority?)
- add dependency on either wr703n or mr3020 (and probably comment it out to avoid being to conservative...)
- add/link general OpenWrt build instructions for OSX to installation page on wiki. - add/link general OpenWrt build instructions for OSX to installation page on wiki.
- see if updating works when a new version is 'released' (probably needs a real feed) - see if updating works when a new version is 'released' (probably needs a real feed)
# TODO for autowifi.js
- escape text where necessary (e.g. in getKnown, '<unknown SSID>' is currently interpreted as html...)
- why is $.trim() required in string comparison? do we need to strip newlines in the parse functions?
- add hidden field in html to remember encryption (so we know whether or not a passphrase should be entered)
- instead of showing alerts on missing ssid/phrase in connect, disable the button until contraints have been satisfied
(this is also cleaner in case no networks are present)
- use json for communication?
# Logos
Check http://geon.github.io/Programming/2012/04/25/ascii-art-signatures-in-the-wild/ for inspiration
D o o d l e 3 D
-------- ____ .--- v 1.0.1
| | | | __ | __|.--.| ._| .---..-.-.
| | | ||--|| _| |--|| . || . |\ /
|________||__||__| |__||____||___|/_._\
D o o d l e 3 D
-------- ____ .---- v 1.0.1
| | | |--.| __|-.| ._|---.-.-.
| | | |--|| _|--|| . | . |_ _/
|________|__||__||__||____|___|_._\
....D o o d l e 3 D
...________ _____ _____ v 1.0.1
../ / / |__ / __/ / - /___ __
./ ' ' /--// _|-// - | . /- /
/________/__//__/__//____/___/_-_\
# Shelled bugs/annoyances
+ scripts are only allowed to be created in src folder? (nothing else shown, root greys out 'Finish')
+ text inside heredoc is highlighted
+ only one space allowed at start of line...makes it impossible to draw ascii art
plus: I think it breaks my spaces/tabs occasionally but that could have been something else
- errors after creating new script file (mentioning lua...maybe a conflict?)

View File

@ -1,17 +1,3 @@
/*
* TODO
* - finish network creation
* - finish auto operation
* - call auto op from init script
* - in AP mode, route all addresses to the autowifi page
* - escape text where necessary (e.g. in getKnown, '<unknown SSID>' is currently interpreted as html...)
* - why is $.trim() required in string comparison? do we need to strip newlines in the parse functions?
* - add hidden field to remember encryption (so we know whether or not a passphrase should be entered)
* - instead of showing alerts on missing ssid/phrase in connect, disable the button until contraints have been satisfied
* (this is also cleaner in case no networks are present)
* - use json for communication
*/
animSpeed = 200; animSpeed = 200;
cgiPath = "asdasd/cgi-bin/wfcf"; cgiPath = "asdasd/cgi-bin/wfcf";