Skip to content

Fix comprehensive GNOME theming issues with Gruvbox dark theme - #18

Draft
sanchit-lamba with Copilot wants to merge 3 commits into
masterfrom
copilot/fix-e62c744f-18a1-4671-8492-a14663f7d391
Draft

Fix comprehensive GNOME theming issues with Gruvbox dark theme#18
sanchit-lamba with Copilot wants to merge 3 commits into
masterfrom
copilot/fix-e62c744f-18a1-4671-8492-a14663f7d391

Conversation

Copilot AI commented Sep 2, 2025

Copy link
Copy Markdown
Contributor

This PR fixes critical theming issues where GNOME applications (Settings, Files/Nautilus) were displaying white theme instead of the configured Gruvbox dark theme, and UI elements appearing crooked or disproportionate.

Problem Description

The existing theming configuration had several gaps that prevented proper theme application:

  • Settings app and file manager showed white theme despite Gruvbox configuration
  • Qt applications weren't respecting the dark theme
  • UI elements appeared crooked and disproportionate
  • Inconsistent theming across different application types

Root Causes

  1. Missing Qt theming support - No Qt5/Qt6 theming packages or configuration
  2. Incomplete XDG portal setup - Missing GNOME-specific desktop portal for theme inheritance
  3. Insufficient dconf settings - Limited GNOME application-specific theme configuration
  4. Missing explicit GTK configuration files - Relying only on home-manager GTK module
  5. Incomplete environment variables - Missing essential theming environment variables

Changes Made

Enhanced System-wide Theme Module (modules/themes/gruvbox.nix)

  • Added comprehensive Qt theming packages: qt5ct, qt6ct, kvantum plugins
  • Added system-wide Qt configuration with proper platformTheme settings
  • Enhanced environment variables for cursor theming and Qt integration
  • Added fallback icon theme for better application compatibility

Improved Desktop Integration (hosts/common.nix)

  • Added xdg-desktop-portal-gnome for proper GNOME application theming
  • Configured default XDG portal settings for consistent theme inheritance

Comprehensive Home Configuration (home/san.nix)

  • Added explicit GTK configuration files (.gtkrc-2.0, gtk-3.0/settings.ini, gtk-4.0/settings.ini)
  • Enhanced dconf settings for GNOME applications (Nautilus, TextEditor, Terminal)
  • Added comprehensive session variables for GTK, Qt, and Wayland theming
  • Included debugging tools: dconf-editor, lxappearance, qt5ct/qt6ct

Enhanced GNOME Desktop (modules/desktop/gnome/default.nix)

  • Added system-wide GSettings overrides to force theme application
  • Enhanced GSettings override packages for better integration
  • Added essential debugging and configuration tools

Testing

After applying these changes:

  1. Rebuild system: sudo nixos-rebuild switch --flake .
  2. Rebuild home: home-manager switch --flake .
  3. Restart session: Log out/in or restart GNOME Shell

Expected Results

  • ✅ Settings app displays proper dark Gruvbox theme
  • ✅ Files (Nautilus) uses dark theme throughout interface
  • ✅ All GNOME applications show consistent theming
  • ✅ Qt applications respect the dark theme
  • ✅ UI elements are properly proportioned
  • ✅ Cursor theme applied consistently

Backwards Compatibility

All changes are additive and maintain compatibility with existing configurations. The enhanced theming provides multiple fallback mechanisms to ensure theme application works across different scenarios.

Additional Benefits

  • Comprehensive Qt application theming support
  • Debug tools for troubleshooting theme issues
  • Multiple configuration methods for maximum compatibility
  • Future-proof configuration supporting both current and upcoming GNOME versions

This fix provides a robust, comprehensive theming solution that addresses the root causes of GNOME theming inconsistencies.


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Sep 2, 2025

Copy link
Copy Markdown

Deploying nixos-config with  Cloudflare Pages  Cloudflare Pages

Latest commit: 87f6700
Status: ✅  Deploy successful!
Preview URL: https://39e6fbb2.nixos-config.pages.dev
Branch Preview URL: https://copilot-fix-e62c744f-18a1-46.nixos-config.pages.dev

View logs

Copilot AI and others added 2 commits September 2, 2025 20:59
Co-authored-by: sanchit-lamba <121615638+sanchit-lamba@users.noreply.github.com>
Co-authored-by: sanchit-lamba <121615638+sanchit-lamba@users.noreply.github.com>
Copilot AI changed the title [WIP] theming issues on my system, the settings page, the flie exploroer is not themed correctly it shows the white theme everywhere and everything is either crooked or disproportionate Fix comprehensive GNOME theming issues with Gruvbox dark theme Sep 2, 2025
Copilot AI requested a review from sanchit-lamba September 2, 2025 21:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants