rpm-software-management / dnf5

Next-generation RPM package management system
Other
251 stars 86 forks source link

Implement group command #138

Open mcurlej opened 1 year ago

mcurlej commented 1 year ago

Command: group Aliases: grp Deprecated aliases: groups, grouplist, groupinstall, groupupdate, groupremove, grouperase, groupinfo

Groups are virtual collections of packages. DNF keeps track of groups that the user selected (“marked”) installed and can manipulate the comprising packages with simple commands.

Display overview of how many groups are installed and available. With a spec, limit the output to the matching groups. summary is the default groups subcommand.

Display package lists of a group. Shows which packages are installed or available from a repository when -v is used.

Mark the specified group installed and install packages it contains. Also include optional packages of the group if --with-optional is specified. All mandatory and Default packages will be installed whenever possible. Conditional packages are installed if they meet their requirement. If the group is already (partially) installed, the command installs the missing packages from the group. Depending on the value of obsoletes configuration option group installation takes obsoletes into account.

List all matching groups, either among installed or available groups. If nothing is specified, list all known groups. --installed and --available options narrow down the requested list. Records are ordered by the display_order tag defined in comps.xml file. Provides a list of all hidden groups by using option --hidden. Provides group IDs when the -v or --ids options are used.

Mark the group removed and remove those packages in the group from the system which do not belong to another installed group and were not installed explicitly by the user.

Upgrades the packages from the group and upgrades the group itself. The latter comprises of installing packages that were added to the group by the distribution and removing packages that got removed from the group as far as they were not installed explicitly by the user.

Groups can also be marked installed or removed without physically manipulating any packages:

Mark the specified group installed. No packages will be installed by this command, but the group is then considered installed.

Mark the specified group removed. No packages will be removed by this command.

glum23 commented 1 year ago

What is the exact plan with the deprecated aliases? E.g. 'dnf5 grouplist' works while 'dnf5 groupinstall ' does not work. It'd be nice when the availability of the aliases is consistent.

evan-goode commented 1 year ago

Moving this back to Todo since some items are still incomplete.

ilikelinux69 commented 2 months ago

I found an error that while try to use the dnf group install command , groups with capital first letters will not be included. While testing commands in the documentation I simply get the error: No match for argument: Multimedia

While reading how dnf5 group now works, makes sense for me, to exclude capital letters while package names not use them, right?

I'm trying to catch up such kind of errors, because Fedora 41 will release DNF5 by default, and we do have documentations where we use the group names with capital first letters (dnf4). I reported this issue also in discussion.fedoraproject.org if someone would like to participate on a that discussion:

https://discussion.fedoraproject.org/t/dnf5-is-not-ignoring-case-distinctions-while-working-with-groups/130530

jan-kolarik commented 2 months ago

I found an error that while try to use the dnf group install command , groups with capital first letters will not be included. While testing commands in the documentation I simply get the error: No match for argument: Multimedia

While reading how dnf5 group now works, makes sense for me, to exclude capital letters while package names not use them, right?

I'm trying to catch up such kind of errors, because Fedora 41 will release DNF5 by default, and we do have documentations where we use the group names with capital first letters (dnf4). I reported this issue also in discussion.fedoraproject.org if someone would like to participate on a that discussion:

https://discussion.fedoraproject.org/t/dnf5-is-not-ignoring-case-distinctions-while-working-with-groups/130530

I think the answer why it's like that is here: https://github.com/rpm-software-management/dnf5/issues/1666.

ilikelinux69 commented 2 months ago

I saw it now, an it makes sense that we should keep just using the ID for group installation. And also removing the aliases makes sense, to have one syntax for installation with dnf group. Thx for the answer/link.