Giter Site home page Giter Site logo

kivy-remote-shell's Introduction

Kivy Remote Shell

Remote SSH+Python interactive shell application. Great for having a remote python shell on an embed platform like android.

Instructions

  • start the application
  • connect to the ssh ssh -p8000 admin@serverip
  • enter the password: kivy
  • enjoy your python shell

Compile for android

$ pip install buildozer --user
$ git clone git://github.com/kivy/kivy-remote-shell
$ cd kivy-remote-shell
$ pip install -r requirements.txt
$ buildozer android_new debug deploy run logcat

Pre-built debug apk available at http://bit.ly/KivyRemote2

If you want to compile a release version for sharing, just replace debug installd by release, and sign the APK!

kivy-remote-shell's People

Contributors

akshayaurora avatar alanjds avatar aradhyamathur avatar dependabot[bot] avatar dessant avatar keyweeusr avatar kiok46 avatar thrameos avatar tito avatar tshirtman avatar warlord77 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

kivy-remote-shell's Issues

p4a build fails

I've tried to build kivy remote shell with kivy 1.10 and got the following error:
distutils.errors.DistutilsError: Could not find suitable distribution for Requirement.parse('cffi>=1.4.1')

I can install cffi 1.10 with pip, I think it is some dependency definition bug but have no idea how to fix it.
BR, Jacek

Provide pre-built APK

A feature request of sorts. Can you provide, on the GitHub page, the Kivy Remote Shell APK? That or provide better build instructions as user support can be sparse.

Requiring users to build the APK presents a significant hurdle to gaining users. I spent 6 hours trying to get it built and never got a fully-functioning version. Fortunately, I stumbled on the APK and it worked immediately.

twisted.conch.error.ConchError: ('no host keys, failing', None)

Hey, built and executed from master, when running I get this error on startup:

I/python  ( 2166):  Traceback (most recent call last):
I/python  ( 2166):    File "/buildozer/.buildozer/android/app/main.py", line 73, in <module>
I/python  ( 2166):    File "/buildozer/.buildozer/android/platform/build/dists/remoteshell/private/lib/python2.7/site-packages/kivy/app.py", line 802, in run
I/python  ( 2166):    File "/buildozer/.buildozer/android/app/main.py", line 67, in build
I/python  ( 2166):    File "/buildozer/.buildozer/android/platform/build/dists/remoteshell/private/lib/python2.7/site-packages/twisted/internet/posixbase.py", line 495, in listenTCP
I/python  ( 2166):    File "/buildozer/.buildozer/android/platform/build/dists/remoteshell/private/lib/python2.7/site-packages/twisted/internet/tcp.py", line 998, in startListening
I/python  ( 2166):    File "/buildozer/.buildozer/android/platform/build/dists/remoteshell/private/lib/python2.7/site-packages/twisted/internet/protocol.py", line 77, in doStart
I/python  ( 2166):    File "/buildozer/.buildozer/android/platform/build/dists/remoteshell/private/lib/python2.7/site-packages/twisted/conch/ssh/factory.py", line 42, in startFactory
I/python  ( 2166):  twisted.conch.error.ConchError: ('no host keys, failing', None)
I/python  ( 2166): Python for android ended.```

Freezing when calling another app

I downloaded the debug .apk, but I experience really weird behavior. On each webbrowser.open('tel://...') or tts.speak('hi') or anything else that can trigger something from outside to appear (dialer screen, tts options, etc), the shell freezes. But not in a casual way that you can easily press home button and stop it. No, the shell freezes everything (lockscreen works) and to exit it I need to hold power button until the menu pops out. Only then I'm able to press home button and later force stop the application.

Anything else that doesn't call another app (e.g. plyer.vibrator) works normally.

Samsung Galaxy Note 2, 4.4.2 stock

ImportError: cannot import name 'manhole' from 'twisted.conch'

I am getting the following error while running the app in my mobile phone

11-17 23:22:05.021 21724 21761 I python : Traceback (most recent call last):
11-17 23:22:05.021 21724 21761 I python : File "/home/juan/git/kivy-remote-shell/.buildozer/android/app/main.py", line 12, in
11-17 23:22:05.022 21724 21761 I python : ImportError: cannot import name 'manhole' from 'twisted.conch' (unknown location)
11-17 23:22:05.022 21724 21761 I python : Python for android ended.

How do I build kivy-remote-app?

How do I do this when distribute.sh has become obsolete? I deleted buildozer.spec file which comes by default and I ran buildozer init command to get the new buildozer.spec file. After setting up the buildozer file and copy pasting the requirements and even downloading the requirement files individually, I still happen to run into errors.

Traceback (most recent call last):
  File "setup.py", line 90, in <module>
    setup(**params)
  File "/usr/lib/python2.7/distutils/core.py", line 151, in setup
    dist.run_commands()
  File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/usr/lib/python2.7/distutils/command/install.py", line 613, in run
    self.run_command(cmd_name)
  File "/usr/lib/python2.7/distutils/cmd.py", line 326, in run_command
    self.distribution.run_command(command)
  File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
    cmd_obj.run()
  File "/usr/lib/python2.7/distutils/command/install_lib.py", line 101, in run
    self.byte_compile(outfiles)
  File "/usr/lib/python2.7/distutils/command/install_lib.py", line 142, in byte_compile
    verbose=self.verbose, dry_run=self.dry_run)
  File "/usr/lib/python2.7/distutils/util.py", line 385, in byte_compile
    from tempfile import mktemp
  File "/usr/lib/python2.7/tempfile.py", line 32, in <module>
    import io as _io
  File "/usr/lib/python2.7/io.py", line 51, in <module>
    import _io
ImportError: No module named _io
# Command failed: ./distribute.sh -m "pycrypto pyasn1 pyjnius twisted kivy" -d "remoteshell"
#
# Buildozer failed to execute the last command
# The error might be hidden in the log above this error
# Please read the full log, and search for it before
# raising an issue with buildozer itself.
# In case of a bug report, please add a full log with log_level = 2

Is there any file which forces buildozer to use .distribute.sh? Now keep in mind that I didn't setup python-for-android directory in buildozer.spec file. Is this forcing buildozer to download python-for-android's old toolchain while it says cloning from python-for-android?

If possible, can any one share their kivy-remote-shell app?

Cannot build on Ubuntu 14.04.1 LTS.

Fails to build using:
./distribute.sh -m 'openssl pycrypto pyasn1 pyjnius twisted kivy'

It gets to the pycrypto module but fails to build due to missing #include files.
For example:

compilation terminated.
In file included from cryptlib.c:117:0:
cryptlib.h:62:20: fatal error: stdlib.h: No such file or directory
#include <stdlib.h>

Any ideas?

ImportError: No module named Cryopto

Such traceback:

01-24 12:11:25.127 18983 19269 I python  :  /data/user/0/org.kivy.remoteshell/files/app/lib/python2.7/site-packages/twisted/conch/ssh/common.py:18: RuntimeWarning: PyCrypto not installed, but continuing anyways!
01-24 12:11:25.149 18983 19269 I python  :  Traceback (most recent call last):
01-24 12:11:25.149 18983 19269 I python  :    File "/home/maho/workspace/sneak/kivy-remote-shell/.buildozer/android/app/main.py", line 12, in <module>
01-24 12:11:25.151 18983 19269 I python  :    File "/home/maho/workspace/sneak/kivy-remote-shell/.buildozer/android/platform/build/dists/remoteshell/private/lib/python2.7/site-packages/twisted/conch/manhole_ssh.py", line 14, in <module>
01-24 12:11:25.151 18983 19269 I python  :    File "/home/maho/workspace/sneak/kivy-remote-shell/.buildozer/android/platform/build/dists/remoteshell/private/lib/python2.7/site-packages/twisted/conch/ssh/factory.py", line 15, in <module>
01-24 12:11:25.153 18983 19269 I python  :    File "/home/maho/workspace/sneak/kivy-remote-shell/.buildozer/android/platform/build/dists/remoteshell/private/lib/python2.7/site-packages/twisted/conch/ssh/transport.py", line 22, in <module>
01-24 12:11:25.155 18983 19269 I python  :  ImportError: No module named Crypto
01-24 12:11:25.211 18983 19269 I python  : Python for android ended.

Code built in such way:

VERSION_twisted=15.4.0 buildozer --verbose android debug deploy run logcat

Update android app

Current android app has wrong permission which rectified by #18.

New app can be released using git release.

Use Buildozer

I recommend you provide instructions for using Buildozer instead of distribute.sh, it is much easier.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.