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

    I installed atom-build-clickable but I'm not seeing it in Atom

    Scheduled Pinned Locked Moved Support
    17 Posts 3 Posters 1.0k Views 1 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.
      • M Offline
        MarkG_108
        last edited by

        Hello. From the Atom site, I installed Atom (the Debian package). This works. Then, from the instructions here, I installed atom-build-clickable, using the commandline method of installation. This apparently worked, since I see stuff in the following directory: /home/mark/.atom/packages/atom-build-clickable/. I have clickable installed, and have successfully compiled various examples of programs, from some tutorials online, that often result in a window popping up that says "Hello World!"
        This site states, "Just open up your favorite project via File -> Open Folder... and you'll see Clickable appear in the menu bar." I've tried this but I have not seen "Clickable appear in the menu bar." I'm wondering what I'm doing wrong.

        1 Reply Last reply Reply Quote 0
        • AppLeeA Offline
          AppLee
          last edited by

          You should have a specific entry in some menu .
          I don't have access to my computer to show you the differences.

          But you should be able to compile with clickable from atom with a simple stroke of F9.
          I think the modification is in a "compile" menu or something related to compiling...

          I'll update in 8 hours... ^^

          M 1 Reply Last reply Reply Quote 0
          • poVoqP Offline
            poVoq
            last edited by poVoq

            I noticed that if the clickable.json file has some errors the menu entry will not show up.

            Also, are you sure you installed clickable itself correctly? Usually you need to reboot your linux once after installing docker (which Clickable uses).

            Try cloning an existing project that works with clickable and see it that works.

            Fairphone 5 (waiting for port)

            M 1 Reply Last reply Reply Quote 0
            • M Offline
              MarkG_108 @AppLee
              last edited by

              @AppLee F9 did not work.

              1 Reply Last reply Reply Quote 0
              • M Offline
                MarkG_108 @poVoq
                last edited by MarkG_108

                @poVoq I am not sure that I have installed clickable correctly. However, when I run "clickable desktop" in a clickable program, it does compile. Or, when I have my phone connected and I simply run "clickable", it also compiles (on my phone). A file I use is "calculator.mimecar", from the Ubuntu Touch clickable tutorials.

                AppLeeA 1 Reply Last reply Reply Quote 0
                • AppLeeA Offline
                  AppLee @MarkG_108
                  last edited by AppLee

                  @MarkG_108 So clickable is well installed.
                  In Atom, do you have the calculator project open ?
                  I think you can check in the "Packages" menu if there is some options.

                  In my environment, I simply open a file (QML or other) from my project then press F9 .
                  This compile the project and execute it on my phone.

                  [Edit] Also I found this post I answered : https://forums.ubports.com/topic/3238/how-should-i-set-up-my-environment-for-developing/3

                  M 1 Reply Last reply Reply Quote 0
                  • M Offline
                    MarkG_108 @AppLee
                    last edited by

                    @AppLee The program Atom itself says I have it installed (specifically, "atom-build-clickable 0.3.0" by sverzegnassi).

                    Hmm. I think I'm getting a bit closer to it working. I started Atom from the commandline, via running "atom", in folder of mark@debian:~/Templates/clickable/ubuntu-touch-programming-course-src-master/, where I have all the programs that I downloaded from the tutorial, and Atom suddenly prompted me to install some dependencies for atom-build-clickable (those being build and busy-signal).

                    Now when I press F9, it gives the following feedback:

                    No eligible build target.
                    
                    No configuration to build this project exists.
                    Hide Stack Trace
                    No eligible build target.: No configuration to build this project exists.
                        at /home/mark/.atom/packages/build/lib/build.js:113:15
                    

                    This occurred in the calculator program. Here's what I get when I run it on the commandline:

                    mark@debian:~/Templates/clickable/ubuntu-touch-programming-course-src-master/Cal
                    culator$ clickable
                    * daemon not running; starting now at tcp:5037
                    * daemon started successfully
                    No build template was specified, would you like to auto detect the template [y/N]: y
                    Auto detected template to be "qmake"
                    Info: creating stash file /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/.qmake.stash
                    sed s/@CLICK_ARCH@/armhf/g /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/manifest.json.in > /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/manifest.json
                    cd Calculator/ && ( test -e Makefile || /usr/bin/qt5-qmake-arm-linux-gnueabihf -o Makefile /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/Calculator/Calculator.pro ) && make -f Makefile 
                    mkdir -p /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/Calculator && cd /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/Calculator && intltool-extract --type=gettext/ini --update --srcdir=/home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/Calculator Calculator.desktop
                    Wrote Calculator.desktop.h
                    mkdir -p /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/build/x86_64-linux-gnu/app/Calculator && cd /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/build/x86_64-linux-gnu/app/Calculator && intltool-extract --type=gettext/ini --update --srcdir=/home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/x86_64-linux-gnu/app/Calculator Calculator.desktop
                    make[1]: Entering directory '/home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/Calculator'
                    make[1]: Nothing to be done for 'first'.
                    make[1]: Leaving directory '/home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/Calculator'
                    mkdir -p /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/build/x86_64-linux-gnu/app/install/Calculator && cd /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/build/x86_64-linux-gnu/app/install/Calculator && intltool-extract --type=gettext/ini --update --srcdir=/home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/x86_64-linux-gnu/app/install/Calculator Calculator.desktop
                    Wrote Calculator.desktop.h
                    LC_ALL=C intltool-merge -d -u /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/po /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/Calculator/Calculator.desktop /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/Calculator/Calculator.desktop > /dev/null
                    Wrote Calculator.desktop.h
                    LC_ALL=C intltool-merge -d -u /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/po /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/x86_64-linux-gnu/app/Calculator/Calculator.desktop /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/build/x86_64-linux-gnu/app/Calculator/Calculator.desktop > /dev/null
                    LC_ALL=C intltool-merge -d -u /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/po /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/x86_64-linux-gnu/app/install/Calculator/Calculator.desktop /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/build/x86_64-linux-gnu/app/install/Calculator/Calculator.desktop > /dev/null
                    mkdir -p /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/po && xgettext -o /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/po/calculator.mimecar.pot --qt --c++ --from-code=UTF-8 --add-comments=TRANSLATORS --keyword=tr --keyword=tr:1,2 --keyword=N_ /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/Calculator/Main.qml /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/Calculator/tests/unit/tst_main.qml /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/x86_64-linux-gnu/app/install/Calculator/Main.qml /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/x86_64-linux-gnu/app/install/Calculator/tst_main.qml /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/Calculator/Calculator.desktop.h /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/build/x86_64-linux-gnu/app/Calculator/Calculator.desktop.h /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/build/x86_64-linux-gnu/app/install/Calculator/Calculator.desktop.h
                    cd Calculator/ && ( test -e Makefile || /usr/bin/qt5-qmake-arm-linux-gnueabihf -o Makefile /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/Calculator/Calculator.pro ) && make -f Makefile install
                    make[1]: Entering directory '/home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/Calculator'
                    /usr/bin/qt5-qmake-arm-linux-gnueabihf -install qinstall /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/Calculator/Calculator.apparmor /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/install/Calculator/Calculator.apparmor
                    /usr/bin/qt5-qmake-arm-linux-gnueabihf -install qinstall /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/Calculator/Calculator.png /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/install/Calculator/Calculator.png
                    /usr/bin/qt5-qmake-arm-linux-gnueabihf -install qinstall /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/Calculator/Main.qml /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/install/Calculator/Main.qml
                    /usr/bin/qt5-qmake-arm-linux-gnueabihf -install qinstall /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/Calculator/tests/unit/tst_main.qml /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/install/Calculator/tst_main.qml
                    /usr/bin/qt5-qmake-arm-linux-gnueabihf -install qinstall /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/Calculator/Calculator.desktop /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/install/Calculator/Calculator.desktop
                    make[1]: Leaving directory '/home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/Calculator'
                    /usr/bin/qt5-qmake-arm-linux-gnueabihf -install qinstall /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/manifest.json /home/mark/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator/build/arm-linux-gnueabihf/app/install/manifest.json
                    Successfully built package in './calculator.mimecar_0.1_armhf.click'.
                    /home/mark/Templates/clickable/ubuntu-...shed. 2.6 MB/s (41898 bytes in 0.016s)
                    Installing files              [=========================]         
                    Finished                      [=========================]         
                    Installing files              [=========================]         
                    Starting                      [=========================]         
                    Finished                      [=========================]         
                    Installed   	calculator.mimecar-0.1.armhf (installed:click,removable=1,app_name=Calculator)	summary goes here
                    mark@debian:~/Templates/clickable/ubuntu-touch-programming-course-src-master/Calculator$ 
                    

                    And I end up with the relatively useless calculator-thingy on my phone. Or, if I run "clickable-desktop", I get it on my desktop.

                    I'm not sure what's up with Atom.

                    AppLeeA 1 Reply Last reply Reply Quote 0
                    • AppLeeA Offline
                      AppLee @MarkG_108
                      last edited by AppLee

                      @MarkG_108 Did you check the preferences and the code available for the plugin ?
                      And do you see the "Clickable" menu on the far right of the menu bar (should appears when a clickable project is open) ?

                      [Edit]
                      Also, do you have had to select a target ? If you type F7 it should ask to select a target.
                      If you don't have a working target, you may want to consider checking the code of the plugin to define one that suits you

                      M 1 Reply Last reply Reply Quote 0
                      • M Offline
                        MarkG_108 @AppLee
                        last edited by

                        @AppLee There's no clickable menu that shows up, and F7 simply says, "No targets found." I glanced at the preferences, which led to the code available for the plugin, but I wasn't sure what to do.

                        AppLeeA 1 Reply Last reply Reply Quote 0
                        • AppLeeA Offline
                          AppLee @MarkG_108
                          last edited by

                          @MarkG_108

                          Here is my settings function:

                             settings() {
                                const errorHelper = require('./check_errors');
                          
                                return [{
                                  name: 'Clickable: Build and run [Home]',
                                  exec: 'clickable',
                                  args: [ '--ssh', '192.168.YY.YY'],
                                  sh: false,
                                  functionMatch: function (terminal_output) {
                                    return errorHelper.checkBuildError(terminal_output)
                                  }
                                },
                                {
                                  name: 'Clickable: Build and run [Solenne]',
                                  exec: 'clickable',
                                  args: [ '--ssh', '192.168.XX.XX'],
                                  sh: false,
                                  functionMatch: function (terminal_output) {
                                    return errorHelper.checkBuildError(terminal_output)
                                  }
                                },
                                {
                                  name: 'Clickable: Build and run [desktop]',
                                  exec: 'clickable',
                                  args: [ 'desktop' ],
                                  sh: false,
                                  functionMatch: function (terminal_output) {
                                    return errorHelper.checkBuildError(terminal_output)
                                  }
                                },
                                {
                                  name: 'Clickable: Build and run [phone (vivid 15.04)]',
                                  exec: 'clickable',
                                  args: [ '--vivid' ],
                                  sh: false,
                                  functionMatch: function (terminal_output) {
                                    return errorHelper.checkBuildError(terminal_output)
                                  }
                                }];
                              }
                          

                          What do you have in yours ?
                          The minimum should be something like that:

                             settings() {
                                const errorHelper = require('./check_errors');
                          
                                return [{
                                  name: 'Clickable: Simple build and run',
                                  exec: 'clickable',
                                  args: [],
                                  sh: false,
                                  functionMatch: function (terminal_output) {
                                    return errorHelper.checkBuildError(terminal_output)
                                  }
                                }];
                             }
                          

                          Let me know if that helps

                          M 1 Reply Last reply Reply Quote 0
                          • M Offline
                            MarkG_108 @AppLee
                            last edited by

                            @AppLee What file is this from?

                            AppLeeA 1 Reply Last reply Reply Quote 0
                            • AppLeeA Offline
                              AppLee @MarkG_108
                              last edited by

                              @MarkG_108 clickable.js when you view the code from the plugin

                              M 1 Reply Last reply Reply Quote 0
                              • M Offline
                                MarkG_108 @AppLee
                                last edited by

                                @AppLee
                                Okay, here is what I found.

                                settings() {
                                      const errorHelper = require('./check_errors');
                                
                                      return [{
                                        name: 'Clickable: Build and run [phone]',
                                        exec: 'clickable',
                                        args: [ ],
                                        sh: false,
                                        functionMatch: function (terminal_output) {
                                          return errorHelper.checkBuildError(terminal_output)
                                        }
                                      },
                                      {
                                        name: 'Clickable: Build and run [desktop]',
                                        exec: 'clickable',
                                        args: [ 'desktop' ],
                                        sh: false,
                                        functionMatch: function (terminal_output) {
                                          return errorHelper.checkBuildError(terminal_output)
                                        }
                                      },
                                      {
                                        name: 'Clickable: Build and run [phone (vivid 15.04)]',
                                        exec: 'clickable',
                                        args: [ '--vivid' ],
                                        sh: false,
                                        functionMatch: function (terminal_output) {
                                          return errorHelper.checkBuildError(terminal_output)
                                        }
                                      }];
                                    }
                                  }
                                }
                                
                                
                                AppLeeA 1 Reply Last reply Reply Quote 0
                                • AppLeeA Offline
                                  AppLee @MarkG_108
                                  last edited by

                                  @MarkG_108 Humm that should work.

                                  What's bothering me is that you don't have the Clickable menu.
                                  Do you see the "Project" window on the left ?
                                  Do you have your project inside ?

                                  In order to have this you should:

                                  • File > Add Project Folder ...
                                  • Browse to the main folder of your app

                                  On the left border, in the middle of the view, you may find an arrow hidden there if the "Project" view is hidden...
                                  Now it becomes hard for me to help without being on your computer... ☹ 🤔 😕

                                  1 Reply Last reply Reply Quote 0
                                  • M Offline
                                    MarkG_108
                                    last edited by

                                    Hmm. I tried on a newer created clickable program, that I made from a tutorial online. This actually showed the "Clickable" menu item. This item gave me the option "Open shell [phone]". So, I tried this, but a window opened up, saying, failed to execute child process "clickable" (no such file or directory).

                                    On my computer clickable is a local install, at /home/mark/.local/bin/clickable, rather than a system wide install at /usr/bin. /home/mark/.local/bin is in my path, but seems it's not found. I'll try creating a link. [..] Well, it's complained of too many symbolic links. Anyway, seems something is wrong with the clickable install on my system.

                                    1 Reply Last reply Reply Quote 0
                                    • M Offline
                                      MarkG_108
                                      last edited by MarkG_108

                                      Okay. I eliminated a few $PATHS on my computer (from the .profile and/or .bashrc files) and rebooted. It seems to have helped, since I have had luck getting some of the newer clickable programs going in Atom (those being ones I got from @CiberSheep's tutorials) but the older ones from the Ubuntu Touch clickable tutorials (like the calculator.mimecar) are not recognized as clickable programs in Atom (though via the commandline, as I've written previously, they will compile). The version of clickable that I have is 6.4.0.

                                      Anyway, I have gotten it working, which is good. But, even though it runs on these newer programs, it never successfully compiles them, whereas using the commandline in a terminal (rather than in Atom) will successfully compile them.

                                      An error I get on Atom is this: "the input device is not a TTY".

                                      [edit]
                                      To add, I did finally successfully compile, using Atom, a clickable program on the phone. The option to either compile on the desktop or the phone was given in the Atom program (lower left corner). However, on the desktop, it states "the input device is not a TTY", when it fails.

                                      AppLeeA 1 Reply Last reply Reply Quote 1
                                      • AppLeeA Offline
                                        AppLee @MarkG_108
                                        last edited by

                                        @MarkG_108
                                        Hi, I'm glad you found how to build your apps.
                                        The difference between "old" and "new" projects lies probably in clickable configuration.
                                        For this I am a mere user.

                                        And regarding the "desktop" mode, I never used it.

                                        Congratulation with setting up atom with clickable. Good luck now learning about clickable.

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