IMAGE_INSTALL vs PACKAGE_FEATURES - what's the difference? - embedded-linux

I am trying to create my own customized linux image and I am trying to figure out how to install packages I need and found that there were multiple ways of installing packages.
I read through the yoctoproject manual and read through definitions of 'IMAGE_INSTALL' and 'FEATURE_PACKAGES' in which IMAGE_INSTALL 'specifies the packages to install into an image through image.bbclass' and FEATURE_PACKAGES 'Defines one or more packages to include in an image'. I have seen both used in the core-image.bbclass file and both use packagegroup-* so it's still unclear which is appropriate to use for what kinds of package installs.
Any human explanation of the difference between the two and what each is intended to be used for?

Answer from #Nayfe :
IMAGE_INSTALL is used if you want to install any and all packages.
FEATURE_PACKAGES is only used if you want to install packages if a FEATURE is enabled through the use of IMAGE_FEATURES.
Original Comment:
FEATURE_PACKAGES is intended to use in conjunction with IMAGE_FEATURES, as when an image feature xxx is enabled, corresponding packages defined in FEATURE_PACKAGES_xxx are added to image.

Related

What is user interface for JuliaHub/CUDD_jll

Julia has a package for binary decision diagrams called CUDD_jll available from JuliaHub. The package is able to install and compile on the Apple M1 architecture. It does appear to install and compile on macOS v13 running Julia v1.82. But the user interface from an older package CUDD does not appear to be compatible with CUDD_jll.
What is needed is a test or examples revealing user commands for initializing cudd, defining logical variables, and the basic operations of AND, OR, NOT.
Does anyone have such information they will share?
_jll packages are generally not meant to be used directly, they're backend dependencies that will be automatically installed when you add a package that uses them.
In this case, CUDD.jl is the package you want to install and work with. That will automatically install CUDD_jll as a dependency and use it. Actually, the current CUDD.jl doesn't yet use CUDD_jll as a backend. It instead does its own download of the CUDD library, from a source that doesn't provide M1-compatible binaries. CUDD_jll is a recent effort to change that. It does provide binaries for the M1 architecture, but is yet to be merged in as a backend.
In the meantime, you can try ] add CUDD#update-to-yggdrasil to directly add the branch that uses CUDA_jll as the backend, and see if that works for you. (Once the PR gets merged, you can remove this branch-specific dependency and ] add CUDD like before.)
The Apple M1 system is not compatible with CUDD. My mistake, sorry.

Gauss 21 Software: how do I install the following packages?

I tried running the code:
library optmum, pgraph; optset; graphset;
and obviously it says I need to install the packages and all but I am not sure where exactly I am supposed to go to find these. I went to the Install application and package manager but neither seems to have the packages I am looking for. Ideally, I would like to have these packages in my library and run the command above. How do i proceed with this Gauss software?
pgraph comes standard with GAUSS, so you only need the optmum library. It is listed with the name of "op" and description of "Optmization 3.1".
If you don't own it, it will show up with a light red background to indicate that you don't own the package.

How do I install a GIMP plugin using 'make install'?

I am trying to install 'David's Batch Processor' in order to batch convert multiple very large folders of RAW images to jpeg. I have tried using this guide to install the plugin, but it is very unclear what files I should move and where, since none of the files provided on the DBP website are saved as .py or SCM. The DBP website says I need "g++ and the gimp development packages for the appropriate Gimp version ". I have never used g++ or used any gimp development packages before. I feel like I'm way over my head but would like to learn how to do this!
g++ is a C++ compiler (actually a thin front-end over gcc).
Normally you would just do make; make install but this requires some other tools such as make that are part of the build-essentials package on Linux.
DBP has a competitor (or successor, since DBP updates seem to have stopped in 2013) called BIMP, and its GitHub page has instructions to build it on macOS. And even if you prefer DBP these instructions may apply in good part to DBP.

List all aws-lambda pre-built libraries & modules for nodejs

aws documentation indicate that aws-sdk comes by default on all lambda runtimes (obviously) ... also, many post indicates that ImageMagick is also pre-built and ready to use, but this do not appears on the official documentation (or I didn't found it)
I was searching a lot but didn't found a list off all libraries /modules or extra functionalities included by dafault on Lambda so I do not need to build it by myself. do you know where i can find it?
Updated Answer:
ImageMagick (the static binaries) indeed seems to be available on Lambda. I guess image resizing is a very common use case such that they decided to include it on Lambda. They should update that doc page to make it official.
You still have to include the node.js package for interfacing with ImageMagick in your package.json though.
Original Answer:
When in doubt, always use Amazon's official documentation.
Lambda Execution Environment and Available Libraries
I don't think ImageMagick is included by default.

RPM+Yum: install two packages with the same name and different versions simultaneously

For moderators: this question is about development of RPM based installer.
I'm developing packaging system for our software. We've designed our update management so that when we want to move to the new major version, we change RPM package to install all files into another directory (with another suffix) and change the package version. We keep the same name for the package (like: a-package-1.0.0 --> a-package-2.0.0). We want to install the new package keeping the old one to make user able to continue work with the old version while he moving to the new one.
So there is no file conflicts between our packages and RPM utility install them simultaneously without any issues (rpm -ivh ...). But Yum thinks that the new version is an update for the old one.
Is there a way to produce such RPM packages to make 'yum install a-package-1.0.0 a-package-2.0.0' installing them both? Maybe some flag in the package have to be set? I've found nothing.
Seems there is no way to install two RPM packages with the same name and without file conflicts usnig Yum.
So in my case I need to use some version suffix included into the package name.
I called RH and their preliminary answer is that there is no way to do this in YUM/RPM as this might cause confusion. After some discussion among their engineers, there does appear to be a way to do this, but they said it is cumbersome. I've asked them to send me their documentation (if any). I'm afraid you will need to call their customer service line and make the same request.
Here is the response from RH.
Thank you so much for your time on the phone today. You called asking if there was a way of installing different versions of tools like maven or java using yum to install them. After the engineers discussed it they have provided a document that shows you how to do this. I must say, if you do not have a log in to the customer portal, you will not be able to view the whole document.
How to switch Java Environment in Red Hat Enterprise Linux 5 and 6?
- https://access.redhat.com/solutions/21059
The engineers have also provided additional documents just for general use with Developer Toolset and Software Collections:
How to use Red Hat Software Collections (RHSCL) or Red Hat Developer Toolset (DTS)?
- https://access.redhat.com/solutions/472793
Developer Toolset and Red Hat Software Collections use in Red Hat Enterprise Linux 7
- https://access.redhat.com/solutions/915023
What's the difference between /etc/alternatives and the dynamic software collections framework?
- https://access.redhat.com/solutions/528643
If you do require further assistance, please provide me with a valid account number, login, or contract number, and I can get a case started and you will be able to be in direct contact with one of our Red Hat engineers.

Resources