3

Is there a command that can list all apps that aren't install via package managers or deb file? Packages installed using bins, shs, runs, tar.gzs, appimages etc.

Bash or python script would do.

answerSeeker
  • 901
  • 2
  • 10
  • 25
  • 1
    Of importance, the first line of this answer: https://askubuntu.com/a/43322/158442 – muru May 02 '17 at 00:55
  • 2
    This is a hard problem. One could use dpkg -l | egrep '^ii' | awk '{print $2}' to get a list of installed packages, use dpkg -L to list the executable files in each package. Now, the hard part: Subtract this list from the list of all executable files in the directories in $PATH (for some reasonable definition of $PATH). This will produce a list of all executables in $PATH installed by something other than the package management system. – waltinator May 02 '17 at 06:39
  • 1
    Or, install your "bins, shs, runs, tar.gzs, appimages etc" with installwatch, from the checkinstall package. Probably requires time travel at this point. – waltinator May 02 '17 at 06:40

1 Answers1

0

No, there is no such command, and writing a script that does that is virtually impossible. The reason for that is simple: You can write or download a script, place it anywhere you want, make it executable and boom you got an app. You may even define an alias for it so that you just need to run yourapp exactly like with “properly” installed software and totally forget where it's actually stored – it doesn't need to be in $PATH, not at all. And then there's your minecraft.jar you once buried deep inside your home directory. Technically it's just an archive, but then again when java performs its magic it becomes a great game and we just have to call it an app. Now is this the case for simply every .jar on your system? No, certainly not.
Actually, what exactly is an app?

In fact this is one of the very reasons to use package management software in the first place: It simply keeps the installed software organized and always knows what's installed where. If you want to keep track of the software you normally install with make install or e.g. ./install.sh I can nothing but recommend checkinstall.

dessert
  • 39,982