aboutsummaryrefslogtreecommitdiff
path: root/config/i3blocks/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'config/i3blocks/scripts')
-rwxr-xr-xconfig/i3blocks/scripts/backup47
-rwxr-xr-xconfig/i3blocks/scripts/battery75
-rwxr-xr-xconfig/i3blocks/scripts/bbswitch9
-rwxr-xr-xconfig/i3blocks/scripts/email5
-rwxr-xr-xconfig/i3blocks/scripts/mpd10
5 files changed, 146 insertions, 0 deletions
diff --git a/config/i3blocks/scripts/backup b/config/i3blocks/scripts/backup
new file mode 100755
index 0000000..24b3954
--- /dev/null
+++ b/config/i3blocks/scripts/backup
@@ -0,0 +1,47 @@
+#!/bin/bash
+
+if [[ -n "$BLOCK_BUTTON" ]]; then
+ nohup urxvt -title "System backup" -hold -e sudo system-backup 2>&1 >/dev/null &
+fi
+
+state=5
+if [[ -e ~/.backup_date ]]; then
+ today=$(date +"%Y%m%d")
+ prev=$(date -d `cat ~/.backup_date` +"%Y%m%d")
+ dif=$(expr $today - $prev)
+ if [[ $dif -ge 30 ]]; then
+ state=4
+ elif [[ $dif -ge 20 ]]; then
+ state=3
+ elif [[ $dif -ge 5 ]]; then
+ state=2
+ elif [[ $dif -ge 2 ]]; then
+ state=1
+ else
+ state=0
+ fi
+fi
+
+if [[ $state -eq 0 ]]; then
+ exit 0
+fi
+
+echo "Do backup"
+echo "Backup"
+case $state in
+ 1)
+ echo
+ ;;
+ 2)
+ echo "#ffff00"
+ ;;
+ 3)
+ echo "#ff8a00"
+ ;;
+ 4)
+ echo "#ff5000"
+ ;;
+ 5)
+ echo "#ff0000"
+ ;;
+esac
diff --git a/config/i3blocks/scripts/battery b/config/i3blocks/scripts/battery
new file mode 100755
index 0000000..7a5563a
--- /dev/null
+++ b/config/i3blocks/scripts/battery
@@ -0,0 +1,75 @@
+#!/usr/bin/perl
+#
+# Copyright 2014 Pierre Mavro <deimos@deimos.fr>
+# Copyright 2014 Vivien Didelot <vivien@didelot.org>
+#
+# Licensed under the terms of the GNU GPL v3, or any later version.
+#
+# This script is meant to use with i3blocks. It parses the output of the "acpi"
+# command (often provided by a package of the same name) to read the status of
+# the battery, and eventually its remaining time (to full charge or discharge).
+#
+# The color will gradually change for a percentage below 85%, and the urgency
+# (exit code 33) is set if there is less that 5% remaining.
+
+use strict;
+use warnings;
+use utf8;
+
+my $acpi;
+my $status;
+my $percent;
+my $full_text;
+my $short_text;
+my $bat_number = $ENV{BLOCK_INSTANCE} || 0;
+
+# read the first line of the "acpi" command output
+open (ACPI, "acpi -b | grep 'Battery $bat_number' |") or die;
+$acpi = <ACPI>;
+close(ACPI);
+
+# fail on unexpected output
+if ($acpi !~ /: (\w+), (\d+)%/) {
+ die "$acpi\n";
+}
+
+$status = $1;
+$percent = $2;
+
+if ($status eq 'Discharging') {
+ $full_text = '🔋 ';
+} elsif ($status eq 'Charging') {
+ $full_text = '🔌 ';
+}
+
+$full_text .= "$percent%";
+
+$short_text = $full_text;
+
+if ($acpi =~ /(\d\d:\d\d):/) {
+ $full_text .= " ($1)";
+}
+
+# print text
+print "$full_text\n";
+print "$short_text\n";
+
+# consider color and urgent flag only on discharge
+if ($status eq 'Discharging') {
+
+ if ($percent < 20) {
+ print "#FF0000\n";
+ } elsif ($percent < 40) {
+ print "#FFAE00\n";
+ } elsif ($percent < 60) {
+ print "#FFF600\n";
+ } elsif ($percent < 85) {
+ print "#A8FF00\n";
+ }
+
+ if ($percent < 5) {
+ exit(33);
+ }
+}
+
+exit(0);
diff --git a/config/i3blocks/scripts/bbswitch b/config/i3blocks/scripts/bbswitch
new file mode 100755
index 0000000..a6ad24c
--- /dev/null
+++ b/config/i3blocks/scripts/bbswitch
@@ -0,0 +1,9 @@
+#!/bin/bash
+
+if [ -e /proc/acpi/bbswitch ]; then
+ if [ -n "`cat /proc/acpi/bbswitch | grep ON`" ]; then
+ echo OPTIMUS
+ echo OP
+ echo '#ffff00'
+ fi
+fi
diff --git a/config/i3blocks/scripts/email b/config/i3blocks/scripts/email
new file mode 100755
index 0000000..138deb8
--- /dev/null
+++ b/config/i3blocks/scripts/email
@@ -0,0 +1,5 @@
+#!/bin/bash
+
+email-unread -s | tr "\n" " " | sed 's/[ ]*$/\n/'
+echo
+echo "#ffff00"
diff --git a/config/i3blocks/scripts/mpd b/config/i3blocks/scripts/mpd
new file mode 100755
index 0000000..63ba924
--- /dev/null
+++ b/config/i3blocks/scripts/mpd
@@ -0,0 +1,10 @@
+#!/bin/bash
+if [ -n "`mpc status | grep -E "(playing|paused)"`" ]; then
+ echo `mpc -f "%artist%, %album%, %title%" status | head -1`
+ echo
+ if [ -n `mpc status | grep playing` ]; then
+ echo "#ffff00"
+ elif [ -n `mpc status | grep paused` ]; then
+ echo "#00ff00"
+ fi
+fi