How do I find out what packages have been installed since the OS was installed? I do not want to know all packages installed, only those that were not part of the initial OS install, and have been explicitly installed afterwards.
For the sake of this question, lets assume a fresh install, as I imagine distro upgrades would complicate matters. I would prefer to use command line, but a GUI solution would be OK if a command or script is not available.
I've had a quick look at the man pages of dpkg
and aptitude
, but didn't see anything obvious. Also, the output of apt-cache show package-name
or dpkg -s pkg-name
doesn't seem to give any dates that can be compared against the date of OS installation (which I would have to work out how to get too).
I have logwatch
on a server that sends daily notifications of what has been installed. My guess is that it parses dpkg.log. I'm not sure this method would be a solution, as many of the install entries may have been logrotated out, especially on older systems. And ideally this should work for any system, desktop or server.
It would also be great if the output could include the version of the package currently installed, but that may be asking too much, and I can always script it later once I have the package names.