You are not logged in.

#1 2020-03-27 22:15:50

ispanos
Member
From: Athens, Greece
Registered: 2019-06-18
Posts: 23

Flatpak gtk theme | xsettingsd [ Solved ]

I spend some time trying to find the proper way to set 'Adwaita-dark' as the gtk theme, on packages installed via Flatpak.

I am on i3-gaps. This is my gtk-3.0/settings.ini.
gsettings get org.gnome.desktop.interface gtk-theme outputs 'Adwaita-dark'.
I installed org.gtk.Gtk3theme.Adwaita-dark and org.gtk.Gtk3theme.Adwaita-dark via flatpak but the theme it was using was Adwaita (light).

I installed xsettingsd because I found this, and I added only 1 line in the settings file.

Net/ThemeName "Adwaita-dark"

I started xsettingsd from a terminal and the theme was now Adwaita-dark on Flatpaks, but my native packages changed to the light theme. Did I find a bug, or did  I do something wrong?

One way I found, is to copy my gtk settings to all flatpak config folders individually, but that's more like a bodge.

How am I supposed to properly set the dark theme in Flatpaks?

EDIT [29/03]:
Since I don't see anyone saying something, I decided to remove 'xsettingsd' and I just added a small function in my .zshrc. I just run it after installing a new gtk package from flatpak, and it works. (Just make sure that you have that theme installed as a flatpak as-well.

 
flatpak_theme() {
	for package in $(ls "$HOME/.var/app/"); do
		[ -d "$HOME/.var/app/$package/config/gtk-3.0" ] ||
		/usr/bin/ln -s "$HOME/.config/gtk-3.0" "$HOME/.var/app/$package/config/"
	done
}

EDIT: see EDIT: # 31/03/2020 for solution.

Last edited by ispanos (2020-03-31 19:23:12)

Offline

#2 2020-03-29 20:48:41

elvisvinicius
Member
From: Londrina
Registered: 2015-06-05
Posts: 6
Website

Re: Flatpak gtk theme | xsettingsd [ Solved ]

Hi. smile

You don't need to start xsettingsd manually. It runs automatically when you start your system.

I can't say about Gnome, but with current Plasma, changes to Plasma's theme settings are automatically applied to most GTK programs. There may be some problems with the fonts, but that's where xsettingsd helps.
To copy the new settings of themes and fonts from your desktop to xsetingsd, just run:

dump_xsettings > $HOME/.config/xsettingsd/xsettingsd.conf

I run flatpak programs like MyPaint, and with xsettingsd, both theme and fonts are perfect.


“Simplicity is the Ultimate Sophistication”
- Leonardo da Vinci

Offline

#3 2020-03-30 20:35:32

ispanos
Member
From: Athens, Greece
Registered: 2019-06-18
Posts: 23

Re: Flatpak gtk theme | xsettingsd [ Solved ]

elvisvinicius wrote:

Hi. smile

You don't need to start xsettingsd manually. It runs automatically when you start your system.
...
To copy the new settings of themes and fonts from your desktop to xsetingsd, just run:

dump_xsettings > $HOME/.config/xsettingsd/xsettingsd.conf

...

xsettingsd doesn't start automatically. If I run dump_xsettings, I get:

No current owner for _XSETTINGS_S0 selection

If I start xsettingsd without a config file, I get

xsettingsd: Couldn't find config file. Tried the following:
  /home/yiannis/.xsettingsd
  /home/yiannis/.config/xsettingsd/xsettingsd.conf
  /etc/xsettingsd/xsettingsd.conf

If I run it with an empty file, dump_xsettings doesn't output anything. Otherwise it just
outputs whatever I added in my config file myself.



EDIT: # 31/03/2020
In case I delete this file from my github, I had these settings in my0 gtk-3.0/settings.ini

[Settings]
gtk-theme-name=Adwaita
gtk-application-prefer-dark-theme=true
gtk-icon-theme-name=Adwaita

I don't know if its an Archlinux thing, or it works like that on other distros, but I never installed
'Adwaita-dark' (gnome-themes-extra). I was using the dark version of the 'Adwaita'
theme. So when xsettingsd run, it couldn't use the theme 'Adwaita-dark', and it
defaulted to 'Adwaita' (the light version).

TLDR: I was missing the native package that provides 'Adwaita-dark'

gnome-themes-extra

And had installed 'Adwaita-dark' with Flatpak, so it was working properly with flatpaks.

Last edited by ispanos (2020-03-31 19:22:08)

Offline

Board footer

Powered by FluxBB