she/they

  • 0 Posts
  • 3 Comments
Joined 2 years ago
cake
Cake day: July 1st, 2023

help-circle

  • GNOME theming discussions are weird. A lot of people will peddle cargo culted bad (broken) approaches when asked about it, but honestly it’s not that complicated¹, just restrictive:

    • Use gsettings [get|set] org.gnome.desktop.interface gtk-theme [new value] to set the theme that GTK3 apps will load. Libadwaita apps will ignore this setting.

    • Use gsettings [get|set] org.gnome.desktop.interface color-scheme [prefer-light|prefer-dark|default] to control whether Libadwaita apps (and GNOME shell) will display in dark mode. GTK3 apps will ignore this setting.

      • prefer-light makes everything light mode.
      • prefer-dark makes everything dark mode.
      • default makes apps light mode but the panel will stay dark.
    • If you insist on theming Libadwaita apps, put the theme in ~/.config/gtk-4.0/gtk.css. You can also have add an @import directive there to import a theme. Note that this file is only loaded at startup, so using this feature means that GTK4 apps can no longer respond to the dark mode toggle.²

    All of the applications that promise to help in theming GTK/GNOME (regardless of whether you’re talking about Tweaks, Refine, the theming settings of other DEs, Gradience, etc.) just flip some combination of these settings, mostly the first two.³

    ¹ It might seem complicated based on the length of this comment, but trust me that Qt is worse.

    ² The newest GTK version has media selectors, so if all of your applications are already updated to use the new GTK and your theme is updated to use media selectors then dark mode toggles should actually work now. Mine unfortunately haven’t.

    ³ A handful (mostly random scripts from GitHub, but also more reputable stuff like home-manager) will also try some wrong ways:

    • Setting the GTK_THEME environment variable will prevent applications from loading the default Adwaita stylesheet completely, which will break all kinds of things.

    • You can also put a theme at ~/.config/gtk-3.0/gtk.css, but this does nothing you can’t do with gsettings except preventing you from changing the theme without restarting all your apps.


  • Generally, no. You can’t install Linux onto a Windows filesystem (NTFS). What you can do is one of these things:

    • Back up the files you care about (Desktop, Documents, Downloads, whatever) in Google Drive, Dropbox, a thumb drive or anywhere else that you can access later. Then you can tell the Linux installer to wipe Windows and afterwards put your important files back.

    • If you have a spare SSD you can put Linux on that. Then you can access the Windows drive from Linux. You might have to install an NTFS driver first, and you will definitely need to configure Windows to shut down properly instead of secretly hibernating, because that leaves the filesystem in a weird state and Linux won’t be able to open it.

    • If you don’t have a spare SSD you can still do the same trick by shrinking the Windows/NTFS filesystem and installing Linux in the now-free space on the same drive. Among Sysadmins shrinking filesystems has a bad reputation because at least historically it could (rarely) fail and destroy all your data, so I would not recommend you do it but it is possible and in most cases it works without issues.

    Each of these comes with some risk - You might forget to copy over important files onto your thumb drive, or you might make a mistake in the Linux installer and accidentally delete Windows when you didn’t mean to. That said you should already have a backup strategy, because your PC could also just spontaneously die and lose the data even if you do nothing. If you have backups and you’ve tested them to know that you really can restore all the files you care about, then even that first option stops looking very scary.