What have I installed

swupd can list ALL of the installed bundles… but can I get a list of the bundles I’ve installed? I essentially want to clone my machine sans the user cruft.

Or asked a slightly different way… I need to experiment with a project that has to be compiled from the source and if there are 3rd party libs etc… I do not want to compromise my machine.

swupd bundle-list [--all]

Docs

man swupd
/bundle-list
sudo swupd --help

PUt them into a file:

sudo swupd bundle-list > my-bundles.txt

install from that file (after scp to new machine)

cat my-bundles.txt|xargs sudo swupd bundle-add

from the man page

bundle-list
          List all installed software bundles in the local system. Available bundles can be listed with the --all option.

To me; ALL means the bundles I installed and the bundles installed by default or as a dependency… I want to know which bundles I installed.

Knowing ALL the bundles is not a terrible thing, however, there is no contract that says the default set of bundles will be the same set in the next release.

swupd is pretty intuitive. If the bundle is is already installed it will let it be (with a minor warning that won’t require any interaction on your part), if there has been changes in your current release it will install the correct versions. These versions will not include any dependencies that have since been deprecated or otherwise removed.

If you want to check a bundle’s dependencies:

sudo swupd bundle-list --has-dep  [bundle]

and:

sudo swupd bundle-list --dep=[bundle]

I do not want to install bundles that are not longer in the default bundle install. That’s why I just want MY BUNDLES… sure I should keep a better list… but this is after the fact.

Oh I see. There is an open issue here swupd: list installed optional bundles / list packages in bundle (similar to 'dnf info') · Issue #1145 · clearlinux/swupd-client · GitHub

ah.

sudo swupd bundle-list --status | grep "explicitly installed"

source

3 Likes

AWESOME

sudo swupd bundle-list --status | grep "explicitly installed" \
    | cut -c2- | cut -d" " -f2 \
    | xargs -I{} -P1 echo sudo swupd bundle-add {}

copy the results and run it on the remote machine

2 Likes