Configure GTK

Add new gtk configuration.

Use tmpfiles to provide the generated sources like themes to the system.
Also use for desktop files and remove old no longer needed readme entry.
This commit is contained in:
Daniel Siepmann 2022-05-20 15:39:28 +02:00
parent a880aeb7e4
commit 2e89e7f369
Signed by: Daniel Siepmann
GPG key ID: 33D6629915560EF4
3 changed files with 60 additions and 19 deletions

View file

@ -84,6 +84,10 @@
inherit pkgs;
};
gtk = import ./home/gtk.nix {
inherit pkgs;
};
services = {
dunst = import ./home/services/dunst.nix;
mailhog.enable = true;
@ -91,20 +95,30 @@
nextcloud-client.enable = true;
};
systemd = {
systemd.user = {
# Temporary fix to OpenGL issue by using GLX.
# Start nextcloud without GLX support which is fine for me for noe.
# I don't have a better way for now, then using `pkgs.lib.mkForce` and setting whole value (repeating from modules/services/nextcloud-client.nix).
user.services.nextcloud-client.Service.Environment = pkgs.lib.mkForce [
"PATH=${config.home.profileDirectory}/bin"
"QT_XCB_GL_INTEGRATION=none"
];
services = {
# Temporary fix to OpenGL issue by using GLX.
# Start nextcloud without GLX support which is fine for me for noe.
# I don't have a better way for now, then using `pkgs.lib.mkForce` and setting whole value (repeating from modules/services/nextcloud-client.nix).
nextcloud-client.Service.Environment = pkgs.lib.mkForce [
"PATH=${config.home.profileDirectory}/bin"
"QT_XCB_GL_INTEGRATION=none"
];
batteryicon = import ./home/services/batteryicon.nix {
inherit pkgs;
};
user.services.batteryicon = import ./home/services/batteryicon.nix {
inherit pkgs;
};
tmpfiles.rules = [
"L ${config.home.homeDirectory}/.themes - - - - ${config.home.homeDirectory}/.nix-profile/share/themes"
"L ${config.home.homeDirectory}/.icons - - - - ${config.home.homeDirectory}/.nix-profile/share/icons"
"L ${config.home.homeDirectory}/.local/share/applications - - - - ${config.home.homeDirectory}/.nix-profile/share/applications"
];
};
}

36
home/gtk.nix Normal file
View file

@ -0,0 +1,36 @@
{ pkgs }:
{
enable = true;
theme = {
package = pkgs.qogir-theme;
name = "Qogir-Ubuntu-Dark";
};
iconTheme = {
package = pkgs.qogir-icon-theme;
name = "Qogir-ubuntu-dark";
};
cursorTheme = {
package = pkgs.qogir-icon-theme;
name = "Qogir-ubuntu-dark";
size = 16;
};
font = {
package = pkgs.roboto-mono;
name = "Roboto Mono";
size = 14;
};
gtk3.extraConfig = {
gtk-application-prefer-dark-theme = 1;
};
gtk4.extraConfig = {
gtk-application-prefer-dark-theme = 1;
};
}

View file

@ -75,15 +75,6 @@ Manual changes
List of manual needed changes for various reasons.
* .desktop files seem not to be supported by home-manager yet.
They need to manually be linked, e.g.:
cd ~/.local/share/applications && ln -s ~/.nix-profile/share/applications/* .
Or link whole folder:
cd ~/.local/share && ln -s ~/.nix-profile/share/applications
* Allow gdm3 to use xsessions as login.
Add the following content as `/usr/share/xsessions/xsession.desktop`: