this post was submitted on 01 May 2024
17 points (87.0% liked)

Linux

48655 readers
1989 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Basically I am using this gtk.css file in ~/.config/gtk-4.0/gtk.css but it's weird that the sidebar is not themed correctly. If anyone knows about this, please do tell. My only lead at this moment is to find the class and add it in gtk.css file. For some reason I can't install the gtk inspector app, So if anyone has it already or knows the classname, please help.

gtk.css file ->

@define-color accent_color #fe8019;
@define-color accent_bg_color #d65d0e;
@define-color accent_fg_color #ebdbb2;

@define-color destructive_color #8ec07c;
@define-color destructive_bg_color #689d6a;
@define-color destructive_fg_color #ebdbb2;

@define-color success_color #b8bb26;
@define-color success_bg_color #98971a;
@define-color success_fg_color #ebdbb2;

@define-color warning_color #fabd2f;
@define-color warning_bg_color #d79921;
@define-color warning_fg_color #ebdbb2;

@define-color error_color #fb4934;
@define-color error_bg_color #cc241d;
@define-color error_fg_color #ebdbb2;

@define-color window_bg_color #282828;
@define-color window_fg_color #ebdbb2;

@define-color view_bg_color #282828;
@define-color view_fg_color #ebdbb2;

@define-color headerbar_bg_color #282828;
@define-color headerbar_fg_color #ebdbb2;
@define-color headerbar_border_color #ebdbb2;
@define-color headerbar_backdrop_color @window_bg_color;
@define-color headerbar_shade_color rgba(0, 0, 0, 0.36);

@define-color card_bg_color rgba(255, 255, 255, 0.08);
@define-color card_fg_color #ebdbb2;
@define-color card_shade_color rgba(0, 0, 0, 0.36);

@define-color dialog_bg_color #3c3836;
@define-color dialog_fg_color #ebdbb2;

@define-color popover_bg_color #3c3836;
@define-color popover_fg_color #ebdbb2;

@define-color shade_color rgba(0, 0, 0, 0.36);
@define-color scrollbar_outline_color rgba(0, 0, 0, 0.5);

Sidebar ->

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 11 points 7 months ago* (last edited 7 months ago) (1 children)

Defining sidebar_bg_color does not work?

@define-color sidebar_bg_color 	
@define-color sidebar_fg_color 	
@define-color sidebar_backdrop_color 	
@define-color sidebar_border_color 	
@define-color sidebar_shade_color

@define-color secondary_sidebar_bg_color 	
@define-color secondary_sidebar_fg_color 	
@define-color secondary_sidebar_backdrop_color 	
@define-color secondary_sidebar_border_color 	
@define-color secondary_sidebar_shade_color

see libadwaita named colors

GTK Inspector comes with GTK, you don't need to install it.

Enable it with gsettings

gsettings get org.gtk.Settings.Debug enable-inspector-keybinding true

so you can invoke it either by running GTK_DEBUG=interactive application-name-here or, when alredy using the application, via Control + Shift + I/Control + Shift + D

[–] mobsenpai 6 points 7 months ago* (last edited 7 months ago) (1 children)

That's it. Thank you for this.

[–] [email protected] 3 points 7 months ago (1 children)

You're most certainly welcome.

I wanted to add on this, for anyone else stumbling across this post and struggling with sidebar theming: The above will work 90% of the time, but in case your some-random-theme.css overrides @sidebar_, or doesn't follow the naming convention to begin with, search your gtk.css for .sidebar-pane, which should be the actual css selector for @sidebar_, and .content-pane for @secondary-sidebar_.

[–] mobsenpai 1 points 7 months ago (1 children)

Gotcha. One last thing. Do I need to define helper colors as well? currently I am not doing that, but it is defined in the adw styleguide. Ain't no way gruvbox has that much color varieties so what's your suggestion?

[–] [email protected] 2 points 7 months ago* (last edited 7 months ago) (1 children)

Nah, unless you're unhappy with the current outcome, you can leave it as it is.

Changes in .config/gtk-4.0/gtk.css will be applied on top of the stylesheet, so whatever you don't override there, will fall back to the default, that's why your sidebar previously went full Adwaita light mode.

After taking a brief look at the libadwaita source, as far as I can see, helper colors are a special case anyways, @borders as well as border_coloris used exclusively in the scssfiles (which the gtk.css is generated from), whereas the gtk.css for some reason doesn't get back to the generic name, but uses the assigned value alpha(currentColor,0.15) - which doesn't help your case at all.

To actually change @borders, you would need to modify its value in .scss and regenerate the .css then.

For your other point, there's no need to introduce a new color for this, since the helper color is an alpha value derived from your foreground color (that's what currentColor is referring to), so if you change _fg_color in gtk.css, @borders will change along with it.

[–] mobsenpai 2 points 7 months ago

Alright. Thank you so so so much.