move overkays to modules

This commit is contained in:
jopejoe1 2024-01-02 19:32:20 +01:00
parent 60ccfe7539
commit 536fc32216
8 changed files with 59 additions and 49 deletions

View file

@ -12,6 +12,7 @@
./minecraft-server
./moodle-dl
./nix
./overlays
./plasma
./plasma/6.nix
./printing

View file

@ -41,6 +41,10 @@ in {
];
};
nixpkgs = {
config.allowUnfree = true;
};
environment.systemPackages = with pkgs; [
deploy-rs
nixfmt

View file

@ -0,0 +1,55 @@
diff --git a/src/adw-style-manager.c b/src/adw-style-manager.c
index 073e7890..85d96259 100644
--- a/src/adw-style-manager.c
+++ b/src/adw-style-manager.c
@@ -229,6 +229,22 @@ notify_high_contrast_cb (AdwStyleManager *self)
g_object_notify_by_pspec (G_OBJECT (self), props[PROP_HIGH_CONTRAST]);
}
+static void
+adw_style_manager_theme_changed(GSettings *settings, const char *key, GdkDisplay *display)
+{
+ char *theme = g_settings_get_string(settings, "gtk-theme");
+ if (!theme) {
+ theme = "Adwaita-empty";
+ }
+ gboolean is_dark_variant = NULL != strstr(theme, "-dark");
+
+ g_object_set (gtk_settings_get_for_display (display),
+ "gtk-theme-name", theme,
+ "gtk-application-prefer-dark-theme", is_dark_variant,
+ NULL);
+}
+
+
static void
adw_style_manager_constructed (GObject *object)
{
@@ -254,19 +270,14 @@ adw_style_manager_constructed (GObject *object)
G_CONNECT_SWAPPED);
if (!adw_is_granite_present () && !g_getenv ("GTK_THEME")) {
- g_object_set (gtk_settings_get_for_display (self->display),
- "gtk-theme-name", "Adwaita-empty",
- NULL);
-
- self->provider = gtk_css_provider_new ();
- gtk_style_context_add_provider_for_display (self->display,
- GTK_STYLE_PROVIDER (self->provider),
- GTK_STYLE_PROVIDER_PRIORITY_THEME);
-
- self->colors_provider = gtk_css_provider_new ();
- gtk_style_context_add_provider_for_display (self->display,
- GTK_STYLE_PROVIDER (self->colors_provider),
- GTK_STYLE_PROVIDER_PRIORITY_THEME);
+ GSettingsSchemaSource *schema_source =
+ g_settings_schema_source_get_default();
+ GSettingsSchema *schema = g_settings_schema_source_lookup(
+ schema_source, "org.gnome.desktop.interface", true);
+ GSettings *interface_settings = g_settings_new_full(schema, NULL, NULL);
+
+ adw_style_manager_theme_changed(interface_settings, "gtk-theme", self->display);
+ g_signal_connect (interface_settings, "changed", G_CALLBACK (adw_style_manager_theme_changed), self->display);
}
self->animations_provider = gtk_css_provider_new ();

View file

@ -0,0 +1,52 @@
{ config, lib, self, ... }:
let cfg = config.jopejoe1.overlays;
in {
options.jopejoe1.overlays = {
enable = lib.mkEnableOption "Enable Overlays";
};
config = lib.mkIf cfg.enable {
nixpkgs = {
overlays = [
self.inputs.prismlauncher.overlays.default
self.inputs.nur.overlay
(_self: super: rec {
tela-icon-theme = super.tela-icon-theme.overrideAttrs
(_old: { src = self.inputs.tela-icon-theme; });
prismlauncher = super.prismlauncher.overrideAttrs (old: {
patches = (old.patches or [ ]) ++ [
self.inputs.prism-game-options-patch
./prism-ftb.patch
];
});
#noto-fonts-color-emoji = pkgs.noto-fonts-color-emoji_withExtraFlags;
libadwaita = super.libadwaita.overrideAttrs (old: {
patches = (old.patches or [ ])
++ [ ./adwaita-theming-support.patch ];
doCheck = false;
});
discord = (super.discord.overrideAttrs (old: {
desktopItem = old.desktopItem.override
(old: { exec = old.exec + " --disable-gpu-sandbox"; });
})).override {
withOpenASAR = true;
withVencord = true;
withTTS = true;
};
catppuccin-plymouth =
super.catppuccin-plymouth.override { variant = "frappe"; };
})
];
};
};
}

File diff suppressed because it is too large Load diff