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.

AM625: Yocto: GPLv3 conform

Expert 2730 points
Part Number: AM625

Tool/software:

How on earth can I remove all GPLv3 software from tisdk-base-image (or any other image TI is providing)? Bash is a dependency for multiple packages and at the moment I'm stuck on update-alternatives-opkg, which is a requirement from packagegroup-core-boot. update-alternatives-opkg will use opkg-utils which requires bash. What other alternatives there are for PREFERRED_PROVIDER_virtual/update-alternatives to get rid of opkg-utils? Or how have the others solved the GPLv3 problem?

With buildroot there wouldn't be a such problem (I'm still waiting for the buildroot release!).

JHi

  • Hi JHi,

    when you boot the TI SDK images you get a banner like this...

    ***************************************************************
    NOTICE: This file system contains the following GPL-3.0 packages:
            adwaita-icon-theme-symbolic
            autoconf
            bash-dev
            bash
            bc
            binutils
            cifs-utils
            coreutils-stdbuf
            coreutils
    ...
    ...
    ...
            tar
            which
    
    If you do not wish to distribute GPL-3.0 components please remove
    the above packages prior to distribution.  This can be done using
    the opkg remove command.  i.e.:
        opkg remove <package>
    Where <package> is the name printed in the list above
    
    NOTE: If the package is a dependency of another package you
          will be notified of the dependent packages.  You should
          use the --force-removal-of-dependent-packages option to
          also remove the dependent packages as well
    ***************************************************************

    Does this not work? If so, we need to update/fix the steps (honestly I've never tried removing a package that way, let alone all of them).

    But I guess your request is to remove all those during build time?

    Regards, Andreas

  • Hi Andreas,

    yes I want to remove them already during build time. And no, you can't remove bash so easily because it is really a dependency for so many packages.

    I found a way to do it. There was a discussion how to only remove GPLv3 from the end image here. Bash is only required while creating an image, so I used INCOMPATIBLE_LICENSE:pn-tisdk-base-image and I got an image without GPLv3 software. Maybe you could add this information somewhere, because it is also missing from yocto documents? 

    opkg remove bash
     * Solver encountered 2 problem(s):
     * Problem 1/2:
     *   - package resize-rootfs-0.1-r0.0.aarch64 requires bash, but none of the providers can be installed
     *   - conflicting requests
     *   - problem with installed package resize-rootfs-0.1-r0.0.aarch64
     *
     * Solution 1:
     *   - allow deinstallation of resize-rootfs-0.1-r0.0.aarch64
    
    
     * Solution 2:
     *   - do not ask to deinstall bash
    
     *   - do not ask to deinstall bash
    
     *   - do not ask to deinstall bash
    
    
     * Problem 2/2:
     *   - package packagegroup-arago-base-1.0-r10_tisdk_0.2.myc_ym6252 requires bash, but none of the providers can be installed
     *   - conflicting requests
     *   - problem with installed package packagegroup-arago-base-1.0-r10_tisdk_0.2.myc_ym6252
     *
     * Solution 1:
     *   - allow deinstallation of packagegroup-arago-base-1.0-r10_tisdk_0.2.myc_ym6252
    
    
     * Solution 2:
     *   - do not ask to deinstall bash
    
     *   - do not ask to deinstall bash
    
     *   - do not ask to deinstall bash

    JHi