12

I use Fedora and I'd like to have all the package names in a list, but only the ones I installed myself, not the default ones.

  • Try looking at the yum.log file, it should have a history of installed packages. However, I believe that includes all the dependencies as well. I believe it's located at /var/log/yum.log. – Mr. Shickadance Jul 12 '11 at 15:19
  • Just FYI, I've added a feature request for DNF to cover this use case. DNF actually tracks this information, but to my knowledge does not have a UI for displaying it. https://bugzilla.redhat.com/show_bug.cgi?id=1278124 – mattdm Nov 04 '15 at 17:26
  • cf. http://unix.stackexchange.com/questions/82880/how-to-replicate-installed-package-selection-from-one-fedora-instance-to-another – maxschlepzig Nov 21 '15 at 19:12

3 Answers3

6

That's hard, because as far as RPM is concerned there isn't much difference between packages which anaconda installed as part of the install and those you have installed since. Indeed if you customised the package selection during the install then just knowing what was installed afterwards doesn't help you know what customisations to apply.

You could use yum history to access the history and see when packages were installed, but that would include any updates to packages installed at install time.

Another technique would be to generate a list as soon as you install, like this:

rpm --queryformat="%{NAME}.%{ARCH}\n" -qa | sort > base.list

then later you can generate a new list:

rpm --queryformat="%{NAME}.%{ARCH}\n" -qa | sort > new.list

then use comm to find the differences:

comm -13 base.list new.list

but it's an awful lot of hassle and I'm not sure there is any great point if all you want to do is record what is installed for backup purposes.

If that's what you want then just generate a list using the above command and then you can later try and install those packages on a newly installed machine with:

yum install `cat package.list`

and it will just ignore anything that is already installed.

TomH
  • 3,002
1

I know it's an old question, but I would like to answer as this thread is not closed.

You can use:

dnf history userinstalled

The output will be a plain list of all user installed applications.

Source: https://linoxide.com/linux-how-to/list-installed-packages-fedora/

Gabboz
  • 159
0

The yumdb command has a search function, where you can filter by reason the package was installed.

yumdb search reason user

https://blog.christophersmart.com/2013/06/12/how-to-list-packages-you-have-explicitly-installed-using-yum/

Christian Long
  • 153
  • 1
  • 7