71

That depends on your distribution. Aptitude-based distributions (Ubuntu, Debian, etc): dpkg -l RPM-based distributions (Fedora, RHEL, etc): rpm -qa pkg*-based distributions (OpenBSD, FreeBSD, etc): pkg_info Portage-based distributions (Gentoo, etc): equery list or eix -I pacman-based distributions (Arch Linux, etc): pacman -Q Cygwin: cygcheck --check-setup -...


40

No. Binaries must be (re)compiled for the target architecture, and Linux offers nothing like fat binaries out of the box. The reason is because the code is compiled to machine code for a specific architecture, and machine code is very different between most processor families (ARM and x86 for instance are very different). EDIT: it is worth noting that some ...


21

Okay, several things here: You're not even remotely the only person that wants something like this (I've been looking for a good one for a while now). There are a couple of projects out there that attempt to fill this niche but none of the ones I have found are quite as simple to use as I'd hoped. Big Update! It looks like there is a wonderful soul out ...


19

I think /opt is more standard in this sort of context. The relevant section in the Filesystem Hierarchy Standard is quoted below. Distributions may install software in /opt, but must not modify or delete software installed by the local system administrator without the assent of the local system administrator.  Rationale The use of /opt for ...


17

You've got a few options: vimdeck Uses Markdown, ASCII-art-ifies header text and even images. Code highlighting. mdp Markdown, Vim-like keybindings. Fancy transitions. vtmc Each slide is a text file, custom format. tkn Slides are written in Ruby. ANSI escape sequences for color. Cute sections. tiptip CoffeeScript. Seems to produce color. No image, ...


17

Darling (link) is a project that aims to become analogous to wine. Currently it only runs some command-line OSX programs, though. As of mid-2019, it can run many command-line programs, and according to their homepage appears to be approaching the point where it can run some rudimentary graphical software as well. It probably won't run what you want just yet, ...


16

Elizabeth Myers is correct, each architecture requires a compiled binary for the architecture in question. To build binaries for a different architecture than your system runs on you need a cross-compiler. In most cases you need to compile a cross compiler. I only have experience with gcc (but I believe that llvm, and other compilers, have similar ...


15

You can run python scripts by making them executable (chmod +x test.py) and making #!/usr/bin/env python the first line. Once you do that, running test.py args will invoke python to run your script. Read about shebang's if you want to learn more.


14

Libcdio contains a collection of command-line which are CD-Text aware. Specifically, you can get CD information using the cd-info program. For more information on using particular libcdio library functions, have a look at the online documentation.


14

The literal answer is that there is no such thing as an untrusted application running under your account. If you want to run an untrusted application, run it under a different account or in a virtual machine. Typical desktop operating systems such as Unix and Windows and typical mobile operating systems such as Android and iOS have different security models....


13

Answering the second part of the question (nothing really to be added to Chris' answer for the first part): There is generally no way of listing manually installed programs and their components. This is not recorded anywhere if you didn't use a package manager. All you can do is find the binaries in standard locations (like Chris suggested) and in a ...


13

There is tool source-highlight. Alias example: alias ccat="source-highlight --out-format=esc -o STDOUT -i"


13

There is already an external command for this. There is nothing new that needs to be written. The command is xdg-open. It will open a file based on its MIME type association. Here is an example: xdg-open file.png


12

Is there e.g. some central log or something similar? The normal place for system logs is /var/log/. What gets put in each log depends on the syslog configuration, but commonly everything except logins goes to /var/log/syslog. This is no guarantee that individual applications will have left any clue there in the event of a problem. But they, or the shell, ...


10

It's justified simply because the alternative -- overall -- is more work for less gain. Virtually all computing systems (could argue: all systems, period) are built in layers. Each platform makes assumptions about what's below it. ls assumes there will be a C standard library. Which assumes there will be a kernel. Which assumes there will be computing ...


10

There is a program called key-mon that monitors the pressed keys. It's been some time since I used it, but it worked well and it's display is quite appealing.


10

The best way to do this is a Dynamic Range Compressor. Audacity has one built-in, under "Filters->Compressor." This is, essentially, a program that removes the range between quiet sounds and loud sounds. It's surprisingly easy to use. Set the "Threshold" value to something very low. Set the "Noise floor" to around -30DB. Set the ratio to a very high ...


9

Note that as a last resort (i.e. when you don't have the source code), you can run binaries on a different architecture using emulators like qemu, dosbox or exagear. Some emulators are designed to emulate systems other than Linux (e.g. dosbox is designed to run MS-DOS programs, and there are plenty of emulators for popular gaming consoles). Emulation has a ...


8

When you do an LVM snapshot, pending data (in kernel buffers, not applications') is flushed to disk and applications are blocked from writing while the snapshotting is ongoing. You can also freeze a FS in that same way if you're backuping the block device the FS is on by some external means (like the disk is virtual and you're backing it up on the host) ...


8

The popular vimdeck project allows you to write your slides in markdown and display them in vim. Some of its interesting features include the following: Parsing a single markdown file into multiple presentation slides Providing syntax highlighting for various programming languages (if your slides happen to include code snippets) Automatically converting ...


7

That's OS/distribution/desktop-environment dependent, but in many places, you'll find a xdg-open command that does just that.


7

Unless you are on very old/low spec hardware, running gnome/gtk apps in KDE (or kde/qt apps in GNOME) should not have any noticeable impact on performance. When you're on KDE, qt/kde libs are already loaded in memory, gtk/gnome libs are not. It's only when you fire-up a gtk/gnome app that gtk/gnome libs are loaded, the side effect being a higher memory usage ...


7

Not only are binaries not portable between x86 and ARM, there are different flavours of ARM. The one you are likely to encounter in practice is ARMv6 vs ARMv7. Raspberry Pi 1 is ARMv6, later versions are ARMv7. So it's possible to compile code on the later ones that does not work on the Pi 1. Fortunately one benefit of open source and Free software is ...


7

You always need to target a platform. In the simplest case, the target CPU directly runs the code compiled in the binary (this roughly corresponds to MS DOS's COM executables). Let's consider two different platforms I just invented - Armistice and Intellio. In both cases, we'll have a simple hello world program that outputs 42 on the screen. I'll also assume ...


6

ImageMagick provides a super-nice set of command-line tools for image manipulation. Check it out at http://www.imagemagick.org/.


5

You should only use /usr/local/share for files which are not specific to a particular architecture / OS version. After that it's up to you whether you distribute the files between the existing subdirs of /usr/local or if you create a new dedicated directory in /usr/local (but the latter will not already exist on the executable PATH, the LD_LIBRARY_PATH, nor ...


5

Try using Xournal: Xournal is an application for notetaking, sketching, keeping a journal using a stylus. It is free software (GNU GPL) and runs on Linux (recent distributions) and other GTK+/Gnome platforms. It is similar to Microsoft Windows Journal or to other alternatives such as Jarnal, Gournal, and NoteLab. Or if you don't mind a Java app, Jarnal: ...


5

Debian stable is exactly that, stable. It achieves this by using well tested software, "well tested" being synonymous with "used for a long time", usually backporting security fixes instead of updating to a new version once frozen. Debian stable isn't concerned with the latest and greatest software, it's concerned with being reliable. If you want to have ...


5

You're asking the wrong question: you've got an overheating system which should be solved by cooling the system. Playing games with process load is going to yield an unsatisfying hack. And since you've got hardware running at its thermal limits, you can fairly expect that problem to worsen. If you cannot remedy the hardware, see if you can slow the whole ...


5

On Ubuntu segfaults get written at /var/log/kern.log. I tested it by creating a program that segfaults: void main() { int *a=0; *a=0; } After it segfaulted there was this line in /var/log/kern.log: a.out[534]: segfault at 0 ip 08048432 sp bfaec8c0 error 6 in a.out[8048000+1000]


Only top voted, non community-wiki answers of a minimum length are eligible