I decided to dive heads first into window managers and need your input for your guidance. I’m absolutely not a Linux-pro. I basically never use the terminal, just started using Github, and only used Gnome (+ KDE for 1/8th the time) for now.
I already informed myself in the last months a bit in what mess I will jump into, but that didn’t prepare me at all… Or at least not as much as I would have liked.
I find it a bit hard to get content for this topic. For Gnome or KDE for example exist trillions of videos and guides, and all TWM-content is only from and for hardcore enthusiasts who are already neck deep into that topic for decades.
One thing I already noticed is that everything is very technical. Everything is in a text file and accessed via terminal. I like that, but it’s just different.
Also, there’s no way to just learn one thing, no. You have to work yourself into many tools all at once, which is super frightening, but interesting.
First off all, I need your choice of packages to make it a fully functional desktop.
Right now, I use Niri, for now in a VM, which comes with a few basic things out of the box, like portals, and additional stuff, like some packages from Sway.
But basically everything else, like bars, decoration, and more, is not preinstalled.
When you use it the first time, it’s very barebones and no eye candy by default.
I would like to hear what “essential” stuff, and what “Because I like it”-stuff you suggest.
Maybe differentiate it with “I personally use it” and “You and everyone else should use that, it should be a default.”
Personally, I would like to have:
^(£ = nice to have; ¥ = basic functionality)
- ¥ A bar, like
waybar
- £
KDE-Connect
: does that work on TWMs? Is there a good implementation? Can I use GSConnect elsewhere too? - ¥ A good global search tool like KRunner or the one from Gnome
- ¥ Clipboard manager
- £ Wallpaper switcher
- £ Eye candy in general, e.g. dotfiles (those are the settings for each element, like the bar, right?)
- More things will be added later :)
Also, do you have any tips for a total noob in that topic?
Any things you regretted when you started and now wish others to avoid?
General usage tips for someone who only used full fletched DEs until now?
And, most importantly, do you have any resources where I can read/ watch more into for the future?
Sure, the readme.md
on the projects’ page is the best information for that specifically, especially technical stuff, but I don’t know where to get more general information, like discussions, comparisons, and more. The only example I can think of is !unixporn@lemmy.ml for inspiration, but not much more.
Do you have any blogs or threads you can recommend?
Thanks in advance for your help!
I plan to post a “My Linux week”-report very soon, since there has been a lot happening in the last days. I literally just “discovered” Github for example 🫠
You don’t really need to use a tiling window. You can still use a floating window manager and learn Linux stuff.On my Guix system, I had River setup with Waybar, Rofi and Rivertile, with other utilities like WirePlumber, brightnessctl, etc and I didnt really enjoy the experience. Sure, I could have spent some more time on improving that, but I thought that it was pointless having dotfiles next to my scheme config, so I went back to GNOME Shell.
Interesting point, so because Guix “forces” you to declare you OS you rather skipped on the option of having dotfiles? Not sure I can fully follow that train of thought. Esp. when it comes to GNOME being used instead. Can you shed more light on what made you switch?
You mean Git SCM/VCS? GitHub is a Microsoft-owned software forge. True that it has a lot of software hosted, but personally, I think they’re scummy. There’s are other alternatives, like Codeberg and GitLab. It shouldn’t matter what forge you’re using realistically, but ideologically, if you’re a copy-left hardliner, you might want to avoid them.
Yeah, correct. I know that Github isn’t perfect due to MSs’ ownership, but for now, it’s the biggest.
I also have a codeberg account, but I haven’t used it yet.
I try to make a custom uBlue-image (immutable Fedora spin project), and for that, Github is the official method.
But I will look around if Codeberg or other Git platforms work too at the moment.
Does Codeberg also have an automatic building system/ Github actions?
You don’t really need to use a tiling window.
Sure I don’t need to, but I want to try it.
I am a huge Gnome fan and wanted to try a WM for a longer time now. Now, Niri has released, and I couldn’t find an already made image yet, so I decided to do it myself. For me, a big part is the learning experience.
I finally have enough time for that now and to invest some of it for that project :)
Interesting topic, this was also relevant to me some years ago when I started dabbling in twm, esp. i3wm in that time. To this day I am using i3 because its “easy” to set up for me and I started using a repository on codeberg.org for version control of my dotfiles (https://www.chezmoi.io/).
I am also torn on the subject of using twm nowadays, at work I am using i3, but at home I am still in the woes of a fully fledged KDE. I love to work on the terminal and prefer most applications to be cli based instead of having a full gui. But recently I finally took the plunge on trying a multiplexer (https://zellij.dev/) which actually makes me think, twm are not really that necessary once you start using a terminal multiplexer.
Because what you will notice is that it doesn’t make a lot of sense to tile ALL of your windows all the time, mostly its for cli applications, which is handled by the multiplexer in a perfectly fine way. Also when it comes to eye candy…with twm you will mostly never see your wallpaper, apart from some artificially created layouts which you can post on various *unixporn sites.
While you want a lot of windows as fullscreen, depending on your screen size. (most videos, browser etc.) So maybe you don’t really need a twm and can instead work with any lightweight window manager, the beauty of going non-fully-DE is that you can mix and match all your favorite programs however you like! Take a look at and check out some of those git pages maybe you find something which suits more to your needs: https://wiki.archlinux.org/title/Wayland#Tiling
Idk I like to lean into the tiling but you also need WORKSPACES (or tags, since I’m a dwm guy). You can configure which specific programs don’t need to be filed and float them which is the method I prefer.
BUT.
You’re right, it is nice to separate functionality. I like sxhkd for consistent hot keys across distros (I’m mostly mouseless), tmux as a multiplexer, and related unrelated I think at OPs stage picking an editor is going to be important.
waybar is good
scrcpy for android connectivity; syncthing to get files to and fro android (and any other linux system)
clipman for clipboard manager
wallpaper - whatever for? with a TWM you rarely see the background
emacs - because it’s life (I jest)
scrcpy is wonderful. I have some reading apps on my phone but at home I usually use my laptop with scrcpy to read.
I got this in my .custom_bash.sh:
#Connect to phone over Wifi and view phone screen.
#Remember to set static DHCP for the phone MAC.
#And to use the same one in the adb connect line.
function phoneconnect(){
sudo adb start-server
adb tcpip 2233
adb connect 192.168.18.15:2233
scrcpy
}
for global search i would recommend rofi-wayland !
overall, my best advice is to steal, mix n match others configs (make sure to keep track and source them tho !) and find what u like best, if ur only starting dont try and do everything from scratch !!
if u want a notification system, i use dunst :3
A bar, like waybar
Why not waybar? 😆
If you want to go all in, check out Eww - it’s a lovely over-engineered and super customizable widgets framework that you can use to build a fully custom desktop bar, too. (and needs a lot of more work than waybar to initially set up)
Wallpaper switcher
Depending on your compositor there already might be something implemented that handles wallpaper switching. Maybe check out the super simple wbg application, or have a look at swww if you want a bit a lot tons of more features.
General usage tips for someone who only used full fletched DEs until now?
If you’re on Hyprland or interested in using it, maybe check out My Linux For Work’s Hyprland setup if you want something ready to use.
Here is an alternative Piped link(s):
My Linux For Work’s Hyprland setup
Piped is a privacy-respecting open-source alternative frontend to YouTube.
I’m open-source; check me out at GitHub.