Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • ffnw-firmware/packages
  • pic/packages
  • PowerPan/packages
  • floh1111/packages
4 results
Show changes
Commits on Source (901)
Showing
with 173 additions and 533 deletions
# swap
[._]*.s[a-v][a-z]
[._]*.sw[a-p]
[._]s[a-v][a-z]
[._]sw[a-p]
# session
Session.vim
# temporary
.netrwhist
*~
# auto-generated tag files
tags
#
# Copyright (C) 2012 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=ath9k-watchdog
PKG_VERSION:=1
PKG_RELEASE:=1
include $(INCLUDE_DIR)/package.mk
define Package/ath9k-watchdog
SECTION:=utils
CATEGORY:=Utilities
TITLE:=Watchdog for ath9k-outages
endef
define Package/ath9k-watchdog/description
If pattern "ResetWLAN" is seen in the logs, wifi reset is executed
endef
define Package/ath9k-watchdog/install
$(INSTALL_DIR) $(1)/usr/sbin
$(INSTALL_BIN) files/ath9k-watchdog $(1)/usr/sbin/
$(INSTALL_BIN) files/ath9k-watchdog-pm $(1)/usr/sbin/
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_DIR) $(1)/etc/init.d/
$(INSTALL_BIN) files/ath9k-watchdog.init $(1)/etc/init.d/ath9k-watchdog
endef
define Build/Prepare
mkdir -p $(PKG_BUILD_DIR)
endef
define Build/Configure
endef
define Build/Compile
endef
$(eval $(call BuildPackage,ath9k-watchdog))
#!/bin/sh
mkdir -p /usr/lib/ath9k-watchdog
logread -f | while read line
do
case "$line" in
*"Could not stop RX"*)
hostname=$(cat /proc/sys/kernel/hostname)
if [ "$hostname" == "OpenWrt" ]; then
hostname=""
fi
if [ "$hostname" == "" ]; then
hostname=$(awk '{ if (mac) next; mac=toupper($1); gsub(":", "", mac); print mac }' /sys/class/net/br-mesh/address /sys/class/net/eth0/address /sys/class/net/ath0/address 2>/dev/null)
fi
# Perform post-mortem dump
tstmp=$(/bin/date +%s)
echo -n "data[hostname]=${hostname}&data[tstmp]=${tstmp}" > /tmp/$tstmp
# Move into upload directory
mv /tmp/$tstmp /usr/lib/ath9k-watchdog
#Bye
/sbin/reboot
;;
*)
;;
esac
done
#!/bin/sh
# Save log
mkdir -p /usr/lib/ath9k-watchdog
WGETC=$(which wget)
# CD to avoid annoying prefixes
cd /usr/lib/ath9k-watchdog
#Poll directory every 60 secs
while [ 1 = 1 ]
do
if [ "$(ls .)" != "" ]
then
UPLOAD_URL="http://[$(uci get configurator.@api[0].ipv6_address)%$(uci get configurator.@api[0].ipv6_interface)]/api/rest/event/"
for f in $(ls .); do
$WGETC -q $UPLOAD_URL"?api_key=$(uci get configurator.@api[0].api_key)&object=router&object_id="$(uci get configurator.@crawl[0].router_id)"&action=watchdog_ath9k_bug&"$(cat $f) -O - && rm $f
done
# If there are more than 15 files, assume that files cannot be uploaded
# Delete oldest files in order to avoid jffs-overflow
ls -t | sed -e '1,15d' | xargs rm 2> /dev/null
fi
sleep 60
done
#!/bin/sh /etc/rc.common
START=95
APP=ath9k-watchdog
POSTM=ath9k-watchdog-pm
PID_FILE=/var/run/$APP.pid
POSTM_PID_FILE=/var/run/$POSTM.pid
start() {
if [ -f $PID_FILE ]; then
echo "Ath9k-watchdog: Already Running"
else
start-stop-daemon -S -x $APP -p $PID_FILE -m -b
fi
if [ -f $POSTM_PID_FILE ]; then
echo "ath9k-watchdog-pm: Already Running"
else
start-stop-daemon -S -x $POSTM -p $POSTM_PID_FILE -m -b
fi
}
stop() {
start-stop-daemon -K -n $APP -p $PID_FILE -s TERM
start-stop-daemon -K -n $POSTM -p $POSTM_PID_FILE -s TERM
rm -rf $PID_FILE
rm -rf $POSTM_PID_FILE
}
\ No newline at end of file
include $(TOPDIR)/rules.mk
PKG_NAME:=ffnw-banner
PKG_VERSION:=2
PKG_RELEASE:=$(GLUON_VERSION)
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
include $(TOPDIR)/../package/gluon.mk
define Package/ffnw-banner
SECTION:= network
CATEGORY:=Freifunk Nordwest
TITLE:=Nordwest freifunk shell banner
endef
define Package/ffnw-banner/description
Nordwest freifunk shell banner
endef
define Build/Prepare
mkdir -p $(PKG_BUILD_DIR)
endef
define Build/Configure
endef
define Build/Compile
$(call GluonSrcDiet,./luasrc,$(PKG_BUILD_DIR)/luadest/)
endef
define Package/ffnw-banner/install
$(CP) ./files/* $(1)/
$(CP) $(PKG_BUILD_DIR)/luadest/* $(1)/
endef
$(eval $(call BuildPackage,ffnw-banner))
_______ __ ___ __
| ___|.----.-----.|__|.' _|.--.--.-----.| |--.
| ___|| _| -__|| || _|| | | || <
|___| |__| |_____||__||__| |_____|__|__||__|__|
_______ __ Freie Netze fuer alle! __
| | |.-----.----.--| |.--.--.--.-----.-----.| |_
| || _ | _| _ || | | | -__|__ --|| _|
|__|____||_____|__| |_____||________|_____|_____||____|
##############################################################################
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
------------------------------------------------------------------------------
%A
%B
%C
%D
------------------------------------------------------------------------------
#!/bin/sh
rm /etc/banner
touch /tmp/ffnw-banner
ln -s /tmp/ffnw-banner /etc/banner
lua /usr/sbin/ffnw-banner
\ No newline at end of file
*/5 * * * * lua /usr/sbin/ffnw-banner
#!/usr/bin/lua
local unistd = require 'posix.unistd'
local has_fastd = unistd.access('/lib/gluon/mesh-vpn/provider/fastd')
local has_tunneldigger = unistd.access('/lib/gluon/mesh-vpn/provider/tunneldigger')
local srcFile = "/lib/ffnw/banner/banner"
local desFile = "/tmp/ffnw-banner"
local uci = require('simple-uci').cursor()
local json = require 'jsonc'
os.execute('cp '..srcFile..' '..desFile)
-- Read the full domainfile. Return nil for wrong format or no such file
local function readdomainfile(file)
local jdomain = io.open(file, 'r')
if not jdomain then return nil end
local obj, _, err = json.parse (jdomain:read('*a'), 1, nil)
if err then
return nil
else
return obj
end
end
local openwrtRelease = io.open("/etc/openwrt_release", "r")
local gluonVersion = io.open("/lib/gluon/gluon-version", "r")
local gluonRelease = io.open("/lib/gluon/release", "r")
local infoHeader = {}
infoHeader["openwrtRelease"] = ""
infoHeader["revision"] = ""
infoHeader["gluonVersion"] = ""
infoHeader["gluonRelease"] = ""
infoHeader["domain"] = ""
infoHeader["HWmodel"] = require("platform_info").get_model()
infoHeader["vpn"] = ""
local domaincode = uci:get('gluon', 'core', 'domain')
if domaincode ~= nil then
local domain = readdomainfile("/lib/gluon/domains/" .. domaincode .. ".json")
if domain ~= nil then
infoHeader["domain"] = domain["domain_names"][domaincode]
end
end
if openwrtRelease~=nil then
for line in openwrtRelease:lines() do
-- Get openwrtRelease
if line:match("DISTRIB_DESCRIPTION") then
for v in string.gmatch(line, "([^=]+)") do
if not v:match("DISTRIB_DESCRIPTION") then
infoHeader["openwrtRelease"] = string.gsub(v,"'","")
end
end
end
-- Get openwrt revision
if line:match("DISTRIB_REVISION") then
for v in string.gmatch(line, "([^=]+)") do
if not v:match("DISTRIB_REVISION") then
infoHeader["revision"] = string.gsub(v,"'","")
end
end
end
end
end
if gluonVersion~=nil then
for line in gluonVersion:lines() do
if line ~= nil then
infoHeader["gluonVersion"] = line
end
end
end
if gluonRelease~=nil then
for line in gluonRelease:lines() do
if line ~= nil then
infoHeader["gluonRelease"] = line
end
end
end
if has_tunneldigger then
infoHeader["vpn"] = "l2tp"
elseif has_fastd then
infoHeader["vpn"] = "fastd"
else infoHeader["vpn"] = "unknown"
end
local firstLine =infoHeader["openwrtRelease"]
local secondLine ="Gluon Version: " .. infoHeader["gluonVersion"] .. " Gluon Release: " .. infoHeader["gluonRelease"]
local thirdLine = "Hardware model: " .. infoHeader["HWmodel"] .. " vpn: " .. infoHeader["vpn"]
local forthLine = "Domain: " .. infoHeader["domain"]
os.execute('sed -i \'/%A/c\\' .. firstLine .. '\' ' .. desFile)
os.execute('sed -i \'/%B/c\\' .. secondLine .. '\' ' .. desFile)
os.execute('sed -i \'/%C/c\\' .. thirdLine .. '\' ' .. desFile)
os.execute('sed -i \'/%D/c\\' .. forthLine .. '\' ' .. desFile)
include $(TOPDIR)/rules.mk
PKG_NAME:=ffnw-configurator
PKG_VERSION:=1
PKG_RELEASE:=1
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
include $(INCLUDE_DIR)/package.mk
define Package/ffnw-configurator
SECTION:=daemon
CATEGORY:=Freifunk Nordwest
TITLE:=Registers node on netmon
endef
define Package/ffnw-configurator/description
Registers node on netmon
endef
define Build/Prepare
mkdir -p $(PKG_BUILD_DIR)
endef
define Build/Configure
endef
define Build/Compile
endef
define Package/ffnw-configurator/install
$(INSTALL_DIR) $(1)/lib/gluon/cron/
$(INSTALL_DATA) files/lib/gluon/cron/configurator $(1)/lib/gluon/cron/configurator
$(INSTALL_DIR) $(1)/lib/ffnw/configurator/
$(INSTALL_BIN) files/lib/ffnw/configurator/configurator.sh $(1)/lib/ffnw/configurator/
$(INSTALL_DIR) $(1)/etc/config/
$(INSTALL_CONF) files/configurator.config $(1)/etc/config/configurator
endef
$(eval $(call BuildPackage,ffnw-configurator))
config 'script'
option 'error_level' '0'
option 'logfile' '/var/log/configurator.log'
option 'version' '1'
option 'sync_hostname' '1'
config 'api'
option 'ipv4_address' '1'
option 'ipv6_interface' 'br-client'
option 'ipv6_address' 'fd74:fdaa:9dc4::1'
option 'timeout' '5'
option 'retry' '5'
option 'api_key' '1'
config 'crawl'
option 'method' 'hash'
option 'nickname' '1'
option 'password' '1'
option 'login_string' '1'
option 'router_id' '1'
option 'update_hash' '1'
config 'netmon'
option 'autoadd_ipv6_address' '1'
#!/bin/sh
# Netmon Configurator (C) 2010-2012 Freifunk Oldenburg
# Lizenz: GPL v3
#Get the configuration from the uci configuration file
#If it does not exists, then get it from a normal bash file with variables.
if [ -f /etc/config/configurator ];then
API_IPV4_ADRESS=`uci get configurator.@api[0].ipv4_address`
API_IPV6_ADRESS=`uci get configurator.@api[0].ipv6_address`
API_TIMEOUT=`uci get configurator.@api[0].timeout`
API_RETRY=`uci get configurator.@api[0].retry`
SCRIPT_VERSION=`uci get configurator.@script[0].version`
SCRIPT_ERROR_LEVEL=`uci get configurator.@script[0].error_level`
SCRIPT_LOGFILE=`uci get configurator.@script[0].logfile`
SCRIPT_SYNC_HOSTNAME=`uci get configurator.@script[0].sync_hostname`
CRAWL_METHOD=`uci get configurator.@crawl[0].method`
CRAWL_ROUTER_ID=`uci get configurator.@crawl[0].router_id`
CRAWL_UPDATE_HASH=`uci get configurator.@crawl[0].update_hash`
CRAWL_NICKNAME=`uci get configurator.@crawl[0].nickname`
CRAWL_PASSWORD=`uci get configurator.@crawl[0].password`
AUTOADD_IPV6_ADDRESS=`uci get configurator.@netmon[0].autoadd_ipv6_address`
else
. `dirname $0`/configurator_config
fi
API_RETRY=$(($API_RETRY - 1))
if [[ $API_IPV4_ADRESS != "1" ]]; then
netmon_api=$API_IPV4_ADRESS
else
netmon_api=$API_IPV6_ADRESS
fi
if [ $SCRIPT_ERROR_LEVEL -gt "1" ]; then
err() {
echo "$(date) [configurator]: $1" >> $SCRIPT_LOGFILE
}
else
err() {
:
}
fi
sync_hostname() {
err "Syncing hostname"
api_return=$(wget -T $API_TIMEOUT -q -O - "http://$netmon_api/api_csv_configurator.php?section=get_hostname&authentificationmethod=$CRAWL_METHOD&nickname=$CRAWL_NICKNAME&password=$CRAWL_PASSWORD&router_auto_update_hash=$CRAWL_UPDATE_HASH&router_id=$CRAWL_ROUTER_ID")
ret=${api_return%%,*}
if [ "$ret" != "success" ]; then
err "Ther was an error fetching the hostname"
exit 0
elif [ "$ret" = "success" ]; then
netmon_hostname=${api_return%,*}
netmon_hostname=${netmon_hostname#*,}
#check for valid hostname as specified in rfc 1123
#see http://stackoverflow.com/a/3824105
regex='^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])'
regex=$regex'(\.([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]{0,61}[a-zA-Z0-9]))*$'
if [ ${#netmon_hostname} -le 255 ]; then
if echo -n $netmon_hostname | egrep -q "$regex"; then
if [ "$netmon_hostname" != "`cat /proc/sys/kernel/hostname`" ]; then
err "Setting new hostname: $netmon_hostname"
uci set system.@system[0].hostname=$netmon_hostname
uci commit
echo $netmon_hostname > /proc/sys/kernel/hostname
else
err "Hostname is up to date"
fi
else
err "Hostname ist malformed"
exit 0
fi
else
err "Hostname exceeds the maximum length of 255 characters"
exit 0
fi
fi
}
assign_router() {
hostname=`cat /proc/sys/kernel/hostname`
#Choose right login String
#Here maybe a ; to much at the end..??
login_strings=$(awk '{ mac=toupper($1); gsub(":", "", mac); printf mac ";" }' /sys/class/net/br-client/address
/sys/class/net/eth0/address /sys/class/net/ath0/address 2> /dev/null)
ergebnis=$(wget -T $API_TIMEOUT -q -O - "http://$netmon_api/api_csv_configurator.php?section=test_login_strings&login_strings=$login_strings")
router_auto_assign_login_string=${ergebnis#*;}
ergebnis=${ergebnis%;*}
if [ "$ergebnis" = "error" ]; then
router_auto_assign_login_string=${login_strings%%;*}
err "A router with this login string does not exist: $login_strings"
err "Using $router_auto_assign_login_string as login string"
fi
#Try to assign Router with choosen login string
ergebnis=$(wget -T $API_TIMEOUT -q -O - "http://$netmon_api/api_csv_configurator.php?section=router_auto_assign&router_auto_assign_login_string=$router_auto_assign_login_string&hostname=$hostname")
ret=${ergebnis%%;*}
errstr=${ergebnis#*;}
errstr=${errstr%%;*}
if [ "$ret" != "success" ]; then
err "The router has not been assigned to a router in Netmon"
err "Failure on router_auto_assign: $errstr. Exiting"
exit 0
elif [ "$ret" = "success" ]; then
update_hash=${ergebnis%;*;*}
update_hash=${update_hash##*;}
api_key=${ergebnis##*;}
#write new config
uci set configurator.@crawl[0].router_id=$errstr
uci set configurator.@crawl[0].update_hash=$update_hash
uci set configurator.@api[0].api_key=$api_key
#set also new router id for nodewatcher
#uci set nodewatcher.@crawl[0].router_id=$errstr
err "The router $errstr has been assigned with a router in Netmon"
uci commit
CRAWL_METHOD=`uci get configurator.@crawl[0].method`
CRAWL_ROUTER_ID=$errstr
CRAWL_UPDATE_HASH=$update_hash
CRAWL_NICKNAME=`uci get configurator.@crawl[0].nickname`
CRAWL_PASSWORD=`uci get configurator.@crawl[0].password`
fi
}
autoadd_ipv6_address() {
err "Doing IPv6 autoadd"
ipv6_link_local_addr=$(ip addr show dev br-client scope link | awk '/inet6/{print $2}')
ipv6_link_local_netmask=${ipv6_link_local_addr##*/}
ipv6_link_local_addr=${ipv6_link_local_addr%%/*}
ergebnis=$(wget -T $API_TIMEOUT -q -O - "http://$netmon_api/api_csv_configurator.php?section=autoadd_ipv6_address&authentificationmethod=$CRAWL_METHOD&nickname=$CRAWL_NICKNAME&password=$CRAWL_PASSWORD&router_auto_update_hash=$CRAWL_UPDATE_HASH&router_id=$CRAWL_ROUTER_ID&networkinterface_name=br-client&ip=$ipv6_link_local_addr&netmask=$ipv6_link_local_netmask&ipv=6")
ret=${ergebnis%%,*}
if [ "$ret" = "success" ]; then
uci set configurator.@netmon[0].autoadd_ipv6_address='0'
uci commit
err "The IPv6 address of the router $CRAWL_ROUTER_ID has been added to the router in Netmon"
err "IPv6 Autoadd has been disabled cause it is no longer necesarry"
else
routerid=${ergebnis##*,}
if [ "$routerid" == "$CRAWL_ROUTER_ID" ]; then
err "The IPv6 address already exists in Netmon on this router. Maybe because of a previos assignment"
uci set configurator.@netmon[0].autoadd_ipv6_address='0'
uci commit
err "IPv6 Autoadd has been disabled cause it is no longer necesarry"
else
err "The IPv6 address already exists in Netmon on another router $routerid"
fi
fi
}
if [ $CRAWL_METHOD == "login" ]; then
err "Authentification method is: username and passwort"
elif [ $CRAWL_METHOD == "hash" ]; then
err "Authentification method: autoassign and hash"
err "Checking if the router is already assigned to a router in Netmon"
if [ $CRAWL_UPDATE_HASH == "1" ]; then
err "The router is not assigned to a router in Netmon"
err "Trying to assign the router"
assign_router
else
err "The router is already assigned to a router in Netmon"
fi
fi
if [[ $AUTOADD_IPV6_ADDRESS = "1" ]]; then
autoadd_ipv6_address
fi
if [[ $SCRIPT_SYNC_HOSTNAME = "1" ]]; then
sync_hostname
fi
*/5 * * * * sh /lib/ffnw/configurator/configurator.sh;
include $(TOPDIR)/rules.mk
PKG_NAME:=ffnw-fastdreg
PKG_VERSION:=1
PKG_RELEASE:=1
PKG_BUILD_DIR := $(BUILD_DIR)/$(PKG_NAME)
include $(INCLUDE_DIR)/package.mk
define Package/ffnw-fastdreg
SECTION:=fastd
CATEGORY:=Freifunk Nordwest
TITLE:=Adds script which registers fastd-key
DEPENDS:=+gluon-mesh-vpn-fastd
endef
define Package/ffnw-fastdreg/description
Adds script which registers fastd-key
endef
define Build/Prepare
mkdir -p $(PKG_BUILD_DIR)
endef
define Build/Configure
endef
define Build/Compile
endef
define Package/ffnw-fastdreg/install
$(INSTALL_DIR) $(1)/lib/gluon/cron/
$(INSTALL_DATA) files/lib/gluon/cron/fastdreg $(1)/lib/gluon/cron/fastdreg
$(INSTALL_DIR) $(1)/lib/ffnw/fastdreg/
$(INSTALL_BIN) files/lib/ffnw/fastdreg/fastdreg.sh $(1)/lib/ffnw/fastdreg/
$(INSTALL_DIR) $(1)/etc/config/
$(INSTALL_CONF) files/fastdreg.config $(1)/etc/config/fastdreg
endef
$(eval $(call BuildPackage,ffnw-fastdreg))
package fastdreg
config fastdreg ffol
option regdone 0
#!/bin/sh
. /lib/functions.sh
keysrv="http://vpn01.freifunk-ol.de"
hostname=$(uci get system.@system[0].hostname)
pubkey=$(/etc/init.d/fastd show_key mesh_vpn)
regdone=$(uci get fastdreg.ffnw.regdone)
if [ "$regdone" -ne "1" ]; then
reg=$(wget -T15 "$keysrv/reg.php?name=$hostname&key=$pubkey" -O -)
if [ "$reg" == "regdone" ]; then
uci set fastdreg.ffnw.regdone=1
uci commit
fi
fi
* * * * * /lib/ffol/fastdreg/fastdreg.sh
#
# Copyright (C) 2006-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=libwlocate
PKG_VERSION:=1.1
PKG_RELEASE:=1
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://dev.freifunk-ol.de/packages
PKG_MD5SUM:=5f8be7c6e95b64f24dd8cde4557612a4
include $(INCLUDE_DIR)/package.mk
define Package/libwlocate
SECTION:=libs
CATEGORY:=Libraries
TITLE:=Shared library that can be used for location-based services
URL:=http://sourceforge.net/projects/libwlocate/
DEPENDS:=+libiw
endef
define Package/libwlocate/description
libwlocate is a shared library that can be used for location-based services.
It checks for WLAN-networks that are available near to a user and retrieves the
current geographic position out of them.
Thus no GPS is needed for positioning. This WLAN-based geolocation happens
without using any of the commercial services that do the same but track the users
position and data. libwlocate instead bases on the free OpenWLANMap project.
endef
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/include
$(CP) $(PKG_BUILD_DIR)/libwlocate.h $(1)/usr/include/
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libwlocate.so $(1)/usr/lib/
endef
define Package/libwlocate/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_BUILD_DIR)/libwlocate.so $(1)/usr/lib/
endef
$(eval $(call BuildPackage,libwlocate))
#
# Copyright (C) 2006-2010 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#
include $(TOPDIR)/rules.mk
PKG_NAME:=lwtrace
PKG_VERSION:=1.1
PKG_RELEASE:=1
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=http://dev.freifunk-ol.de/packages
PKG_MD5SUM:=bbe4e339daf69efe0b6c325f799c3e0b
include $(INCLUDE_DIR)/package.mk
define Package/lwtrace
SECTION:=utilities
CATEGORY:=Utilities
TITLE:=Tool that uses the libwlocate library to get a position wireless
URL:=http://sourceforge.net/projects/libwlocate/
DEPENDS:=+libwlocate
endef
define Package/lwtrace/description
libwlocate is a shared library that can be used for location-based services.
It checks for WLAN-networks that are available near to a user and retrieves the
current geographic position out of them.
Thus no GPS is needed for positioning. This WLAN-based geolocation happens
without using any of the commercial services that do the same but track the users
position and data. libwlocate instead bases on the free OpenWLANMap project.
endef
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/bin
$(CP) $(PKG_BUILD_DIR)/lwtrace $(1)/usr/bin/
endef
define Package/lwtrace/install
$(INSTALL_DIR) $(1)/usr/bin
$(CP) $(PKG_BUILD_DIR)/lwtrace $(1)/usr/bin/
endef
$(eval $(call BuildPackage,lwtrace))
\ No newline at end of file