• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login
UBports Robot Logo UBports Forum
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login

Kivy python cross-platform app framework?

Scheduled Pinned Locked Moved App Development
10 Posts 4 Posters 1.3k Views 2 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • P Offline
      poVoq
      last edited by 31 Jan 2020, 19:59

      Seems like the Kivy framework should be relatively easy to get working on UT, as it can be made to work with SDL2 it seems, or in the hopefully near future also with Wayland. It seems to work well on Android, iOS and Desktop and there was a previous attempt to get it working:
      https://github.com/kivy/kivy/wiki/Ubuntu-Touch

      https://kivy.org/

      Way above my skills to get it working, but there is a nice XMPP client for it, which I would try to port once this framework is supported 🙂

      Any one interested?

      Fairphone 5 (waiting for port)

      1 Reply Last reply Reply Quote 1
      • B Offline
        BobaLava
        last edited by 7 Feb 2020, 17:28

        I'm fairly new and looking into Ubuntu Touch app development, but I don't really understand why Kivy apps wouldn't run on Ubuntu Touch if they were developed to run in Ubuntu? What exactly is the disconnect here?

        1 Reply Last reply Reply Quote 0
        • P Offline
          poVoq
          last edited by 8 Feb 2020, 00:29

          Regular Ubuntu uses X11 and GNOME3, Ubuntu Touch uses neither.

          Fairphone 5 (waiting for port)

          1 Reply Last reply Reply Quote 0
          • A Offline
            abmyii
            last edited by abmyii 10 Oct 2020, 15:18 10 Oct 2020, 15:05

            Did some testing today:

            photo5769342123638895589.jpg

            photo5769342123638895585.jpg

            photo5769342123638895588.jpg

            photo5769342123638895590.jpg
            (https://github.com/tito/2048)

            photo5769342123638895597.jpg photo5769342123638895596.jpg photo5769342123638895595.jpg

            (https://github.com/kivy-garden/mapview)

            Porting Kivy exposes some interesting potential, and it works for the most part out of the box - though some glitches will need to be fixed before it's stable.

            1 Reply Last reply Reply Quote 3
            • P Offline
              poVoq
              last edited by 10 Oct 2020, 15:42

              That looks very promising. I take it that GPU acceleration works already?

              Do you have a repository somewhere online?

              Fairphone 5 (waiting for port)

              A 1 Reply Last reply 10 Oct 2020, 15:58 Reply Quote 1
              • A Offline
                abmyii @poVoq
                last edited by abmyii 10 Oct 2020, 15:59 10 Oct 2020, 15:58

                @poVoq Yup, it runs on Mir. No repo yet - I'm just testing things for now. To test, I made / writable and then installed kivy from this ppa https://launchpad.net/~kivy-team/+archive/ubuntu/kivy?field.series_filter=xenial like so (SDL2 is also required, but should be installed automatically - not certain though as I had it preinstalled):

                apt-get install kivy python3-pil
                

                And then to run:

                DESKTOP_FILE_HINT=unity8.desktop python3 <file.py>
                

                It gives a Segmentation Fault sometimes, but rerunning usually fixes it.

                J 1 Reply Last reply 12 May 2023, 12:03 Reply Quote 0
                • P Offline
                  poVoq
                  last edited by poVoq 10 Oct 2020, 16:17 10 Oct 2020, 16:08

                  Hmm, if it works from the default Xenial repos it should also be possible to include it as a prerequisite in a clickable with python preset and subsequently a regular click package I think.

                  Edit1: ah, wait it's a PPA. Sorry was too quick to reply.

                  Edit2: No actually Clickable seems to support PPA as well, I guess? https://clickable-ut.dev/en/latest/clickable-json.html#dependencies-ppa

                  Fairphone 5 (waiting for port)

                  A 1 Reply Last reply 10 Oct 2020, 21:20 Reply Quote 1
                  • A Offline
                    abmyii @poVoq
                    last edited by 10 Oct 2020, 21:20

                    @poVoq Yup, that should work fine.

                    1 Reply Last reply Reply Quote 0
                    • J Offline
                      jhayar0719 @abmyii
                      last edited by 12 May 2023, 12:03

                      @abmyii

                      using this command doesn't work ,

                      [CRITICAL ] [App ] Unable to get a Window, abort.
                      Exception ignored in: 'kivy.properties.dpi2px'
                      Traceback (most recent call last):
                      File "/usr/lib/python3/dist-packages/kivy/utils.py", line 360, in get
                      retval = self.func(inst)
                      File "/usr/lib/python3/dist-packages/kivy/metrics.py", line 169, in dpi
                      EventLoop.ensure_window()
                      File "/usr/lib/python3/dist-packages/kivy/base.py", line 126, in ensure_window
                      sys.exit(1)
                      SystemExit: 1
                      [CRITICAL ] [App ] Unable to get a Window, abort.

                      btw, any news with Kivy ?

                      A 1 Reply Last reply 4 Jun 2023, 12:38 Reply Quote 0
                      • A Offline
                        abmyii @jhayar0719
                        last edited by 4 Jun 2023, 12:38

                        @jhayar0719 Which command are you running? It appears that SDL2 isn't being detected / used, and thus no window is being created.

                        Also, do you happen to be using focal? I'm not sure if there are additional steps required for that.

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post