This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Linux target file system lacks apt-get and sudo

Hello.

Booted a custom card with modified u-boot and kernel from ti-sdk-am335x-evm-06.00.00.00. Used the supplied target file system. Now, logged in to the target I thought of using apt-get to install some additional packets. Then I can't find either apt-get, or sudo for that part (logged in as root but anyway).

Why is it that I can not find apt-get or sudo?

Tnx

  • Hi Peter,

    You don't need sudo since you are logged in as root.

    The Arago file system included in the TI SDK uses "opkg" instead of APT. Opkg is a lightweight package management system and it is intended for use on embedded Linux devices.

    Here is the project's home page: http://code.google.com/p/opkg/

    Here is the opkg man page: http://botbrew.com/man-opkg.htm

    Best regards,
    Miroslav

  • Hi Miroslav.

    Thanks for answer. Yes I did actually discover the opkg command after a while. And then I learned more about busybox as well. The embedded linux world is a bit special.

    Perhaps You can help me with some other hints.

    "opkg list" gives me all the available packages. Which repository do they come from, and are they specific to TI's linux dtistribution? I used (after board modifications) the linux kernel from the TI SDK 6.0.

    Is it possible to point to another repository and get other packages?

    In the TI SDK 6.0 filesystem folder one can find the minimalistic file system arago-base-tisdk-image-am335x-evm.tar.gz and the more full blown tisdk-rootfs-image-am335x-evm.tar.gz. Could You please point me to a guide on best practice to build(/configure) such a file system for delivery with the pcb? (If such a guide exists...) Could one way be to start with the minimalistic file system on target, then add desired packages, and when everything works as expected, pack the file system from the target?

    Tnx!

  • Hi Peter,

    Please do a:

    cat /etc/opkg/opkg.conf

    There should be this line:

    lists_dir ext /var/lib/opkg

    It points to the folder which contains information about available and installed packages. I believe if you do a:

    cat /var/lib/opkg/status

    you will understand better.

    Regarding the package repositories (called feeds), you can check this forum topic: http://e2e.ti.com/support/arm/sitara_arm/f/791/p/266848/934991.aspx#934991 where I have pointed out how to add a package feed source to your opkg configuration. Unfortunately I later found out this:

    Judging by this post by Chase Maupin, the feeds were removed some SDK releases ago.

    This means that currently there isn't a dedicated package feed for the AM335x Arago file system. You can, of course, use another package feed but make sure it is reliable and up-to-date.

    Finally, for the file system configuration/building please read this wiki page: http://arago-project.org/wiki/index.php/Building_with_Arago

    Please also note that the TI Sitara SDK is part of the Yocto Project since a few releases ago, but I'm not really familiar with it, so I'm not able to help you with it.

    Best regards,
    Miroslav

  • Hi Miroslav.

    Thanks for taking time trying to help me out.

    I am still sort of confused about all this.

    I don't understand what it means that "currently there isn't a dedicated package feed for the AM335x Arago file system". Does this mean that there is no updates for this distribution any more? It is part of the Yocto project, which seems quite ambitious, there must have been some focus on security updates? Do TI ship something that is not part of the main security update feed (if so, it should be more exposed to security threats)? Which distribution should one use on a TI EVM/SK-like device (AM335x) in order to get a basic linux distro, which is connected to some "feed" with good security updates and possibility to download the more common packages?

    If I would like to try to build the file system (in order to be able to choose which packages etc. I would like to incorporate?), perhaps a stupid question, but what is the differences between the link You provided above; http://arago-project.org/wiki/index.php/Building_with_Arago, and this link; http://arago-project.org/wiki/index.php/Setting_Up_Build_Environment ? Both seem to do the building at the end. (?)

    Tnx

  • Hi,

    What I wanted to say was that there is no official package feed provided by TI that you can use for "opkg update" and "opkg upgrade". An update is available only when a new SDK is released. This update should contain the latest stable versions of the packages and should be secure, but as I said, if you find a package feed that suits your needs, you can add it to the opkg configuration and use it to update your distribution.

    The Arago distribution, provided with the SDK is supported by TI for all of the AM335x evaluation devices. You can search the internet for other, more end-user friendly, distributions for our devices, that also provide continuous updates.

    Regarding the two links you have pasted, I'd suggest you use the second one, since the link I previously posted was last updated two years ago (check the wiki page history: here and here).

    Best regards,
    Miroslav

  •  Hi Miroslav,

    so, if I correctly understand your answer, the practical current option is to build from source any new package I need, if not already in the big filesystem.

     I see that the Arago Wiki reports it as compatible with Yocto 1.3 and 1.4. Does it mean that if I can get a feed from Yocto 1.4, I have binary/dependency compatibility with my current Arago 2013.05 filesystem?

     All things I have read leave me a bit confused, sorry.

     Thank you in advance,

    Antonio Tringali

  • Hello Antonio,

    When I need to add something new to the filesystem supplied with SDK 6.00, I sometimes cross compile what I need using the toolchain supplied in the SDK, and sometimes I've had the packages made with OpenEmbedded.  Here is a training that describes how to use OpenEmbedded for AM335x.

    Regards,

    Josh