Disclaimer
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
This may damage your phone use at your own risk!
Introduction
The WP Telnet Daemon is a light weight server written in C++ as a static library using the native Win32 API on Windows Phone. It allows a telnet client such as PUTTY to connect from a machine on the same LAN.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
It provides a shell similar to the dos prompt with basic commands such as CD, DIR, MKDIR, RMDIR, PS, KILL, MOVE, COPY and ATTRIB. A registry editor is provided which can be loaded by using the REG command. Finally a selection of other commands which have been created to test various APIs are also present for example NETSTAT.
Currently the daemon is packaged as a Silverlight application with two modes of operation:-
Standalone - An executable called wptd.exe which is launched calling CreateProcess and runs in the background.
In Process – The library is called directly by the Silverlight application inside a thread. The primary difference is this mode runs inside the Silverlight process.
The telnet daemon runs with the rights of the container in which it is launched therefore if the manager app is side loaded using developer unlock rights it will operate within the limits of the chamber.
The second part of this release combines WPTelnetD with the SD Card tricks that have been revealed over the past months. Using the App Repurposing Tool the daemon can be run with the rights of the target app.
WP Telnet Daemon command prompt
The command prompt is mostly similar to that offered by cmd.exe on desktop windows. The primary difference is that the WPTelnetD prompt has commands which are of use or interest when exploring a Windows Phone device.
The command which offers the most interesting possibilities right now is "reg" the registry editor. When WPTelnetD is launched from a container such as PFD a large number of registry keys are writeable. Just try typing the following from the PFD chamber .
Code:
reg writeable
The list command can be used to inspect current values as follows:-
Code:
D:\WPSystem\Apps\{E69A2877-59B8-43ED-898D-554FBC4B8B2B}\Install>reg list hklm\software\microsoft\mtp
Subkeys
DeviceServices
ObjectFormats
ObjectProperties
Values
DataStore string 'c:\'
MTPDPCLSID string '{4cd7b058-ee73-4885-af9f-d8adc79b80f5}'
MtpIntermediateBufferSize dword 00046000
MTPSDName string 'SD card'
MTPStorageName string 'Phone'
UsbBuffers dword 00000003
UsbBufferSize dword 00010000
UsbEventBuffers dword 00000040
UsbEventBufferSize dword 00000040
OEMICON string 'C:\Windows\System32\DevIcon_Black.ico'
OEMAVATAR string 'C:\Windows\System32\OEMAvatar_Black.cab'
D:\WPSystem\Apps\{E69A2877-59B8-43ED-898D-554FBC4B8B2B}\Install>
To search for a key, value name or value containing a string use the find command:-
Code:
D:\WPSystem\Apps\{E69A2877-59B8-43ED-898D-554FBC4B8B2B}\Install>reg
Registry Editor - Type HELP for assistance.
HKLM\>find Autobrightness
Searching...
Match: SOFTWARE\Microsoft
Match: SOFTWARE\Microsoft\MCSF\Settings
SourcePath string 'HKEY_LOCAL_MACHINE\Software\Microsoft\Shell\OEM\Brightness\HideAutoBrightness'
Match: SOFTWARE\Microsoft\MCSF\Settings\Microsoft/DisplaySettings/HideAutoBrightness
HideAutoBrightness dword 00000001
Match: SOFTWARE\Microsoft\Shell\OEM\Brightness
Match: SOFTWARE\OEM
UserSettingAutoBrightnessScaler dword 00000064
UserSettingAutoBrightnessScalerMax dword 000000c8
UserSettingAutoBrightnessScalerMin dword 0000001e
Match: SOFTWARE\OEM\Nokia\Display\ColorAndLight
Done
HKLM\>
Example Tweaks
These tweaks must be run from a chamber with ID_CAP_DEVICECONFIG. Preview for developers (PFD) is one such chamber.
Set the MTP datastore to display a lot more folders over USB
Code:
reg set "hklm\SOFTWARE\Microsoft\MTP\DataStore" string "c:\"
Set the OEM identifier used by the store
Code:
reg set "HKLM\system\Platform\DeviceTargetingInfo\PhoneManufacturer" string "NOKIA"
reg set "HKLM\system\Platform\DeviceTargetingInfo\PhoneManufacturer" string "HTC"
reg set "HKLM\system\Platform\DeviceTargetingInfo\PhoneManufacturer" string "SAMSUNG"
WP Telnet Daemon Manager App
Standalone Mode
This mode of operation calls CreateProcess to launch wptd.exe as a child process. This mode was the original one to be implemented. As daemon runs as a separate process it is not killed cleanly when the manager app exits.
The daemon will launch on port 27249 when the launch button is tapped. Once CreateProcess returns SUCCESS this will be indicated in blue text at the bottom of the screen. This is illustrated in the image below.
In Process Mode
This mode of operation hosts the telnet daemon within the Silverlight process of the manager app.
It was added due to some problems creating child processes in certain instances. However it has the advantage that the standard WP application life cycle rules are followed (e.g. it will exit when the host application exits).
The daemon will by default listen on port 23422 when the launch button is tapped. Once listening some blue text will appear indicating as such and as soon as a client connects the status will change again. This is illustrated in the image below.
Using PUTTY to connect
Connecting to the instance of WPTelnetD launched on your phone it is recommended that one uses PUTTY. Setting up the connection is simple but it is very important that you heed the following instructions:-
The connection type must be set to raw failing to set this will cause PUTTY to send control codes which are not understood by the telnet daemon.
The host name must be the IP address that the phone currently has on the LAN. This address can be seen on the standalone page of the manager app.
The port must be set to the port that the telnet daemon instance is listening on by default this is 27249 for standalone mode and 23422 when using in process mode.
Saving the connection into PUTTY's list of saved connections is recommended to prevent having to set these settings each time one connects.
Repurposing Existing Silverlight-based Apps (SD-Card only)
As reported previously there is a quirk in the handling of apps installed on the SD card of Windows Phone 8/8.1 devices. This allows their contents to be replaced therefore allowing the capabilities of that app to be leveraged by the replacement.
First side load the “Windows Phone Application Deployment (8.1)” or equivalent tool. It must be installed into the phones memory and not the SD Card or you will experience errors. The package you must install is:-
HostApp_1.0.0.X_ARM_Debug.appx – This package contains the App Repurposing Tool and the WP Telnet Daemon manager app in a single package. Therefore it is not necessary to deploy WPTelnetD.xap for the tool to function correctly.
Once the tool is deployed you may then install any of the following applications from the store onto the SD Card of the phone. It is critical that the target app is stored on the SD Card and not the phone:-
Preview for Developers
HTC CSDDiag
Extras+Info
Glance
Now launch the App Repurpose Utility on the phone and follow the instructions as illustrated in the image below. Note that the first time this utility is run you must choose the WPSystem folder on the SD Card, on subsequent uses the app will remember the location so you will not be prompted again.
Assuming the process has completed without errors you may now launch the target the application that has been replaced from its normal location. Note that the title on the menu item may change to the install path of the app and the icon WILL change.
Downloads & Source
WPTelnetD Manager binary package
The telnet daemon XAP package can be downloaded from the address below. This is primarily for those who wish to side load or lack the SD Card required to use the App Repurposing Tool.
https://github.com/FurballTheGreat/WPTelnetD/releases/download/1.3/WPTelnetD.xap
App Repurposing Tool binary package
This tool can be downloaded from the address below. An SD Card is necessary for this app to function usefully.
https://github.com/FurballTheGreat/WPTelnetD/releases/download/1.3/HostApp_1.0.0.13_ARM_Debug.appx
Source
A zip of the full source code can be downloaded from the following address:-
https://github.com/FurballTheGreat/WPTelnetD/archive/1.3.zip
Finally the source can also be retrieved using git & subversion by following the instructions on the projects git home page:-
https://github.com/FurballTheGreat/WPTelnetD
Thanks for releasing it , works super.
[/PS: For the ones who don't read, its a regeditor ( and yes not only that )
Thanks, oh great Furball
Thanks for the excellent release!
well done buddy. thanks for it.
Can Interop unlock be achieved with that?
winphoneuser said:
Can Interop unlock be achieved with that?
Click to expand...
Click to collapse
no not possible ,this is just the beginning
Reserved
nice , It works very nice .
good job
Released 1.1
A new release has been published which merges the 'dword' and 'string' commands into a unified set command which supports dword, qword, string, expand, multi-string & binary values. The full help for this command is as follows:-
Code:
SYNTAX: set <value name> <value type> <value>
The following are the value types supported by this command.
dword - A hex or decimal dword value
Example: set testvalue dword 1
set testvalue dword 0xFFAA3311
qword - A hex or decimal qword value
Example: set testvalue qword 1
set testvalue qword 0x12345678FFAA3311
string - A string
Example: set teststr string "Hello"
expand - A string
Example: set testexp expand "%PATH%;c:\test"
multi - One or more string values
Example: set testmulti multi "str1" "str2" "str3" "str4"
binary - The value parameter is a hex or decimal dword value
Example: set testbin binary "0F A4 5F 12 0A"
A few minor bugs have also been fixed.
nice nice nice , this getting better by the day
I love using this for reg edits , because you can do it on the pc side what makes it sooo easy.
great work , works perfectly .
Virtual navigationbar
With this can i get virtual navigation bar on Nokia 720 ?
PLEASE help me because my hardware buttons doesn't work anymore
sorry for my noob question
please give me complete tutorial
Bhg73 said:
With this can i get virtual navigation bar on Nokia 720 ?
PLEASE help me because my hardware buttons doesn't work anymore
sorry for my noob question
please give me complete tutorial
Click to expand...
Click to collapse
sry . you cant .
What can be edited in registry with it?
Can i change max developer apps value with it?
flips13 said:
What can be edited in registry with it?
Can i change max developer apps value with it?
Click to expand...
Click to collapse
No .please read before posting
A new version has been published. It includes the following improvements:-
Non interactive registry commands - e.g single line commands which do not enter the interactive registry editor mode. This means simple registry tweaks can now be written as a single line which is much easier to communicate to other not to mention quicker!
Code:
D:\WPSystem\Apps\{E69A2877-59B8-43ED-898D-554FBC4B8B2B}\Install>reg set "hklm\SOFTWARE\Microsoft\MTP\DataStore" string "c:\"
D:\WPSystem\Apps\{E69A2877-59B8-43ED-898D-554FBC4B8B2B}\Install>
ACL listing commands for files and registry.
For files:-
Code:
D:\WPSystem\Apps\{E69A2877-59B8-43ED-898D-554FBC4B8B2B}\Install>lacl c:\windows\system32
Owner: NT SERVICE\TrustedInstaller
----------------------------------
Subject: \CREATOR OWNER
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: GENERIC_ALL
Subject: NT AUTHORITY\SYSTEM
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: GENERIC_ALL
Subject: NT AUTHORITY\SYSTEM
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: Change
Subject: BUILTIN\Administrators
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: GENERIC_ALL
Subject: BUILTIN\Administrators
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: Change
Subject: BUILTIN\Users
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: GENERIC_EXECUTE GENERIC_READ
Subject: BUILTIN\Users
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: Read(RX)
Subject: NT SERVICE\TrustedInstaller
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: GENERIC_ALL
Subject: NT SERVICE\TrustedInstaller
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: Full Control (All)
Subject: APPLICATION PACKAGE AUTHORITY\ALL APPLICATION PACKAGES
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: Read(RX)
Subject: APPLICATION PACKAGE AUTHORITY\ALL APPLICATION PACKAGES
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: GENERIC_EXECUTE GENERIC_READ
D:\WPSystem\Apps\{E69A2877-59B8-43ED-898D-554FBC4B8B2B}\Install>
For registry keys:-
Code:
D:\WPSystem\Apps\{E69A2877-59B8-43ED-898D-554FBC4B8B2B}\Install>reg acl hklm\SOFTWARE\Microsoft\MTP
Owner: NT AUTHORITY\SYSTEM
--------------------------
Subject: NT SERVICE\Mtp
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: ACCESS_READ ACCESS_WRITE ACCESS_CREATE ACCESS_EXEC ACCESS_DELETE
ACCESS_ATTRIB DELETE READ_CONTROL WRITE_DAC WRITE_OWNER
SPECIFIC_RIGHTS_ALL STANDARD_RIGHTS_REQUIRED STANDARD_RIGHTS_ALL
Subject: NT SERVICE\Mtp
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: ACCESS_READ ACCESS_WRITE ACCESS_CREATE ACCESS_EXEC ACCESS_DELETE
ACCESS_ATTRIB ACCESS_PERM ACCESS_GROUP DELETE READ_CONTROL
WRITE_DAC WRITE_OWNER SYNCHRONIZE ACCESS_SYSTEM_SECURITY GENERIC_ALL
SPECIFIC_RIGHTS_ALL STANDARD_RIGHTS_REQUIRED STANDARD_RIGHTS_ALL
Subject: S-1-15-3-1024-2605919901-2028505803-2616249472-1916951566-2429234122-670920067-1637099775-293743863
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: ACCESS_READ ACCESS_WRITE ACCESS_CREATE ACCESS_EXEC ACCESS_DELETE
ACCESS_ATTRIB DELETE READ_CONTROL WRITE_DAC WRITE_OWNER
SPECIFIC_RIGHTS_ALL STANDARD_RIGHTS_REQUIRED STANDARD_RIGHTS_ALL
Subject: Windows Phone\DefAppsCapabilitiesGroup
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: ACCESS_READ ACCESS_WRITE ACCESS_CREATE ACCESS_EXEC ACCESS_DELETE
ACCESS_ATTRIB DELETE READ_CONTROL WRITE_DAC WRITE_OWNER
SPECIFIC_RIGHTS_ALL STANDARD_RIGHTS_REQUIRED STANDARD_RIGHTS_ALL
Subject: Windows Phone\CapabilityGroup422
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: ACCESS_READ ACCESS_WRITE ACCESS_CREATE ACCESS_EXEC ACCESS_DELETE
ACCESS_ATTRIB DELETE READ_CONTROL WRITE_DAC WRITE_OWNER
SPECIFIC_RIGHTS_ALL STANDARD_RIGHTS_REQUIRED STANDARD_RIGHTS_ALL
Subject: NT AUTHORITY\SYSTEM
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: ACCESS_READ ACCESS_WRITE ACCESS_CREATE ACCESS_EXEC ACCESS_DELETE
ACCESS_ATTRIB DELETE READ_CONTROL WRITE_DAC WRITE_OWNER
SPECIFIC_RIGHTS_ALL STANDARD_RIGHTS_REQUIRED STANDARD_RIGHTS_ALL
Subject: \CREATOR OWNER
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: ACCESS_READ ACCESS_WRITE ACCESS_CREATE ACCESS_EXEC ACCESS_DELETE
ACCESS_ATTRIB ACCESS_PERM ACCESS_GROUP DELETE READ_CONTROL
WRITE_DAC WRITE_OWNER SYNCHRONIZE ACCESS_SYSTEM_SECURITY GENERIC_ALL
SPECIFIC_RIGHTS_ALL STANDARD_RIGHTS_REQUIRED STANDARD_RIGHTS_ALL
Subject: NT AUTHORITY\SYSTEM
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: ACCESS_READ ACCESS_WRITE ACCESS_CREATE ACCESS_EXEC ACCESS_DELETE
ACCESS_ATTRIB DELETE READ_CONTROL WRITE_DAC WRITE_OWNER
SPECIFIC_RIGHTS_ALL STANDARD_RIGHTS_REQUIRED STANDARD_RIGHTS_ALL
Subject: NT AUTHORITY\SYSTEM
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: ACCESS_READ ACCESS_WRITE ACCESS_CREATE ACCESS_EXEC ACCESS_DELETE
ACCESS_ATTRIB ACCESS_PERM ACCESS_GROUP DELETE READ_CONTROL
WRITE_DAC WRITE_OWNER SYNCHRONIZE ACCESS_SYSTEM_SECURITY GENERIC_ALL
SPECIFIC_RIGHTS_ALL STANDARD_RIGHTS_REQUIRED STANDARD_RIGHTS_ALL
Subject: BUILTIN\Administrators
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: ACCESS_READ ACCESS_WRITE ACCESS_CREATE ACCESS_EXEC ACCESS_DELETE
ACCESS_ATTRIB DELETE READ_CONTROL WRITE_DAC WRITE_OWNER
SPECIFIC_RIGHTS_ALL STANDARD_RIGHTS_REQUIRED STANDARD_RIGHTS_ALL
Subject: BUILTIN\Administrators
Type: ACCESS_ALLOWED_ACE_TYPE
Rights: ACCESS_READ ACCESS_WRITE ACCESS_CREATE ACCESS_EXEC ACCESS_DELETE
ACCESS_ATTRIB ACCESS_PERM ACCESS_GROUP DELETE READ_CONTROL
WRITE_DAC WRITE_OWNER SYNCHRONIZE ACCESS_SYSTEM_SECURITY GENERIC_ALL
SPECIFIC_RIGHTS_ALL STANDARD_RIGHTS_REQUIRED STANDARD_RIGHTS_ALL
D:\WPSystem\Apps\{E69A2877-59B8-43ED-898D-554FBC4B8B2B}\Install>
Memory usage stats in the output from the PS command.
Code:
D:\WPSystem\Apps\{E69A2877-59B8-43ED-898D-554FBC4B8B2B}\Install>ps
Physical memory available 157mb out of 409mb (61% load).
Virtual memory available 1867mb out of 2047mb.
Pagefile available 353mb out of 665mb.
************
Process List
************
[System Process] (0,0,0)
TaskHost.exe (752,876,0)
Fixed DWORD & QWORD registry set commands to take unsigned values.
New release published with batch script support. I will update this post with details later for an immediate application see HD2Owner's post regarding accent colours.
http://forum.xda-developers.com/windows-phone-8/development/mod-adding-accent-colors-properly-oem-t2996770
Help
app repurposing utility help
ERROR:Cannot create a file when that file already exists. (Exception from HRESULT:0X800700B7)
Windows Phone Application Deployment 8.1
App: wptelnetd.xap
Status: Error - Access is denied.
pdaimatejam said:
app repurposing utility help
ERROR:Cannot create a file when that file already exists. (Exception from HRESULT:0X800700B7)
Status: Error - Access is denied.
Click to expand...
Click to collapse
Is the App Repurposing Utility installed on SD Card or on phone memory?
It must be installed on the phone memory and NOT the SD Card.
Related
Hello,
Problem: Cannot get my pda (HTC Mogul) to connect to a samba share.
Behavior: Resco File Explorer (V7.03) keeps asking for a password when I try to map to a samba share.
Basic Setup Information:
ROUTER: Dynamic Type Configuration acting as a DHCP Server. The DNS is Automagic from the IP.
LAPTOP (windows xp): 192.168.1.38 / 255.255.255.0
SAMBA_PC (Suse 11) : 192.168.1.36 / 255.255.255.0
PDA (Sprint Mogul, Windows Mobile 6 Pro): 192.168.1.37 / 255.255.255.0
-----Below is my current smb.conf---------------
# smb.conf is the main Samba configuration file. You find a full commented
# version at /usr/share/doc/packages/samba/examples/smb.conf.SUSE if the
# samba-doc package is installed.
# Date: 2008-06-07
[global]
workgroup = MCHOME
printing = cups
printcap name = cups
printcap cache time = 750
cups options = raw
map to guest = Bad User
include = /etc/samba/dhcp.conf
logon path = \\%L\profiles\.msprofile
logon home = \\%L\%U\.9xprofile
logon drive = P:
usershare allow guests = Yes
use spnego = No
[homes]
comment = Home Directories
valid users = %S, %D%w%S
browseable = No
read only = No
inherit acls = Yes
[profiles]
comment = Network Profiles Service
path = %H
read only = No
store dos attributes = Yes
create mask = 0600
directory mask = 0700
[users]
comment = All users
path = /home
read only = No
inherit acls = Yes
veto files = /aquota.user/groups/shares/
[groups]
comment = All groups
path = /home/groups
read only = No
inherit acls = Yes
[printers]
comment = All Printers
path = /var/tmp
printable = Yes
create mask = 0600
browseable = No
[print$]
comment = Printer Drivers
path = /var/lib/samba/drivers
write list = @ntadmin root
force group = ntadmin
create mask = 0664
directory mask = 0775
[linuxpodcasts]
comment = downloaded shows
inherit acls = Yes
path = /home/jason/Podcasts/
read only = No
[lacie]
comment = storage drive
inherit acls = Yes
path = /media/disk/
read only = No
------------------------------------------
PDA TESTING:
1) Ping \\LINUX-PD\lacie
Results: 24.A.B.C
Note: this number is unknown. It is only similar to the Router Configuration in the first number!
2) Ping 192.168.1.36
Results with Reply from 192.168.1.36
3) Ping \\LAPTOP
Results 24.A.B.C
Note: This is the same number as PDA Testing #1
-------------------------------------------
LAPTOP TESTING:
------------------------------------------
1) Ping \\LINUX-PD
Results: 24.A.B.C .Qu1nnLAN
Note: This is the same number as PDA Testing #1 including the name of the wireless lan!
2) Ping 192.168.1.36
Results with reply from 192.168.1.36
3) Ping 192.168.1.37
Results with reply from 192.168.1.37
4) net view \\LINUX-PD
<< shows all of the shares , Not Shown, The Command Completed successfully >>
5) net use g: \\LINUX-PD\lacie
<< asks for username / pass. The Command Completed successfully >>
6) From File MANAGER, I can sucessfully browse the network and view the shares!
From XP > Command Prompt: ipconfig /all
Windows IP config:
Host Name: LAPTOP
Primary DNS Suffix:
Node Type: Unknown
IP Routing Enabled: NO
WINS Proxy Enabled: NO
DNS Suffix Search List: Qu1nnLAN
...
Ethernet adapter wireless Network Connection
Connection Specific DNS Suffix: Qu1nnLAN
...
Connection
DHCP Enabled: Yes
Autoconfig Enabled: Yes
IP Address: 192.168.1.38
Subnet Mask: 255.255.255.0
Default Gateway: 192.168.1.1
DHCP Server: 192.168.1.1
DNS Servers: 24.W.X.Y
24.W.X.Z
------------------------------------------
LINUX-PD TESTING: (Includes steps from Chapter 38 of the Samba Checklist)
------------------------------------------
1)
Ping 192.168.1.37
Results in Reply form 192.168.1.37
2)
linux-pd:~ # smbclient -L LINUX-pd
Enter password:
Domain=[MCHOME] OS=[Unix] Server=[Samba 3.2.0rc1-22.1-1795-SUSE-SL11.0]
Sharename Type Comment
--------- ---- -------
profiles Disk Network Profiles Service
users Disk All users
groups Disk All groups
print$ Disk Printer Drivers
linuxpodcasts Disk downloaded shows
lacie Disk storage drive
IPC$ IPC IPC Service (Samba 3.2.0rc1-22.1-1795-SUSE-SL11.0)
Photosmart_3200 Printer Photosmart 3210
HIDDEN Disk Home Directories
Domain=[MCHOME] OS=[Unix] Server=[Samba 3.2.0rc1-22.1-1795-SUSE-SL11.0]
Server Comment
--------- -------
LAPTOP Pentium M750 1.86GHz, 1GB RAM
LINUX-PD Samba 3.2.0rc1-22.1-1795-SUSE-SL11.0
Workgroup Master
--------- -------
MCHOME LINUX-PD
3)
linux-pd:~ # nmblookup -B LINUX-PD __SAMBA__
querying __SAMBA__ on 127.0.0.2
192.168.1.36 __SAMBA__<00>
4)
linux-pd:~ # nmblookup -d 2 '*'
added interface eth0 ip=fe80::213:20ff:fecb:7cbb%eth0 bcast=fe80::ffff:ffff:ffff:ffff%eth0 netmask=ffff:ffff:ffff:ffff::
added interface eth0 ip=192.168.1.36 bcast=192.168.1.255 netmask=255.255.255.0
querying * on 192.168.1.255
Got a positive name query response from 192.168.1.36 ( 192.168.1.36 )
192.168.1.36 *<00>
5)
linux-pd:~ # smbclient //LINUX-PD/lacie
Enter HIDDEN password:
Domain=[MCHOME] OS=[Unix] Server=[Samba 3.2.0rc1-22.1-1795-SUSE-SL11.0]
smb: \>
6)
linux-pd:~ # nmblookup -M MCHOME
querying MCHOME on 192.168.1.255
192.168.1.36 MCHOME<1d>
-------------------------------------------
Additional Questions:
1) how do you find the machine name on the PDA similar to how the LINUX-PD = 192.168.1.36?
2) why is the wireless router name showing up when I ping?
I am at a loss.
I will be posting to a Resco forum as well.
Any suggestions helping this newb would be great.
Thank you for your time
qu1nn
_______________
same problem here. did u fix it?
I got it working, albeit Resco doesnt remember the password correctly and it has to be entered in every time I start a new session.
make note and read before you read the next thread....
that resco is aware of the issue:
http://resco.net/pocketpc/explorer/faq.asp?faq=network#85
Check out my posting on rescos forums for what I had to do:
http://resco.net/forums/ShowPost.aspx?PostID=17810
I hope this helps
qu1nn
Hello,
Wanted to enable VOIP on ICS, but couldn't find the info. After bricking my phone twice and fixing it again
I succeeded.
problems i encountered so far:
Fragmented info in the numerous treads that are around over voip
Incomplete manuals
People giving advice without trying it on their own phone first
Bugs
So this is what i did:
On the PC
Install latest Java Runtime Environment (current version 6 Update 31)
Install latest Java SE Development Kit (current version 7u3)
Install latest Android SDK then run SDK manager and install the suggested packages
Download latest APKtool (http://code.google.com/p/android-apktool/ version 1.4.3)
Install samsung USB drivers (available on sammobile.com)
Add the \bin, \tools and \platform-tools directory to the PATH variable
in windows 7, right click computer in start menu->properties->click advanced system properties->hit the button system variables and add them to the path variable.
In my case:
c:\Program Files\Java\jdk1.7.0_03\bin;c:\Program Files\Java\jre7\bin;c:\Program Files\Android\android-sdk\platform-tools;c:\Program Files\Android\android-sdk\tools
Reboot PC (just to be sure, its windows)
On the Phone
Rooted phone
Install rootexplorer (market)
Install clockworkmod recovery (download rommanager in market)
Install busybox (Market, Stephen Erickson)
CWM and Busybox needed in case you mess up
With Rootexplorer
goto /system/framework/ and make the directory R/W
copy /system/framework/framework-res.apk to /system/framework/framework-res.apk.bak
Copy /system/framework/framework-res.apk to PC
Back to PC
Make directory
c:\APKTool
unpack downloaded APKTool to this folder
copy framework-res.apk to this folder
this folder should now contain:
framework-res.apk
apktool.jar
The following info is from http://www.miui-au.com/add-ons/apktool/
open a command prompt in the APKTool directory and run the following command:
Code:
java -jar apktool.jar if framework-res.apk
Code:
java -jar apktool.jar d framework-res.apk
this should decompile framework-res.apk to a folder named framework-res
goto the following folder
c:\apktool\framework-res\res\values
edit (notepad) the following lines in the file bools.xml to
Code:
<bool name="config_sip_wifi_only">false</bool>
<bool name="config_built_in_sip_phone">true</bool>
Now we are going to compile framework-res.apk again
Code:
java -jar apktool.jar b framework-res
Due to a bug in either APKTool.jar or aapt.exe you will probable run into a number of errors that need to be fixed
Code:
apktool\framework-res\res\values\plurals.xml:79: error
: Multiple substitutions specified in non-positional format; did you mean to add
the formatted="false" attribute?
A fix is explained at the following site:
http://www.miui.nl/?page_id=2216
in every plurals.xml file that generates an error find the following section and change it to:
Code:
<plurals name="matches_found">
<item quantity="other">%d of %d</item>
<item quantity="one">1 match</item>
</plurals>
to
Code:
<plurals name="matches_found">
<item quantity="other">%1$d of %2$d</item>
<item quantity="one">1 match</item>
</plurals>
After fixing this (could be up to 80 files, depending on ROM)
we can successfully compile framework-res.apk
Code:
java -jar apktool.jar b framework-res
We should have one warning
Code:
W: Could not find sources
This is normal for framework-res.apk
After compilation we should have the following two new folders
Code:
c:\temp\apktool\framework-res\build\
c:\temp\apktool\framework-res\dist\
in the directory dist there is a newly created framework-res.apk
DO NOT USE THIS FILE, IT WILL BRICK YOUR PHONE
instead go to the directory
Code:
framework-res\build\apk\
there should be a file resources.arsc. This file contains all our modifications and is all we need.
Framework-res.apk is a compressed file. We can open it with a zip program. I used Total Commander for this (www.ghisler.com)
now open the original Framework-res.apk and copy (pack) our modified resources.arsc (overwrite the original)
Now we have a modified framework-res.apk with voip enabled
Next we have to make the following two files:
android.software.sip.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2009 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- This is the standard set of features for devices that support SIP API. -->
<permissions>
<feature name="android.software.sip" />
</permissions>
android.software.sip.voip.xml
Code:
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2009 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<!-- This is the standard set of features for devices that support SIP-based VoIP. -->
<permissions>
<feature name="android.software.sip" />
<feature name="android.software.sip.voip" />
</permissions>
Copy the three files back to the Phone
Back to Phone again
UNSUCCESSFUL COMPILING, WRONG COPYING OR PURE BAD LUCK CAN BRICK YOUR PHONE. BACKUP YOUR PHONE BEFORE PROCEEDING!
CONTINUE AT YOUR OWN RISK
FORGET ADB PUSH, BE SURE TO HAVE ROOTEXPORER
Everyone saying otherwise is:
a)lying
b)not running stock rom
c)lucky
d)laisy for not writing a decent HOWTO ADB PUSH
So go ahead with root explorer
Copy android.software.sip.xml and android.software.sip.voip.xml to /system/etc/permissions
Set the persissions to rw-r--r--
Change owner to user 0-Root, group 0-root
copy framework-res.apk to /system
Set the persissions to rw-r--r--
Change owner to user 0-Root, group 0-root
Move /system/framework-res.apk to /system/framework (be sure to make backup the original file)
After reboot VOIP is enabled
What if something goes wrong:
If all else fails flash your original rom
or (works only if you followed everything in this manual)
Reboot your Phone in recovery mode (press&hold home, volume-up, power button)
In recovery mode mount /system and /SDCARD
Connect your Phone (still in recovery mode) to the PC
on the PC open a command prompt
Type the following (sgs2)
adb shell
su
mount -o remount,rw /dev/block/mmcblk0p9 /system
cp /system/framework/framework-res.apk.bak /system/framework/framework-res.apk.bak
reboot
this should copy the backup file back.
good luck
Hi. VOIP doesn't work in my country due to restrictions but you can try this.
1. Download anycut from the market.
2. Long hold desktop > add shortcut.
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
3. Click on Activity.
4. Click on SIP Settings.
5. An icon will appear on the desktop.
6. Click on icon and set it up as you wish.
I think this is a much simpler approach and just works without root or any modification.
Sent from my GT-I9100
If you wish then you can uninstall anycut after you finish. In its defense it is a 32kb program made by a Googler.
Sent from my GT-I9100
akbarhash said:
I think this is a much simpler approach and just works without root or any modification.
Click to expand...
Click to collapse
Nice try, but this will only work if voip is enabled first. basically this program only adds a shortcut to voip settings, but if the voip interface is disabled, this doesn't work.
nice effort but didn't work for me..
This is ok, but...
akbarhash said:
Hi. VOIP doesn't work in my country due to restrictions but you can try this.
1. Download anycut from the market.
2. Long hold desktop > add shortcut.
3. Click on Activity.
4. Click on SIP Settings.
5. An icon will appear on the desktop.
6. Click on icon and set it up as you wish.
I think this is a much simpler approach and just works without root or any modification.
Sent from my GT-I9100
Click to expand...
Click to collapse
This is ok for me, but don´t save the account, and checkit status forever. Any solution?
Thank.
im using bria
hi
its too long procedure. i m using bria on SGS rooted phone. and its work great.
adejager1 said:
UNSUCCESSFUL COMPILING, WRONG COPYING OR PURE BAD LUCK CAN BRICK YOUR PHONE.
Click to expand...
Click to collapse
Damn, which I have a lot
Dears,
I'm following this guide but I have a problem recompiling.
This is the log:
c:\APKtool>java -jar apktool.jar b framework-res
W: Could not find sources
I: Checking whether resources has changed...
I: Building resources...
invalid resource directory name: c:\APKtool\framework-res\res/drawable-sw600dp-h
dpi
invalid resource directory name: c:\APKtool\framework-res\res/layout-sw400dp
invalid resource directory name: c:\APKtool\framework-res\res/layout-sw600dp
invalid resource directory name: c:\APKtool\framework-res\res/layout-w600dp
invalid resource directory name: c:\APKtool\framework-res\res/values-h720dp
invalid resource directory name: c:\APKtool\framework-res\res/values-sw360dp
invalid resource directory name: c:\APKtool\framework-res\res/values-sw400dp
invalid resource directory name: c:\APKtool\framework-res\res/values-sw600dp
invalid resource directory name: c:\APKtool\framework-res\res/values-sw600dp-lan
d
invalid resource directory name: c:\APKtool\framework-res\res/values-sw600dp-w10
24dp
invalid resource directory name: c:\APKtool\framework-res\res/values-sw600dp-w12
80dp
invalid resource directory name: c:\APKtool\framework-res\res/values-w360dp
invalid resource directory name: c:\APKtool\framework-res\res/values-w480dp
invalid resource directory name: c:\APKtool\framework-res\res/values-w500dp
invalid resource directory name: c:\APKtool\framework-res\res/values-w600dp
invalid resource directory name: c:\APKtool\framework-res\res/values-w720dp
Exception in thread "main" brut.androlib.AndrolibException: brut.common.BrutExce
ption: could not exec command: [aapt, p, -F, C:\Users\FEDERI~1.RAM\AppData\Local
\Temp\APKTOOL1708831992001626862.tmp, -x, -S, c:\APKtool\framework-res\res, -M,
c:\APKtool\framework-res\AndroidManifest.xml]
at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.jav
a:193)
at brut.androlib.Androlib.buildResourcesFull(Androlib.java:301)
at brut.androlib.Androlib.buildResources(Androlib.java:248)
at brut.androlib.Androlib.build(Androlib.java:171)
at brut.androlib.Androlib.build(Androlib.java:154)
at brut.apktool.Main.cmdBuild(Main.java:182)
at brut.apktool.Main.main(Main.java:67)
Caused by: brut.common.BrutException: could not exec command: [aapt, p, -F, C:\U
sers\FEDERI~1.RAM\AppData\Local\Temp\APKTOOL1708831992001626862.tmp, -x, -S, c:\
APKtool\framework-res\res, -M, c:\APKtool\framework-res\AndroidManifest.xml]
at brut.util.OS.exec(OS.java:83)
at brut.androlib.res.AndrolibResources.aaptPackage(AndrolibResources.jav
a:191)
... 6 more
c:\APKtool>
I'm on Windows, so I think the problem is the / in the paths, but I don't know the cause of this.
I'm not a programmer.
Original framework-res.apk, APKtool and the framework-res folder with the already modified file are attached.
Can anybody gently help me?
Thank you so much.
I can get to the sip settings and add an account, but as this poster says, the account says "Checking status" forever. Also every now and then, the account simply disappears. There's no save button either.
Anyone with the same problems? Any ideas?
Hello,
I am using a Galaxy S4 with an S View Cover. This cover has a magnet in it, which the phone uses to "know" if it is closed or open. It also has a little window in it.
All AOSP Roms except the Google Edition Roms for the Galaxy S4 don't support the S View Cover.
So I thought to myself, I should make something that makes the S View Cover useful on AOSP roms. Preferably an App which can be installed on any AOSP rom. So I poked around and found out that I can find out the state of the cover (i.e. open/closed) by using the getevent command inside of an adb shell.
The exact command that gives me the state of the cover is getevent /dev/input/event18
which gives me the events of the device "gpio_keys".
When I close the cover it returns the following numbers:
0005 0015 00000000
0000 0000 00000000
When I open the cover it returns this:
0005 0015 00000001
0000 0000 00000000
So what I need is the last number of the first line. I tried limiting the output of getevent with grep, but I've never used it before and I wasn't successful.
My programming abilities are very limited, especially when it comes to object oriented stuff like java. At work we use ABAP (a programming language for SAP ERP systems) and most of what we do doesn't require any understanding of objects. I already found some stuff that would allow me to run shell commands, but I can't get it working:
Code:
Log.v("MyApp", "Started");
String myStringArray[]= {"getevent","/dev/input/event18"};
String line;
try {
Process process = Runtime.getRuntime().exec(myStringArray);
InputStreamReader inputstreamreader = new InputStreamReader(process.getInputStream());
BufferedReader bufferedReader = new BufferedReader(inputstreamreader);
bufferedReader.read();
while ((line = bufferedReader.readLine()) != null) {
Log.v("MyApp", line);
}
InputStreamReader errstreamreader = new InputStreamReader(process.getErrorStream());
BufferedReader errReader = new BufferedReader(errstreamreader);
errReader.read();
while ((line = errReader.readLine()) != null) {
Log.v("MyApp", line);
}
} catch(java.io.IOException e){
}
Log.v("MyApp", "Finished");
This code produces an error message:
V/MyApp ( 6090): ould not open /dev/input/event18, Permission denied
When I use getevent in the adb shell it works without super user permissions (root). What permissions do I need to get this working?
I'm a beginner and I don't really understand android permissions.
Hmm.. I guess you'll need super user permissions to do something like that.
Try reading the following link: http://stackoverflow.com/questions/7707889/android-system-permissions-through-root
Hope it gives you some pointers in the right direction
If you need proper root support, use roottools. root in java is a pain in the ass, root tools fixes it
http://code.google.com/p/roottools/downloads/list
and i think there is some sysfs interface for this as well.
this is my output btw
Code:
add device 1: /dev/input/event19
name: "sec_touchkey"
add device 2: /dev/input/event2
name: "max77693-muic"
add device 3: /dev/input/event0
name: "pmic8xxx_pwrkey"
add device 4: /dev/input/event17
name: "apq8064-tabla-snd-card Headset Jack"
add device 5: /dev/input/event16
name: "apq8064-tabla-snd-card Button Jack"
add device 6: /dev/input/event18
name: "gpio-keys"
add device 7: /dev/input/event15
name: "ssp_context"
add device 8: /dev/input/event14
name: "step_cnt_sensor"
add device 9: /dev/input/event13
name: "step_det_sensor"
add device 10: /dev/input/event12
name: "sig_motion_sensor"
add device 11: /dev/input/event11
name: "geomagnetic_sensor"
add device 12: /dev/input/event10
name: "temp_humidity_sensor"
add device 13: /dev/input/event9
name: "proximity_sensor"
add device 14: /dev/input/event8
name: "light_sensor"
add device 15: /dev/input/event7
name: "gesture_sensor"
add device 16: /dev/input/event6
name: "pressure_sensor"
add device 17: /dev/input/event5
name: "gyro_sensor"
add device 18: /dev/input/event4
name: "accelerometer_sensor"
add device 19: /dev/input/event1
name: "sii8240_rcp"
could not get driver version for /dev/input/mice, Not a typewriter
add device 20: /dev/input/event3
name: "sec_touchscreen"
and then 4 and 8 gets spammed.
btw also set permissions to 666 when you want to read a file from an app
Can you guys please explain how to parse and understand what the values from this command returns:
Code:
getevent /dev/input/event0
?
I wish to just get the coordinate of the touch event.
From my understanding, even using "event0" isn't safe, as it could be something else that's the touchscreen. Is there anyway to get the correct one?
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Downloads
Steps To Unlock Bootloader
First, enable the Developer option in your setting Go to Settings>About Phone> tap in Built Number multiple times un till the toast You are a developer now appears.
Now Go to Developer option it will appear in Settings and find and enable OEM Unlock by sliding the button. A warning will appear just Confirm that.
Turn Off Your smartphone.
Press Volume Button and Power button simultaneously and hold it for few seconds. This will boot your device into fast boot mode.
Now Open the ADB Tool Folder and Go to SDK> Platform Tools and right click pressing the Shift Key on your Keyboard and select Open Command here.
Connect your device via USB cable ( good quality cable suggested for uninterrupted use).
Type the command adb device you will see a serial number in the comment prompt screen if not then you missed some step.
Now go to website Click here. Read the information given if you wish and click on Next button to proceed next step.
You the Page will ask you to sign incomplete the process by signing with you Motorolla account or Google Account.
Now go the Command Prompt and type fastboot oem get_unlock_data.
Now a new serial code will appear in your command prompt screen you have to copy the entire code.
Now open this link and paste the code in the tool. then select the entire code and paste that code in point 6 on Moto require Unlock Tool Website.
Now Click on the I Agree Button a Get Unlock Code will appear on the screen.
Click on the Button.
An Unlock Code will appear.
Now again go to the Command Prompt screen and type fast oem unlock ************. “*****” will replace your unique key.
A warning screen will appear in command just retype the same command and hit enter.
Done!!!
but... WHY?
Done. Thanks for the instructions
Is it possible to relock the bootloader after unlocking for model XT1675
what should I do if the message with the unlock code never reached to my mail?
lazasanchez1 said:
what should I do if the message with the unlock code never reached to my mail?
Click to expand...
Click to collapse
Check junk mail
Resend code
Start again
Use different email from another provider
Thank's alot for the response, the mail came 1 hour later
When I type adb device I the following,
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Program Files (x86)\Minimal ADB and Fastboot>adb device
Android Debug Bridge version 1.0.36
Revision 0e9850346394-android
-a - directs adb to listen on all interfaces for a c
onnection
-d - directs command to the only connected USB devic
e
returns an error if more than one USB device is
present.
-e - directs command to the only running emulator.
returns an error if more than one emulator is r
unning.
-s <specific device> - directs command to the device or emulator with
the given
serial number or qualifier. Overrides ANDROID_S
ERIAL
environment variable.
-p <product name or path> - simple product name like 'sooner', or
a relative/absolute path to a product
out directory like 'out/target/product/sooner'.
If -p is not specified, the ANDROID_PRODUCT_OUT
environment variable is used, which must
be an absolute path.
-H - Name of adb server host (default: localhost)
-P - Port of adb server (default: 5037)
devices [-l] - list all connected devices
('-l' will also list device qualifiers)
connect <host>[:<port>] - connect to a device via TCP/IP
Port 5555 is used by default if no port number
is specified.
disconnect [<host>[:<port>]] - disconnect from a TCP/IP device.
Port 5555 is used by default if no port number
is specified.
Using this command with no additional arguments
will disconnect from all connected TCP/IP devic
es.
device commands:
adb push <local>... <remote>
- copy files/dirs to device
adb pull [-a] <remote>... <local>
- copy files/dirs from device
(-a preserves file timestamp and mode)
adb sync [ <directory> ] - copy host->device only if changed
(-l means list but don't copy)
adb shell [-e escape] [-n] [-Tt] [-x] [command]
- run remote shell command (interactive shell if
no command given)
(-e: choose escape character, or "none"; defaul
t '~')
(-n: don't read from stdin)
(-T: disable PTY allocation)
(-t: force PTY allocation)
(-x: disable remote exit codes and stdout/stder
r separation)
adb emu <command> - run emulator console command
adb logcat [ <filter-spec> ] - View device log
adb forward --list - list all forward socket connections.
the format is a list of lines with the followin
g format:
<serial> " " <local> " " <remote> "\n"
adb forward <local> <remote> - forward socket connections
forward specs are one of:
tcp:<port>
localabstract:<unix domain socket name>
localreserved:<unix domain socket name>
localfilesystem:<unix domain socket name>
dev:<character device name>
jdwp:<process pid> (remote only)
adb forward --no-rebind <local> <remote>
- same as 'adb forward <local> <remote>' but fail
s
if <local> is already forwarded
adb forward --remove <local> - remove a specific forward socket connection
adb forward --remove-all - remove all forward socket connections
adb reverse --list - list all reverse socket connections from device
adb reverse <remote> <local> - reverse socket connections
reverse specs are one of:
tcp:<port>
localabstract:<unix domain socket name>
localreserved:<unix domain socket name>
localfilesystem:<unix domain socket name>
adb reverse --no-rebind <remote> <local>
- same as 'adb reverse <remote> <local>' but fail
s
if <remote> is already reversed.
adb reverse --remove <remote>
- remove a specific reversed socket connection
adb reverse --remove-all - remove all reversed socket connections from dev
ice
adb jdwp - list PIDs of processes hosting a JDWP transport
adb install [-lrtsdg] <file>
- push this package file to the device and instal
l it
(-l: forward lock application)
(-r: replace existing application)
(-t: allow test packages)
(-s: install application on sdcard)
(-d: allow version code downgrade (debuggable p
ackages only))
(-g: grant all runtime permissions)
adb install-multiple [-lrtsdpg] <file...>
- push this package file to the device and instal
l it
(-l: forward lock application)
(-r: replace existing application)
(-t: allow test packages)
(-s: install application on sdcard)
(-d: allow version code downgrade (debuggable p
ackages only))
(-p: partial application install)
(-g: grant all runtime permissions)
adb uninstall [-k] <package> - remove this app package from the device
('-k' means keep the data and cache directories
)
adb bugreport [<path>] - return all information from the device that sho
uld be included in a zipped bug report.
If <path> is a file, the bug report will be sav
ed as that file.
If <path> is a directory, the bug report will b
e saved in that directory with the name provided by the device.
If <path> is omitted, the bug report will be sa
ved in the current directory with the name provided by the device.
NOTE: if the device does not support zipped bug
reports, the bug report will be output on stdout.
adb backup [-f <file>] [-apk|-noapk] [-obb|-noobb] [-shared|-noshared] [-all]
[-system|-nosystem] [<packages...>]
- write an archive of the device's data to <file>
.
If no -f option is supplied then the data is wr
itten
to "backup.ab" in the current directory.
(-apk|-noapk enable/disable backup of the .apks
themselves
in the archive; the default is noapk.)
(-obb|-noobb enable/disable backup of any insta
lled apk expansion
(aka .obb) files associated with each applic
ation; the default
is noobb.)
(-shared|-noshared enable/disable backup of the
device's
shared storage / SD card contents; the defau
lt is noshared.)
(-all means to back up all installed applicatio
ns)
(-system|-nosystem toggles whether -all automat
ically includes
system applications; the default is to inclu
de system apps)
(<packages...> is the list of applications to b
e backed up. If
the -all or -shared flags are passed, then t
he package
list is optional. Applications explicitly g
iven on the
command line will be included even if -nosys
tem would
ordinarily cause them to be omitted.)
adb restore <file> - restore device contents from the <file> backup
archive
adb disable-verity - disable dm-verity checking on USERDEBUG builds
adb enable-verity - re-enable dm-verity checking on USERDEBUG build
s
adb keygen <file> - generate adb public/private key. The private ke
y is stored in <file>,
and the public key is stored in <file>.pub. Any
existing files
are overwritten.
adb help - show this help message
adb version - show version num
scripting:
adb wait-for[-<transport>]-<state>
- wait for device to be in the given state:
device, recovery, sideload, or bootloader
Transport is: usb, local or any [default=any]
adb start-server - ensure that there is a server running
adb kill-server - kill the server if it is running
adb get-state - prints: offline | bootloader | device
adb get-serialno - prints: <serial-number>
adb get-devpath - prints: <device-path>
adb remount - remounts the /system, /vendor (if present) and
/oem (if present) partitions on the device read-write
adb reboot [bootloader|recovery]
- reboots the device, optionally into the bootloa
der or recovery program.
adb reboot sideload - reboots the device into the sideload mode in re
covery program (adb root required).
adb reboot sideload-auto-reboot
- reboots into the sideload mode, then reboots au
tomatically after the sideload regardless of the result.
adb sideload <file> - sideloads the given package
adb root - restarts the adbd daemon with root permissions
adb unroot - restarts the adbd daemon without root permissio
ns
adb usb - restarts the adbd daemon listening on USB
adb tcpip <port> - restarts the adbd daemon listening on TCP on th
e specified port
networking:
adb ppp <tty> [parameters] - Run PPP over USB.
Note: you should not automatically start a PPP connection.
<tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
[parameters] - Eg. defaultroute debug dump local notty usepeerdns
adb sync notes: adb sync [ <directory> ]
<localdir> can be interpreted in several ways:
- If <directory> is not specified, /system, /vendor (if present), /oem (if pre
sent) and /data partitions will be updated.
- If it is "system", "vendor", "oem" or "data", only the corresponding partiti
on
is updated.
internal debugging:
adb reconnect Kick current connection from host side and make
it reconnect.
adb reconnect device Kick current connection from device side and ma
ke it reconnect.
environment variables:
ADB_TRACE - Print debug information. A comma separated list
of the following values
1 or all, adb, sockets, packets, rwx, usb, sync
, sysdeps, transport, jdwp
ANDROID_SERIAL - The serial number to connect to. -s takes prior
ity over this if given.
ANDROID_LOG_TAGS - When used with the logcat option, only these de
bug tags are printed.
C:\Program Files (x86)\Minimal ADB and Fastboot>
and if i type the get unlock data command i get waiting for any device, does anyone know what the problem could be as i have the drivers installed from the Motorola site
sorry about the big post
EDIT, PROBLEM FOUND MY DRIVERS ARE NOT INSTALLED PROPERLY
plewis1981 said:
When I type adb device I the following,
Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation. All rights reserved.
C:\Program Files (x86)\Minimal ADB and Fastboot>adb device
Android Debug Bridge version 1.0.36
Revision 0e9850346394-android
-a - directs adb to listen on all interfaces for a c
onnection
-d - directs command to the only connected USB devic
e
returns an error if more than one USB device is
present.
-e - directs command to the only running emulator.
returns an error if more than one emulator is r
unning.
-s <specific device> - directs command to the device or emulator with
the given
serial number or qualifier. Overrides ANDROID_S
ERIAL
environment variable.
-p <product name or path> - simple product name like 'sooner', or
a relative/absolute path to a product
out directory like 'out/target/product/sooner'.
If -p is not specified, the ANDROID_PRODUCT_OUT
environment variable is used, which must
be an absolute path.
-H - Name of adb server host (default: localhost)
-P - Port of adb server (default: 5037)
devices [-l] - list all connected devices
('-l' will also list device qualifiers)
connect <host>[:<port>] - connect to a device via TCP/IP
Port 5555 is used by default if no port number
is specified.
disconnect [<host>[:<port>]] - disconnect from a TCP/IP device.
Port 5555 is used by default if no port number
is specified.
Using this command with no additional arguments
will disconnect from all connected TCP/IP devic
es.
device commands:
adb push <local>... <remote>
- copy files/dirs to device
adb pull [-a] <remote>... <local>
- copy files/dirs from device
(-a preserves file timestamp and mode)
adb sync [ <directory> ] - copy host->device only if changed
(-l means list but don't copy)
adb shell [-e escape] [-n] [-Tt] [-x] [command]
- run remote shell command (interactive shell if
no command given)
(-e: choose escape character, or "none"; defaul
t '~')
(-n: don't read from stdin)
(-T: disable PTY allocation)
(-t: force PTY allocation)
(-x: disable remote exit codes and stdout/stder
r separation)
adb emu <command> - run emulator console command
adb logcat [ <filter-spec> ] - View device log
adb forward --list - list all forward socket connections.
the format is a list of lines with the followin
g format:
<serial> " " <local> " " <remote> "\n"
adb forward <local> <remote> - forward socket connections
forward specs are one of:
tcp:<port>
localabstract:<unix domain socket name>
localreserved:<unix domain socket name>
localfilesystem:<unix domain socket name>
dev:<character device name>
jdwp:<process pid> (remote only)
adb forward --no-rebind <local> <remote>
- same as 'adb forward <local> <remote>' but fail
s
if <local> is already forwarded
adb forward --remove <local> - remove a specific forward socket connection
adb forward --remove-all - remove all forward socket connections
adb reverse --list - list all reverse socket connections from device
adb reverse <remote> <local> - reverse socket connections
reverse specs are one of:
tcp:<port>
localabstract:<unix domain socket name>
localreserved:<unix domain socket name>
localfilesystem:<unix domain socket name>
adb reverse --no-rebind <remote> <local>
- same as 'adb reverse <remote> <local>' but fail
s
if <remote> is already reversed.
adb reverse --remove <remote>
- remove a specific reversed socket connection
adb reverse --remove-all - remove all reversed socket connections from dev
ice
adb jdwp - list PIDs of processes hosting a JDWP transport
adb install [-lrtsdg] <file>
- push this package file to the device and instal
l it
(-l: forward lock application)
(-r: replace existing application)
(-t: allow test packages)
(-s: install application on sdcard)
(-d: allow version code downgrade (debuggable p
ackages only))
(-g: grant all runtime permissions)
adb install-multiple [-lrtsdpg] <file...>
- push this package file to the device and instal
l it
(-l: forward lock application)
(-r: replace existing application)
(-t: allow test packages)
(-s: install application on sdcard)
(-d: allow version code downgrade (debuggable p
ackages only))
(-p: partial application install)
(-g: grant all runtime permissions)
adb uninstall [-k] <package> - remove this app package from the device
('-k' means keep the data and cache directories
)
adb bugreport [<path>] - return all information from the device that sho
uld be included in a zipped bug report.
If <path> is a file, the bug report will be sav
ed as that file.
If <path> is a directory, the bug report will b
e saved in that directory with the name provided by the device.
If <path> is omitted, the bug report will be sa
ved in the current directory with the name provided by the device.
NOTE: if the device does not support zipped bug
reports, the bug report will be output on stdout.
adb backup [-f <file>] [-apk|-noapk] [-obb|-noobb] [-shared|-noshared] [-all]
[-system|-nosystem] [<packages...>]
- write an archive of the device's data to <file>
.
If no -f option is supplied then the data is wr
itten
to "backup.ab" in the current directory.
(-apk|-noapk enable/disable backup of the .apks
themselves
in the archive; the default is noapk.)
(-obb|-noobb enable/disable backup of any insta
lled apk expansion
(aka .obb) files associated with each applic
ation; the default
is noobb.)
(-shared|-noshared enable/disable backup of the
device's
shared storage / SD card contents; the defau
lt is noshared.)
(-all means to back up all installed applicatio
ns)
(-system|-nosystem toggles whether -all automat
ically includes
system applications; the default is to inclu
de system apps)
(<packages...> is the list of applications to b
e backed up. If
the -all or -shared flags are passed, then t
he package
list is optional. Applications explicitly g
iven on the
command line will be included even if -nosys
tem would
ordinarily cause them to be omitted.)
adb restore <file> - restore device contents from the <file> backup
archive
adb disable-verity - disable dm-verity checking on USERDEBUG builds
adb enable-verity - re-enable dm-verity checking on USERDEBUG build
s
adb keygen <file> - generate adb public/private key. The private ke
y is stored in <file>,
and the public key is stored in <file>.pub. Any
existing files
are overwritten.
adb help - show this help message
adb version - show version num
scripting:
adb wait-for[-<transport>]-<state>
- wait for device to be in the given state:
device, recovery, sideload, or bootloader
Transport is: usb, local or any [default=any]
adb start-server - ensure that there is a server running
adb kill-server - kill the server if it is running
adb get-state - prints: offline | bootloader | device
adb get-serialno - prints: <serial-number>
adb get-devpath - prints: <device-path>
adb remount - remounts the /system, /vendor (if present) and
/oem (if present) partitions on the device read-write
adb reboot [bootloader|recovery]
- reboots the device, optionally into the bootloa
der or recovery program.
adb reboot sideload - reboots the device into the sideload mode in re
covery program (adb root required).
adb reboot sideload-auto-reboot
- reboots into the sideload mode, then reboots au
tomatically after the sideload regardless of the result.
adb sideload <file> - sideloads the given package
adb root - restarts the adbd daemon with root permissions
adb unroot - restarts the adbd daemon without root permissio
ns
adb usb - restarts the adbd daemon listening on USB
adb tcpip <port> - restarts the adbd daemon listening on TCP on th
e specified port
networking:
adb ppp <tty> [parameters] - Run PPP over USB.
Note: you should not automatically start a PPP connection.
<tty> refers to the tty for PPP stream. Eg. dev:/dev/omap_csmi_tty1
[parameters] - Eg. defaultroute debug dump local notty usepeerdns
adb sync notes: adb sync [ <directory> ]
<localdir> can be interpreted in several ways:
- If <directory> is not specified, /system, /vendor (if present), /oem (if pre
sent) and /data partitions will be updated.
- If it is "system", "vendor", "oem" or "data", only the corresponding partiti
on
is updated.
internal debugging:
adb reconnect Kick current connection from host side and make
it reconnect.
adb reconnect device Kick current connection from device side and ma
ke it reconnect.
environment variables:
ADB_TRACE - Print debug information. A comma separated list
of the following values
1 or all, adb, sockets, packets, rwx, usb, sync
, sysdeps, transport, jdwp
ANDROID_SERIAL - The serial number to connect to. -s takes prior
ity over this if given.
ANDROID_LOG_TAGS - When used with the logcat option, only these de
bug tags are printed.
C:\Program Files (x86)\Minimal ADB and Fastboot>
and if i type the get unlock data command i get waiting for any device, does anyone know what the problem could be as i have the drivers installed from the Motorola site
sorry about the big post
EDIT, PROBLEM FOUND MY DRIVERS ARE NOT INSTALLED PROPERLY
Click to expand...
Click to collapse
You got that because you typed the command wrong
You typed adb device
It should be adb devices
You missed the s
TheFixItMan said:
You got that because you typed the command wrong
You typed adb device
It should be adb devices
You missed the s
Click to expand...
Click to collapse
Thanks, I also had yellow icon on fastboot cedric in my device manager, had to unplug my phone a few times to get them gone, got my unlock data now just waiting for my code
with windows 10 x64 adb devices always gives me a bunch of red error lines of wrong commands,
last motorola was an razr i and from that time i remember motorola and windows 10 never have been good friends, still that or what to do?(
punkrockfan said:
with windows 10 x64 adb devices always gives me a bunch of red error lines of wrong commands,
last motorola was an razr i and from that time i remember motorola and windows 10 never have been good friends, still that or what to do?(
Click to expand...
Click to collapse
Works perfectly fine for me
Here is my adb/fastboot folder
https://forum.xda-developers.com/attachment.php?attachmentid=4238479&d=1502448621
I suggest adding the folder to the windows environmental variables then you can run the adb command from any window you launch CMD/terminal from & you won't have to navigate to the adb folder
Note if you using the power shell in Windows 10 with fastboot you may have to type ./fastboot
yep powershell was the issue, running cmd works fine, thx
punkrockfan said:
yep powershell was the issue, running cmd works fine, thx
Click to expand...
Click to collapse
If you want to use powershell add the folder to the environmental values in Windows (control panel system environmental values)
And start the commands with a ./ if it says unknown batch operation
Got my G5 today and tried to unlock its bootloader. Motorola USB drivers installed, adbdriver and latest windows ADB Tools extracted.
Following this guide (maybe a mod could correct the wrong "adb devices" command in the first post) running adb devices in my adb folder via CMD I get
Code:
List of devices attached
* daemon not running. starting it now at tcp:5037 *
*daemon started successfully *
followed by two two emty lines as output. Repeating the command adb devices the same, just two emty lines.
Serial Number can also be found when entering fastboot screen on the phone itself anyway, no? That's where I see it between
Code:
Product/Variant: cedric XT1676 16GB P5
Serial Number: AA12345678XX
CPU: MSM8937
According Motorola serial number and that step is not even needed.
Running the fastboot oem get_unlock_data command "the returned string will be used to retrieve your unlock key". This is how this string is supposed to look like:
Code:
$ fastboot oem get_unlock_data
(bootloader) 0A40040192024205#4C4D3556313230
(bootloader) 30373731363031303332323239#BD00
(bootloader) 8A672BA4746C2CE02328A2AC0C39F95
(bootloader) 1A3E5#1F53280002000000000000000
(bootloader) 0000000
instead I get like this (using dummy code from above):
Code:
(bootloader) slot-count: not found
(bootloader) slot-suffixes: not found
(bootloader) slot-suffixes: not found
...
(bootloader) 0A40040192024205# (16 characters as above, fine)
(bootloader) 30373731363031303332323239111111111111# (40 characters instead of [B]27 up to and incl # +4 more = 31[/B])
(bootloader) 8A672BA4746C2CE02328A2AC0C39F9511111111# (same here, 40 characters is my output instead of [B]31[/B])
(bootloader) 1A3E51F532800020000000000000000 (32 characters instead of [B]31[/B])
OKAY [ 0,107s]
finished. total time: 0,108s
Put it into the Unlock Data Scrub, just in case, but get a "your device does not qualify for bootloader unlocking".
No SIM Card(s) have been inserted yet nor did any connection to the internet took place.
Anyone got an idea what's wrong?
No_Signal said:
Got my G5 today and tried to unlock its bootloader. Motorola USB drivers installed, adbdriver and latest windows ADB Tools extracted.
Following this guide (maybe a mod could correct the wrong "adb devices" command in the first post) running adb devices in my adb folder via CMD I get
Code:
List of devices attached
* daemon not running. starting it now at tcp:5037 *
*daemon started successfully *
followed by two two emty lines as output. Repeating the command adb devices the same, just two emty lines.
Serial Number can also be found when entering fastboot screen on the phone itself anyway, no? That's where I see it between
Code:
Product/Variant: cedric XT1676 16GB P5
Serial Number: AA12345678XX
CPU: MSM8937
According Motorola serial number and that step is not even needed.
Running the fastboot oem get_unlock_data command "the returned string will be used to retrieve your unlock key". This is how this string is supposed to look like:
Code:
$ fastboot oem get_unlock_data
(bootloader) 0A40040192024205#4C4D3556313230
(bootloader) 30373731363031303332323239#BD00
(bootloader) 8A672BA4746C2CE02328A2AC0C39F95
(bootloader) 1A3E5#1F53280002000000000000000
(bootloader) 0000000
instead I get like this (using dummy code from above):
Code:
(bootloader) slot-count: not found
(bootloader) slot-suffixes: not found
(bootloader) slot-suffixes: not found
...
(bootloader) 0A40040192024205# (16 characters as above, fine)
(bootloader) 30373731363031303332323239111111111111# (40 characters instead of [B]27 up to and incl # +4 more = 31[/B])
(bootloader) 8A672BA4746C2CE02328A2AC0C39F9511111111# (same here, 40 characters is my output instead of [B]31[/B])
(bootloader) 1A3E5#1F5328000200000000000000# (32 characters instead of [B]31[/B])
OKAY [ 0,107s]
finished. total time: 0,108s
Put it into the Unlock Data Scrub, just in case, but get a "your device does not qualify for bootloader unlocking".
Anyone got an idea what's wrong?
Click to expand...
Click to collapse
All the outputs look correct to me
Either
1 - you haven't entered the code correctly - copy it into a text editor first & tidy up any spaces before copying it to website
2 - you are using a amazon variant which cannot be unlocked
There is a typo it should be adb devices
Follow the instructions on the Motorola boot loader unlock site especially the part how to copy & past codes from terminal window as some codes you need to remove the line brakes so
123
456
789
Becomes 123456789 and of course you need to remove the (bootloader) parts too so it's just the code on a single line
TheFixItMan said:
All the outputs look correct to me
Either
1 - you haven't entered the code correctly - copy it into a text editor first & tidy up any spaces before copying it to website
2 - you are using a amazon variant which cannot be unlocked
There is a typo it should be adb devices
Follow the instructions on the Motorola boot loader unlock site especially the part how to copy & past codes from terminal window as some codes you need to remove the line brakes so
123
456
789
Becomes 123456789 and of course you need to remove the (bootloader) parts too so it's just the code on a single line
Click to expand...
Click to collapse
Had to correct the last line I wrote in my post at first, those 32 characters don't have any # in it.
I'm wondering why I have more characters than the number in Motorola's example - this can't be wrong? Also four lines instead of five.
I made sure controlling it several times that the code is correct, manually and by using also Data Scrub, just in case.
The phone itself is a retail one, also says so under Android -> Phone status -> Software Channel -> reteu.
Wouldn't want to start the phone/use it with all that google crap on it. AFWall+ with Googles IP Range is just a workaround.
A Replicant ROM will be great for the future.
No_Signal said:
Had to correct the last line I wrote in my post at first, those 32 characters don't have any # in it.
I'm wondering why I have more characters than the number in Motorola's example - this can't be wrong? Also four lines instead of five.
I made sure controlling it several times that the code is correct, manually and by using also Data Scrub, just in case.
The phone itself is a retail one, also says so under Android -> Phone status -> Software Channel -> reteu.
Wouldn't want to start the phone/use it with all that google crap on it. AFWall+ with Googles IP Range is just a workaround.
A Replicant ROM will be great for the future.
Click to expand...
Click to collapse
I also assume you have installed the Motorola drivers & have enabled usb debugging and are using the adb & fastboot from the Android sdk which you have installed from
https://developer.android.com/studio/index.html
I can't offer anymore advice
TheFixItMan said:
I also assume you have installed the Motorola drivers & have enabled usb debugging and are using the adb & fastboot from the Android sdk which you have installed from
https://developer.android.com/studio/index.html
I can't offer anymore advice
Click to expand...
Click to collapse
Yes, those are the ones I used.
Got it work now! I did a clean ADB install in a VM and got it working there! :good:
@Suman117
Thank you for your guide. But would you mind correcting your first post, so other users don't run into the same disturbances I did?
I suggest to change the order of the steps, just after Step 2: before turning the smartphone off, go ahead with Step 5, 6 and 7. Step 7 should read "adb devices", not "adb device", as some other readers have mentioned already. First, this is useful to grant adb authoration (at the phones display). Second, when the phone is in fastboot mode, the command is "fastboot devices", not "adb devices".
So basically: New Step 2a: Type "adb devices" and grant permission.
Correction for step 7: "fastboot devices"
Suman117 said:
First, enable the Developer option in your setting Go to Settings>About Phone> tap in Built Number multiple times un till the toast You are a developer now appears.
Now Go to Developer option it will appear in Settings and find and enable OEM Unlock by sliding the button. A warning will appear just Confirm that.
Turn Off Your smartphone.
Press Volume Button and Power button simultaneously and hold it for few seconds. This will boot your device into fast boot mode.
Now Open the ADB Tool Folder and Go to SDK> Platform Tools and right click pressing the Shift Key on your Keyboard and select Open Command here.
Connect your device via USB cable ( good quality cable suggested for uninterrupted use).
Type the command adb device you will see a serial number in the comment prompt screen if not then you missed some step.
Now go to website Click here. Read the information given if you wish and click on Next button to proceed next step.
You the Page will ask you to sign incomplete the process by signing with you Motorolla account or Google Account.
Now go the Command Prompt and type fastboot oem get_unlock_data.
Now a new serial code will appear in your command prompt screen you have to copy the entire code.
Now open this link and paste the code in the tool. then select the entire code and paste that code in point 6 on Moto require Unlock Tool Website.
Now Click on the I Agree Button a Get Unlock Code will appear on the screen.
Click on the Button.
An Unlock Code will appear.
Now again go to the Command Prompt screen and type fast oem unlock ************. “*****” will replace your unique key.
A warning screen will appear in command just retype the same command and hit enter.
Done!!!
Click to expand...
Click to collapse
Thank you!
Update: A new thread is created to house "premade" linux distros. The first premade environment is an Ubuntu distro, installed using proot-distro in termux, Takes only a few minutes to restore the backup, else instructions are provided to build the environment yourself from scratch.
[GUIDE][NO-ROOT] How to install Ubuntu and other Linux Distros on Your Phone or Android TV Box, using Termux
NOTICE: THIS METHOD IS ONLY FOR NON ROOTED DEVICES PROOT-DISTRO GITHUB PAGE Hello Friends! Today I wanted to start a thread that will house prebuilt Linux environments, as well as instructions for building the Linux environments yourself...
forum.xda-developers.com
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Or you can visit this thread and use method 2 to remote connect to your phone using windows RDC and have a much easier time programing vms in termux's qemu. A warning the windows arm editions break xrdp at least for me. It may be user error, I am unsure. Let me know if you have trouble too or success
[GUIDE][NO-ROOT] How to Remotely Connect to Your Phone, or Any Android Device, Using Termux and a PC
Hello Friends~! Today I wanted to teach you how to remotely connect to your phone, or any android device, using Termux and a PC. This example assumes your android device is on the same wireless network as your pc. In order to remote into our...
forum.xda-developers.com
Spoiler: UBUNTU ARM 64 FOR PHONE IN TERMUX
This machine seems to be working fine out of the box
How To Install Windows Or Linux ISOs on your Android Devices - Windows 10 Nox Lab + Working Arm Distros for your phone using Termux
Update: A new thread is created to house "premade" linux distros. The first premade environment is an Ubuntu distro, installed using proot-distro in termux, Takes only a few minutes to restore the backup, else instructions are provided to build...
forum.xda-developers.com
Spoiler: KALI LINUX NETHUNTER FOR PHONE IN TERMUX
This machine runs amazing once you do all the troubleshooting steps included in the comments
How To Install Windows Or Linux ISOs on your Android Devices - Windows 10 Nox Lab + Working Arm Distros for your phone using Termux
Update: A new thread is created to house "premade" linux distros. The first premade environment is an Ubuntu distro, installed using proot-distro in termux, Takes only a few minutes to restore the backup, else instructions are provided to build...
forum.xda-developers.com
Spoiler: WINDOWS 10 ARM
This one can really use some work, maybe someone can figure out what is wrong with it
How To Install Windows Or Linux ISOs on your Android Devices - Windows 10 Nox Lab + Working Arm Distros for your phone using Termux
Update: A new thread is created to house "premade" linux distros. The first premade environment is an Ubuntu distro, installed using proot-distro in termux, Takes only a few minutes to restore the backup, else instructions are provided to build...
forum.xda-developers.com
You can do the same for win11, get the image off archive.org but it wont work well unless your phone supports KVM or you have a work around
Spoiler: THE ORIGINAL GUIDE / NOX LAB FOR KNOWLEDGE PURPOSES --OUTDATED
As an edit and an update, the method listed below uses x86_64 version of qemu which will not run well on our phones. This guide also uses an android emulator to teach basics of building a virtual machine in qemu, but in practice on a phone it will be much different, when we use an Arm version of qemu. I am leaving this guide up though as it was fundamental in helping myself personally to even begin to understand qemu and the architectures and how to use the code.
This guide uses a modded nox android emulator which can be found HERE
Hello Friends~!
Today I will be walking you through using Termux, QEMU, and a VNC server to Run Windows or Linux isos on Your Android Devices as well as Android Emulators like Nox on Windows 10.
Spoiler: QEMU-SYSTEM-X86_64-HEADLESS SETUP
DOWNLOAD TERMU:
TERMU.zip
drive.google.com
Paste your iso and termu's apps in Barenox/bin, then install them in Nox.
Spoiler: PIC
Then install the apks by using the apk button on nox
BUILDING QEMU
In Termux, type:
Code:
pkg install x11-repo
apt-get upgrade -y
pkg install qemu-utils -y
pkg install qemu-system-x86-64-headless -y
BUILDING THE VIRTUAL MACHINE'S ENVIRONMENT
In Termux, type:
Code:
mkdir win7
cd win7
qemu-img create -f qcow2 win7.img 100G
A note here is that the name or command "win7" can be any iso you want to install.
For instance, you have an Ubuntu iso you want to install, use:
Code:
mkdir ubuntu
cd ubuntu
qemu-img create -f qcow2 ubuntu.img 100G
Then change the name of your iso to "ubuntu.iso" and so forth
100G can be edited as well. If you are worried about hard drive space, no need.
It is saved in qemu's take on sparse image format, "qcow2 files" (QEMU Copy On Write) thus only taking up space as you use it.
USING ADB TO PUSH THE ISO
In Barenox/bin
Open command prompt from the toolbar and run:
Code:
adb push win7.iso /data/data/com.termux/files/home/win7
Take note that /data/data/com.termux/... etc is where termux stores everything
Spoiler: PIC
BUILDING THE VIRTUAL MACHINE
In termux type:
Code:
qemu-system-x86_64 -smp 2 -net nic -net user -device AC97 -m 2048 -vnc 127.0.0.1:7 -cdrom win7.iso -hda win7.img
Take note that the port of "7" after our local server ip of 127.0.0.1 can be edited. I set this to 7 since this is windows 7
This is in reference to the "5900" port number asked for with VNC.
Install your vnc app. I used "vnc viewer"
The server ip will be 127.0.0.1 if asked and the port is 5907
or
127.0.0.1:5907
Spoiler: PIC
tadah~!
RUNNING THE MACHINE LATER
In termux
Code:
cd win7
qemu-system-x86_64 -smp 2 -net nic -net user -device AC97 -m 2048 -vnc 127.0.0.1:7 -hda win7.img
Then reopen the VNC App
These steps have all been automated, see the EXECUTABLE SCRIPTS section
IF YOU LEARN BETTER VISUALLY HERE IS A VIDEO OF THE STEPS
Spoiler: REFS
Termux Direct Apk DL:
https://f-droid.org/repo/com.termux_117.apk
VNC:
Download VNC Viewer | VNC® Connect
Control VNC® enabled computers with VNC® Viewer.
www.realvnc.com
This Guide Helped Me Get Started:
GitHub - blanckth/qemuTermux: Use QEMU in Termux as a full virtual machine and Deploy Any OS and iso
Use QEMU in Termux as a full virtual machine and Deploy Any OS and iso - GitHub - blanckth/qemuTermux: Use QEMU in Termux as a full virtual machine and Deploy Any OS and iso
github.com
This Guide Helped Me To Understand How To "Run a Batch" in Linux (.sh)
How to create batch files on Windows & Linux to automate small and complex tasks
While working on our computers we sometimes need to do repetitive tasks almost every single day. However, there is a simple way you can automate those tasks by
www.how2shout.com
What is a VNC?
What is a VCN? Benefits and Providers of Virtual Network Computing
Helped Me To Reprogram Parameters
QEMU documentation - QEMU
www.qemu.org
QCOW2 File - What is a .qcow2 file and how do I open it?
Learn about .QCOW2 files and view a list of programs that open them.
fileinfo.com
Difference Between Qemu and KVM – The Geek Diary
www.thegeekdiary.com
Spoiler: Outdated QTemu Tool history
INSTALL.md · master · QtEmu / gui · GitLab
Front-end for qemu emulator
gitlab.com
## Development
Urs Wolfer started QtEmu as school project. Ben Klopfenstein began adding some features that he wanted.
And in 2009 the project stoped its development.
In 2017 Sergio Carlavilla started from scrach the development of the 2.0 version. The new UI has based on
VirtualBox OSE and Virt-manager.
QtEmu / gui · GitLab
Front-end for qemu emulator
gitlab.com
original repo
GitHub - uwolfer/qtemu: This project is UNMAINTAINED. QtEmu is a graphical user interface for QEMU written in Qt4. Active fork: https://gitlab.com/qtemu
This project is UNMAINTAINED. QtEmu is a graphical user interface for QEMU written in Qt4. Active fork: https://gitlab.com/qtemu - GitHub - uwolfer/qtemu: This project is UNMAINTAINED. QtEmu is a g...
github.com
Building Android for Qemu: A Step-by-Step Guide
Developing Linux for Android on Qemu allows you to do some things that are not necessarily possible using the stock emulator.
www.collabora.com
AArch64 - Wikipedia
en.wikipedia.org
How to launch ARM aarch64 VM with QEMU from scratch.
The below instructions will allow for bringing up an ARM VM from scratch.
futurewei-cloud.github.io
Ubuntu – Error
Run u-boot in qemu
GitHub - qemu/u-boot: Mirror of git.qemu.org/u-boot.git
Mirror of git.qemu.org/u-boot.git. Contribute to qemu/u-boot development by creating an account on GitHub.
github.com
How to Use DD Show Progress Command in Linux? {2 Options Explained}
Use the dd command to show progress in the Linux terminal. Add the status attribute to see progress output or run dd with the pv command.
phoenixnap.com
/dev/zero - Wikipedia
en.wikipedia.org
Purpose of /dev/zero?
I tried to cat /dev/zero, and it didn't seem to do anything. I googled /dev/zero, and it says it's basically a blank file with infinite size. Is cat printing an infinite number of non-existent char...
unix.stackexchange.com
Features/PC System Flash - QEMU
wiki.qemu.org
https://forum.xda-developers.com/attachments/dd-png.5593745/
dd: different unit for bs, skip and count?
I am trying to copy a partition from an entire disk image. This command is working: dd if=image.iso of=test bs=512 skip=1161215 count=32768 In order to increase the speed, I'd like to set a bigge...
askubuntu.com
Android On Windows, With Windows~!
Looks great, will give it a try later. Thanks for the time & effort!
========================
SOURCES
==========
==================
Spoiler: QEMU-SYSTEM-X86_64 SOURCES
Spoiler: REQUIRED APPS
TERMU.zip
drive.google.com
(112M)
Spoiler: WINDOWS 7 SOURCE
Spoiler: PREREQUISITES
A Rooted Device
You need to have Qemu Built already, have made your directory, and changed to it for the scripts to work
I.E hand type this part in Termux
Code:
pkg install x11-repo
apt-get upgrade -y
pkg install qemu-utils -y
pkg install qemu-system-x86-64-headless -y
mkdir win7
cd win7
qemu-img create -f qcow2 win7.img 100G
Spoiler: DOWNLOAD
WIN7SOURCE.zip
drive.google.com
(2.9G)
Spoiler: HOW TO USE ALL FEATURES
Copy the source files and paste them into barenox/bin, then execute the .push-all.bat script. When the adb push has completed, you can now run this code.
In Termux:
Code:
./hinstall.sh
After you have completed the installation, the parameters attaching a disk drive are no longer needed, hence the "hrun.sh" script. This script allows you to easily boot your new machine after changing to the machine's folder in Termux.
In Termux:
Code:
./hrun.sh
Then open your vnc app. IP and PORT info: 127.0.0.1:5907
The source files contain pre-built scripts for your convenience. If you would rather build your own, or understand fully what these are, please see the EXECUTABLE SCRIPTS comment below.
Spoiler: PREMADE INFO
Hello, for your convenience, a pre-installed hdd has been uploaded for this machine. What does that mean? You can bypass the Windows installation and all the steps required to do the setup, by simply pushing the Premade files and running ./hrun.sh
SEE PREMADES SECTION IN COMMENTS
Spoiler: HEADLESS SOURCE CODE
Code:
install:
mkdir win7
cd win7
qemu-img create -f qcow2 win7.img 100G
qemu-system-x86_64 -smp 2 -net nic -net user -device AC97 -m 2048 -vnc 127.0.0.1:7 -cdrom win7.iso -hda win7.img
run later:
cd win7
qemu-system-x86_64 -smp 2 -net nic -net user -device AC97 -m 2048 -vnc 127.0.0.1:7 -hda win7.img
iso obtained from:
My google Drive Vault
vnc ip and port:
127.0.0.1:7
127.0.0.1:5907
adb push path:
adb push win7.iso /data/data/com.termux/files/home/win7
adb push hinstall.sh /data/data/com.termux/files/home/win7
adb push hrun.sh /data/data/com.termux/files/home/win7
chmod path:
adb shell chmod 777 /data/data/com.termux/files/home/win7/hinstall.sh
adb shell chmod 777 /data/data/com.termux/files/home/win7/hrun.sh
commands:
./hinstall.sh
./hrun.sh
Spoiler: TINY7 SOURCE
Spoiler: PREREQUISITES
A Rooted Device
You need to have Qemu Built already, have made your directory, and changed to it for the scripts to work
I.E hand type this part in Termux
Code:
pkg install x11-repo
apt-get upgrade -y
pkg install qemu-utils -y
pkg install qemu-system-x86-64-headless -y
mkdir tiny7
cd tiny7
qemu-img create -f qcow2 tiny7.img 100G
Spoiler: DOWNLOAD
TINY7SOURCE.zip
drive.google.com
(691M)
Spoiler: HOW TO USE ALL FEATURES
First half of video is using the Premade, second half is SOURCES
Copy the source files and paste them into barenox/bin, then execute the .push-all.bat script. When the adb push has completed, you can now run this code.
In Termux:
Code:
./hinstall.sh
After you have completed the installation, the parameters attaching a disk drive are no longer needed, hence the "hrun.sh" script. This script allows you to easily boot your new machine after changing to the machine's folder in Termux.
In Termux:
Code:
./hrun.sh
Then open your vnc app. IP and PORT info: 127.0.0.1:5903
The source files contain pre-built scripts for your convenience. If you would rather build your own, or understand fully what these are, please see the EXECUTABLE SCRIPTS comment below.
Spoiler: PREMADE INFO
Hello, for your convenience, a pre-installed hdd has been uploaded for this machine. What does that mean? You can bypass the Windows installation and all the steps required to do the setup, by simply pushing the Premade files and running ./hrun.sh
SEE PREMADES SECTION IN COMMENTS
Spoiler: PROGRAMMER'S NOTES
Remember that Windows 7 is ancient now and takes (took) forever to setup, even as small as this is.
With this machine, first select "CUSTOM Install", then just set it and forget it. Tiny 7 has a built in script that executes after the initial setup completes, so when you get to this part, you are done, despite what the window says. The script hangs, as it is way outdated, we need to remove it. Close the window and delete the experience folder and delete enable quick launcher
Then we need to delete the actual script
Open task manager, find the PROCESS activate.exe, click on it once to select it, and at the top of vnc viewer, select the mouse icon to activate the left click option. at the bottom right if you click, it will allow you to open the side menu to open the file location. So, open the file location first, then select end task. Delete the install folder
alternatively, you can go into C:\Windows and delete the install folder
You'll notice that this is going to break the internet explorer and file manager shortcuts on your desktop. Just remove the shortcuts, and open the windows menu, search for internet, then right click and copy internet explorer. Go to your desktop and paste a short cut
Spoiler: HEADLESS SOURCE CODE
Code:
install:
mkdir tiny7
cd tiny7
qemu-img create -f qcow2 tiny7.img 100G
qemu-system-x86_64 -smp 2 -net nic -net user -device AC97 -m 2048 -vnc 127.0.0.1:3 -cdrom tiny7.iso -hda tiny7.img
run later:
cd tiny7
qemu-system-x86_64 -smp 2 -net nic -net user -device AC97 -m 2048 -vnc 127.0.0.1:3 -hda tiny7.img
iso obtained from:
https://archive.org/download/tiny-7/Tiny7.iso
vnc ip and port:
127.0.0.1:3
127.0.0.1:5903
adb push path:
adb push win7.iso /data/data/com.termux/files/home/tiny7
adb push hinstall.sh /data/data/com.termux/files/home/tiny7
adb push hrun.sh /data/data/com.termux/files/home/tiny7
chmod path:
adb shell chmod 777 /data/data/com.termux/files/home/tiny7/hinstall.sh
adb shell chmod 777 /data/data/com.termux/files/home/tiny7/hrun.sh
commands:
./hinstall.sh
./hrun.sh
========================
PREMADES
==========
==================
Spoiler: QEMU-SYSTEM-X86_64 PREMADE IMAGES
Spoiler: REQUIRED APPS
TERMU.zip
drive.google.com
(112M)
Spoiler: WINDOWS 7
Spoiler: STOCK: WINDOWS 7 ULTIMATE SP1 (64 BIT) PREMADE
Spoiler: PREREQUISITES
A Rooted Device
You need to have Qemu Built already, have made your directory, and changed to it for the scripts to work
I.E hand type this part in Termux
Code:
pkg install x11-repo
apt-get upgrade -y
pkg install qemu-utils -y
pkg install qemu-system-x86-64-headless -y
mkdir win7
cd win7
Spoiler: DOWNLOAD
WIN7ULTSP1STOCKHDD.zip
drive.google.com
(3.1G)
Spoiler: HOW TO USE
It says Tiny7 but the steps are the same. First half is a PREMADE installation demo, second half is a SOURCES demo
This premade hard drive image saves us the time of installing windows. It is fully setup and ready to play with.
To use it, copy all the files to barenox/bin and run the .push-all.bat script.
If using your own device, paste the files into your adb folder or just execute the script if you have your adb permissions wrapped.
When it has completed, in Termux type:
Code:
./hrun.sh
Open your vnc app. IP and PORT info: 127.0.0.1:5907
And that will load the premade machine for you. It will simply boot into windows
Nothing has been added here, so if you want to run games and what not, there may be dependencies required. I will build a box that is game ready in the future with the 64bit edition.
Spoiler: MOD: WINDOWS 7, TINY 7 (32 BIT) PREMADE
Spoiler: PREREQUISITES
A Rooted Device
You need to have Qemu Built already, have made your directory, and changed to it for the scripts to work
I.E hand type this part in Termux
Code:
pkg install x11-repo
apt-get upgrade -y
pkg install qemu-utils -y
pkg install qemu-system-x86-64-headless -y
mkdir tiny7
cd tiny7
Spoiler: DOWNLOAD
TINY7HDD.zip
drive.google.com
(615M)
Spoiler: HOW TO USE
First half is a PREMADE installation demo, second half is a SOURCES demo
This premade hard drive image saves us the time of installing windows. It is fully setup and ready to play with.
To use it, copy all the files to barenox/bin and run the .push-all.bat script.
If using your own device, paste the files into your adb folder or just execute the script if you have your adb permissions wrapped.
When it has completed, in Termux type:
Code:
./hrun.sh
Open your vnc app. IP and PORT info: 127.0.0.1:5903
And that will load the premade machine for you. It will simply boot into windows
Nothing has been added here, so if you want to run games and what not, there may be dependencies required. I will build a box that is game ready in the future with the 64bit edition.
See Tiny7's Tree Under SOURCES. The PROGRAMMER'S NOTES Tree contains detailed instructions for how this was Programmed. I had to figure out how to remove the old script that came with this iso, and documented the steps there for others. Note that the preinstalled machine has been cleaned of the problematic INSTALL folder and the internet explorer shortcut corrected for you.
More MODS will be added as they are built
TERMUX AND REPO KNOWLEDGE
Spoiler: TERMUX PROPERTIES AND USER BINARIES
Spoiler: CODE
The following code was used to pull Termux's properties File
Code:
adb pull /data/data/com.termux/files/home/.termux/termux.properties
Spoiler: FILE
Code:
### After making changes and saving you need to run `termux-reload-settings`
### to update the terminal. All information here can also be found on the
### wiki: https://wiki.termux.com/wiki/Terminal_Settings
###############
# General
###############
### Allow external applications to execute arbitrary commands within Termux.
### This potentially could be a security issue, so option is disabled by
### default. Uncomment to enable.
# allow-external-apps = true
### Default working directory that will be used when launching the app.
# default-working-directory = /data/data/com.termux/files/home
### Uncomment to disable toasts shown on terminal session change.
# disable-terminal-session-change-toast = true
### Uncomment to not show soft keyboard on application start.
# hide-soft-keyboard-on-startup = true
### Uncomment to let keyboard toggle button to enable or disable software
### keyboard instead of showing/hiding it.
# soft-keyboard-toggle-behaviour = enable/disable
### Adjust terminal scrollback buffer. Max is 50000. May have negative
### impact on performance.
# terminal-transcript-rows = 2000
### Uncomment to use volume keys for adjusting volume and not for the
### extra keys functionality.
# volume-keys = volume
###############
# Fullscreen mode
###############
### Uncomment to let Termux start in full screen mode.
# fullscreen = true
### Uncomment to attempt workaround layout issues when running in
### full screen mode.
# use-fullscreen-workaround = true
###############
# Cursor
###############
### Cursor blink rate. Values 0, 100 - 2000.
# terminal-cursor-blink-rate = 0
### Cursor style: block, bar, underline.
# terminal-cursor-style = block
###############
# Extra keys
###############
### Settings for choosing which set of symbols to use for illustrating keys.
### Choose between default, arrows-only, arrows-all, all and none
# extra-keys-style = default
### Force capitalize all text in extra keys row button labels.
# extra-keys-text-all-caps = true
### Default extra-key configuration
# extra-keys = [[ESC, TAB, CTRL, ALT, {key: '-', popup: '|'}, DOWN, UP]]
### Two rows with more keys
# extra-keys = [['ESC','/','-','HOME','UP','END','PGUP'], \
# ['TAB','CTRL','ALT','LEFT','DOWN','RIGHT','PGDN']]
### Configuration with additional popup keys (swipe up from an extra key)
# extra-keys = [[ \
# {key: ESC, popup: {macro: "CTRL f d", display: "tmux exit"}}, \
# {key: CTRL, popup: {macro: "CTRL f BKSP", display: "tmux ←"}}, \
# {key: ALT, popup: {macro: "CTRL f TAB", display: "tmux →"}}, \
# {key: TAB, popup: {macro: "ALT a", display: A-a}}, \
# {key: LEFT, popup: HOME}, \
# {key: DOWN, popup: PGDN}, \
# {key: UP, popup: PGUP}, \
# {key: RIGHT, popup: END}, \
# {macro: "ALT j", display: A-j, popup: {macro: "ALT g", display: A-g}}, \
# {key: KEYBOARD, popup: {macro: "CTRL d", display: exit}} \
# ]]
###############
# Colors/themes
###############
### Force black colors for drawer and dialogs
# use-black-ui = true
###############
# HW keyboard shortcuts
###############
### Disable hardware keyboard shortcuts.
# disable-hardware-keyboard-shortcuts = true
### Open a new terminal with ctrl + t (volume down + t)
# shortcut.create-session = ctrl + t
### Go one session down with (for example) ctrl + 2
# shortcut.next-session = ctrl + 2
### Go one session up with (for example) ctrl + 1
# shortcut.previous-session = ctrl + 1
### Rename a session with (for example) ctrl + n
# shortcut.rename-session = ctrl + n
###############
# Bell key
###############
### Vibrate device (default).
# bell-character = vibrate
### Beep with a sound.
# bell-character = beep
### Ignore bell character.
# bell-character = ignore
###############
# Back key
###############
### Send the Escape key.
# back-key=escape
### Hide keyboard or leave app (default).
# back-key=back
###############
# Keyboard issue workarounds
###############
### Letters might not appear until enter is pressed on Samsung devices
# enforce-char-based-input = true
### ctrl+space (for marking text in emacs) does not work on some devices
# ctrl-space-workaround = true
Spoiler: MORE TERMUX KNOWLEDGE
Internal and external storage - Termux Wiki
wiki.termux.com
Spoiler: BUILT IN BINARIES
Spoiler: QEMU X11 REPOS
QEMU-SYSTEM-X86_64 7.0 USER MANUAL PART 1
Spoiler: SHOW
X86_64 USER MANUAL PART 2
Spoiler: SHOW
EXECUTABLE SCRIPTS
Spoiler: SHOW
Spoiler: HEADLESS INSTALL SCRIPT
This script simply saves us the time of retyping the virtual's machine's installation parameters by running "./hinstall.sh"
Spoiler: PREREQUISITES
A Rooted Device To Be Able To Modify and Execute Your New Scripts
You need to have Qemu Built already, have made your directory, and changed to it for the scripts to work
I.E hand type this part
Code:
pkg install x11-repo
apt-get upgrade -y
pkg install qemu-utils -y
pkg install qemu-system-x86-64-headless -y
mkdir win7
cd win7
qemu-img create -f qcow2 win7.img 100G
Make a new text file on your desktop. Call it hinstall
Open the text file and paste in:
Code:
qemu-system-x86_64 -smp 2 -net nic -net user -device AC97 -m 2048 -vnc 127.0.0.1:7 -cdrom win7.iso -hda win7.img
Spoiler: PIC
Save the file, change the extension to .sh, and paste it into barenox/bin.
Open command prompt from the toolbar and paste:
Code:
adb push hinstall.sh /data/data/com.termux/files/home/win7
adb root
adb shell chmod 777 /data/data/com.termux/files/home/win7.hinstall.sh
./hinstall.sh
Spoiler: PIC
Now run this in Termux: (In the win7 directory, per this example, minus the top picture xD)
Code:
./hinstall.sh
and that will start the virtual machine for us, without us needing to type in the steps. I have automated all this further, It will be added to the SOURCE section eventually
Spoiler: HEADLESS RUN SCRIPT
This script simply saves us the time of retyping the virtual's machine's parameters by running "./hrun.sh"
Make a new text file on your desktop. Call it hrun
Open the text file and paste in:
Code:
qemu-system-x86_64 -smp 2 -net nic -net user -device AC97 -m 2048 -vnc 127.0.0.1:7 -hda win7.img
Save the file, change the extension to .sh, and paste it into barenox/bin.
Open command prompt from the toolbar and paste:
Code:
adb push hrun.sh /data/data/com.termux/files/home/win7
adb root
adb shell chmod 777 /data/data/com.termux/files/home/win7.hrun.sh
You are now able to start your windows 7 vm in Termux by changing to the win7 directory and typing
Code:
./hrun.sh
Then open your vnc or spice app
Spoiler: ADB PUSH ALL SCRIPT
This is a simple script to automate pushing the windows iso, the hinstall.sh file. and hrun.sh file.
Simply paste the text in a new document and name it something like ".PUSHALL.bat"
We add the period at the beginning so the script will appear at the top of file list when added to the bin folder.
Spoiler: PIC
Code:
adb push win7.iso /data/data/com.termux/files/home/win7
adb push hinstall.sh /data/data/com.termux/files/home/win7
adb push hrun.sh /data/data/com.termux/files/home/win7
adb root
adb shell chmod 777 /data/data/com.termux/files/home/win7/hinstall.sh
adb shell chmod 777 /data/data/com.termux/files/home/win7/hrun.sh
The final commands in the script, adb root and chmod, allow us to modify the scripts we sent over, so they are allowed to be executed in Termux by using ./ and then the file name, like: ./hinstall.sh
You would then paste all these files into barenox/bin (or your adb directory if working on your own device) and run the .push-all.bat file, it will go through and automatically push over the iso and files, and chmod them for us. (You would need root permissions for this sort of automation)
See Windows 7 SOURCE for further documentation. (Work In Progress)
Spoiler: PULL VIRTUAL MACHINE'S HDD
You can make a batch file to easily pull the machine's hdd
Code:
adb pull /data/data/com.termux/files/home/win7/win7.img
Spoiler: HOW TO EDIT SCRIPTS IN WINDOWS
Right click and edit the batch and sh files
press ctrl plus h and replace as needed
To Edit the .sh without need of other program just change it to ".txt" and edit in there, then change back
Spoiler: HOW TO EDIT SCRIPTS IN TERMUX
In Termux, you can use the command "nano" then your file name, to edit the file in the shell
Make your edits here
Then press ctrl + x and then ENTER to save and close the file. You need to use Termux's built in ctrl button and then press X
Spoiler: SU HOME CODE
When you go into superuser mode in Termux, it forces you into the Root directory on your android device. You can create a script called home.sh
with code:
Code:
cd /data/data/com.termux/files/home/
and adb push and chmod the script, so now after you type su,
you can type ./home.sh and be rerouted to your termux home with all your machines
Will add more as I make them
PROGRAMMER'S NOTES
Spoiler: SHOW
Spoiler: WINDOWS7
There's no additional programming notes here, other than to select custom install when you first run the disk in the emulator, else it will cause a loop.
Win7 is such a sweet baby <3 at least for the initial setup. Now we can finness the creation by adding certain dependencies to play windows games like .net framework, haxm and more but I will do that another day
Spoiler: TINY7
This is the only entry that is actually located in it's SOURCES tree, I am unable to move it bc it has a lot of images
Spoiler: WINDOWS 11 ARM
Spoiler: OBTAINING THE ISO
Spoiler: UUPDUMP
If you're not familiar with using UUPDUMP, I'll walk you through using them to get the Windows 11 ARM iso. You could use this site for other Windows Related ISOs and products but that will not be covered here.
UUP dump
UUP dump lets you download Unified Update Platform files, like Windows Insider updates, directly from Windows Update.
uupdump.net
Select the arm64 version for latest public build
Select only Windows Home (Unless you need pro for its built in tools)
Uncheck include updates
Unzip the package and run the uup download windows cmd
When the dl finishes, you can identify your iso's name by this line in cmd prompt. You can then rename it to what you like
Spoiler: DOWNLOAD WIN11 ARM
If you don't want to have to do the uupdump steps, I have uploaded my copy of windows 11 arm from them, to gdrive for us <3
DOWNLOAD:
win11arm.iso
drive.google.com
(4.16GB)
Spoiler: QEMU-IMG HACK, MAY BE USEFUL WITH OTHER PROGRAMS
To even be able to view the help file for qemu-img in Termux, I had to use Root explorer to copy the binary from data/data/com.termux/files/usr/bin
and paste it to data/data/com.termux/files/home
That allowed me to be able to call the help command and not get a packaging error. Even when using su to break out of the terminal's sandbox, I was unable to run the command.
Evidently the way termux stores usr added packages, breaks the logic when executing certain functionality, so this is a good "hack" if you need to see a certain tool's help file
Spoiler: AARCH64 EFI DRIVER
Download the driver from here:
Ubuntu – Error
Unzip the package, and open the folder until you get here:
Then copy the efi driver and adb push it to your arm system folder, in this case I am working on windows 11 arm so the path will be
Code:
adb push QEMU_EFI.fd /data/data/com.termux/files/home/win11arm
We have to add the efi driver to our machine's build directory, as opposed to the usr/share folder as shown in an example i listed earlier, due to us building in Termux.
PROGRAMMER'S NOTES
QEMU-IMG (QEMU UTILITIES)
Spoiler: SHOW
QEMU-SYSTEM-X86_64 CPU LIST
Spoiler: SHOW
QEMU-SYSTEM-ARM 7.0 USER MANUAL PART 1
Spoiler: SHOW
ARM USER MANUAL PART 2
Spoiler: SHOW
ARM SYSTEM CPU LIST
QEMU-SYSTEM-AARCH64(ARM64)USER MANUAL
Spoiler: SHOW
AARCH64 USER MANUAL PART 2
Spoiler: SHOW
available cpus
Working on this build now. The very first step involves us using an efi driver. This has been added to the programming notes. The beginner code I am building with has been added to the SOURCES tree. Starting with figuring out WIN11ARM then we build android
If anyone makes anything cool feel free to share, it can be any of the qemu systems.
Spoiler: notes
This will eventually be moved into more relevant areas, as per usual. Just jotting down notes so I don't have to start from scratch.
I'm building based off a guide from here https://futurewei-cloud.github.io/ARM-Datacenter/qemu/how-to-launch-aarch64-vm/
There's been new REFS added to the OP to support knowledge gained from this man's Wonderful post. The programming and code is going to differ based on QEMU being at 7.0 at this point in time.
In order to properly flash the memory sets to the pflash file we are going to create, we will use a system binary called "zero". This can be located on any android device in the dev folder.
These articles are great illustrators of the usefulness (and age!) of this file system, to better understand what we are asking the dd program to do with it
/dev/zero - Wikipedia
en.wikipedia.org
Purpose of /dev/zero?
I tried to cat /dev/zero, and it didn't seem to do anything. I googled /dev/zero, and it says it's basically a blank file with infinite size. Is cat printing an infinite number of non-existent char...
unix.stackexchange.com
Im having troubles understanding what a pflash exactly is besides the qemu documentation https://wiki.qemu.org/Features/PC_System_Flash
Qemu won't load images if they aren't formatted RAW and the semantics in doing so with a pflash in qemu 7.0 are different. This is such an obscure area, it's hard to find everything... so kinda making it up as we go haha
The install code is having this error
https://forum.xda-developers.com/attachments/dd-png.5593745/
dd: different unit for bs, skip and count?
I am trying to copy a partition from an entire disk image. This command is working: dd if=image.iso of=test bs=512 skip=1161215 count=32768 In order to increase the speed, I'd like to set a bigge...
askubuntu.com
I have no idea what I am doing, so if there is someone smarter that can help enlighten us on how to do things properly that would be awesome. Otherwise I will continue to poke, prod, break, and remake until something works xD
taking a break on this for a few days to focus on the shield again. will be back~! <3
David Bombal has a good guide up how to get Kali Linux Nethunter on any android device (no root needed) using termux, and in it he showcases a different vnc app. I will investigate this share in the future. Just saving it and sharing it <3 https://davidbombal.com/kali-linux-nethunter-android-install-in-5-minutes-rootless/
Have been looking for a proper guide to actually emulate x86-based Windows on modern ARM64 Snapdragon chips for years, and somehow you descended from xda heaven. Thank you, I'll be having a fun few weeks of spare time now. I will report any progress or issues I encounter down the road.
Hi. I'm trying to find the guide to use a pre-made image (Tiny7.img) instead of creating a new for starters to get a grip on stuff, but I can't find it.
Could you help me? @jenneh
@tehdomic sorry it got buried in everything. the direct google link is here https://drive.google.com/file/d/12uP_rIEoPzqHqh0UqbsLDw6IqYbtNY4K/view
the comment the info is under here with the instructions, they are in the download area.
How To Install Windows Or Linux ISOs on your Android Devices - Windows 10 Nox Lab + Working Arm Distros for your phone using Termux
Update: A new thread is created to house "premade" linux distros. The first premade environment is an Ubuntu distro, installed using proot-distro in termux, Takes only a few minutes to restore the backup, else instructions are provided to build...
forum.xda-developers.com
Spoiler: show