summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--COPYING.MIT17
-rw-r--r--FAQ106
-rw-r--r--MAINTAINERS19
-rw-r--r--README.bbb86
-rw-r--r--README.clanton15
-rw-r--r--README.desktop17
-rw-r--r--README.fri265
-rw-r--r--README.iot54
-rw-r--r--README.md93
-rw-r--r--README.nuc65
-rw-r--r--README.rpi64
-rw-r--r--README.vbox72
-rw-r--r--meta-eca-bsp/conf/layer.conf13
-rw-r--r--meta-eca-bsp/recipes-eca/grub-conf/eca-grub-conf_1.0.bb16
-rw-r--r--meta-eca-bsp/recipes-eca/grub-conf/files/grub.conf10
-rw-r--r--meta-eca-bsp/recipes-eca/images/core-image-minimal-initramfs.bbappend4
-rw-r--r--meta-eca-bsp/recipes-eca/images/eca-image.bbappend10
-rw-r--r--meta-eca-bsp/recipes-eca/packagegroups/packagegroup-eca.bbappend23
-rw-r--r--meta-eca-bsp/recipes-kernel/linux/clanton/linux-yocto-clanton_3.8.bbappend28
-rw-r--r--meta-eca-bsp/recipes-kernel/linux/linux-mainline/netfilter.cfg13
-rw-r--r--meta-eca-bsp/recipes-kernel/linux/linux-mainline_3.8.bbappend14
-rw-r--r--meta-eca-bsp/recipes-kernel/linux/linux-yocto/beagle_qemu.cfg5
-rw-r--r--meta-eca-bsp/recipes-kernel/linux/linux-yocto_3.4.bbappend7
-rw-r--r--meta-eca/conf/distro/eca-bleeding.conf11
-rw-r--r--meta-eca/conf/distro/eca-graphics.conf34
-rw-r--r--meta-eca/conf/distro/eca.conf21
-rw-r--r--meta-eca/conf/distro/include/default-providers-eca.inc9
-rw-r--r--meta-eca/conf/distro/include/eca-floating-revisions.inc9
-rw-r--r--meta-eca/conf/layer.conf15
-rw-r--r--meta-eca/recipes-connectivity/bluez5/bluez5_git.bb21
-rw-r--r--meta-eca/recipes-connectivity/bluez5/files/bluetooth.conf37
-rw-r--r--meta-eca/recipes-connectivity/bluez5/files/fix-udev-paths.patch35
-rw-r--r--meta-eca/recipes-connectivity/connman/connman-init-systemd.bb32
-rw-r--r--meta-eca/recipes-connectivity/connman/connman_git.bb51
-rw-r--r--meta-eca/recipes-connectivity/connman/files/0001-doc-Debugging-in-host-that-uses-systemd.patch44
-rw-r--r--meta-eca/recipes-connectivity/connman/files/0002-systemd-Use-environment-file-for-connmand-debug-opti.patch31
-rw-r--r--meta-eca/recipes-connectivity/connman/files/0003-systemd-Use-environment-file-for-connman-vpnd-debug-.patch32
-rw-r--r--meta-eca/recipes-connectivity/connman/files/add_xuser_dbus_permission.patch21
-rw-r--r--meta-eca/recipes-connectivity/connman/files/connman61
-rwxr-xr-xmeta-eca/recipes-connectivity/connman/files/connman-init-settings.sh96
-rw-r--r--meta-eca/recipes-connectivity/connman/files/connman-init.service13
-rw-r--r--meta-eca/recipes-connectivity/iproute2/files/0001-No-arpd-please.patch28
-rw-r--r--meta-eca/recipes-connectivity/iproute2/iproute2_%.bbappend9
-rw-r--r--meta-eca/recipes-connectivity/libpcap/libpcap_%.bbappend1
-rw-r--r--meta-eca/recipes-connectivity/neard/files/neard.service.in13
-rw-r--r--meta-eca/recipes-connectivity/neard/neard_git.bb20
-rw-r--r--meta-eca/recipes-connectivity/ofono/files/ofono42
-rw-r--r--meta-eca/recipes-connectivity/ofono/ofono_git.bb32
-rw-r--r--meta-eca/recipes-connectivity/scapy/python-scapy_2.2.0.bb24
-rw-r--r--meta-eca/recipes-connectivity/wpa-supplicant/wpa-supplicant_%.bbappend15
-rw-r--r--meta-eca/recipes-core/base-files/base-files_3.0.14.bbappend11
-rw-r--r--meta-eca/recipes-core/busybox/busybox_%.bbappend2
-rw-r--r--meta-eca/recipes-core/busybox/files/defconfig1014
-rw-r--r--meta-eca/recipes-devtools/ninja/ninja-native_1.4.0.bb21
-rw-r--r--meta-eca/recipes-eca/images/eca-image.bb4
-rw-r--r--meta-eca/recipes-eca/images/eca-image.inc31
-rw-r--r--meta-eca/recipes-eca/packagegroups/packagegroup-base.bbappend5
-rw-r--r--meta-eca/recipes-eca/packagegroups/packagegroup-eca-desktop.bb45
-rw-r--r--meta-eca/recipes-eca/packagegroups/packagegroup-eca.bb127
-rw-r--r--meta-eca/recipes-kernel/linux/linux-mainline_3.8.bb3
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/bluetooth.cfg21
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/bridge.cfg2
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/high-speed-mobile-devices.cfg1
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/ipv6.cfg3
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/l2tp.cfg2
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/mac80211.cfg2
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/netfilter-3.10.cfg175
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/netfilter-3.8.cfg175
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/netfilter-ipv4.cfg14
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/netfilter-small-3.8.cfg23
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/nfacct.cfg2
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/nfc-3.4.cfg5
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/nfc.cfg7
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/nokia-phonet.cfg2
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/rfkill.cfg3
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/tun-device.cfg1
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/usb-eth-gadget.cfg3
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/usb-net-3.10.cfg22
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/usb-net.cfg14
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/usb-serial.cfg8
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/wlan-atheros-3.4.cfg14
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/wlan-atheros.cfg21
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/wlan-broadcom.cfg24
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/wlan-intel-3.10.cfg4
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/wlan-intel.cfg3
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/wlan-marwel.cfg4
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/wlan-ralink.cfg15
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/wlan-realtek-3.4.cfg6
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/wlan-realtek.cfg11
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/wlan-ti.cfg9
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/wlan-zydas-3.4.cfg4
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto/wlan-zydas.cfg1
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto_3.10.bbappend27
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto_3.14.bbappend27
-rw-r--r--meta-eca/recipes-kernel/linux/linux-yocto_3.4.bbappend19
-rw-r--r--meta-eca/recipes-multimedia/pulseaudio/files/0001-configure.ac-Check-only-for-libsystemd-not-libsystem.patch30
-rw-r--r--meta-eca/recipes-multimedia/pulseaudio/files/volatiles.04_pulse2
-rw-r--r--meta-eca/recipes-multimedia/pulseaudio/pulseaudio_git.bb23
-rw-r--r--meta-eca/recipes-support/libusb/libusb1_%.bbappend5
-rw-r--r--meta-eca/recipes-web/eca-web/eca-web_0.1.bb49
-rw-r--r--meta-eca/recipes-web/eca-web/files/COPYING340
-rw-r--r--meta-eca/recipes-web/eca-web/files/config4
-rw-r--r--meta-eca/recipes-web/eca-web/files/eca-web.service12
-rwxr-xr-xmeta-eca/recipes-web/eca-web/files/start-eca-web13
-rw-r--r--meta-eca/recipes-web/webpy/webpy_0.37.bb18
-rw-r--r--meta-iot/conf/layer.conf12
-rw-r--r--meta-iot/recipes-connectivity/avahi/avahi-daemon-init.bb31
-rw-r--r--meta-iot/recipes-connectivity/avahi/avahi-daemon-init/LICENSE.avahi-daemon-init9
-rwxr-xr-xmeta-iot/recipes-connectivity/avahi/avahi-daemon-init/avahi-daemon-init-settings.sh20
-rw-r--r--meta-iot/recipes-connectivity/avahi/avahi-daemon-init/avahi-daemon-init.service12
-rw-r--r--meta-iot/recipes-connectivity/avahi/avahi_0.6.31.bbappend10
-rw-r--r--meta-iot/recipes-web/the-thing-system/steward-init.bb40
-rw-r--r--meta-iot/recipes-web/the-thing-system/steward-init/LICENSE.steward-init9
-rwxr-xr-xmeta-iot/recipes-web/the-thing-system/steward-init/steward-init-settings.sh62
-rw-r--r--meta-iot/recipes-web/the-thing-system/steward-init/steward-init.service.in14
-rw-r--r--meta-iot/recipes-web/the-thing-system/steward/npm-setup-proxies.example5
-rw-r--r--meta-iot/recipes-web/the-thing-system/steward/package.json90
-rw-r--r--meta-iot/recipes-web/the-thing-system/steward/server.js.in3
-rwxr-xr-xmeta-iot/recipes-web/the-thing-system/steward/start-steward22
-rwxr-xr-xmeta-iot/recipes-web/the-thing-system/steward/start-steward.debug22
-rw-r--r--meta-iot/recipes-web/the-thing-system/steward/steward.service.in12
-rw-r--r--meta-iot/recipes-web/the-thing-system/steward_git.bb131
-rw-r--r--meta-iot/recipes-web/the-thing-system/tts-nodejs_git.bb49
123 files changed, 4559 insertions, 0 deletions
diff --git a/COPYING.MIT b/COPYING.MIT
new file mode 100644
index 0000000..fb950dc
--- /dev/null
+++ b/COPYING.MIT
@@ -0,0 +1,17 @@
1Permission is hereby granted, free of charge, to any person obtaining a copy
2of this software and associated documentation files (the "Software"), to deal
3in the Software without restriction, including without limitation the rights
4to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
5copies of the Software, and to permit persons to whom the Software is
6furnished to do so, subject to the following conditions:
7
8The above copyright notice and this permission notice shall be included in
9all copies or substantial portions of the Software.
10
11THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
12IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
13FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
14AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
15LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
16OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
17THE SOFTWARE.
diff --git a/FAQ b/FAQ
new file mode 100644
index 0000000..b1043f8
--- /dev/null
+++ b/FAQ
@@ -0,0 +1,106 @@
1* What is ECA (Embedded Connectivity Appliance)?
2
3ECA is a platform for building network appliances. ECA is not a product itself
4but it can be used to create networking devices. ECA is also a platform for
5prototyping various networking technologies, like use of Bluetooth low
6energy devices in IP networks.
7
8ECA is Yocto based layer that ties together various open source
9connectivity components like ConnMan for connection management,
10oFono for cellular access, BlueZ for Bluetooth connectivity and
11neard for NFC support.
12
13As an example, a tethering network appliance (mobile access point) is built
14using ECA. This tethering application can provide Wifi AP that various devices
15can use to connect to internet via ECA.
16
17
18* What do you mean by tethering in this context?
19
20Tethering means that ECA provides network access point that clients can use
21it to connect to internet. ECA can tether wifi, bluetooth and ethernet networks.
22These technologies can be tethered all at the same time.
23
24
25* What is Wifi tethering?
26
27In Wifi tethering, ECA creates a Wifi access point using a configured
28name (SSID) and passphrase. The created AP uses WPA security. The internet
29access is typically provided by ethernet interface.
30
31
32* What is Bluetooth tethering?
33
34In Bluetooth tethering, ECA creates a PAN network and Bluetooth clients can
35connect to it. Internet access can be provided by ethernet, cellular or wifi.
36
37
38* What is ethernet tethering?
39
40Ethernet tethering means that client is connected to ECA via ethernet cable.
41ECA runs a DHCP server, and provides an IP address to the client. The internet
42access is typically provided either by wifi or cellular network.
43Note that ECA device that is configured to use ethernet tethering MUST not be
44connected to network that has other dhcp servers running, like corporate network
45or your home network. The corporate or home network might get confused if
46there are multiple DHCP servers running and providing IP addresses.
47
48
49* What hardware platform does it run?
50
51ECA is created using Yocto (see https://www.yoctoproject.org/ for details),
52so in theory it can run in all the devices that are supported by Yocto.
53In practice there are some restrictions, like available RAM, CPU speed etc.
54It is also important to have enough connectors for networking devices that
55are typically connected via USB, like usb wifi or cellular dongles.
56
57ECA has been successfully running in the following devices:
58- Intel NUC
59- Beagleboard
60- RaspberryPi
61- Intel Atom PC
62- Intel FRI2 (Fish River Island 2)
63- Beaglebone
64- VirtualBox image
65
66
67* What wifi USB dongles are supported?
68
69The ECA kernel is compiled with all the wifi devices supported by the kernel.
70It is still possible that some wifi hardware is not supported by the ECA.
71Even if kernel supports the wifi hardware, it is possible that the wifi dongle
72firmware is not available for Linux.
73
74
75* What Bluetooth USB dongles are supported?
76
77Same issue as in Wifi dongles, your dongle might be supported or not.
78Usually the issues are firmware related i.e., the firmware file is missing.
79
80
81* What cellular USB dongles are supported?
82
83Same issue as in Wifi dongles, your dongle might be supported or not.
84Usually the issues are firmware related i.e., the firmware file is missing.
85Many cellular USB modems are complicated to configure as they provide
86also mass storage mode that contains the Windows setup files. When cellular
87modem is inserted, the usb-modeswitch program tries to activate the cellular
88chip but sometimes it fails to do so.
89
90
91* What USB ethernet dongles are supported?
92
93All the kernel supported ethernet dongles should work. If the ethernet dongle
94is a new one, it might be that the kernel support is not yet activated.
95
96
97* Where do I get it?
98
99You can get the meta-eca layer for Yocto from
100git://git.yoctoproject.org/meta-eca
101
102
103* How do I start using the ECA tethering appliance?
104
105See the README file in the meta-eca sources or blog at
106http://metaeca.wordpress.com \ No newline at end of file
diff --git a/MAINTAINERS b/MAINTAINERS
new file mode 100644
index 0000000..0865e0d
--- /dev/null
+++ b/MAINTAINERS
@@ -0,0 +1,19 @@
1This file contains a list of maintainers for the meta-eca layer.
2
3Descriptions of section entries:
4
5 M: Mail patches to: FullName <address@domain>
6 F: Files and directories with wildcard patterns.
7 A trailing slash includes all files and subdirectory files.
8 F: recipes-devtools/ all files in and below meta-ivi
9 F: recipes-selinux/* all files in meta-ivi, but not below
10 One pattern per line. Multiple F: lines acceptable.
11
12Please keep this list in alphabetical order.
13
14Maintainers List (try to look for most precise areas first)
15
16COMMON
17M: Jukka Rissanen <jukka.rissanen@linux.intel.com>
18F: *
19
diff --git a/README.bbb b/README.bbb
new file mode 100644
index 0000000..059ee8c
--- /dev/null
+++ b/README.bbb
@@ -0,0 +1,86 @@
1Instructions for BeagleBoneBlack device
2---------------------------------------
3
4You might want to check from README.md file what poky and meta-oe
5revisions are supported. Usually HEAD version work ok but if it
6does not, then you can use the tested version mentioned in that file.
7
8$ mkdir yocto
9$ cd yocto
10$ git clone git://git.yoctoproject.org/poky
11$ cd poky
12$ git clone git://git.openembedded.org/meta-openembedded
13$ git clone git://git.yoctoproject.org/meta-eca
14$ export YOCTO=`pwd`
15$ git clone git://github.com/beagleboard/meta-beagleboard.git
16$ . oe-init-build-env build-bbb
17$ cd conf
18
19Edit bblayers.conf file and add these layers to BBLAYERS variable,
20if your name is not "user", then fix the path accordingly.
21
22/home/user/yocto/poky/meta-eca/meta-eca
23/home/user/yocto/poky/meta-eca/meta-eca-bsp
24/home/user/yocto/poky/meta-beagleboard/common-bsp
25/home/user/yocto/poky/meta-openembedded/meta-oe
26/home/user/yocto/poky/meta-openembedded/meta-systemd
27/home/user/yocto/poky/meta-openembedded/meta-networking
28/home/user/yocto/poky/meta-openembedded/meta-ruby
29
30Edit local.conf file
31
32* set BB_NUMBER_THREADS and PARALLEL_MAKE accordingly to your machine
33 capabilities
34* set your target to MACHINE ?= "beaglebone"
35* set DISTRO ?= "eca"
36* add BBMASK = "meta/recipes-connectivity/bluez/bluez4*|meta-openembedded/meta-systemd/oe-core/recipes-connectivity/bluez/bluez4*"
37
38
39If you want to build the Internet-of-Things version of ECA, then add
40
41/home/user/yocto/poky/meta-eca/meta-iot
42
43to bblayers.conf and also add
44
45DISTRO_FEATURES_append = " internet-of-things"
46
47to local.conf file.
48
49
50Then build the distro
51
52$ cd $BUILDDIR
53$ bitbake eca-image
54
55If the build succeeds, the result image can be found at
56tmp-eglibc/deploy/images/beaglebone
57
58Partition and format an SD card:
59
60# fdisk -lu /dev/mmcblk0
61
62Disk /dev/mmcblk0: 3951 MB, 3951034368 bytes
63255 heads, 63 sectors/track, 480 cylinders, total 7716864 sectors
64Units = sectors of 1 * 512 = 512 bytes
65
66 Device Boot Start End Blocks Id System
67/dev/mmcblk0p1 * 63 144584 72261 c Win95 FAT32
68/dev/mmcblk0p2 144585 465884 160650 83 Linux
69
70# mkfs.vfat -F 16 -n "boot" /dev/mmcblk0p1
71# mke2fs -j -L "root" /dev/mmcblk0p2
72
73The following assumes the SD card partition 1 and 2 are mounted at
74/media/boot and /media/root respectively. Removing the card and reinserting
75it will do just that on most modern Linux desktop environments.
76
77$ sudo -s
78# cd tmp-eglibc/deploy/images/beaglebone
79# cp MLO /media/boot/
80# cp u-boot.img /media/boot/u-boot.bin
81# cp uImage /media/boot/
82# tar x -C /media/root -f eca-image-beaglebone.tar.gz
83# tar x -C /media/root -f modules-beaglebone.tgz
84# sync
85
86Then eject the SD card, insert it to your Beaglebone and boot.
diff --git a/README.clanton b/README.clanton
new file mode 100644
index 0000000..ac39100
--- /dev/null
+++ b/README.clanton
@@ -0,0 +1,15 @@
1Installation instructions for Galileo (clanton) device
2------------------------------------------------------
3
4Format a micro SD card with FAT32 (one partition is enough).
5Lets assume the micro SD is mounted at /media/BOOT.
6
7$ cd $BUILDDIR
8
9you should now be in Yocto build directory.
10
11$ cd tmp-eglibc/deploy/images/clanton
12$ cp -r boot /media/BOOT
13$ cp bzImage grub.efi /media/BOOT
14$ cp core-image-minimal-initramfs-clanton.cpio.gz rootfs.img /media/BOOT
15
diff --git a/README.desktop b/README.desktop
new file mode 100644
index 0000000..dacfbf9
--- /dev/null
+++ b/README.desktop
@@ -0,0 +1,17 @@
1ECA with graphics
2-----------------
3
4For demo purposes it might be useful to have a configuration
5that is able to use browser in localhost.
6
7Get the browser layer from git://github.com/OSSystems/meta-browser.git
8
9Set following things in local.conf file:
10
11DISTRO = "eca-graphics"
12
13
14and these things in bblayers.conf:
15
16 /home/user/yocto/poky/meta-openembedded/meta-gnome
17 /home/user/yocto/poky/meta-browser
diff --git a/README.fri2 b/README.fri2
new file mode 100644
index 0000000..8f2c653
--- /dev/null
+++ b/README.fri2
@@ -0,0 +1,65 @@
1Instructions for Intel FRI2
2---------------------------
3
4You might want to check from README.md file what poky and meta-oe
5revisions are supported. Usually HEAD version work ok but if it
6does not, then you can use the tested version mentioned in that file.
7
8$ mkdir yocto
9$ cd yocto
10$ git clone git://git.yoctoproject.org/poky
11$ cd poky
12$ git clone git://git.openembedded.org/meta-openembedded
13$ git clone git://git.yoctoproject.org/meta-eca
14$ export YOCTO=`pwd`
15$ git clone git://git.yoctoproject.org/meta-intel
16$ . oe-init-build-env build-fri2
17$ cd conf
18
19Edit bblayers.conf file and add these layers to BBLAYERS variable,
20if your name is not "user", then fix the path accordingly.
21
22/home/user/yocto/poky/meta-eca/meta-eca
23/home/user/yocto/poky/meta-eca/meta-eca-bsp
24/home/user/yocto/poky/meta-intel
25/home/user/yocto/poky/meta-intel/meta-fri2
26/home/user/yocto/poky/meta-openembedded/meta-oe
27/home/user/yocto/poky/meta-openembedded/meta-systemd
28/home/user/yocto/poky/meta-openembedded/meta-networking
29/home/user/yocto/poky/meta-openembedded/meta-ruby
30
31Edit local.conf file
32
33* set BB_NUMBER_THREADS and PARALLEL_MAKE accordingly to your machine
34 capabilities
35* set your target to MACHINE ?= "fri2-noemgd"
36* set DISTRO ?= "eca"
37* add BBMASK = "meta/recipes-connectivity/bluez/bluez4*|meta-openembedded/meta-systemd/oe-core/recipes-connectivity/bluez/bluez4*"
38
39
40If you want to build the Internet-of-Things version of ECA, then add
41
42/home/user/yocto/poky/meta-eca/meta-iot
43
44to bblayers.conf and also add
45
46DISTRO_FEATURES_append = " internet-of-things"
47
48to local.conf file.
49
50
51Then build the distro
52
53$ cd $BUILDDIR
54$ bitbake eca-image
55
56If the build succeeds, the result image can be found at
57tmp-eglibc/deploy/images/fri2-noemgd
58
59Insert USB mass storage stick and figure out its device name (use dmesg
60and see messages at the end). Lets assume the USB stick is at /dev/sdX
61
62$ cd tmp-eglibc/deploy/images/fri2-noemgd
63$ sudo dd if=eca-image-fri2-noemgd.hddimg of=/dev/sdX
64
65Then eject the USB stick, insert it to FRI2 device and boot.
diff --git a/README.iot b/README.iot
new file mode 100644
index 0000000..a4d6e14
--- /dev/null
+++ b/README.iot
@@ -0,0 +1,54 @@
1Internet of Things
2==================
3
4This version of eca contains TheThingSystem Steward support.
5
6In order to include it in the image, just set this in your local.conf file.
7
8 DISTRO_FEATURES_append = " internet-of-things"
9
10and add meta-eca/meta-iot to your BBLAYERS in your bblayers.conf file.
11
12
13Note that during the build, the TheThingSystem steward needs Internet
14access to load node.js components.
15
16If you are behind a proxy, then you need a special hack to set the
17proxies for npm.
18 cp meta-eca/meta-iot/recipes-web/the-thing-system/steward/npm-setup-proxies.example ~/npm-setup-proxies
19 chmod 755 ~/npm-setup-proxies
20Edit ~/npm-setup-proxies and set your proxy settings there.
21
22If you see this python error while building steward
23
24 gyp ERR! stack KeyError: 'getpwuid(): uid not found: 1000'
25
26then one solution (really ugly and hackish one) is to add your uid to
27sysroot $BUILDDIR/tmp-eglibc/sysroots/genericx86/etc/passwd file.
28
29If you see this error
30
31 log.do_install.16119:npm ERR! Error: shasum check failed for \
32 /home/user/tmp/npm-16155/1392027924404-0.427580259507522/tmp.tgz
33
34then just remove npm temp files like this
35
36 rm -rf ~/tmp/npm-*
37
38
39You can connect to Steward UI at
40
41 https://eca.local:8888/
42
43Creating user and credentials can be done at
44
45 https://eca.local:8888/client.html
46
47Console raw data can be seen at
48
49 https://eca.local:8888/console.html
50
51Normally ECA management console would be found at port 80 but as the
52steward controls that, the ECA web UI can be found at
53
54 https://eca.local:8080
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..c31809b
--- /dev/null
+++ b/README.md
@@ -0,0 +1,93 @@
1meta-eca, the Yocto layer for communication appliances
2======================================================
3
4This layer's purpose is to add Embedded Connectivity Appliance (ECA) support
5when used with Poky packagegroup base.
6
7Please see the MAINTAINERS file for information on contacting the maintainers
8of this layer, as well as instructions for submitting patches.
9
10Layer Dependencies
11------------------
12
13URI: git://git.yoctoproject.org/poky
14branch: master
15revision: 57e8d56a6b63942b616a1e6dd894fd4ea7b409cf
16
17URI: git://git.openembedded.org/meta-openembedded
18branch: master
19revision: 0f56bc4e2818a051a511ceb48596cbfa2f51ff3d
20
21Using the above git sha's and master revisions, bitbaking eca-image is
22known to work. Using head versions should work also just fine.
23
24
25Build a QEMU image including ECA components
26-------------------------------------------
27
28You can build a QEMU image including ECA components using the
29following steps:
30
311. Run the following command:
32
33 > $ source poky/oe-init-build-env
34
352. Add meta-eca/meta-eca path to COREBASE/build/conf/bblayers.conf file.
36
373. Add meta-eca/meta-eca-bsp path to COREBASE/build/conf/bblayers.conf file.
38
394. Add meta-openembedded/meta-systemd path to COREBASE/build/conf/bblayers.conf
40 file.
41
425. Add meta-openembedded/meta-oe path to COREBASE/build/conf/bblayers.conf file.
43
446. Add meta-openembedded/meta-networking path to
45 COREBASE/build/conf/bblayers.conf file.
46
477. Add meta-openembedded/meta-ruby path to COREBASE/build/conf/bblayers.conf
48 file.
49
508. Set MACHINE ??= "qemux86" in COREBASE/build/conf/local.conf file to build
51 for an emulated IA-32 instruction-set machine respectively.
52
539. Set DISTRO ?= "eca" in COREBASE/build/conf/local.conf file.
54 If you want a bleeding edge versions of ConnMan, oFono, Bluez5 and Neard,
55 then you can set the DISTRO to "eca-bleeding"
56
5710. Mask out bluez4 as we want to use bluez5, set BBMASK in your local.conf file
58 also ignore ofono recipe as ECA has own one.
59 BBMASK = "meta/recipes-connectivity/bluez/bluez4*|\
60 meta-openembedded/meta-systemd/oe-core/recipes-connectivity/bluez/bluez4*|\
61 meta-openembedded/meta-systemd/oe-core/recipes-connectivity/ofono/ofono*"
62
6311. Optional: In COREBASE/build/conf/local.conf file, you may uncomment
64 BB_NUMBER_THREADS = "4" and PARALLEL_MAKE = "-j 4" if you build on a
65 quad-core machine.
66
6712. Build eca-image
68
69 > $ bitbake eca-image
70
7113. Run the emulator:
72
73 > for qemux86:
74 > $ runqemu qemux86 eca-image
75
7614. Set the password for root user
77 The default password for root user is "root". You should change
78 that to something that only you know. If connecting to the host
79 using browser (use http://eca.local/ address), the web-ui
80 forces you to change the root password and it also asks you to
81 set the username/password for the web management UI.
82 If connecting to host using ssh, you need to set the root password
83 manually using "passwd" command.
84
8515. Connecting to the device
86 After you have booted the appliance, you can connect to it using
87 ethernet or wifi. If you have wifi card or usb dongle installed
88 in appliance, you should see access point called "eca-aabbccddeeff"
89 (this is just an example) in your wifi scans.
90 You can connect to that AP, the default passphrase in this case
91 would be "aabbccddeeff".
92 Connection can be done either via "ssh root@eca.local" or via
93 browser http://eca.local
diff --git a/README.nuc b/README.nuc
new file mode 100644
index 0000000..6f0795a
--- /dev/null
+++ b/README.nuc
@@ -0,0 +1,65 @@
1Instructions for Intel NUC
2--------------------------
3
4You might want to check from README.md file what poky and meta-oe
5revisions are supported. Usually HEAD version work ok but if it
6does not, then you can use the tested version mentioned in that file.
7
8$ mkdir yocto
9$ cd yocto
10$ git clone git://git.yoctoproject.org/poky
11$ cd poky
12$ git clone git://git.openembedded.org/meta-openembedded
13$ git clone git://git.yoctoproject.org/meta-eca
14$ export YOCTO=`pwd`
15$ git clone git://git.yoctoproject.org/meta-intel
16$ . oe-init-build-env build-nuc
17$ cd conf
18
19Edit bblayers.conf file and add these layers to BBLAYERS variable,
20if your name is not "user", then fix the path accordingly.
21
22/home/user/yocto/poky/meta-eca/meta-eca
23/home/user/yocto/poky/meta-eca/meta-eca-bsp
24/home/user/yocto/poky/meta-intel
25/home/user/yocto/poky/meta-intel/meta-nuc
26/home/user/yocto/poky/meta-openembedded/meta-oe
27/home/user/yocto/poky/meta-openembedded/meta-systemd
28/home/user/yocto/poky/meta-openembedded/meta-networking
29/home/user/yocto/poky/meta-openembedded/meta-ruby
30
31Edit local.conf file
32
33* set BB_NUMBER_THREADS and PARALLEL_MAKE accordingly to your machine
34 capabilities
35* set your target to MACHINE ?= "nuc"
36* set DISTRO ?= "eca"
37* add BBMASK = "meta/recipes-connectivity/bluez/bluez4*|meta-openembedded/meta-systemd/oe-core/recipes-connectivity/bluez/bluez4*"
38
39
40If you want to build the Internet-of-Things version of ECA, then add
41
42/home/user/yocto/poky/meta-eca/meta-iot
43
44to bblayers.conf and also add
45
46DISTRO_FEATURES_append = " internet-of-things"
47
48to local.conf file.
49
50
51Then build the distro
52
53$ cd $BUILDDIR
54$ bitbake eca-image
55
56If the build succeeds, the result image can be found at
57tmp-eglibc/deploy/images/nuc
58
59Insert USB mass storage stick and figure out its device name (use dmesg
60and see messages at the end). Lets assume the USB stick is at /dev/sdX
61
62$ cd tmp-eglibc/deploy/images/nuc
63$ sudo dd if=eca-image-nuc.hddimg of=/dev/sdX
64
65Then eject the USB stick, insert it to NUC and boot.
diff --git a/README.rpi b/README.rpi
new file mode 100644
index 0000000..34dfb3c
--- /dev/null
+++ b/README.rpi
@@ -0,0 +1,64 @@
1Instructions for RaspberryPi device
2-----------------------------------
3
4You might want to check from README.md file what poky and meta-oe
5revisions are supported. Usually HEAD version work ok but if it
6does not, then you can use the tested version mentioned in that file.
7
8$ mkdir yocto
9$ cd yocto
10$ git clone git://git.yoctoproject.org/poky
11$ cd poky
12$ git clone git://git.openembedded.org/meta-openembedded
13$ git clone git://git.yoctoproject.org/meta-eca
14$ export YOCTO=`pwd`
15$ git clone git://git.yoctoproject.org/meta-raspberrypi
16$ . oe-init-build-env build-rpi
17$ cd conf
18
19Edit bblayers.conf file and add these layers to BBLAYERS variable,
20if your name is not "user", then fix the path accordingly.
21
22/home/user/yocto/poky/meta-eca/meta-eca
23/home/user/yocto/poky/meta-eca/meta-eca-bsp
24/home/user/yocto/poky/meta-raspberrypi
25/home/user/yocto/poky/meta-openembedded/meta-oe
26/home/user/yocto/poky/meta-openembedded/meta-systemd
27/home/user/yocto/poky/meta-openembedded/meta-networking
28/home/user/yocto/poky/meta-openembedded/meta-ruby
29
30Edit local.conf file
31
32* set BB_NUMBER_THREADS and PARALLEL_MAKE accordingly to your machine
33 capabilities
34* set your target to MACHINE ?= "raspberrypi"
35* set DISTRO ?= "eca"
36* add BBMASK = "meta/recipes-connectivity/bluez/bluez4*|meta-openembedded/meta-systemd/oe-core/recipes-connectivity/bluez/bluez4*"
37
38
39If you want to build the Internet-of-Things version of ECA, then add
40
41/home/user/yocto/poky/meta-eca/meta-iot
42
43to bblayers.conf and also add
44
45DISTRO_FEATURES_append = " internet-of-things"
46
47to local.conf file.
48
49
50Then build the distro
51
52$ cd $BUILDDIR
53$ bitbake eca-image
54
55If the build succeeds, the result image can be found at
56tmp-eglibc/deploy/images/raspberrypi
57
58Insert SD card and figure out its device name (use dmesg
59and see messages at the end). Lets assume the SD card is at /dev/mmcblk0
60
61$ cd tmp-eglibc/deploy/images/raspberrypi
62$ sudo dd if=eca-image-raspberrypi.rpi-sdimg of=/dev/mmcblk0
63
64Then sync and eject the card, insert it to the device and boot.
diff --git a/README.vbox b/README.vbox
new file mode 100644
index 0000000..74453d3
--- /dev/null
+++ b/README.vbox
@@ -0,0 +1,72 @@
1Instructions for VirtualBox
2---------------------------
3
4You might want to check from README.md file what poky and meta-oe
5revisions are supported. Usually HEAD version work ok but if it
6does not, then you can use the tested version mentioned in that file.
7
8$ mkdir yocto
9$ cd yocto
10$ git clone git://git.yoctoproject.org/poky
11$ cd poky
12$ git clone git://git.openembedded.org/meta-openembedded
13$ git clone git://git.yoctoproject.org/meta-eca
14$ export YOCTO=`pwd`
15$ git clone git://git.yoctoproject.org/meta-intel
16$ . oe-init-build-env build-pc
17$ cd conf
18
19Edit bblayers.conf file and add these layers to BBLAYERS variable,
20if your name is not "user", then fix the path accordingly.
21
22/home/user/yocto/poky/meta-eca/meta-eca
23/home/user/yocto/poky/meta-eca/meta-eca-bsp
24/home/user/yocto/poky/meta-intel
25/home/user/yocto/poky/meta-openembedded/meta-oe
26/home/user/yocto/poky/meta-openembedded/meta-systemd
27/home/user/yocto/poky/meta-openembedded/meta-networking
28/home/user/yocto/poky/meta-openembedded/meta-ruby
29
30Edit local.conf file
31
32* set BB_NUMBER_THREADS and PARALLEL_MAKE accordingly to your machine
33 capabilities
34* set your target to MACHINE ?= "genericx86"
35* set DISTRO ?= "eca"
36* add BBMASK = "meta/recipes-connectivity/bluez/bluez4*|meta-openembedded/meta-systemd/oe-core/recipes-connectivity/bluez/bluez4*"
37
38
39If you want to build the Internet-of-Things version of ECA, then add
40
41/home/user/yocto/poky/meta-eca/meta-iot
42
43to bblayers.conf and also add
44
45DISTRO_FEATURES_append = " internet-of-things"
46
47to local.conf file.
48
49
50Then build the distro
51
52$ cd $BUILDDIR
53$ bitbake eca-image
54
55If the build succeeds, the result image can be found at
56tmp-eglibc/deploy/images/genericx86
57
58Then we need to convert the image to VDI format that VirtualBox can use.
59
60$ cd tmp-eglibc/deploy/images/genericx86
61$ vboxmanage convertfromraw --format=VDI eca-image-genericx86.hddimg eca-image-genericx86.vdi
62
63If you have eca machine already configured in VirtualBox, then the following
64instructions below might not be needed.
65
66$ vboxmanage createvm --register --name eca
67$ vboxmanage hostonlyif create ipconfig vboxnet1 --ip 192.168.42.1 --netmask 255.255.255.0
68$ vboxmanage modifyvm eca --ostype Linux --nic1 hostonly --hostonlyadapter1 vboxnet1
69$ vboxmanage storagectl eca --name IDE --add ide --bootable on --controller PIIX4
70$ vboxmanage storageattach eca --storagectl IDE --port 0 --device 0 --type hdd --medium eca-image-genericx86.vdi
71$ vboxmanage startvm eca
72
diff --git a/meta-eca-bsp/conf/layer.conf b/meta-eca-bsp/conf/layer.conf
new file mode 100644
index 0000000..6328a44
--- /dev/null
+++ b/meta-eca-bsp/conf/layer.conf
@@ -0,0 +1,13 @@
1# We have a conf and classes directory, add to BBPATH
2BBPATH .= ":${LAYERDIR}"
3
4# We have recipes-* directories, add to BBFILES
5BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
6 ${LAYERDIR}/recipes-*/*/*.bbappend"
7
8# Clanton has own kernel recipe
9BBFILES_clanton += "${LAYERDIR}/recipes-*/*/clanton/*.bbappend"
10
11BBFILE_COLLECTIONS += "ecabsp"
12BBFILE_PATTERN_ecabsp = "^${LAYERDIR}/"
13BBFILE_PRIORITY_ecabsp = "5"
diff --git a/meta-eca-bsp/recipes-eca/grub-conf/eca-grub-conf_1.0.bb b/meta-eca-bsp/recipes-eca/grub-conf/eca-grub-conf_1.0.bb
new file mode 100644
index 0000000..47df56e
--- /dev/null
+++ b/meta-eca-bsp/recipes-eca/grub-conf/eca-grub-conf_1.0.bb
@@ -0,0 +1,16 @@
1DESCRIPTION = "grub.conf"
2LICENSE = "MIT"
3LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/MIT;md5=0835ade698e0bcf8506ecda2f7b4f302"
4
5GRUB_CONF = "grub.conf"
6GRUB_PATH = "boot/grub/"
7SRC_URI = "file://${GRUB_CONF}"
8
9do_grub() {
10 install -d ${DEPLOY_DIR_IMAGE}/${GRUB_PATH}
11 install -m 0755 ${WORKDIR}/${GRUB_CONF} ${DEPLOY_DIR_IMAGE}/${GRUB_PATH}/${GRUB_CONF}
12}
13
14do_grub[nostamp] = "1"
15
16addtask grub before do_build after do_compile
diff --git a/meta-eca-bsp/recipes-eca/grub-conf/files/grub.conf b/meta-eca-bsp/recipes-eca/grub-conf/files/grub.conf
new file mode 100644
index 0000000..cfb1f54
--- /dev/null
+++ b/meta-eca-bsp/recipes-eca/grub-conf/files/grub.conf
@@ -0,0 +1,10 @@
1default 0
2timeout 3
3
4color white/blue white/cyan
5
6title ECA for Clanton
7 root (hd0,0)
8 kernel /bzImage root=/dev/ram0 console=ttyS1,115200n8 earlycon=uart8250,mmio32,0x8010f000,115200n8 reboot=efi,warm apic=debug rw LABEL=boot debugshell=5
9 initrd /core-image-minimal-initramfs-clanton.cpio.gz
10
diff --git a/meta-eca-bsp/recipes-eca/images/core-image-minimal-initramfs.bbappend b/meta-eca-bsp/recipes-eca/images/core-image-minimal-initramfs.bbappend
new file mode 100644
index 0000000..48a2f5b
--- /dev/null
+++ b/meta-eca-bsp/recipes-eca/images/core-image-minimal-initramfs.bbappend
@@ -0,0 +1,4 @@
1IMAGE_INSTALL_clanton = "initramfs-live-boot busybox base-passwd udev"
2IMAGE_INSTALL_clanton += "kernel-module-usb-storage"
3IMAGE_INSTALL_clanton += "kernel-module-ehci-hcd kernel-module-ehci-pci kernel-module-ohci-hcd"
4IMAGE_INSTALL_clanton += "kernel-module-stmmac"
diff --git a/meta-eca-bsp/recipes-eca/images/eca-image.bbappend b/meta-eca-bsp/recipes-eca/images/eca-image.bbappend
new file mode 100644
index 0000000..65c5838
--- /dev/null
+++ b/meta-eca-bsp/recipes-eca/images/eca-image.bbappend
@@ -0,0 +1,10 @@
1
2IMAGE_FSTYPES_clanton = "ext3 live"
3
4NOISO_clanton = "1"
5NOHDD_clanton = "1"
6
7EXTRA_IMAGEDEPENDS_clanton = "eca-grub-conf"
8
9# root fs name should be rootfs.img as initrd expects to find that
10IMAGE_POSTPROCESS_COMMAND_clanton += "rm -f rootfs.img; ln -s ${IMAGE_LINK_NAME}.ext3 rootfs.img; "
diff --git a/meta-eca-bsp/recipes-eca/packagegroups/packagegroup-eca.bbappend b/meta-eca-bsp/recipes-eca/packagegroups/packagegroup-eca.bbappend
new file mode 100644
index 0000000..7fae0cc
--- /dev/null
+++ b/meta-eca-bsp/recipes-eca/packagegroups/packagegroup-eca.bbappend
@@ -0,0 +1,23 @@
1def get_depends_qemu(bb, d, dep):
2 val = (bb.data.getVar("MACHINEOVERRIDES", d) or "")
3 if val.find("qemuall"):
4 return ""
5 else:
6 return dep
7
8IWLWIFI := "\
9 ${@get_depends_qemu(bb, d, 'linux-firmware-iwlwifi-licence')} \
10 ${@get_depends_qemu(bb, d, 'linux-firmware-iwlwifi-6000g2a-5')} \
11 ${@get_depends_qemu(bb, d, 'linux-firmware-iwlwifi-6000g2b-6')} \
12"
13
14# Add iwlwifi firmware for Intel devices but not for qemu images because
15# user probably does not have Intel layer defined there
16RDEPENDS_packagegroup-eca_append_x86 += "\
17 ${IWLWIFI} \
18"
19
20# network configuration for connman if running qemu
21RDEPENDS_packagegroup-eca_append_qemuall += "\
22 connman-conf \
23"
diff --git a/meta-eca-bsp/recipes-kernel/linux/clanton/linux-yocto-clanton_3.8.bbappend b/meta-eca-bsp/recipes-kernel/linux/clanton/linux-yocto-clanton_3.8.bbappend
new file mode 100644
index 0000000..8cff3f2
--- /dev/null
+++ b/meta-eca-bsp/recipes-kernel/linux/clanton/linux-yocto-clanton_3.8.bbappend
@@ -0,0 +1,28 @@
1# find defconfig path
2FILESEXTRAPATHS := "${THISDIR}/../../../meta-eca/recipes-kernel/linux/linux-yocto"
3
4SRC_URI += " \
5 file://wlan-atheros.cfg \
6 file://wlan-ralink.cfg \
7 file://wlan-realtek.cfg \
8 file://wlan-broadcom.cfg \
9 file://wlan-zydas.cfg \
10 file://wlan-marwel.cfg \
11 file://wlan-ti.cfg \
12 file://wlan-intel.cfg \
13 file://bluetooth.cfg \
14 file://nokia-phonet.cfg \
15 file://usb-serial.cfg \
16 file://tun-device.cfg \
17 file://l2tp.cfg \
18 file://rfkill.cfg \
19 file://mac80211.cfg \
20 file://nfc.cfg \
21 file://high-speed-mobile-devices.cfg \
22 file://usb-eth-gadget.cfg \
23 file://usb-net.cfg \
24 file://ipv6.cfg \
25 file://nfacct.cfg \
26 file://bridge.cfg \
27 file://netfilter-small-3.8.cfg \
28"
diff --git a/meta-eca-bsp/recipes-kernel/linux/linux-mainline/netfilter.cfg b/meta-eca-bsp/recipes-kernel/linux/linux-mainline/netfilter.cfg
new file mode 100644
index 0000000..552c937
--- /dev/null
+++ b/meta-eca-bsp/recipes-kernel/linux/linux-mainline/netfilter.cfg
@@ -0,0 +1,13 @@
1CONFIG_NF_CONNTRACK=m
2CONFIG_NF_CONNTRACK_PROCFS=y
3CONFIG_NF_NAT=m
4CONFIG_NF_NAT_NEEDED=y
5CONFIG_NF_DEFRAG_IPV4=m
6CONFIG_NF_CONNTRACK_IPV4=m
7CONFIG_NF_CONNTRACK_PROC_COMPAT=y
8CONFIG_NF_NAT_IPV4=m
9CONFIG_IP_NF_TARGET_MASQUERADE=m
10CONFIG_NF_CONNTRACK_MARK=y
11CONFIG_NETFILTER_XT_CONNMARK=m
12CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
13CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
diff --git a/meta-eca-bsp/recipes-kernel/linux/linux-mainline_3.8.bbappend b/meta-eca-bsp/recipes-kernel/linux/linux-mainline_3.8.bbappend
new file mode 100644
index 0000000..429ed34
--- /dev/null
+++ b/meta-eca-bsp/recipes-kernel/linux/linux-mainline_3.8.bbappend
@@ -0,0 +1,14 @@
1# find defconfig path
2FILESEXTRAPATHS_append := ":${THISDIR}/${PN}"
3
4# netfilter stuff is missing from beaglebone kernel
5SRC_URI_append_beaglebone += "file://netfilter.cfg"
6
7do_configure_append_beaglebone () {
8 for i in ${S}/../*.cfg; do
9 echo "Adding ${i} to ${S}/.config"
10 cat ${i} >> ${S}/.config
11 done
12
13 yes '' | oe_runmake oldconfig
14}
diff --git a/meta-eca-bsp/recipes-kernel/linux/linux-yocto/beagle_qemu.cfg b/meta-eca-bsp/recipes-kernel/linux/linux-yocto/beagle_qemu.cfg
new file mode 100644
index 0000000..0ace211
--- /dev/null
+++ b/meta-eca-bsp/recipes-kernel/linux/linux-yocto/beagle_qemu.cfg
@@ -0,0 +1,5 @@
1CONFIG_PANEL_GENERIC_DPI=y
2
3CONFIG_USB_OHCI_HCD=y
4CONFIG_USB_OHCI_HCD_OMAP3=y
5CONFIG_USB_OHCI_LITTLE_ENDIAN=y
diff --git a/meta-eca-bsp/recipes-kernel/linux/linux-yocto_3.4.bbappend b/meta-eca-bsp/recipes-kernel/linux/linux-yocto_3.4.bbappend
new file mode 100644
index 0000000..5bde90b
--- /dev/null
+++ b/meta-eca-bsp/recipes-kernel/linux/linux-yocto_3.4.bbappend
@@ -0,0 +1,7 @@
1# find defconfig path
2FILESEXTRAPATHS_append := ":${THISDIR}/${PN}"
3
4# Kernel configs
5SRC_URI_append_beagleboard = " \
6 file://beagle_qemu.cfg \
7 "
diff --git a/meta-eca/conf/distro/eca-bleeding.conf b/meta-eca/conf/distro/eca-bleeding.conf
new file mode 100644
index 0000000..56556a9
--- /dev/null
+++ b/meta-eca/conf/distro/eca-bleeding.conf
@@ -0,0 +1,11 @@
1PREFERRED_VERSION_connman ?= "1.x+git%"
2PREFERRED_VERSION_ofono ?= "1.x+git%"
3PREFERRED_VERSION_neard ?= "0.x+git%"
4PREFERRED_VERSION_bluez5 ?= "5.x+git%"
5PREFERRED_VERSION_libasound-module-bluez ?= "5.x+git%"
6
7require conf/distro/include/eca-floating-revisions.inc
8require conf/distro/eca.conf
9
10DISTRO = "eca-bleeding"
11DISTROOVERRIDES = "eca"
diff --git a/meta-eca/conf/distro/eca-graphics.conf b/meta-eca/conf/distro/eca-graphics.conf
new file mode 100644
index 0000000..b0f6bd6
--- /dev/null
+++ b/meta-eca/conf/distro/eca-graphics.conf
@@ -0,0 +1,34 @@
1DISTRO_NAME = "Embedded Connectivity Appliance"
2DISTRO_VERSION = "0.9+snapshot-${DATE}"
3
4VIRTUAL-RUNTIME_init_manager = "systemd"
5VIRTUAL-RUNTIME_initscripts = ""
6
7include conf/distro/include/default-providers-eca.inc
8
9DISTRO_FEATURES_append = " bluetooth systemd 3g wifi ipv6 nfc zeroconf \
10 largefile multiarch x11 opengl wayland desktop"
11
12LAYER_CONF_VERSION = "6"
13
14MACHINE_ESSENTIAL_EXTRA_RDEPENDS = ""
15
16DISTRO_FEATURES_BACKFILL_CONSIDERED="sysvinit"
17
18# Enable some of the supported VPN technogies in ConnMan
19PACKAGECONFIG_append_pn-connman = " openvpn l2tp pptp"
20
21# Use bluez5 in pulseaudio
22PACKAGECONFIG_append_pn-pulseaudio = " bluez5"
23
24INHERIT += "extrausers"
25EXTRA_USERS_PARAMS = "usermod -p '\$1\$1DO/lR8M\$f8JOOu4W8GBZzdNzCgSW40' root;"
26
27LICENSE_FLAGS_WHITELIST = "commercial"
28
29FEATURE_PACKAGES_eca-desktop = "packagegroup-eca-desktop"
30
31IMAGE_FEATURES += "splash x11-base eca-desktop hwcodecs"
32
33#CORE_IMAGE_EXTRA_INSTALL += "wayland weston"
34
diff --git a/meta-eca/conf/distro/eca.conf b/meta-eca/conf/distro/eca.conf
new file mode 100644
index 0000000..4d84ea2
--- /dev/null
+++ b/meta-eca/conf/distro/eca.conf
@@ -0,0 +1,21 @@
1DISTRO_NAME = "Embedded Connectivity Appliance"
2DISTRO_VERSION = "0.9+snapshot-${DATE}"
3
4VIRTUAL-RUNTIME_init_manager = "systemd"
5VIRTUAL-RUNTIME_initscripts = ""
6
7include conf/distro/include/default-providers-eca.inc
8
9DISTRO_FEATURES_append = " bluetooth systemd 3g wifi ipv6 nfc zeroconf"
10
11LAYER_CONF_VERSION = "6"
12
13MACHINE_ESSENTIAL_EXTRA_RDEPENDS = ""
14
15DISTRO_FEATURES_BACKFILL_CONSIDERED="sysvinit"
16
17# Enable some of the supported VPN technogies in ConnMan
18PACKAGECONFIG_append_pn-connman = " openvpn l2tp pptp"
19
20INHERIT += "extrausers"
21EXTRA_USERS_PARAMS = "usermod -p '\$1\$1DO/lR8M\$f8JOOu4W8GBZzdNzCgSW40' root;"
diff --git a/meta-eca/conf/distro/include/default-providers-eca.inc b/meta-eca/conf/distro/include/default-providers-eca.inc
new file mode 100644
index 0000000..eb7df14
--- /dev/null
+++ b/meta-eca/conf/distro/include/default-providers-eca.inc
@@ -0,0 +1,9 @@
1#
2# Default virtual providers
3#
4PREFERRED_PROVIDER_virtual/arm-oe-linux-gnueabi-depmod ?= "kmod-cross"
5PREFERRED_PROVIDER_udev ?= "systemd"
6PREFERRED_PROVIDER_udev-utils ?= "systemd"
7
8PREFERRED_PROVIDER_virtual/kernel ?= "linux-yocto"
9PREFERRED_VERSION_linux-yocto ?= "3.14%"
diff --git a/meta-eca/conf/distro/include/eca-floating-revisions.inc b/meta-eca/conf/distro/include/eca-floating-revisions.inc
new file mode 100644
index 0000000..fb86e36
--- /dev/null
+++ b/meta-eca/conf/distro/include/eca-floating-revisions.inc
@@ -0,0 +1,9 @@
1#
2# Package Versions for cutting edge testing:
3#
4
5SRCREV_pn-connman ?= "${AUTOREV}"
6SRCREV_pn-bluez5 ?= "${AUTOREV}"
7SRCREV_pn-ofono ?= "${AUTOREV}"
8SRCREV_pn-neard ?= "${AUTOREV}"
9
diff --git a/meta-eca/conf/layer.conf b/meta-eca/conf/layer.conf
new file mode 100644
index 0000000..c746254
--- /dev/null
+++ b/meta-eca/conf/layer.conf
@@ -0,0 +1,15 @@
1BBPATH ?= ""
2# We add conf directory to BBPATH
3BBPATH .= ":${LAYERDIR}"
4
5# We have a recipes directory containing .bb and .bbappend files, add to BBFILES
6BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
7 ${LAYERDIR}/recipes-*/*/*.bbappend"
8
9BBFILE_COLLECTIONS += "eca"
10BBFILE_PATTERN_eca := "^${LAYERDIR}/"
11BBFILE_PRIORITY_eca = "7"
12
13# Define a similar VARIABLE to COREBASE in order to get a reference to
14# top directory easily
15ECA_COREBASE := '${@os.path.normpath("${LAYERDIR}/../")}'
diff --git a/meta-eca/recipes-connectivity/bluez5/bluez5_git.bb b/meta-eca/recipes-connectivity/bluez5/bluez5_git.bb
new file mode 100644
index 0000000..f327e9c
--- /dev/null
+++ b/meta-eca/recipes-connectivity/bluez5/bluez5_git.bb
@@ -0,0 +1,21 @@
1require recipes-connectivity/bluez5/bluez5.inc
2
3SRCREV = "cdfdc6b2b6182ef09c28d49873f79c581ab04de5"
4SRC_URI = "\
5 git://git.kernel.org/pub/scm/bluetooth/bluez.git \
6 file://bluetooth.conf \
7 file://fix-udev-paths.patch \
8"
9
10S = "${WORKDIR}/git"
11PV = "5.18+git${SRCPV}"
12
13EXTRA_OECONF += "\
14 --disable-obex \
15 --enable-client \
16"
17
18do_install_append() {
19 # gatttool is useful to have so add it to the bluez5 package
20 install -m 0755 ${S}/attrib/gatttool ${D}/${bindir}
21}
diff --git a/meta-eca/recipes-connectivity/bluez5/files/bluetooth.conf b/meta-eca/recipes-connectivity/bluez5/files/bluetooth.conf
new file mode 100644
index 0000000..0495200
--- /dev/null
+++ b/meta-eca/recipes-connectivity/bluez5/files/bluetooth.conf
@@ -0,0 +1,37 @@
1<!-- This configuration file specifies the required security policies
2 for Bluetooth core daemon to work. -->
3
4<!DOCTYPE busconfig PUBLIC "-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN"
5 "http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd">
6<busconfig>
7
8 <!-- ../system.conf have denied everything, so we just punch some holes -->
9
10 <policy user="root">
11 <allow own="org.bluez"/>
12 <allow send_destination="org.bluez"/>
13 <allow send_interface="org.bluez.Agent1"/>
14 <allow send_interface="org.bluez.MediaEndpoint1"/>
15 <allow send_interface="org.bluez.MediaPlayer1"/>
16 <allow send_interface="org.bluez.ThermometerWatcher1"/>
17 <allow send_interface="org.bluez.AlertAgent1"/>
18 <allow send_interface="org.bluez.Profile1"/>
19 <allow send_interface="org.bluez.HeartRateWatcher1"/>
20 <allow send_interface="org.bluez.CyclingSpeedWatcher1"/>
21 </policy>
22
23 <policy at_console="true">
24 <allow send_destination="org.bluez"/>
25 </policy>
26
27 <!-- allow users of lp group (printing subsystem) to
28 communicate with bluetoothd -->
29 <policy group="lp">
30 <allow send_destination="org.bluez"/>
31 </policy>
32
33 <policy context="default">
34 <deny send_destination="org.bluez"/>
35 </policy>
36
37</busconfig>
diff --git a/meta-eca/recipes-connectivity/bluez5/files/fix-udev-paths.patch b/meta-eca/recipes-connectivity/bluez5/files/fix-udev-paths.patch
new file mode 100644
index 0000000..37362f5
--- /dev/null
+++ b/meta-eca/recipes-connectivity/bluez5/files/fix-udev-paths.patch
@@ -0,0 +1,35 @@
1Add udevdir/udevrulesdir options
2
3Upstream-Status: Inappropriate [configuration]
4Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
5Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
6
7Index: bluez-5.0/Makefile.am
8===================================================================
9--- bluez-5.0.orig/Makefile.am 2012-12-24 19:46:54.000000000 +0200
10+++ bluez-5.0/Makefile.am 2013-01-30 14:33:15.760615474 +0200
11@@ -175,7 +175,7 @@
12 include Makefile.obexd
13
14 if HID2HCI
15-rulesdir = @UDEV_DIR@/rules.d
16+rulesdir = @UDEV_RULES_DIR@
17
18 rules_DATA = tools/97-hid2hci.rules
19
20Index: bluez-5.0/configure.ac
21===================================================================
22--- bluez-5.0.orig/configure.ac 2012-12-24 19:46:54.000000000 +0200
23+++ bluez-5.0/configure.ac 2013-01-30 14:34:59.068613895 +0200
24@@ -160,6 +160,11 @@
25 AC_SUBST(UDEV_DIR, [${path_udevdir}])
26 fi
27
28+AC_ARG_WITH([udevrulesdir],
29+ AS_HELP_STRING([--with-udevrulesdir=DIR], [udev rules directory]),
30+ [], [with_udevrulesdir=/lib/udev/rules.d])
31+AC_SUBST([UDEV_RULES_DIR], [$with_udevrulesdir])
32+
33 AM_CONDITIONAL(HID2HCI, test "${enable_tools}" != "no" &&
34 test "${enable_udev}" != "no" && test "${enable_usb}" != "no")
35
diff --git a/meta-eca/recipes-connectivity/connman/connman-init-systemd.bb b/meta-eca/recipes-connectivity/connman/connman-init-systemd.bb
new file mode 100644
index 0000000..822a4a4
--- /dev/null
+++ b/meta-eca/recipes-connectivity/connman/connman-init-systemd.bb
@@ -0,0 +1,32 @@
1SUMMARY = "Initialization service for ConnMan"
2DESCRIPTION = "Initializes necessary ConnMan services. This is \
3needed in headless system, otherwise we might not be able to \
4connect to device after installation. This service is only run \
5once in the first boot.\
6"
7LICENSE = "GPLv2"
8LIC_FILES_CHKSUM = "file://connman-init-settings.sh;beginline=7;endline=18;md5=95c5d66479370ef3964c4aef9255476f"
9
10SRC_URI = "\
11 file://connman-init-settings.sh \
12 file://connman-init.service \
13"
14
15S = "${WORKDIR}"
16PR = "r0"
17
18inherit systemd
19
20SYSTEMD_PACKAGES = "connman-init-systemd"
21
22SYSTEMD_SERVICE_${PN} = " connman-init.service"
23
24FILES_${PN} = " connman-init.service \
25 ${libdir}/connman/connman-init-settings.sh"
26
27do_install() {
28 install -d ${D}${libdir}/connman
29 install -d ${D}${nonarch_base_libdir}/systemd/system
30 install -m 0755 ${WORKDIR}/connman-init-settings.sh ${D}${libdir}/connman
31 install -m 0755 ${WORKDIR}/connman-init.service ${D}${nonarch_base_libdir}/systemd/system
32}
diff --git a/meta-eca/recipes-connectivity/connman/connman_git.bb b/meta-eca/recipes-connectivity/connman/connman_git.bb
new file mode 100644
index 0000000..0f4274c
--- /dev/null
+++ b/meta-eca/recipes-connectivity/connman/connman_git.bb
@@ -0,0 +1,51 @@
1require recipes-connectivity/connman/connman.inc
2
3# We use a known good version instead of some buggy point version.
4SRCREV = "f5a441e9d636eefd98335322e79e71ca7e4f55cc"
5SRC_URI = "\
6 git://git.kernel.org/pub/scm/network/connman/connman.git \
7 file://add_xuser_dbus_permission.patch \
8"
9LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e \
10 file://src/main.c;beginline=1;endline=20;md5=486a279a6ab0c8d152bcda3a5b5edc36 \
11"
12
13# Enable debugging the easy way in systemd based distro.
14# See 0001-doc-Debugging-in-host-that-uses-systemd.patch for usage.
15SRC_URI += "\
16 file://0002-systemd-Use-environment-file-for-connmand-debug-opti.patch \
17 file://0003-systemd-Use-environment-file-for-connman-vpnd-debug-.patch \
18"
19
20S = "${WORKDIR}/git"
21PR = "${INC_PR}.0"
22PV = "1.23+git${SRCPV}"
23
24
25# Override some options from poky connman recipe
26EXTRA_OECONF += "\
27 --enable-loopback=builtin \
28 --enable-ethernet=builtin \
29 --enable-test \
30 --enable-client \
31 --enable-tools \
32 --disable-polkit \
33 --enable-pacrunner \
34 --enable-wispr \
35"
36
37
38# Make sure we will use bluez5 instead of older bluez4
39PACKAGECONFIG[bluetooth] = "--enable-bluetooth, --disable-bluetooth, bluez5"
40RDEPENDS_${PN} = "\
41 dbus \
42 ${@base_contains('PACKAGECONFIG', 'bluetooth', 'bluez5', '', d)} \
43 ${@base_contains('PACKAGECONFIG', 'wifi','wpa-supplicant', '', d)} \
44 ${@base_contains('PACKAGECONFIG', '3g','ofono', '', d)} \
45 "
46
47
48do_install_append() {
49 install -d ${D}${sysconfdir}/connman
50 install -m 0644 ${S}/src/main.conf ${D}${sysconfdir}/connman/main.conf.example
51}
diff --git a/meta-eca/recipes-connectivity/connman/files/0001-doc-Debugging-in-host-that-uses-systemd.patch b/meta-eca/recipes-connectivity/connman/files/0001-doc-Debugging-in-host-that-uses-systemd.patch
new file mode 100644
index 0000000..421beba
--- /dev/null
+++ b/meta-eca/recipes-connectivity/connman/files/0001-doc-Debugging-in-host-that-uses-systemd.patch
@@ -0,0 +1,44 @@
1From 5365d78227f3c44338079e8c9c69494d038bfa6c Mon Sep 17 00:00:00 2001
2From: Jukka Rissanen <jukka.rissanen@linux.intel.com>
3Date: Wed, 13 Mar 2013 11:15:21 +0200
4Subject: [PATCH 1/3] doc: Debugging in host that uses systemd
5
6Upstream-Status: Denied
7
8Not accepted as distros can override the default ConnMan service file.
9
10Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
11---
12 README | 16 ++++++++++++++++
13 1 file changed, 16 insertions(+)
14
15diff --git a/README b/README
16index bfb246a..e97b536 100644
17--- a/README
18+++ b/README
19@@ -246,6 +246,22 @@ Following environment variables can be used:
20 Example:
21 CONNMAN_WEB_DEBUG=1 src/connmand -n
22
23+If the host is using systemd when starting ConnMan, then one can activate
24+debugging easily by creating /etc/connman/connmand.env file and setting
25+debug options there. By default the env file does not exist.
26+
27+The following example would activate debugging in src/s*.c files and
28+also turn on Internet connectivity check debugging if placed into
29+connmand.env file:
30+ DEBUG=-d src/s*.c
31+ CONNMAN_WEB_DEBUG=1
32+
33+Note that one should not use quotation marks in env file as the systemd
34+will not use shell to expand them.
35+
36+For connman-vpnd daemon debugging, a similiar /etc/connman/connman-vpnd.env
37+file can be created.
38+
39
40 Kernel configuration
41 ====================
42--
431.7.11.4
44
diff --git a/meta-eca/recipes-connectivity/connman/files/0002-systemd-Use-environment-file-for-connmand-debug-opti.patch b/meta-eca/recipes-connectivity/connman/files/0002-systemd-Use-environment-file-for-connmand-debug-opti.patch
new file mode 100644
index 0000000..8a683d6
--- /dev/null
+++ b/meta-eca/recipes-connectivity/connman/files/0002-systemd-Use-environment-file-for-connmand-debug-opti.patch
@@ -0,0 +1,31 @@
1From 656ff42ff42da965865cc6e012404d820692cf71 Mon Sep 17 00:00:00 2001
2From: Jukka Rissanen <jukka.rissanen@linux.intel.com>
3Date: Wed, 13 Mar 2013 11:16:33 +0200
4Subject: [PATCH 2/3] systemd: Use environment file for connmand debug options
5
6Upstream-Status: Denied
7
8Not accepted as distros can override the default ConnMan service file.
9
10Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
11---
12 src/connman.service.in | 3 ++-
13 1 file changed, 2 insertions(+), 1 deletion(-)
14
15diff --git a/src/connman.service.in b/src/connman.service.in
16index 2e9e4d5..fa57d4e 100644
17--- a/src/connman.service.in
18+++ b/src/connman.service.in
19@@ -6,7 +6,8 @@ After=syslog.target
20 Type=dbus
21 BusName=net.connman
22 Restart=on-failure
23-ExecStart=@prefix@/sbin/connmand -n
24+EnvironmentFile=-@sysconfdir@/connman/connmand.env
25+ExecStart=@prefix@/sbin/connmand -n $DEBUG
26 StandardOutput=null
27
28 [Install]
29--
301.7.11.4
31
diff --git a/meta-eca/recipes-connectivity/connman/files/0003-systemd-Use-environment-file-for-connman-vpnd-debug-.patch b/meta-eca/recipes-connectivity/connman/files/0003-systemd-Use-environment-file-for-connman-vpnd-debug-.patch
new file mode 100644
index 0000000..31d5bc8
--- /dev/null
+++ b/meta-eca/recipes-connectivity/connman/files/0003-systemd-Use-environment-file-for-connman-vpnd-debug-.patch
@@ -0,0 +1,32 @@
1From 5fb01b667a56d65ccb2b1174df9fe7190a5349f2 Mon Sep 17 00:00:00 2001
2From: Jukka Rissanen <jukka.rissanen@linux.intel.com>
3Date: Wed, 13 Mar 2013 11:17:24 +0200
4Subject: [PATCH 3/3] systemd: Use environment file for connman-vpnd debug
5 options
6
7Upstream-Status: Denied
8
9Not accepted as distros can override the default ConnMan service file.
10
11Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
12---
13 vpn/connman-vpn.service.in | 3 ++-
14 1 file changed, 2 insertions(+), 1 deletion(-)
15
16diff --git a/vpn/connman-vpn.service.in b/vpn/connman-vpn.service.in
17index ec02a86..2472f00 100644
18--- a/vpn/connman-vpn.service.in
19+++ b/vpn/connman-vpn.service.in
20@@ -5,7 +5,8 @@ After=syslog.target
21 [Service]
22 Type=dbus
23 BusName=net.connman.vpn
24-ExecStart=@prefix@/sbin/connman-vpnd -n
25+EnvironmentFile=-@sysconfdir@/connman/connman-vpnd.env
26+ExecStart=@prefix@/sbin/connman-vpnd -n $DEBUG
27 StandardOutput=null
28
29 [Install]
30--
311.7.11.4
32
diff --git a/meta-eca/recipes-connectivity/connman/files/add_xuser_dbus_permission.patch b/meta-eca/recipes-connectivity/connman/files/add_xuser_dbus_permission.patch
new file mode 100644
index 0000000..707b3ca
--- /dev/null
+++ b/meta-eca/recipes-connectivity/connman/files/add_xuser_dbus_permission.patch
@@ -0,0 +1,21 @@
1Because Poky doesn't support at_console we need to special-case the session
2user.
3
4Upstream-Status: Inappropriate [configuration]
5
6Signed-off-by: Ross Burton <ross.burton@intel.com>
7
8diff --git a/src/connman-dbus.conf b/src/connman-dbus.conf
9index 98a773e..466809c 100644
10--- a/src/connman-dbus.conf
11+++ b/src/connman-dbus.conf
12@@ -8,6 +8,9 @@
13 <allow send_interface="net.connman.Counter"/>
14 <allow send_interface="net.connman.Notification"/>
15 </policy>
16+ <policy user="xuser">
17+ <allow send_destination="net.connman"/>
18+ </policy>
19 <policy at_console="true">
20 <allow send_destination="net.connman"/>
21 </policy>
diff --git a/meta-eca/recipes-connectivity/connman/files/connman b/meta-eca/recipes-connectivity/connman/files/connman
new file mode 100644
index 0000000..4a0017f
--- /dev/null
+++ b/meta-eca/recipes-connectivity/connman/files/connman
@@ -0,0 +1,61 @@
1#!/bin/sh
2
3DAEMON=/usr/sbin/connmand
4PIDFILE=/var/run/connmand.pid
5DESC="Connection Manager"
6
7if [ -f /etc/default/connman ] ; then
8 . /etc/default/connman
9fi
10
11set -e
12
13nfsroot=0
14
15exec 9<&0 < /proc/mounts
16while read dev mtpt fstype rest; do
17 if test $mtpt = "/" ; then
18 case $fstype in
19 nfs | nfs4)
20 nfsroot=1
21 break
22 ;;
23 *)
24 ;;
25 esac
26 fi
27done
28
29do_start() {
30 EXTRA_PARAM=""
31 if test $nfsroot -eq 0 ; then
32 $DAEMON $EXTRA_PARAM
33 fi
34}
35
36do_stop() {
37 start-stop-daemon --stop --name connmand --quiet
38}
39
40case "$1" in
41 start)
42 echo "Starting $DESC"
43 do_start
44 ;;
45 stop)
46 echo "Stopping $DESC"
47 do_stop
48 ;;
49 restart|force-reload)
50 echo "Restarting $DESC"
51 do_stop
52 sleep 1
53 do_start
54 ;;
55 *)
56 echo "Usage: $0 {start|stop|restart|force-reload}" >&2
57 exit 1
58 ;;
59esac
60
61exit 0
diff --git a/meta-eca/recipes-connectivity/connman/files/connman-init-settings.sh b/meta-eca/recipes-connectivity/connman/files/connman-init-settings.sh
new file mode 100755
index 0000000..9b4f040
--- /dev/null
+++ b/meta-eca/recipes-connectivity/connman/files/connman-init-settings.sh
@@ -0,0 +1,96 @@
1#!/bin/sh
2#
3# Connection Manager Init Service
4#
5# Copyright (C) 2012 Intel Corporation. All rights reserved.
6#
7# This program is free software; you can redistribute it and/or modify
8# it under the terms of the GNU General Public License version 2 as
9# published by the Free Software Foundation.
10#
11# This program is distributed in the hope that it will be useful,
12# but WITHOUT ANY WARRANTY; without even the implied warranty of
13# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14# GNU General Public License for more details.
15#
16# You should have received a copy of the GNU General Public License
17# along with this program; if not, write to the Free Software
18# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
19
20
21CONNMAN_DIR=/var/lib/connman
22CONNMAN_SETTINGS=$CONNMAN_DIR/settings
23
24if [ -s $CONNMAN_SETTINGS ]; then
25 exit 0
26fi
27
28if [ ! -d $CONNMAN_DIR ]; then
29 mkdir -p $CONNMAN_DIR
30fi
31
32TETHERING="$1"
33TETHERING_AP_PASSPHRASE="$2"
34TETHERING_AP_SSID="$3"
35
36if [ -z "$TETHERING" ]; then
37 TETHERING="true"
38fi
39
40# Create main.conf with those values that we need
41MAINCONF=/etc/connman/main.conf
42cat > $MAINCONF <<EOF
43[General]
44TetheringTechnologies=wifi,bluetooth,gadget,ethernet
45PersistentTetheringMode=true
46EOF
47
48function get_mac
49{
50 # Get the mac address of the first network interface returned by kernel
51 IFACE=`head -n 3 /proc/net/dev|tail -n 1|awk '{ print $1 }'|sed 's/://'`
52 if [ -z "$IFACE" -o ! -d /sys/class/net/$IFACE ]; then
53 echo 010203040506
54 else
55 sed 's/://g' /sys/class/net/$IFACE/address
56 fi
57}
58
59if [ -z "$TETHERING_AP_SSID" ]; then
60 MAC=`get_mac`
61 TETHERING_AP_SSID=eca-$MAC
62fi
63
64if [ -z "$TETHERING_AP_PASSPHRASE" ]; then
65 if [ -z "$MAC" ]; then
66 MAC=`get_mac`
67 fi
68 TETHERING_AP_PASSPHRASE=$MAC
69fi
70
71cat > $CONNMAN_SETTINGS <<EOF
72[global]
73OfflineMode=false
74
75[Bluetooth]
76Enable=true
77
78[Cellular]
79Enable=true
80
81[WiFi]
82Enable=true
83Tethering=$TETHERING
84Tethering.Identifier=$TETHERING_AP_SSID
85Tethering.Passphrase=$TETHERING_AP_PASSPHRASE
86
87
88[Wired]
89Enable=true
90EOF
91
92if [ $? -eq 0 -a -f $CONNMAN_SETTINGS ]; then
93 chmod 0600 $CONNMAN_SETTINGS
94fi
95
96exit 0
diff --git a/meta-eca/recipes-connectivity/connman/files/connman-init.service b/meta-eca/recipes-connectivity/connman/files/connman-init.service
new file mode 100644
index 0000000..5b9b3f0
--- /dev/null
+++ b/meta-eca/recipes-connectivity/connman/files/connman-init.service
@@ -0,0 +1,13 @@
1[Unit]
2Description=Initialize ConnMan settings
3After=syslog.target
4ConditionFileNotEmpty=!/var/lib/connman/settings
5
6[Service]
7Type=oneshot
8EnvironmentFile=-/etc/connman/connmand.env
9ExecStart=-/usr/lib/connman/connman-init-settings.sh $TETHERING $AP_PASSPHRASE $AP_SSID
10StandardOutput=null
11
12[Install]
13WantedBy=connman.service
diff --git a/meta-eca/recipes-connectivity/iproute2/files/0001-No-arpd-please.patch b/meta-eca/recipes-connectivity/iproute2/files/0001-No-arpd-please.patch
new file mode 100644
index 0000000..36354d2
--- /dev/null
+++ b/meta-eca/recipes-connectivity/iproute2/files/0001-No-arpd-please.patch
@@ -0,0 +1,28 @@
1From 9ff7e5aefcb72bc0c481dc777f6a50ef7503d640 Mon Sep 17 00:00:00 2001
2From: Jukka Rissanen <jukka.rissanen@linux.intel.com>
3Date: Tue, 6 May 2014 12:51:09 +0300
4Subject: [PATCH] No arpd please
5
6Upstream-Status: Inappropriate [configuration]
7
8Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
9---
10 misc/Makefile | 2 +-
11 1 file changed, 1 insertion(+), 1 deletion(-)
12
13diff --git a/misc/Makefile b/misc/Makefile
14index a59ff87..d0a33e8 100644
15--- a/misc/Makefile
16+++ b/misc/Makefile
17@@ -1,7 +1,7 @@
18 SSOBJ=ss.o ssfilter.o
19 LNSTATOBJ=lnstat.o lnstat_util.o
20
21-TARGETS=ss nstat ifstat rtacct arpd lnstat
22+TARGETS=ss nstat ifstat rtacct lnstat
23
24 include ../Config
25
26--
271.8.3.1
28
diff --git a/meta-eca/recipes-connectivity/iproute2/iproute2_%.bbappend b/meta-eca/recipes-connectivity/iproute2/iproute2_%.bbappend
new file mode 100644
index 0000000..f4c53fe
--- /dev/null
+++ b/meta-eca/recipes-connectivity/iproute2/iproute2_%.bbappend
@@ -0,0 +1,9 @@
1FILESEXTRAPATHS_append := ":${THISDIR}/files"
2
3SRC_URI_append = " \
4 file://0001-No-arpd-please.patch \
5"
6
7# Compile also misc directory (to get ss prog)
8#
9EXTRA_OEMAKE_append = " SUBDIRS='lib tc ip misc'"
diff --git a/meta-eca/recipes-connectivity/libpcap/libpcap_%.bbappend b/meta-eca/recipes-connectivity/libpcap/libpcap_%.bbappend
new file mode 100644
index 0000000..30ffe44
--- /dev/null
+++ b/meta-eca/recipes-connectivity/libpcap/libpcap_%.bbappend
@@ -0,0 +1 @@
PACKAGECONFIG[bluetooth] = "--enable-bluetooth,--disable-bluetooth,bluez5"
diff --git a/meta-eca/recipes-connectivity/neard/files/neard.service.in b/meta-eca/recipes-connectivity/neard/files/neard.service.in
new file mode 100644
index 0000000..3f9cb02
--- /dev/null
+++ b/meta-eca/recipes-connectivity/neard/files/neard.service.in
@@ -0,0 +1,13 @@
1[Unit]
2Description=NFC service
3After=syslog.target
4
5[Service]
6Type=dbus
7BusName=org.neard
8Restart=on-failure
9ExecStart=@installpath@/nfc/neard -n
10StandardOutput=null
11
12[Install]
13WantedBy=multi-user.target
diff --git a/meta-eca/recipes-connectivity/neard/neard_git.bb b/meta-eca/recipes-connectivity/neard/neard_git.bb
new file mode 100644
index 0000000..ad3168b
--- /dev/null
+++ b/meta-eca/recipes-connectivity/neard/neard_git.bb
@@ -0,0 +1,20 @@
1require recipes-connectivity/neard/neard.inc
2
3SRC_URI = "git://git.kernel.org/pub/scm/network/nfc/neard.git;protocol=git \
4 file://neard.service.in \
5 "
6
7S = "${WORKDIR}/git"
8SRCREV = "647f2705bebf051ea85ab74399461203c8ba900e"
9PV = "0.14+git${SRCPV}"
10PR = "r2"
11
12
13EXTRA_OECONF += "--enable-tools \
14 "
15
16# We want to use bluez5 when doing handover
17RRECOMMENDS_${PN} = "\
18 ${@base_contains('DISTRO_FEATURES', 'bluetooth', 'bluez5', '', d)} \
19 ${@base_contains('DISTRO_FEATURES', 'wifi','wpa-supplicant', '', d)} \
20 "
diff --git a/meta-eca/recipes-connectivity/ofono/files/ofono b/meta-eca/recipes-connectivity/ofono/files/ofono
new file mode 100644
index 0000000..cc99709
--- /dev/null
+++ b/meta-eca/recipes-connectivity/ofono/files/ofono
@@ -0,0 +1,42 @@
1#!/bin/sh
2
3DAEMON=/usr/sbin/ofonod
4PIDFILE=/var/run/ofonod.pid
5DESC="Telephony daemon"
6
7if [ -f /etc/default/ofono ] ; then
8 . /etc/default/ofono
9fi
10
11set -e
12
13do_start() {
14 $DAEMON
15}
16
17do_stop() {
18 start-stop-daemon --stop --name ofonod --quiet
19}
20
21case "$1" in
22 start)
23 echo "Starting $DESC"
24 do_start
25 ;;
26 stop)
27 echo "Stopping $DESC"
28 do_stop
29 ;;
30 restart|force-reload)
31 echo "Restarting $DESC"
32 do_stop
33 sleep 1
34 do_start
35 ;;
36 *)
37 echo "Usage: $0 {start|stop|restart|force-reload}" >&2
38 exit 1
39 ;;
40esac
41
42exit 0
diff --git a/meta-eca/recipes-connectivity/ofono/ofono_git.bb b/meta-eca/recipes-connectivity/ofono/ofono_git.bb
new file mode 100644
index 0000000..110358f
--- /dev/null
+++ b/meta-eca/recipes-connectivity/ofono/ofono_git.bb
@@ -0,0 +1,32 @@
1require recipes-connectivity/ofono/ofono.inc
2
3S = "${WORKDIR}/git"
4SRCREV = "516165c3114471400b4551ff9b04ff9ca7c1fc25"
5PV = "1.14+git${SRCPV}"
6
7SRC_URI = "\
8 git://git.kernel.org/pub/scm/network/ofono/ofono.git;protocol=git \
9 file://ofono \
10"
11
12# We want to use bluez5
13DEPENDS := "${@oe_filter_out('bluez4', '${DEPENDS}', d)}"
14DEPENDS += "${@base_contains('DISTRO_FEATURES', 'bluetooth','bluez5', '', d)}"
15
16# Test scripts use python3, the dbus module is still missing so the scripts
17# do not work as expected.
18RDEPENDS_${PN} = "\
19 python3 \
20 python3-codecs \
21 python3-math \
22 python3-io \
23 python3-misc \
24"
25
26do_install_append() {
27 # Because python3-dbus module is currently not there, just use
28 # python 2.x in the ofono test scripts
29 for PYTHSCRIPT in `grep -rIl ${bindir}/python3 ${D}${libdir}/${PN}`; do
30 sed -i -e '1s|^#!.*|#!/usr/bin/env python|' $PYTHSCRIPT
31 done
32}
diff --git a/meta-eca/recipes-connectivity/scapy/python-scapy_2.2.0.bb b/meta-eca/recipes-connectivity/scapy/python-scapy_2.2.0.bb
new file mode 100644
index 0000000..51bad53
--- /dev/null
+++ b/meta-eca/recipes-connectivity/scapy/python-scapy_2.2.0.bb
@@ -0,0 +1,24 @@
1DESCRIPTION = "Scapy is a powerful interactive packet manipulation tool, \
2packet generator, network scanner, network discovery, packet sniffer, etc. \
3It can for the moment replace hping, 85% of nmap, arpspoof, arp-sk, arping, \
4tcpdump, tethereal, p0f, ...."
5SECTION = "devel/python"
6HOMEPAGE = "http://www.secdev.org/projects/scapy/"
7LICENSE = "GPLv2"
8LIC_FILES_CHKSUM = "file://bin/scapy;beginline=3;endline=18;md5=a5be896f88f8396346f67f7a8878ee09"
9PRIORITY = "optional"
10SRCNAME = "scapy"
11PR = "ml2"
12
13SRC_URI = "http://www.secdev.org/projects/scapy/files/scapy-${PV}.tar.gz"
14S = "${WORKDIR}/${SRCNAME}-${PV}"
15
16inherit distutils
17
18RDEPENDS_${PN} = "\
19 python-netclient \
20 python-netserver \
21"
22
23SRC_URI[md5sum] = "406990bd8da1f4958b354b4b6fc4b3eb"
24SRC_URI[sha256sum] = "c5363b224df0efbd78d7dc4d8a518e5518b2e7affc2e5f1fcecd4efa3ab815af"
diff --git a/meta-eca/recipes-connectivity/wpa-supplicant/wpa-supplicant_%.bbappend b/meta-eca/recipes-connectivity/wpa-supplicant/wpa-supplicant_%.bbappend
new file mode 100644
index 0000000..22e8311
--- /dev/null
+++ b/meta-eca/recipes-connectivity/wpa-supplicant/wpa-supplicant_%.bbappend
@@ -0,0 +1,15 @@
1FILESEXTRAPATHS_append := ":${THISDIR}/${PN}"
2
3# Remove unnecessary stuff from depends
4DEPENDS := "${@oe_filter_out('wpa-supplicant-cli', '${DEPENDS}', d)}"
5DEPENDS := "${@oe_filter_out('wpa-supplicant-passphrase', '${DEPENDS}', d)}"
6DEPENDS := "${@oe_filter_out('wpa-supplicant-doc', '${DEPENDS}', d)}"
7
8do_configure_append () {
9 # Activate config options needed by connman and tethering
10 echo "CONFIG_WPS=y" >> wpa_supplicant/.config
11 echo "CONFIG_AP=y" >> wpa_supplicant/.config
12 echo "CONFIG_CTRL_IFACE_DBUS_NEW=y" >> wpa_supplicant/.config
13 echo "CONFIG_BGSCAN_SIMPLE=y" >> wpa_supplicant/.config
14 echo "CONFIG_AUTOSCAN_EXPONENTIAL=y" >> wpa_supplicant/.config
15}
diff --git a/meta-eca/recipes-core/base-files/base-files_3.0.14.bbappend b/meta-eca/recipes-core/base-files/base-files_3.0.14.bbappend
new file mode 100644
index 0000000..8cd5658
--- /dev/null
+++ b/meta-eca/recipes-core/base-files/base-files_3.0.14.bbappend
@@ -0,0 +1,11 @@
1BASEFILESISSUEINSTALL = "do_install_hostname_issue"
2
3do_install_hostname_issue() {
4 # change the default hostname
5 echo eca > ${D}${sysconfdir}/hostname
6
7 # create /etc/issue that shows whether we are building
8 # standard eca or bleeding version
9 echo "${DISTRO_NAME} (${DISTRO})" > ${D}${sysconfdir}/issue
10 echo "${DISTRO_NAME} ${DISTRO_VERSION}" > ${D}${sysconfdir}/issue.net
11}
diff --git a/meta-eca/recipes-core/busybox/busybox_%.bbappend b/meta-eca/recipes-core/busybox/busybox_%.bbappend
new file mode 100644
index 0000000..dafc6a3
--- /dev/null
+++ b/meta-eca/recipes-core/busybox/busybox_%.bbappend
@@ -0,0 +1,2 @@
1FILESEXTRAPATHS := "${THISDIR}/${PN}-${PV}"
2SRC_URI += "file://defconfig"
diff --git a/meta-eca/recipes-core/busybox/files/defconfig b/meta-eca/recipes-core/busybox/files/defconfig
new file mode 100644
index 0000000..52c170f
--- /dev/null
+++ b/meta-eca/recipes-core/busybox/files/defconfig
@@ -0,0 +1,1014 @@
1#
2# Automatically generated make config: don't edit
3# Busybox version: 1.20.2
4# Thu Nov 15 18:16:17 2012
5#
6CONFIG_HAVE_DOT_CONFIG=y
7
8#
9# Busybox Settings
10#
11
12#
13# General Configuration
14#
15# CONFIG_DESKTOP is not set
16# CONFIG_EXTRA_COMPAT is not set
17# CONFIG_INCLUDE_SUSv2 is not set
18# CONFIG_USE_PORTABLE_CODE is not set
19CONFIG_PLATFORM_LINUX=y
20CONFIG_FEATURE_BUFFERS_USE_MALLOC=y
21# CONFIG_FEATURE_BUFFERS_GO_ON_STACK is not set
22# CONFIG_FEATURE_BUFFERS_GO_IN_BSS is not set
23CONFIG_SHOW_USAGE=y
24# CONFIG_FEATURE_VERBOSE_USAGE is not set
25CONFIG_FEATURE_COMPRESS_USAGE=y
26# CONFIG_FEATURE_INSTALLER is not set
27# CONFIG_INSTALL_NO_USR is not set
28# CONFIG_LOCALE_SUPPORT is not set
29# CONFIG_UNICODE_SUPPORT is not set
30# CONFIG_UNICODE_USING_LOCALE is not set
31# CONFIG_FEATURE_CHECK_UNICODE_IN_ENV is not set
32CONFIG_SUBST_WCHAR=0
33CONFIG_LAST_SUPPORTED_WCHAR=0
34# CONFIG_UNICODE_COMBINING_WCHARS is not set
35# CONFIG_UNICODE_WIDE_WCHARS is not set
36# CONFIG_UNICODE_BIDI_SUPPORT is not set
37# CONFIG_UNICODE_NEUTRAL_TABLE is not set
38# CONFIG_UNICODE_PRESERVE_BROKEN is not set
39CONFIG_LONG_OPTS=y
40CONFIG_FEATURE_DEVPTS=y
41# CONFIG_FEATURE_CLEAN_UP is not set
42CONFIG_FEATURE_UTMP=y
43# CONFIG_FEATURE_WTMP is not set
44CONFIG_FEATURE_PIDFILE=y
45CONFIG_FEATURE_SUID=y
46CONFIG_FEATURE_SUID_CONFIG=y
47CONFIG_FEATURE_SUID_CONFIG_QUIET=y
48# CONFIG_SELINUX is not set
49# CONFIG_FEATURE_PREFER_APPLETS is not set
50CONFIG_BUSYBOX_EXEC_PATH="/proc/self/exe"
51CONFIG_FEATURE_SYSLOG=y
52CONFIG_FEATURE_HAVE_RPC=y
53
54#
55# Build Options
56#
57# CONFIG_STATIC is not set
58# CONFIG_PIE is not set
59# CONFIG_NOMMU is not set
60# CONFIG_BUILD_LIBBUSYBOX is not set
61# CONFIG_FEATURE_INDIVIDUAL is not set
62# CONFIG_FEATURE_SHARED_BUSYBOX is not set
63CONFIG_LFS=y
64CONFIG_CROSS_COMPILER_PREFIX="arm-oe-linux-gnueabi-"
65CONFIG_SYSROOT=""
66CONFIG_EXTRA_CFLAGS=" -O2 -pipe -g -feliminate-unused-debug-types"
67CONFIG_EXTRA_LDFLAGS=""
68CONFIG_EXTRA_LDLIBS=""
69
70#
71# Debugging Options
72#
73# CONFIG_DEBUG is not set
74# CONFIG_DEBUG_PESSIMIZE is not set
75# CONFIG_WERROR is not set
76CONFIG_NO_DEBUG_LIB=y
77# CONFIG_DMALLOC is not set
78# CONFIG_EFENCE is not set
79
80#
81# Installation Options ("make install" behavior)
82#
83CONFIG_INSTALL_APPLET_SYMLINKS=y
84# CONFIG_INSTALL_APPLET_HARDLINKS is not set
85# CONFIG_INSTALL_APPLET_SCRIPT_WRAPPERS is not set
86# CONFIG_INSTALL_APPLET_DONT is not set
87# CONFIG_INSTALL_SH_APPLET_SYMLINK is not set
88# CONFIG_INSTALL_SH_APPLET_HARDLINK is not set
89# CONFIG_INSTALL_SH_APPLET_SCRIPT_WRAPPER is not set
90CONFIG_PREFIX="./_install"
91
92#
93# Busybox Library Tuning
94#
95CONFIG_FEATURE_SYSTEMD=y
96CONFIG_FEATURE_RTMINMAX=y
97CONFIG_PASSWORD_MINLEN=6
98CONFIG_MD5_SMALL=1
99CONFIG_FEATURE_FAST_TOP=y
100# CONFIG_FEATURE_ETC_NETWORKS is not set
101CONFIG_FEATURE_USE_TERMIOS=y
102CONFIG_FEATURE_EDITING=y
103CONFIG_FEATURE_EDITING_MAX_LEN=1024
104# CONFIG_FEATURE_EDITING_VI is not set
105CONFIG_FEATURE_EDITING_HISTORY=15
106CONFIG_FEATURE_EDITING_SAVEHISTORY=y
107# CONFIG_FEATURE_EDITING_SAVE_ON_EXIT is not set
108# CONFIG_FEATURE_REVERSE_SEARCH is not set
109CONFIG_FEATURE_TAB_COMPLETION=y
110CONFIG_FEATURE_USERNAME_COMPLETION=y
111CONFIG_FEATURE_EDITING_FANCY_PROMPT=y
112# CONFIG_FEATURE_EDITING_ASK_TERMINAL is not set
113CONFIG_FEATURE_NON_POSIX_CP=y
114# CONFIG_FEATURE_VERBOSE_CP_MESSAGE is not set
115CONFIG_FEATURE_COPYBUF_KB=4
116CONFIG_FEATURE_SKIP_ROOTFS=y
117CONFIG_MONOTONIC_SYSCALL=y
118CONFIG_IOCTL_HEX2STR_ERROR=y
119CONFIG_FEATURE_HWIB=y
120
121#
122# Applets
123#
124
125#
126# Archival Utilities
127#
128# CONFIG_FEATURE_SEAMLESS_XZ is not set
129CONFIG_FEATURE_SEAMLESS_LZMA=y
130CONFIG_FEATURE_SEAMLESS_BZ2=y
131CONFIG_FEATURE_SEAMLESS_GZ=y
132CONFIG_FEATURE_SEAMLESS_Z=y
133CONFIG_AR=y
134# CONFIG_FEATURE_AR_LONG_FILENAMES is not set
135# CONFIG_FEATURE_AR_CREATE is not set
136CONFIG_BUNZIP2=y
137# CONFIG_BZIP2 is not set
138CONFIG_CPIO=y
139# CONFIG_FEATURE_CPIO_O is not set
140# CONFIG_FEATURE_CPIO_P is not set
141# CONFIG_DPKG is not set
142# CONFIG_DPKG_DEB is not set
143# CONFIG_FEATURE_DPKG_DEB_EXTRACT_ONLY is not set
144CONFIG_GUNZIP=y
145CONFIG_GZIP=y
146# CONFIG_FEATURE_GZIP_LONG_OPTIONS is not set
147CONFIG_GZIP_FAST=0
148# CONFIG_LZOP is not set
149# CONFIG_LZOP_COMPR_HIGH is not set
150# CONFIG_RPM2CPIO is not set
151# CONFIG_RPM is not set
152CONFIG_TAR=y
153CONFIG_FEATURE_TAR_CREATE=y
154CONFIG_FEATURE_TAR_AUTODETECT=y
155CONFIG_FEATURE_TAR_FROM=y
156CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY=y
157# CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set
158CONFIG_FEATURE_TAR_GNU_EXTENSIONS=y
159# CONFIG_FEATURE_TAR_LONG_OPTIONS is not set
160# CONFIG_FEATURE_TAR_TO_COMMAND is not set
161# CONFIG_FEATURE_TAR_UNAME_GNAME is not set
162# CONFIG_FEATURE_TAR_NOPRESERVE_TIME is not set
163# CONFIG_FEATURE_TAR_SELINUX is not set
164# CONFIG_UNCOMPRESS is not set
165# CONFIG_UNLZMA is not set
166# CONFIG_FEATURE_LZMA_FAST is not set
167# CONFIG_LZMA is not set
168# CONFIG_UNXZ is not set
169# CONFIG_XZ is not set
170CONFIG_UNZIP=y
171
172#
173# Coreutils
174#
175CONFIG_BASENAME=y
176CONFIG_CAT=y
177CONFIG_DATE=y
178# CONFIG_FEATURE_DATE_ISOFMT is not set
179# CONFIG_FEATURE_DATE_NANO is not set
180CONFIG_FEATURE_DATE_COMPAT=y
181# CONFIG_HOSTID is not set
182CONFIG_ID=y
183CONFIG_GROUPS=y
184CONFIG_TEST=y
185CONFIG_FEATURE_TEST_64=y
186CONFIG_TOUCH=y
187CONFIG_FEATURE_TOUCH_SUSV3=y
188CONFIG_TR=y
189CONFIG_FEATURE_TR_CLASSES=y
190# CONFIG_FEATURE_TR_EQUIV is not set
191# CONFIG_BASE64 is not set
192CONFIG_WHO=y
193CONFIG_USERS=y
194# CONFIG_CAL is not set
195# CONFIG_CATV is not set
196CONFIG_CHGRP=y
197CONFIG_CHMOD=y
198CONFIG_CHOWN=y
199# CONFIG_FEATURE_CHOWN_LONG_OPTIONS is not set
200CONFIG_CHROOT=y
201# CONFIG_CKSUM is not set
202# CONFIG_COMM is not set
203CONFIG_CP=y
204# CONFIG_FEATURE_CP_LONG_OPTIONS is not set
205CONFIG_CUT=y
206CONFIG_DD=y
207CONFIG_FEATURE_DD_SIGNAL_HANDLING=y
208# CONFIG_FEATURE_DD_THIRD_STATUS_LINE is not set
209# CONFIG_FEATURE_DD_IBS_OBS is not set
210CONFIG_DF=y
211# CONFIG_FEATURE_DF_FANCY is not set
212CONFIG_DIRNAME=y
213# CONFIG_DOS2UNIX is not set
214# CONFIG_UNIX2DOS is not set
215CONFIG_DU=y
216CONFIG_FEATURE_DU_DEFAULT_BLOCKSIZE_1K=y
217CONFIG_ECHO=y
218CONFIG_FEATURE_FANCY_ECHO=y
219CONFIG_ENV=y
220CONFIG_FEATURE_ENV_LONG_OPTIONS=y
221# CONFIG_EXPAND is not set
222# CONFIG_FEATURE_EXPAND_LONG_OPTIONS is not set
223CONFIG_EXPR=y
224CONFIG_EXPR_MATH_SUPPORT_64=y
225CONFIG_FALSE=y
226# CONFIG_FOLD is not set
227# CONFIG_FSYNC is not set
228CONFIG_HEAD=y
229# CONFIG_FEATURE_FANCY_HEAD is not set
230# CONFIG_INSTALL is not set
231# CONFIG_FEATURE_INSTALL_LONG_OPTIONS is not set
232CONFIG_LN=y
233CONFIG_LOGNAME=y
234CONFIG_LS=y
235CONFIG_FEATURE_LS_FILETYPES=y
236CONFIG_FEATURE_LS_FOLLOWLINKS=y
237CONFIG_FEATURE_LS_RECURSIVE=y
238CONFIG_FEATURE_LS_SORTFILES=y
239CONFIG_FEATURE_LS_TIMESTAMPS=y
240CONFIG_FEATURE_LS_USERNAME=y
241CONFIG_FEATURE_LS_COLOR=y
242# CONFIG_FEATURE_LS_COLOR_IS_DEFAULT is not set
243CONFIG_MD5SUM=y
244CONFIG_MKDIR=y
245CONFIG_FEATURE_MKDIR_LONG_OPTIONS=y
246CONFIG_MKFIFO=y
247CONFIG_MKNOD=y
248CONFIG_MV=y
249# CONFIG_FEATURE_MV_LONG_OPTIONS is not set
250# CONFIG_NICE is not set
251CONFIG_NOHUP=y
252CONFIG_OD=y
253# CONFIG_PRINTENV is not set
254CONFIG_PRINTF=y
255CONFIG_PWD=y
256CONFIG_READLINK=y
257CONFIG_FEATURE_READLINK_FOLLOW=y
258CONFIG_REALPATH=y
259CONFIG_RM=y
260CONFIG_RMDIR=y
261# CONFIG_FEATURE_RMDIR_LONG_OPTIONS is not set
262CONFIG_SEQ=y
263# CONFIG_SHA1SUM is not set
264# CONFIG_SHA256SUM is not set
265# CONFIG_SHA512SUM is not set
266CONFIG_SLEEP=y
267CONFIG_FEATURE_FANCY_SLEEP=y
268# CONFIG_FEATURE_FLOAT_SLEEP is not set
269CONFIG_SORT=y
270CONFIG_FEATURE_SORT_BIG=y
271# CONFIG_SPLIT is not set
272# CONFIG_FEATURE_SPLIT_FANCY is not set
273CONFIG_STAT=y
274CONFIG_FEATURE_STAT_FORMAT=y
275CONFIG_STTY=y
276# CONFIG_SUM is not set
277CONFIG_SYNC=y
278# CONFIG_TAC is not set
279CONFIG_TAIL=y
280CONFIG_FEATURE_FANCY_TAIL=y
281CONFIG_TEE=y
282# CONFIG_FEATURE_TEE_USE_BLOCK_IO is not set
283CONFIG_TRUE=y
284CONFIG_TTY=y
285CONFIG_UNAME=y
286# CONFIG_UNEXPAND is not set
287# CONFIG_FEATURE_UNEXPAND_LONG_OPTIONS is not set
288CONFIG_UNIQ=y
289CONFIG_USLEEP=y
290# CONFIG_UUDECODE is not set
291# CONFIG_UUENCODE is not set
292CONFIG_WC=y
293# CONFIG_FEATURE_WC_LARGE is not set
294CONFIG_WHOAMI=y
295CONFIG_YES=y
296
297#
298# Common options for cp and mv
299#
300# CONFIG_FEATURE_PRESERVE_HARDLINKS is not set
301
302#
303# Common options for ls, more and telnet
304#
305CONFIG_FEATURE_AUTOWIDTH=y
306
307#
308# Common options for df, du, ls
309#
310CONFIG_FEATURE_HUMAN_READABLE=y
311
312#
313# Common options for md5sum, sha1sum, sha256sum, sha512sum
314#
315CONFIG_FEATURE_MD5_SHA1_SUM_CHECK=y
316
317#
318# Console Utilities
319#
320CONFIG_CHVT=y
321# CONFIG_FGCONSOLE is not set
322CONFIG_CLEAR=y
323CONFIG_DEALLOCVT=y
324CONFIG_DUMPKMAP=y
325# CONFIG_KBD_MODE is not set
326CONFIG_LOADFONT=y
327CONFIG_LOADKMAP=y
328CONFIG_OPENVT=y
329CONFIG_RESET=y
330# CONFIG_RESIZE is not set
331# CONFIG_FEATURE_RESIZE_PRINT is not set
332CONFIG_SETCONSOLE=y
333# CONFIG_FEATURE_SETCONSOLE_LONG_OPTIONS is not set
334# CONFIG_SETFONT is not set
335# CONFIG_FEATURE_SETFONT_TEXTUAL_MAP is not set
336CONFIG_DEFAULT_SETFONT_DIR=""
337# CONFIG_SETKEYCODES is not set
338# CONFIG_SETLOGCONS is not set
339# CONFIG_SHOWKEY is not set
340
341#
342# Common options for loadfont and setfont
343#
344# CONFIG_FEATURE_LOADFONT_PSF2 is not set
345# CONFIG_FEATURE_LOADFONT_RAW is not set
346
347#
348# Debian Utilities
349#
350CONFIG_MKTEMP=y
351# CONFIG_PIPE_PROGRESS is not set
352CONFIG_RUN_PARTS=y
353CONFIG_FEATURE_RUN_PARTS_LONG_OPTIONS=y
354# CONFIG_FEATURE_RUN_PARTS_FANCY is not set
355CONFIG_START_STOP_DAEMON=y
356CONFIG_FEATURE_START_STOP_DAEMON_FANCY=y
357CONFIG_FEATURE_START_STOP_DAEMON_LONG_OPTIONS=y
358CONFIG_WHICH=y
359
360#
361# Editors
362#
363CONFIG_PATCH=y
364CONFIG_VI=y
365CONFIG_FEATURE_VI_MAX_LEN=1024
366CONFIG_FEATURE_VI_8BIT=y
367CONFIG_FEATURE_VI_COLON=y
368CONFIG_FEATURE_VI_YANKMARK=y
369CONFIG_FEATURE_VI_SEARCH=y
370# CONFIG_FEATURE_VI_REGEX_SEARCH is not set
371CONFIG_FEATURE_VI_USE_SIGNALS=y
372# CONFIG_FEATURE_VI_DOT_CMD is not set
373# CONFIG_FEATURE_VI_READONLY is not set
374# CONFIG_FEATURE_VI_SETOPTS is not set
375# CONFIG_FEATURE_VI_SET is not set
376CONFIG_FEATURE_VI_WIN_RESIZE=y
377# CONFIG_FEATURE_VI_ASK_TERMINAL is not set
378CONFIG_FEATURE_VI_OPTIMIZE_CURSOR=y
379CONFIG_AWK=y
380# CONFIG_FEATURE_AWK_LIBM is not set
381CONFIG_CMP=y
382CONFIG_DIFF=y
383# CONFIG_FEATURE_DIFF_LONG_OPTIONS is not set
384CONFIG_FEATURE_DIFF_DIR=y
385# CONFIG_ED is not set
386CONFIG_SED=y
387CONFIG_FEATURE_ALLOW_EXEC=y
388
389#
390# Finding Utilities
391#
392CONFIG_FIND=y
393CONFIG_FEATURE_FIND_PRINT0=y
394CONFIG_FEATURE_FIND_MTIME=y
395CONFIG_FEATURE_FIND_MMIN=y
396CONFIG_FEATURE_FIND_PERM=y
397CONFIG_FEATURE_FIND_TYPE=y
398CONFIG_FEATURE_FIND_XDEV=y
399CONFIG_FEATURE_FIND_MAXDEPTH=y
400CONFIG_FEATURE_FIND_NEWER=y
401# CONFIG_FEATURE_FIND_INUM is not set
402CONFIG_FEATURE_FIND_EXEC=y
403CONFIG_FEATURE_FIND_USER=y
404CONFIG_FEATURE_FIND_GROUP=y
405CONFIG_FEATURE_FIND_NOT=y
406CONFIG_FEATURE_FIND_DEPTH=y
407CONFIG_FEATURE_FIND_PAREN=y
408CONFIG_FEATURE_FIND_SIZE=y
409CONFIG_FEATURE_FIND_PRUNE=y
410# CONFIG_FEATURE_FIND_DELETE is not set
411CONFIG_FEATURE_FIND_PATH=y
412CONFIG_FEATURE_FIND_REGEX=y
413# CONFIG_FEATURE_FIND_CONTEXT is not set
414# CONFIG_FEATURE_FIND_LINKS is not set
415CONFIG_GREP=y
416CONFIG_FEATURE_GREP_EGREP_ALIAS=y
417CONFIG_FEATURE_GREP_FGREP_ALIAS=y
418CONFIG_FEATURE_GREP_CONTEXT=y
419CONFIG_XARGS=y
420# CONFIG_FEATURE_XARGS_SUPPORT_CONFIRMATION is not set
421# CONFIG_FEATURE_XARGS_SUPPORT_QUOTES is not set
422# CONFIG_FEATURE_XARGS_SUPPORT_TERMOPT is not set
423# CONFIG_FEATURE_XARGS_SUPPORT_ZERO_TERM is not set
424
425#
426# Init Utilities
427#
428# CONFIG_BOOTCHARTD is not set
429# CONFIG_FEATURE_BOOTCHARTD_BLOATED_HEADER is not set
430# CONFIG_FEATURE_BOOTCHARTD_CONFIG_FILE is not set
431CONFIG_HALT=y
432# CONFIG_FEATURE_CALL_TELINIT is not set
433CONFIG_TELINIT_PATH=""
434# CONFIG_INIT is not set
435# CONFIG_FEATURE_USE_INITTAB is not set
436# CONFIG_FEATURE_KILL_REMOVED is not set
437CONFIG_FEATURE_KILL_DELAY=0
438# CONFIG_FEATURE_INIT_SCTTY is not set
439# CONFIG_FEATURE_INIT_SYSLOG is not set
440# CONFIG_FEATURE_EXTRA_QUIET is not set
441# CONFIG_FEATURE_INIT_COREDUMPS is not set
442# CONFIG_FEATURE_INITRD is not set
443CONFIG_INIT_TERMINAL_TYPE=""
444# CONFIG_MESG is not set
445# CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP is not set
446
447#
448# Login/Password Management Utilities
449#
450# CONFIG_ADD_SHELL is not set
451# CONFIG_REMOVE_SHELL is not set
452# CONFIG_FEATURE_SHADOWPASSWDS is not set
453# CONFIG_USE_BB_PWD_GRP is not set
454# CONFIG_USE_BB_SHADOW is not set
455CONFIG_USE_BB_CRYPT=y
456# CONFIG_USE_BB_CRYPT_SHA is not set
457# CONFIG_ADDUSER is not set
458# CONFIG_FEATURE_ADDUSER_LONG_OPTIONS is not set
459# CONFIG_FEATURE_CHECK_NAMES is not set
460CONFIG_FIRST_SYSTEM_ID=0
461CONFIG_LAST_SYSTEM_ID=0
462# CONFIG_ADDGROUP is not set
463# CONFIG_FEATURE_ADDGROUP_LONG_OPTIONS is not set
464# CONFIG_FEATURE_ADDUSER_TO_GROUP is not set
465# CONFIG_DELUSER is not set
466# CONFIG_DELGROUP is not set
467# CONFIG_FEATURE_DEL_USER_FROM_GROUP is not set
468# CONFIG_GETTY is not set
469# CONFIG_LOGIN is not set
470# CONFIG_LOGIN_SESSION_AS_CHILD is not set
471# CONFIG_PAM is not set
472# CONFIG_LOGIN_SCRIPTS is not set
473# CONFIG_FEATURE_NOLOGIN is not set
474# CONFIG_FEATURE_SECURETTY is not set
475# CONFIG_PASSWD is not set
476# CONFIG_FEATURE_PASSWD_WEAK_CHECK is not set
477# CONFIG_CRYPTPW is not set
478# CONFIG_CHPASSWD is not set
479CONFIG_FEATURE_DEFAULT_PASSWD_ALGO=""
480# CONFIG_SU is not set
481# CONFIG_FEATURE_SU_SYSLOG is not set
482# CONFIG_FEATURE_SU_CHECKS_SHELLS is not set
483# CONFIG_SULOGIN is not set
484# CONFIG_VLOCK is not set
485
486#
487# Linux Ext2 FS Progs
488#
489CONFIG_CHATTR=y
490CONFIG_FSCK=y
491# CONFIG_LSATTR is not set
492# CONFIG_TUNE2FS is not set
493
494#
495# Linux Module Utilities
496#
497# CONFIG_MODINFO is not set
498# CONFIG_MODPROBE_SMALL is not set
499# CONFIG_FEATURE_MODPROBE_SMALL_OPTIONS_ON_CMDLINE is not set
500# CONFIG_FEATURE_MODPROBE_SMALL_CHECK_ALREADY_LOADED is not set
501CONFIG_INSMOD=y
502CONFIG_RMMOD=y
503CONFIG_LSMOD=y
504# CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT is not set
505CONFIG_MODPROBE=y
506# CONFIG_FEATURE_MODPROBE_BLACKLIST is not set
507# CONFIG_DEPMOD is not set
508
509#
510# Options common to multiple modutils
511#
512# CONFIG_FEATURE_2_4_MODULES is not set
513# CONFIG_FEATURE_INSMOD_TRY_MMAP is not set
514# CONFIG_FEATURE_INSMOD_VERSION_CHECKING is not set
515# CONFIG_FEATURE_INSMOD_KSYMOOPS_SYMBOLS is not set
516# CONFIG_FEATURE_INSMOD_LOADINKMEM is not set
517# CONFIG_FEATURE_INSMOD_LOAD_MAP is not set
518# CONFIG_FEATURE_INSMOD_LOAD_MAP_FULL is not set
519CONFIG_FEATURE_CHECK_TAINTED_MODULE=y
520CONFIG_FEATURE_MODUTILS_ALIAS=y
521CONFIG_FEATURE_MODUTILS_SYMBOLS=y
522CONFIG_DEFAULT_MODULES_DIR="/lib/modules"
523CONFIG_DEFAULT_DEPMOD_FILE="modules.dep"
524
525#
526# Linux System Utilities
527#
528CONFIG_BLOCKDEV=y
529CONFIG_MDEV=y
530CONFIG_FEATURE_MDEV_CONF=y
531CONFIG_FEATURE_MDEV_RENAME=y
532CONFIG_FEATURE_MDEV_RENAME_REGEXP=y
533CONFIG_FEATURE_MDEV_EXEC=y
534CONFIG_FEATURE_MDEV_LOAD_FIRMWARE=y
535# CONFIG_REV is not set
536# CONFIG_ACPID is not set
537# CONFIG_FEATURE_ACPID_COMPAT is not set
538CONFIG_BLKID=y
539CONFIG_FEATURE_BLKID_TYPE=y
540CONFIG_DMESG=y
541CONFIG_FEATURE_DMESG_PRETTY=y
542CONFIG_FBSET=y
543CONFIG_FEATURE_FBSET_FANCY=y
544CONFIG_FEATURE_FBSET_READMODE=y
545# CONFIG_FDFLUSH is not set
546# CONFIG_FDFORMAT is not set
547CONFIG_FDISK=y
548# CONFIG_FDISK_SUPPORT_LARGE_DISKS is not set
549CONFIG_FEATURE_FDISK_WRITABLE=y
550# CONFIG_FEATURE_AIX_LABEL is not set
551# CONFIG_FEATURE_SGI_LABEL is not set
552# CONFIG_FEATURE_SUN_LABEL is not set
553# CONFIG_FEATURE_OSF_LABEL is not set
554# CONFIG_FEATURE_GPT_LABEL is not set
555# CONFIG_FEATURE_FDISK_ADVANCED is not set
556# CONFIG_FINDFS is not set
557CONFIG_FLOCK=y
558# CONFIG_FREERAMDISK is not set
559CONFIG_FSCK_MINIX=y
560# CONFIG_MKFS_EXT2 is not set
561CONFIG_MKFS_MINIX=y
562CONFIG_FEATURE_MINIX2=y
563# CONFIG_MKFS_REISER is not set
564# CONFIG_MKFS_VFAT is not set
565# CONFIG_GETOPT is not set
566# CONFIG_FEATURE_GETOPT_LONG is not set
567CONFIG_HEXDUMP=y
568# CONFIG_FEATURE_HEXDUMP_REVERSE is not set
569# CONFIG_HD is not set
570CONFIG_HWCLOCK=y
571CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS=y
572CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS=y
573# CONFIG_IPCRM is not set
574# CONFIG_IPCS is not set
575CONFIG_LOSETUP=y
576# CONFIG_LSPCI is not set
577# CONFIG_LSUSB is not set
578CONFIG_MKSWAP=y
579# CONFIG_FEATURE_MKSWAP_UUID is not set
580CONFIG_MORE=y
581CONFIG_MOUNT=y
582# CONFIG_FEATURE_MOUNT_FAKE is not set
583CONFIG_FEATURE_MOUNT_VERBOSE=y
584# CONFIG_FEATURE_MOUNT_HELPERS is not set
585CONFIG_FEATURE_MOUNT_LABEL=y
586CONFIG_FEATURE_MOUNT_NFS=y
587# CONFIG_FEATURE_MOUNT_CIFS is not set
588CONFIG_FEATURE_MOUNT_FLAGS=y
589CONFIG_FEATURE_MOUNT_FSTAB=y
590CONFIG_PIVOT_ROOT=y
591CONFIG_RDATE=y
592# CONFIG_RDEV is not set
593# CONFIG_READPROFILE is not set
594# CONFIG_RTCWAKE is not set
595# CONFIG_SCRIPT is not set
596# CONFIG_SCRIPTREPLAY is not set
597# CONFIG_SETARCH is not set
598CONFIG_SWAPONOFF=y
599# CONFIG_FEATURE_SWAPON_PRI is not set
600CONFIG_SWITCH_ROOT=y
601CONFIG_UMOUNT=y
602CONFIG_FEATURE_UMOUNT_ALL=y
603
604#
605# Common options for mount/umount
606#
607CONFIG_FEATURE_MOUNT_LOOP=y
608CONFIG_FEATURE_MOUNT_LOOP_CREATE=y
609# CONFIG_FEATURE_MTAB_SUPPORT is not set
610CONFIG_VOLUMEID=y
611CONFIG_FEATURE_VOLUMEID_EXT=y
612CONFIG_FEATURE_VOLUMEID_BTRFS=y
613CONFIG_FEATURE_VOLUMEID_FAT=y
614CONFIG_FEATURE_VOLUMEID_NTFS=y
615CONFIG_FEATURE_VOLUMEID_ISO9660=y
616CONFIG_FEATURE_VOLUMEID_UDF=y
617CONFIG_FEATURE_VOLUMEID_LINUXSWAP=y
618CONFIG_FEATURE_VOLUMEID_CRAMFS=y
619CONFIG_FEATURE_VOLUMEID_ROMFS=y
620CONFIG_FEATURE_VOLUMEID_SYSV=y
621CONFIG_FEATURE_VOLUMEID_OCFS2=y
622
623#
624# Miscellaneous Utilities
625#
626# CONFIG_CONSPY is not set
627#CONFIG_LESS=y
628#CONFIG_FEATURE_LESS_MAXLINES=9999999
629#CONFIG_FEATURE_LESS_BRACKETS=y
630#CONFIG_FEATURE_LESS_FLAGS=y
631# CONFIG_FEATURE_LESS_MARKS is not set
632# CONFIG_FEATURE_LESS_REGEXP is not set
633# CONFIG_FEATURE_LESS_WINCH is not set
634# CONFIG_FEATURE_LESS_ASK_TERMINAL is not set
635# CONFIG_FEATURE_LESS_DASHCMD is not set
636# CONFIG_FEATURE_LESS_LINENUMS is not set
637# CONFIG_NANDWRITE is not set
638# CONFIG_NANDDUMP is not set
639# CONFIG_SETSERIAL is not set
640# CONFIG_UBIATTACH is not set
641# CONFIG_UBIDETACH is not set
642# CONFIG_UBIMKVOL is not set
643# CONFIG_UBIRMVOL is not set
644# CONFIG_UBIRSVOL is not set
645# CONFIG_UBIUPDATEVOL is not set
646# CONFIG_ADJTIMEX is not set
647# CONFIG_BBCONFIG is not set
648# CONFIG_FEATURE_COMPRESS_BBCONFIG is not set
649# CONFIG_BEEP is not set
650CONFIG_FEATURE_BEEP_FREQ=0
651CONFIG_FEATURE_BEEP_LENGTH_MS=0
652# CONFIG_CHAT is not set
653# CONFIG_FEATURE_CHAT_NOFAIL is not set
654# CONFIG_FEATURE_CHAT_TTY_HIFI is not set
655# CONFIG_FEATURE_CHAT_IMPLICIT_CR is not set
656# CONFIG_FEATURE_CHAT_SWALLOW_OPTS is not set
657# CONFIG_FEATURE_CHAT_SEND_ESCAPES is not set
658# CONFIG_FEATURE_CHAT_VAR_ABORT_LEN is not set
659# CONFIG_FEATURE_CHAT_CLR_ABORT is not set
660# CONFIG_CHRT is not set
661# CONFIG_CROND is not set
662# CONFIG_FEATURE_CROND_D is not set
663# CONFIG_FEATURE_CROND_CALL_SENDMAIL is not set
664CONFIG_FEATURE_CROND_DIR=""
665# CONFIG_CRONTAB is not set
666CONFIG_DC=y
667# CONFIG_FEATURE_DC_LIBM is not set
668# CONFIG_DEVFSD is not set
669# CONFIG_DEVFSD_MODLOAD is not set
670# CONFIG_DEVFSD_FG_NP is not set
671# CONFIG_DEVFSD_VERBOSE is not set
672# CONFIG_FEATURE_DEVFS is not set
673# CONFIG_DEVMEM is not set
674# CONFIG_EJECT is not set
675# CONFIG_FEATURE_EJECT_SCSI is not set
676# CONFIG_FBSPLASH is not set
677# CONFIG_FLASHCP is not set
678# CONFIG_FLASH_LOCK is not set
679# CONFIG_FLASH_UNLOCK is not set
680# CONFIG_FLASH_ERASEALL is not set
681# CONFIG_IONICE is not set
682# CONFIG_INOTIFYD is not set
683# CONFIG_LAST is not set
684# CONFIG_FEATURE_LAST_SMALL is not set
685# CONFIG_FEATURE_LAST_FANCY is not set
686# CONFIG_HDPARM is not set
687# CONFIG_FEATURE_HDPARM_GET_IDENTITY is not set
688# CONFIG_FEATURE_HDPARM_HDIO_SCAN_HWIF is not set
689# CONFIG_FEATURE_HDPARM_HDIO_UNREGISTER_HWIF is not set
690# CONFIG_FEATURE_HDPARM_HDIO_DRIVE_RESET is not set
691# CONFIG_FEATURE_HDPARM_HDIO_TRISTATE_HWIF is not set
692# CONFIG_FEATURE_HDPARM_HDIO_GETSET_DMA is not set
693# CONFIG_MAKEDEVS is not set
694# CONFIG_FEATURE_MAKEDEVS_LEAF is not set
695# CONFIG_FEATURE_MAKEDEVS_TABLE is not set
696# CONFIG_MAN is not set
697CONFIG_MICROCOM=y
698# CONFIG_MOUNTPOINT is not set
699# CONFIG_MT is not set
700# CONFIG_RAIDAUTORUN is not set
701# CONFIG_READAHEAD is not set
702CONFIG_RFKILL=y
703# CONFIG_RUNLEVEL is not set
704# CONFIG_RX is not set
705# CONFIG_SETSID is not set
706CONFIG_STRINGS=y
707# CONFIG_TASKSET is not set
708# CONFIG_FEATURE_TASKSET_FANCY is not set
709CONFIG_TIME=y
710# CONFIG_TIMEOUT is not set
711# CONFIG_TTYSIZE is not set
712# CONFIG_VOLNAME is not set
713# CONFIG_WALL is not set
714# CONFIG_WATCHDOG is not set
715
716#
717# Networking Utilities
718#
719# CONFIG_NAMEIF is not set
720# CONFIG_FEATURE_NAMEIF_EXTENDED is not set
721# CONFIG_NBDCLIENT is not set
722CONFIG_NC=y
723# CONFIG_NC_SERVER is not set
724# CONFIG_NC_EXTRA is not set
725# CONFIG_NC_110_COMPAT is not set
726CONFIG_PING=y
727CONFIG_PING6=y
728CONFIG_FEATURE_FANCY_PING=y
729# CONFIG_WHOIS is not set
730CONFIG_FEATURE_IPV6=y
731# CONFIG_FEATURE_UNIX_LOCAL is not set
732CONFIG_FEATURE_PREFER_IPV4_ADDRESS=y
733# CONFIG_VERBOSE_RESOLUTION_ERRORS is not set
734# CONFIG_ARP is not set
735# CONFIG_ARPING is not set
736# CONFIG_BRCTL is not set
737# CONFIG_FEATURE_BRCTL_FANCY is not set
738# CONFIG_FEATURE_BRCTL_SHOW is not set
739# CONFIG_DNSD is not set
740# CONFIG_ETHER_WAKE is not set
741# CONFIG_FAKEIDENTD is not set
742# CONFIG_FTPD is not set
743# CONFIG_FEATURE_FTP_WRITE is not set
744# CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST is not set
745# CONFIG_FTPGET is not set
746# CONFIG_FTPPUT is not set
747# CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS is not set
748CONFIG_HOSTNAME=y
749# CONFIG_HTTPD is not set
750# CONFIG_FEATURE_HTTPD_RANGES is not set
751# CONFIG_FEATURE_HTTPD_USE_SENDFILE is not set
752# CONFIG_FEATURE_HTTPD_SETUID is not set
753# CONFIG_FEATURE_HTTPD_BASIC_AUTH is not set
754# CONFIG_FEATURE_HTTPD_AUTH_MD5 is not set
755# CONFIG_FEATURE_HTTPD_CGI is not set
756# CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR is not set
757# CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV is not set
758# CONFIG_FEATURE_HTTPD_ENCODE_URL_STR is not set
759# CONFIG_FEATURE_HTTPD_ERROR_PAGES is not set
760# CONFIG_FEATURE_HTTPD_PROXY is not set
761# CONFIG_FEATURE_HTTPD_GZIP is not set
762CONFIG_IFCONFIG=y
763CONFIG_FEATURE_IFCONFIG_STATUS=y
764# CONFIG_FEATURE_IFCONFIG_SLIP is not set
765# CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ is not set
766CONFIG_FEATURE_IFCONFIG_HW=y
767# CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS is not set
768# CONFIG_IFENSLAVE is not set
769# CONFIG_IFPLUGD is not set
770CONFIG_IFUPDOWN=y
771CONFIG_IFUPDOWN_IFSTATE_PATH="/var/run/ifstate"
772# CONFIG_FEATURE_IFUPDOWN_IP is not set
773# CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN is not set
774CONFIG_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN=y
775CONFIG_FEATURE_IFUPDOWN_IPV4=y
776CONFIG_FEATURE_IFUPDOWN_IPV6=y
777CONFIG_FEATURE_IFUPDOWN_MAPPING=y
778# CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP is not set
779# CONFIG_INETD is not set
780# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO is not set
781# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD is not set
782# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_TIME is not set
783# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME is not set
784# CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN is not set
785# CONFIG_FEATURE_INETD_RPC is not set
786CONFIG_IP=y
787CONFIG_FEATURE_IP_ADDRESS=y
788CONFIG_FEATURE_IP_LINK=y
789CONFIG_FEATURE_IP_ROUTE=y
790CONFIG_FEATURE_IP_TUNNEL=y
791# CONFIG_FEATURE_IP_RULE is not set
792# CONFIG_FEATURE_IP_SHORT_FORMS is not set
793# CONFIG_FEATURE_IP_RARE_PROTOCOLS is not set
794# CONFIG_IPADDR is not set
795# CONFIG_IPLINK is not set
796# CONFIG_IPROUTE is not set
797# CONFIG_IPTUNNEL is not set
798# CONFIG_IPRULE is not set
799# CONFIG_IPCALC is not set
800# CONFIG_FEATURE_IPCALC_FANCY is not set
801# CONFIG_FEATURE_IPCALC_LONG_OPTIONS is not set
802CONFIG_NETSTAT=y
803# CONFIG_FEATURE_NETSTAT_WIDE is not set
804# CONFIG_FEATURE_NETSTAT_PRG is not set
805CONFIG_NSLOOKUP=y
806# CONFIG_NTPD is not set
807# CONFIG_FEATURE_NTPD_SERVER is not set
808# CONFIG_PSCAN is not set
809CONFIG_ROUTE=y
810# CONFIG_SLATTACH is not set
811# CONFIG_TCPSVD is not set
812CONFIG_TELNET=y
813# CONFIG_FEATURE_TELNET_TTYPE is not set
814CONFIG_FEATURE_TELNET_AUTOLOGIN=y
815# CONFIG_TELNETD is not set
816# CONFIG_FEATURE_TELNETD_STANDALONE is not set
817# CONFIG_FEATURE_TELNETD_INETD_WAIT is not set
818CONFIG_TFTP=y
819# CONFIG_TFTPD is not set
820
821#
822# Common options for tftp/tftpd
823#
824CONFIG_FEATURE_TFTP_GET=y
825CONFIG_FEATURE_TFTP_PUT=y
826# CONFIG_FEATURE_TFTP_BLOCKSIZE is not set
827# CONFIG_FEATURE_TFTP_PROGRESS_BAR is not set
828# CONFIG_TFTP_DEBUG is not set
829CONFIG_TRACEROUTE=y
830# CONFIG_TRACEROUTE6 is not set
831# CONFIG_FEATURE_TRACEROUTE_VERBOSE is not set
832# CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE is not set
833# CONFIG_FEATURE_TRACEROUTE_USE_ICMP is not set
834# CONFIG_TUNCTL is not set
835# CONFIG_FEATURE_TUNCTL_UG is not set
836# CONFIG_UDHCPC6 is not set
837CONFIG_UDHCPD=y
838# CONFIG_DHCPRELAY is not set
839CONFIG_DUMPLEASES=y
840# CONFIG_FEATURE_UDHCPD_WRITE_LEASES_EARLY is not set
841# CONFIG_FEATURE_UDHCPD_BASE_IP_ON_MAC is not set
842CONFIG_DHCPD_LEASES_FILE="/var/lib/misc/udhcpd.leases"
843# CONFIG_UDHCPC is not set
844# CONFIG_FEATURE_UDHCPC_ARPING is not set
845# CONFIG_FEATURE_UDHCP_PORT is not set
846CONFIG_UDHCP_DEBUG=0
847# CONFIG_FEATURE_UDHCP_RFC3397 is not set
848# CONFIG_FEATURE_UDHCP_8021Q is not set
849CONFIG_UDHCPC_DEFAULT_SCRIPT=""
850CONFIG_UDHCPC_SLACK_FOR_BUGGY_SERVERS=80
851CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS=""
852# CONFIG_UDPSVD is not set
853# CONFIG_VCONFIG is not set
854CONFIG_WGET=y
855CONFIG_FEATURE_WGET_STATUSBAR=y
856CONFIG_FEATURE_WGET_AUTHENTICATION=y
857CONFIG_FEATURE_WGET_LONG_OPTIONS=y
858CONFIG_FEATURE_WGET_TIMEOUT=y
859# CONFIG_ZCIP is not set
860
861#
862# Print Utilities
863#
864# CONFIG_LPD is not set
865# CONFIG_LPR is not set
866# CONFIG_LPQ is not set
867
868#
869# Mail Utilities
870#
871# CONFIG_MAKEMIME is not set
872CONFIG_FEATURE_MIME_CHARSET=""
873# CONFIG_POPMAILDIR is not set
874# CONFIG_FEATURE_POPMAILDIR_DELIVERY is not set
875# CONFIG_REFORMIME is not set
876# CONFIG_FEATURE_REFORMIME_COMPAT is not set
877# CONFIG_SENDMAIL is not set
878
879#
880# Process Utilities
881#
882# CONFIG_IOSTAT is not set
883# CONFIG_LSOF is not set
884# CONFIG_MPSTAT is not set
885# CONFIG_NMETER is not set
886# CONFIG_PMAP is not set
887# CONFIG_POWERTOP is not set
888# CONFIG_PSTREE is not set
889# CONFIG_PWDX is not set
890# CONFIG_SMEMCAP is not set
891# CONFIG_UPTIME is not set
892# CONFIG_FEATURE_UPTIME_UTMP_SUPPORT is not set
893# CONFIG_FREE is not set
894CONFIG_FUSER=y
895# CONFIG_KILL is not set
896# CONFIG_KILLALL is not set
897# CONFIG_KILLALL5 is not set
898# CONFIG_PGREP is not set
899CONFIG_PIDOF=y
900# CONFIG_FEATURE_PIDOF_SINGLE is not set
901# CONFIG_FEATURE_PIDOF_OMIT is not set
902# CONFIG_PKILL is not set
903# CONFIG_PS is not set
904# CONFIG_FEATURE_PS_WIDE is not set
905# CONFIG_FEATURE_PS_LONG is not set
906# CONFIG_FEATURE_PS_TIME is not set
907# CONFIG_FEATURE_PS_ADDITIONAL_COLUMNS is not set
908# CONFIG_FEATURE_PS_UNUSUAL_SYSTEMS is not set
909CONFIG_RENICE=y
910# CONFIG_BB_SYSCTL is not set
911# CONFIG_TOP is not set
912# CONFIG_FEATURE_TOP_CPU_USAGE_PERCENTAGE is not set
913# CONFIG_FEATURE_TOP_CPU_GLOBAL_PERCENTS is not set
914# CONFIG_FEATURE_TOP_SMP_CPU is not set
915# CONFIG_FEATURE_TOP_DECIMALS is not set
916# CONFIG_FEATURE_TOP_SMP_PROCESS is not set
917# CONFIG_FEATURE_TOPMEM is not set
918# CONFIG_FEATURE_SHOW_THREADS is not set
919# CONFIG_WATCH is not set
920
921#
922# Runit Utilities
923#
924# CONFIG_RUNSV is not set
925# CONFIG_RUNSVDIR is not set
926# CONFIG_FEATURE_RUNSVDIR_LOG is not set
927# CONFIG_SV is not set
928CONFIG_SV_DEFAULT_SERVICE_DIR=""
929# CONFIG_SVLOGD is not set
930# CONFIG_CHPST is not set
931# CONFIG_SETUIDGID is not set
932# CONFIG_ENVUIDGID is not set
933# CONFIG_ENVDIR is not set
934# CONFIG_SOFTLIMIT is not set
935# CONFIG_CHCON is not set
936# CONFIG_FEATURE_CHCON_LONG_OPTIONS is not set
937# CONFIG_GETENFORCE is not set
938# CONFIG_GETSEBOOL is not set
939# CONFIG_LOAD_POLICY is not set
940# CONFIG_MATCHPATHCON is not set
941# CONFIG_RESTORECON is not set
942# CONFIG_RUNCON is not set
943# CONFIG_FEATURE_RUNCON_LONG_OPTIONS is not set
944# CONFIG_SELINUXENABLED is not set
945# CONFIG_SETENFORCE is not set
946# CONFIG_SETFILES is not set
947# CONFIG_FEATURE_SETFILES_CHECK_OPTION is not set
948# CONFIG_SETSEBOOL is not set
949# CONFIG_SESTATUS is not set
950
951#
952# Shells
953#
954CONFIG_ASH=y
955CONFIG_ASH_BASH_COMPAT=y
956# CONFIG_ASH_IDLE_TIMEOUT is not set
957CONFIG_ASH_JOB_CONTROL=y
958CONFIG_ASH_ALIAS=y
959CONFIG_ASH_GETOPTS=y
960CONFIG_ASH_BUILTIN_ECHO=y
961CONFIG_ASH_BUILTIN_PRINTF=y
962CONFIG_ASH_BUILTIN_TEST=y
963# CONFIG_ASH_CMDCMD is not set
964# CONFIG_ASH_MAIL is not set
965CONFIG_ASH_OPTIMIZE_FOR_SIZE=y
966# CONFIG_ASH_RANDOM_SUPPORT is not set
967CONFIG_ASH_EXPAND_PRMT=y
968# CONFIG_CTTYHACK is not set
969# CONFIG_HUSH is not set
970# CONFIG_HUSH_BASH_COMPAT is not set
971# CONFIG_HUSH_BRACE_EXPANSION is not set
972# CONFIG_HUSH_HELP is not set
973# CONFIG_HUSH_INTERACTIVE is not set
974# CONFIG_HUSH_SAVEHISTORY is not set
975# CONFIG_HUSH_JOB is not set
976# CONFIG_HUSH_TICK is not set
977# CONFIG_HUSH_IF is not set
978# CONFIG_HUSH_LOOPS is not set
979# CONFIG_HUSH_CASE is not set
980# CONFIG_HUSH_FUNCTIONS is not set
981# CONFIG_HUSH_LOCAL is not set
982# CONFIG_HUSH_RANDOM_SUPPORT is not set
983# CONFIG_HUSH_EXPORT_N is not set
984# CONFIG_HUSH_MODE_X is not set
985# CONFIG_MSH is not set
986CONFIG_FEATURE_SH_IS_ASH=y
987# CONFIG_FEATURE_SH_IS_HUSH is not set
988# CONFIG_FEATURE_SH_IS_NONE is not set
989# CONFIG_FEATURE_BASH_IS_ASH is not set
990# CONFIG_FEATURE_BASH_IS_HUSH is not set
991CONFIG_FEATURE_BASH_IS_NONE=y
992CONFIG_SH_MATH_SUPPORT=y
993# CONFIG_SH_MATH_SUPPORT_64 is not set
994CONFIG_FEATURE_SH_EXTRA_QUIET=y
995# CONFIG_FEATURE_SH_STANDALONE is not set
996# CONFIG_FEATURE_SH_NOFORK is not set
997CONFIG_FEATURE_SH_HISTFILESIZE=y
998
999#
1000# System Logging Utilities
1001#
1002CONFIG_SYSLOGD=y
1003CONFIG_FEATURE_ROTATE_LOGFILE=y
1004CONFIG_FEATURE_REMOTE_LOG=y
1005CONFIG_FEATURE_SYSLOGD_DUP=y
1006CONFIG_FEATURE_SYSLOGD_CFG=y
1007CONFIG_FEATURE_SYSLOGD_READ_BUFFER_SIZE=256
1008CONFIG_FEATURE_IPC_SYSLOG=y
1009CONFIG_FEATURE_IPC_SYSLOG_BUFFER_SIZE=16
1010CONFIG_LOGREAD=y
1011CONFIG_FEATURE_LOGREAD_REDUCED_LOCKING=y
1012CONFIG_KLOGD=y
1013CONFIG_FEATURE_KLOGD_KLOGCTL=y
1014CONFIG_LOGGER=y
diff --git a/meta-eca/recipes-devtools/ninja/ninja-native_1.4.0.bb b/meta-eca/recipes-devtools/ninja/ninja-native_1.4.0.bb
new file mode 100644
index 0000000..f05d478
--- /dev/null
+++ b/meta-eca/recipes-devtools/ninja/ninja-native_1.4.0.bb
@@ -0,0 +1,21 @@
1DESCRIPTION = "Ninja is a small build system with a focus on speed."
2LICENSE = "Apache-2"
3
4inherit native
5
6LIC_FILES_CHKSUM = "file://COPYING;md5=a81586a64ad4e476c791cda7e2f2c52e"
7
8SRCREV="63d5b1013cafb2db95687cf446eb5bb68cf6a27a"
9
10SRC_URI = "git://github.com/martine/ninja.git;branch=release"
11
12S="${WORKDIR}/git"
13
14do_compile() {
15 python ${S}/bootstrap.py
16}
17
18do_install() {
19 install -d ${D}${bindir}
20 install -m 0755 ${S}/ninja ${D}${bindir}/ninja
21}
diff --git a/meta-eca/recipes-eca/images/eca-image.bb b/meta-eca/recipes-eca/images/eca-image.bb
new file mode 100644
index 0000000..724f49a
--- /dev/null
+++ b/meta-eca/recipes-eca/images/eca-image.bb
@@ -0,0 +1,4 @@
1include recipes-eca/images/eca-image.inc
2
3PV = "0.2"
4PR = "r1"
diff --git a/meta-eca/recipes-eca/images/eca-image.inc b/meta-eca/recipes-eca/images/eca-image.inc
new file mode 100644
index 0000000..a661521
--- /dev/null
+++ b/meta-eca/recipes-eca/images/eca-image.inc
@@ -0,0 +1,31 @@
1IMAGE_INSTALL = "\
2 packagegroup-eca \
3 ${@base_contains('DISTRO_FEATURES', 'internet-of-things', 'packagegroup-iot', '', d)} \
4 ${@base_contains('DISTRO_FEATURES', 'desktop', 'packagegroup-eca-desktop', '', d)} \
5 ${ROOTFS_PKGMANAGE_BOOTSTRAP} \
6 ${CORE_IMAGE_EXTRA_INSTALL} \
7"
8
9EXTRA_IMAGE_FEATURES = "debug-tweaks package-management ssh-server-dropbear"
10EXTRA_IMAGEDEPENDS += "qemu-native qemu-helper-native"
11
12IMAGE_LINGUAS = " "
13
14LICENSE = "MIT"
15
16PREFERRED_PROVIDER_udev = "systemd"
17PREFERRED_PROVIDER_udev-utils = "systemd"
18
19PREFERRED_PROVIDER_jpeg = "jpeg"
20PREFERRED_PROVIDER_jpeg-native = "jpeg-native"
21
22BBMASK = "meta/recipes-core/udev.*"
23
24inherit core-image buildhistory
25
26IMAGE_ROOTFS_SIZE = "8192"
27
28# remove not needed ipkg informations
29#ROOTFS_POSTPROCESS_COMMAND += "remove_packaging_data_files ; "
30
31BUILDHISTORY_COMMIT = "1"
diff --git a/meta-eca/recipes-eca/packagegroups/packagegroup-base.bbappend b/meta-eca/recipes-eca/packagegroups/packagegroup-base.bbappend
new file mode 100644
index 0000000..3578896
--- /dev/null
+++ b/meta-eca/recipes-eca/packagegroups/packagegroup-base.bbappend
@@ -0,0 +1,5 @@
1# We want to use bluez5
2RDEPENDS_packagegroup-base-bluetooth = "\
3 bluez5 \
4 ${@base_contains('COMBINED_FEATURES', 'alsa', 'libasound-module-bluez', '',d)} \
5 "
diff --git a/meta-eca/recipes-eca/packagegroups/packagegroup-eca-desktop.bb b/meta-eca/recipes-eca/packagegroups/packagegroup-eca-desktop.bb
new file mode 100644
index 0000000..7b20770
--- /dev/null
+++ b/meta-eca/recipes-eca/packagegroups/packagegroup-eca-desktop.bb
@@ -0,0 +1,45 @@
1DESCRIPTION = "Packagegroup for ECA desktop packages"
2LICENSE = "MIT"
3PACKAGE_ARCH = "${MACHINE_ARCH}"
4DEPENDS = "virtual/kernel"
5PR = "r2"
6
7inherit packagegroup
8
9PACKAGES = "\
10 ${@base_contains('DISTRO_FEATURES', 'desktop', 'packagegroup-eca-desktop', '', d)} \
11"
12
13# Graphical desktop support
14# pcmanfm doesn't work on mips
15FILEMANAGER ?= "pcmanfm"
16FILEMANAGER_mips ?= ""
17BROWSER = "chromium"
18DESKTOP_APPS="\
19 leafpad \
20 gaku \
21 x11vnc \
22 matchbox-terminal \
23 sato-screenshot \
24 ${FILEMANAGER} \
25 ${BROWSER} \
26"
27
28SUMMARY_packagegroup-eca-desktop = "ECA graphical desktop support"
29RDEPENDS_packagegroup-eca-desktop = "\
30 matchbox-desktop \
31 matchbox-session-sato \
32 matchbox-keyboard \
33 matchbox-keyboard-applet \
34 matchbox-keyboard-im \
35 matchbox-config-gtk \
36 xcursor-transparent-theme \
37 sato-icon-theme \
38 settings-daemon \
39 gtk-sato-engine \
40 shutdown-desktop \
41 libsdl \
42 connman-gnome \
43 udev-extraconf \
44 ${DESKTOP_APPS} \
45"
diff --git a/meta-eca/recipes-eca/packagegroups/packagegroup-eca.bb b/meta-eca/recipes-eca/packagegroups/packagegroup-eca.bb
new file mode 100644
index 0000000..5aaa002
--- /dev/null
+++ b/meta-eca/recipes-eca/packagegroups/packagegroup-eca.bb
@@ -0,0 +1,127 @@
1DESCRIPTION = "Packagegroup for ECA packages"
2LICENSE = "MIT"
3PACKAGE_ARCH = "${MACHINE_ARCH}"
4DEPENDS = "virtual/kernel"
5PR = "r2"
6
7inherit packagegroup
8
9PACKAGES = "\
10 packagegroup-eca \
11 ${@base_contains('DISTRO_FEATURES', 'internet-of-things', 'packagegroup-iot', '', d)} \
12"
13
14MACHINE_ESSENTIAL_EXTRA_RDEPENDS ?= ""
15MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS ?= ""
16
17VIRTUAL-RUNTIME_dev_manager ?= "udev"
18VIRTUAL-RUNTIME_init_manager ?= "sysvinit"
19VIRTUAL-RUNTIME_initscripts ?= "initscripts"
20VIRTUAL-RUNTIME_keymaps ?= "keymaps "
21
22BLUEZ_PACKAGES="\
23 bluez5 \
24 bluez5-testtools \
25"
26
27CONNMAN_PACKAGES="\
28 connman \
29 connman-init-systemd \
30 connman-client \
31 connman-tests \
32 connman-tools \
33"
34
35NFC_PACKAGES="\
36 neard \
37"
38
39OFONO_PACKAGES="\
40 ofono \
41 ofono-tests \
42 mobile-broadband-provider-info \
43 usb-modeswitch \
44"
45
46UI_PACKAGES="\
47 webpy \
48 eca-web \
49"
50
51UTIL_PACKAGES="\
52 curl \
53 less \
54 avahi \
55 avahi-daemon \
56 iproute2 \
57 tcpdump \
58 screen \
59 bridge-utils \
60 lsof \
61 rsync \
62 socat \
63 links \
64 iw \
65 mosh \
66 macchanger \
67 netcat-openbsd \
68 python-scapy \
69 tzdata \
70 bind-utils \
71 usbutils \
72 wireless-tools \
73"
74
75# Try to install as many wlan firmwares as possible
76WLAN_FIRMWARE="\
77 linux-firmware-ralink \
78 linux-firmware-rtl8192ce \
79 linux-firmware-rtl8192cu \
80 linux-firmware-rtl8192su \
81 linux-firmware-sd8686 \
82 linux-firmware-wl12xx \
83"
84
85THE_THING_SYSTEM="\
86 steward-init \
87 steward \
88 tts-nodejs \
89"
90
91RDEPENDS_packagegroup-eca = "\
92 base-files \
93 base-passwd \
94 busybox \
95 ${VIRTUAL-RUNTIME_initscripts} \
96 ${@base_contains("MACHINE_FEATURES", "keyboard", "${VIRTUAL-RUNTIME_keymaps}", "", d)} \
97 netbase \
98 ${VIRTUAL-RUNTIME_init_manager} \
99 ${VIRTUAL-RUNTIME_dev_manager} \
100 ${VIRTUAL-RUNTIME_update-alternatives} \
101 ${MACHINE_ESSENTIAL_EXTRA_RDEPENDS} \
102 procps \
103 packagegroup-base \
104 initscripts \
105 systemd-compat-units \
106 kernel-modules \
107 eglibc \
108 linux-firmware \
109 \
110 ${BLUEZ_PACKAGES} \
111 ${CONNMAN_PACKAGES} \
112 ${NFC_PACKAGES} \
113 ${OFONO_PACKAGES} \
114 ${UI_PACKAGES} \
115 ${UTIL_PACKAGES} \
116 ${WLAN_FIRMWARE} \
117"
118
119SUMMARY_packagegroup-iot = "Internet of Things support"
120RDEPENDS_packagegroup-iot = "\
121 ${THE_THING_SYSTEM} \
122 avahi-daemon-init \
123"
124
125RRECOMMENDS_${PN} = "\
126 ${MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS} \
127"
diff --git a/meta-eca/recipes-kernel/linux/linux-mainline_3.8.bb b/meta-eca/recipes-kernel/linux/linux-mainline_3.8.bb
new file mode 100644
index 0000000..221b2a0
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-mainline_3.8.bb
@@ -0,0 +1,3 @@
1# This is currently empty and only here so that bitbake
2# does not complain
3LICENSE = "GPLv2"
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/bluetooth.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/bluetooth.cfg
new file mode 100644
index 0000000..21aac08
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/bluetooth.cfg
@@ -0,0 +1,21 @@
1CONFIG_BT=m
2CONFIG_BT_RFCOMM=m
3CONFIG_BT_RFCOMM_TTY=y
4CONFIG_BT_BNEP=m
5CONFIG_BT_BNEP_MC_FILTER=y
6CONFIG_BT_BNEP_PROTO_FILTER=y
7CONFIG_BT_HIDP=m
8CONFIG_BT_HCIBTUSB=m
9CONFIG_BT_HCIBTSDIO=m
10CONFIG_BT_HCIUART=m
11CONFIG_BT_HCIUART_H4=y
12CONFIG_BT_HCIUART_BCSP=y
13CONFIG_BT_HCIUART_ATH3K=y
14CONFIG_BT_HCIUART_LL=y
15CONFIG_BT_HCIBCM203X=m
16CONFIG_BT_HCIBPA10X=m
17CONFIG_BT_HCIBFUSB=m
18CONFIG_BT_HCIVHCI=m
19CONFIG_BT_MRVL=m
20CONFIG_BT_MRVL_SDIO=m
21CONFIG_BT_ATH3K=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/bridge.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/bridge.cfg
new file mode 100644
index 0000000..40e95a6
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/bridge.cfg
@@ -0,0 +1,2 @@
1CONFIG_BRIDGE=m
2CONFIG_BRIDGE_IGMP_SNOOPING=y
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/high-speed-mobile-devices.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/high-speed-mobile-devices.cfg
new file mode 100644
index 0000000..0a009ee
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/high-speed-mobile-devices.cfg
@@ -0,0 +1 @@
CONFIG_USB_HSO=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/ipv6.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/ipv6.cfg
new file mode 100644
index 0000000..96a6fe7
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/ipv6.cfg
@@ -0,0 +1,3 @@
1CONFIG_IPV6_PRIVACY=y
2CONFIG_IPV6_MULTIPLE_TABLES=y
3CONFIG_IPV6_SUBTREES=y
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/l2tp.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/l2tp.cfg
new file mode 100644
index 0000000..d6d96da
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/l2tp.cfg
@@ -0,0 +1,2 @@
1CONFIG_L2TP=m
2CONFIG_L2TP_V3=y
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/mac80211.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/mac80211.cfg
new file mode 100644
index 0000000..559f3e7
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/mac80211.cfg
@@ -0,0 +1,2 @@
1CONFIG_CFG80211=m
2CONFIG_MAC80211=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/netfilter-3.10.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/netfilter-3.10.cfg
new file mode 100644
index 0000000..dfbbecf
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/netfilter-3.10.cfg
@@ -0,0 +1,175 @@
1CONFIG_IP_ROUTE_CLASSID=y
2CONFIG_IP_PNP=y
3CONFIG_IP_PNP_DHCP=y
4CONFIG_IP_PNP_BOOTP=y
5CONFIG_NETFILTER_NETLINK=m
6CONFIG_NETFILTER_NETLINK_ACCT=m
7CONFIG_NETFILTER_NETLINK_QUEUE=m
8CONFIG_NETFILTER_NETLINK_LOG=m
9CONFIG_NF_CONNTRACK=m
10CONFIG_NF_CONNTRACK_MARK=y
11CONFIG_NF_CONNTRACK_ZONES=y
12CONFIG_NF_CONNTRACK_PROCFS=y
13CONFIG_NF_CONNTRACK_EVENTS=y
14CONFIG_NF_CONNTRACK_TIMEOUT=y
15CONFIG_NF_CONNTRACK_TIMESTAMP=y
16CONFIG_NF_CT_PROTO_GRE=m
17CONFIG_NF_CONNTRACK_FTP=m
18CONFIG_NF_CONNTRACK_H323=m
19CONFIG_NF_CONNTRACK_IRC=m
20CONFIG_NF_CONNTRACK_BROADCAST=m
21CONFIG_NF_CONNTRACK_NETBIOS_NS=m
22CONFIG_NF_CONNTRACK_PPTP=m
23CONFIG_NF_CONNTRACK_SIP=m
24CONFIG_NF_CT_NETLINK=m
25CONFIG_NF_CT_NETLINK_TIMEOUT=m
26CONFIG_NETFILTER_NETLINK_QUEUE_CT=y
27CONFIG_NF_NAT=m
28CONFIG_NF_NAT_NEEDED=y
29CONFIG_NF_NAT_FTP=m
30CONFIG_NF_NAT_IRC=m
31CONFIG_NF_NAT_SIP=m
32CONFIG_NETFILTER_TPROXY=m
33CONFIG_NETFILTER_XTABLES=m
34CONFIG_NETFILTER_XT_MARK=m
35CONFIG_NETFILTER_XT_CONNMARK=m
36CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
37CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
38CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
39CONFIG_NETFILTER_XT_TARGET_CT=m
40CONFIG_NETFILTER_XT_TARGET_DSCP=m
41CONFIG_NETFILTER_XT_TARGET_HL=m
42CONFIG_NETFILTER_XT_TARGET_HMARK=m
43CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
44CONFIG_NETFILTER_XT_TARGET_LED=m
45CONFIG_NETFILTER_XT_TARGET_LOG=m
46CONFIG_NETFILTER_XT_TARGET_MARK=m
47CONFIG_NETFILTER_XT_TARGET_NFLOG=m
48CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
49CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
50CONFIG_NETFILTER_XT_TARGET_RATEEST=m
51CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
52CONFIG_NETFILTER_XT_TARGET_TEE=m
53CONFIG_NETFILTER_XT_TARGET_TPROXY=m
54CONFIG_NETFILTER_XT_TARGET_TRACE=m
55CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
56CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
57CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
58CONFIG_NETFILTER_XT_MATCH_COMMENT=m
59CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
60CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
61CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
62CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
63CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
64CONFIG_NETFILTER_XT_MATCH_DSCP=m
65CONFIG_NETFILTER_XT_MATCH_ECN=m
66CONFIG_NETFILTER_XT_MATCH_ESP=m
67CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
68CONFIG_NETFILTER_XT_MATCH_HELPER=m
69CONFIG_NETFILTER_XT_MATCH_HL=m
70CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
71CONFIG_NETFILTER_XT_MATCH_LENGTH=m
72CONFIG_NETFILTER_XT_MATCH_LIMIT=m
73CONFIG_NETFILTER_XT_MATCH_MAC=m
74CONFIG_NETFILTER_XT_MATCH_MARK=m
75CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
76CONFIG_NETFILTER_XT_MATCH_NFACCT=m
77CONFIG_NETFILTER_XT_MATCH_OSF=m
78CONFIG_NETFILTER_XT_MATCH_OWNER=m
79CONFIG_NETFILTER_XT_MATCH_POLICY=m
80CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
81CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
82CONFIG_NETFILTER_XT_MATCH_QUOTA=m
83CONFIG_NETFILTER_XT_MATCH_RATEEST=m
84CONFIG_NETFILTER_XT_MATCH_REALM=m
85CONFIG_NETFILTER_XT_MATCH_RECENT=m
86ONFIG_IP_VS=n
87CONFIG_NETFILTER_XT_MATCH_SOCKET=m
88CONFIG_NETFILTER_XT_MATCH_STATE=m
89CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
90CONFIG_NETFILTER_XT_MATCH_STRING=m
91CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
92CONFIG_NETFILTER_XT_MATCH_TIME=m
93CONFIG_NETFILTER_XT_MATCH_U32=m
94CONFIG_IP_SET=m
95CONFIG_IP_SET_MAX=256
96CONFIG_IP_SET_BITMAP_IP=m
97CONFIG_IP_SET_BITMAP_IPMAC=m
98CONFIG_IP_SET_BITMAP_PORT=m
99CONFIG_IP_SET_HASH_IP=m
100CONFIG_IP_SET_HASH_IPPORT=m
101CONFIG_IP_SET_HASH_IPPORTIP=m
102CONFIG_IP_SET_HASH_IPPORTNET=m
103CONFIG_IP_SET_HASH_NET=m
104CONFIG_IP_SET_HASH_NETPORT=m
105CONFIG_IP_SET_HASH_NETIFACE=m
106CONFIG_IP_SET_LIST_SET=m
107CONFIG_NF_DEFRAG_IPV4=m
108CONFIG_NF_CONNTRACK_IPV4=m
109CONFIG_NF_CONNTRACK_PROC_COMPAT=y
110CONFIG_IP_NF_QUEUE=m
111CONFIG_IP_NF_IPTABLES=m
112CONFIG_IP_NF_MATCH_AH=m
113CONFIG_IP_NF_FILTER=m
114CONFIG_IP_NF_TARGET_REJECT=m
115CONFIG_IP_NF_TARGET_ULOG=m
116CONFIG_NF_NAT_IPV4=m
117CONFIG_IP_NF_TARGET_MASQUERADE=m
118CONFIG_IP_NF_TARGET_REDIRECT=m
119CONFIG_NF_NAT_PROTO_GRE=m
120CONFIG_NF_NAT_PPTP=m
121CONFIG_NF_NAT_H323=m
122CONFIG_IP_NF_MANGLE=m
123CONFIG_IP_NF_TARGET_ECN=m
124CONFIG_IP_NF_TARGET_TTL=m
125CONFIG_IP_NF_RAW=m
126CONFIG_NF_DEFRAG_IPV6=m
127CONFIG_NF_CONNTRACK_IPV6=m
128CONFIG_IP6_NF_IPTABLES=m
129CONFIG_IP6_NF_MATCH_AH=m
130CONFIG_IP6_NF_MATCH_EUI64=m
131CONFIG_IP6_NF_MANGLE=m
132CONFIG_IP6_NF_RAW=m
133CONFIG_IP6_NF_SECURITY=m
134CONFIG_NF_NAT_IPV6=m
135CONFIG_IP6_NF_TARGET_MASQUERADE=m
136CONFIG_IP6_NF_TARGET_NPT=m
137CONFIG_BRIDGE_NF_EBTABLES=m
138CONFIG_BRIDGE_EBT_BROUTE=m
139CONFIG_BRIDGE_EBT_T_FILTER=m
140CONFIG_BRIDGE_EBT_T_NAT=m
141CONFIG_BRIDGE_EBT_802_3=m
142CONFIG_BRIDGE_EBT_AMONG=m
143CONFIG_BRIDGE_EBT_ARP=m
144CONFIG_BRIDGE_EBT_IP=m
145CONFIG_BRIDGE_EBT_IP6=m
146CONFIG_BRIDGE_EBT_LIMIT=m
147CONFIG_BRIDGE_EBT_MARK=m
148CONFIG_BRIDGE_EBT_PKTTYPE=m
149CONFIG_BRIDGE_EBT_STP=m
150CONFIG_BRIDGE_EBT_VLAN=m
151CONFIG_BRIDGE_EBT_ARPREPLY=m
152CONFIG_BRIDGE_EBT_DNAT=m
153CONFIG_BRIDGE_EBT_MARK_T=m
154CONFIG_BRIDGE_EBT_REDIRECT=m
155CONFIG_BRIDGE_EBT_SNAT=m
156CONFIG_BRIDGE_EBT_LOG=m
157CONFIG_BRIDGE_EBT_ULOG=m
158CONFIG_BRIDGE_EBT_NFLOG=m
159CONFIG_FB_DEFERRED_IO=y
160CONFIG_FB_MODE_HELPERS=y
161CONFIG_FB_TILEBLITTING=y
162CONFIG_USB_CYTHERM=m
163CONFIG_USB_IDMOUSE=m
164CONFIG_USB_FTDI_ELAN=m
165CONFIG_USB_LD=m
166CONFIG_USB_TRANCEVIBRATOR=m
167CONFIG_DECOMPRESS_GZIP=y
168CONFIG_GENERIC_ALLOCATOR=y
169CONFIG_TEXTSEARCH=y
170CONFIG_TEXTSEARCH_KMP=m
171CONFIG_TEXTSEARCH_BM=m
172CONFIG_TEXTSEARCH_FSM=m
173CONFIG_HAS_IOMEM=y
174CONFIG_HAS_IOPORT=y
175CONFIG_HAS_DMA=y
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/netfilter-3.8.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/netfilter-3.8.cfg
new file mode 100644
index 0000000..dfbbecf
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/netfilter-3.8.cfg
@@ -0,0 +1,175 @@
1CONFIG_IP_ROUTE_CLASSID=y
2CONFIG_IP_PNP=y
3CONFIG_IP_PNP_DHCP=y
4CONFIG_IP_PNP_BOOTP=y
5CONFIG_NETFILTER_NETLINK=m
6CONFIG_NETFILTER_NETLINK_ACCT=m
7CONFIG_NETFILTER_NETLINK_QUEUE=m
8CONFIG_NETFILTER_NETLINK_LOG=m
9CONFIG_NF_CONNTRACK=m
10CONFIG_NF_CONNTRACK_MARK=y
11CONFIG_NF_CONNTRACK_ZONES=y
12CONFIG_NF_CONNTRACK_PROCFS=y
13CONFIG_NF_CONNTRACK_EVENTS=y
14CONFIG_NF_CONNTRACK_TIMEOUT=y
15CONFIG_NF_CONNTRACK_TIMESTAMP=y
16CONFIG_NF_CT_PROTO_GRE=m
17CONFIG_NF_CONNTRACK_FTP=m
18CONFIG_NF_CONNTRACK_H323=m
19CONFIG_NF_CONNTRACK_IRC=m
20CONFIG_NF_CONNTRACK_BROADCAST=m
21CONFIG_NF_CONNTRACK_NETBIOS_NS=m
22CONFIG_NF_CONNTRACK_PPTP=m
23CONFIG_NF_CONNTRACK_SIP=m
24CONFIG_NF_CT_NETLINK=m
25CONFIG_NF_CT_NETLINK_TIMEOUT=m
26CONFIG_NETFILTER_NETLINK_QUEUE_CT=y
27CONFIG_NF_NAT=m
28CONFIG_NF_NAT_NEEDED=y
29CONFIG_NF_NAT_FTP=m
30CONFIG_NF_NAT_IRC=m
31CONFIG_NF_NAT_SIP=m
32CONFIG_NETFILTER_TPROXY=m
33CONFIG_NETFILTER_XTABLES=m
34CONFIG_NETFILTER_XT_MARK=m
35CONFIG_NETFILTER_XT_CONNMARK=m
36CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m
37CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m
38CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
39CONFIG_NETFILTER_XT_TARGET_CT=m
40CONFIG_NETFILTER_XT_TARGET_DSCP=m
41CONFIG_NETFILTER_XT_TARGET_HL=m
42CONFIG_NETFILTER_XT_TARGET_HMARK=m
43CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m
44CONFIG_NETFILTER_XT_TARGET_LED=m
45CONFIG_NETFILTER_XT_TARGET_LOG=m
46CONFIG_NETFILTER_XT_TARGET_MARK=m
47CONFIG_NETFILTER_XT_TARGET_NFLOG=m
48CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m
49CONFIG_NETFILTER_XT_TARGET_NOTRACK=m
50CONFIG_NETFILTER_XT_TARGET_RATEEST=m
51CONFIG_NETFILTER_XT_TARGET_REDIRECT=m
52CONFIG_NETFILTER_XT_TARGET_TEE=m
53CONFIG_NETFILTER_XT_TARGET_TPROXY=m
54CONFIG_NETFILTER_XT_TARGET_TRACE=m
55CONFIG_NETFILTER_XT_TARGET_TCPMSS=m
56CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m
57CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m
58CONFIG_NETFILTER_XT_MATCH_COMMENT=m
59CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m
60CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m
61CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
62CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m
63CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m
64CONFIG_NETFILTER_XT_MATCH_DSCP=m
65CONFIG_NETFILTER_XT_MATCH_ECN=m
66CONFIG_NETFILTER_XT_MATCH_ESP=m
67CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
68CONFIG_NETFILTER_XT_MATCH_HELPER=m
69CONFIG_NETFILTER_XT_MATCH_HL=m
70CONFIG_NETFILTER_XT_MATCH_IPRANGE=m
71CONFIG_NETFILTER_XT_MATCH_LENGTH=m
72CONFIG_NETFILTER_XT_MATCH_LIMIT=m
73CONFIG_NETFILTER_XT_MATCH_MAC=m
74CONFIG_NETFILTER_XT_MATCH_MARK=m
75CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m
76CONFIG_NETFILTER_XT_MATCH_NFACCT=m
77CONFIG_NETFILTER_XT_MATCH_OSF=m
78CONFIG_NETFILTER_XT_MATCH_OWNER=m
79CONFIG_NETFILTER_XT_MATCH_POLICY=m
80CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m
81CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m
82CONFIG_NETFILTER_XT_MATCH_QUOTA=m
83CONFIG_NETFILTER_XT_MATCH_RATEEST=m
84CONFIG_NETFILTER_XT_MATCH_REALM=m
85CONFIG_NETFILTER_XT_MATCH_RECENT=m
86ONFIG_IP_VS=n
87CONFIG_NETFILTER_XT_MATCH_SOCKET=m
88CONFIG_NETFILTER_XT_MATCH_STATE=m
89CONFIG_NETFILTER_XT_MATCH_STATISTIC=m
90CONFIG_NETFILTER_XT_MATCH_STRING=m
91CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
92CONFIG_NETFILTER_XT_MATCH_TIME=m
93CONFIG_NETFILTER_XT_MATCH_U32=m
94CONFIG_IP_SET=m
95CONFIG_IP_SET_MAX=256
96CONFIG_IP_SET_BITMAP_IP=m
97CONFIG_IP_SET_BITMAP_IPMAC=m
98CONFIG_IP_SET_BITMAP_PORT=m
99CONFIG_IP_SET_HASH_IP=m
100CONFIG_IP_SET_HASH_IPPORT=m
101CONFIG_IP_SET_HASH_IPPORTIP=m
102CONFIG_IP_SET_HASH_IPPORTNET=m
103CONFIG_IP_SET_HASH_NET=m
104CONFIG_IP_SET_HASH_NETPORT=m
105CONFIG_IP_SET_HASH_NETIFACE=m
106CONFIG_IP_SET_LIST_SET=m
107CONFIG_NF_DEFRAG_IPV4=m
108CONFIG_NF_CONNTRACK_IPV4=m
109CONFIG_NF_CONNTRACK_PROC_COMPAT=y
110CONFIG_IP_NF_QUEUE=m
111CONFIG_IP_NF_IPTABLES=m
112CONFIG_IP_NF_MATCH_AH=m
113CONFIG_IP_NF_FILTER=m
114CONFIG_IP_NF_TARGET_REJECT=m
115CONFIG_IP_NF_TARGET_ULOG=m
116CONFIG_NF_NAT_IPV4=m
117CONFIG_IP_NF_TARGET_MASQUERADE=m
118CONFIG_IP_NF_TARGET_REDIRECT=m
119CONFIG_NF_NAT_PROTO_GRE=m
120CONFIG_NF_NAT_PPTP=m
121CONFIG_NF_NAT_H323=m
122CONFIG_IP_NF_MANGLE=m
123CONFIG_IP_NF_TARGET_ECN=m
124CONFIG_IP_NF_TARGET_TTL=m
125CONFIG_IP_NF_RAW=m
126CONFIG_NF_DEFRAG_IPV6=m
127CONFIG_NF_CONNTRACK_IPV6=m
128CONFIG_IP6_NF_IPTABLES=m
129CONFIG_IP6_NF_MATCH_AH=m
130CONFIG_IP6_NF_MATCH_EUI64=m
131CONFIG_IP6_NF_MANGLE=m
132CONFIG_IP6_NF_RAW=m
133CONFIG_IP6_NF_SECURITY=m
134CONFIG_NF_NAT_IPV6=m
135CONFIG_IP6_NF_TARGET_MASQUERADE=m
136CONFIG_IP6_NF_TARGET_NPT=m
137CONFIG_BRIDGE_NF_EBTABLES=m
138CONFIG_BRIDGE_EBT_BROUTE=m
139CONFIG_BRIDGE_EBT_T_FILTER=m
140CONFIG_BRIDGE_EBT_T_NAT=m
141CONFIG_BRIDGE_EBT_802_3=m
142CONFIG_BRIDGE_EBT_AMONG=m
143CONFIG_BRIDGE_EBT_ARP=m
144CONFIG_BRIDGE_EBT_IP=m
145CONFIG_BRIDGE_EBT_IP6=m
146CONFIG_BRIDGE_EBT_LIMIT=m
147CONFIG_BRIDGE_EBT_MARK=m
148CONFIG_BRIDGE_EBT_PKTTYPE=m
149CONFIG_BRIDGE_EBT_STP=m
150CONFIG_BRIDGE_EBT_VLAN=m
151CONFIG_BRIDGE_EBT_ARPREPLY=m
152CONFIG_BRIDGE_EBT_DNAT=m
153CONFIG_BRIDGE_EBT_MARK_T=m
154CONFIG_BRIDGE_EBT_REDIRECT=m
155CONFIG_BRIDGE_EBT_SNAT=m
156CONFIG_BRIDGE_EBT_LOG=m
157CONFIG_BRIDGE_EBT_ULOG=m
158CONFIG_BRIDGE_EBT_NFLOG=m
159CONFIG_FB_DEFERRED_IO=y
160CONFIG_FB_MODE_HELPERS=y
161CONFIG_FB_TILEBLITTING=y
162CONFIG_USB_CYTHERM=m
163CONFIG_USB_IDMOUSE=m
164CONFIG_USB_FTDI_ELAN=m
165CONFIG_USB_LD=m
166CONFIG_USB_TRANCEVIBRATOR=m
167CONFIG_DECOMPRESS_GZIP=y
168CONFIG_GENERIC_ALLOCATOR=y
169CONFIG_TEXTSEARCH=y
170CONFIG_TEXTSEARCH_KMP=m
171CONFIG_TEXTSEARCH_BM=m
172CONFIG_TEXTSEARCH_FSM=m
173CONFIG_HAS_IOMEM=y
174CONFIG_HAS_IOPORT=y
175CONFIG_HAS_DMA=y
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/netfilter-ipv4.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/netfilter-ipv4.cfg
new file mode 100644
index 0000000..be24cf7
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/netfilter-ipv4.cfg
@@ -0,0 +1,14 @@
1CONFIG_NF_NAT=m
2CONFIG_NF_NAT_NEEDED=y
3CONFIG_NF_NAT_PROTO_UDPLITE=m
4CONFIG_NF_NAT_PROTO_SCTP=m
5CONFIG_NF_NAT_AMANDA=m
6CONFIG_NF_NAT_FTP=m
7CONFIG_NF_NAT_IRC=m
8CONFIG_NF_NAT_SIP=m
9CONFIG_NF_NAT_TFTP=m
10CONFIG_NF_NAT_IPV4=m
11CONFIG_IP_NF_TARGET_MASQUERADE=m
12CONFIG_NF_NAT_PROTO_GRE=m
13CONFIG_NF_NAT_PPTP=m
14CONFIG_NF_NAT_H323=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/netfilter-small-3.8.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/netfilter-small-3.8.cfg
new file mode 100644
index 0000000..e9b71c4
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/netfilter-small-3.8.cfg
@@ -0,0 +1,23 @@
1CONFIG_NETFILTER=y
2CONFIG_NETFILTER_ADVANCED=y
3CONFIG_BRIDGE_NETFILTER=y
4CONFIG_NETFILTER_NETLINK=m
5CONFIG_NETFILTER_NETLINK_ACCT=m
6CONFIG_NF_CONNTRACK=m
7CONFIG_NF_CONNTRACK_PROCFS=y
8CONFIG_NF_NAT=m
9CONFIG_NF_NAT_NEEDED=y
10CONFIG_NETFILTER_XTABLES=m
11CONFIG_NF_DEFRAG_IPV4=m
12CONFIG_NF_CONNTRACK_IPV4=m
13CONFIG_NF_CONNTRACK_PROC_COMPAT=y
14CONFIG_IP_NF_IPTABLES=m
15CONFIG_IP_NF_FILTER=m
16CONFIG_NF_NAT_IPV4=m
17CONFIG_IP_NF_TARGET_MASQUERADE=m
18CONFIG_IP_MULTIPLE_TABLES=y
19CONFIG_NETFILTER_NETLINK_ACCT=m
20CONFIG_NETFILTER_XT_MATCH_NFACCT=m
21CONFIG_NETFILTER_XT_CONNMARK=m
22CONFIG_NETFILTER_XT_TARGET_CONNMARK=m
23CONFIG_NETFILTER_XT_MATCH_CONNMARK=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/nfacct.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/nfacct.cfg
new file mode 100644
index 0000000..2d9787f
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/nfacct.cfg
@@ -0,0 +1,2 @@
1CONFIG_NETFILTER_NETLINK_ACCT=m
2CONFIG_NETFILTER_XT_MATCH_NFACCT=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/nfc-3.4.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/nfc-3.4.cfg
new file mode 100644
index 0000000..af3fd46
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/nfc-3.4.cfg
@@ -0,0 +1,5 @@
1CONFIG_NFC=m
2CONFIG_NFC_NCI=m
3CONFIG_NFC_LLCP=y
4CONFIG_PN544_NFC=m
5CONFIG_NFC_PN533=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/nfc.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/nfc.cfg
new file mode 100644
index 0000000..9ff3db6
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/nfc.cfg
@@ -0,0 +1,7 @@
1CONFIG_NFC=m
2CONFIG_NFC_NCI=m
3CONFIG_NFC_HCI=m
4CONFIG_NFC_SHDLC=y
5CONFIG_NFC_LLCP=y
6CONFIG_PN544_HCI_NFC=m
7CONFIG_NFC_PN533=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/nokia-phonet.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/nokia-phonet.cfg
new file mode 100644
index 0000000..dde96ab
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/nokia-phonet.cfg
@@ -0,0 +1,2 @@
1CONFIG_PHONET=m
2CONFIG_USB_CDC_PHONET=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/rfkill.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/rfkill.cfg
new file mode 100644
index 0000000..428c0a5
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/rfkill.cfg
@@ -0,0 +1,3 @@
1CONFIG_RFKILL=m
2CONFIG_RFKILL_LEDS=y
3CONFIG_RFKILL_INPUT=y
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/tun-device.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/tun-device.cfg
new file mode 100644
index 0000000..d89a52f
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/tun-device.cfg
@@ -0,0 +1 @@
CONFIG_TUN=y
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/usb-eth-gadget.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/usb-eth-gadget.cfg
new file mode 100644
index 0000000..b05042c
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/usb-eth-gadget.cfg
@@ -0,0 +1,3 @@
1CONFIG_USB_ETH=m
2CONFIG_USB_ETH_RNDIS=y
3CONFIG_USB_MASS_STORAGE=n \ No newline at end of file
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/usb-net-3.10.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/usb-net-3.10.cfg
new file mode 100644
index 0000000..b9c3f34
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/usb-net-3.10.cfg
@@ -0,0 +1,22 @@
1CONFIG_USB_USBNET=m
2CONFIG_USB_NET_AX8817X=m
3CONFIG_USB_NET_CDCETHER=m
4CONFIG_USB_NET_CDC_EEM=m
5CONFIG_USB_NET_CDC_NCM=m
6CONFIG_USB_NET_DM9601=m
7CONFIG_USB_NET_SMSC75XX=m
8CONFIG_USB_NET_SMSC95XX=m
9CONFIG_USB_NET_NET1080=m
10CONFIG_USB_NET_PLUSB=m
11CONFIG_USB_NET_MCS7830=m
12CONFIG_USB_NET_CDC_SUBSET=m
13CONFIG_USB_NET_ZAURUS=m
14CONFIG_USB_NET_INT51X1=m
15CONFIG_USB_RTL8152=m
16CONFIG_USB_NET_CDC_MBIM=m
17CONFIG_USB_NET_KALMIA=m
18CONFIG_USB_NET_QMI_WWAN=m
19CONFIG_USB_SIERRA_NET=m
20CONFIG_USB_VL600=m
21CONFIG_USB_ACM=m
22CONFIG_USB_WDM=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/usb-net.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/usb-net.cfg
new file mode 100644
index 0000000..45da619
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/usb-net.cfg
@@ -0,0 +1,14 @@
1CONFIG_USB_USBNET=m
2CONFIG_USB_NET_AX8817X=m
3CONFIG_USB_NET_CDCETHER=m
4CONFIG_USB_NET_CDC_EEM=m
5CONFIG_USB_NET_CDC_NCM=m
6CONFIG_USB_NET_DM9601=m
7CONFIG_USB_NET_SMSC75XX=m
8CONFIG_USB_NET_SMSC95XX=m
9CONFIG_USB_NET_NET1080=m
10CONFIG_USB_NET_PLUSB=m
11CONFIG_USB_NET_MCS7830=m
12CONFIG_USB_NET_CDC_SUBSET=m
13CONFIG_USB_NET_ZAURUS=m
14CONFIG_USB_NET_INT51X1=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/usb-serial.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/usb-serial.cfg
new file mode 100644
index 0000000..5f1134f
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/usb-serial.cfg
@@ -0,0 +1,8 @@
1CONFIG_USB_SERIAL=m
2CONFIG_USB_SERIAL_GENERIC=y
3CONFIG_USB_SERIAL_IPW=m
4CONFIG_USB_SERIAL_MOTOROLA=m
5CONFIG_USB_SERIAL_QUALCOMM=m
6CONFIG_USB_SERIAL_SIERRAWIRELESS=m
7CONFIG_USB_SERIAL_WWAN=m
8CONFIG_USB_SERIAL_OPTION=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/wlan-atheros-3.4.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-atheros-3.4.cfg
new file mode 100644
index 0000000..d4f7456
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-atheros-3.4.cfg
@@ -0,0 +1,14 @@
1CONFIG_MAC80211_LEDS=y
2CONFIG_ATH_COMMON=m
3CONFIG_ATH9K_HW=m
4CONFIG_ATH9K_COMMON=m
5CONFIG_ATH9K_BTCOEX_SUPPORT=y
6CONFIG_ATH9K=m
7CONFIG_ATH9K_RATE_CONTROL=y
8CONFIG_ATH9K_HTC=m
9CONFIG_CARL9170=m
10CONFIG_CARL9170_LEDS=y
11CONFIG_CARL9170_WPC=y
12CONFIG_NEW_LEDS=y
13CONFIG_LEDS_CLASS=m
14CONFIG_LEDS_TRIGGERS=y
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/wlan-atheros.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-atheros.cfg
new file mode 100644
index 0000000..5647351
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-atheros.cfg
@@ -0,0 +1,21 @@
1CONFIG_ATH_COMMON=m
2CONFIG_ATH_CARDS=m
3CONFIG_ATH5K=m
4CONFIG_ATH5K_PCI=y
5CONFIG_ATH9K_HW=m
6CONFIG_ATH9K_COMMON=m
7CONFIG_ATH9K_BTCOEX_SUPPORT=y
8CONFIG_ATH9K=m
9CONFIG_ATH9K_PCI=y
10CONFIG_ATH9K_AHB=y
11CONFIG_ATH9K_RATE_CONTROL=y
12CONFIG_ATH9K_HTC=m
13CONFIG_CARL9170=m
14CONFIG_CARL9170_LEDS=y
15CONFIG_CARL9170_WPC=y
16CONFIG_ATH6KL=m
17CONFIG_ATH6KL_SDIO=m
18CONFIG_ATH6KL_USB=m
19CONFIG_AR5523=m
20CONFIG_WIL6210=m
21CONFIG_WIL6210_ISR_COR=y
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/wlan-broadcom.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-broadcom.cfg
new file mode 100644
index 0000000..3361e8b
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-broadcom.cfg
@@ -0,0 +1,24 @@
1CONFIG_B43=m
2CONFIG_B43_SSB=y
3CONFIG_B43_PCI_AUTOSELECT=y
4CONFIG_B43_PCICORE_AUTOSELECT=y
5CONFIG_B43_SDIO=y
6CONFIG_B43_PIO=y
7CONFIG_B43_PHY_LP=y
8CONFIG_B43_PHY_HT=y
9CONFIG_B43_LEDS=y
10CONFIG_B43_HWRNG=y
11CONFIG_BRCMUTIL=m
12CONFIG_BRCMFMAC=m
13CONFIG_BRCMFMAC_SDIO=y
14CONFIG_BRCMFMAC_USB=y
15CONFIG_SSB=m
16CONFIG_SSB_SPROM=y
17CONFIG_SSB_BLOCKIO=y
18CONFIG_SSB_PCIHOST_POSSIBLE=y
19CONFIG_SSB_PCIHOST=y
20CONFIG_SSB_B43_PCI_BRIDGE=y
21CONFIG_SSB_SDIOHOST_POSSIBLE=y
22CONFIG_SSB_SDIOHOST=y
23CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y
24CONFIG_SSB_DRIVER_PCICORE=y
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/wlan-intel-3.10.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-intel-3.10.cfg
new file mode 100644
index 0000000..4a7337a
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-intel-3.10.cfg
@@ -0,0 +1,4 @@
1CONFIG_IWLWIFI=m
2CONFIG_IWLDVM=m
3CONFIG_IWLMVM=m
4CONFIG_IWLWIFI_P2P=y
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/wlan-intel.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-intel.cfg
new file mode 100644
index 0000000..80f0eb5
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-intel.cfg
@@ -0,0 +1,3 @@
1CONFIG_IWLWIFI=m
2CONFIG_IWLDVM=m
3CONFIG_IWLWIFI_P2P=y
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/wlan-marwel.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-marwel.cfg
new file mode 100644
index 0000000..b6b737b
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-marwel.cfg
@@ -0,0 +1,4 @@
1CONFIG_MWIFIEX=m
2CONFIG_MWIFIEX_SDIO=m
3CONFIG_MWIFIEX_PCIE=m
4CONFIG_MWIFIEX_USB=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/wlan-ralink.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-ralink.cfg
new file mode 100644
index 0000000..82da88e
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-ralink.cfg
@@ -0,0 +1,15 @@
1CONFIG_RT2X00=m
2CONFIG_RT2500USB=m
3CONFIG_RT73USB=m
4CONFIG_RT2800USB=m
5CONFIG_RT2800USB_RT33XX=y
6CONFIG_RT2800USB_RT35XX=y
7CONFIG_RT2800USB_RT53XX=y
8CONFIG_RT2800USB_RT55XX=y
9CONFIG_RT2800USB_UNKNOWN=y
10CONFIG_RT2800_LIB=m
11CONFIG_RT2X00_LIB_USB=m
12CONFIG_RT2X00_LIB=m
13CONFIG_RT2X00_LIB_FIRMWARE=y
14CONFIG_RT2X00_LIB_CRYPTO=y
15CONFIG_CRC_ITU_T=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/wlan-realtek-3.4.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-realtek-3.4.cfg
new file mode 100644
index 0000000..5f0f1c6
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-realtek-3.4.cfg
@@ -0,0 +1,6 @@
1CONFIG_EEPROM_93CX6=m
2CONFIG_RTL8187=m
3CONFIG_RTL8192CU=m
4CONFIG_RTLWIFI=m
5CONFIG_RTLWIFI_DEBUG=y
6CONFIG_RTL8192C_COMMON=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/wlan-realtek.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-realtek.cfg
new file mode 100644
index 0000000..d762950
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-realtek.cfg
@@ -0,0 +1,11 @@
1CONFIG_EEPROM_93CX6=m
2CONFIG_RTL8187=m
3CONFIG_RTL8192CU=m
4CONFIG_RTLWIFI=m
5CONFIG_RTLWIFI_DEBUG=y
6CONFIG_RTL8192C_COMMON=m
7CONFIG_RTL8192CE=m
8CONFIG_RTL8192SE=m
9CONFIG_RTL8192DE=m
10CONFIG_RTL8723AE=m
11CONFIG_RTL8188EE=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/wlan-ti.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-ti.cfg
new file mode 100644
index 0000000..22d52f5
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-ti.cfg
@@ -0,0 +1,9 @@
1CONFIG_WL_TI=y
2CONFIG_WL1251=m
3CONFIG_WL1251_SDIO=m
4CONFIG_WL12XX=m
5CONFIG_WL18XX=m
6CONFIG_WLCORE=m
7CONFIG_WLCORE_SDIO=m
8CONFIG_WL12XX_PLATFORM_DATA=y
9CONFIG_CRC7=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/wlan-zydas-3.4.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-zydas-3.4.cfg
new file mode 100644
index 0000000..f9f4f3c
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-zydas-3.4.cfg
@@ -0,0 +1,4 @@
1CONFIG_WIRELESS_EXT=y
2CONFIG_WEXT_PRIV=y
3CONFIG_USB_ZD1201=m
4CONFIG_ZD1211RW=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto/wlan-zydas.cfg b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-zydas.cfg
new file mode 100644
index 0000000..72dcdec
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto/wlan-zydas.cfg
@@ -0,0 +1 @@
CONFIG_ZD1211RW=m
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto_3.10.bbappend b/meta-eca/recipes-kernel/linux/linux-yocto_3.10.bbappend
new file mode 100644
index 0000000..6a1ab3c
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto_3.10.bbappend
@@ -0,0 +1,27 @@
1# find defconfig path
2FILESEXTRAPATHS := "${THISDIR}/${PN}"
3
4SRC_URI += " \
5 file://wlan-atheros.cfg \
6 file://wlan-ralink.cfg \
7 file://wlan-realtek.cfg \
8 file://wlan-broadcom.cfg \
9 file://wlan-zydas.cfg \
10 file://wlan-marwel.cfg \
11 file://wlan-ti.cfg \
12 file://wlan-intel-3.10.cfg \
13 file://bluetooth.cfg \
14 file://nokia-phonet.cfg \
15 file://usb-serial.cfg \
16 file://tun-device.cfg \
17 file://l2tp.cfg \
18 file://rfkill.cfg \
19 file://mac80211.cfg \
20 file://nfc.cfg \
21 file://high-speed-mobile-devices.cfg \
22 file://netfilter-3.10.cfg \
23 file://usb-eth-gadget.cfg \
24 file://usb-net-3.10.cfg \
25 file://ipv6.cfg \
26 file://nfacct.cfg \
27"
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto_3.14.bbappend b/meta-eca/recipes-kernel/linux/linux-yocto_3.14.bbappend
new file mode 100644
index 0000000..6a1ab3c
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto_3.14.bbappend
@@ -0,0 +1,27 @@
1# find defconfig path
2FILESEXTRAPATHS := "${THISDIR}/${PN}"
3
4SRC_URI += " \
5 file://wlan-atheros.cfg \
6 file://wlan-ralink.cfg \
7 file://wlan-realtek.cfg \
8 file://wlan-broadcom.cfg \
9 file://wlan-zydas.cfg \
10 file://wlan-marwel.cfg \
11 file://wlan-ti.cfg \
12 file://wlan-intel-3.10.cfg \
13 file://bluetooth.cfg \
14 file://nokia-phonet.cfg \
15 file://usb-serial.cfg \
16 file://tun-device.cfg \
17 file://l2tp.cfg \
18 file://rfkill.cfg \
19 file://mac80211.cfg \
20 file://nfc.cfg \
21 file://high-speed-mobile-devices.cfg \
22 file://netfilter-3.10.cfg \
23 file://usb-eth-gadget.cfg \
24 file://usb-net-3.10.cfg \
25 file://ipv6.cfg \
26 file://nfacct.cfg \
27"
diff --git a/meta-eca/recipes-kernel/linux/linux-yocto_3.4.bbappend b/meta-eca/recipes-kernel/linux/linux-yocto_3.4.bbappend
new file mode 100644
index 0000000..451a133
--- /dev/null
+++ b/meta-eca/recipes-kernel/linux/linux-yocto_3.4.bbappend
@@ -0,0 +1,19 @@
1# find defconfig path
2FILESEXTRAPATHS := "${THISDIR}/${PN}"
3
4SRC_URI += " \
5 file://wlan-atheros-3.4.cfg \
6 file://wlan-ralink.cfg \
7 file://wlan-realtek-3.4.cfg \
8 file://wlan-zydas.cfg \
9 file://bluetooth.cfg \
10 file://nokia-phonet.cfg \
11 file://usb-serial.cfg \
12 file://tun-device.cfg \
13 file://usb-eth-gadget.cfg \
14 file://usb-net.cfg \
15 file://rfkill.cfg \
16 file://ipv6.cfg \
17 file://nfc-3.4.cfg \
18 file://nfacct.cfg \
19"
diff --git a/meta-eca/recipes-multimedia/pulseaudio/files/0001-configure.ac-Check-only-for-libsystemd-not-libsystem.patch b/meta-eca/recipes-multimedia/pulseaudio/files/0001-configure.ac-Check-only-for-libsystemd-not-libsystem.patch
new file mode 100644
index 0000000..467cd2c
--- /dev/null
+++ b/meta-eca/recipes-multimedia/pulseaudio/files/0001-configure.ac-Check-only-for-libsystemd-not-libsystem.patch
@@ -0,0 +1,30 @@
1From 002b16f0f2176b4c685e210e335bf69c02563ede Mon Sep 17 00:00:00 2001
2From: Martin Jansa <Martin.Jansa@gmail.com>
3Date: Sat, 22 Feb 2014 18:03:10 +0100
4Subject: [PATCH] configure.ac: Check only for libsystemd not libsystemd-login
5
6* they were merged into libsystemd in systemd-209
7
8Upstream-Status: Pending (it would need to be conditional on systemd version for upstream to accept this)
9
10Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
11---
12 configure.ac | 2 +-
13 1 file changed, 1 insertion(+), 1 deletion(-)
14
15diff --git a/configure.ac b/configure.ac
16index 388fae2..fff7a83 100644
17--- a/configure.ac
18+++ b/configure.ac
19@@ -1160,7 +1160,7 @@ AC_ARG_ENABLE([systemd],
20 AS_HELP_STRING([--disable-systemd],[Disable optional systemd support]))
21
22 AS_IF([test "x$enable_systemd" != "xno"],
23- [PKG_CHECK_MODULES(SYSTEMD, [ libsystemd-login ], HAVE_SYSTEMD=1, HAVE_SYSTEMD=0)],
24+ [PKG_CHECK_MODULES(SYSTEMD, [ libsystemd ], HAVE_SYSTEMD=1, HAVE_SYSTEMD=0)],
25 HAVE_SYSTEMD=0)
26
27 AS_IF([test "x$enable_systemd" = "xyes" && test "x$HAVE_SYSTEMD" = "x0"],
28--
291.8.5.3
30
diff --git a/meta-eca/recipes-multimedia/pulseaudio/files/volatiles.04_pulse b/meta-eca/recipes-multimedia/pulseaudio/files/volatiles.04_pulse
new file mode 100644
index 0000000..5b19980
--- /dev/null
+++ b/meta-eca/recipes-multimedia/pulseaudio/files/volatiles.04_pulse
@@ -0,0 +1,2 @@
1# <type> <owner> <group> <mode> <path> <linksource>
2d pulse pulse 0755 /var/run/pulse none
diff --git a/meta-eca/recipes-multimedia/pulseaudio/pulseaudio_git.bb b/meta-eca/recipes-multimedia/pulseaudio/pulseaudio_git.bb
new file mode 100644
index 0000000..be6a730
--- /dev/null
+++ b/meta-eca/recipes-multimedia/pulseaudio/pulseaudio_git.bb
@@ -0,0 +1,23 @@
1# Recipe for Pulseaudio that uses bluez5
2
3PACKAGECONFIG = "${@base_contains('DISTRO_FEATURES', 'bluetooth', 'bluez5', '', d)} \
4 ${@base_contains('DISTRO_FEATURES', 'systemd', 'systemd', '', d)} \
5 ${@base_contains('DISTRO_FEATURES', 'zeroconf', 'avahi', '', d)} \
6 ${@base_contains('DISTRO_FEATURES', 'x11', 'x11', '', d)}"
7
8require recipes-multimedia/pulseaudio/pulseaudio.inc
9
10PV="5.0"
11
12SRC_URI = "http://freedesktop.org/software/pulseaudio/releases/pulseaudio-${PV}.tar.xz \
13 file://0001-configure.ac-Check-only-for-libsystemd-not-libsystem.patch \
14 file://volatiles.04_pulse"
15
16SRC_URI[md5sum] = "c43749838612f4860465e83ed62ca38e"
17SRC_URI[sha256sum] = "99c13a8b1249ddbd724f195579df79484e9af6418cecf6a15f003a7f36caf939"
18
19do_compile_prepend() {
20 mkdir -p ${S}/libltdl
21 cp ${STAGING_LIBDIR}/libltdl* ${S}/libltdl
22}
23
diff --git a/meta-eca/recipes-support/libusb/libusb1_%.bbappend b/meta-eca/recipes-support/libusb/libusb1_%.bbappend
new file mode 100644
index 0000000..e0dbeac
--- /dev/null
+++ b/meta-eca/recipes-support/libusb/libusb1_%.bbappend
@@ -0,0 +1,5 @@
1# node.js npm needs libusb.h but it's components do not search
2# the header from correct place
3do_install_append() {
4 cp ${D}/usr/include/libusb-1.0/libusb.h ${D}/usr/include/libusb.h
5}
diff --git a/meta-eca/recipes-web/eca-web/eca-web_0.1.bb b/meta-eca/recipes-web/eca-web/eca-web_0.1.bb
new file mode 100644
index 0000000..494f2a3
--- /dev/null
+++ b/meta-eca/recipes-web/eca-web/eca-web_0.1.bb
@@ -0,0 +1,49 @@
1DESCRIPTION = "Simple web UI for Embedded Connectivity Appliance"
2LICENSE = "GPLv2"
3LIC_FILES_CHKSUM = "file://COPYING;md5=12f884d2ae1ff87c09e5b7ccc2c4ca7e"
4
5SRCREV_default_pn-eca-web ?= "${AUTOREV}"
6SRC_URI = "\
7 git://github.com/jukkar/eca-web.git \
8 file://eca-web.service \
9 file://start-eca-web \
10 file://config \
11"
12
13SRC_URI[md5sum] = "71469efd6798ea62c788db34d8da0a93"
14SRC_URI[sha256sum] = "bc08d8345854c4ec6740bcef6d563fb3f8317f9a6a4b47ba327454a3b75f4afc"
15
16S = "${WORKDIR}/git"
17PR = "r0"
18
19PREFIX ?= "/opt/eca-web"
20
21EXTRA_OECONF += "\
22 --prefix=${PREFIX} \
23 --sysconfdir=/etc \
24"
25
26inherit autotools
27inherit systemd
28
29SYSTEMD_PACKAGES = "${PN}"
30SYSTEMD_SERVICE_${PN} = "eca-web.service"
31
32FILES_${PN} = " \
33 eca-web.service \
34 start-eca-web \
35 /opt/eca-web/* \
36 ${sysconfdir}/${PN} \
37 ${systemd_unitdir}/system/${PN}.service \
38"
39
40RDEPENDS_${PN} = "webpy"
41
42do_install_append() {
43 install -d ${D}${systemd_unitdir}/system
44 install -m 0755 ${WORKDIR}/eca-web.service ${D}${systemd_unitdir}/system
45 install -d ${D}${sysconfdir}/${PN}
46 install -m 0644 ${WORKDIR}/config ${D}${sysconfdir}/${PN}
47 install -m 0755 ${WORKDIR}/start-eca-web ${D}${PREFIX}
48}
49
diff --git a/meta-eca/recipes-web/eca-web/files/COPYING b/meta-eca/recipes-web/eca-web/files/COPYING
new file mode 100644
index 0000000..6d45519
--- /dev/null
+++ b/meta-eca/recipes-web/eca-web/files/COPYING
@@ -0,0 +1,340 @@
1 GNU GENERAL PUBLIC LICENSE
2 Version 2, June 1991
3
4 Copyright (C) 1989, 1991 Free Software Foundation, Inc.
5 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
6 Everyone is permitted to copy and distribute verbatim copies
7 of this license document, but changing it is not allowed.
8
9 Preamble
10
11 The licenses for most software are designed to take away your
12freedom to share and change it. By contrast, the GNU General Public
13License is intended to guarantee your freedom to share and change free
14software--to make sure the software is free for all its users. This
15General Public License applies to most of the Free Software
16Foundation's software and to any other program whose authors commit to
17using it. (Some other Free Software Foundation software is covered by
18the GNU Library General Public License instead.) You can apply it to
19your programs, too.
20
21 When we speak of free software, we are referring to freedom, not
22price. Our General Public Licenses are designed to make sure that you
23have the freedom to distribute copies of free software (and charge for
24this service if you wish), that you receive source code or can get it
25if you want it, that you can change the software or use pieces of it
26in new free programs; and that you know you can do these things.
27
28 To protect your rights, we need to make restrictions that forbid
29anyone to deny you these rights or to ask you to surrender the rights.
30These restrictions translate to certain responsibilities for you if you
31distribute copies of the software, or if you modify it.
32
33 For example, if you distribute copies of such a program, whether
34gratis or for a fee, you must give the recipients all the rights that
35you have. You must make sure that they, too, receive or can get the
36source code. And you must show them these terms so they know their
37rights.
38
39 We protect your rights with two steps: (1) copyright the software, and
40(2) offer you this license which gives you legal permission to copy,
41distribute and/or modify the software.
42
43 Also, for each author's protection and ours, we want to make certain
44that everyone understands that there is no warranty for this free
45software. If the software is modified by someone else and passed on, we
46want its recipients to know that what they have is not the original, so
47that any problems introduced by others will not reflect on the original
48authors' reputations.
49
50 Finally, any free program is threatened constantly by software
51patents. We wish to avoid the danger that redistributors of a free
52program will individually obtain patent licenses, in effect making the
53program proprietary. To prevent this, we have made it clear that any
54patent must be licensed for everyone's free use or not licensed at all.
55
56 The precise terms and conditions for copying, distribution and
57modification follow.
58
59 GNU GENERAL PUBLIC LICENSE
60 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
61
62 0. This License applies to any program or other work which contains
63a notice placed by the copyright holder saying it may be distributed
64under the terms of this General Public License. The "Program", below,
65refers to any such program or work, and a "work based on the Program"
66means either the Program or any derivative work under copyright law:
67that is to say, a work containing the Program or a portion of it,
68either verbatim or with modifications and/or translated into another
69language. (Hereinafter, translation is included without limitation in
70the term "modification".) Each licensee is addressed as "you".
71
72Activities other than copying, distribution and modification are not
73covered by this License; they are outside its scope. The act of
74running the Program is not restricted, and the output from the Program
75is covered only if its contents constitute a work based on the
76Program (independent of having been made by running the Program).
77Whether that is true depends on what the Program does.
78
79 1. You may copy and distribute verbatim copies of the Program's
80source code as you receive it, in any medium, provided that you
81conspicuously and appropriately publish on each copy an appropriate
82copyright notice and disclaimer of warranty; keep intact all the
83notices that refer to this License and to the absence of any warranty;
84and give any other recipients of the Program a copy of this License
85along with the Program.
86
87You may charge a fee for the physical act of transferring a copy, and
88you may at your option offer warranty protection in exchange for a fee.
89
90 2. You may modify your copy or copies of the Program or any portion
91of it, thus forming a work based on the Program, and copy and
92distribute such modifications or work under the terms of Section 1
93above, provided that you also meet all of these conditions:
94
95 a) You must cause the modified files to carry prominent notices
96 stating that you changed the files and the date of any change.
97
98 b) You must cause any work that you distribute or publish, that in
99 whole or in part contains or is derived from the Program or any
100 part thereof, to be licensed as a whole at no charge to all third
101 parties under the terms of this License.
102
103 c) If the modified program normally reads commands interactively
104 when run, you must cause it, when started running for such
105 interactive use in the most ordinary way, to print or display an
106 announcement including an appropriate copyright notice and a
107 notice that there is no warranty (or else, saying that you provide
108 a warranty) and that users may redistribute the program under
109 these conditions, and telling the user how to view a copy of this
110 License. (Exception: if the Program itself is interactive but
111 does not normally print such an announcement, your work based on
112 the Program is not required to print an announcement.)
113
114These requirements apply to the modified work as a whole. If
115identifiable sections of that work are not derived from the Program,
116and can be reasonably considered independent and separate works in
117themselves, then this License, and its terms, do not apply to those
118sections when you distribute them as separate works. But when you
119distribute the same sections as part of a whole which is a work based
120on the Program, the distribution of the whole must be on the terms of
121this License, whose permissions for other licensees extend to the
122entire whole, and thus to each and every part regardless of who wrote it.
123
124Thus, it is not the intent of this section to claim rights or contest
125your rights to work written entirely by you; rather, the intent is to
126exercise the right to control the distribution of derivative or
127collective works based on the Program.
128
129In addition, mere aggregation of another work not based on the Program
130with the Program (or with a work based on the Program) on a volume of
131a storage or distribution medium does not bring the other work under
132the scope of this License.
133
134 3. You may copy and distribute the Program (or a work based on it,
135under Section 2) in object code or executable form under the terms of
136Sections 1 and 2 above provided that you also do one of the following:
137
138 a) Accompany it with the complete corresponding machine-readable
139 source code, which must be distributed under the terms of Sections
140 1 and 2 above on a medium customarily used for software interchange; or,
141
142 b) Accompany it with a written offer, valid for at least three
143 years, to give any third party, for a charge no more than your
144 cost of physically performing source distribution, a complete
145 machine-readable copy of the corresponding source code, to be
146 distributed under the terms of Sections 1 and 2 above on a medium
147 customarily used for software interchange; or,
148
149 c) Accompany it with the information you received as to the offer
150 to distribute corresponding source code. (This alternative is
151 allowed only for noncommercial distribution and only if you
152 received the program in object code or executable form with such
153 an offer, in accord with Subsection b above.)
154
155The source code for a work means the preferred form of the work for
156making modifications to it. For an executable work, complete source
157code means all the source code for all modules it contains, plus any
158associated interface definition files, plus the scripts used to
159control compilation and installation of the executable. However, as a
160special exception, the source code distributed need not include
161anything that is normally distributed (in either source or binary
162form) with the major components (compiler, kernel, and so on) of the
163operating system on which the executable runs, unless that component
164itself accompanies the executable.
165
166If distribution of executable or object code is made by offering
167access to copy from a designated place, then offering equivalent
168access to copy the source code from the same place counts as
169distribution of the source code, even though third parties are not
170compelled to copy the source along with the object code.
171
172 4. You may not copy, modify, sublicense, or distribute the Program
173except as expressly provided under this License. Any attempt
174otherwise to copy, modify, sublicense or distribute the Program is
175void, and will automatically terminate your rights under this License.
176However, parties who have received copies, or rights, from you under
177this License will not have their licenses terminated so long as such
178parties remain in full compliance.
179
180 5. You are not required to accept this License, since you have not
181signed it. However, nothing else grants you permission to modify or
182distribute the Program or its derivative works. These actions are
183prohibited by law if you do not accept this License. Therefore, by
184modifying or distributing the Program (or any work based on the
185Program), you indicate your acceptance of this License to do so, and
186all its terms and conditions for copying, distributing or modifying
187the Program or works based on it.
188
189 6. Each time you redistribute the Program (or any work based on the
190Program), the recipient automatically receives a license from the
191original licensor to copy, distribute or modify the Program subject to
192these terms and conditions. You may not impose any further
193restrictions on the recipients' exercise of the rights granted herein.
194You are not responsible for enforcing compliance by third parties to
195this License.
196
197 7. If, as a consequence of a court judgment or allegation of patent
198infringement or for any other reason (not limited to patent issues),
199conditions are imposed on you (whether by court order, agreement or
200otherwise) that contradict the conditions of this License, they do not
201excuse you from the conditions of this License. If you cannot
202distribute so as to satisfy simultaneously your obligations under this
203License and any other pertinent obligations, then as a consequence you
204may not distribute the Program at all. For example, if a patent
205license would not permit royalty-free redistribution of the Program by
206all those who receive copies directly or indirectly through you, then
207the only way you could satisfy both it and this License would be to
208refrain entirely from distribution of the Program.
209
210If any portion of this section is held invalid or unenforceable under
211any particular circumstance, the balance of the section is intended to
212apply and the section as a whole is intended to apply in other
213circumstances.
214
215It is not the purpose of this section to induce you to infringe any
216patents or other property right claims or to contest validity of any
217such claims; this section has the sole purpose of protecting the
218integrity of the free software distribution system, which is
219implemented by public license practices. Many people have made
220generous contributions to the wide range of software distributed
221through that system in reliance on consistent application of that
222system; it is up to the author/donor to decide if he or she is willing
223to distribute software through any other system and a licensee cannot
224impose that choice.
225
226This section is intended to make thoroughly clear what is believed to
227be a consequence of the rest of this License.
228
229 8. If the distribution and/or use of the Program is restricted in
230certain countries either by patents or by copyrighted interfaces, the
231original copyright holder who places the Program under this License
232may add an explicit geographical distribution limitation excluding
233those countries, so that distribution is permitted only in or among
234countries not thus excluded. In such case, this License incorporates
235the limitation as if written in the body of this License.
236
237 9. The Free Software Foundation may publish revised and/or new versions
238of the General Public License from time to time. Such new versions will
239be similar in spirit to the present version, but may differ in detail to
240address new problems or concerns.
241
242Each version is given a distinguishing version number. If the Program
243specifies a version number of this License which applies to it and "any
244later version", you have the option of following the terms and conditions
245either of that version or of any later version published by the Free
246Software Foundation. If the Program does not specify a version number of
247this License, you may choose any version ever published by the Free Software
248Foundation.
249
250 10. If you wish to incorporate parts of the Program into other free
251programs whose distribution conditions are different, write to the author
252to ask for permission. For software which is copyrighted by the Free
253Software Foundation, write to the Free Software Foundation; we sometimes
254make exceptions for this. Our decision will be guided by the two goals
255of preserving the free status of all derivatives of our free software and
256of promoting the sharing and reuse of software generally.
257
258 NO WARRANTY
259
260 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
261FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
262OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
263PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
264OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
265MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
266TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
267PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
268REPAIR OR CORRECTION.
269
270 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
271WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
272REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
273INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
274OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
275TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
276YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
277PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
278POSSIBILITY OF SUCH DAMAGES.
279
280 END OF TERMS AND CONDITIONS
281
282 How to Apply These Terms to Your New Programs
283
284 If you develop a new program, and you want it to be of the greatest
285possible use to the public, the best way to achieve this is to make it
286free software which everyone can redistribute and change under these terms.
287
288 To do so, attach the following notices to the program. It is safest
289to attach them to the start of each source file to most effectively
290convey the exclusion of warranty; and each file should have at least
291the "copyright" line and a pointer to where the full notice is found.
292
293 <one line to give the program's name and a brief idea of what it does.>
294 Copyright (C) <year> <name of author>
295
296 This program is free software; you can redistribute it and/or modify
297 it under the terms of the GNU General Public License as published by
298 the Free Software Foundation; either version 2 of the License, or
299 (at your option) any later version.
300
301 This program is distributed in the hope that it will be useful,
302 but WITHOUT ANY WARRANTY; without even the implied warranty of
303 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
304 GNU General Public License for more details.
305
306 You should have received a copy of the GNU General Public License
307 along with this program; if not, write to the Free Software
308 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
309
310
311Also add information on how to contact you by electronic and paper mail.
312
313If the program is interactive, make it output a short notice like this
314when it starts in an interactive mode:
315
316 Gnomovision version 69, Copyright (C) year name of author
317 Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
318 This is free software, and you are welcome to redistribute it
319 under certain conditions; type `show c' for details.
320
321The hypothetical commands `show w' and `show c' should show the appropriate
322parts of the General Public License. Of course, the commands you use may
323be called something other than `show w' and `show c'; they could even be
324mouse-clicks or menu items--whatever suits your program.
325
326You should also get your employer (if you work as a programmer) or your
327school, if any, to sign a "copyright disclaimer" for the program, if
328necessary. Here is a sample; alter the names:
329
330 Yoyodyne, Inc., hereby disclaims all copyright interest in the program
331 `Gnomovision' (which makes passes at compilers) written by James Hacker.
332
333 <signature of Ty Coon>, 1 April 1989
334 Ty Coon, President of Vice
335
336This General Public License does not permit incorporating your program into
337proprietary programs. If your program is a subroutine library, you may
338consider it more useful to permit linking proprietary applications with the
339library. If this is what you want to do, use the GNU Library General
340Public License instead of this License.
diff --git a/meta-eca/recipes-web/eca-web/files/config b/meta-eca/recipes-web/eca-web/files/config
new file mode 100644
index 0000000..007e095
--- /dev/null
+++ b/meta-eca/recipes-web/eca-web/files/config
@@ -0,0 +1,4 @@
1# Configuration options for eca web UI
2
3# The port where the UI should be listening
4PORT=80
diff --git a/meta-eca/recipes-web/eca-web/files/eca-web.service b/meta-eca/recipes-web/eca-web/files/eca-web.service
new file mode 100644
index 0000000..5c9fdfb
--- /dev/null
+++ b/meta-eca/recipes-web/eca-web/files/eca-web.service
@@ -0,0 +1,12 @@
1[Unit]
2Description=Simple web UI for Embedded Connectivity Appliance
3After=syslog.target
4
5[Service]
6Type=simple
7EnvironmentFile=/etc/eca-web/config
8ExecStart=/opt/eca-web/start-eca-web $PORT
9Restart=on-failure
10
11[Install]
12WantedBy=multi-user.target
diff --git a/meta-eca/recipes-web/eca-web/files/start-eca-web b/meta-eca/recipes-web/eca-web/files/start-eca-web
new file mode 100755
index 0000000..95871cc
--- /dev/null
+++ b/meta-eca/recipes-web/eca-web/files/start-eca-web
@@ -0,0 +1,13 @@
1#!/bin/sh
2
3DIR=`dirname $0`
4
5if [ ! -f $DIR/eca.py ]; then
6 echo "$0: Cannot find $DIR/eca.py"
7 exit -1
8fi
9
10cd $DIR
11/usr/bin/env python $DIR/eca.py $@
12exit $?
13
diff --git a/meta-eca/recipes-web/webpy/webpy_0.37.bb b/meta-eca/recipes-web/webpy/webpy_0.37.bb
new file mode 100644
index 0000000..7ca73d5
--- /dev/null
+++ b/meta-eca/recipes-web/webpy/webpy_0.37.bb
@@ -0,0 +1,18 @@
1DESCRIPTION = "web.py: makes web apps"
2LICENSE = "BSD"
3LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=98bdd61465b0278f5e6b8e81a0c981f2"
4PR = "r0"
5
6# 0.37 tag
7SRCREV = "7a08b0636a15d592e0a04e7adabe48abdb262b0a"
8SRC_URI = "\
9 git://github.com/webpy/webpy.git \
10"
11S = "${WORKDIR}/git"
12
13inherit distutils
14
15RDEPENDS_${PN} = "\
16 python-netserver \
17 python-compiler \
18"
diff --git a/meta-iot/conf/layer.conf b/meta-iot/conf/layer.conf
new file mode 100644
index 0000000..b393f3d
--- /dev/null
+++ b/meta-iot/conf/layer.conf
@@ -0,0 +1,12 @@
1BBPATH ?= ""
2# We add conf directory to BBPATH
3BBPATH .= ":${LAYERDIR}"
4
5# We have a recipes directory containing .bb and .bbappend files, add to BBFILES
6BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \
7 ${LAYERDIR}/recipes-*/*/*.bbappend"
8
9BBFILE_COLLECTIONS += "iot"
10BBFILE_PATTERN_iot := "^${LAYERDIR}/"
11BBFILE_PRIORITY_iot = "7"
12
diff --git a/meta-iot/recipes-connectivity/avahi/avahi-daemon-init.bb b/meta-iot/recipes-connectivity/avahi/avahi-daemon-init.bb
new file mode 100644
index 0000000..767ba18
--- /dev/null
+++ b/meta-iot/recipes-connectivity/avahi/avahi-daemon-init.bb
@@ -0,0 +1,31 @@
1SUMMARY = "Initialization service for Avahi daemon"
2DESCRIPTION = "Initializes Avahi daemon service."
3
4LICENSE = "MIT"
5LIC_FILES_CHKSUM = "file://LICENSE.avahi-daemon-init;md5=2fe93140f8c4e56b56fbcd64730767a4"
6
7FILESEXTRAPATHS := "${THISDIR}/${PN}"
8SRC_URI = "\
9 file://avahi-daemon-init-settings.sh \
10 file://avahi-daemon-init.service \
11 file://LICENSE.avahi-daemon-init \
12"
13
14S = "${WORKDIR}"
15PR = "r2"
16
17inherit systemd
18SYSTEMD_PACKAGES = "${PN}"
19SYSTEMD_SERVICE_${PN} = " avahi-daemon-init.service"
20
21FILES_${PN} = "\
22 avahi-daemon-init.service \
23 ${bindir}/avahi-daemon-init-settings.sh \
24"
25
26do_install() {
27 install -d ${D}${bindir}
28 install -d ${D}${systemd_unitdir}/system
29 install -m 0755 ${WORKDIR}/avahi-daemon-init-settings.sh ${D}${bindir}/
30 install -m 0755 ${WORKDIR}/avahi-daemon-init.service ${D}${systemd_unitdir}/system
31}
diff --git a/meta-iot/recipes-connectivity/avahi/avahi-daemon-init/LICENSE.avahi-daemon-init b/meta-iot/recipes-connectivity/avahi/avahi-daemon-init/LICENSE.avahi-daemon-init
new file mode 100644
index 0000000..0388698
--- /dev/null
+++ b/meta-iot/recipes-connectivity/avahi/avahi-daemon-init/LICENSE.avahi-daemon-init
@@ -0,0 +1,9 @@
1# LICENSE
2
3[MIT](http://en.wikipedia.org/wiki/MIT_License) license. Freely have you received, freely give.
4
5Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6
7The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8
9THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/meta-iot/recipes-connectivity/avahi/avahi-daemon-init/avahi-daemon-init-settings.sh b/meta-iot/recipes-connectivity/avahi/avahi-daemon-init/avahi-daemon-init-settings.sh
new file mode 100755
index 0000000..3a12e9c
--- /dev/null
+++ b/meta-iot/recipes-connectivity/avahi/avahi-daemon-init/avahi-daemon-init-settings.sh
@@ -0,0 +1,20 @@
1#!/bin/sh
2
3KERNEL_VERSION=`uname -r | cut -d . -f 1-2`
4MAJOR=`echo $KERNEL_VERSION | cut -d . -f 1`
5MINOR=`echo $KERNEL_VERSION | cut -d . -f 2`
6
7if [ "${MAJOR}.`printf '%02d' $MINOR`" \< "3.09" ]; then
8 # avahi might not start because SO_REUSEPORT might be missing during
9 # runtime. The symbol is only available from kernel 3.9 onwards.
10 AVAHI_CONF=/etc/avahi/avahi-daemon.conf
11 if [ -f $AVAHI_CONF ]; then
12 sed -i -e "s|^#disallow-other-stacks=.*|disallow-other-stacks=yes|" $AVAHI_CONF
13 else
14 echo "[server]" > $AVAHI_CONF
15 echo "disallow-other-stacks=yes" >> $AVAHI_CONF
16 fi
17fi
18
19exit 0
20
diff --git a/meta-iot/recipes-connectivity/avahi/avahi-daemon-init/avahi-daemon-init.service b/meta-iot/recipes-connectivity/avahi/avahi-daemon-init/avahi-daemon-init.service
new file mode 100644
index 0000000..78b3ab3
--- /dev/null
+++ b/meta-iot/recipes-connectivity/avahi/avahi-daemon-init/avahi-daemon-init.service
@@ -0,0 +1,12 @@
1[Unit]
2Description=Initialize avahi-daemon settings
3After=syslog.target
4Before=avahi-daemon.service
5
6[Service]
7Type=oneshot
8ExecStart=-/usr/bin/avahi-daemon-init-settings.sh
9StandardOutput=null
10
11[Install]
12WantedBy=steward.service
diff --git a/meta-iot/recipes-connectivity/avahi/avahi_0.6.31.bbappend b/meta-iot/recipes-connectivity/avahi/avahi_0.6.31.bbappend
new file mode 100644
index 0000000..bff31b6
--- /dev/null
+++ b/meta-iot/recipes-connectivity/avahi/avahi_0.6.31.bbappend
@@ -0,0 +1,10 @@
1# TheThingSystem steward needs avahi compat headers
2EXTRA_OECONF += "\
3 --enable-compat-libdns_sd \
4"
5
6# node.js npm needs dns_sd.h but it's components do not search
7# the header from correct place
8do_install_append() {
9 cp ${D}/usr/include/avahi-compat-libdns_sd/dns_sd.h ${D}/usr/include/dns_sd.h
10}
diff --git a/meta-iot/recipes-web/the-thing-system/steward-init.bb b/meta-iot/recipes-web/the-thing-system/steward-init.bb
new file mode 100644
index 0000000..3f58251
--- /dev/null
+++ b/meta-iot/recipes-web/the-thing-system/steward-init.bb
@@ -0,0 +1,40 @@
1SUMMARY = "Initialization service for TheThingSystem steward"
2DESCRIPTION = "Initializes TheThingSystem steward services."
3
4LICENSE = "MIT"
5LIC_FILES_CHKSUM = "file://LICENSE.steward-init;md5=2fe93140f8c4e56b56fbcd64730767a4"
6
7SRC_URI = "\
8 file://steward-init-settings.sh \
9 file://steward-init.service.in \
10 file://LICENSE.steward-init \
11"
12
13S = "${WORKDIR}"
14PR = "r2"
15
16THE_THING_SYSTEM ?= "/opt/TheThingSystem"
17
18inherit systemd
19SYSTEMD_PACKAGES = "${PN}"
20SYSTEMD_SERVICE_${PN} = "steward-init.service"
21
22FILES_${PN} = "\
23 ${THE_THING_SYSTEM}/steward/* \
24 ${sysconfdir}/TheThingSystem/* \
25"
26
27do_install() {
28 install -d ${D}${THE_THING_SYSTEM}/steward
29 install -d ${D}${systemd_unitdir}/system
30 install -m 0755 ${WORKDIR}/steward-init-settings.sh ${D}${THE_THING_SYSTEM}/steward
31
32 sed 's,@the_thing_system_dir@,${THE_THING_SYSTEM},g' < ${WORKDIR}/steward-init.service.in \
33 > ${D}${systemd_unitdir}/system/steward-init.service
34
35 install -d ${D}/etc/TheThingSystem
36 echo "# Configuration options for TheThingSystem/steward" > ${D}/etc/TheThingSystem/config
37 echo "# Generated `date`" >> ${D}/etc/TheThingSystem/config
38 echo "THE_THING_SYSTEM=${THE_THING_SYSTEM}" >> ${D}/etc/TheThingSystem/config
39 echo "NODE_PATH=${THE_THING_SYSTEM}/steward" >> ${D}/etc/TheThingSystem/config
40}
diff --git a/meta-iot/recipes-web/the-thing-system/steward-init/LICENSE.steward-init b/meta-iot/recipes-web/the-thing-system/steward-init/LICENSE.steward-init
new file mode 100644
index 0000000..0388698
--- /dev/null
+++ b/meta-iot/recipes-web/the-thing-system/steward-init/LICENSE.steward-init
@@ -0,0 +1,9 @@
1# LICENSE
2
3[MIT](http://en.wikipedia.org/wiki/MIT_License) license. Freely have you received, freely give.
4
5Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the 'Software'), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6
7The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8
9THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/meta-iot/recipes-web/the-thing-system/steward-init/steward-init-settings.sh b/meta-iot/recipes-web/the-thing-system/steward-init/steward-init-settings.sh
new file mode 100755
index 0000000..40f75ee
--- /dev/null
+++ b/meta-iot/recipes-web/the-thing-system/steward-init/steward-init-settings.sh
@@ -0,0 +1,62 @@
1#!/bin/sh
2
3if [ -z "$THE_THING_SYSTEM" ]; then
4 THE_THING_SYSTEM=/opt/TheThingSystem
5 export THE_THING_SYSTEM
6fi
7
8STEWARD_DIR=${THE_THING_SYSTEM}/steward
9STEWARD_SETTINGS=$STEWARD_DIR/db/server.key
10
11RET=0
12
13if [ -s $STEWARD_SETTINGS ]; then
14 exit 0
15fi
16
17# Change the port of the eca-web so that steward web-ui can live in
18# port 80. Eca-web will be moved to HTTP port 8080.
19sed -i 's/PORT=80$/PORT=8080/' /etc/eca-web/config
20
21if [ ! -d $STEWARD_DIR/sandbox ]; then
22 mkdir -p $STEWARD_DIR/sandbox
23fi
24if [ ! -d $STEWARD_DIR/db ]; then
25 mkdir -p $STEWARD_DIR/db
26fi
27
28if [ -z "$NODE_PATH" ]; then
29 NODE_PATH=${THE_THING_SYSTEM}/steward
30 export NODE_PATH
31fi
32
33cd $THE_THING_SYSTEM/steward
34
35echo -n "Creating server key..."
36rm -f ${STEWARD_DIR}/sandbox/server.crt ${STEWARD_DIR}/sandbox/server.sha1
37
38node <<EOF
39require('x509-keygen').x509_keygen({ subject : '/CN=steward'
40 , keyfile : '${STEWARD_DIR}/db/server.key'
41 , certfile : '${STEWARD_DIR}/sandbox/server.crt'
42 , sha1file : '${STEWARD_DIR}/sandbox/server.sha1'
43 , alternates : [ 'DNS:' + require('os').hostname(), 'DNS:eca.local' ]
44 , destroy : false }, function(err, data) {
45 if (err) return console.log('keypair generation error: ' + err.message);
46
47 console.log('keypair generated.');
48});
49EOF
50
51if [ -f ${STEWARD_DIR}/db/server.key ]; then
52 chmod 400 ${STEWARD_DIR}/db/server.key
53 chmod 444 ${STEWARD_DIR}/sandbox/server.crt
54 chmod 444 ${STEWARD_DIR}/sandbox/server.sha1
55else
56 rm -f ${STEWARD_DIR}/db/server.key ${STEWARD_DIR}/sandbox/server.crt \
57 ${STEWARD_DIR}/sandbox/server.sha1
58 echo "unable to create self-signed server certificate" 1>&2
59 RET=1
60fi
61
62exit $RET
diff --git a/meta-iot/recipes-web/the-thing-system/steward-init/steward-init.service.in b/meta-iot/recipes-web/the-thing-system/steward-init/steward-init.service.in
new file mode 100644
index 0000000..feed7f5
--- /dev/null
+++ b/meta-iot/recipes-web/the-thing-system/steward-init/steward-init.service.in
@@ -0,0 +1,14 @@
1[Unit]
2Description=Initialize TheThingSystem steward settings
3After=syslog.target
4Before=eca-web.service
5ConditionFileNotEmpty=!@the_thing_system_dir@/steward/db/server.key
6
7[Service]
8Type=oneshot
9EnvironmentFile=-/etc/TheThingSystem/config
10ExecStart=-@the_thing_system_dir@/steward/steward-init-settings.sh
11StandardOutput=null
12
13[Install]
14WantedBy=steward.service
diff --git a/meta-iot/recipes-web/the-thing-system/steward/npm-setup-proxies.example b/meta-iot/recipes-web/the-thing-system/steward/npm-setup-proxies.example
new file mode 100644
index 0000000..e52bf27
--- /dev/null
+++ b/meta-iot/recipes-web/the-thing-system/steward/npm-setup-proxies.example
@@ -0,0 +1,5 @@
1#!/bin/sh
2
3# Setup proxies
4npm config set proxy http://proxy.example.com:8080
5npm config set https-proxy http://proxy.example.com:8080
diff --git a/meta-iot/recipes-web/the-thing-system/steward/package.json b/meta-iot/recipes-web/the-thing-system/steward/package.json
new file mode 100644
index 0000000..ff865f2
--- /dev/null
+++ b/meta-iot/recipes-web/the-thing-system/steward/package.json
@@ -0,0 +1,90 @@
1{ "name" : "node-steward"
2 , "readmeFilename" : "README.md"
3 , "version" : "1.5.1"
4 , "private" : true
5 , "engines" :
6 { "node" : ">=0.10.22"
7 }
8 , "license" : "MIT"
9 , "dependencies" :
10 { "MD5" : "1.0.3"
11 , "aerogel" : "git://github.com/TheThingSystem/aerogel.git"
12 , "airplay" : "git://github.com/TheThingSystem/node-airplay.git"
13 , "arp-a" : "0.3.0"
14 , "async" : "0.2.9"
15 , "axiscam" : "0.0.4"
16 , "automatic-api" : "0.9.3"
17 , "avahi_pub" : "git://github.com/TheThingSystem/node_avahi_pub.git"
18 , "blinkstick" : "git://github.com/TheThingSystem/blinkstick-node.git"
19 , "color-convert" : "0.3.1"
20 , "colors" : "0.6.2"
21 , "cosm" : "git://github.com/TheThingSystem/node-cosm.git"
22 , "cron-parser" : "git://github.com/TheThingSystem/node-cron-parser.git"
23 , "cycle" : "1.0.2"
24 , "eureka-dongle" : "0.1.0"
25 , "flower-power-cloud" : "0.2.0"
26 , "geocoder" : "0.1.0"
27 , "greenwave-gop" : "0.0.2"
28 , "grovestreams-api" : "0.2.3"
29 , "irobot" : "git://github.com/TheThingSystem/irobot.git"
30 , "json-stringify-safe" : "4.0.0"
31 , "koubachi" : "0.0.4"
32 , "lifx" : "git://github.com/TheThingSystem/lifxjs.git"
33 , "line-reader" : "0.2.3"
34 , "lockitron-api" : "0.3.1"
35 , "longjohn" : "0.2.0"
36 , "lumen" : "git://github.com/TheThingSystem/node-lumen.git"
37 , "mdns" : "git://github.com/TheThingSystem/node_mdns.git"
38 , "mime" : "1.2.9"
39 , "mqtt" : "git://github.com/TheThingSystem/MQTT.js.git"
40 , "netmask" : "1.0.4"
41 , "noble" : "git://github.com/jukkar/noble.git"
42 , "node-blink1" : "0.1.0"
43 , "node-cassandra-cql" : "git://github.com/TheThingSystem/node-cassandra-cql.git"
44 , "node-dweetio" : "0.0.8"
45 , "node-hid" : "0.2.3"
46 , "node-lsof" : "git://github.com/TheThingSystem/node-lsof.git"
47 , "node-netatmo" : "git://github.com/TheThingSystem/node-netatmo.git"
48 , "notify-my-android" : "0.0.1"
49 , "node-prowl" : "git://github.com/TheThingSystem/node-prowl.git"
50 , "node-ssdp" : "git://github.com/TheThingSystem/node-ssdp.git"
51 , "node-ssh-fingerprint" : "git://github.com/TheThingSystem/node-ssh-fingerprint.git"
52 , "node-uuid" : "1.4.0"
53 , "node-winkapi" : "0.1.2"
54 , "observer" : "1.1.0"
55 , "openzwave" : "0.0.32"
56 , "pcap" : "1.2.0"
57 , "pkginfo" : "0.3.0"
58 , "pixelpusher" : "0.1.1"
59 , "polyline-encoded" : "0.0.4"
60 , "portfinder" : "0.2.1"
61 , "rfxcom" : "git://github.com/TheThingSystem/node-rfxcom.git"
62 , "robosmart" : "0.1.1"
63 , "roku" : "0.2.0"
64 , "samsung-airconditioner" : "git://github.com/TheThingSystem/node-samsung-airconditioner.git"
65 , "sensortag" : "git://github.com/sandeepmistry/node-sensortag.git"
66 , "serialport" : "~1.1.0"
67 , "soap" : "0.2.7"
68 , "sonos" : "git://github.com/TheThingSystem/node-sonos.git"
69 , "speakeasy" : "git://github.com/TheThingSystem/speakeasy.git"
70 , "sqlite3" : "2.1.7"
71 , "ssh-keygen" : "git://github.com/TheThingSystem/ssh-keygen.git"
72 , "stack-trace" : "0.0.6"
73 , "suncalc" : "1.2.1"
74 , "teslams" : "0.8.6"
75 , "underscore" : "1.5.1"
76 , "unofficial-nest-api" : "git://github.com/TheThingSystem/unofficial_nodejs_nest.git"
77 , "validator" : "1.1.3"
78 , "wake_on_lan" : "0.0.3"
79 , "winston" : "0.6.2"
80 , "ws" : "git://github.com/TheThingSystem/ws.git"
81 , "x509-keygen" : "0.2.2"
82 , "xml2js" : "0.2.7"
83 , "xml2json" : "0.3.2"
84 , "xmlbuilder" : "0.4.x"
85 , "xmldom" : "0.1.x"
86 , "xmlhttprequest" : "git://github.com/TheThingSystem/node-XMLHttpRequest.git"
87 , "yoctolib" : "git://github.com/TheThingSystem/yoctolib_nodejs.git"
88 , "yql" : "git://github.com/TheThingSystem/node-yql.git"
89 }
90}
diff --git a/meta-iot/recipes-web/the-thing-system/steward/server.js.in b/meta-iot/recipes-web/the-thing-system/steward/server.js.in
new file mode 100644
index 0000000..32f6b82
--- /dev/null
+++ b/meta-iot/recipes-web/the-thing-system/steward/server.js.in
@@ -0,0 +1,3 @@
1require('@the_thing_system_dir@/steward/core/utility').start();
2require('@the_thing_system_dir@/steward/core/database').start();
3require('@the_thing_system_dir@/steward/core/steward').start();
diff --git a/meta-iot/recipes-web/the-thing-system/steward/start-steward b/meta-iot/recipes-web/the-thing-system/steward/start-steward
new file mode 100755
index 0000000..1022656
--- /dev/null
+++ b/meta-iot/recipes-web/the-thing-system/steward/start-steward
@@ -0,0 +1,22 @@
1#!/bin/sh
2
3DIR=`dirname $0`
4
5if [ ! -f $DIR/server.js ]; then
6 echo "$0: Cannot find $DIR/server.js"
7 exit -1
8fi
9
10if [ -z "$THE_THING_SYSTEM" ]; then
11 THE_THING_SYSTEM=/opt/TheThingSystem
12 export THE_THING_SYSTEM
13fi
14
15if [ -z "$NODE_PATH" ]; then
16 NODE_PATH=${THE_THING_SYSTEM}/steward
17 export NODE_PATH
18fi
19
20cd $DIR
21node $DIR/server.js $@
22exit $?
diff --git a/meta-iot/recipes-web/the-thing-system/steward/start-steward.debug b/meta-iot/recipes-web/the-thing-system/steward/start-steward.debug
new file mode 100755
index 0000000..12c89dc
--- /dev/null
+++ b/meta-iot/recipes-web/the-thing-system/steward/start-steward.debug
@@ -0,0 +1,22 @@
1#!/bin/sh
2
3DIR=`dirname $0`
4
5if [ ! -f $DIR/server.js ]; then
6 echo "$0: Cannot find $DIR/server.js"
7 exit -1
8fi
9
10if [ -z "$THE_THING_SYSTEM" ]; then
11 THE_THING_SYSTEM=/opt/TheThingSystem
12 export THE_THING_SYSTEM
13fi
14
15if [ -z "$NODE_PATH" ]; then
16 NODE_PATH=${THE_THING_SYSTEM}/steward
17 export NODE_PATH
18fi
19
20cd $DIR
21DEBUG=hci-ble node $DIR/server.js $@
22exit $?
diff --git a/meta-iot/recipes-web/the-thing-system/steward/steward.service.in b/meta-iot/recipes-web/the-thing-system/steward/steward.service.in
new file mode 100644
index 0000000..894f29a
--- /dev/null
+++ b/meta-iot/recipes-web/the-thing-system/steward/steward.service.in
@@ -0,0 +1,12 @@
1[Unit]
2Description=Steward for TheThingSystem
3After=steward-init.service
4
5[Service]
6Type=simple
7EnvironmentFile=-/etc/TheThingSystem/config
8ExecStart=@the_thing_system_dir@/steward/start-steward
9Restart=on-failure
10
11[Install]
12WantedBy=multi-user.target
diff --git a/meta-iot/recipes-web/the-thing-system/steward_git.bb b/meta-iot/recipes-web/the-thing-system/steward_git.bb
new file mode 100644
index 0000000..616435c
--- /dev/null
+++ b/meta-iot/recipes-web/the-thing-system/steward_git.bb
@@ -0,0 +1,131 @@
1DESCRIPTION = "The Thing System steward"
2LICENSE = "MIT"
3LIC_FILES_CHKSUM = "file://LICENSE.md;md5=2fe93140f8c4e56b56fbcd64730767a4"
4
5SRC_URI = "\
6 git://github.com/TheThingSystem/steward.git \
7 file://steward.service.in \
8 file://start-steward \
9 file://start-steward.debug \
10 file://server.js.in \
11 file://package.json \
12"
13
14SRCREV = "cc38554aea4bdebcf55d11ca516711abbfc7ec73"
15S = "${WORKDIR}/git"
16PR = "r9"
17PV = "1.7+git${SRCPV}"
18
19DEPENDS = "tts-nodejs-native"
20DEPENDS_${PN} = "\
21 libdns-sd-dev \
22 libpcap-dev \
23 libusb1 \
24 libbluetooth-dev \
25 ${@base_contains('DISTRO_FEATURES', 'systemd', 'systemd-dev', 'libudev-dev', d)} \
26"
27
28THE_THING_SYSTEM ?= "/opt/TheThingSystem"
29
30inherit systemd
31
32SYSTEMD_PACKAGES = "${PN}"
33SYSTEMD_SERVICE_${PN} = "steward.service"
34
35FILES_${PN} = "\
36 ${THE_THING_SYSTEM}/* \
37 ${libdir} \
38"
39
40FILES_${PN}-dbg += "\
41 ${THE_THING_SYSTEM}/steward/*/*/*/.debug \
42 ${THE_THING_SYSTEM}/steward/*/*/*/*/.debug \
43 ${THE_THING_SYSTEM}/steward/*/*/*/*/*/.debug \
44 ${THE_THING_SYSTEM}/steward/*/*/*/*/*/*/.debug \
45 ${THE_THING_SYSTEM}/steward/*/*/*/*/*/*/*/.debug \
46 ${THE_THING_SYSTEM}/steward/*/*/*/*/*/*/*/*/.debug \
47 ${THE_THING_SYSTEM}/steward/*/*/*/*/*/*/*/*/*/.debug \
48"
49
50RDEPENDS_${PN} = "openssl tts-nodejs steward-init ruby"
51
52def get_arch(bb, d):
53 val = (bb.data.getVar("MACHINEOVERRIDES", d) or "")
54 if val.find("genericx86") > 0:
55 return "--arch=i686"
56 elif val.find("x86") > 0:
57 return "--arch=i686"
58 elif val.find("arm") > 0:
59 return "--arch=arm"
60 else:
61 return ""
62
63# Always compile 32-bit in npm because many modules that npm
64# compiles do not support 64 bit in x86.
65TTS_ARCH := "${@get_arch(bb, d)}"
66
67do_install_append() {
68 # Some python issue prevents installation if the current
69 # user id is not in sysroots /etc/passwd file. So add user
70 # information there (this is actually quite ugly hack)
71 # See http://bugs.python.org/issue10496 for details.
72 PASSLINE=`grep \`echo ${HOME}|cut -d / -f 3\` /etc/passwd`; \
73 grep "'${PASSLINE}'" ${PKG_CONFIG_SYSROOT_DIR}/etc/passwd || \
74 echo "${PASSLINE}" >> ${PKG_CONFIG_SYSROOT_DIR}/etc/passwd
75
76 install -d ${D}${THE_THING_SYSTEM}/steward
77 install -d ${D}${systemd_unitdir}/system
78 install -m 0755 ${WORKDIR}/start-steward ${D}${THE_THING_SYSTEM}/steward
79 install -m 0755 ${WORKDIR}/start-steward.debug ${D}${THE_THING_SYSTEM}/steward
80
81 sed 's,@the_thing_system_dir@,${THE_THING_SYSTEM},g' \
82 < ${WORKDIR}/steward.service.in \
83 > ${D}${systemd_unitdir}/system/steward.service
84 sed 's,@the_thing_system_dir@,${THE_THING_SYSTEM},g' \
85 < ${WORKDIR}/server.js.in \
86 > ${D}${THE_THING_SYSTEM}/steward/server.js
87
88 cp -pR ${S}/steward/* ${D}${THE_THING_SYSTEM}/steward/
89 install -m 0644 ${WORKDIR}/package.json ${D}${THE_THING_SYSTEM}/steward
90 rm -rf ${D}${THE_THING_SYSTEM}/steward/sandbox/js-beautify-master/tests
91 rm ${D}${THE_THING_SYSTEM}/steward/run.sh
92 find ${D}${THE_THING_SYSTEM} -name .gitignore -exec rm '{}' \;
93
94 # Setup the node.js environment
95 cd ${D}${THE_THING_SYSTEM}/steward
96
97 # There seems to be some issues (npm hanging) if you try to run
98 # install when behind the proxy. So we try to setup proxies for npm
99 # See README.iot file for details.
100 if [ -x ~/npm-setup-proxies ]; then ~/npm-setup-proxies; fi
101
102 # Cleaning cache should help to some weird compilation errors
103 npm cache clean
104
105 # Do a fresh start
106 rm -rf node_modules
107
108 # Telling npm to use known registrars will prevent this error
109 # | npm ERR! Error: SSL Error: SELF_SIGNED_CERT_IN_CHAIN
110 # when running npm
111 npm config set ca ""
112
113 # Some of the node.js packages put -pthreads into ld params and ld
114 # does not understand it. So install packages using gcc as a linker.
115 LD=${TARGET_PREFIX}gcc npm install --production -l ${TTS_ARCH}
116
117 # No need for static libraries
118 find ${D}${THE_THING_SYSTEM} -name '*.a' -exec rm '{}' \;
119
120 # Remove not used files
121 rm -rf ${D}${THE_THING_SYSTEM}/steward/node_modules/xml2js/node_modules/sax/examples
122 rm -rf ${D}${THE_THING_SYSTEM}/steward/node_modules/openzwave/deps/open-zwave/debian
123
124 # Remove some garbage files that prevent image creation
125 rm -f ${D}${THE_THING_SYSTEM}/steward/node_modules/pcap/*%*
126
127 # Blinkstick does not load in this version so just remove it
128 rm -rf ${D}${THE_THING_SYSTEM}/steward/node_modules/blinkstick
129 rm -rf ${D}${THE_THING_SYSTEM}/steward/devices/devices-lighting/lighting-blinkstick-led.js
130
131}
diff --git a/meta-iot/recipes-web/the-thing-system/tts-nodejs_git.bb b/meta-iot/recipes-web/the-thing-system/tts-nodejs_git.bb
new file mode 100644
index 0000000..813526e
--- /dev/null
+++ b/meta-iot/recipes-web/the-thing-system/tts-nodejs_git.bb
@@ -0,0 +1,49 @@
1DESCRIPTION = "Node.js is a server-side JavaScript environment for TheThingSystem"
2LICENSE = "MIT & BSD"
3LIC_FILES_CHKSUM = "file://LICENSE;md5=4a31e6c424761191227143b86f58a1ef"
4
5S = "${WORKDIR}/git"
6SRCREV = "cc56c62ed879ad4f93b1fdab3235c43e60f48b7e"
7PV = "0.10.26"
8
9SRC_URI = "\
10 git://github.com/joyent/node.git;branch=v0.10.26-release \
11"
12
13THE_THING_SYSTEM ?= "/opt/TheThingSystem"
14
15DEPENDS = "openssl ninja-native"
16
17# v8 errors out if you have set CCACHE
18CCACHE = ""
19
20ARCHFLAGS_arm = "${@bb.utils.contains('TUNE_FEATURES', 'callconvention-hard',\
21 '--with-arm-float-abi=hard', '--with-arm-float-abi=softfp', d)}"
22ARCHFLAGS ?= ""
23
24do_configure() {
25 export LD="${CXX}"
26 ./configure --ninja --prefix=${prefix} --without-snapshot ${ARCHFLAGS}
27}
28
29do_compile() {
30 export LD="${CXX}"
31 make BUILDTYPE=Release
32}
33
34do_install() {
35 oe_runmake install DESTDIR=${D}
36}
37
38FILES_${PN} = "\
39 ${libdir} \
40 ${bindir} \
41"
42
43RDEPENDS_${PN} = "curl python-shell python-datetime python-subprocess \
44 python-crypt python-textutils python-netclient \
45 python-misc python-multiprocessing \
46"
47RDEPENDS_${PN}_class-native = ""
48
49BBCLASSEXTEND = "native"