1 2 3 Previous Next 284 Replies Latest reply on Nov 13, 2016 3:59 AM by AlexT_Intel

    Edison opkg package repo created

    AlexT_Intel

      Hello everyone,

       

      As much as I like the idea of enabling Debian on Edison - and that's something I'm going to participate in to make it even easier to use in addition to all that great work done in the Debian thread - I think Yocto is here to stay, so the matter of adding functionality and utilities to the default image is going to be actual for a while. I personally also see a point in having Yocto as an option, as it allows you to create a very focused and trimmed down image for your specific project (after you're done with experimenting and developing, where flexibility in juggling the libs and packages is a key), avoiding the bloat coming with the "general-purpose" distribution.

       

      So in the manner similar to Galileo I've created a package repo for Edison. All the configuration information is on this page and it's as simple as editing one file on the board. The repo hosted on the same site as the Galileo's and big thanks goes again to Daveman for providing that

       

      The repo is based on my own build of the OS image out of the currently released BSP, which adds several items like uvcvideo, gspca_pac207 and ftdi_sio modules as well as the latest Node.js, Motion and some other utilities on top of that. It's the one I used in my demo project. I'm going to publish the image as well a bit later, but with the repo you pretty much should be able to add the necessary stuff to the official image (I haven't tested that, but should be possible). Uvcvideo would require kernel reinstall as it's a bit more than just a module in this case, but still looks possible theoretically.

       

      Feel free to check it out and post your feedback as well as wishlists in this thread, I'll try to add the packages as the time and resources permit. Just to make it clear - while I do work for Intel as my forum name implies, I'm not in the Galileo or Edison development or support teams and this repo and other work I do for Galileo and Edison is my hobby (though developing over time into something more serious ) and I'm running this in my free time.

        • 1. Re: Edison opkg package repo created
          rui.araujo

          Git and nano would be my first two requests.

           

          Thanks for the repo. It is really useful.

          • 2. Re: Edison opkg package repo created
            Banq

            Can nano be installed on Edison

             

            The instructions for Nano are mentioned there.

             

            My request would be for pygame.

            • 3. Re: Edison opkg package repo created
              AlexT_Intel

              rui.araujo, Nano is indeed already there, git was just added

               

              Banq, I'll see what I can do with pygame, in the meanwhile I encourage you to give it a try using the standard Python install method, it may work as-is.

              • 4. Re: Edison opkg package repo created
                Banq

                Thanks for the help AlexT_Intel

                 

                My first attempt was with opkg but I don't think that it was included in the standard repo.

                 

                My next attempt was to install using PIP but that also runs into errors.

                 

                I actually just got it working with debian via chroot, but this isn't really ideal.

                • 5. Re: Edison opkg package repo created
                  AlexT_Intel

                  I see. You can install pip using standard get-pip.py after installing the below Python packages (all are in the package repo):

                  python-pkgutil_2.7.3-r0.3_core2-32.ipk

                  python-audio_2.7.3-r0.3_core2-32.ipk

                  python-image_2.7.3-r0.3_core2-32.ipk

                  python-email_2.7.3-r0.3_core2-32.ipk

                  python-netserver_2.7.3-r0.3_core2-32.ipk

                  python-xmlrpc_2.7.3-r0.3_core2-32.ipk

                  python-distutils_2.7.3-r0.3_core2-32.ipk

                  python-ctypes_2.7.3-r0.3_core2-32.ipk

                  python-html_2.7.3-r0.3_core2-32.ipk

                  python-json_2.7.3-r0.3_core2-32.ipk

                  python-compile_2.7.3-r0.3_core2-32.ipk

                  python-misc_2.7.3-r0.3_core2-32.ipk

                  python-numbers_2.7.3-r0.3_core2-32.ipk

                  + many modules require these to install:

                  python-unittest_2.7.3-r0.3_core2-32.ipk

                  and its dependency

                  python-difflib_2.7.3-r0.3_core2-32.ipk

                   

                  EDIT: Okay, I've found your post in the thread with the above information (https://communities.intel.com/message/246077#246077), have you tried running it with the "--allow-external" switch as the error message suggested?

                  • 6. Re: Edison opkg package repo created
                    Banq

                    I did and got a different error which prompts me to include --allow-unverified which leads to the error bellow.

                     

                     

                     

                    root@VaneScope2:~# pip install Pygame --allow-unverified Pygame
                    Downloading/unpacking Pygame
                      Pygame is potentially insecure and unverifiable.
                      HTTP error 400 while getting http://www.pygame.org/../../ftp/pygame-1.6.2.tar.bz2 (from http://www.pygame.org/download.shtml)
                    Cleaning up...
                    Exception:
                    Traceback (most recent call last):
                      File "/usr/lib/python2.7/site-packages/pip/basecommand.py", line 122, in main
                        status = self.run(options, args)
                      File "/usr/lib/python2.7/site-packages/pip/commands/install.py", line 278, in run
                        requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
                      File "/usr/lib/python2.7/site-packages/pip/req.py", line 1197, in prepare_files
                        do_download,
                      File "/usr/lib/python2.7/site-packages/pip/req.py", line 1375, in unpack_url
                        self.session,
                      File "/usr/lib/python2.7/site-packages/pip/download.py", line 547, in unpack_http_url
                        resp.raise_for_status()
                      File "/usr/lib/python2.7/site-packages/pip/_vendor/requests/models.py", line 795, in raise_for_status
                        raise HTTPError(http_error_msg, response=self)
                    HTTPError: 400 Client Error: Bad Request
                    
                    
                    Storing debug lofor failure in /home/root/.pip/pip.log
                    
                    
                    • 7. Re: Edison opkg package repo created
                      AlexT_Intel

                      Ah, okay, looks like pip is just plain broken for PyGame: pygame / pygame / issues / #59 - pygame has no pypi page and can't be installed by pip on linux — Bitbucket

                      So probably the way they advertise on the install page is the one to try.

                       

                      And BTW looks like we're offtopic here already Let's use this thread for just the package repo and feel free to start another one on PyGame install if the recommended way doesn't work - that would be more helpful for future readers. I'll also post there as soon as I have a chance to take a look at it.

                      • 8. Re: Edison opkg package repo created
                        rui.araujo

                        I only checked for git and while writing I remembered nano.

                         

                        How about PHP? I was thinking of running phoronix benchmark tool and I haven't yet looked for a PHP recipe but I am guessing there must be one.

                        While you're at it, you can go crazy and get Apache.

                         

                        I can bribe you with beer if you're based in Munich.

                        • 9. Re: Edison opkg package repo created
                          AlexT_Intel

                           

                          I wanted to build PHP, but looks like they're having problems right now with museum.php.com, which is where the Yocto 1.6 PHP version (5.4.14 or 5.5.2 for mod_php) is stored.

                          And to be able to build a newer one, I'd need to dig into the recipes as it's unlikely it "just works" if I use new version. Maybe on the weekend

                          • 10. Re: Edison opkg package repo created
                            deelowe

                            Hello,

                             

                            I followed instructions here: Edison Package Repo Configuration Instructions and ran into an issue running opkg update, opkg upgrade. The issue I had was with the kernel image. opkg pulled down "kernel-image-3.10.17-poky-edison+_3.10.17+git0+6ad20f049a_c03195ed6e-r0_edison.ipk" and then proceeded to update things. It then bombed trying to create a symlink in /boot. Since /boot is configured as a vfat fs by default, symlinks aren't supported. Manually renaming the file (forgoing the whole symlink deal) seemed to resolve the issue. Also, given that vmlinuz isn't deleted in this process, the upgrade causes opkg to run out of space and the update fails at this point.

                             

                            The work around is pretty easy, but I just wanted to let everyone else know in case it catches someone else off guard. It would probably be good to update the control file in the package so this isn't an issue or change the package in such a way so that opkg doesn't think it's a drop-in replacement for the stock kernel.

                             

                            Thanks for the repo btw. Very useful!

                            • 11. Re: Edison opkg package repo created
                              rubidium

                              First off, I think what AlexT is doing is great! But, being used to apt-get on Debian systems, I have a question on Apache2/PHP

                               

                              To set this up, I normally do a "apt-get install apache2 php5 libapache2-mod-php5".  I'm trying to correlate that with what's available in the new repo. Any help?

                              Jim

                              • 12. Re: Edison opkg package repo created
                                AlexT_Intel

                                Hmm, that's interesting, I'll check this, the kernel version shouldn't be different from the one installed by default. Generally, you don't do "opkg upgrade" after "opkg update" with this repo (though I understand why you may want to do this), because there aren't any updated packages in the sense of "opkg upgrade".

                                 

                                Thanks for sharing your experience, that's useful. I mostly intend this repo (at least for now) to be a source of additional packages, not the one you'd update your whole OS from, so that's the use case it's not prepared for

                                • 13. Re: Edison opkg package repo created
                                  AlexT_Intel

                                  This one would be "opkg install apache2 modphp" with the only problem being that mod_php package is not there yet The default recipe in this Yocto version is pointing to museum.php.net and looks like they're having some problems with that website's hosting right now, so it doesn't build.

                                   

                                  But Apache itself is already there. The approach you could use for finding out the package name would be to go directly to the package repo listing at Index of /edison/repo/core2-32 and then just search for the common part of the name like "apache" or "php", which would point you to the specific package and its name respectively.

                                   

                                  I'm going to look into building a newer PHP version this weekend and will announce the package addition in the repo thread if I succeed.

                                  • 14. Re: Edison opkg package repo created
                                    AlexT_Intel

                                    I've uploaded the updated Apache package (2.4.10), mod_php (5.5.15) and MySQL (MariaDB actually, 5.5.39) to the repo.

                                     

                                    rubidium Installation command is exactly what I mentioned above, "opkg install apache2 modphp", it will pull the dependencies automatically.

                                    1 2 3 Previous Next