Skip to content

fix hypridle.conf#641

Closed
marcinczenko wants to merge 4 commits into
basecamp:masterfrom
marcinczenko:fix/hypridle
Closed

fix hypridle.conf#641
marcinczenko wants to merge 4 commits into
basecamp:masterfrom
marcinczenko:fix/hypridle

Conversation

@marcinczenko
Copy link
Copy Markdown

@marcinczenko marcinczenko commented Aug 11, 2025

This PR is fixing two one things:

1. Makes omarchy bin visible to uwsm, by adding uwsm/env (see: https://wiki.hypr.land/Configuring/Environment-variables/). This makes the scripts omarchy-* scripts referred in ~/.config/hypr/hypridle.conf visible to hypridle - without this the screensaver will never start
2. Further aAdds a minor improvements to ~/.config/hypr/hypridle.conf so that the timing is correct (original config ignored that both screensaver and hyprlock break the system idle state and effectively reset idle counters), and also brings screen back after unlocking when it is caused by fingerprint (otherwise, the user would have black screen after unlocking with the fingerprint). Here, ideally we would also like to reset the idle counter here, but I do not see anyway of doing it easily.

Not sure if added the migrations correctly.

@dhh
Copy link
Copy Markdown
Member

dhh commented Aug 11, 2025

We have a number of these fixes in there already. I also don't think the extra comments on time carry their weight. Could you slim it down and we can look at what's left? Thanks!

@marcinczenko
Copy link
Copy Markdown
Author

Done

@marcinczenko marcinczenko force-pushed the fix/hypridle branch 2 times, most recently from 125b829 to a63db89 Compare August 11, 2025 17:40
@marcinczenko
Copy link
Copy Markdown
Author

I see that uwsm/env has been included in 1.13.0. What's left thus is basically hypridle.

@woopstar
Copy link
Copy Markdown
Contributor

Should this be rebased? @marcinczenko

@marcinczenko marcinczenko changed the title Add OMARCHY BIN to uwsm path and fixes hypridle.conf fixe hypridle.conf Sep 23, 2025
@marcinczenko marcinczenko changed the title fixe hypridle.conf fix hypridle.conf Sep 23, 2025
@marcinczenko
Copy link
Copy Markdown
Author

Sure, done.

Comment thread config/hypr/hypridle.conf
timeout = 330 # 5.5min
on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed
on-resume = hyprctl dispatch dpms on && brightnessctl -r # screen on when activity is detected
timeout = 30 # 5.5min
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Timeout is wrong here. Should stay 330

Copy link
Copy Markdown
Author

@marcinczenko marcinczenko Oct 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is intended. As described above in the description both screensaver and hyprlock break the system idle state and effectively reset idle counters - thus, the original setting results in the wrong timeouts.

At least assuming that my interpretation of what is intended here is correct:

  1. Screensaver fires after 2.5 mins of inactivity.
  2. After the screen saver has fired, we wait another 2.5 mins (thus 5 mins of inactivity in total) to show the lock screen.
  3. After the lock screen fires up we wait 30s before dimming the screen.

I tested this on FW13 and Beelink SER9 - both work now exactly as specified above. Tested again today.

With the original settings you will have:

  1. Screensaver after 2.5 mins
  2. Lock screen after 7.5 mins of inactivity (5 min after screen saver fires up)
  3. Dimming the screen 5.5 min after the lock screen shows up (thus after 13 mins of inactivity).

This is because screen saver and hyper lock both reset the idle state counters, so basically after screen saver fires, it will count the whole 300 seconds again before showing the lock screen - thus 300s after the screensaver. Same for the hyperlock - after lock screen shows, with the original setting it will wait whole 330 seconds before dimming the screen - it is hard to believe this was the intention...

Comment thread config/hypr/hypridle.conf
listener {
timeout = 300 # 5min
on-timeout = loginctl lock-session # lock screen when timeout has passed
timeout = 150 # 5min
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Timeout also wrong here. Should stray 300

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See comment above: #641 (comment).

Comment thread config/hypr/hypridle.conf
lock_cmd = omarchy-lock-screen # lock screen and 1password
before_sleep_cmd = loginctl lock-session # lock before suspend.
after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key twice to turn on the display.
on_unlock_cmd = hyprctl dispatch dpms on # make sure the screen is on when unlocking with fingerprint
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I haven't been able to replicate a need for this. I tried after screen was off to authenticate with the fingerprint reader, and it correctly unlocked + turned on the screen.

dhh added a commit that referenced this pull request Jan 3, 2026
@dhh dhh closed this Jan 3, 2026
MarioC-12 pushed a commit to MarioC-12/omarchy that referenced this pull request Jan 18, 2026
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.

3 participants