Ask HN: What are your favorite Linux applications?

Inspired by the thread about Mac OS, I'm curious what are some really well done applications for linux.

I know there will be a ton of CLI apps/tools, which are welcome, but I would love to hear some really nicely done GUI applications as well.

Sublime Text, Sublime Merge, ripgrep come to mind.

70 points | by manaskarekar 1657 days ago

34 comments

  • Aperocky 1657 days ago
    For all cli apps, the importance of cli itself can't be understated. While there are only a few cli programs available to ALL unix users (grep/ps/awk/sed/xargs/etc), the value of the pipe are one of the defining features of CLI that amplify any program made to work in CLI.

    A command I often run: `ps aex | grep $common_denominator | awk '{print $1}' | xargs kill` to deal with multiprocess testing runs demonstrate this well. The pipe character is what uniquely enabled unix shells to be the great software it is that GUI have almost no real way to replicate.

    • kbr2000 1655 days ago
      As Awk is a pattern-matching language, you can simplify it to something like this:

        ps aux |awk '/what/ {print "kill " $2}'
      
      This will give you a list of kill commands you can review, before piping to |sh to shake off those processes :)

      And when what you try to do sequentially might take too long, you can consider throwing GNU Parallel [1] in the pipemix!

      [1] https://en.wikipedia.org/wiki/GNU_parallel

    • jolmg 1654 days ago
      > ps aex | grep $common_denominator | awk '{print $1}' | xargs kill

      That looks pretty equivalent to:

        pkill -f $common_denominator
      
      I suppose this is less portable, though.
  • folkhack 1657 days ago
    OS: Debian 10 + XFCE

    Terminal: highly-customized Terminator bound to F1 + XFCE Terminal for "floating" instances

    Text/Programming: Sublime Text, Intelij IDE, nano (yeah yeah bring your hate vim users - I know it well and I'm not a fan), Meld

    Markdown/docs: Typora (TRY THIS OUT IT'S AMAZING.)

    Browsing: Chrome, Chromium, FF, Brave (in that order); Postman for API work, Charles Proxy for reverse-engineering work

    Communication: Hangups (CLI), Discord

    Containers/Virtualization: Docker, VMWare Workstation (I run a full Win10 LTSB underneath with all quick-access to my Adobe Creative Suite, saves time not having to switch to the MBP)

    Transfer: Qbittorrent, Filezilla

    Misc: Remmina for RDP, Kazam for screen recording, pgAdmin4 for working with my Postgres DBs, ncspot (CLI) for Spotify client; KeePass2 for password management in a file-based DB; GParted for partitioning

    Ninja edit: Sublime Merge looks amazing... I will be trying this out ASAP.

    • SanderSantema 1656 days ago
      As an open-source alternative to typora I can suggest Marktext https://github.com/marktext/marktext which I believe is on par with typora features. Don't be alarmed by the fact that it's electron, it's pretty fast either way. And as far as I know typora is electron based too.
    • physicles 1657 days ago
      I’ve been using Typora for about three years. One of my favorite pieces of software for sure.
      • sebelk 1652 days ago
        I prefer Mark Text because is powerful and free as in freedom :)
    • nickthemagicman 1657 days ago
      Haha, I get puzzled faces when I use nano too, but to quickly edit a file, it's actually less keystrokes than VIM. It's just not as l33T.
    • croo 1655 days ago
      Try out Dbeaver instead of pgAdmin for database administration. It's a much, much better tool.
    • 8bitsrule 1657 days ago
      Huh. I've never run into a 'Linux app' that couldn't be authenticated at install-time. Different.
  • teddyc 1656 days ago
    Trying to name some more obscure ones that I love.

    Tizonia is a CLI music player that can play music from your Google Music library. I like it bc I don't have to use a browser.

    Pianobar is a CLI client for Pandora, but I can run this on a Mac too so not sure if it counts. Same no browser required benefit.

    I love CLI music players bc they help you extend battery life vs browser based.

    Gpaste is a clipboard manager. It even stores images copied to the clipboard.

    Not sure if it counts but when I do a rectangle select screenshot in Ubuntu, it puts it in the clipboard (instead of putting a file on the desktop like Mac does) and then I can just paste it in the Jira ticket / GitHub pull request / Slack / etc.

    Probably a bit more that deserve mention that I am not considering right now.

    • mrtcve 1656 days ago
      Image output destination is configurable on Mac. Cmd + Shift + 5, then it's under options in the bar. I don't recall all the options but it's at least file/clipboard.
      • SanderSantema 1656 days ago
        ⌘⇧5 (CMD + Shift + 5) doesn't do anything on my macOS 10.13.6 system, ⌘⇧⌃4 (CMD + Shift + Ctrl + 4) is the default shortcut to take a rectangle screenshot and store it in the clipboard.
        • runjake 1656 days ago
          ⌘⇧5 was introduced back in 10.14.0 Mojave.
    • SanderSantema 1656 days ago
      Taking a rectangle select screenshot using ⌘⇧⌃4 (CMD + Shift + Ctrl + 4) will put the screenshot in your clipboard on macOS
  • dafsdfsd 1656 days ago
    flameshot for screenshots - https://github.com/lupoDharkael/flameshot

    almost everything is perfect.

    • vanous 1656 days ago
      Amazing, thank you!
  • nextos 1656 days ago
    The only 3 GUI applications I use regularly are Emacs, Firefox and XTerm (which, like Emacs, has amazingly low latency). All via a tiling window manager (StumpWM).

    I also use Signal Desktop, which is a rather plain Electron app.

    For some imaging tasks, GIMP and Inkscape are great. GIMP gave birth to GTK, one of the two major Linux GUI toolkits.

    Since the desktop ecosystem is very fragmented, I don't think there are any great GUI applications in Linux. On Macs, things are declining now too. A lot of the GUI innovation is happening on mobile.

    In Linux, niceties come from CLI and whole OS, like Nix.

  • usr1106 1657 days ago
    I have used emacs since before Linux and window systems existed. Emacs is a small windows manager like it is nearly everything else. Nowadays I only use a tiny fraction of its functionality, because I do run a window manager and a web browser. Still emacs is one of the first programs I install on every system. On embedded systems where emacs is not feasible I try to get remote editing via TRAMP https://www.emacswiki.org/emacs/TrampMode working.
    • dTal 1656 days ago
      Does TRAMP mode offer any advantages to sshfs?
      • snackematician 1656 days ago
        - 1 less step (just open the remote file directly, rather than running "sshfs" and then opening the file)

        - If you execute shell commands from emacs -- these will be executed on the remote machine when editing thru tramp

        - Tramp is not limited to ssh, but also allows emacs to access files in docker containers, as different users (e.g. root), in S3/GDrive/etc via the rclone backend, etc.

  • weitzj 1657 days ago
    Clipboard Manager: copyq

    Also for Windows and Mac. Gives you great sanity for all the clipboards, clipboard history. Fuzzy search in clipboard history

    Has a GUI and CLI

  • manaskarekar 1656 days ago
    Baobab: Disk usage Analyzer https://help.ubuntu.com/community/Baobab

    Atril: Pdf Viewer, forked from Evince from the Gnome 2 days IIRC.

    Base 16 Colors: https://github.com/chriskempson/base16

    Unetbootin/TuxBoot: Creating bootable drives.

    gnome-do: Alfred/Spotlight (MacOS) like quicklauncher. Used to use this but now I've just defaulted to using Alt+F2 (remapped to Super + Space keys) to launch apps. https://do.cooperteam.net

    Zim : "A desktop wiki" https://zim-wiki.org

  • mackrevinack 1656 days ago
    syncthing, sublime text and marktext would be my favourites, but you can get them on every other platform so I don't really think of them as Linux apps

    some of my fav linux only apps would lutris for managing your steam and gog library from a single gui

    neofetch is a nice way to get a fancy readout of your system specs https://github.com/dylanaraps/neofetch

    also just reading about ansible the last few days and i can see that becoming an instant fav for quickly setting up my computers. if I can get my head around it that is

  • ohiovr 1657 days ago
    Blender 2.8 is a work of art. ffmpeg is terrific. Pretty happy with cinnamon desktop.
  • jamesponddotco 1655 days ago
    GNOME Browser offers an extraordinary browsing experience, and most people seem to ignore it — probably because it lacks extension support, which I don't really care about.

    Being part of the GNOME project is also follows the GNOME design and maintain consistency with the rest of the desktop environment — a must for me.

    Aside from that, I mostly like applications that follow the GNOME HIG, like GNOME Terminal, Geary, Polari, and Fractal.

    My favorite text editor after vim is still Gedit, and it is a shame I can't use it on macOS ¯\_(ツ)_/¯

    • flukus 1655 days ago
      Two things that keep me away from gnome browser. 1. The tab handling is awful, would be great if they added vertical tab support. 2. Like firefox, it doesn't play with dark desktop themes, you end up with text areas with black text on a black background.
  • PhilippGille 1656 days ago
    SmartGit

    It wasn't mentioned here yet, and having used GitEye on Linux before and SourceTree on Windows, and seeing coworkers use GitKraken, I think SmartGit is by far the best Git GUI client of them.

    I know the Git CLI is popular, but most people I've seen begin to struggle with everything beyond a simple pull and push. With a Git GUI client things like squashing commits, interactive rebases, 3-way merges etc. are discoverable and intuitive. No reading of the documentation required.

  • usr1106 1657 days ago
    Text based diff is fine for basic use cases. When the results are too confusing to grasp what really has changed or I want 3-way diff meld can do wonders. Unfortunately it does not scale well and chokes on huge files (like Yocto build logs). Sometimes I use kdiff3. Wasn't there a 3rd one? Obviously I haven't used it for a long time, because I can't remeber it now.
  • jasoneckert 1657 days ago
    If I had to choose one application as my favorite, it'd have to be xbill. I can't explain why. And I'm not sure I'd want to.
  • virtualmic 1656 days ago
    ranger [1] is not mentioned yet. I had never used a console based file manager prior to starting using this 3 months back and I have stopped using Dolphin (I am on KDE) now.

    [1] https://ranger.github.io/

  • SanderSantema 1656 days ago
    There are quite a lot of KDE apps which aren't that well known which together cover a large swathe of desktop usage and are quite nice.

    Most of them are here: https://kde.org/applications/

  • teddyc 1656 days ago
    Docker runs native. You get instant file sync.

    On Mac my options are dinghy or docker-sync, both of which drive me insane by either being too slow (former) or not syncing files fast enough or good enough (latter).

    This is probably the number one reason that I love Linux for development these days.

  • vanous 1656 days ago
    Freecad and Meshlab for 3D editing. KeepassXC for password management. Gnome Shell extensions: - KdeConnect (phone sync/remote access) - Argos (script based utilities for top bar)
  • gitgud 1655 days ago
    Shutter is my favourite screen shot tool, quick selection of content and easy mark-up

    Kazzam is a simple (tiny) screen capture app, which does one thing and does it well.

  • inkstain 1657 days ago
    Some of my favorites already spoken for: but +1 for SublimeText with SublimeMerge and Typora. Also cannot do without SecureCRT and SecureFX
  • gradschool 1655 days ago
    sox - girlfriend teaches a dance class and needed a slower version of some of the music; she was impressed as all get-out that sox could slow the tempo without lowering the pitch (using fancy Fourier math)
  • ddtaylor 1657 days ago
    Krita and Kdenlive are both great.
  • weishigoname 1657 days ago
    I think packages management tools, like apt, dpkg, yum, dnf, are pretty useful.
  • brudgers 1657 days ago
    Darktable.
  • sebelk 1652 days ago
    VNote an excelent app to taking notes
  • snacksnack 1656 days ago
    Apps from KDE are great. Dolphin is awesome.
  • ajflores1604 1657 days ago
    KDE connect
  • yellow_lead 1656 days ago
    calibre is a great app for reading EPUB, PDF, etc
  • sebelk 1652 days ago
    vim vim and lastly vim
  • billconan 1656 days ago
    QtCreator
  • sunstone 1656 days ago
    Gnumeric
  • shortoncash 1657 days ago
    gcc
  • sharma_pradeep 1656 days ago
    terminal
  • raghava 1656 days ago
    bat (just a better cat)

    nl

    pigz

    parallel

    bc

    paste

    ministat

    httpie

    nc

    GUI: stellarium, conky

    There are definitely more. These are what I could remember now.