Running in phone

Is it possible running this in mobile phone. I'm using Ubuntu on UserLAnd but i can't seem to install it properly
this is the logs i got :
024-05-15 05:41:34 (675 KB/s) - 'chromedriver-linux64.zip' saved [8679823/8679823]
Archive:  chromedriver-linux64.zip                           inflating: chromedriver-linux64/LICENSE.chromedriver
  inflating: chromedriver-linux64/chromedriver             ./install.sh: line 58: google-chrome: command not found
./install.sh: line 59: /usr/local/bin/chromedriver: No such file or directory
                                                           Installed Versions:
PM2 version: [PM2] Spawning PM2 daemon with pm2_home=/root/.pm2
[PM2] PM2 Successfully daemonized                          5.3.1
Python version: Python 3.10.12                             Node.js version: v22.1.0
npm version: 10.7.0                                        Google Chrome version:
ChromeDriver version:

Hi,
I'm on iPhone myself, so I couldn't say for sure. Looking at the output, everything is installed with the exception of Google Chrome and Chromedriver. Have you tried other ways of trying to install those two packages? Or maybe you could try to manually install a line at a time?
Start by installing Chrome Driver
Download the Chrome deb package
wget -O /tmp/chrome.deb https://mirror.cs.uchicago.edu/google-chrome/pool/main/g/google-chrome-stable/google-chrome-stable_124.0.6367.91-1_amd64.deb
Install the package
sudo dpkg -i /tmp/chrome.deb
Fix any dependency issues
sudo apt-get install -f -y
Remove the downloaded deb package
rm /tmp/chrome.deb
Install any additional dependencies that may be required for Chrome
sudo apt-get install -y libxss1 libappindicator1 libindicator7
And now for Chrome Driver
Ensure unzip is installed
sudo apt install -y unzip
Download the Chromedriver zip file
wget https://storage.googleapis.com/chrome-for-testing-public/124.0.6367.91/linux64/chromedriver-linux64.zip
Unzip the downloaded file
unzip chromedriver-linux64.zip
Remove the zip file
rm chromedriver-linux64.zip
Move the chromedriver to a location in your PATH and make it executable
sudo mv chromedriver /usr/local/bin/
sudo chmod +x /usr/local/bin/chromedriver

@thebrumby Thanks for the reply. I might be wrong, but i can't install the chrome because chrome only supports amd64, which doesnt match my system(arm64). Can i perhaps use chromium as alternative?

Hi,
You're correct, I believe that Google Chrome only supports amd64 architecture, which obviously wouldn't work on an arm64 system. As you said, you can use Chromium as an alternative since it supports multiple architectures, I guess the install process would be something like this. It might need some tweaking, and fine tuning:
### Update package list
sudo apt-get update

### Install Chromium
sudo apt-get install -y chromium-browser

### Ensure unzip is installed
sudo apt-get install -y unzip

### Download the latest Chromedriver for your architecture
wget https://chromedriver.storage.googleapis.com/$(wget -qO- https://chromedriver.storage.googleapis.com/LATEST_RELEASE)/chromedriver_linux64.zip

### Unzip the downloaded file
unzip chromedriver_linux64.zip

### Remove the zip file
rm chromedriver_linux64.zip

### Move the chromedriver to a location in your PATH and make it executable
sudo mv chromedriver /usr/local/bin/
sudo chmod +x /usr/local/bin/chromedriver

If you can get Chromium to install but not Chrome Driver, you could also modify the script to see if the third-party module Selenium can resolve the dependencies. Some like:
pip install selenium webdriver-manager

Then modify the script with the line in the top section:
from webdriver_manager.chrome import ChromeDriverManager

And then replace the setup_driver() function:
def setup_driver(session_path):
    chrome_options = webdriver.ChromeOptions()
    chrome_options.add_argument("user-data-dir={}".format(session_path))
    chrome_options.add_argument("--headless")
    chrome_options.add_argument("--log-level=3")  # Set log level to suppress INFO and WARNING messages
    chrome_options.add_argument("--disable-bluetooth")
    chrome_options.add_argument("--mute-audio")
    chrome_options.add_argument("--no-sandbox")
    chrome_options.add_argument("--disable-dev-shm-usage")
    chrome_options.add_experimental_option('excludeSwitches', ['enable-logging'])
    chrome_options.add_experimental_option("detach", True)

    # Compatibility Handling and error testing:
    try:
        # Set up the ChromeDriver using webdriver-manager
        service = Service(ChromeDriverManager().install())
        driver = webdriver.Chrome(service=service, options=chrome_options)
        return driver
    except Exception as e:
        print(f"Initial ChromeDriver setup may have failed: {e}")
        print("Please ensure you have the correct ChromeDriver version for your system.")
        exit(1)

Actually, I added another post but removed it!
source venv/bin/activate
pip webdriver_manager
deactivate

When ran from the HotWalletBot directory would install the module, but in my testing, it didn't work in Ubuntu 24 ran on ARM64 so I deleted it to avoid too much confusion :D

😂😂
I tried it and it works now we are onto another error
Your session will be prefixed with: HOT:
Enter your unique Session Name here, or hit <enter> for the next sequential wallet: tele1
Traceback (most recent call last):
  File "/root/HotWalletBot/./hot.py", line 1145, in <module>
    main()
  File "/root/HotWalletBot/./hot.py", line 1082, in main
    log_into_telegram()
  File "/root/HotWalletBot/./hot.py", line 364, in log_into_telegram
    driver = get_driver()
  File "/root/HotWalletBot/./hot.py", line 244, in get_driver
    driver = setup_driver()
TypeError: setup_driver() missing 1 required positional argument: 'session_path'
Deactivating virtual environment...

Nope, a different error :D
Around line 214 it should actually read
def setup_driver():

But then after that, I just hung indefinitely because apparently there is no "official" Linux ARN64 driver, I'm just trying to find a work around :)

Hey Buddy,
Thanks for your patience and support! After 12 hours of experimentation, I’m excited to share that I’ve just released version 3.0.2, which includes ARM64 Linux support. I've tested it with a couple of versions of Ubuntu on AWS and it appears to work correctly.
Now for the million-dollar question! Will this allow people to run it on their mobile devices? Over to you for the answer :)

Hi, thanks for your hard work !
Sorry for the late reply :". The install process took so much times due to bad internet connection.
It still has error on the chromedriver, i have made sure that the chromium was downloaded and not corrupted. I hope its just a minor error.
here is the latest log:
chromium-chrom 100%   4.96M  9.34KB/s    in 9m 55s

2024-05-16 02:15:35 (8.54 KB/s) - 'chromium-chromedriver_112.0.5615.49-0ubuntu<IP_ADDRESS>_arm64.deb' saved [5201396/5201396]

Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
Reading state information... Done
Selecting previously unselected package chromium-chromedriver.
(Reading database ... 51510 files and directories currently installed.)
Preparing to unpack chromium-chromedriver_112.0.5615.49-0ubuntu<IP_ADDRESS>_arm64.deb ...
Unpacking chromium-chromedriver (112.0.5615.49-0ubuntu<IP_ADDRESS>) ...
Setting up chromium-chromedriver (112.0.5615.49-0ubuntu<IP_ADDRESS>) ...
./install.sh: line 148: /usr/local/bin/chromedriver: No such file or directory

Installed Versions:
PM2 version: [PM2] Spawning PM2 daemon with pm2_home=/root/.pm2
[PM2] PM2 Successfully daemonized
5.3.1
Python version: Python 3.10.12
Node.js version: v22.2.0
npm version: 10.7.0
Chromium/Chrome version: 107.0.5304.62
Chromedriver version:
Architecture: aarch64
Note: x86_64 users can run this script again to switch between Google Chrome/Chromium browsers.
root@localhost:~/HotWalletBot# ./launch.sh
Listing available Telegram Claim Assistant scripts:
1) ./cold.py
2) ./hot.py
3) ./tree.py
4) ./vertus.py
5) ./wave.py
Please select a script by number:
2
Activating virtual environment...
Running script: ./hot.py with arguments:
Initialising the HOT: Wallet Auto-claim Python Script - Good Luck!

Current settings:
forceClaim: False
debugIsOn: False
hideSensitiveInput: True
screenshotQRCode: True
maxSessions: 1
verboseLevel: 2
lowestClaimOffset: 0
highestClaimOffset: 15
forceNewSession: False

Should we update our settings? (Default:<enter> / Yes = y):
Your session will be prefixed with: HOT:
Enter your unique Session Name here, or hit <enter> for the next sequential wallet: tg1
Initial ChromeDriver setup may have failed: [Errno 2] No such file or directory: '/usr/local/bin/chromedriver'
Please ensure you have the correct ChromeDriver version for your system.
Deactivating virtual environment...

Oh my bad, i just ran uname -m, and it turned out to be aarch64. I don't know if this is relevant, i'll check what i can do about the chromedriver

I have this fixed.  Turns out,  there are 2 locations for chrome driver, 1 for chromium and 1 for chrome. Since i use chromium i mv the existing chromedriver to another location and then symlinked chromium driver location to usr/local/bin
now chromedriver --version is finally detected