Skip to content

Troubleshooting

Must read

Prerequisite for environment variable

The environment variable $ILLOGICAL_IMPULSE_VIRTUAL_ENV must be set properly, else the AGS config will not work.

We’ve made a default config in ~/.config/hypr/hyprland/env.conf but you need to make sure this config file is included in ~/.config/hypr/hyprland.conf. A restart for Hyprland is often required.

You may run ./diagnose to recheck its value. The output should contain something like this:

[===diagnose===] declare -p ILLOGICAL_IMPULSE_VIRTUAL_ENV
declare -x ILLOGICAL_IMPULSE_VIRTUAL_ENV="/home/myself/.local/state/ags/.venv"
[---SUCCESS---]

Where myself represents the actual username. It should not be something like below:

[===diagnose===] declare -p ILLOGICAL_IMPULSE_VIRTUAL_ENV
./diagnose: line 30: declare: ILLOGICAL_IMPULSE_VIRTUAL_ENV: not found
[---EXIT 1---]

For the case above:

  • It’s very likely that you’re still using old ~/.config/hypr/hyprland.conf, and forgot to replace its content with ~/.config/hypr/hyprland.conf.new. Just run cd ~/.config/hypr;mv hyprland.conf{,.old};mv hyprland.conf{.new,}.
  • Ensure you have restarted Hyprland.

Or

[===diagnose===] declare -p ILLOGICAL_IMPULSE_VIRTUAL_ENV
declare -x ILLOGICAL_IMPULSE_VIRTUAL_ENV="\$XDG_STATE_HOME/ags/.venv"
[---SUCCESS---]

For the case above, the $XDG_STATE_HOME is not expanded, which seems really weird (maybe a Hyprland bug?).

  • Make sure that when you run install.sh, you have not skipped and have properly executed the install-python-packages(), which should give you a non-empty ~/.local/state/ags/.venv.
  • You may directly specify its value in ~/.config/hypr/custom/env.conf as:
env = ILLOGICAL_IMPULSE_VIRTUAL_ENV, /home/myself/.local/state/ags/.venv

And remember to replace myself with actual username.

Actions you should try at least once

  • Restart Hyprland, or reboot your system, which is necessary for applying environment variable changes.
  • If things related to AGS (i.e. the “bars”) have problem, switch a wallpaper by pressing Super+Ctrl+T and choosing a picture in prompted window. It’s not 100% useful though, especially when your installation or environment variable has problem in the first place.
  • The script install.sh is idempotent. You may run it again anytime as you like.

How to get logs

  • If there’s a problem with something, fire up a terminal (Super+T) and run it in shell. Look for errors/warnings that could be problematic.
  • The bar, sidebars, cheatsheet, etc. are powered by AGS. (Tip: It’s not waybar.) Open a terminal and run pkill agsv1; agsv1.

Misc information

  • Search around this wiki (especially this page), and also the existing issues and discussions.
  • Use some common sense. If you can’t figure out, open a discussion for help.

Some problems & solutions/workarounds

AGS / bars theme/icons/CSS breaks/not working

Reference: end-4/dots-hyprland#1010

Switch a wallpaper by pressing Super+Ctrl+T and choosing a picture in prompted window.

icon of some application missing in dock/overview

Reference: end-4/dots-hyprland#497 comment end-4/dots-hyprland#487

Please try the following solutions/workarounds:

Use gsettings to set icon theme

For example Papirus (recommended, as it covers lots of applications):

Terminal window
gsettings set org.gnome.desktop.interface icon-theme Papirus

Of course you must install it first, for Arch Linux use sudo pacman -S papirus-icon-theme.

Set substitutions in AGS user_options.js

Edit ~/.config/ags/user_options.js, add entry inside icons.substitutions, for example:

'icons': {
substitutions: {
'footclient': "foot",
},
},

Set icon search path

This is suitable for you have icon file seperately.

Modify the icons.searchPaths inside ~/.config/ags/user_options.js properly.

Music controls don’t show up

Reference: end-4/dots-hyprland#168

  • Make sure your player has Mpris support (a list: Arch Wiki link)
  • If it’s a browser, install the Plasma Integration extension: Firefox or Chromium and plasma-browser-integration (this is for Arch)

Then, when firefox is playing media, the following command

Terminal window
dbus-send --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.ListNames|grep mpris

the output should include

string "org.mpris.MediaPlayer2.plasma-browser-integration"

Only “plasma-browser-integration” names will work. others won’t.

If for some reason, firefox still does not have dbus org.mpris.MediaPlayer2.plasma-browser-integration showing up, consider the following steps:

  1. Create a new profile using firefox --ProfileManager.
  2. Launch firefox with the newprofile and install the Plasma Integration extension again.
  3. Restart firefox with the new profile and try again.
  • Note: playerctl -F metadata may also be helpful for debugging.

Icons don’t show up. I get weird texts instead.

  • You must be missing the Material Symbols font. You can download the font manually then put it in ~/.local/share/fonts
  • Note that it’s Material Symbols, not Material Icons!
  • Remember to fc-cache -fv to refresh font cache. A reboot will also work.

loginctl lock-session does nothing

Reference: end-4/dots-hyprland#278

According to this post on Arch Linux Forums:

Something needs to listen to systemd-logind’s dbus signals for this to work.

Hypridle is capable to be this “thing”, which means you should ensure that it is running, and then loginctl lock-session will send signal to hypridle, as a result hypridle will lock the screen by executing the $lock_cmd defined in its config ~/.config/hypr/hypridle.conf.

See Hyprland Wiki for more.

Terminal: Why can’t I interrupt with Ctrl+C?

  • In foot, Ctrl+C is configured to copy text. To interrupt, use Ctrl+Shift+C
  • Don’t want this?
    • To remove this binding: in ~/.config/foot/foot.ini, comment or remove the line that says clipboard-copy=Control+c
    • Maybe if you use terminal apps a lot, it’d be a good idea to use a more feature-rich terminal

Random freeze

See https://github.com/end-4/dots-hyprland/issues/746 .

Deprecated problems solutions&workarounds

The content below are not useful anymore cuz things have been changed.

Still keep them here in case we need them again in future.

AGS installation failed

PermissionError: [Errno 13] Permission denied: '/usr/local/lib/libgvc.so'

Run this to check whether this file belongs to any package (very likely not, because it’s inside /usr/local)

Terminal window
pacman -Qo /usr/local/lib/libgvc.so

If not, then it’s probably safe to just remove it. To do so, run this:

Terminal window
sudo mv /usr/local/lib/libgvc.so /tmp/

Other errors

Delete ./cache/ags and install it again.

Hyprland installation failed

Sometimes the AUR package doesn’t install all the dependencies for you. Hyprland is always evolving and this happens when something new is added.

  • Check the logs and see if it tells you to install something, then attempt to build it again.
  • Note: You might have to clear ~/.cache/yay.