Skip to content

Intuitive and consistent soar CLI #42

@misog

Description

@misog

Hi, you are doing very good job :)

I was playing with soar and found some issues in CLI format. Here is my experience.

When I run soar i krita then this is displayed:

Multiple packages found for krita
[1] krita#gitlab.com.krita.krita.next-2025-03-22:pkgcache
[2] krita#gitlab.com.krita.krita.stable-5.2.9:pkgcache
[3] krita#runimage.alpine.krita-5.2.9:pkgcache

Okay... I installed the 1. by typing "1" and ENTER. It was installed successfully.

Then I wanted to install another (stable) version.

I tried soar i krita again...

But I could not install it:

[WARN] krita is already installed - skipping
No packages to install

Okay, but this message does not answer to me:
a) Which one exactly is installed?
b) How to specify the exact version for the installation process?
c) Why there is not interactive picker anymore to install another one if there was previously?

Then I tried to specify full name which was presented by soar i krita before:

soar i krita#gitlab.com.krita.krita.stable-5.2.9:pkgcache
[ERROR] Package krita#gitlab.com.krita.krita.stable-5.2.9:pkgcache not found
No packages to install

I entered the exact full name which I choosed before and it does not work now?

Okay, maybe I need to omit the pkgcache part:

soar i krita#gitlab.com.krita.krita.stable-5.2.9
[ERROR] Package krita#gitlab.com.krita.krita.stable-5.2.9 not found
No packages to install

Nothing...

Maybe omit the version?

soar i krita#gitlab.com.krita.krita.stable

Now it worked.

a) Why it does not work with full name if that is what soar i krita gave in the first install?
b) Why it does not work with version in the name?

Then I learned I can specify soar i krita#all and soar i #something

a) But why to use some magic all string in the location of package ID to get package options?
b) And why soar i #something installs ALL (typically huge amount of packages) and not display options?

I found it little bit not intuitive and it could be polished to be intuitive and consistent :)

Expected behavior

Be more intuitive and consistent. Instead of wild syntax use well defined syntax and flags.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requestp3Low Priority (Maybe a while before it gets done/fixed)

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions