swayidle
Idle management daemon for Wayland (by swaywm)
Ananicy
Ananicy - is Another auto nice daemon, with community rules support (Use pull request please) (by nefelim4ag)
swayidle | Ananicy | |
---|---|---|
11 | 14 | |
497 | 561 | |
1.8% | - | |
2.6 | 0.0 | |
18 days ago | about 1 year ago | |
C | Python | |
MIT License | GNU General Public License v3.0 only |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
swayidle
Posts with mentions or reviews of swayidle.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-05-14.
-
runwhenidle - Linux utility that can automatically pause a computationally-intensive command when user is in front of a computer and resume it when they are away.
X11 is not necessary. For example: swayidle.
-
Sway 1.8-rc2 has been released!
14 minutes ago: swayidle 1.8.0
-
Why do wayfire took so long to load configs?
# Default config for Wayfire # # Copy this to ~/.config/wayfire.ini and edit it to your liking. # # Take the tutorial to get started. # https://github.com/WayfireWM/wayfire/wiki/Tutorial # # Read the Configuration document for a complete reference. # https://github.com/WayfireWM/wayfire/wiki/Configuration # Input configuration ────────────────────────────────────────────────────────── # Example configuration: # # [input] # xkb_layout = us # xkb_variant = dvorak,bepo # # See Input options for a complete reference. # https://github.com/WayfireWM/wayfire/wiki/Configuration#input # Output configuration ───────────────────────────────────────────────────────── # Example configuration: # # [eDP-1] # mode = 1920x1080@60000 # position = 0,0 # transform = normal # scale = 1.000000 # # You can get the names of your outputs with wlr-randr. # https://github.com/emersion/wlr-randr # # See also kanshi for configuring your outputs automatically. # https://wayland.emersion.fr/kanshi/ # # See Output options for a complete reference. # https://github.com/WayfireWM/wayfire/wiki/Configuration#output # Core options ───────────────────────────────────────────────────────────────── [core] # List of plugins to be enabled. # See the Configuration document for a complete list. plugins = \ alpha \ simple-tile \ blur \ animate \ autostart \ command \ cube \ decoration \ expo \ fast-switcher \ fisheye \ grid \ idle \ invert \ move \ oswitch \ place \ resize \ switcher \ vswitch \ window-rules \ wm-actions \ wobbly \ wrot \ zoom # Note: [blur] is not enabled by default, because it can be resource-intensive. # Feel free to add it to the list if you want it. # You can find its documentation here: # https://github.com/WayfireWM/wayfire/wiki/Configuration#blur # Close focused window. close_top_view = KEY_Q # Workspaces arranged into a grid: 3 × 3. vwidth = 3 vheight = 3 # Prefer client-side decoration or server-side decoration preferred_decoration_mode = client # Mouse bindings ─────────────────────────────────────────────────────────────── # Drag windows by holding down Super and left mouse button. [move] activate = BTN_LEFT # Resize them with right mouse button + Super. [resize] activate = BTN_RIGHT # Zoom in the desktop by scrolling + Super. [zoom] modifier = | pinch in 2 # Change opacity by scrolling with Super + Alt. [alpha] modifier = # Rotate windows with the mouse. [wrot] activate = BTN_RIGHT # Fisheye effect. [fisheye] toggle = KEY_F # Startup commands ───────────────────────────────────────────────────────────── [autostart] # Automatically start background and panel. # Set to false if you want to override the default clients. autostart_wf_shell = true # Set the wallpaper, start a panel and dock if you want one. # https://github.com/WayfireWM/wf-shell # # These are started by the autostart_wf_shell option above. # # background = wf-background # panel = wf-panel # dock = sfwbar = sfwbar & bluetooth = blueman-applet & # Output configuration # https://wayland.emersion.fr/kanshi/ # outputs = kanshi # Screen color temperature # https://sr.ht/~kennylevinsen/wlsunset/ gamma = wlsunset -l 5.3811 -L 100.3854 & # Idle configuration # https://github.com/swaywm/swayidle # https://github.com/swaywm/swaylock idle = swayidle -w timeout 600 "swaylock --screenshots --clock --indicator --indicator-radius 100 --indicator-thickness 7 --effect-blur 30x5 --effect-vignette 0.8:0.8 --ring-color 500797 --key-hl-color 880033 --line-color 00000000 --inside-color 00000088 --separator-color 00000000 --grace 2 --fade-in 0.2" # import-enviroment = systemctl --user import-enviroment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # XDG desktop portal # Needed by some GTK applications portal = /usr/lib/xdg-desktop-portal-wlr nm-applet = sleep 1 && nm-applet --indicator & notifications = sleep 2 && swaync & # notifications = dunst # Example configuration: # # [idle] # toggle = KEY_Z # screensaver_timeout = 300 # dpms_timeout = 600 # # Disables the compositor going idle with Super + z. # This will lock your screen after 300 seconds of inactivity, then turn off # your displays after another 300 seconds. # Applications ───────────────────────────────────────────────────────────────── [command] # Start a terminal # https://github.com/alacritty/alacritty binding_terminal = KEY_ENTER command_terminal = kitty -c /home/cancel/.config/kitty/kitty.wayfire # Start your launcher # https://hg.sr.ht/~scoopta/wofi # Note: Add mode=run or mode=drun to ~/.config/wofi/config. # You can also specify the mode with --show option. binding_launcher = KEY_D command_launcher = wofi --show drun # Screen locker # https://github.com/swaywm/swaylock binding_lock = KEY_ESC command_lock = swaylock --screenshots --clock --indicator --indicator-radius 100 --indicator-thickness 7 --effect-blur 30x5 --effect-vignette 0.8:0.8 --ring-color 500797 --key-hl-color 880033 --line-color 00000000 --inside-color 00000088 --separator-color 00000000 --grace 2 --fade-in 0.2 # Logout # https://github.com/ArtsyMacaw/wlogout binding_logout = KEY_ESC command_logout = wlogout # Screenshots # https://wayland.emersion.fr/grim/ # https://wayland.emersion.fr/slurp/ binding_screenshot = KEY_PRINT command_screenshot = grim $(date '+%F_%T').webp binding_screenshot_interactive = KEY_PRINT command_screenshot_interactive = slurp | grim -g - $(date '+%F_%T').webp # Volume controls # https://alsa-project.org repeatable_binding_volume_up = KEY_VOLUMEUP command_volume_up = pactl set-sink-volume @DEFAULT_SINK@ +10% repeatable_binding_volume_down = KEY_VOLUMEDOWN command_volume_down = pactl set-sink-volume @DEFAULT_SINK@ -10% binding_mute = KEY_MUTE command_mute = pactl set-source-mute @DEFAULT_SOURCE@ toggle # Screen brightness # https://haikarainen.github.io/light/ repeatable_binding_light_up = KEY_BRIGHTNESSUP command_light_up = light -A 5 repeatable_binding_light_down = KEY_BRIGHTNESSDOWN command_light_down = light -U 5 # Windows ────────────────────────────────────────────────────────────────────── # Actions related to window management functionalities. # # Example configuration: # [wm-actions] toggle_fullscreen = KEY_F toggle_always_on_top = KEY_X toggle_sticky = KEY_X # Position the windows in certain regions of the output. [grid] # # ⇱ ↑ ⇲ │ 7 8 9 # ← f → │ 4 5 6 # ⇱ ↓ ⇲ d │ 1 2 3 0 # ‾ ‾ slot_bl = KEY_KP1 slot_b = KEY_KP2 slot_br = KEY_KP3 slot_l = KEY_LEFT | KEY_KP4 slot_c = KEY_UP | KEY_KP5 slot_r = KEY_RIGHT | KEY_KP6 slot_tl = KEY_KP7 slot_t = KEY_KP8 slot_tr = KEY_KP9 # Restore default. restore = KEY_DOWN | KEY_KP0 # Change active window with an animation. [switcher] next_view = KEY_TAB prev_view = KEY_TAB # Simple active window switcher. [fast-switcher] activate = KEY_ESC # Workspaces ─────────────────────────────────────────────────────────────────── # Switch to workspace. [vswitch] binding_left = KEY_LEFT binding_down = KEY_DOWN binding_up = KEY_UP binding_right = KEY_RIGHT # Move the focused window with the same key-bindings, but add Shift. with_win_left = KEY_LEFT with_win_down = KEY_DOWN with_win_up = KEY_UP with_win_right = KEY_RIGHT # Show the current workspace row as a cube. [cube] activate = BTN_LEFT deform = 0 # Switch to the next or previous workspace. #rotate_left = KEY_H #rotate_right = KEY_L # Show an overview of all workspaces. [expo] toggle = # Select a workspace. # Workspaces are arranged into a grid of 3 × 3. # The numbering is left to right, line by line. # # ⇱ k ⇲ # h ⏎ l # ⇱ j ⇲ # ‾ ‾ # See core.vwidth and core.vheight for configuring the grid. select_workspace_1 = KEY_1 select_workspace_2 = KEY_2 select_workspace_3 = KEY_3 select_workspace_4 = KEY_4 select_workspace_5 = KEY_5 select_workspace_6 = KEY_6 select_workspace_7 = KEY_7 select_workspace_8 = KEY_8 select_workspace_9 = KEY_9 # Outputs ────────────────────────────────────────────────────────────────────── # Change focused output. [oswitch] # Switch to the next output. next_output = KEY_O # Same with the window. next_output_with_win = KEY_O # Invert the colors of the whole output. [invert] toggle = KEY_I [Blur] kawase_degrade = 5 kawase_iterations = 3 kawase_offset = 7 method = kawase [simple-tile] key_focus_above = KEY_K key_focus_below = KEY_J key_focus_left = KEY_H key_focus_right = KEY_L key_toggle = KEY_T inner_gap_size = 10 outer_horiz_gap_size = 9 outer_vert_gap_size = 9 button_move = button_resize = KEY_S BTN_LEFT tile_by_default = !(app_id is "Steam") [decoration] border_size = 4 button_order = minimize maximize close title_height = 30 # Rules ──────────────────────────────────────────────────────────────────────── # Example configuration: # # [window-rules] # maximize_alacritty = on created if app_id is "Alacritty" then maximize # # You can get the properties of your applications with the following command: # $ WAYLAND_DEBUG=1 alacritty 2>&1 | kak # # See Window rules for a complete reference. # https://github.com/WayfireWM/wayfire/wiki/Configuration#window-rules
-
Understanding how idle works
Because of the way logind awkwardly duplicates the idle management of the compositor, but in a way that splinters client tooling, and without any of the access or convenience of the compositor, logind integration is a candidate for removal from swayidle: https://github.com/swaywm/swayidle/issues/117.
-
Sway external display
What does your swayidel configuration look like, or what are you using that triggers the computer to be suspended?
-
Update: swaylock issues after latest kernel update
I suggest to anyone who was having my same problem to update the kernel and comment on the issue I opened on GitHub to get this solved on Sway side.
-
idling and locking in sway
Yes it also listens to dbus signals from logind. Those features kinda duplicate the wayland ones so there's some discussion about dropping them: https://github.com/swaywm/swayidle/issues/117
- some questions
-
Help with simple script to launch and kill app based on user activity
Swayidle info: https://github.com/swaywm/swayidle/blob/master/swayidle.1.scd
-
Inhibit swayidle upon gamepad use
To select a specific input; run the latest upstream code of swayidle. Namely, the feature for seat selection was add in this PR
Ananicy
Posts with mentions or reviews of Ananicy.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2023-05-14.
-
runwhenidle - Linux utility that can automatically pause a computationally-intensive command when user is in front of a computer and resume it when they are away.
For anyone using CPU or IO intensive programs, you can also keep using your desktop, with Cachy OS kernel or Bore scheduler/kernel and Ananicy or ananicy-cpp. Happy gentoo user here, compiling for hours while listening to music/browsing without hiccups.
-
Lenovo Legion 5 Laptop 15ACH6H (AMD Ryzen 5 5600H - NVIDIA GeForce RTX 3060 - RAM: 8 GB) freezes completely and sometimes even reboots
You might want to get ananicy. It's a daemon that automatically sets the niceness values of processes for better realtime performance. Basically sets the priority of processes you probably care about (like your DE/WM) higher than that of those you probably don't (like a compiler).
-
How To Optimise Memory & CPU Performance In Linux – Ananicy & nohang – Arch, Debian, Ubuntu & Fedora
https://github.com/Nefelim4ag/Ananicy Ananicy (ANother Auto NICe daemon) — is a shell daemon created to manage processes' IO and CPU priorities, with community-driven set of rules for popular applications.
-
PopOS System76 Scheduler (priority desktop gaming) ported over to Fedora
Having taken a look at the daemon, it actually reminds of Ananicy. I'm not familiar with 'Gamemode' so I cannot compare but anyways, this seems to be focused in laptops primarily, something that Tuned isn’t either. It’s going to be a nice thing to have around.
-
Confused as to how ananicy works
You can enable Ananicy with the command systemctl enable --now ananicy.service so that the service always runs, even after a reboot of the computer. The tool then applies the existing rules (https://github.com/Nefelim4ag/Ananicy/tree/master/ananicy.d/00-default) to various programmes such as Steam. If necessary, you can also create or adapt your own rules.
-
Why does it seem like process priority is an almost unused feature?
Check out https://github.com/Nefelim4ag/Ananicy
-
Tweak your CFS scheduler for desktop responsiveness under heavy CPU utilization.
There is also ananicy, billed as, er, 'another auto-nice demon'.
-
Crashing under load pls help (Ubuntu 20.04)
You might want to get ananicy/nohang, or a system oomd killer to better optimise cpu processes and priorities to prevent this.
-
I really like these feature from KSysGuard, I hope these gets added to Plasma System Monitor
If you want to automatize this you can use ananicy,it has rules for each program and when you open a program (a game for example),it applies the nice values and IO bounds automatically,you can modify the .rules and create in case the program you have doesn't exist.
- Finding information about seemingly abstract software...Should i use them if i cant find much info about them? "Ananicy" and "irqbalance"
What are some alternatives?
When comparing swayidle and Ananicy you can also consider the following projects:
swaylock - Screen locker for Wayland
Ananicy Cpp - A full, event-based rewrite of Ananicy made in C++ for better performance.
wayvnc - A VNC server for wlroots based Wayland compositors
gamemode - Optimise Linux system performance on demand
sway-borders - Fork of sway with some extra features, mainly related to borders.
auto-cpufreq - Automatic CPU speed & power optimizer for Linux
wob - A lightweight overlay volume/backlight/progress/anything bar for Wayland.
nohang - A sophisticated low memory handler for Linux
swayidle - Idle management daemon for Wayland
linux - XanMod: Linux kernel source code tree
sway - i3-compatible Wayland compositor
cfs-zen-tweaks - Tweak Linux CPU scheduler for desktop responsiveness