As always there’s no such thing as a global “best” application. Building your system is a very personal thing. It all depends on your needs and liking.
My personal journey in the tiling WM world has started 20 years ago with awesomewm. Then I moved to i3 because it feels lighter to me while offering a configuration approach I preferred. After some times, I felt ready to “really” build my tiling WM and I moved to dwm.
I couldn’t be happier until I came across bspwm which is as suckless as dwm but EWMH compliant. I also love the nice approach of keybindings offered by sxhkd. What I appreciate the most is the no limit configuration power since you can integrate the very powerful program that writes messages on bspwm 's socket (bspc) in any scripts you can imagine. This let you create some crazy and very personal rules. For example, I designed one where bspwm is listening to my video player state and if not fullscreen it automatically resizes it to a given size and moves it to a specific position. I have another one that will apply borders only to 2 specific windows applications and use a different color for each one.
This is a very brief overview of what I’ve experimented. Your expectations and the time you want to deserve to your configuration may guide you on another path. Archwiki has a comparison of tiling WM may be a good starting point to help you in your decision.
Interesting. As a dwm guy I was unaware of ewmh standards. Have you used dwm to be able to compare? I love dwm, but it does behave in some cagey ways at times.
You know how hard it is to explain personal preferences when we talk about tiling WM but, as I mentioned in my first post, I would say that bspwm offer some further granularity. I didn’t thought that was possible after using dwm but to come back to my example I have bspwm listening to the state of my media player. Everytime it becomes floating, bspwm resize the window, place it on a specific position, and add a border to it. This is just one example. Also, even though you can use it with any tiling WM, sxhkd has been developed with bspwm in mind and offers the best keybindings management I’ve ever tested. Thanks to chords, several commands can be associated to independent keybindings within the same piece of code like so:
I’m already using sxhkd with dwm but it’s probably underdeveloped. I want something like that above but with an additional hotkey to change send the active window to a workspace and then switch to that workspace but I haven’t worked it up. I debated using a QMK tapdance feature for that but have never switched to my QMK keyboard.
I guess to get at my real question, dwm (or maybe more accurately some of the applications I run) generate windows in weird ways. Zoom for instance doesn’t generate notifications for things like unstable wifi, but rather tiles a new window for 2 seconds which is REALLY annoying. Also the window swallowing feature is pretty finicky for things like (n)vim+latex in continuous compiling situations.
It’s all fixable… But it’s just a massive headache since (on my work pc) changing a dwm config means logging out and back in to see the results.
I would need to go back to my old dwm config file but I think what you’re looking for is this patch. In bspwm this is achieved with the “follow” option as shown in my example.
To restart dwm without login out and back in you’ll need this in your .xinitrc:
X/X11 is a client-server protocol from the age of 10Mbps networks, intended for a bunch of “dumb terminals” connected to a mainframe that runs the apps, with several “optimizations” that over time have become useless cruft.
Wayland is a local machine display system, intended for computers capable of running apps on the same machine as the display (aka: about everything for the past 30 years).
Nowadays, it makes more sense to have a Wayland system (with some RDP app if needed), than an X11 system with a bunch of hacks and cruft that only makes everything slower and harder to maintain. An X11 server app acting as a “dumb terminal”, can still be run on a Wayland system to display X11 client apps if needed.
🤦♀️ I’ve never considered this, but it’s the simplest solution and makes perfect sense. I’m always so diligent to keep my system clean to save a few megs.
This particular server is an old PowerEdge server I’m using to learn server stuff on and a practice home lab. Unfortunately, it won’t boot from SD card, so I have a few DVD RW’s in a drawer. I’ve read that there’s a SD slot inside that you can emulate a floppy, but haven’t explored it.
I think if you have no answer, it could be that NixOS doesn’t solve any problem for you. In effect, it’s not better. Don’t buy into social media hype. It’s just a tool like any other.
You’re spot on and that’s what this discussion helped me figure out: I have no problem. I knew that but I also thought that NixOS would bring something new to improve my Linux usage. So far I still see such improvements for servers or deployment on several machines but not for a single user with standard needs (and this statement may be wrong and due to my limited experience with NixOS).
But NixOS approach is quite different from others and I feel like I may discover something of interest to me once I learn more about it. Also, just for the sake of learning and discovering, I will continue experimenting with it for a while.
In short, Nix reduces the setup time, both for your system and for your projects. If you find yourself spending a while setting stuff up (for example, after a reinstall; or maybe you want to run your project on another PC and need to install the right dependencies), Nix will help. Otherwise, if your desktop is vanilla Fedora or whatever and you don’t do much programming (or you don’t have any dependency management problems), Nix probably isn’t for you.
Despite the CPU being 64-bit, the distro MUST be 32-bit. This is because of the MacBook’s BIOS, which prevents 64-bit bootloaders from working.
That’s the thing, you can run a 64-bit distro as long as you’ve a 32 bit grub starting it :) You run Debian 12 amd64 on a 32 bit EFI:
As of 2023 and Debian 12 the amd64 installation media (available in netinst form) includes the UEFI boot loaders necessary for both i386 and amd64 boot. By selecting “64-bit install” from the initial boot menu, debian-installer will install a 64-bit (amd64) version of Debian. The system will automatically detect that the underlying UEFI firmware is 32-bit and will install the appropriate version of grub-efi to work with it.
I am running 10.6. Chromium Legacy is for 10.7 and above, and the same is true of a lot of software. Meanwhile, on my Linux partition, I can have Firefox Nightly if I want. It’ll run heavily, but it’s possible.
As it happens, I do have a somewhat recent browser installed in OSX, but it’s not great.
Also, running an older OS like that isn’t a good idea, as it won’t have received security patches or microcode updates.
That’s the thing, you can run a 64-bit distro as long as you’ve a 32 bit grub starting it :)
I hadn’t quite considered that somebody had implemented this. Thanks for the info!
There was also another user who gave me a link to some software that modifies mixed-mode ISOs so that they will boot on my potato laptop.
I am running 10.6. Chromium Legacy is for 10.7 and above
Can’t you run 10.7 on that laptop? It seems like you can, and that will greatly improve your software situation. Another thing to consider is to replace the HDD with an SSD. That computer will run any SATA drive (I’ve tested with modern WD blue drives), just grab something like 250GB for 30€ and enjoy speed.
There was also another user who gave me a link to some software that modifies mixed-mode ISOs so that they will boot on my potato laptop.
Yes but Debian provides that out-of-the-box and officially supported. That means everything will work fine and as stable as Debian is usually.
The crashes are in the middle of browsers (both Firefox and chrome embedded in Spotify), if you try a simple mprime stress test (from the AUR mprime-bin) does it crash too?
linux
Top
This magazine is from a federated server and may be incomplete. Browse more on the original instance.