desktopecho / pi-hole-for-android Goto Github PK
View Code? Open in Web Editor NEWPi-hole/Unbound Raspbian APK Installer for Android 5.0+ devices (requires root)
Pi-hole/Unbound Raspbian APK Installer for Android 5.0+ devices (requires root)
First of all--thanks for the release.
I am new to Pi-hole and don't have a Pi, but do have this old phone.
I noticed straight after the install that the loads are very high.
Linux Deploy is installed on the system's storage, but the 'Source path' and 'Installation path' are on an SD card.
Active Temp: 32.0 °C
Load: 12.37 12.23 12.27
Memory usage: 64.4 %
Phone Specs:
<<< System >>>
Device Model: Motorola Moto G 4G
Device Type: Phone
Manufacturer: motorola
Model: XT1039
Brand: motorola
Board: MSM8226
Device: peregrine
Hardware: qcom
Platform: msm8226
Product: peregrine_retgb
Serial: TA98602CII
Installed RAM: 1 GB LPDDR2
Total Memory: 873 MB
Available Memory: 186 MB
Internal Storage Total Space: 5653 MB
Internal Storage Free Space: 1651 MB
External Storage Total Space: 7493 MB
External Storage Free Space: 5103 MB
<<< CPU >>>
SoC Model: Qualcomm Snapdragon 400 (MSM8926)
Core Architecture: 4x ARM Cortex-A7 @ 1190 MHz
Manufacturing Process: 28 nm
Instruction Set: 32-bit ARMv7
CPU Revision: r0p3
CPU Cores: 4
CPU Clock Range: 300 - 1190 MHz
Core 1 Clock: 1190 MHz
Core 2 Clock: 1190 MHz
Core 3 Clock: 1190 MHz
Core 4 Clock: 1190 MHz
CPU Utilization: 66 %
Scaling Governor: interactive
Supported ABIs: armeabi-v7a, armeabi
Supported 32-bit ABIs: armeabi-v7a, armeabi
AES: Not Supported
NEON: Supported
PMULL: Not Supported
SHA1: Not Supported
SHA2: Not Supported
Full AIDA64 Info:
AIDA64 for Android v1.85 Report1.txt
Whenever Router tries to reboot, it assigns new IP to each other devices. So Pihole gets new IP and internet is disconnected cause router has specific ip of older pihole ip. So had to enable new IP in Router. Anyway to assign static IP to pihole to resolve the issue.
Thank you so much for your hard work in putting this together.
I tried deploying raspian OS onto my Asus Google Nexus
![20221229_141630](https://user-
images.githubusercontent.com/121622603/210003654-8e859b7c-95ac-4586-85e0-182f715da982.jpg)
player on Android 8.0
However I have run into the following problems.
I was wondering if you have any tips for me ?
Thank You in advance.
Hi, i tried to install pixel desktop using the command pideploy-gui-install and this is what i got:
Hit [Enter] to install Raspbian PIXEL Desktop environment, CTRL-C to exit
Hit:1 http://archive.raspberrypi.org/debian bullseye InRelease
Get:2 http://raspbian.raspberrypi.org/raspbian bullseye InRelease [15.0 kB]
Fetched 15.0 kB in 4s (4,027 B/s)
Reading package lists... Done
Reading package lists... Done
E: Unsupported file ./libgnome-keyring-common_3.12.0-1_all.deb given on commandline
E: Unsupported file ./libgnome-keyring0_3.12.0-1+b2_armhf.deb given on commandline
E: Unsupported file ./gksu_2.0.2-9+b1_armhf.deb given on commandline
E: Unsupported file ./libgksu2-0_2.0.13~pre1-9+b1_armhf.deb given on commandline
E: Unsupported file ./libgtop-2.0-10_2.34.2-1_armhf.deb given on commandline
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
rpi-chromium-mods is already the newest version (20220711).
0 upgraded, 0 newly installed, 0 to remove and 63 not upgraded.
mv: cannot stat '/usr/bin/lxpolkit': No such file or directory
/usr/local/bin/pideploy-gui-install: line 38: gconftool: command not found
is there a solution to this? Thanks:)
It throws error like dns service is not running.
Device Redmi note 4(mido)
Hi.
Can You update pihole to latest version v5.13?
Hi, I've encountered an odd issue. I'd like to manually select the upstream DNS servers in the pihole web interface, but for some reason when change any settings, once I click save nothing changes. Any ideas why that could be? I've tested it on my pi zero, and everything seems to work fine...
Say I'd like to enable google DNS:
Once I click save, the settings return to the original values...
Hello, i got the pi hole to run however on the dashboard it saids “temp sensor not found”. Also I see a message saying the pi hole is out of date. How can I update this? When I try to I get an error. Thank you
Is there a chance that a new apk file will be released with the latest components with the ability to synchronize between devices with this app installed, eg using gravity sync and possibly with the option to change or remove the password for easier integration with various services like home assistant?
Hello Here are i'm again^^ Ok i got finally Rooted my Samsung Tab 2 SM-T 813 (after 3 Failures and 1 Brick i was able to Root the Stock Samsung OS from 2016) and followed your Steps Carefully. Ok now next Huge Problem, when i try to install the Script in the Linux deplolyer it says permission denied on mass. I looked in the Internet and it is caused by the INKERNEL integrated SELinux Enforce mode (Knox) (yes i tried to delete the App but it gets instant installed from the Inkernel. And no LinuxSeSwitcher dont work, it says permissive is sent to system but in systeminfo it stays enforced AND after reboot to. I Even installed that Busybox thingy. ^^
So i have to search for a Custom ROM. But... my Nerves are Momentarly at zero lol. I need Guidance pls lol, just as i sayd in my previous post on the Windows 10 Pi-Hole Thread that i'm not so good at Programming things, i just want to get that Pi-Hole worked on android, so that i can relax. ^^ But when it's too complicated i will stick to the Brave Browser lol.
I say already thanks for Reading this.
My setup:
Samsung Galaxy S4 (GT-I9505) (Snapdragon 600, quadcore SoC)
crDroid 7.21 (LOS 18.1/Android 11)
Magisk 25.2
Linux Deploy 2.60
BusyBox (meefik) 1.34.1
Pi-hole is set up and running, resolving & blocking, all good so far.
The only thing that's a bit frustrating is the constantly popping up "high load" notifications.
It seems that Pi-hole (or one of its sub-systems) doesn't recognize all usable cores provided by the device, like 1 cpu/4 cores, instead sees just 1 cpu/1 core but the load values indicate that all cores are indeed used, but somehow Pi-hole doesn't understand this and panics because the 1 cpu/1 core it sees is always on ~4x load.
Any ideas how to change this behaviour? I don't have that on a RPi running Pi-hole.
Thank you for your time and effort!
Hello, I successfully installed pihole on my android device all thanks to you. I sshed to my android device on windows using putty but when I type the "padd" nothing happens.
the change installation size is greyed out and set to 2048 mb.. i would like to atleast set 4gb
i tested this project with a TVbox android,
when i lock the entire network DNS via Pi-hole
After power loss
The Clock servers wont connect before the pi-hole start to work, thanks to unbound.
so Unbound returns SERVFAIL for all queries because time error
to recovery from that i need to
sudo date -s "$(wget -qSO- --max-redirect=0 google.com 2>&1 | grep Date: | cut -d' ' -f5-8)Z"
i think the DNS encripted protocol can't run without realtime device....
How we can inprove that, for non Realtime battery Devices?
can we patch it?
I managed to install on my PIXEL 4a 5g with LineageOS 19.
Deploying worked, but when I hit start, the terminal messages stop after ":: Starting init/sysv: android-raspbian ..."
The system seems to start up normaly otherwise, since I can connect to pi-hole via Browser.
BUT: I can not fetch the generated Password, since it is not displayed, the terminal messages are not shown.
Once I hit Stop terminal messages appear again, but that is of no use regarding the Password.
Can you help?
Kind regards,
Thiemo.
Android TV Box 4.4.2 Kitkat i followed the guide and this is the error i get.
Importing rootfs from tar.gz archive... fail
I tried hitting install with Pi Deploy app and Im getting the same error over and over again. Then I tried installing raspbian using Linux deploy from play store and it got installed without any error. Any idea why?
Hi, I'm running the app on the Mi 9T Pro and so far it works well and the adblocking works, I can also connect through ssh no problem, but the webserver doesn't seem to be working, it just keeps saying 'refused to connect' on any device I try.
Here's some screenshots of the status:
And when I tried pihole -d, it gave me this error:
I already tried #3, but after restarting lighttpd and making sure it's running and everything it still doesn't work. I wonder if there's anything else I should try?
But in my case I was not able update adlist by any of them. When I perform a update command pihole -g
I was getting error sudo: PERM_ROOT: setresuid(0, -1, -1): Permission denied
.
root
and password -> toor
before starting installation.ssh using ssh [email protected]
and password as toor
can give root access to update adlist. (here 192.168.0.111
was my local ip assigned for deivce on which pi hole was installed, so change it accordingly.).
thx................
Hey,
First of all, you earned a great round of applause. That project is astonishing. My pi hole works with no excuses. But, I cannot authenticate to SSH connection. No matter if I set my password for android user, or leave that blank (then it is generated automatically), it does not work. I can use dns, I can ping, I simply cannot connect via SSH. RDP also works -> I see login panel, but password is incorrect.
Maybe it's a trivial question, but could you please help ? :)
Hi there! Thanks for sharing this great app!
I have an old, rooted Galaxy S5 (SM-G901F) running LineageOS 14.1 with Android 7.1.2.
After installing PiDeploy and selecting "New Deployment" I get the following error log:
>>> deploy
## bootstrap/rootfs : do_install && do_configure
:: Installing bootstrap/rootfs ...
Checking installation path ... mkdir: can't create directory './raspbian': Read-only file system
done
mkdir: can't create directory './raspbian': Read-only file system
Checking file system ... skip
Mounting the container:
/ ... FUSE exfat 1.2.3
ERROR: failed to open './raspbian': No such file or directory.
mount: mounting ./raspbian on /data/local/raspbian failed: No such file or directory
fail
<<< deploy
Here is the status log given by PiDeploy:
>>> status
Device: SM-G901F
Android: 7.1.2
Architecture: armv7l
Kernel: 3.10.108-g8c8b947
Memory: 239/1766 MB
Swap: 301/437 MB
SELinux: active
Loop devices: yes
Support binfmt_misc: no
Supported FS: exfat ext2 ext3 ext4 f2fs fuseblk msdos vfat
Installed system: unknown
Status of components:
## bootstrap/rootfs : do_status
## core/emulator : do_status
## core/motd : do_status
## core/hosts : do_status
## core/hostname : do_status
## core/mnt : do_status
## core/net : do_status
## core/timezone : do_status
## core/su : do_status
## core/locale : do_status
## core/aid : do_status
## core/profile : do_status
## core/sudo : do_status
## core/unchroot : do_status
## core : do_status
## bootstrap : do_status
## init/sysv : do_status
## init : do_status
Mounted parts:
<<< status
title
This is an issue which happened on one of my devices (Kernel 3.4.0) after an update to pihole v5.8 (and higher).
[✓] FTL is listening on port 53
[✗] UDP (IPv4)
[✓] TCP (IPv4)
[✗] UDP (IPv6)
[✓] TCP (IPv6)
[✓] Pi-hole blocking is enabled
It is also something which is not particularly unique to my device but I'm a bit lost as to why it happens since a month.
Here's a few people having the issue on reddit as well: https://www.reddit.com/r/pihole/comments/rxg75n/udp_not_working_after_581_update/?sort=new
I have another device with an even older kernel v3.0.8 and status is fine there. I'm unsure as to why it may be an issue on newer kernel since the p4a image is same on both devices?
Any idea how can do RCA on this?
Thanks!
android@j7elte:~$ ping google.com
ping: google.com: Temporary failure in name resolution
Here's my /etc/resolv.conf
:
nameserver 8.8.8.8
I have done -
Still, when I do df -h, size is increasing for this block.
Today, I tried out the newer PiDeploy version on my Super Old Xperia U (Cm12.1) got the below errors.
When I Clicked on Start after Installation was complete (got the above error during installation but still showed deployment is completed)
Here's my Kernel Version for reference:
Before getting the above error, I got mount error but resolved it by changing Installation Type from File to Directory as suggested here
I was using the legacy version earlier on CM11, but since last 2 months FTL updates were not getting installed. So, tried this newer version.
Hope there's some workaround available for this issue.
Anyways, Thanks a ton for this project.
Well, a few days ago i followed the same instructions in #47 and it worked i tested it in some ad testers sites, But now i retried the process, and it does show me is enabled, however it won't block any ad
I just installed pihole on my phone but when I go to run it it just keeps saying it needs superuser privileges. And in terminal mode, it says it refused to connect to a certain website. Help!
Can the app or data be moved.to external sdcard? I'm asking because I'm trying to load it on a very old android tv stick that I got laying there, but it's internat storage is only 4G. So I want to know if someone has tried to move it to external sdcard, I've tried with AppMgrII and no luck. My device is rooted.
Hello, I was installing Pi-Hole for Android on my Samsung Galaxy S8 with Magisk and i get this error :
pideploy: /data/user/0/com.desktopecho.pideploy/files/cli.sh: line 1068: mkdir: Permission denied
while installing.
I activate the Storage Access.
I restart the Application.
I restart my Phone and i still get this error.
What should i do ?
Will this program work on GrapheneOS ?
Hi! I noticed that in the default unbound configuration file (pihole.conf) that it is forwarding to quad9 and cloudflare servers.
When i try to use the unbound configuration from pihole website, unbound doesn't work.
Pihole unbound configuration:
server:
# If no logfile is specified, syslog is used
# logfile: "/var/log/unbound/unbound.log"
verbosity: 0
interface: 127.0.0.1
port: 5335
do-ip4: yes
do-udp: yes
do-tcp: yes
# May be set to yes if you have IPv6 connectivity
do-ip6: no
# You want to leave this to no unless you have *native* IPv6. With 6to4 and
# Terredo tunnels your web browser should favor IPv4 for the same reasons
prefer-ip6: no
# Use this only when you downloaded the list of primary root servers!
# If you use the default dns-root-data package, unbound will find it automatically
#root-hints: "/var/lib/unbound/root.hints"
# Trust glue only if it is within the server's authority
harden-glue: yes
# Require DNSSEC data for trust-anchored zones, if such data is absent, the zone becomes BOGUS
harden-dnssec-stripped: yes
# Don't use Capitalization randomization as it known to cause DNSSEC issues sometimes
# see https://discourse.pi-hole.net/t/unbound-stubby-or-dnscrypt-proxy/9378 for further details
use-caps-for-id: no
# Reduce EDNS reassembly buffer size.
# IP fragmentation is unreliable on the Internet today, and can cause
# transmission failures when large DNS messages are sent via UDP. Even
# when fragmentation does work, it may not be secure; it is theoretically
# possible to spoof parts of a fragmented DNS message, without easy
# detection at the receiving end. Recently, there was an excellent study
# >>> Defragmenting DNS - Determining the optimal maximum UDP response size for DNS <<<
# by Axel Koolhaas, and Tjeerd Slokker (https://indico.dns-oarc.net/event/36/contributions/776/)
# in collaboration with NLnet Labs explored DNS using real world data from the
# the RIPE Atlas probes and the researchers suggested different values for
# IPv4 and IPv6 and in different scenarios. They advise that servers should
# be configured to limit DNS messages sent over UDP to a size that will not
# trigger fragmentation on typical network links. DNS servers can switch
# from UDP to TCP when a DNS response is too big to fit in this limited
# buffer size. This value has also been suggested in DNS Flag Day 2020.
edns-buffer-size: 1232
# Perform prefetching of close to expired message cache entries
# This only applies to domains that have been frequently queried
prefetch: yes
# One thread should be sufficient, can be increased on beefy machines. In reality for most users running on small networks or on a single machine, it should be unnecessary to seek performance enhancement by increasing num-threads above 1.
num-threads: 1
# Ensure kernel buffer is large enough to not lose messages in traffic spikes
so-rcvbuf: 1m
# Ensure privacy of local IP ranges
private-address: 192.168.0.0/16
private-address: 169.254.0.0/16
private-address: 172.16.0.0/12
private-address: 10.0.0.0/8
private-address: fd00::/8
private-address: fe80::/10
default config:
server:
access-control: 127.0.0.0/8 allow
cache-max-ttl: 14400
cache-min-ttl: 600
do-tcp: yes
hide-identity: yes
hide-version: yes
interface: 127.0.0.1
minimal-responses: yes
prefetch: yes
qname-minimisation: yes
rrset-roundrobin: yes
ssl-upstream: yes
use-caps-for-id: yes
verbosity: 1
port: 5335
forward-zone:
name: "."
forward-addr: 9.9.9.9@853 # quad9.net primary
forward-addr: 1.1.1.1@853 # cloudflare primary
forward-addr: 149.112.112.112@853 # quad9.net secondary
forward-addr: 1.0.0.1@853 # cloudflare secondary
I also tried using the root hints file, still doesn't work
Is there any way to make unbound work without forwarding to quad9 and cloudflare or any other dns server?
Hello dear developer and everyone reading,
installing this fork of Linuxdeploy made my life definitely easier setting all of this up but there is one really strange issue that I haven't seen here or in other places on the internet.
First things first:
My setup is an old Xiaomi note 4 (mido) with a Syberia Android 10 custom rom and root with SELinux by default set to permissive.
When I installed the app and set up the pihole the usual installation flow was almost instantly interrupted for a short moment with the error: "wget: write error: broken pipe" (two times)
But I did not care, since it worked out and I could start sucessfully.
I can access the site and also ssh without issues, but every time I restart the Pihole I get a message saying: "yes: standard output: Broken pipe" followed by the normal as it should startup.
The Pihole is also working and does its job but from time to time there is something strange happening.
My other Android devices in the home (MAC adresses set to static) lose their connection every second and try to reconnect in a loop.
I found out that I can solve this by double tapping the device with Pihole and going into the app, but doing this every hour is going to drive everyone insane.
This issue is not affecting the Laptop, TV (not Android), Vaccuum and so on.
I thought that this is happening because of power saving features of the Note 4, so I disabled everything possible but this did not help at all unfortunately. The settings in the Pideploy app are also still activated so the CPU has work to do when the screen is off.
Also there is one more thing and I guess it is directly related to the issue above.
From time to time the log in the Pideploy app gets a bit larger and it is always the same messages:
>>> stop
## core/net : do_stop
<<< stop
>>> start
## core/net : do_start
<<< start
(and so on)
I want to deploy a Pihole on a Huawei U8950-1 with Android 4.0.4, which creates some limitations. Firstly, because of the Android version I have to use Linux Deploy 2.5.0. Secondly, because it only has about 1 GB of spare memory, I have to use an SD card (it's an 8GB card formatted to FAT32, if it matters). So I installed the source image to the root of the SD card (/mnt/sdcard2/p4a17.tgz) and set /mnt/sdcard2/linux.img as the installation path, image size is 4000 MB. When installing I get the error "mount: mounting /dev/block/loop0 on /data/local/mnt failed: Device or resource busy". Here is the full log (with debug and trace mode):
+ PATH=/data/data/ru.meefik.linuxdeploy/files/bin:/sbin:/vendor/bin:/system/sbin:/system/bin:/system/xbin
+ printf >>> deploy
>>> deploy
+ /data/data/ru.meefik.linuxdeploy/files/bin/linuxdeploy -d -t deploy
+ config_which linux
+ local 'conf_file=linux'
+ '[' -n linux ]
+ '[' -n linux ]
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/config/linux.conf
+ echo /data/data/ru.meefik.linuxdeploy/files/config/linux.conf
+ CONF_FILE=/data/data/ru.meefik.linuxdeploy/files/config/linux.conf
+ basename /data/data/ru.meefik.linuxdeploy/files/config/linux.conf .conf
+ PROFILE=linux
+ OPTLST=' '
+ params_read /data/data/ru.meefik.linuxdeploy/files/config/linux.conf
+ local 'conf_file=/data/data/ru.meefik.linuxdeploy/files/config/linux.conf'
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/config/linux.conf ]
+ local item key val
+ read item
+ echo 'ARCH="armhf"'
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ key=ARCH
+ val='"armhf"'
+ '[' -n ARCH ]
+ eval 'ARCH="armhf"'
+ ARCH=armhf
+ '[' -n ' ' ]
+ OPTLST=' ARCH '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'DESKTOP="lxde"'
+ key=DESKTOP
+ val='"lxde"'
+ '[' -n DESKTOP ]
+ eval 'DESKTOP="lxde"'
+ DESKTOP=lxde
+ '[' -n ' ARCH ' ]
+ OPTLST=' ARCH DESKTOP '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'DISK_SIZE="4000"'
+ key=DISK_SIZE
+ val='"4000"'
+ '[' -n DISK_SIZE ]
+ eval 'DISK_SIZE="4000"'
+ DISK_SIZE=4000
+ '[' -n ' ARCH DESKTOP ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'DISTRIB="rootfs"'
+ key=DISTRIB
+ val='"rootfs"'
+ '[' -n DISTRIB ]
+ eval 'DISTRIB="rootfs"'
+ DISTRIB=rootfs
+ '[' -n ' ARCH DESKTOP DISK_SIZE ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'DNS=""'
+ key=DNS
+ val='""'
+ '[' -n DNS ]
+ eval 'DNS=""'
+ DNS=
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'FB_ARGS="-dpi' 100 -sharevts 'vt0"'
+ key=FB_ARGS
+ val='"-dpi 100 -sharevts vt0"'
+ '[' -n FB_ARGS ]
+ eval 'FB_ARGS="-dpi 100 -sharevts vt0"'
+ FB_ARGS='-dpi 100 -sharevts vt0'
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'FB_DEV="/dev/graphics/fb0"'
+ key=FB_DEV
+ val='"/dev/graphics/fb0"'
+ '[' -n FB_DEV ]
+ eval 'FB_DEV="/dev/graphics/fb0"'
+ FB_DEV=/dev/graphics/fb0
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'FB_DISPLAY="0"'
+ key=FB_DISPLAY
+ val='"0"'
+ '[' -n FB_DISPLAY ]
+ eval 'FB_DISPLAY="0"'
+ FB_DISPLAY=0
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'FB_FREEZE="none"'
+ key=FB_FREEZE
+ val='"none"'
+ '[' -n FB_FREEZE ]
+ eval 'FB_FREEZE="none"'
+ FB_FREEZE=none
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE '
+ read item
+ echo 'FB_INPUT="/dev/input/event0"'
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ key=FB_INPUT
+ val='"/dev/input/event0"'
+ '[' -n FB_INPUT ]
+ eval 'FB_INPUT="/dev/input/event0"'
+ FB_INPUT=/dev/input/event0
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'FB_REFRESH="true"'
+ key=FB_REFRESH
+ val='"true"'
+ '[' -n FB_REFRESH ]
+ eval 'FB_REFRESH="true"'
+ FB_REFRESH=true
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'FS_TYPE="ext4"'
+ key=FS_TYPE
+ val='"ext4"'
+ '[' -n FS_TYPE ]
+ eval 'FS_TYPE="ext4"'
+ FS_TYPE=ext4
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'GRAPHICS="vnc"'
+ key=GRAPHICS
+ val='"vnc"'
+ '[' -n GRAPHICS ]
+ eval 'GRAPHICS="vnc"'
+ GRAPHICS=vnc
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'INCLUDE="bootstrap' desktop extra/pulse graphics 'init"'
+ key=INCLUDE
+ val='"bootstrap desktop extra/pulse graphics init"'
+ '[' -n INCLUDE ]
+ eval 'INCLUDE="bootstrap desktop extra/pulse graphics init"'
+ INCLUDE='bootstrap desktop extra/pulse graphics init'
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'INIT="run-parts"'
+ key=INIT
+ val='"run-parts"'
+ '[' -n INIT ]
+ eval 'INIT="run-parts"'
+ INIT=run-parts
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT '
+ read item
+ echo 'INIT_ASYNC="false"'
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ key=INIT_ASYNC
+ val='"false"'
+ '[' -n INIT_ASYNC ]
+ eval 'INIT_ASYNC="false"'
+ INIT_ASYNC=false
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'INIT_LEVEL="3"'
+ key=INIT_LEVEL
+ val='"3"'
+ '[' -n INIT_LEVEL ]
+ eval 'INIT_LEVEL="3"'
+ INIT_LEVEL=3
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL '
+ read item
+ echo 'INIT_PATH="/etc/rc.local"'
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ key=INIT_PATH
+ val='"/etc/rc.local"'
+ '[' -n INIT_PATH ]
+ eval 'INIT_PATH="/etc/rc.local"'
+ INIT_PATH=/etc/rc.local
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'INIT_USER="root"'
+ key=INIT_USER
+ val='"root"'
+ '[' -n INIT_USER ]
+ eval 'INIT_USER="root"'
+ INIT_USER=root
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'LOCALE="C"'
+ key=LOCALE
+ val='"C"'
+ '[' -n LOCALE ]
+ eval 'LOCALE="C"'
+ LOCALE=C
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE '
+ read item
+ echo 'MOUNTS="/storage/' /system /storage/emulated/0/ /sdcard /sdcard1 '/sdcard"'
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ key=MOUNTS
+ val='"/storage/ /system /storage/emulated/0/ /sdcard /sdcard1 /sdcard"'
+ '[' -n MOUNTS ]
+ eval 'MOUNTS="/storage/ /system /storage/emulated/0/ /sdcard /sdcard1 /sdcard"'
+ MOUNTS='/storage/ /system /storage/emulated/0/ /sdcard /sdcard1 /sdcard'
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'NET_TRIGGER=""'
+ key=NET_TRIGGER
+ val='""'
+ '[' -n NET_TRIGGER ]
+ eval 'NET_TRIGGER=""'
+ NET_TRIGGER=
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER '
+ read item
+ echo 'POWER_TRIGGER=""'
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ key=POWER_TRIGGER
+ val='""'
+ '[' -n POWER_TRIGGER ]
+ eval 'POWER_TRIGGER=""'
+ POWER_TRIGGER=
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'PRIVILEGED_USERS="android"'
+ key=PRIVILEGED_USERS
+ val='"android"'
+ '[' -n PRIVILEGED_USERS ]
+ eval 'PRIVILEGED_USERS="android"'
+ PRIVILEGED_USERS=android
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS '
+ read item
+ echo 'PULSE_HOST="127.0.0.1"'
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ key=PULSE_HOST
+ val='"127.0.0.1"'
+ '[' -n PULSE_HOST ]
+ eval 'PULSE_HOST="127.0.0.1"'
+ PULSE_HOST=127.0.0.1
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST '
+ read item
+ echo 'PULSE_PORT="4712"'
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ key=PULSE_PORT
+ val='"4712"'
+ '[' -n PULSE_PORT ]
+ eval 'PULSE_PORT="4712"'
+ PULSE_PORT=4712
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'SOURCE_PATH="/mnt/sdcard2/p4a17.tgz"'
+ key=SOURCE_PATH
+ val='"/mnt/sdcard2/p4a17.tgz"'
+ '[' -n SOURCE_PATH ]
+ eval 'SOURCE_PATH="/mnt/sdcard2/p4a17.tgz"'
+ SOURCE_PATH=/mnt/sdcard2/p4a17.tgz
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH '
+ read item
+ echo 'SSH_ARGS=""'
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ key=SSH_ARGS
+ val='""'
+ '[' -n SSH_ARGS ]
+ eval 'SSH_ARGS=""'
+ SSH_ARGS=
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS '
+ read item
+ echo 'SSH_PORT="22"'
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ key=SSH_PORT
+ val='"22"'
+ '[' -n SSH_PORT ]
+ eval 'SSH_PORT="22"'
+ SSH_PORT=22
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'SUITE="buster"'
+ key=SUITE
+ val='"buster"'
+ '[' -n SUITE ]
+ eval 'SUITE="buster"'
+ SUITE=buster
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'TARGET_PATH="/mnt/sdcard2/linux.img"'
+ key=TARGET_PATH
+ val='"/mnt/sdcard2/linux.img"'
+ '[' -n TARGET_PATH ]
+ eval 'TARGET_PATH="/mnt/sdcard2/linux.img"'
+ TARGET_PATH=/mnt/sdcard2/linux.img
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'TARGET_TYPE="file"'
+ key=TARGET_TYPE
+ val='"file"'
+ '[' -n TARGET_TYPE ]
+ eval 'TARGET_TYPE="file"'
+ TARGET_TYPE=file
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'USER_NAME="android"'
+ key=USER_NAME
+ val='"android"'
+ '[' -n USER_NAME ]
+ eval 'USER_NAME="android"'
+ USER_NAME=android
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'USER_PASSWORD="12345"'
+ key=USER_PASSWORD
+ val='"12345"'
+ '[' -n USER_PASSWORD ]
+ eval 'USER_PASSWORD="12345"'
+ USER_PASSWORD=12345
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'VNC_ARGS=""'
+ key=VNC_ARGS
+ val='""'
+ '[' -n VNC_ARGS ]
+ eval 'VNC_ARGS=""'
+ VNC_ARGS=
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS '
+ read item
+ echo 'VNC_DEPTH="16"'
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ key=VNC_DEPTH
+ val='"16"'
+ '[' -n VNC_DEPTH ]
+ eval 'VNC_DEPTH="16"'
+ VNC_DEPTH=16
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'VNC_DISPLAY="0"'
+ key=VNC_DISPLAY
+ val='"0"'
+ '[' -n VNC_DISPLAY ]
+ eval 'VNC_DISPLAY="0"'
+ VNC_DISPLAY=0
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH VNC_DISPLAY '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'VNC_DPI="75"'
+ key=VNC_DPI
+ val='"75"'
+ '[' -n VNC_DPI ]
+ eval 'VNC_DPI="75"'
+ VNC_DPI=75
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH VNC_DISPLAY ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH VNC_DISPLAY VNC_DPI '
+ read item
+ echo 'VNC_HEIGHT="540"'
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ key=VNC_HEIGHT
+ val='"540"'
+ '[' -n VNC_HEIGHT ]
+ eval 'VNC_HEIGHT="540"'
+ VNC_HEIGHT=540
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH VNC_DISPLAY VNC_DPI ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH VNC_DISPLAY VNC_DPI VNC_HEIGHT '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'VNC_WIDTH="960"'
+ key=VNC_WIDTH
+ val='"960"'
+ '[' -n VNC_WIDTH ]
+ eval 'VNC_WIDTH="960"'
+ VNC_WIDTH=960
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH VNC_DISPLAY VNC_DPI VNC_HEIGHT ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH VNC_DISPLAY VNC_DPI VNC_HEIGHT VNC_WIDTH '
+ read item
+ echo 'X11_DISPLAY="0"'
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ key=X11_DISPLAY
+ val='"0"'
+ '[' -n X11_DISPLAY ]
+ eval 'X11_DISPLAY="0"'
+ X11_DISPLAY=0
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH VNC_DISPLAY VNC_DPI VNC_HEIGHT VNC_WIDTH ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH VNC_DISPLAY VNC_DPI VNC_HEIGHT VNC_WIDTH X11_DISPLAY '
+ read item
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ echo 'X11_HOST="127.0.0.1"'
+ key=X11_HOST
+ val='"127.0.0.1"'
+ '[' -n X11_HOST ]
+ eval 'X11_HOST="127.0.0.1"'
+ X11_HOST=127.0.0.1
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH VNC_DISPLAY VNC_DPI VNC_HEIGHT VNC_WIDTH X11_DISPLAY ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH VNC_DISPLAY VNC_DPI VNC_HEIGHT VNC_WIDTH X11_DISPLAY X11_HOST '
+ read item
+ echo 'X11_SDL="false"'
+ grep -o '^[0-9A-Z_]\{1,32\}'
+ key=X11_SDL
+ val='"false"'
+ '[' -n X11_SDL ]
+ eval 'X11_SDL="false"'
+ X11_SDL=false
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH VNC_DISPLAY VNC_DPI VNC_HEIGHT VNC_WIDTH X11_DISPLAY X11_HOST ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH VNC_DISPLAY VNC_DPI VNC_HEIGHT VNC_WIDTH X11_DISPLAY X11_HOST X11_SDL '
+ read item
+ + echo 'X11_SDL_DELAY="15"'
grep -o '^[0-9A-Z_]\{1,32\}'
+ key=X11_SDL_DELAY
+ val='"15"'
+ '[' -n X11_SDL_DELAY ]
+ eval 'X11_SDL_DELAY="15"'
+ X11_SDL_DELAY=15
+ '[' -n ' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH VNC_DISPLAY VNC_DPI VNC_HEIGHT VNC_WIDTH X11_DISPLAY X11_HOST X11_SDL ' ]
+ OPTLST=' ARCH DESKTOP DISK_SIZE DISTRIB DNS FB_ARGS FB_DEV FB_DISPLAY FB_FREEZE FB_INPUT FB_REFRESH FS_TYPE GRAPHICS INCLUDE INIT INIT_ASYNC INIT_LEVEL INIT_PATH INIT_USER LOCALE MOUNTS NET_TRIGGER POWER_TRIGGER PRIVILEGED_USERS PULSE_HOST PULSE_PORT SOURCE_PATH SSH_ARGS SSH_PORT SUITE TARGET_PATH TARGET_TYPE USER_NAME USER_PASSWORD VNC_ARGS VNC_DEPTH VNC_DISPLAY VNC_DPI VNC_HEIGHT VNC_WIDTH X11_DISPLAY X11_HOST X11_SDL X11_SDL_DELAY '
+ read item
+ WITHOUT_CHECK=false
+ WITHOUT_DEPENDS=false
+ REVERSE_DEPENDS=false
+ EXCLUDE_COMPONENTS=
+ '[' -d /data/data/ru.meefik.linuxdeploy/files/config ]
+ '[' -d /data/data/ru.meefik.linuxdeploy/files/include ]
+ '[' -d /data/data/ru.meefik.linuxdeploy/files/tmp ]
+ '[' -d /data/local/mnt ]
+ OPTCMD=deploy
+ shift
+ DO_ACTION='do_install && do_configure'
+ OPTIND=1
+ getopts :n:mic FLAG
+ shift 0
+ params_parse
+ OPTIND=1
+ '[' 0 -gt 0 ]
+ shift 0
+ '[' '=' true ]
+ '[' 0 -gt 0 ]
+ component_exec 'bootstrap desktop extra/pulse graphics init'
+ local 'components=bootstrap desktop extra/pulse graphics init'
+ '[' false '!=' true ]
+ IGNORE_DEPENDS=' ' component_depends bootstrap desktop extra/pulse graphics init
+ local 'components=bootstrap desktop extra/pulse graphics init'
+ '[' -n 'bootstrap desktop extra/pulse graphics init' ]
+ local component conf_file TARGET DEPENDS
+ component=bootstrap
+ '[' -z ' ' ]
+ IGNORE_DEPENDS=' bootstrap '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/bootstrap/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/bootstrap/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/bootstrap/deploy.conf
+ eval 'DEPENDS="bootstrap/rootfs' 'bootstrap/${DISTRIB}' 'core"'
+ DEPENDS='bootstrap/rootfs bootstrap/rootfs core'
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends bootstrap/rootfs bootstrap/rootfs core
+ local 'components=bootstrap/rootfs bootstrap/rootfs core'
+ '[' -n 'bootstrap/rootfs bootstrap/rootfs core' ]
+ local component conf_file TARGET DEPENDS
+ component=bootstrap/rootfs
+ '[' -z ' bootstrap ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/bootstrap/rootfs/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/bootstrap/rootfs/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/bootstrap/rootfs/deploy.conf
+ eval
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends
+ local 'components='
+ '[' -n ]
+ return 0
+ echo bootstrap/rootfs
+ component=bootstrap/rootfs
+ '[' -z ]
+ continue
+ component=core
+ '[' -z ' bootstrap bootstrap/rootfs ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/core/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/core/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/core/deploy.conf
+ eval 'DEPENDS="core/emulator' core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo 'core/unchroot"'
+ DEPENDS='core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot'
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot
+ local 'components=core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot'
+ '[' -n 'core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot' ]
+ local component conf_file TARGET DEPENDS
+ component=core/emulator
+ '[' -z ' bootstrap bootstrap/rootfs core ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/core/emulator/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/core/emulator/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/core/emulator/deploy.conf
+ eval
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends
+ local 'components='
+ '[' -n ]
+ return 0
+ echo core/emulator
+ component=core/motd
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/core/motd/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/core/motd/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/core/motd/deploy.conf
+ eval
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends
+ local 'components='
+ '[' -n ]
+ return 0
+ echo core/motd
+ component=core/hosts
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/core/hosts/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/core/hosts/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/core/hosts/deploy.conf
+ eval
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends
+ local 'components='
+ '[' -n ]
+ return 0
+ echo core/hosts
+ component=core/hostname
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/core/hostname/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/core/hostname/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/core/hostname/deploy.conf
+ eval
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends
+ local 'components='
+ '[' -n ]
+ return 0
+ echo core/hostname
+ component=core/mnt
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/core/mnt/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/core/mnt/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/core/mnt/deploy.conf
+ eval
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends
+ local 'components='
+ '[' -n ]
+ return 0
+ echo core/mnt
+ component=core/net
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/core/net/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/core/net/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/core/net/deploy.conf
+ eval
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends
+ local 'components='
+ '[' -n ]
+ return 0
+ echo core/net
+ component=core/timezone
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/core/timezone/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/core/timezone/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/core/timezone/deploy.conf
+ eval
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends
+ local 'components='
+ '[' -n ]
+ return 0
+ echo core/timezone
+ component=core/su
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/core/su/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/core/su/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/core/su/deploy.conf
+ eval
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends
+ local 'components='
+ '[' -n ]
+ return 0
+ echo core/su
+ component=core/locale
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/core/locale/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/core/locale/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/core/locale/deploy.conf
+ eval
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends
+ local 'components='
+ '[' -n ]
+ return 0
+ echo core/locale
+ component=core/aid
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/core/aid/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/core/aid/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/core/aid/deploy.conf
+ eval
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends
+ local 'components='
+ '[' -n ]
+ return 0
+ echo core/aid
+ component=core/profile
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/core/profile/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/core/profile/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/core/profile/deploy.conf
+ eval
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends
+ local 'components='
+ '[' -n ]
+ return 0
+ echo core/profile
+ component=core/sudo
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/core/sudo/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/core/sudo/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/core/sudo/deploy.conf
+ eval
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends
+ local 'components='
+ '[' -n ]
+ return 0
+ echo core/sudo
+ component=core/unchroot
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/core/unchroot/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/core/unchroot/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/core/unchroot/deploy.conf
+ eval
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends
+ local 'components='
+ '[' -n ]
+ return 0
+ echo core/unchroot
+ echo core
+ echo bootstrap
+ component=desktop
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/desktop/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/desktop/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/desktop/deploy.conf
+ eval 'DEPENDS="bootstrap' desktop/desktop-base 'desktop/${DESKTOP}"'
+ DEPENDS='bootstrap desktop/desktop-base desktop/lxde'
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends bootstrap desktop/desktop-base desktop/lxde
+ local 'components=bootstrap desktop/desktop-base desktop/lxde'
+ '[' -n 'bootstrap desktop/desktop-base desktop/lxde' ]
+ local component conf_file TARGET DEPENDS
+ component=bootstrap
+ '[' -z ]
+ continue
+ component=desktop/desktop-base
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/desktop/desktop-base/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/desktop/desktop-base/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/desktop/desktop-base/deploy.conf
+ eval 'DEPENDS="desktop"'
+ DEPENDS=desktop
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends desktop
+ local 'components=desktop'
+ '[' -n desktop ]
+ local component conf_file TARGET DEPENDS
+ component=desktop
+ '[' -z ]
+ continue
+ echo desktop/desktop-base
+ component=desktop/lxde
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base desktop/lxde '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/desktop/lxde/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/desktop/lxde/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/desktop/lxde/deploy.conf
+ eval 'DEPENDS="desktop' 'desktop/dbus"'
+ DEPENDS='desktop desktop/dbus'
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends desktop desktop/dbus
+ local 'components=desktop desktop/dbus'
+ '[' -n 'desktop desktop/dbus' ]
+ local component conf_file TARGET DEPENDS
+ component=desktop
+ '[' -z ]
+ continue
+ component=desktop/dbus
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base desktop/lxde ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base desktop/lxde desktop/dbus '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/desktop/dbus/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/desktop/dbus/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/desktop/dbus/deploy.conf
+ eval 'DEPENDS="extra"'
+ DEPENDS=extra
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends extra
+ local 'components=extra'
+ '[' -n extra ]
+ local component conf_file TARGET DEPENDS
+ component=extra
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base desktop/lxde desktop/dbus ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base desktop/lxde desktop/dbus extra '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/extra/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/extra/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/extra/deploy.conf
+ eval 'DEPENDS="bootstrap"'
+ DEPENDS=bootstrap
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends bootstrap
+ local 'components=bootstrap'
+ '[' -n bootstrap ]
+ local component conf_file TARGET DEPENDS
+ component=bootstrap
+ '[' -z ]
+ continue
+ echo extra
+ echo desktop/dbus
+ echo desktop/lxde
+ echo desktop
+ component=extra/pulse
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base desktop/lxde desktop/dbus extra ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base desktop/lxde desktop/dbus extra extra/pulse '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/extra/pulse/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/extra/pulse/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/extra/pulse/deploy.conf
+ eval
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends bootstrap desktop/desktop-base desktop/lxde
+ local 'components=bootstrap desktop/desktop-base desktop/lxde'
+ '[' -n 'bootstrap desktop/desktop-base desktop/lxde' ]
+ local component conf_file TARGET DEPENDS
+ component=bootstrap
+ '[' -z ]
+ continue
+ component=desktop/desktop-base
+ '[' -z ]
+ continue
+ component=desktop/lxde
+ '[' -z ]
+ continue
+ echo extra/pulse
+ component=graphics
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base desktop/lxde desktop/dbus extra extra/pulse ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base desktop/lxde desktop/dbus extra extra/pulse graphics '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/graphics/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/graphics/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/graphics/deploy.conf
+ eval 'DEPENDS="bootstrap' 'graphics/${GRAPHICS}"'
+ DEPENDS='bootstrap graphics/vnc'
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends bootstrap graphics/vnc
+ local 'components=bootstrap graphics/vnc'
+ '[' -n 'bootstrap graphics/vnc' ]
+ local component conf_file TARGET DEPENDS
+ component=bootstrap
+ '[' -z ]
+ continue
+ component=graphics/vnc
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base desktop/lxde desktop/dbus extra extra/pulse graphics ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base desktop/lxde desktop/dbus extra extra/pulse graphics graphics/vnc '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/graphics/vnc/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/graphics/vnc/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/graphics/vnc/deploy.conf
+ eval 'DEPENDS="graphics"'
+ DEPENDS=graphics
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends graphics
+ local 'components=graphics'
+ '[' -n graphics ]
+ local component conf_file TARGET DEPENDS
+ component=graphics
+ '[' -z ]
+ continue
+ echo graphics/vnc
+ echo graphics
+ component=init
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base desktop/lxde desktop/dbus extra extra/pulse graphics graphics/vnc ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base desktop/lxde desktop/dbus extra extra/pulse graphics graphics/vnc init '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/init/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/init/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/init/deploy.conf
+ eval 'DEPENDS="init/${INIT}"'
+ DEPENDS=init/run-parts
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends init/run-parts
+ local 'components=init/run-parts'
+ '[' -n init/run-parts ]
+ local component conf_file TARGET DEPENDS
+ component=init/run-parts
+ '[' -z ' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base desktop/lxde desktop/dbus extra extra/pulse graphics graphics/vnc init ' ]
+ IGNORE_DEPENDS=' bootstrap bootstrap/rootfs core core/emulator core/motd core/hosts core/hostname core/mnt core/net core/timezone core/su core/locale core/aid core/profile core/sudo core/unchroot desktop desktop/desktop-base desktop/lxde desktop/dbus extra extra/pulse graphics graphics/vnc init init/run-parts '
+ conf_file=/data/data/ru.meefik.linuxdeploy/files/include/init/run-parts/deploy.conf
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/init/run-parts/deploy.conf ]
+ grep -e '^TARGET=' -e '^DEPENDS=' /data/data/ru.meefik.linuxdeploy/files/include/init/run-parts/deploy.conf
+ eval 'DEPENDS="init"'
+ DEPENDS=init
+ '[' false '!=' true ]
+ component_is_compatible
+ local 'target='
+ '[' -n ]
+ return 0
+ '[' false '=' true ]
+ component_depends init
+ local 'components=init'
+ '[' -n init ]
+ local component conf_file TARGET DEPENDS
+ component=init
+ '[' -z ]
+ continue
+ echo init/run-parts
+ echo init
+ components='bootstrap/rootfs
core/emulator
core/motd
core/hosts
core/hostname
core/mnt
core/net
core/timezone
core/su
core/locale
core/aid
core/profile
core/sudo
core/unchroot
core
bootstrap
desktop/desktop-base
extra
desktop/dbus
desktop/lxde
desktop
extra/pulse
graphics/vnc
graphics
init/run-parts
init'
+ '[' -n 'bootstrap/rootfs
core/emulator
core/motd
core/hosts
core/hostname
core/mnt
core/net
core/timezone
core/su
core/locale
core/aid
core/profile
core/sudo
core/unchroot
core
bootstrap
desktop/desktop-base
extra
desktop/dbus
desktop/lxde
desktop
extra/pulse
graphics/vnc
graphics
init/run-parts
init' ]
+ set -e
+ COMPONENT_DIR=/data/data/ru.meefik.linuxdeploy/files/include/bootstrap/rootfs
+ '[' -d /data/data/ru.meefik.linuxdeploy/files/include/bootstrap/rootfs ]
+ unset NAME DESC TARGET PARAMS DEPENDS EXTENDS
+ TARGET='*:*:*'
+ . /data/data/ru.meefik.linuxdeploy/files/include/bootstrap/rootfs/deploy.conf
+ NAME=rootfs
+ DESC='Prepare and import RootFS'
+ PARAMS='SOURCE_PATH TARGET_PATH'
+ EXTENDS=bootstrap/rootfs
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/bootstrap/rootfs/deploy.sh ]
+ . /data/data/ru.meefik.linuxdeploy/files/include/bootstrap/rootfs/deploy.sh
+ '[' -n file ]
+ '[' -n ext4 ]
+ '[' -n 4000 ]
+ '[' -e /data/data/ru.meefik.linuxdeploy/files/include/bootstrap/rootfs/deploy.sh ]
+ . /data/data/ru.meefik.linuxdeploy/files/include/bootstrap/rootfs/deploy.sh
+ '[' -n file ]
+ '[' -n ext4 ]
+ '[' -n 4000 ]
+ component_is_exclude bootstrap/rootfs
+ local 'component=bootstrap/rootfs'
+ '[' -n bootstrap/rootfs ]
+ return 1
+ '[' false '!=' true ]
+ params_check SOURCE_PATH TARGET_PATH
+ local 'params_list=SOURCE_PATH TARGET_PATH'
+ local key val params_lost
+ eval 'val=$SOURCE_PATH'
+ val=/mnt/sdcard2/p4a17.tgz
+ '[' -z /mnt/sdcard2/p4a17.tgz ]
+ eval 'val=$TARGET_PATH'
+ val=/mnt/sdcard2/linux.img
+ '[' -z /mnt/sdcard2/linux.img ]
+ '[' -n ]
+ return 0
+ '[' true '=' true ]
+ msg '## bootstrap/rootfs : do_install && do_configure'
+ echo '## bootstrap/rootfs : do_install && do_configure'
## bootstrap/rootfs : do_install && do_configure
+ set +e
+ eval do_install '&&' do_configure
+ do_install
+ '[' /data/local/mnt '!=' /mnt/sdcard2/linux.img ]
+ container_mounted
+ '[' chroot '=' chroot ]
+ is_mounted /data/local/mnt
+ local 'mount_point=/data/local/mnt'
+ '[' -n /data/local/mnt ]
+ grep -q ' /data/local/mnt ' /proc/mounts
+
+ return 1
+ msg ':: Installing bootstrap/rootfs ... '
+ echo ':: Installing bootstrap/rootfs ... '
:: Installing bootstrap/rootfs ...
+ rootfs_make
+ msg -n 'Checking installation path ... '
+ echo -n 'Checking installation path ... '
Checking installation path ... + '[' -e /mnt/sdcard2/linux.img -a '!' -f /mnt/sdcard2/linux.img ]
+ '[' -n /mnt/sdcard2 -a '!' -e /mnt/sdcard2 ]
+ msg 'done'
+ echo 'done'
done
+ '[' file '=' file ]
+ local 'file_size=0'
+ '[' -f /mnt/sdcard2/linux.img ]
+ stat -c '%s' /mnt/sdcard2/linux.img
+ file_size=4194304000
+ '[' -z 4000 -o 4000 -le 0 ]
+ let 'file_size=4194304000/1048576'
+ '[' 4000 '!=' 4000 ]
+ '[' file '=' file -o file '=' partition ]
+ msg -n 'Making file system (ext4) ... '
+ echo -n 'Making file system (ext4) ... '
Making file system (ext4) ... + losetup -a
+ grep -c /mnt/sdcard2/linux.img
+ local 'loop_exist=0'
+ grep -c /mnt/sdcard2/linux.img /proc/mounts
+ local 'img_mounted=0'
+ '[' 0 -ne 0 -o 0 -ne 0 ]
+ which mke2fs
+ local 'makefs=/data/data/ru.meefik.linuxdeploy/files/bin/mke2fs'
+ '[' -n /data/data/ru.meefik.linuxdeploy/files/bin/mke2fs ]
+ /data/data/ru.meefik.linuxdeploy/files/bin/mke2fs -V
+ makefs='/data/data/ru.meefik.linuxdeploy/files/bin/mke2fs -q -FFF -t ext4'
+ /data/data/ru.meefik.linuxdeploy/files/bin/mke2fs -q -FFF -t ext4 /mnt/sdcard2/linux.img
Warning: could not read block 0: Attempt to read block from filesystem resulted in short read
+ is_ok fail 'done'
+ '[' 0 -eq 0 ]
+ '[' -n 'done' ]
+ msg 'done'
+ echo 'done'
done
+ return 0
+ '[' file '=' directory ]
+ '[' file '=' ram ]
+ return 0
+ container_mount
+ '[' chroot '=' chroot ]
+ '[' 0 -eq 0 ]
+ container_mount root proc sys dev shm pts fd tty tun binfmt_misc
+ '[' chroot '=' chroot ]
+ '[' 10 -eq 0 ]
+ params_check TARGET_PATH
+ local 'params_list=TARGET_PATH'
+ local key val params_lost
+ eval 'val=$TARGET_PATH'
+ val=/mnt/sdcard2/linux.img
+ '[' -z /mnt/sdcard2/linux.img ]
+ '[' -n ]
+ return 0
+ msg -n 'Checking file system ... '
+ echo -n 'Checking file system ... '
Checking file system ... + fs_check
+ is_mounted /data/local/mnt
+ local 'mount_point=/data/local/mnt'
+ '[' -n /data/local/mnt ]
+ grep -q ' /data/local/mnt ' /proc/mounts
+
+ return 1
+ which e2fsck
+ local 'checkfs=/data/data/ru.meefik.linuxdeploy/files/bin/e2fsck'
+ '[' -z /data/data/ru.meefik.linuxdeploy/files/bin/e2fsck ]
+ /data/data/ru.meefik.linuxdeploy/files/bin/e2fsck -p /mnt/sdcard2/linux.img
/mnt/sdcard2/linux.img: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
(i.e., without -a or -p options)
+ return 0
+ is_ok skip 'done'
+ '[' 0 -eq 0 ]
+ '[' -n 'done' ]
+ msg 'done'
+ echo 'done'
done
+ return 0
+ msg 'Mounting the container: '
+ echo 'Mounting the container: '
Mounting the container:
+ local item
+ mount_part root
+ msg -n '/ ... '
+ echo -n '/ ... '
/ ... + is_mounted /data/local/mnt
+ local 'mount_point=/data/local/mnt'
+ '[' -n /data/local/mnt ]
+ grep -q ' /data/local/mnt ' /proc/mounts
+
+ return 1
+ '[' -d /data/local/mnt ]
+ local mnt_opts
+ '[' -d /mnt/sdcard2/linux.img ]
+ mnt_opts=rw,relatime
+ mount -o rw,relatime /mnt/sdcard2/linux.img /data/local/mnt
mount: mounting /dev/block/loop0 on /data/local/mnt failed: Device or resource busy
+ is_ok fail 'done'
+ '[' 255 -eq 0 ]
+ '[' -n fail ]
+ msg fail
+ echo fail
fail
+ return 1
+ return 1
+ return 1
+ return 1
+ return 1
+ exit 1
+ is_ok
+ '[' 1 -eq 0 ]
+ '[' -n ]
+ return 1
+ return 1
+ printf <<< deploy
<<< deploy
+ exit 0
Hey Linux deploy gives me a Error after start "rc.local..... fail"
How can i fix it ?
00:09:41] >>> start
[00:09:41] Checking file system ... skip
[00:09:41] Mounting the container:
[00:09:41] / ... skip
[00:09:41] /proc ... skip
[00:09:41] /sys ... skip
[00:09:41] /dev ... skip
[00:09:41] /dev/shm ... skip
[00:09:41] /dev/pts ... skip
[00:09:41] :: Starting core/emulator ... skip
[00:09:41] :: Configuring core/mnt ...
[00:09:41] :: Configuring core/net ...
[00:09:41] :: Starting init/run-parts:
[00:09:41] rc.local ... fail
[00:09:41] <<< start
Health status of this list: | List was not downloaded so far
-- | --
This list was added to Pi-hole | 7 minutes ago (2022-01-22 15:18:03)
Database entry was last modified | 6 minutes ago (2022-01-22 15:18:32)
The list contents were last updated | a few seconds ago (2022-01-2215:24:22)
Number of domains on this list: | N/A
Number of invalid domains on this list: | N/A
Database ID of this list: | 35
"Health status of this list", "Number of domains on this list", "Number of invalid domains on this list" not showing any info.
While it does actually updates it and working.
This is happening with all the lists in the web UI.
Any idea what might be the issue?
[android@localhost ~]$ pihole -g
[i] Neutrino emissions detected...
[✓] Pulling blocklist source list into range
[✓] Preparing new gravity database
[i] Using libz compression
[i] Target: https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts
[✓] Status: Retrieval successful
[i] Analyzed 97960 domains
[i] List stayed unchanged
[i] Target: https://s3.amazonaws.com/lists.disconnect.me/simple_tracking.txt
[✓] Status: No changes detected
[i] Analyzed 34 domains
[i] Target: https://s3.amazonaws.com/lists.disconnect.me/simple_ad.txt
[✓] Status: No changes detected
[i] Analyzed 2701 domains
[i] Target: https://dbl.oisd.nl/
[✓] Status: No changes detected
[i] Analyzed 1134791 domains
[i] Target: https://raw.githubusercontent.com/PolishFiltersTeam/KADhosts/master/KADhosts.txt
[✓] Status: Retrieval successful
[i] Analyzed 42916 domains
[i] List stayed unchanged
[i] Target: https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.Spam/hosts
[✓] Status: Retrieval successful
[i] Analyzed 57 domains
[i] List stayed unchanged
[i] Target: https://v.firebog.net/hosts/static/w3kbl.txt
[✓] Status: No changes detected
[i] Analyzed 357 domains
[i] Target: https://adaway.org/hosts.txt
[✓] Status: No changes detected
[i] Analyzed 7525 domains
[i] Target: https://v.firebog.net/hosts/AdguardDNS.txt
[✓] Status: No changes detected
[i] Analyzed 43805 domains
[i] Target: https://v.firebog.net/hosts/Admiral.txt
[✓] Status: No changes detected
[i] Analyzed 636 domains
[i] Target: https://raw.githubusercontent.com/anudeepND/blacklist/master/adservers.txt
[✓] Status: Retrieval successful
[i] Analyzed 42292 domains
[i] List stayed unchanged
[i] Target: https://v.firebog.net/hosts/Easylist.txt
[✓] Status: No changes detected
[i] Analyzed 16300 domains
[i] Target: https://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&showintro=0&mimetype=plaintext
[✓] Status: Retrieval successful
[i] Received empty file
[✗] List download failed: using previously cached list
[i] Analyzed 3676 domains
[i] Target: https://raw.githubusercontent.com/FadeMind/hosts.extras/master/UncheckyAds/hosts
[✓] Status: No changes detected
[i] Analyzed 9 domains
[i] Target: https://raw.githubusercontent.com/bigdargon/hostsVN/master/hosts
[✓] Status: Retrieval successful
[i] Analyzed 15267 domains
[i] List stayed unchanged
[i] Target: https://v.firebog.net/hosts/Easyprivacy.txt
[✓] Status: No changes detected
[i] Analyzed 12881 domains
[i] Target: https://v.firebog.net/hosts/Prigent-Ads.txt
[✓] Status: No changes detected
[i] Analyzed 3670 domains
[i] Target: https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.2o7Net/hosts
[✓] Status: Retrieval successful
[i] Analyzed 1286 domains
[i] List stayed unchanged
[i] Target: https://raw.githubusercontent.com/crazy-max/WindowsSpyBlocker/master/data/hosts/spy.txt
[✓] Status: Retrieval successful
[i] Analyzed 378 domains
[i] List stayed unchanged
[i] Target: https://hostfiles.frogeye.fr/firstparty-trackers-hosts.txt
[✓] Status: Retrieval successful
[i] Received empty file
[✗] List download failed: using previously cached list
[i] Analyzed 14039 domains
[i] Target: https://raw.githubusercontent.com/Zelo72/rpi/master/pihole/blocklists/kees1958.txt
[✓] Status: Retrieval successful
[i] Analyzed 4826 domains
[i] List stayed unchanged
[i] Target: https://raw.githubusercontent.com/DandelionSprout/adfilt/master/Alternate%20versions%20Anti-Malware%20List/AntiMalwareHosts.txt
[✓] Status: Retrieval successful
[i] Analyzed 6622 domains
[i] List stayed unchanged
[i] Target: https://osint.digitalside.it/Threat-Intel/lists/latestdomains.txt
[✓] Status: Retrieval successful
[i] Received empty file
[✗] List download failed: using previously cached list
[i] Analyzed 1116 domains
[i] Target: https://s3.amazonaws.com/lists.disconnect.me/simple_malvertising.txt
[✓] Status: No changes detected
[i] Analyzed 2735 domains
[i] Target: https://v.firebog.net/hosts/Prigent-Crypto.txt
[✓] Status: No changes detected
[i] Analyzed 14148 domains
[i] Target: https://bitbucket.org/ethanr/dns-blacklists/raw/8575c9f96e5b4a1308f2f12394abd86d0927a4a0/bad_lists/Mandiant_APT1_Report_Appendix_D.txt
[✓] Status: No changes detected
[i] Analyzed 2046 domains
[i] Target: https://phishing.army/download/phishing_army_blocklist_extended.txt
[✓] Status: No changes detected
[i] Analyzed 53981 domains
[i] Target: https://gitlab.com/quidsup/notrack-blocklists/raw/master/notrack-malware.txt
[✓] Status: Retrieval successful
[i] Analyzed 325 domains
[i] List stayed unchanged
[i] Target: https://raw.githubusercontent.com/Spam404/lists/master/main-blacklist.txt
[✓] Status: Retrieval successful
[i] Analyzed 8148 domains
[i] List stayed unchanged
[i] Target: https://raw.githubusercontent.com/FadeMind/hosts.extras/master/add.Risk/hosts
[✓] Status: Retrieval successful
[i] Analyzed 2202 domains
[i] List stayed unchanged
[i] Target: https://urlhaus.abuse.ch/downloads/hostfile/
[✗] Status: Connection Refused
[✗] List download failed: using previously cached list
[i] Analyzed 1315 domains
[i] Target: https://zerodot1.gitlab.io/CoinBlockerLists/hosts_browser
[✓] Status: No changes detected
[i] Analyzed 3496 domains
[i] Target: https://raw.githubusercontent.com/llacb47/mischosts/master/tiktok-hosts
[✓] Status: Retrieval successful
[i] Analyzed 184 domains
[i] List stayed unchanged
[✓] Storing downloaded domains in new gravity database
[✓] Building tree
[✓] Swapping databases
[✓] The old database remains available.
Any chance you share the img here on GitHub or maybe on Google drive? Link to website doesn't seem to be working.
Thanks.
I am testing your pihole centOS system image since yesterday.
pihole and unbound are working perfectly.
My only problem is this:
How can i get PADD to show automatically in Fullscreen, without an titlebar or something on an rdp client on the same device?
thanks for your previous work
[android@localhost ~]$ pihole -v
Pi-hole version is v5.8.1 (Latest: v5.9)
AdminLTE version is v5.10.1 (Latest: v5.11)
FTL version is v5.14 (Latest: v5.14)
[android@localhost ~]$ pihole -up
[✓] Checking for git
[✓] Checking for iproute
[✓] Checking for newt
[✓] Checking for procps-ng
[✓] Checking for which
[✓] Checking for chkconfig
[✓] Checking for ca-certificates
[i] Checking for updates...
[i] Pi-hole Core: up to date
[i] Web Interface: up to date
[i] FTL: up to date
[✓] Everything is up to date!
[✓] Update complete!
/etc/pihole/versions: line 14: invalid: command not found
/etc/pihole/versions: line 15: Command:: command not found
/etc/pihole/versions: line 16: Try: command not found
Cloning into 'FTL'...sion is v5.14.1
remote: Enumerating objects: 295, done.
remote: Counting objects: 100% (295/295), done.
remote: Compressing objects: 100% (279/279), done.
remote: Total 295 (delta 25), reused 105 (delta 12), pack-reused 0
Receiving objects: 100% (295/295), 3.38 MiB | 104.00 KiB/s, done.
Resolving deltas: 100% (25/25), done.
Building pihole-FTL from source. This will take a few minutes...
/etc/pihole/versions: line 14: invalid: command not found
/etc/pihole/versions: line 15: Command:: command not found
/etc/pihole/versions: line 16: Try: command not found
Pi-hole version is v5.14.1 (Latest: v5.14.1)
AdminLTE version is v5.17 (Latest: v5.17)
FTL version is v5.16.3 (Latest: v5.19.2)
[✓] FTL is listening on port 53
[✓] UDP (IPv4)
[✓] TCP (IPv4)
[✓] UDP (IPv6)
[✓] TCP (IPv6)
[✓] Pi-hole blocking is enabled
Hello, I've been trying to get pihole to be accessible to the router and other devices on the local network to no avail, lighttpd is running and I tried reatarting to dodgy results. Ports are correctly used by lighttpd (port 80) and I can access the pihole from the device itself, but none other, either via web interface, ssh or rdp, the phone is a rooted Samsung Galaxy J1 2016 running unofficial LineageOS 14.1 (Android 7.1.2)
I am curious if its possible to install Pivpn with this my Pihole for android installation and run them both at the same time
good day, I yried installing the android apk version, but it seems like that unbound is not getting installed with my instance… i tried set it up as my dns for my phone and on the web interface, the reply keeps getting posted as ‘N/A’ but when i untick the custom dns server (127.0.0.1) and tick 8.8.8.8, the internet works…
i’m not sure if this is relevant, but when i type ‘unbound’ as a command on the ssh it says that it is an unknown command, conversely, on the legacy version, typing in the same command replies what seems to be a log(?)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.