regolith-linux / regolith-desktop

Meta package for the Regolith Desktop Environment
1.48k stars 31 forks source link

Add hotfixes for i3-gaps-wm to allow configuring "tiling_drag" #787

Open davidgengenbach opened 1 year ago

davidgengenbach commented 1 year ago

Is your feature request related to a problem? Please describe. i3 added a feature where one can drag the title bar item to do splits via the mouse.

Describe the solution you'd like Allow for the configuration of the tiling_drag option that was released as a bug fix release in https://github.com/i3/i3/issues/5209

https://build.i3wm.org/docs/userguide.html#config_tiling_drag

Describe alternatives you've considered Installing i3-gaps-wm manually. I would only consider doing this when there is no immediate fix in sight.

Additional context

$ apt show regolith-desktop
Package: regolith-desktop
Version: 4.3.0-1regolith
Priority: optional
Section: x11
Maintainer: Ken Gilmer <kgilmer@gmail.com>
Installed-Size: 16.4 kB
Provides: regolith-desktop-meta
Depends: mutter-common, regolith-default-settings, regolith-session-flashback | regolith-desktop-session, x-terminal-emulator, xorg
Suggests: update-manager, software-properties-gtk
Conflicts: regolith-desktop-meta, unclutter-startup
Replaces: regolith-desktop-meta
Homepage: https://github.com/regolith-linux/regolith-desktop
Download-Size: 5,246 B
APT-Manual-Installed: yes
APT-Sources: https://regolith-desktop.org/release-ubuntu-jammy-amd64 jammy/main amd64 Packages
Description: metapackage for Regolith desktop environment
 This package contains a minimal set of packages for a functional desktop.

$ i3 --version
i3 version 4.21 (2022-09-21) © 2009 Michael Stapelberg and contributors
davidgengenbach commented 1 year ago

I saw that i3-gaps-wm will be integrated in the i3 project! :partying_face: So this problem will solve itself over time.

My workaround for now (until either the hotfix is applied or i3 4.2.2 will be used in regolith) is:

sudo apt remove i3-gaps-wm
sudo apt install i3

⚠️ Please double-check the packages that get uninstalled!

Strictly not important - and only an opinion: The tiling_drag functionality was really, really annoying for me as I have muscle memory that lead to unintended tilings - all the heckin time. I do not understand why the i3 developers added such functionality without making it configurable behind a flag in the first place and had to do a hotfix to add the configueration parameter. That hotfix was not applied to regolith yet because of the i3 -> i3-gaps-wm -> regolith/i3-gaps-wm deployment chain I guess? That said: I am completely happy with i3/regolith and grateful to all the developers! :bowing_man:

ristomatti commented 1 year ago

@davidgengenbach I don't know if it's been just added but there seems to be a flag mentioned in the documentation https://i3wm.org/docs/userguide.html#config_tiling_drag?

sudo apt remove i3-gaps-wm --yes

You migth want to remove the --yes part. At least I won't dare answer Y to this prompt without knowing what would happen if regolith-desktop-complete is removed with it?

$ sudo apt remove i3-gaps-wm
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  libxcb-cursor0 regolith-rofi-config regolith-unclutter-xfixes
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED
  i3-gaps-wm i3-snapshot regolith-desktop-complete regolith-gnome-flashback regolith-i3-gaps-config
0 to upgrade, 0 to newly install, 5 to remove and 107 not to upgrade.
After this operation, 1,178 kB disk space will be freed.
Do you want to continue? [Y/n]  
kgilmer commented 1 year ago

@davidgengenbach , yes we'll get gaps features in the next i3 release I believe so I think that will be the real fix to your issue.

@ristomatti , judging from your terminal snippet I would guess you are on an older 1.x version of Regolith. Newer versions added the ability to swap between i3 and i3-gaps easily. This is not supported in 1.x and without some tinkering, it is not simple to use i3. I would suggest upgrading to the latest Regolith version and using i3 if you're impacted by the issue.

ristomatti commented 1 year ago

@kgilmer Correct. I had completely missed the new version....