A Linux application for monitoring your computer activity.
Go to file
2024-08-02 13:49:20 -07:00
src Add screenshot resizing 2024-08-02 13:49:20 -07:00
install.sh Make installation user-specific 2024-08-01 17:46:39 -07:00
LICENSE Add MIT License 2024-08-01 19:04:03 -07:00
README.md Add disclaimer 2024-08-01 19:49:53 -07:00
requirements.txt Revert "remove gui requirement" 2024-08-01 18:06:57 -07:00
uninstall.sh Add uninstall script 2024-08-01 17:52:13 -07:00

Disclaimer

I cannot guarantee that passwords in the screenshots generated by this script will be safe. It seems to be a pretty good blur, but I am not well acquainted with image recovery practices.

Introduction

This script is designed to help you help others keep you accountable. It places blurred screenshots every few minutes into ~/.screenmonitor/output and deletes them after three days. From there, you should set up an automated distribution method to get them to someone who will agree to browse them on occasion. One such method is suggested under the header "File Distribution".

No accountability system can replace the need for self control, and there are some obvious workarounds for this one. However, I believe it is valuable as a simple tool.

Deployment Instructions

  1. Install Python and pip:

    sudo apt-get update
    sudo apt-get install -y python3-pip
    
  2. Clone the repository:

    git clone https://githaven.org/Alexander_Franklin/screen-monitor.git
    cd my_service
    
  3. Make the install script executable:

    chmod +x install.sh
    
  4. Run the install script to install dependencies and configure the service:

    ./install.sh
    

The service should now be installed, enabled to start on boot, and running.

To uninstall, run the following inside the repository folder. It does not have to be the same repository you installed it from.

  1. Make the uninstall script executable:

    chmod +x uninstall.sh
    
  2. Run the uninstall script to remove the service and program folders:

    ./uninstall.sh
    

Note that this script will not uninstall the pip packages.

File Distribution

Syncthing is a wonderful tool for peer to peer file synchronization. You can install it, then set up the output folder for this script as a syncing folder in syncthing. The person who you send your screenshots to will need to download it as well and pair with your device. They can set their folder to keep staggered backups to avoid letting you delete or replace your screenshots, and they can set it to "receive only" to be able to sync it with other people so they can view them all at once, though that may cause issues if they aren't sure who a screenshot is from. It may also help to sync them to a server between you, so that the screenshots are immediately uploaded.

Here's the download instructions for Debian, Ubuntu, etc. And here are the instructions to start in on startup. I suggest using systemd with a system service.