10

I have tried searching for this but there seems to be no command that can output a list of packages (ideally in Ubuntu) that I have installed, not including any dependencies.

Stephen Kitt
  • 411,918
  • 54
  • 1,065
  • 1,164
warsong
  • 465
  • 1
  • 4
  • 15

2 Answers2

7
aptitude search '~i!~M!~E!~prequired!~pimportant'

will list all the packages which have been installed without being marked as automatically installed, excluding essential and required packages, which is pretty much what you're looking for. ~i lists packages which are installed, !~M filters packages which are marked as automatically installed, !~E filters essential packages, !~prequired and !~pimportant filter required and important packages. The latter three filters will catch quite a few packages installed by default.

On Ubuntu, you can add !~Rubuntu-desktop!~Rrecomends:ubuntu-desktop to filter out all the packages which ubuntu-desktop depends on or recommends, and which are installed by default:

aptitude search '~i!~M!~E!~prequired!~pimportant!~Rubuntu-desktop!~Rrecommends:ubuntu-desktop'
Stephen Kitt
  • 411,918
  • 54
  • 1,065
  • 1,164
6
comm -23 <(apt-mark showmanual | sort -u) \
         <(gzip -dc /var/log/installer/initial-status.gz |
           sed -n 's/^Package: //p' | sort -u)

This gets the correct list of user-installed packages, to a better approximation than the answer from @Stephen Kitt.

agc
  • 7,045
  • 3
  • 23
  • 53
warsong
  • 465
  • 1
  • 4
  • 15
  • FWIW: Not complaining at all, just leaving a comment FYI: Neither of the answers posted give the correct result on my Raspberry Pi (3B+, Raspbian stretch) – Seamus Apr 06 '19 at 16:28
  • It seems this answer is more Ubuntu-centric – warsong May 27 '21 at 13:02