diff --git a/buildroot-external/Config.in b/buildroot-external/Config.in index c6cc1b29..9bbb73eb 100644 --- a/buildroot-external/Config.in +++ b/buildroot-external/Config.in @@ -1,6 +1,7 @@ -menu "Additional libraries and applications" +menu "Additional drivers, libraries and/or applications" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/fann/Config.in" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/nodogsplash/Config.in" + source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/respeaker/Config.in" endmenu menu "Additional external python modules" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/python-adapt-parser/Config.in" diff --git a/buildroot-external/board/raspberrypi/config.txt b/buildroot-external/board/raspberrypi/config.txt index a14eb61f..451af7e9 100644 --- a/buildroot-external/board/raspberrypi/config.txt +++ b/buildroot-external/board/raspberrypi/config.txt @@ -11,7 +11,12 @@ kernel=zImage # Disable overscan assuming the display supports displaying the full resolution # If the text shown on the screen disappears off the edge, comment this out -# disable_overscan=1 +disable_overscan=1 +hdmi_group=1 +hdmi_mode=4 + +# uncomment if you get no picture on HDMI for a default "safe" mode +# hdmi_safe=1 # How much memory in MB to assign to the GPU on Pi models having # 256, 512 or 1024 MB total memory @@ -24,3 +29,8 @@ dtparam=audio=on # Disable rainbow color splash disable_splash=1 + +# Enable some optional hardware interfaces +dtparam=i2c_arm=on +dtoverlay=i2s-mmap +dtparam=i2s=on diff --git a/buildroot-external/busybox.config b/buildroot-external/busybox.config index 38de13d4..ed4f5a09 100644 --- a/buildroot-external/busybox.config +++ b/buildroot-external/busybox.config @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# Busybox version: 1.28.0 -# Wed Feb 7 09:44:57 2018 +# Busybox version: 1.29.2 +# Sun Nov 4 13:10:23 2018 # CONFIG_HAVE_DOT_CONFIG=y @@ -21,8 +21,8 @@ CONFIG_LFS=y CONFIG_FEATURE_DEVPTS=y CONFIG_FEATURE_UTMP=y CONFIG_FEATURE_WTMP=y -# CONFIG_FEATURE_PIDFILE is not set -CONFIG_PID_FILE_PATH="" +CONFIG_FEATURE_PIDFILE=y +CONFIG_PID_FILE_PATH="/var/run" CONFIG_BUSYBOX=y CONFIG_FEATURE_INSTALLER=y # CONFIG_INSTALL_NO_USR is not set @@ -42,9 +42,9 @@ CONFIG_PLATFORM_LINUX=y # CONFIG_STATIC is not set # CONFIG_PIE is not set # CONFIG_NOMMU is not set -# CONFIG_BUILD_LIBBUSYBOX is not set +CONFIG_BUILD_LIBBUSYBOX=y # CONFIG_FEATURE_LIBBUSYBOX_STATIC is not set -# CONFIG_FEATURE_INDIVIDUAL is not set +CONFIG_FEATURE_INDIVIDUAL=y # CONFIG_FEATURE_SHARED_BUSYBOX is not set CONFIG_CROSS_COMPILER_PREFIX="" CONFIG_SYSROOT="" @@ -52,6 +52,7 @@ CONFIG_EXTRA_CFLAGS="" CONFIG_EXTRA_LDFLAGS="" CONFIG_EXTRA_LDLIBS="" # CONFIG_USE_PORTABLE_CODE is not set +CONFIG_STACK_OPTIMIZATION_386=y # # Installation Options ("make install" behavior) @@ -90,6 +91,7 @@ CONFIG_MD5_SMALL=1 CONFIG_SHA3_SMALL=1 # CONFIG_FEATURE_FAST_TOP is not set # CONFIG_FEATURE_ETC_NETWORKS is not set +# CONFIG_FEATURE_ETC_SERVICES is not set CONFIG_FEATURE_EDITING=y CONFIG_FEATURE_EDITING_MAX_LEN=1024 CONFIG_FEATURE_EDITING_VI=y @@ -100,15 +102,16 @@ CONFIG_FEATURE_REVERSE_SEARCH=y CONFIG_FEATURE_TAB_COMPLETION=y # CONFIG_FEATURE_USERNAME_COMPLETION is not set CONFIG_FEATURE_EDITING_FANCY_PROMPT=y +CONFIG_FEATURE_EDITING_WINCH=y # CONFIG_FEATURE_EDITING_ASK_TERMINAL is not set -# CONFIG_LOCALE_SUPPORT is not set -# CONFIG_UNICODE_SUPPORT is not set +CONFIG_LOCALE_SUPPORT=y +CONFIG_UNICODE_SUPPORT=y # CONFIG_UNICODE_USING_LOCALE is not set -# CONFIG_FEATURE_CHECK_UNICODE_IN_ENV is not set -CONFIG_SUBST_WCHAR=0 -CONFIG_LAST_SUPPORTED_WCHAR=0 -# CONFIG_UNICODE_COMBINING_WCHARS is not set -# CONFIG_UNICODE_WIDE_WCHARS is not set +CONFIG_FEATURE_CHECK_UNICODE_IN_ENV=y +CONFIG_SUBST_WCHAR=63 +CONFIG_LAST_SUPPORTED_WCHAR=767 +CONFIG_UNICODE_COMBINING_WCHARS=y +CONFIG_UNICODE_WIDE_WCHARS=y # CONFIG_UNICODE_BIDI_SUPPORT is not set # CONFIG_UNICODE_NEUTRAL_TABLE is not set # CONFIG_UNICODE_PRESERVE_BROKEN is not set @@ -128,11 +131,11 @@ CONFIG_FEATURE_HWIB=y # # Archival Utilities # -# CONFIG_FEATURE_SEAMLESS_XZ is not set -# CONFIG_FEATURE_SEAMLESS_LZMA is not set -# CONFIG_FEATURE_SEAMLESS_BZ2 is not set -# CONFIG_FEATURE_SEAMLESS_GZ is not set -# CONFIG_FEATURE_SEAMLESS_Z is not set +CONFIG_FEATURE_SEAMLESS_XZ=y +CONFIG_FEATURE_SEAMLESS_LZMA=y +CONFIG_FEATURE_SEAMLESS_BZ2=y +CONFIG_FEATURE_SEAMLESS_GZ=y +CONFIG_FEATURE_SEAMLESS_Z=y CONFIG_AR=y # CONFIG_FEATURE_AR_LONG_FILENAMES is not set CONFIG_FEATURE_AR_CREATE=y @@ -149,6 +152,7 @@ CONFIG_UNXZ=y CONFIG_XZCAT=y CONFIG_XZ=y # CONFIG_BZIP2 is not set +CONFIG_BZIP2_SMALL=0 CONFIG_FEATURE_BZIP2_DECOMPRESS=y CONFIG_CPIO=y # CONFIG_FEATURE_CPIO_O is not set @@ -160,7 +164,7 @@ CONFIG_GZIP=y CONFIG_GZIP_FAST=0 # CONFIG_FEATURE_GZIP_LEVELS is not set CONFIG_FEATURE_GZIP_DECOMPRESS=y -# CONFIG_LZOP is not set +CONFIG_LZOP=y CONFIG_UNLZOP=y CONFIG_LZOPCAT=y # CONFIG_LZOP_COMPR_HIGH is not set @@ -169,7 +173,7 @@ CONFIG_LZOPCAT=y CONFIG_TAR=y CONFIG_FEATURE_TAR_LONG_OPTIONS=y CONFIG_FEATURE_TAR_CREATE=y -# CONFIG_FEATURE_TAR_AUTODETECT is not set +CONFIG_FEATURE_TAR_AUTODETECT=y CONFIG_FEATURE_TAR_FROM=y # CONFIG_FEATURE_TAR_OLDGNU_COMPATIBILITY is not set # CONFIG_FEATURE_TAR_OLDSUN_COMPATIBILITY is not set @@ -183,7 +187,7 @@ CONFIG_FEATURE_UNZIP_CDF=y CONFIG_FEATURE_UNZIP_BZIP2=y CONFIG_FEATURE_UNZIP_LZMA=y CONFIG_FEATURE_UNZIP_XZ=y -# CONFIG_FEATURE_LZMA_FAST is not set +CONFIG_FEATURE_LZMA_FAST=y # # Coreutils @@ -228,7 +232,7 @@ CONFIG_EXPR_MATH_SUPPORT_64=y CONFIG_FACTOR=y CONFIG_FALSE=y CONFIG_FOLD=y -# CONFIG_FSYNC is not set +CONFIG_FSYNC=y CONFIG_HEAD=y CONFIG_FEATURE_FANCY_HEAD=y CONFIG_HOSTID=y @@ -286,6 +290,7 @@ CONFIG_FEATURE_FANCY_SLEEP=y CONFIG_FEATURE_FLOAT_SLEEP=y CONFIG_SORT=y CONFIG_FEATURE_SORT_BIG=y +# CONFIG_FEATURE_SORT_OPTIMIZE_MEMORY is not set # CONFIG_SPLIT is not set # CONFIG_FEATURE_SPLIT_FANCY is not set # CONFIG_STAT is not set @@ -477,6 +482,7 @@ CONFIG_FEATURE_XARGS_SUPPORT_ARGS_FILE=y CONFIG_HALT=y CONFIG_POWEROFF=y CONFIG_REBOOT=y +CONFIG_FEATURE_WAIT_FOR_INIT=y # CONFIG_FEATURE_CALL_TELINIT is not set CONFIG_TELINIT_PATH="" CONFIG_INIT=y @@ -536,19 +542,19 @@ CONFIG_VLOCK=y CONFIG_CHATTR=y CONFIG_FSCK=y CONFIG_LSATTR=y -# CONFIG_TUNE2FS is not set +CONFIG_TUNE2FS=y # # Linux Module Utilities # # CONFIG_MODPROBE_SMALL is not set -# CONFIG_DEPMOD is not set +CONFIG_DEPMOD=y CONFIG_INSMOD=y CONFIG_LSMOD=y CONFIG_FEATURE_LSMOD_PRETTY_2_6_OUTPUT=y -# CONFIG_MODINFO is not set +CONFIG_MODINFO=y CONFIG_MODPROBE=y -# CONFIG_FEATURE_MODPROBE_BLACKLIST is not set +CONFIG_FEATURE_MODPROBE_BLACKLIST=y CONFIG_RMMOD=y # @@ -627,16 +633,16 @@ CONFIG_FEATURE_MDEV_CONF=y CONFIG_FEATURE_MDEV_RENAME=y # CONFIG_FEATURE_MDEV_RENAME_REGEXP is not set CONFIG_FEATURE_MDEV_EXEC=y -# CONFIG_FEATURE_MDEV_LOAD_FIRMWARE is not set +CONFIG_FEATURE_MDEV_LOAD_FIRMWARE=y CONFIG_MESG=y CONFIG_FEATURE_MESG_ENABLE_ONLY_GROUP=y CONFIG_MKE2FS=y -# CONFIG_MKFS_EXT2 is not set +CONFIG_MKFS_EXT2=y # CONFIG_MKFS_MINIX is not set # CONFIG_FEATURE_MINIX2 is not set # CONFIG_MKFS_REISER is not set CONFIG_MKDOSFS=y -# CONFIG_MKFS_VFAT is not set +CONFIG_MKFS_VFAT=y CONFIG_MKSWAP=y # CONFIG_FEATURE_MKSWAP_UUID is not set CONFIG_MORE=y @@ -704,12 +710,13 @@ CONFIG_FEATURE_VOLUMEID_FAT=y # CONFIG_FEATURE_VOLUMEID_HFS is not set # CONFIG_FEATURE_VOLUMEID_ISO9660 is not set # CONFIG_FEATURE_VOLUMEID_JFS is not set +# CONFIG_FEATURE_VOLUMEID_LFS is not set # CONFIG_FEATURE_VOLUMEID_LINUXRAID is not set # CONFIG_FEATURE_VOLUMEID_LINUXSWAP is not set # CONFIG_FEATURE_VOLUMEID_LUKS is not set CONFIG_FEATURE_VOLUMEID_MINIX=y # CONFIG_FEATURE_VOLUMEID_NILFS is not set -# CONFIG_FEATURE_VOLUMEID_NTFS is not set +CONFIG_FEATURE_VOLUMEID_NTFS=y # CONFIG_FEATURE_VOLUMEID_OCFS2 is not set # CONFIG_FEATURE_VOLUMEID_REISERFS is not set # CONFIG_FEATURE_VOLUMEID_ROMFS is not set @@ -725,9 +732,9 @@ CONFIG_FEATURE_VOLUMEID_UBIFS=y # CONFIG_ADJTIMEX is not set # CONFIG_BBCONFIG is not set # CONFIG_FEATURE_COMPRESS_BBCONFIG is not set -# CONFIG_BEEP is not set -CONFIG_FEATURE_BEEP_FREQ=0 -CONFIG_FEATURE_BEEP_LENGTH_MS=0 +CONFIG_BEEP=y +CONFIG_FEATURE_BEEP_FREQ=4000 +CONFIG_FEATURE_BEEP_LENGTH_MS=30 # CONFIG_CHAT is not set # CONFIG_FEATURE_CHAT_NOFAIL is not set # CONFIG_FEATURE_CHAT_TTY_HIFI is not set @@ -751,7 +758,7 @@ CONFIG_DC=y # CONFIG_DEVFSD_VERBOSE is not set # CONFIG_FEATURE_DEVFS is not set CONFIG_DEVMEM=y -# CONFIG_FBSPLASH is not set +CONFIG_FBSPLASH=y # CONFIG_FLASHCP is not set # CONFIG_FLASH_ERASEALL is not set # CONFIG_FLASH_LOCK is not set @@ -780,6 +787,8 @@ CONFIG_FEATURE_LESS_REGEXP=y # CONFIG_FEATURE_LESS_ASK_TERMINAL is not set # CONFIG_FEATURE_LESS_DASHCMD is not set # CONFIG_FEATURE_LESS_LINENUMS is not set +# CONFIG_FEATURE_LESS_RAW is not set +# CONFIG_FEATURE_LESS_ENV is not set CONFIG_LSSCSI=y CONFIG_MAKEDEVS=y # CONFIG_FEATURE_MAKEDEVS_LEAF is not set @@ -792,7 +801,7 @@ CONFIG_MT=y CONFIG_PARTPROBE=y # CONFIG_RAIDAUTORUN is not set # CONFIG_READAHEAD is not set -# CONFIG_RFKILL is not set +CONFIG_RFKILL=y CONFIG_RUNLEVEL=y # CONFIG_RX is not set CONFIG_SETFATTR=y @@ -828,9 +837,9 @@ CONFIG_ETHER_WAKE=y # CONFIG_FEATURE_FTPD_WRITE is not set # CONFIG_FEATURE_FTPD_ACCEPT_BROKEN_LIST is not set # CONFIG_FEATURE_FTPD_AUTHENTICATION is not set -# CONFIG_FTPGET is not set -# CONFIG_FTPPUT is not set -# CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS is not set +CONFIG_FTPGET=y +CONFIG_FTPPUT=y +CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS=y CONFIG_HOSTNAME=y CONFIG_DNSDOMAINNAME=y # CONFIG_HTTPD is not set @@ -899,6 +908,8 @@ CONFIG_NETSTAT=y # CONFIG_FEATURE_NETSTAT_WIDE is not set # CONFIG_FEATURE_NETSTAT_PRG is not set CONFIG_NSLOOKUP=y +CONFIG_FEATURE_NSLOOKUP_BIG=y +CONFIG_FEATURE_NSLOOKUP_LONG_OPTIONS=y # CONFIG_NTPD is not set # CONFIG_FEATURE_NTPD_SERVER is not set # CONFIG_FEATURE_NTPD_CONF is not set @@ -909,6 +920,8 @@ CONFIG_FEATURE_FANCY_PING=y CONFIG_ROUTE=y # CONFIG_SLATTACH is not set # CONFIG_SSL_CLIENT is not set +CONFIG_TC=y +CONFIG_FEATURE_TC_INGRESS=y # CONFIG_TCPSVD is not set # CONFIG_UDPSVD is not set CONFIG_TELNET=y @@ -960,6 +973,7 @@ CONFIG_UDHCPC_DEFAULT_SCRIPT="/usr/share/udhcpc/default.script" # CONFIG_FEATURE_UDHCPC6_RFC3646 is not set # CONFIG_FEATURE_UDHCPC6_RFC4704 is not set # CONFIG_FEATURE_UDHCPC6_RFC4833 is not set +# CONFIG_FEATURE_UDHCPC6_RFC5970 is not set # # Common options for DHCP applets @@ -1001,8 +1015,8 @@ CONFIG_KILLALL5=y CONFIG_LSOF=y # CONFIG_MPSTAT is not set # CONFIG_NMETER is not set -# CONFIG_PGREP is not set -# CONFIG_PKILL is not set +CONFIG_PGREP=y +CONFIG_PKILL=y CONFIG_PIDOF=y CONFIG_FEATURE_PIDOF_SINGLE=y CONFIG_FEATURE_PIDOF_OMIT=y @@ -1046,6 +1060,7 @@ CONFIG_WATCH=y # CONFIG_SV is not set CONFIG_SV_DEFAULT_SERVICE_DIR="" CONFIG_SVC=y +CONFIG_SVOK=y # CONFIG_SVLOGD is not set # CONFIG_CHCON is not set # CONFIG_GETENFORCE is not set @@ -1071,9 +1086,11 @@ CONFIG_SH_IS_ASH=y # CONFIG_BASH_IS_HUSH is not set CONFIG_BASH_IS_NONE=y CONFIG_ASH=y -CONFIG_ASH_OPTIMIZE_FOR_SIZE=y +# CONFIG_ASH_OPTIMIZE_FOR_SIZE is not set CONFIG_ASH_INTERNAL_GLOB=y CONFIG_ASH_BASH_COMPAT=y +# CONFIG_ASH_BASH_SOURCE_CURDIR is not set +CONFIG_ASH_BASH_NOT_FOUND_HOOK=y CONFIG_ASH_JOB_CONTROL=y CONFIG_ASH_ALIAS=y CONFIG_ASH_RANDOM_SUPPORT=y @@ -1090,6 +1107,8 @@ CONFIG_ASH_CMDCMD=y # CONFIG_HUSH is not set # CONFIG_HUSH_BASH_COMPAT is not set # CONFIG_HUSH_BRACE_EXPANSION is not set +# CONFIG_HUSH_LINENO_VAR is not set +# CONFIG_HUSH_BASH_SOURCE_CURDIR is not set # CONFIG_HUSH_INTERACTIVE is not set # CONFIG_HUSH_SAVEHISTORY is not set # CONFIG_HUSH_JOB is not set @@ -1110,6 +1129,7 @@ CONFIG_ASH_CMDCMD=y # CONFIG_HUSH_READONLY is not set # CONFIG_HUSH_KILL is not set # CONFIG_HUSH_WAIT is not set +# CONFIG_HUSH_COMMAND is not set # CONFIG_HUSH_TRAP is not set # CONFIG_HUSH_TYPE is not set # CONFIG_HUSH_TIMES is not set diff --git a/buildroot-external/configs/mycroftos_rpi3_defconfig b/buildroot-external/configs/mycroftos_rpi3_defconfig index 165cbe73..e0a8b535 100644 --- a/buildroot-external/configs/mycroftos_rpi3_defconfig +++ b/buildroot-external/configs/mycroftos_rpi3_defconfig @@ -184,6 +184,7 @@ BR2_PACKAGE_HOST_GENIMAGE=y BR2_PACKAGE_HOST_MTOOLS=y BR2_PACKAGE_FANN=y BR2_PACKAGE_NODOGSPLASH=y +BR2_PACKAGE_RESPEAKER=y BR2_PACKAGE_PYTHON_ADAPT_PARSER=y BR2_PACKAGE_PYTHON_COVERALLS=y BR2_PACKAGE_PYTHON_DEPRECATED=y diff --git a/buildroot-external/package/python-mycroft/0002-Force-USER-config-path-to-root.patch b/buildroot-external/package/python-mycroft/0002-Force-USER-config-path-to-root.patch deleted file mode 100644 index bdead728..00000000 --- a/buildroot-external/package/python-mycroft/0002-Force-USER-config-path-to-root.patch +++ /dev/null @@ -1,23 +0,0 @@ -From 93b3e606dddd93e8346da265a1751ecb546c882b Mon Sep 17 00:00:00 2001 -From: Peter Steenbergen -Date: Sat, 13 Oct 2018 10:50:06 +0200 -Subject: [PATCH 1/1] Force USER config path. - ---- - mycroft/configuration/locations.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/mycroft/configuration/locations.py b/mycroft/configuration/locations.py -index 0759152f99..3666ac5dfa 100644 ---- a/mycroft/configuration/locations.py -+++ b/mycroft/configuration/locations.py -@@ -15,5 +15,5 @@ from os.path import join, dirname, expanduser - - DEFAULT_CONFIG = join(dirname(__file__), 'mycroft.conf') - SYSTEM_CONFIG = '/etc/mycroft/mycroft.conf' --USER_CONFIG = join(expanduser('~'), '.mycroft/mycroft.conf') -+USER_CONFIG = '/.mycroft/mycroft.conf' - REMOTE_CONFIG = "mycroft.ai" --- -2.11.0 - diff --git a/buildroot-external/package/python-mycroft/python-mycroft.hash b/buildroot-external/package/python-mycroft/python-mycroft.hash index 2115b79b..38794033 100644 --- a/buildroot-external/package/python-mycroft/python-mycroft.hash +++ b/buildroot-external/package/python-mycroft/python-mycroft.hash @@ -1,3 +1,4 @@ sha256 90255931a864a4abe30f28c470009cf798dc72221cab16ba41712d80b19e28e4 python-mycroft-v18.8.1.tar.gz sha256 af18bd9ee1c6e3bbc6b424af39b352179d05fc337d04573eadba37b01f7105f6 python-mycroft-v18.8.2.tar.gz sha256 25c583e40e888a99ea6fb0817960952bc26dcf8facf87f77f3363ac0c3c3b9d9 python-mycroft-v18.8.3.tar.gz +sha256 42950284980d415d5cf75c91ad1e59080770cf82a12dc294f106b97fdf8c65c0 python-mycroft-v18.8.4.tar.gz diff --git a/buildroot-external/package/python-mycroft/python-mycroft.mk b/buildroot-external/package/python-mycroft/python-mycroft.mk index e7d7323e..f950f7c5 100644 --- a/buildroot-external/package/python-mycroft/python-mycroft.mk +++ b/buildroot-external/package/python-mycroft/python-mycroft.mk @@ -4,7 +4,7 @@ # ################################################################################ -PYTHON_MYCROFT_VERSION = v18.8.3 +PYTHON_MYCROFT_VERSION = v18.8.4 PYTHON_MYCROFT_SITE = $(call github,MycroftAI,mycroft-core,release/$(PYTHON_MYCROFT_VERSION)) PYTHON_MYCROFT_SETUP_TYPE = setuptools PYTHON_MYCROFT_LICENSE_FILES = diff --git a/buildroot-external/package/respeaker/Config.in b/buildroot-external/package/respeaker/Config.in new file mode 100644 index 00000000..8a01b876 --- /dev/null +++ b/buildroot-external/package/respeaker/Config.in @@ -0,0 +1,17 @@ +config BR2_PACKAGE_RESPEAKER + bool "respeaker" + select BR2_PACKAGE_RPI_USERLAND + select BR2_PACKAGE_DTC + select BR2_PACKAGE_DTC_PROGRAMS + help + The ReSpeaker series is a family of + development boards designed to enable + a future where voice interface is part + of everyday human-device interaction. + Designed to be easily integrated (and + customized) into products, but also to + allow other services and products to be + easily integrated into it. + + https://respeaker.io/ + diff --git a/buildroot-external/package/respeaker/S16respeaker_modules b/buildroot-external/package/respeaker/S16respeaker_modules new file mode 100755 index 00000000..d659cfcd --- /dev/null +++ b/buildroot-external/package/respeaker/S16respeaker_modules @@ -0,0 +1,8 @@ +#!/bin/sh +# +# Load seeed-voicecard modules.... +# + +modprobe snd-soc-seeed-voicecard +modprobe snd-soc-ac108 +modprobe snd-soc-wm8960 diff --git a/buildroot-external/package/respeaker/S60seeed_voicecard b/buildroot-external/package/respeaker/S60seeed_voicecard new file mode 100755 index 00000000..960228e4 --- /dev/null +++ b/buildroot-external/package/respeaker/S60seeed_voicecard @@ -0,0 +1,11 @@ +#!/bin/sh +# +# Configure seeed-voicecard.... +# + +echo "Starting seeed-voicecard..." +mount -t configfs none /sys/kernel/config +mkdir -p /boot +mount -t vfat /dev/mmcblk0p1 /boot +/usr/bin/seeed-voicecard +touch /var/lock/seeed-voicecard diff --git a/buildroot-external/package/respeaker/respeaker.hash b/buildroot-external/package/respeaker/respeaker.hash new file mode 100644 index 00000000..c5e6ee43 --- /dev/null +++ b/buildroot-external/package/respeaker/respeaker.hash @@ -0,0 +1,2 @@ +# Locally computed +sha256 9f38d832acbfc7f07a58f15222d2fdcc0a9215ede488ccafb5c89a3e8223883d respeaker-be0812c70be29b0666a89f22a9d403cfb4c48fca.tar.gz diff --git a/buildroot-external/package/respeaker/respeaker.mk b/buildroot-external/package/respeaker/respeaker.mk new file mode 100644 index 00000000..2bc936e7 --- /dev/null +++ b/buildroot-external/package/respeaker/respeaker.mk @@ -0,0 +1,31 @@ +################################################################################ +# +# respeaker +# +################################################################################ + +RESPEAKER_VERSION = be0812c70be29b0666a89f22a9d403cfb4c48fca +RESPEAKER_SITE = $(call github,respeaker,seeed-voicecard,$(RESPEAKER_VERSION)) +RESPEAKER_LICENSE = GNU General Public License v3.0 +RESPEAKER_DEPENDENCIES = rpi-firmware rpi-userland dtc + +$(eval $(kernel-module)) + +define RESPEAKER_INSTALL_TARGET_CMDS + $(INSTALL) -D -m 0755 $(BR2_EXTERNAL_MYCROFTOS_PATH)/package/respeaker/S16respeaker_modules \ + $(TARGET_DIR)/etc/init.d/S16respeaker_modules + $(INSTALL) -D -m 0755 $(BR2_EXTERNAL_MYCROFTOS_PATH)/package/respeaker/S60seeed_voicecard \ + $(TARGET_DIR)/etc/init.d/S60seeed_voicecard + + mkdir -p $(TARGET_DIR)/etc/voicecard + rm $(@D)/dkms.conf + $(INSTALL) -D -m 0644 $(@D)/*.conf $(TARGET_DIR)/etc/voicecard + $(INSTALL) -D -m 0644 $(@D)/*.state $(TARGET_DIR)/etc/voicecard + $(INSTALL) -D -m 0755 $(@D)/seeed-voicecard $(TARGET_DIR)/usr/bin + + $(INSTALL) -D -m 0644 $(@D)/seeed-2mic-voicecard.dtbo $(BINARIES_DIR)/rpi-firmware/overlays/ + $(INSTALL) -D -m 0644 $(@D)/seeed-4mic-voicecard.dtbo $(BINARIES_DIR)/rpi-firmware/overlays/ + $(INSTALL) -D -m 0644 $(@D)/seeed-8mic-voicecard.dtbo $(BINARIES_DIR)/rpi-firmware/overlays/ +endef + +$(eval $(generic-package)) diff --git a/buildroot-external/rootfs-overlay/etc/init.d/S00asplash b/buildroot-external/rootfs-overlay/etc/init.d/S00asplash new file mode 100755 index 00000000..2c52ed5f --- /dev/null +++ b/buildroot-external/rootfs-overlay/etc/init.d/S00asplash @@ -0,0 +1,22 @@ +#!/bin/sh +# +# Loading boot splash +# + +start() { + printf "Loading boot splash ..." + cat /dev/zero 1> /dev/fb0 2>/dev/null + fbv -f -d 1 /opt/mycroft/splash/boot.png > /dev/null 2>&1 + echo "[OK]" +} + +case "$1" in + start) + start + ;; + *) + echo "Usage: $0 {start}" + exit 1 +esac + +exit $? diff --git a/buildroot-external/rootfs-overlay/etc/init.d/S00resize_sdcard b/buildroot-external/rootfs-overlay/etc/init.d/S00resize_sdcard new file mode 100755 index 00000000..085e5be6 --- /dev/null +++ b/buildroot-external/rootfs-overlay/etc/init.d/S00resize_sdcard @@ -0,0 +1,25 @@ +#!/bin/sh +# +# Resize SD card +# + +start() { + printf "Resize data partition ..." + parted /dev/mmcblk0 unit % resizepart 2 yes 100% && + partprobe /dev/mmcblk0 && + sync && + resize2fs /dev/mmcblk0p2 && + chmod -x /etc/init.d/S00resize_sdcard && + echo "[OK]" +} + +case "$1" in + start) + start + ;; + *) + echo "Usage: $0 {start}" + exit 1 +esac + +exit $? diff --git a/buildroot-external/rootfs-overlay/etc/init.d/S00resizefs_once b/buildroot-external/rootfs-overlay/etc/init.d/S00resizefs_once deleted file mode 100644 index 39cc5fb4..00000000 --- a/buildroot-external/rootfs-overlay/etc/init.d/S00resizefs_once +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh -# -# Auto resize root partition at first boot after init_resize -# - -start() { - printf "Starting resize2fs_once: " - ROOT_DEV=$(findmnt / -o source -n) && - resize2fs $ROOT_DEV && - rm /etc/init.d/S00resizefs_once && - echo "OK" -} - -case "$1" in - start) - start - ;; - *) - echo "Usage: $0 {start}" - exit 1 -esac - -exit $? diff --git a/buildroot-external/rootfs-overlay/etc/init.d/S50pulseaudio b/buildroot-external/rootfs-overlay/etc/init.d/S50pulseaudio deleted file mode 100755 index e836ee4d..00000000 --- a/buildroot-external/rootfs-overlay/etc/init.d/S50pulseaudio +++ /dev/null @@ -1,39 +0,0 @@ -#!/bin/sh -# -# Starts pulseaudio. -# - - -start() { - printf "Starting pulseaudio: " - umask 007 - /usr/bin/pulseaudio --system --daemonize --disallow-exit - echo "OK" -} -stop() { - printf "Stopping pulseaudio: " - pulseaudio --kill - echo "OK" -} -restart() { - stop - start -} - -case "$1" in - start) - start - ;; - stop) - stop - ;; - restart|reload) - restart - ;; - *) - echo "Usage: $0 {start|stop|restart}" - exit 1 -esac - -exit $? - diff --git a/buildroot-external/rootfs-overlay/etc/init.d/S90mycroft_prepare b/buildroot-external/rootfs-overlay/etc/init.d/S90mycroft_prepare index fbe73e04..de38ea8b 100755 --- a/buildroot-external/rootfs-overlay/etc/init.d/S90mycroft_prepare +++ b/buildroot-external/rootfs-overlay/etc/init.d/S90mycroft_prepare @@ -23,7 +23,18 @@ start() { if ping -q -c 1 -W 1 1.1.1.1 >/dev/null 2>&1 ; then return 0 fi + + # Check if /.mycroft exist already and if not + # create a symbolic link to /root/.mycroft + if [[ ! -w /.mycroft/ ]] ; then + # Creating .mycroft symlink + printf "Creating /.mycroft/ symlink" + if [[ ! -d /.mycroft/ ]] ; then + ln -s /root/.mycroft /.mycroft + fi + fi } + case "$1" in start) start diff --git a/buildroot-external/rootfs-overlay/etc/init.d/init_resize.sh b/buildroot-external/rootfs-overlay/etc/init.d/init_resize.sh deleted file mode 100644 index e792e123..00000000 --- a/buildroot-external/rootfs-overlay/etc/init.d/init_resize.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/bin/bash -set -e - -mount -t proc proc /proc -mount -t sysfs sys /sys -mount -t tmpfs tmp /run - -mount /boot -mount / -o remount,rw - -sed -i 's| init=/etc/init.d/init_resize.sh||' /boot/cmdline.txt -sync - -DEVICE="/dev/mmcblk0" -PARTNR="p2" - -CURRENTSIZEB=`fdisk -l $DEVICE$PARTNR | grep "Disk $DEVICE$PARTNR" | cut -d' ' -f5` -CURRENTSIZE=`expr $CURRENTSIZEB / 1024 / 1024` -MAXSIZEMB=`printf %s\\n 'unit MB print list' | parted | grep "Disk ${DEVICE}" | cut -d' ' -f3 | tr -d MB` - -echo "[ok] applying resize operation.." -parted ${DEVICE} resizepart ${PARTNR} ${MAXSIZEMB} -echo "[done]" - -partprobe $DEVICE - -umount /boot -mount / -o remount,ro -sync - -reboot diff --git a/buildroot-external/rootfs-overlay/etc/pulse/system.pa b/buildroot-external/rootfs-overlay/etc/pulse/system.pa deleted file mode 100644 index 5d1746b8..00000000 --- a/buildroot-external/rootfs-overlay/etc/pulse/system.pa +++ /dev/null @@ -1,57 +0,0 @@ -#!/usr/bin/pulseaudio -nF -# -# This file is part of PulseAudio. -# -# PulseAudio is free software; you can redistribute it and/or modify it -# under the terms of the GNU Lesser General Public License as published by -# the Free Software Foundation; either version 2 of the License, or -# (at your option) any later version. -# -# PulseAudio is distributed in the hope that it will be useful, but -# WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -# General Public License for more details. -# -# You should have received a copy of the GNU Lesser General Public License -# along with PulseAudio; if not, see . - -# This startup script is used only if PulseAudio is started in system -# mode. - -### Automatically load driver modules depending on the hardware available -.ifexists module-detect.so -### Use the static hardware detection module (for systems that lack udev/hal support) -load-module module-detect -.endif - -### Load several protocols -.ifexists module-esound-protocol-unix.so -load-module module-esound-protocol-unix -.endif -load-module module-native-protocol-unix - -### Automatically restore the volume of streams and devices -load-module module-stream-restore -load-module module-device-restore - -### Automatically restore the default sink/source when changed by the user -### during runtime -### NOTE: This should be loaded as early as possible so that subsequent modules -### that look up the default sink/source get the right value -load-module module-default-device-restore - -### Automatically move streams to the default sink if the sink they are -### connected to dies, similar for sources -load-module module-rescue-streams - -### Make sure we always have a sink around, even if it is a null sink. -load-module module-always-sink - -### Automatically suspend sinks/sources that become idle for too long -#load-module module-suspend-on-idle - -### Enable positioned event sounds -load-module module-position-event-sounds - -#allow localhost connections -load-module module-native-protocol-tcp auth-anonymous=true diff --git a/buildroot-external/rootfs-overlay/opt/mycroft/splash/boot.png b/buildroot-external/rootfs-overlay/opt/mycroft/splash/boot.png new file mode 100644 index 00000000..d0f14d47 Binary files /dev/null and b/buildroot-external/rootfs-overlay/opt/mycroft/splash/boot.png differ diff --git a/buildroot-external/rootfs-overlay/root/.mycroft b/buildroot-external/rootfs-overlay/root/.mycroft deleted file mode 120000 index 1d8c98c4..00000000 --- a/buildroot-external/rootfs-overlay/root/.mycroft +++ /dev/null @@ -1 +0,0 @@ -../.mycroft \ No newline at end of file diff --git a/buildroot-external/rootfs-overlay/root/.mycroft/.empty b/buildroot-external/rootfs-overlay/root/.mycroft/.empty new file mode 100644 index 00000000..e69de29b diff --git a/buildroot-external/rootfs-overlay/root/.mycroft_cli.conf b/buildroot-external/rootfs-overlay/root/.mycroft_cli.conf new file mode 100644 index 00000000..e69de29b diff --git a/scripts/build.sh b/scripts/build.sh index 6d0c43b0..11175013 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -6,11 +6,11 @@ mkdir -p logs all_platforms=(rpi3) for platform in "${all_platforms[@]}"; do - make -C buildroot BR2_EXTERNAL=../buildroot-external distclean + make -C buildroot BR2_EXTERNAL=../buildroot-external clean make -C buildroot BR2_EXTERNAL=../buildroot-external mycroftos_${platform}_defconfig # Optional if you need to change stuff, uncomment the next line. -# make -C buildroot BR2_EXTERNAL=../buildroot-external menuconfig + make -C buildroot BR2_EXTERNAL=../buildroot-external menuconfig make -C buildroot BR2_EXTERNAL=../buildroot-external 2>&1 | tee logs/buildroot_output.txt cp -f buildroot/output/images/sdcard.img release/MycroftOS_${platform}.img