Daily Grind of a Code Farmer

Sway + Ubuntu 24.04 Setting

First attempt in setting SwayWM + Ubuntu

  ·   2 min read

First attempt at setting up SwayWM on Ubuntu 24.04. Doing this for fun and to learn tiling windows manager :)

Result

desktop
Desktop View
application launcher
Application Launcher with ulauncher
fade script
Fading Script if Tile out-of-focus

Summary

  1. OS: Ubuntu 24.04
  2. Window Manager: SwayWM
  3. Terminal: gnome-terminal
  4. Shell: zsh + oh-my-zsh
  5. GUI File Manager: Nautilus
  6. Application Launcher: Ulauncher with Dracula Theme
  7. Font: System San Francisco Display
  8. Status bar: Waybar
  9. Other applications: Firefox, wf-recorder for screen recording, grim for screenshot, wlr-randr for managing screen.

Important Decisions

  1. Sway is a tiling Wayland compositor. It works (almost) directly with i3 config. The main reason I use Wayland over i3 (using X11) is because screen-tearing on double monitors (full description here).
  2. After researching a few tiling window managers for Linux, there are a lot of articles recommending i3 for beginners. There are a lot of resources, available customized dotfiles, extensions, tutorials, etc.
  3. Why tiling window manager? Because I am interested with the workspaces concept, there are tons of extensions to rice the desktop, there are tons of keyboard shortcuts, and I just want to try it for fun :)
  4. Cons of tiling window manager? Learning tons of keybinding, customizing the desktop, building and installing each of the application that usually comes with GNOME/KDE environment really takes a lot of time. Therefore, I am trying to document all the configs into a repo called dotfiles (to be updated).

Interesting Resources

  1. 3 parts i3wm Tutorial by Alex Booker (Strongly Recommended)
  2. Ulaucher Dracula Theme
  3. Fader Script
  4. Waybar Customization Examples
  5. Unixporn Reddit Thread
  6. Sway Manual, especially man 5 sway
  7. Swaylock Effect for Cool Lockscreen

So far, I enjoy using Sway and I will update this post with more dotfiles as I continue to tweak my configuration!