SkillAgentSearch skills...

Ianny

Desktop utility that helps preventing repetitive strain injuries by keeping track of usage patterns and periodically informing the user to take breaks.

Install / Use

/learn @zefr0x/Ianny
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<div align = center> <h1>Ianny | عَيْنِي</h1>

release

Simple, light-weight, easy to use, and effective Linux Wayland desktop utility that helps with preventing repetitive strain injuries by keeping track of usage patterns and periodically informing the user to take breaks.


<kbd><br><b>Install</b><br><br></kbd> <kbd><br><b>Contribute</b><br><br></kbd> <kbd><br><b>Packaging</b><br><br></kbd>


</div>

Features

  • ⚙ Simple config to tweak its behavior.
  • 🚀 Auto start it with your desktop environment.
  • 🚫 X11 is not supported.
  • 🚫 Microsoft Windows is definitely not supported.

Requirements

Installation

Packaging status

Arch Linux

All packages are available on AUR, you can:

  • Build locally from latest stable release: ianny
  • Build locally from latest Git commit: ianny-git
  • Use the binary built by GitHub: ianny-bin

Download Binary From GitHub

For every new release a GitHub workflow will build a binary in GitHub servers and will upload it as a release asset in GitHub releases.

You can find the latest GitHub release here or the releases page here.

Build

[!Note] You need to have cargo, meson and libdbus-1-dev installed in your system.

[!NOTE] For cross compilation you will need to set the rustc_target meson option, and create .cargo/config.toml file to set a linker to be used for your target.

git clone https://github.com/zefr0x/ianny.git

cd ianny

# Checkout to a release tag e.g. v1.0.1
git checkout vx.x.x

meson setup builddir -Dbuildtype=release
meson compile -C builddir

You will find the binary in ./builddir/src/ianny

To install:

meson install -C builddir

Usage

You just need to execute the binary either directly or by enabling it to auto start with your desktop environment's settings, since it provides a .desktop file for auto-start.

Config

The defaults might not fit your needs, so you can change them via a config file.

The config file is $XDG_CONFIG_HOME/io.github.zefr0x.ianny/config.toml or by default ~/.config/io.github.zefr0x.ianny/config.toml. Just create it and specify the options you need with the toml format:

[timer]
# Enabling this will only consider user input alone for idle state, e.g. you will not have breaks when watching videos or playing music without any user input.
ignore_idle_inhibitors = false
# Timer will stop and reset when you are idle for this amount of seconds.
idle_timeout = 240
# Active duration that activates a break.
short_break_timeout = 1200
long_break_timeout = 3840
# Breaks duration.
short_break_duration = 120
long_break_duration = 240

[notification]
show_progress_bar = true
# Minimum delay of updating the progress bar (lower than 1s may return an error).
minimum_update_delay = 1

[!Note] Time specified in seconds

Q&A

Q: What does Ianny mean?

  • It is an Arabic word عَيْنِي that could be translated to My Eye in English.

Inspired by

Related Skills

View on GitHub
GitHub Stars216
CategoryDevelopment
Updated6h ago
Forks7

Languages

Rust

Security Score

100/100

Audited on Apr 6, 2026

No findings