safeeyes


Namesafeeyes JSON
Version 2.2.2 PyPI version JSON
download
home_pagehttps://github.com/slgobinath/SafeEyes
SummaryProtect your eyes from eye strain using this continuous breaks reminder.
upload_time2024-08-06 00:12:27
maintainerNone
docs_urlNone
authorGobinath Loganathan
requires_pythonNone
licenseNone
keywords linux utility health eye-strain safe-eyes
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <img src="https://raw.githubusercontent.com/slgobinath/SafeEyes/master/safeeyes/platform/icons/hicolor/64x64/apps/io.github.slgobinath.SafeEyes.png" align="left">

# Safe Eyes

[![Release](https://img.shields.io/github/v/release/slgobinath/SafeEyes)](https://github.com/slgobinath/SafeEyes/releases)
[![PyPI version](https://badge.fury.io/py/safeeyes.svg)](https://badge.fury.io/py/safeeyes)
[![Debian](https://badges.debian.net/badges/debian/unstable/safeeyes/version.svg)](https://packages.debian.org/unstable/safeeyes)
[![AUR](https://img.shields.io/aur/version/safeeyes)](https://aur.archlinux.org/packages/safeeyes)
[![Flathub](https://img.shields.io/flathub/v/io.github.slgobinath.SafeEyes)](https://flathub.org/apps/details/io.github.slgobinath.SafeEyes)
[![Translation status](https://hosted.weblate.org/widgets/safe-eyes/-/translations/svg-badge.svg)](https://hosted.weblate.org/engage/safe-eyes/?utm_source=widget)
[![Awesome Humane Tech](https://raw.githubusercontent.com/humanetech-community/awesome-humane-tech/main/humane-tech-badge.svg?sanitize=true)](https://github.com/humanetech-community/awesome-humane-tech)

Protect your eyes from eye strain using this simple and beautiful, yet extensible break reminder.

Visit the official site: https://slgobinath.github.io/SafeEyes/ for more details.

## Safe Eyes command-line arguments

```text
usage: safeeyes [-h] [-a | -d | -e | -q | -s | -t] [--debug] [--version]

Safe Eyes protects your eyes from eye strain (asthenopia) by reminding you to
take breaks while you're working long hours at the computer.

optional arguments:
  -h, --help        show this help message and exit
  -a, --about       show the about dialog
  -d, --disable     disable the currently running safeeyes instance
  -e, --enable      enable the currently running safeeyes instance
  -q, --quit        quit the running safeeyes instance and exit
  -s, --settings    show the settings dialog
  -t, --take-break  take a break now
  --debug           start safeeyes in debug mode
  --status          print the status of running safeeyes instance and exit
  --version         show program's version number and exit
```

## Installation guide

Safe Eyes is available on the official repositories of many popular the distributions.

<a href="https://repology.org/project/safeeyes/versions">
    <img src="https://repology.org/badge/vertical-allrepos/safeeyes.svg" alt="Packaging status" align="right">
</a>

It is also available in Ubuntu PPA, Arch AUR, Gentoo and Python PyPI. You can choose any installation source and install on any Linux system with Python 3.


### Ubuntu, Linux Mint and other Ubuntu Derivatives

The [Official PPA for Safe Eyes](https://launchpad.net/~safeeyes-team/+archive/ubuntu/safeeyes) hosts the latest version of safeeyes **for Ubuntu 22.04 and above**. 
```bash
sudo add-apt-repository ppa:safeeyes-team/safeeyes
sudo apt update
sudo apt install safeeyes
```

On older versions of Ubuntu, an older version of Safe Eyes is available on the official repositories.
```bash
sudo apt install safeeyes
```

### Arch

```bash
yay -S safeeyes
```

### Gentoo

```bash
sudo emerge -av x11-misc/safeeyes
```

### Debian

```bash
sudo apt-get install safeeyes
```

### Fedora

```bash
sudo dnf install python3-psutil python3-packaging cairo-devel python3-devel gobject-introspection-devel cairo-gobject-devel
sudo pip3 install safeeyes
sudo gtk-update-icon-cache /usr/share/icons/hicolor
```

### OpenSUSE Tumbleweed

```bash
sudo zypper refresh
sudo zypper install safeeyes
```

### Alpine Linux

```bash
sudo apk add safeeyes
```

### Flatpak

```bash
flatpak install flathub io.github.slgobinath.SafeEyes
```

### Other Linux & Run from source

Ensure to meet the following dependencies:

- gir1.2-notify-0.7
- python3-babel
- python3-croniter
- python3-psutil
- python3-packaging
- python3-xlib
- xprintidle (optional)
- wlrctl (wayland optional)
- Python 3.10+

**To install Safe Eyes:**

```bash
sudo pip3 install safeeyes
```

After installation, restart your system to update the icons,

**To run from source:**

```bash
git clone https://github.com/slgobinath/SafeEyes.git
cd SafeEyes
python3 -m safeeyes
```

Safe Eyes installers install the required icons to `/usr/share/icons/hicolor`. When you run Safe Eyes from source without, some icons may not appear.


### Install in a virtual environment

Some Linux systems like CentOS do not have matching dependencies available in their repository. In such systems, you can install and use Safe Eyes in a Python virtual environment.

1. Install the necessary dependencies for CentOS 7

    ```bash
    sudo yum install python3-devel dbus dbus-devel cairo cairo-devel cairomm-devel libjpeg-turbo-devel pango pango-devel pangomm pangomm-devel gobject-introspection-devel cairo-gobject-devel
    ```

2. Create a virtual environment in your home folder

    ```bash
    mkdir ~/safeeyes
    cd ~/safeeyes/

    python3 -m venv venv
    source venv/bin/activate
    pip3 install safeeyes
    ```

3. Start Safe Eyes from the terminal

    ```bash
    cd ~/safeeyes & source venv/bin/activate
    python3 -m safeeyes
    ```

For more details, please check the issue: [#329](https://github.com/slgobinath/SafeEyes/issues/329)

## Features

- Remind you to take breaks with exercises to reduce RSI
- Disable keyboard during breaks
- Notification before and after breaks
- Smart pause if system is idle
- Multi-screen support
- Customizable user interface
- RPC API to control externally
- Command-line arguments to control the running instance
- Customizable using plug-ins

## Third-party Plugins

Thirdparty plugins are available at another GitHub repository: [safeeyes-plugins](https://github.com/slgobinath/safeeyes-plugins). More details about how to write your own plugin and how to install third-party plugin are available there.

## How to Release?

0. Run `update-po.sh` to generate new translation files (which will be eventually updated by translators). Commit and push the changes to the master branch.
1. Checkout the latest commits from the `master` branch
2. Run `python3 -m safeeyes` to make sure nothing is broken
3. Update the Safe Eyes version in the following places (Open the project in VSCode and search for the current version):
    - [setup.py](https://github.com/slgobinath/SafeEyes/blob/master/setup.py#L83)
    - [setup.py](https://github.com/slgobinath/SafeEyes/blob/master/setup.py#L90)
    - [safeeyes.py](https://github.com/slgobinath/SafeEyes/blob/master/safeeyes/safeeyes.py#L42)
    - [io.github.slgobinath.SafeEyes.metainfo.xml](https://github.com/slgobinath/SafeEyes/blob/master/safeeyes/platform/io.github.slgobinath.SafeEyes.metainfo.xml#L56)
    - [about_dialog.glade](https://github.com/slgobinath/SafeEyes/blob/master/safeeyes/glade/about_dialog.glade#L74)
4. Update the [changelog](https://github.com/slgobinath/SafeEyes/blob/master/debian/changelog) (for Ubuntu PPA release)
5. Commit the changes to `master`
6. Create a pull-request from `master` to `release`
7. Merge the PR to release **with merge commit** (Important to merge with merge commit)


## License

GNU General Public License v3

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/slgobinath/SafeEyes",
    "name": "safeeyes",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "linux utility health eye-strain safe-eyes",
    "author": "Gobinath Loganathan",
    "author_email": "slgobinath@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/e3/49/4c40d9bf2e9162c23856750442c42f1198dafa42390e7159f320796077cd/safeeyes-2.2.2.tar.gz",
    "platform": null,
    "description": "<img src=\"https://raw.githubusercontent.com/slgobinath/SafeEyes/master/safeeyes/platform/icons/hicolor/64x64/apps/io.github.slgobinath.SafeEyes.png\" align=\"left\">\n\n# Safe Eyes\n\n[![Release](https://img.shields.io/github/v/release/slgobinath/SafeEyes)](https://github.com/slgobinath/SafeEyes/releases)\n[![PyPI version](https://badge.fury.io/py/safeeyes.svg)](https://badge.fury.io/py/safeeyes)\n[![Debian](https://badges.debian.net/badges/debian/unstable/safeeyes/version.svg)](https://packages.debian.org/unstable/safeeyes)\n[![AUR](https://img.shields.io/aur/version/safeeyes)](https://aur.archlinux.org/packages/safeeyes)\n[![Flathub](https://img.shields.io/flathub/v/io.github.slgobinath.SafeEyes)](https://flathub.org/apps/details/io.github.slgobinath.SafeEyes)\n[![Translation status](https://hosted.weblate.org/widgets/safe-eyes/-/translations/svg-badge.svg)](https://hosted.weblate.org/engage/safe-eyes/?utm_source=widget)\n[![Awesome Humane Tech](https://raw.githubusercontent.com/humanetech-community/awesome-humane-tech/main/humane-tech-badge.svg?sanitize=true)](https://github.com/humanetech-community/awesome-humane-tech)\n\nProtect your eyes from eye strain using this simple and beautiful, yet extensible break reminder.\n\nVisit the official site: https://slgobinath.github.io/SafeEyes/ for more details.\n\n## Safe Eyes command-line arguments\n\n```text\nusage: safeeyes [-h] [-a | -d | -e | -q | -s | -t] [--debug] [--version]\n\nSafe Eyes protects your eyes from eye strain (asthenopia) by reminding you to\ntake breaks while you're working long hours at the computer.\n\noptional arguments:\n  -h, --help        show this help message and exit\n  -a, --about       show the about dialog\n  -d, --disable     disable the currently running safeeyes instance\n  -e, --enable      enable the currently running safeeyes instance\n  -q, --quit        quit the running safeeyes instance and exit\n  -s, --settings    show the settings dialog\n  -t, --take-break  take a break now\n  --debug           start safeeyes in debug mode\n  --status          print the status of running safeeyes instance and exit\n  --version         show program's version number and exit\n```\n\n## Installation guide\n\nSafe Eyes is available on the official repositories of many popular the distributions.\n\n<a href=\"https://repology.org/project/safeeyes/versions\">\n    <img src=\"https://repology.org/badge/vertical-allrepos/safeeyes.svg\" alt=\"Packaging status\" align=\"right\">\n</a>\n\nIt is also available in Ubuntu PPA, Arch AUR, Gentoo and Python PyPI. You can choose any installation source and install on any Linux system with Python 3.\n\n\n### Ubuntu, Linux Mint and other Ubuntu Derivatives\n\nThe [Official PPA for Safe Eyes](https://launchpad.net/~safeeyes-team/+archive/ubuntu/safeeyes) hosts the latest version of safeeyes **for Ubuntu 22.04 and above**. \n```bash\nsudo add-apt-repository ppa:safeeyes-team/safeeyes\nsudo apt update\nsudo apt install safeeyes\n```\n\nOn older versions of Ubuntu, an older version of Safe Eyes is available on the official repositories.\n```bash\nsudo apt install safeeyes\n```\n\n### Arch\n\n```bash\nyay -S safeeyes\n```\n\n### Gentoo\n\n```bash\nsudo emerge -av x11-misc/safeeyes\n```\n\n### Debian\n\n```bash\nsudo apt-get install safeeyes\n```\n\n### Fedora\n\n```bash\nsudo dnf install python3-psutil python3-packaging cairo-devel python3-devel gobject-introspection-devel cairo-gobject-devel\nsudo pip3 install safeeyes\nsudo gtk-update-icon-cache /usr/share/icons/hicolor\n```\n\n### OpenSUSE Tumbleweed\n\n```bash\nsudo zypper refresh\nsudo zypper install safeeyes\n```\n\n### Alpine Linux\n\n```bash\nsudo apk add safeeyes\n```\n\n### Flatpak\n\n```bash\nflatpak install flathub io.github.slgobinath.SafeEyes\n```\n\n### Other Linux & Run from source\n\nEnsure to meet the following dependencies:\n\n- gir1.2-notify-0.7\n- python3-babel\n- python3-croniter\n- python3-psutil\n- python3-packaging\n- python3-xlib\n- xprintidle (optional)\n- wlrctl (wayland optional)\n- Python 3.10+\n\n**To install Safe Eyes:**\n\n```bash\nsudo pip3 install safeeyes\n```\n\nAfter installation, restart your system to update the icons,\n\n**To run from source:**\n\n```bash\ngit clone https://github.com/slgobinath/SafeEyes.git\ncd SafeEyes\npython3 -m safeeyes\n```\n\nSafe Eyes installers install the required icons to `/usr/share/icons/hicolor`. When you run Safe Eyes from source without, some icons may not appear.\n\n\n### Install in a virtual environment\n\nSome Linux systems like CentOS do not have matching dependencies available in their repository. In such systems, you can install and use Safe Eyes in a Python virtual environment.\n\n1. Install the necessary dependencies for CentOS 7\n\n    ```bash\n    sudo yum install python3-devel dbus dbus-devel cairo cairo-devel cairomm-devel libjpeg-turbo-devel pango pango-devel pangomm pangomm-devel gobject-introspection-devel cairo-gobject-devel\n    ```\n\n2. Create a virtual environment in your home folder\n\n    ```bash\n    mkdir ~/safeeyes\n    cd ~/safeeyes/\n\n    python3 -m venv venv\n    source venv/bin/activate\n    pip3 install safeeyes\n    ```\n\n3. Start Safe Eyes from the terminal\n\n    ```bash\n    cd ~/safeeyes & source venv/bin/activate\n    python3 -m safeeyes\n    ```\n\nFor more details, please check the issue: [#329](https://github.com/slgobinath/SafeEyes/issues/329)\n\n## Features\n\n- Remind you to take breaks with exercises to reduce RSI\n- Disable keyboard during breaks\n- Notification before and after breaks\n- Smart pause if system is idle\n- Multi-screen support\n- Customizable user interface\n- RPC API to control externally\n- Command-line arguments to control the running instance\n- Customizable using plug-ins\n\n## Third-party Plugins\n\nThirdparty plugins are available at another GitHub repository: [safeeyes-plugins](https://github.com/slgobinath/safeeyes-plugins). More details about how to write your own plugin and how to install third-party plugin are available there.\n\n## How to Release?\n\n0. Run `update-po.sh` to generate new translation files (which will be eventually updated by translators). Commit and push the changes to the master branch.\n1. Checkout the latest commits from the `master` branch\n2. Run `python3 -m safeeyes` to make sure nothing is broken\n3. Update the Safe Eyes version in the following places (Open the project in VSCode and search for the current version):\n    - [setup.py](https://github.com/slgobinath/SafeEyes/blob/master/setup.py#L83)\n    - [setup.py](https://github.com/slgobinath/SafeEyes/blob/master/setup.py#L90)\n    - [safeeyes.py](https://github.com/slgobinath/SafeEyes/blob/master/safeeyes/safeeyes.py#L42)\n    - [io.github.slgobinath.SafeEyes.metainfo.xml](https://github.com/slgobinath/SafeEyes/blob/master/safeeyes/platform/io.github.slgobinath.SafeEyes.metainfo.xml#L56)\n    - [about_dialog.glade](https://github.com/slgobinath/SafeEyes/blob/master/safeeyes/glade/about_dialog.glade#L74)\n4. Update the [changelog](https://github.com/slgobinath/SafeEyes/blob/master/debian/changelog) (for Ubuntu PPA release)\n5. Commit the changes to `master`\n6. Create a pull-request from `master` to `release`\n7. Merge the PR to release **with merge commit** (Important to merge with merge commit)\n\n\n## License\n\nGNU General Public License v3\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Protect your eyes from eye strain using this continuous breaks reminder.",
    "version": "2.2.2",
    "project_urls": {
        "Download": "https://github.com/slgobinath/SafeEyes/archive/v2.2.2.tar.gz",
        "Homepage": "https://github.com/slgobinath/SafeEyes"
    },
    "split_keywords": [
        "linux",
        "utility",
        "health",
        "eye-strain",
        "safe-eyes"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6d011d64fd566e7933e50d1d04a8f838c3e8ef9e523378eb0c90fa83dc1236ac",
                "md5": "572adc919fa53da38a9f5069a680e847",
                "sha256": "1752d64aa6f23ba2bad4951b7d8a944ef1b7b48b02097717ab97110305062a59"
            },
            "downloads": -1,
            "filename": "safeeyes-2.2.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "572adc919fa53da38a9f5069a680e847",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 468984,
            "upload_time": "2024-08-06T00:12:25",
            "upload_time_iso_8601": "2024-08-06T00:12:25.720070Z",
            "url": "https://files.pythonhosted.org/packages/6d/01/1d64fd566e7933e50d1d04a8f838c3e8ef9e523378eb0c90fa83dc1236ac/safeeyes-2.2.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e3494c40d9bf2e9162c23856750442c42f1198dafa42390e7159f320796077cd",
                "md5": "a6c96b88669af21f1a1149b4d223c4a7",
                "sha256": "93f08dc4b49c6430978b02613f9aa1e470f95542a538b69857c202620cfa34a2"
            },
            "downloads": -1,
            "filename": "safeeyes-2.2.2.tar.gz",
            "has_sig": false,
            "md5_digest": "a6c96b88669af21f1a1149b4d223c4a7",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 312701,
            "upload_time": "2024-08-06T00:12:27",
            "upload_time_iso_8601": "2024-08-06T00:12:27.226791Z",
            "url": "https://files.pythonhosted.org/packages/e3/49/4c40d9bf2e9162c23856750442c42f1198dafa42390e7159f320796077cd/safeeyes-2.2.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-08-06 00:12:27",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "slgobinath",
    "github_project": "SafeEyes",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "safeeyes"
}
        
Elapsed time: 0.58655s