Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

In this Discussion

Support Us

Top Posters

i3 Window Manager or Desktop Environment?

I know that i3 is labeled as a window manager, but every time I see i3 it is the only thing present on screen. Can someone explain?
Tagged:

Comments

  • darthlukandarthlukan Registered
    A Desktop Environment manages the desktop, as in, all of the background stuff that most users don't think about, such as the login session, logging, permissions to services (like networking), and centralized environment configuration.  A Window Manager has one job: Manage windows. It's what decorates client applications with titlebars, close, minimize, and maximize buttons, and allows you to resize those client windows. Your window manager does not care about the logged in user, logging, centralized configuration of the environment, or anything else. It cares about its own config file(s), its own log file, and whether or not there's an X display socket to connect to. That's it.

    The reason why the only thing present on the screen is i3 is because that's what's managing the windows. Here's an easy way to think about it:

    1. System Boot
    |_
       2. Login Manager: Where you login
       |_
          3. Desktop Environment: You don't actually see this in 90% of cases
          |_
             4. Window Manager: What you see when you are looking at your "desktop", workspaces, and GUI apps
             |_
                5. Your GUI apps: Web Browser, status/dock-bars, etc

    People that don't use a Desktop Environment (most i3 users) are basically "skipping" step 3.  It's important to note that all Desktop Environments require a Window Manager to manage windows, but not all Window Managers require a desktop environment to manage the desktop.

    The next question in this line of conversation is usually "What's the benefit to using only a Window Manager?" The answer is simple: Less junk running in the background, eating up system resources for very little benefit.  When you run only a Window Manager you are letting your init system and service managers do their jobs (systemd in most mainstream distros, upstart, sysvinit, and openrc/initscripts in the rest) and startup the services/daemons that you need in order to have a working system, and you're letting the Window Manager handle the simple task of giving you things to click on. When you run a Desktop Environment, you're adding an extra layer that is (arguably) not needed in most scenarios, especially with modern distros providing most of the convenience items you'd need as a default.  Whether or not one approach is better than the other is solely up to the user and their tastes, anybody that says different is probably trying to sell you something or get into a very specific debate.
Sign In or Register to comment.