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

Introducing Miroil

Scheduled Pinned Locked Moved Lomiri (was Unity8)
31 Posts 5 Posters 9.9k Views 6 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.
    • A Offline
      alan_g @jonius
      last edited by 7 Jan 2021, 20:26

      @jonius I don't have VirtualBox to hand to give detailed instructions. But it should work if you enable "the right" graphics options. Not sure what it's called. Something like 'passthrough' or '3D' maybe?

      J 1 Reply Last reply 8 Jan 2021, 18:47 Reply Quote 0
      • J Offline
        jonius @alan_g
        last edited by jonius 1 Aug 2021, 19:00 8 Jan 2021, 18:47

        @alan_g
        I was hit by this bug. Now with 3D acceleration enabled most of the smoke tests succeed. Only mir_demo_client_eglplasma still failes. And the unit test I mentioned above continues to fail as well. Will test on separate installation without VM this weekend.

        MIR_SERVER_CURSOR=null QT_QPA_PLATFORM=mirserver qmlscene qml-demo-shell/qml-demo-shell.qml works partially. The circle rotates, but the mouse cursor is not visible and clicking the scale buttons results in file:///home/miroil/qtmir/demos/qml-demo-shell/qml-demo-shell.qml:28: Error: Unknown method parameter type: FormFactor.

        A 1 Reply Last reply 8 Jan 2021, 23:53 Reply Quote 0
        • A Offline
          alan_g @jonius
          last edited by 8 Jan 2021, 23:53

          @jonius said in Introducing Miroil:

          the mouse cursor is not visible

          That's sort of expected. I disabled the cursor in Mir because QtMir tries to set a zero sized image instead of hiding it. And Mir treats that as an error.

          I've not looked at how it works for Lomiri. I suspect it renders its own cursor.

          J 1 Reply Last reply 9 Jan 2021, 23:48 Reply Quote 0
          • J Offline
            jonius @alan_g
            last edited by 9 Jan 2021, 23:48

            @alan_g installed Ubuntu 16.04 on my notebook directly via Ubuntu Touch (ISODrive is a great tool). Unfortunately the situation here is worse than in my VM on an Ubuntu 20.04 host. I guess the outdated amdgpu for my Radeon Vega 8 Graphics in Ubuntu 16.04 is to blame. The demo runs like in the VM, the same unit test fails, but many smoke tests fail:

            I:     mir_demo_client_camera
            I:     mir_demo_client_tooltip
            I:     mir_demo_client_eglsquare
            I:     mir_demo_client_eglplasma
            I:     mir_demo_client_eglstateswitcher
            I:     mir_demo_client_target
            I:     mir_demo_client_scroll
            I:     mir_demo_client_cursors
            I:     mir_demo_client_egltriangle
            I:     mir_demo_client_egldiamond_render_surface
            I:     mir_demo_client_display_config
            I:     mir_demo_client_eglcounter
            I:     mir_demo_client_touch_validator
            I:     mir_demo_client_animated_cursor
            I:     mir_demo_client_pointer_confinement
            I:     mir_demo_client_input_shapes
            I:     mir_demo_client_eglflash
            

            So I guess best is to switch back to my VM? Is the failing tests something I could ignore for now?

            A 1 Reply Last reply 10 Jan 2021, 00:12 Reply Quote 0
            • A Offline
              alan_g @jonius
              last edited by 10 Jan 2021, 00:12

              @jonius said in Introducing Miroil:

              Is the failing tests something I could ignore for now?

              Of course. It will get annoying, but if you know you didn't break the code...

              You've clearly got enough working to try stuff out.

              1 Reply Last reply Reply Quote 0
              • G Offline
                greyback @alan_g
                last edited by 12 Jan 2021, 19:10

                Hey folks,
                I can make this slightly easier with a few handy env vars.

                @alan_g said in Introducing Miroil:

                sudo ln -s /usr/local/lib/qt5/plugins/platforms/libqpa-mirserver.so /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/
                

                Allows Qt to find the platform.

                You can avoid this soft link by setting this env var instead:

                export QT_QPA_PLATFORM_PLUGIN_PATH=/usr/local/lib/qt5/plugins/platforms
                

                @alan_g said in Introducing Miroil:

                So Let's make that easier to find too:

                sudo ln -s /usr/local/lib/qt5/qml/Unity/ /usr/lib/x86_64-linux-gnu/qt5/qml/
                

                Similarly, you can avoid the soft link again and point Qt directly to where those QML plugins live with:

                export QML2_IMPORT_PATH=/usr/local/lib/qt5/qml
                

                Hope this helps
                -G

                1 Reply Last reply Reply Quote 2
                • A Offline
                  Aury88
                  last edited by Aury88 17 Jan 2021, 10:58

                  during the QtMir build with make -j 6 all test I also had the fatal error described by @jonius :

                  [ 87%] Building CXX object tests/mirserver/ScreensModel/CMakeFiles/ScreensModelTest.dir/screensmodel_test.cpp.o
                  In file included from /home/aurelio/qtmir/src/modules/Unity/Application/mirsurface.h:35:0,
                                   from /home/aurelio/qtmir/tests/modules/SurfaceManager/surface_manager_test.cpp:22:
                  /home/aurelio/qtmir/src/modules/Unity/Application/mirbuffersgtexture.h:20:30: fatal error: miroil/mirbuffer.h: Not existing file or directory 
                  compilation terminated.
                  tests/modules/SurfaceManager/CMakeFiles/surfacemanager_test.dir/build.make:62:  instruction set  for the target "tests/modules/SurfaceManager/CMakeFiles/surfacemanager_test.dir/surface_manager_test.cpp.o" failed
                  make[2]: *** [tests/modules/SurfaceManager/CMakeFiles/surfacemanager_test.dir/surface_manager_test.cpp.o] Error 1
                  CMakeFiles/Makefile2:2146:  instruction set  for the target "tests/modules/SurfaceManager/CMakeFiles/surfacemanager_test.dir/all" failed
                  make[1]: *** [tests/modules/SurfaceManager/CMakeFiles/surfacemanager_test.dir/all] Error 2
                  make[1]: *** waiting incomplete process....
                  

                  and after that

                  [ 95%] Built target applicationmanager_test
                  Makefile:138: instruction set  for the target  "all" failed
                  make: *** [all] Error 2
                  
                  A 2 Replies Last reply 17 Jan 2021, 11:22 Reply Quote 0
                  • A Offline
                    alan_g @Aury88
                    last edited by 17 Jan 2021, 11:22

                    @jonius can you PR your fix? It looks to tidy up the cmake code too.

                    1 Reply Last reply Reply Quote 0
                    • A Offline
                      alan_g @Aury88
                      last edited by alan_g 17 Jan 2021, 11:40

                      @aury88 I'm not sure when I'll be at a computer where I can fix this. In the meantime you could google enough git magic to cherry-pick @jonius's fix.

                      UPDATE: I've pushed a fix for the build error. There's still the test failure noted above.

                      @Aury88 You can get the fix with git pull

                      J 1 Reply Last reply 17 Jan 2021, 17:06 Reply Quote 0
                      • J Offline
                        jonius @alan_g
                        last edited by 17 Jan 2021, 17:06

                        @alan_g does that mean no need for a PR from my side?

                        A A 2 Replies Last reply 17 Jan 2021, 17:38 Reply Quote 0
                        • A Offline
                          Aury88 @jonius
                          last edited by 17 Jan 2021, 17:38

                          @jonius i tried again after the git pull but obtain the same error

                          A 1 Reply Last reply 17 Jan 2021, 17:54 Reply Quote 0
                          • A Offline
                            alan_g @Aury88
                            last edited by 17 Jan 2021, 17:54

                            @aury88 said in Introducing Miroil:

                            @jonius i tried again after the git pull but obtain the same error

                            Sorry, you'll need a git fetch first.

                            A 1 Reply Last reply 17 Jan 2021, 18:06 Reply Quote 0
                            • A Offline
                              alan_g @jonius
                              last edited by 17 Jan 2021, 17:56

                              @jonius said in Introducing Miroil:

                              @alan_g does that mean no need for a PR from my side?

                              Well, I've fixed the compile error, but you modernized the code as well. I think that's still worth a PR.

                              1 Reply Last reply Reply Quote 0
                              • A Offline
                                Aury88 @alan_g
                                last edited by 17 Jan 2021, 18:06

                                @alan_g
                                Oh! so I totally misunderstood that command...reading the documentation seemed to me git pull already encompass a git fetch and a git merge. also I tried the git pull after the make command and that confirmed the local branch was up-to-date. ok, i will try again after the fetch. thank you.

                                1 Reply Last reply Reply Quote 0
                                • 8 days later
                                • A Offline
                                  alan_g @jonius
                                  last edited by 25 Jan 2021, 09:39

                                  @jonius said in Introducing Miroil:

                                  @jonius next issue is a failing test (ApplicationManager), which fails here.

                                  I had a look over the weekend. The test is failing in the branch I based this off, and I didn't see an obvious cause for it.

                                  I probably need to find a better base branch for this work. I really find all these QtMir branches a mystery. Maybe the best one is one of those in the gitlab repo?

                                  1 Reply Last reply Reply Quote 0
                                  26 out of 31
                                  • First post
                                    26/31
                                    Last post