GTK cursor theme dosent work
laycookie opened this issue · comments
Hyprland Version
System/Version info
❯ hyprctl systeminfo
Hyprland, built from branch at commit 67f47fbdccd639502a76ccb3552a23df37f19ef8 ().
Date: 2024-04-14
Tag: , commits: @COMMITS@
flags: (if any)
System Information:
System name: Linux
Node name: nixos
Release: 6.6.26
Version: #1-NixOS SMP PREEMPT_DYNAMIC Wed Apr 10 14:36:08 UTC 2024
GPU information:
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GP104 [GeForce GTX 1080] [10de:1b80] (rev a1) (prog-if 00 [VGA controller])
os-release: ANSI_COLOR="1;34"
BUG_REPORT_URL="https://github.com/NixOS/nixpkgs/issues"
BUILD_ID="24.05.20240412.cfd6b5f"
DOCUMENTATION_URL="https://nixos.org/learn.html"
HOME_URL="https://nixos.org/"
ID=nixos
IMAGE_ID=""
IMAGE_VERSION=""
LOGO="nix-snowflake"
NAME=NixOS
PRETTY_NAME="NixOS 24.05 (Uakari)"
SUPPORT_URL="https://nixos.org/community.html"
VERSION="24.05 (Uakari)"
VERSION_CODENAME=uakari
VERSION_ID="24.05"
plugins:
Bug or Regression?
Bug
Description
My cursor defaults to a standard cursor when I hover over most of the apps with the exception of swaybar for whatever reason.
How to reproduce
I have attempted to set my cursor theme on nixos trough home manager and gtk with the following nix file.
gtk = {
enable = true;
iconTheme = {
name = "Yaru-magenta-dark";
package = pkgs.yaru-theme;
};
theme = {
name = "Tokyonight-Dark-B-LB";
package = pkgs.tokyo-night-gtk;
};
cursorTheme = {
name = "Bibata-Modern-Classic";
package = pkgs.bibata-cursors;
};
};
I also had manually set my env variables.
HYPRCURSOR_THEME="Bibata-Modern-Classic";
HYPRCURSOR_SIZE="24";
XCURSOR_THEME="Bibata-Modern-Classic";
XCURSOR_SIZE="24";
My gtk script previously worked even without the env variables but after I updated from version 0.35.0 it stopped working.
Crash reports, logs, images, videos
No response
HYPRCURSOR_THEME="Bibata-Modern-Classic";
you can't use an xcursor theme with hyprcursor. See https://wiki.hyprland.org/Hypr-Ecosystem/hyprcursor/
If you don't want to use hyprcursor, use misc:enable_hyprcursor = false
@vaxerski Thank you for your response, sadly adding misc:enable_hyprcursor = false
did not solve my issue. I also have tried removing HYPRCURSOR
env variables but that also didn't have any effect.
There is also small contradiction in your statement and the wiki, as the wiki states that "if there is no hyprcursor themes installed it will fall back to XCursor" which sounds like it should happen automatically.
Im not sure how important that is but no matter if I have misc:enable_hyprcursor = false
or don't, I can still get my cursor to show up with the correct theme if I just hover over my swaybar. Which wouldn't make much sense if my theme isnt set in some form.
looks like some nix shenanigans, tbh. Have you tried setting XCURSOR_THEME inside the hyprland config?
@vaxerski My apologies I'm relatively new to Linux so I'm not exactly sure what you mean by that. Are you talking about setting up a system variable trough the hypr.conf or am I miss understanding something?
If you are talking about adding exec-once = hyprctl setcursor Bibata-Modern-Classic 24
then yes I have attempted to add it but this has also not resulted in no change.
You should use home.pointerCursor
to set your cursor with Home Manager instead of the GTK module as it applies it to non-GTK apps as well.
You should use
home.pointerCursor
to set your cursor with Home Manager instead of the GTK module as it applies it to non-GTK apps as well.
I tried adding this to my home.nix file but again nothing has changes.
home = {
username = "Dennis";
homeDirectory = "/home/Dennis";
pointerCursor.gtk.enable = "true";
pointerCursor.name = "Bibata-Modern-Classic";
pointerCursor.package = pkgs.bibata-cursors;
};