#
# Hand-maintained .config file.
#

#
# General settings.
#

CONFIG_TOYBOX=y
# CONFIG_TOYBOX_DEBUG is not set
CONFIG_TOYBOX_FLOAT=y
CONFIG_TOYBOX_FORK=y
# CONFIG_TOYBOX_FREE is not set
CONFIG_TOYBOX_HELP_DASHDASH=y
CONFIG_TOYBOX_HELP=y
CONFIG_TOYBOX_LIBCRYPTO=y
CONFIG_TOYBOX_LIBZ=y
# CONFIG_TOYBOX_LSM_NONE is not set
CONFIG_TOYBOX_NORECURSE=y
CONFIG_TOYBOX_ON_ANDROID=y
CONFIG_TOYBOX_SELINUX=y
# CONFIG_TOYBOX_SMACK is not set
# CONFIG_TOYBOX_SUID is not set
CONFIG_TOYBOX_UID_SYS=100
CONFIG_TOYBOX_UID_USR=500
# CONFIG_TOYBOX_ZHELP is not set

#
# Selected toys.
#

CONFIG_ACPI=y
# CONFIG_ARCH is not set
# CONFIG_ARPING is not set
# CONFIG_ARP is not set
# CONFIG_ASCII is not set
# CONFIG_BASE32 is not set
CONFIG_BASE64=y
CONFIG_BASENAME=y
# CONFIG_BC is not set
CONFIG_BLKDISCARD=y
CONFIG_BLKID=y
CONFIG_BLOCKDEV=y
# CONFIG_BOOTCHARTD is not set
CONFIG_BRCTL=y
# CONFIG_BUNZIP2 is not set
# CONFIG_BZCAT is not set
CONFIG_CAL=y
CONFIG_CAT=y
# CONFIG_CD is not set
CONFIG_CHATTR=y
CONFIG_CHCON=y
CONFIG_CHGRP=y
CONFIG_CHMOD=y
CONFIG_CHOWN=y
CONFIG_CHROOT=y
CONFIG_CHRT=y
# CONFIG_CHSH is not set
# CONFIG_CHVT is not set
CONFIG_CKSUM=y
CONFIG_CLEAR=y
CONFIG_CMP=y
CONFIG_COMM=y
# CONFIG_COUNT is not set
CONFIG_CPIO=y
CONFIG_CP=y
# CONFIG_CRC32 is not set
# CONFIG_CROND is not set
# CONFIG_CRONTAB is not set
# CONFIG_CSPLIT is not set
CONFIG_CUT=y
CONFIG_DATE=y
CONFIG_DD=y
# CONFIG_DEALLOCVT is not set
# CONFIG_DEBUG_DHCP is not set
# CONFIG_DEMO_MANY_OPTIONS is not set
# CONFIG_DEMO_NUMBER is not set
# CONFIG_DEMO_SCANKEY is not set
# CONFIG_DEMO_UTF8TOWC is not set
CONFIG_DEVMEM=y
CONFIG_DF=y
# CONFIG_DHCP6 is not set
# CONFIG_DHCPD is not set
# CONFIG_DHCP is not set
CONFIG_DIFF=y
CONFIG_DIRNAME=y
CONFIG_DMESG=y
# CONFIG_DNSDOMAINNAME is not set
CONFIG_DOS2UNIX=y
# CONFIG_DUMPLEASES is not set
CONFIG_DU=y
CONFIG_ECHO=y
CONFIG_EGREP=y
# CONFIG_EJECT is not set
CONFIG_ENV=y
# CONFIG_EXIT is not set
CONFIG_EXPAND=y
CONFIG_EXPR=y
# CONFIG_FACTOR is not set
CONFIG_FALLOCATE=y
CONFIG_FALSE=y
# CONFIG_FDISK is not set
CONFIG_FGREP=y
CONFIG_FILE=y
CONFIG_FIND=y
CONFIG_FLOCK=y
CONFIG_FMT=y
# CONFIG_FOLD is not set
CONFIG_FREERAMDISK=y
CONFIG_FREE=y
# CONFIG_FSCK is not set
CONFIG_FSFREEZE=y
# CONFIG_FSTYPE is not set
CONFIG_FSYNC=y
# CONFIG_FTPGET is not set
# CONFIG_FTPPUT is not set
CONFIG_GETCONF=y
CONFIG_GETENFORCE=y
CONFIG_GETFATTR=y
CONFIG_GETOPT=y
# CONFIG_GETTY is not set
# CONFIG_GITCHECKOUT is not set
# CONFIG_GITCLONE is not set
# CONFIG_GITCOMPAT is not set
# CONFIG_GITFETCH is not set
# CONFIG_GITINIT is not set
# CONFIG_GITREMOTE is not set
CONFIG_GPIODETECT=y
CONFIG_GPIOFIND=y
CONFIG_GPIOGET=y
CONFIG_GPIOINFO=y
CONFIG_GPIOSET=y
CONFIG_GREP=y
# CONFIG_GROUPADD is not set
# CONFIG_GROUPDEL is not set
CONFIG_GROUPS=y
CONFIG_GUNZIP=y
CONFIG_GZIP=y
CONFIG_HEAD=y
# CONFIG_HELLO is not set
CONFIG_HELP=y
# CONFIG_HEXDUMP is not set
# CONFIG_HEXEDIT is not set
# CONFIG_HD is not set
# CONFIG_HOSTID is not set
# CONFIG_HOST is not set
CONFIG_HOSTNAME=y
# CONFIG_HTTPD is not set
CONFIG_HWCLOCK=y
CONFIG_I2CDETECT=y
CONFIG_I2CDUMP=y
CONFIG_I2CGET=y
CONFIG_I2CSET=y
CONFIG_I2CTRANSFER=y
CONFIG_ICONV=y
CONFIG_ID=y
CONFIG_ID_Z=y
CONFIG_IFCONFIG=y
# CONFIG_INIT is not set
CONFIG_INOTIFYD=y
CONFIG_INSMOD=y
CONFIG_INSTALL=y
CONFIG_IONICE=y
CONFIG_IORENICE=y
CONFIG_IOTOP=y
# CONFIG_IPCRM is not set
# CONFIG_IPCS is not set
# CONFIG_IP is not set
# CONFIG_KILLALL5 is not set
CONFIG_KILLALL=y
CONFIG_KILL=y
# CONFIG_KLOGD is not set
# CONFIG_KLOGD_SOURCE_RING_BUFFER is not set
# CONFIG_LAST is not set
# CONFIG_LINK is not set
# CONFIG_LINUX32 is not set
CONFIG_LN=y
CONFIG_LOAD_POLICY=y
CONFIG_LOGGER=y
# CONFIG_LOGIN is not set
CONFIG_LOGNAME=y
# CONFIG_LOGPATH is not set
CONFIG_LOG=y
CONFIG_LOSETUP=y
CONFIG_LSATTR=y
CONFIG_LSMOD=y
CONFIG_LSOF=y
CONFIG_LSPCI=y
CONFIG_LSUSB=y
CONFIG_LS=y
CONFIG_MAKEDEVS=y
# CONFIG_MAN is not set
# CONFIG_MCOOKIE is not set
CONFIG_MD5SUM=y
# CONFIG_MDEV_CONF is not set
# CONFIG_MDEV is not set
CONFIG_MEMEATER=y
CONFIG_MICROCOM=y
# CONFIG_MIX is not set
CONFIG_MKDIR=y
CONFIG_MKDIR_Z=y
# CONFIG_MKE2FS_EXTENDED is not set
# CONFIG_MKE2FS_GEN is not set
# CONFIG_MKE2FS is not set
# CONFIG_MKE2FS_JOURNAL is not set
# CONFIG_MKE2FS_LABEL is not set
CONFIG_MKFIFO=y
CONFIG_MKFIFO_Z=y
CONFIG_MKNOD=y
CONFIG_MKNOD_Z=y
# CONFIG_MKPASSWD is not set
CONFIG_MKSWAP=y
CONFIG_MKTEMP=y
CONFIG_MODINFO=y
CONFIG_MODPROBE=y
CONFIG_MORE=y
CONFIG_MOUNTPOINT=y
CONFIG_MOUNT=y
CONFIG_MV=y
CONFIG_NBD_CLIENT=y
# CONFIG_NBD_SERVER is not set
CONFIG_NETCAT=y
CONFIG_NETSTAT=y
CONFIG_NICE=y
CONFIG_NL=y
CONFIG_NOHUP=y
CONFIG_NPROC=y
CONFIG_NSENTER=y
CONFIG_OD=y
# CONFIG_ONEIT is not set
# CONFIG_OPENVT is not set
CONFIG_PARTPROBE=y
# CONFIG_PASSWD is not set
CONFIG_PASTE=y
CONFIG_PATCH=y
CONFIG_PGREP=y
CONFIG_PIDOF=y
CONFIG_PING=y
CONFIG_PIVOT_ROOT=y
CONFIG_PKILL=y
CONFIG_PMAP=y
CONFIG_PRINTENV=y
CONFIG_PRINTF=y
CONFIG_PS=y
CONFIG_PWDX=y
CONFIG_PWD=y
# CONFIG_PWGEN is not set
# CONFIG_READAHEAD is not set
CONFIG_READELF=y
CONFIG_READLINK=y
CONFIG_REALPATH=y
# CONFIG_REBOOT is not set
CONFIG_RENICE=y
# CONFIG_RESET is not set
CONFIG_RESTORECON=y
CONFIG_REV=y
CONFIG_RFKILL=y
CONFIG_RMDIR=y
CONFIG_RMMOD=y
CONFIG_RM=y
# CONFIG_ROUTE is not set
CONFIG_RTCWAKE=y
CONFIG_RUNCON=y
CONFIG_SED=y
CONFIG_SENDEVENT=y
CONFIG_SEQ=y
CONFIG_SETENFORCE=y
CONFIG_SETFATTR=y
CONFIG_SETSID=y
CONFIG_SHA1SUM=y
CONFIG_SHA224SUM=y
CONFIG_SHA256SUM=y
# CONFIG_SHA3SUM is not set
CONFIG_SHA384SUM=y
CONFIG_SHA512SUM=y
# CONFIG_SH is not set
# CONFIG_SHRED is not set
# CONFIG_SHUF is not set
# CONFIG_SKELETON_ALIAS is not set
# CONFIG_SKELETON is not set
CONFIG_SLEEP=y
# CONFIG_SNTP is not set
CONFIG_SORT_FLOAT=y
CONFIG_SORT=y
CONFIG_SPLIT=y
CONFIG_STAT=y
# CONFIG_STRACE is not set
CONFIG_STRINGS=y
CONFIG_STTY=y
# CONFIG_SU is not set
# CONFIG_SULOGIN is not set
CONFIG_SWAPOFF=y
CONFIG_SWAPON=y
# CONFIG_SWITCH_ROOT is not set
CONFIG_SYNC=y
CONFIG_SYSCTL=y
# CONFIG_SYSLOGD is not set
CONFIG_TAC=y
CONFIG_TAIL=y
CONFIG_TAR=y
CONFIG_TASKSET=y
# CONFIG_TCPSVD is not set
CONFIG_TEE=y
# CONFIG_TELNETD is not set
# CONFIG_TELNET is not set
CONFIG_TEST=y
CONFIG_TEST_GLUE=y
# CONFIG_TFTPD is not set
# CONFIG_TFTP is not set
CONFIG_TIMEOUT=y
CONFIG_TIME=y
CONFIG_TOP=y
CONFIG_TOUCH=y
CONFIG_TRACEROUTE=y
CONFIG_TRUE=y
CONFIG_TRUNCATE=y
CONFIG_TR=y
# CONFIG_TS is not set
# CONFIG_TSORT is not set
CONFIG_TTY=y
CONFIG_TUNCTL=y
CONFIG_UCLAMPSET=y
CONFIG_ULIMIT=y
CONFIG_UMOUNT=y
CONFIG_UNAME=y
# CONFIG_UNICODE is not set
CONFIG_UNIQ=y
CONFIG_UNIX2DOS=y
CONFIG_UNLINK=y
CONFIG_UNSHARE=y
CONFIG_UPTIME=y
# CONFIG_USERADD is not set
# CONFIG_USERDEL is not set
CONFIG_USLEEP=y
CONFIG_UUDECODE=y
CONFIG_UUENCODE=y
CONFIG_UUIDGEN=y
CONFIG_VCONFIG=y
CONFIG_VI=y
CONFIG_VMSTAT=y
CONFIG_WATCH=y
# CONFIG_WATCHDOG is not set
CONFIG_WC=y
# CONFIG_WGET is not set
CONFIG_WHICH=y
CONFIG_WHOAMI=y
# CONFIG_WHO is not set
# CONFIG_W is not set
CONFIG_XARGS=y
CONFIG_XXD=y
# CONFIG_XZCAT is not set
CONFIG_YES=y
CONFIG_ZCAT=y
