Package Details: gtk3-nocsd-git 3.0.8+2.r84.20221015.a356bf7-2

Git Clone URL: https://aur.archlinux.org/gtk3-nocsd-git.git (read-only, click to copy)
Package Base: gtk3-nocsd-git
Description: A LD_PRELOAD library to disable gtk+ 3 client side decoration.
Upstream URL: https://github.com/fredldotme/gtk3-nocsd
Licenses: LGPL2.1
Conflicts: gtk3-nocsd
Provides: gtk3-nocsd
Submitter: dreieck
Maintainer: dreieck
Last Packager: dreieck
Votes: 3
Popularity: 0.042367
First Submitted: 2023-07-23 16:24 (UTC)
Last Updated: 2023-07-24 08:57 (UTC)

Pinned Comments

dreieck commented on 2023-07-23 16:50 (UTC) (edited on 2023-08-25 07:16 (UTC) by dreieck)

Two notes
Issues with gnome apps

Most or all Gnome-Apps are gtk4 based now. For this this hack of course does not work, and with GTK_CSD=0 makes the client side buttons vanish while still not have the window manager taking them over.

How to activate

In order to automatically preload libgtk3-nocsd.so at X session startup, copy /usr/share/doc/gtk3-nocsd/xinit/30-gtk3-nocsd.sh to /etc/X11/xinit/xinitrc.d/30-gtk3-nocsd.sh. Otherwise, individual programmes can be run with GTK3 client side decoration disabled by running them as gtk3-nocsd <command> [<command arguments>]. See man 1 gtk3-nocsd.

Latest Comments

1 2 Next › Last »

Ralf_Mardorf commented on 2024-01-31 14:54 (UTC)

Obviously fixed by migrating from dbus-broker-units and dbus-broker back to dbus-daemon-units.

Ralf_Mardorf commented on 2024-01-31 08:52 (UTC)

False alarm, I have now installed gtk3 only and no problems with a new user account, but my old user account still has this problem. Some config must still be fishy.

Ralf_Mardorf commented on 2024-01-31 05:00 (UTC) (edited on 2024-01-31 05:06 (UTC) by Ralf_Mardorf)

I have been experiencing serious problems for a few days now, see How to disable gtk3 client side decoration?.

MarsSeed commented on 2023-08-25 11:29 (UTC)

@morsmortium, I recommend that you try out gtk3-classic.

(Or gtk3-classic-xfce, if you are on a current devel version of Xfce and testing it under Wayland.)

The separate gtk3-nocsd preload hook is no longer under active development, but the gtk3-classic fork is, and it already contains a working no-CSD patch, along with many other reverts and refinements targeted for non-GNOME desktops.

morsmortium commented on 2023-08-24 22:36 (UTC)

On wayland putting

export GTK_CSD=0
export LD_PRELOAD=libgtk3-nocsd.so.0

in ~/.profile works

dreieck commented on 2023-07-30 08:40 (UTC) (edited on 2023-07-30 08:43 (UTC) by dreieck)

@MarsSeed:

here is a more robust successor solution: the lah7/gtk3-classic project.

I have tested gtk3-classic, but it still gives the window menu buttons within the window and does not restore decorations by the window manager

I remember that gtk3-nocsd-git did look more 'classic' than gtk3-classic

It was my fault; unset GTK_CSD (!) does restore window decorations.

MarsSeed commented on 2023-07-30 00:13 (UTC)

Now you mention it, I remember that gtk3-nocsd-git did look more 'classic' than gtk3-classic, hehe! But in the end I settled with the latter, as that does not give me any headache with bugs. I've been using it for the past one year and it was a completely smooth ride so far.

I don't have any desktop application / C / C++ etc. developer knowledge, so I cannot help improve that project. I don't know what it would take to reincorporate the original window manager decorations in gtk3-classic.

dreieck commented on 2023-07-29 22:44 (UTC) (edited on 2023-07-30 08:17 (UTC) by dreieck)

Ahoj @MarsSeed,

thank you for mentioning gtk3-classic!

I did not know it until now. Great!

I still want to provide gtk3-nocsd though, because that allows to have gtk3 from official Arch Linux/ Artix Linux repositories installed.

At least "↗ chaotic-aur" has gtk3-classic precompiled.

I have tested gtk3-classic, but it still gives the window menu buttons within the window and does not restore decorations by the window manager (tested with gedit, where gtk3-nocsd-git does restore window decorations.)

Regards!

MarsSeed commented on 2023-07-29 21:29 (UTC)

Hi @dreieck,

I see you have revived this old no-CSD workaround for gtk3.

I've used it earlier on KDE Plasma, but had some issues with it, and it didn't work in some cases.

But there is a more robust successor solution: the lah7/gtk3-classic project. It applies patches on top of the gtk3 code, and tests the build via GitHub Actions.

There are AUR packages for this variant of gtk3:

The upstream project specifically mentions Xfce and MATE desktops as their target use case.

Have you tried this yet? I recommend that you do, if you haven't.

It works without any problems for me on KDE.

It does not eliminate the hamburger menu if an application sticks to it, but it still exposes a standard menu bar if such exists in the app.

The project also welcomes PR's.