1
0
mirror of https://github.com/alrayyes/i3blocks synced 2023-11-13 18:16:40 +00:00
i3blocks/README.md
2016-11-22 19:47:30 +01:00

3.4 KiB

i3Blocks

Screenshot

Some handy scripts I wrote to customize i3blocks

Requirements

Installation

git clone https://github.com/alrayyes/i3blocks.git

Arch Updates

Description

Lists number of Arch Linux package updates available

Source

#!/bin/sh
# Arch upgradeable packages

list=`pacman -Sup 2> /dev/null`

if [ "$list" == ":: Starting full system upgrade..." ]; then
    count=""
else
    count=`echo "$list" | wc -l`
fi

echo "$count"

i3blocks config

[arch-updates]
command=~/i3blocks/archupdates
label=color=#FF0000
interval=3600

Docker Containers

Description

Lists number of Docker containers running

Source

#!/bin/sh

docker ps -q | wc -l | sed -r 's/^0$//g'

i3blocks config

[docker-containers]
label=command=~/i3blocks/container
interval=5

Gmail

Description

Lists number of unread emails in Gmail inbox

Source

#!/bin/bash

# Requires https://www.google.com/settings/security/lesssecureapps for gmail.

CONFIG_FILE="${BLOCK_INSTANCE}"
CONFIG_FILE=${CONFIG_FILE/\~/$HOME}

# Config file needs the following settings:
#MAIL_USER="user@domain.tld"
#MAIL_PASSWORD="secret"

if [[ ! -f "${CONFIG_FILE}" ]]; then
  echo "${CONFIG_FILE}"
  exit 33
fi

source "${CONFIG_FILE}"

COUNT=`curl -su $MAIL_USER:$MAIL_PASSWORD https://mail.google.com/mail/feed/atom || echo "<fullcount>unknown number of</fullcount>"`
COUNT=`echo "$COUNT" | grep -oPm1 "(?<=<fullcount>)[^<]+" `
if [ "$COUNT" = "0" ]; then
	echo ""
else
	echo $COUNT
fi

i3blocks config

[gmail]
command=~/i3blocks/gmail
label=G
instance=~/.mysupersecretgmaillogin
interval=60
color=#00FF00

~/.mysupersecretgmaillogin

MAIL_USER="john.doe@gmail.com"
MAIL_PASSWORD="password123"

What is My Ip

Description

Prints your external ip address

Source

#!/bin/sh

ip=$(curl -s icanhazip.com);

if [[ "$BLOCK_BUTTON" -eq 1 ]];
then
	netname=$(whois $ip | grep '^netname:' | awk '{print $2}' | tail -1);
	echo "$netname"
else
	echo "$ip"
fi

i3blocks config

[whatismyip]
label=command=~/i3blocks/whatismyip
color=#00FF00
interval=30

cmus

Description

Prints current song playing in cmus

Source

#!/bin/sh

ICON_PLAY="➤"
ICON_PAUSE="Ⅱ"
ICON_STOP="≠"
CUR_ICON=""

INFO_ARTIST=$(cmus-remote -Q | grep ' artist ' | cut -d ' ' -f3-)
INFO_ALBUM=$(cmus-remote -Q | grep ' album ' | cut -d ' ' -f3-)
INFO_TITLE=$(cmus-remote -Q | grep ' title ' | cut -d ' ' -f3-)

PLAYER_STATUS=$(cmus-remote -Q | grep 'status' | cut -d ' ' -f2-)

if [[ "${PLAYER_STATUS}" = "paused" ]]; then
  CUR_ICON="${ICON_PAUSE}"
elif [[ "${PLAYER_STATUS}" = "playing" ]]; then
  CUR_ICON="${ICON_PLAY}"
else
  CUR_ICON="${ICON_STOP}"
fi

if [[ "${INFO_TITLE}" != "" ]] && [[ "${INFO_ARTIST}" != "" ]]; then
  echo "${INFO_ARTIST} - ${INFO_TITLE} ${CUR_ICON}"
  echo "${INFO_ARTIST} - ${INFO_TITLE} ${CUR_ICON}"
fi

i3blocks config

[cmus]
label=command=~/i3blocks/cmus
interval=5

License

This theme is released under the MIT License. For more information read the license.