Display a message in morse code on your capslock LED, keyboard backlight or using your screen brightness!

halp

halp is a command line utility that lets you display messages in morse code on your capslock LED, keyboard backlight (if you have it) or using your screen's brightness!

Note:

halp will only work if you're running Linux. The original purpose of developing this was to learn more about the concept of 'everyhting in linux is a file' and learn more about how permissions in linux work. The idea originated after watching this video.

Installation

Use the executable:

curl -sSL https://github.com/MadhavJivrajani/halp/releases/download//halp --output halp
chmod +x halp
mv halp /usr/bin # to make the executable available system wide

Installation can also done using the go get command which will take care of installation of any libraries and dependencies nescessary. This will also install the halp executable which can be used anywhere in the termnial provided $GOPATH/bin is in your PATH.

go get -u github.com/MadhavJivrajani/halp

Or you can clone this repository and work directly with the halp executable!

git clone https://github.com/MadhavJivrajani/halp.git
cd halp
go build -o halp main.go
mv halp /usr/bin # to make the executable available system wide

Usage:

A verryyy normal and usual application built to help you send SoS messages.

The tool will by default switch off the LED before displaying the morse code
message and will restore it back to this initial state when the message finishes displaying

Syntax:
halp -m 

Usage:
  halp [flags]
  halp [command]

Available Commands:
  help        Help about any command
  reset       Reset the resource state to 'value'

Flags:
      --config string    config file (default is $HOME/.halp.yaml)
  -h, --help             help for halp
  -k, --keyboard         use keyboard backlight
  -m, --message string   message to diplay in morse code
  -p, --path string      /path/to/capslockLED (default "/sys/class/leds/input3::capslock")
  -s, --screen           use screen backlight

Use "halp [command] --help" for more information about a command.

Commands:

reset

It will default to a capslock LED path, you can try using the -s and the -k flags,
to reset to value for screen and keyborad resources respectively

Syntax:
halp reset [--keyboard][--screen][--path][--value]

Usage:
  halp reset [flags]

Flags:
  -h, --help          help for reset
  -k, --keyboard      reset keyboard backlight
  -p, --path string   /path/to/resource (default "/sys/class/leds/input3::capslock")
  -s, --screen        reset screen backlight
  -v, --value int     reset the resource to this value

Disclaimer

I am not responsible for anything going wrong with the system halp is run on, this is an educational project.

Owner
Madhav Jivrajani
I :heart: Systems
Madhav Jivrajani
Similar Resources

Snippet CLI manger for quickly using code snippets without leaving the terminal

Snippet CLI manger for quickly using code snippets without leaving the terminal

SnipKit - Snippet CLI manager This repository is still work in progress! SnipKit aims to paste code snippets from your favorite snippet manager into y

Dec 27, 2022

Watch your favourite anime using the video player of your choice directly from the command line

anime-cli Watch your favourite anime using the video player of your choice direc

Feb 10, 2022

Reads from existing Cloud Providers (reverse Terraform) and generates your infrastructure as code on Terraform configuration

Reads from existing Cloud Providers (reverse Terraform) and generates your infrastructure as code on Terraform configuration

TerraCognita Imports your current Cloud infrastructure to an Infrastructure As Code Terraform configuration (HCL) or/and to a Terraform State. At Cycl

Dec 30, 2022

Show Languages In Code. A fast and lightweight CLI to generate stats on the languages inside your project

Show Languages In Code. A fast and lightweight CLI to generate stats on the languages inside your project

slic Show Languages In Code. Usage Run it with an -h flag to list all commands. -d flag can be used to specify the directory of search -i flag can be

Dec 25, 2021

A simple command line tool using which you can skip phone number based SMS verification by using a temporary phone number that acts like a proxy.

A simple command line tool using which you can skip phone number based SMS verification by using a temporary phone number that acts like a proxy.

Fake-SMS A simple command line tool using which you can skip phone number based SMS verification by using a temporary phone number that acts like a pr

Dec 31, 2022

GC2 is a Command and Control application that allows an attacker to execute commands on the target machine using Google Sheet and exfiltrate data using Google Drive.

GC2 is a Command and Control application that allows an attacker to execute commands on the target machine using Google Sheet and exfiltrate data using Google Drive.

GC2 GC2 (Google Command and Control) is a Command and Control application that allows an attacker to execute commands on the target machine using Goog

Dec 13, 2022

Are you programming and suddenly your stomach is rumbling? No problem, order your Ifood without leaving your favorite text editor ❤️

vim-ifood Você ta programando e de repente bateu aquela fome? Sem problemas, peça seu Ifood sem sair do seu editor de texto favorito ❤️ Are you progra

Jun 2, 2022

❓🖼 Find the anime scene by image using your terminal

❓🖼 Find the anime scene by image using your terminal

What Anime CLI ❓ 🖼 This application is basically a 🍬 wrapper around trace.moe PREVIEW Usage 🖥 Get Anime By Image File 🗃 what-anime file anime.jp

Jan 2, 2023

Demonstrating how you can take an action to your intrusions detected by Falco using OpenFaaS functions

Demonstrating how you can take an action to your intrusions detected by Falco using OpenFaaS functions

Kubernetes Response Engine powered by OpenFaaS Although Falco can be used to detect any intrusion attempts and sends alerts to channels according to t

Aug 22, 2022
Comments
  • Path to the LED file is different on my system :(

    Path to the LED file is different on my system :(

    The path in my system is /sys/class/leds/input4::capslock/brightness (4 instead of 3).

    Now I can't send an emergency message, pls halp :(


    (maybe consider looking for input[0-9]::capslock inside that directory?)

  • Added keyboard/screen backlight options

    Added keyboard/screen backlight options

    root: - Added 2 flags, -k and -s to use the keyboard or screen backlight instead - Walks through /sys/class/leds and regex matches the right backlight file sos: - Added getMaxBrightness to determine the maximum brightness level - Added a readFile method which's used by getInitialState and getMaxBrightness - Used integer brightness levels instead of the original booleans toggle: - Updated methods to take the brightness value as argument Updated UpdateState calls to take the brightness values

    Resolves #2

  • Use regex for capslock LED path

    Use regex for capslock LED path

    Make the default LED path a regex (as a side effect it also accepts a regex as the input path).

    There is a lot of code overlap in the newly added getCapsLockLEDPath function with the getKeyboardBacklightPath function from #3. Some refactor might be in order.

    Also, the help page for -p looks a bit weird with two things in parenthesis. Any ideas to make it better?

      -p, --path string      /path/to/capslockLED (accepts regex) (default "/sys/class/leds/input[0-9]+::capslock")
    
This is a command that simply prints "ok" onto your screen whenever you run the "ok" command
This is a command that simply prints

ok This is a command that simply prints "ok" onto your screen whenever you run the ok command Installation (Linux) Download the latest release and sud

Sep 16, 2022
Allows you to use the magic remote on your webOS LG TV as a keyboard/mouse for your Linux machine

magic4linux Allows you to use the magic remote on your webOS LG TV as a keyboard/mouse for your PC Linux machine. This is a Linux implementation of th

Nov 25, 2022
The keyboard driven redmine client

Bluemine Installation Distribution Homebrew brew install liberatys/homebrew-tap/bluemine From Source git clone https://github.com/liberatys/bluemin

Sep 26, 2021
A golang CLI to display various stats about Hockey teams and their players

A golang CLI to display various stats about Hockey teams and their players

Oct 26, 2021
A CLI tool to display all dependencies or dependents of an object in a Kubernetes cluster.

kube-lineage A CLI tool to display all dependencies or dependents of an object in a Kubernetes cluster. Usage $ kube-lineage clusterrole system:metric

Jan 5, 2023
A CLI to replace your git commit command, so your git message can partially follow the Conventional Changelog ecosystem
A CLI to replace your git commit command, so your git message can partially follow the Conventional Changelog ecosystem

COMMIT CLI A CLI to replace your git commit command, so your git message can partially follow the Conventional Changelog ecosystem. And yes, it is bui

Feb 9, 2022
AI-powered code snippet generator using ChatGPT. Generate code in various languages based on natural language descriptions!

SnipForge - AI-Powered Code Snippet Generator SnipForge is a powerful command-line interface (CLI) tool that utilizes OpenAI's GPT technology to gener

May 5, 2023
A message based command library for DiscordGo

A simple message command library for DiscordGo, inspired by discord.py.

Feb 7, 2022
Speaker command reads aloud the text message. It supports multilingual voice reading

speaker - Read the text aloud speaker command reads aloud the text message. It supports multilingual voice reading. If you want the time signal, the s

Aug 22, 2022
Sloc, Cloc and Code: scc is a very fast accurate code counter with complexity calculations and COCOMO estimates written in pure Go
Sloc, Cloc and Code: scc is a very fast accurate code counter with complexity calculations and COCOMO estimates written in pure Go

Sloc Cloc and Code (scc) A tool similar to cloc, sloccount and tokei. For counting physical the lines of code, blank lines, comment lines, and physica

Jan 8, 2023