Terminal only as "Desktop"

5,724

Solution 1

One way or another, you would need X running. But you can get something like what you're asking with a tiling window manager. One of the earlier ones was "ion" (not as popular now).

Further reading (no specific recommendations, of course: that would introduce opinion):

Solution 2

Technically, all you need to run GUI programs is the X server. You can run just a terminal emulator and run all programs from that. However life without a window manager is not comfortable at all: there's no interface to switch between, raise, resize, move, hide, close, and otherwise manipulate windows.

So what you need is a window manager, probably without a desktop environment. There are a lot of window managers out there — Wikipedia has a comparison table, Debian includes more (57 packages provide x-window-manager), but more exist (and even that list is incomplete, but most of the ones not on that list are probably minimalist programs used mostly by their author).

A large majority of less-popular window managers tend to be on the minimalist side, but not all are. Pretty much any window manager apart from the ones specifically designed for a desktop environment can be used comfortably without any kind of screen “distraction”.

If you want to have a lot of control over how your environment works, three choices stand out: awesome, which is programmed in Lua; sawfish, which is programmed in Lisp; xmonad, which is programmed in Haskell. Awesome and xmonad are tiling, sawfish is stacking (and awesome supports stacking to some extent). If you're in the habit of having full-screen windows most of the time then you'll probably like a tiling window manager. If you never have enough screen real estate to fit all the windows you want to see together then stacking is really helpful.

If you prefer something minimalist with little configuration, go through the list and test a few until you find one whose author's idiosyncrasies match yours.

No matter what window manager you choose, you can run a full-screen terminal upon login and run all your programs from there. Just about any window manager provides a way to run programs but you don't have to use that if you don't want to.

Share:
5,724
SklogW
Author by

SklogW

Updated on September 18, 2022

Comments

  • SklogW
    SklogW over 1 year

    Is it possible to have a terminal only desktop in Linux (Mint)?

    I want to boot normally, meaning I want to be able to start GUI programs (IDEs, Browsers etc.), but I don't want anything on the desktop but a Terminal after booting. Ideally some kind of embedded terminal on the desktop and nothing but that.

    My current "workaround" is to have a pure black desktop and use Ctrl+Alt+T to start a shell, but ideally I want one as fix part of the desktop.

    The purpose would be to be forced to do standard stuff with terminal only and as little distraction as possible.

    • Upe
      Upe almost 8 years
      So you don't want an ACTUAL terminal? you want an emulated one in an X11 server? Or do you want a TTY framebuffer? (by real terminal I mean something like this i.imgur.com/9JL41Fi.jpg ) You can do that by making your session login run a shellscript that launches xterm and maybe a window manager. Just that and startx.
    • Upe
      Upe almost 8 years
      Also, I made myself start using the terminal for nearly everything just because I got used to it trying to port C programs that were out of date and found switching between a terminal and a GUI too slow and painful when all I needed was grep, an editor (nano for me), and a C compiler. Also messing around on android phones and jailbroken idevices got me VERY adapted to using a terminal primarily, since it's the simplest way to see what's really going on on them.
    • SklogW
      SklogW almost 8 years
      My goal is to automate (almost) everything I do. I wan't to add some DevOp Skills but in Order to get them I need to start using the terminal on a regular basis.
    • Upe
      Upe almost 8 years
      I'd just start invocating programs from a terminal and writing shell scripts. I never had to really wrench myself away from the gui once I realized it was faster to launch a program from a terminal. Also, man pages will be your best friends. And if you ever find one, a dedicated serial terminal's a way you can run a terminal without ANYTHING on your X11 server. see the pic I posted in an earlier comment. On one, export DISPLAY=:0.0 and then launch a GUI-using program (DISPLAY controls which X11 server your programs connect to).
  • SklogW
    SklogW almost 8 years
    I looked into i3 and it is exactly what I want. Thanks!
  • Kroltan
    Kroltan almost 8 years
    This is correct. I've taken a liking to AwesomeWM, which I like because it's completely configurable and scriptable (its interface is defined in Lua).
  • l0b0
    l0b0 almost 8 years
    I'd second @Kroltan's recommendation of Awesome; unlike some tiling window managers it's easy to control windows with the mouse as well as keyboard, and it's easy to set it up to spawn a terminal at startup.
  • Upe
    Upe almost 8 years
    I believe FVWM can support tiling. As an option. I love it for my ARM devices which are performance-impaired. It's a very mature WM now, but out of style. A step up from TWM.