Project import generated by Copybara.

GitOrigin-RevId: 975161aa2f1036264c56d7a81b79ac74ba68b276
diff --git a/private_dot_config/i3blocks/battery/README.md b/private_dot_config/i3blocks/battery/README.md
new file mode 100644
index 0000000..5f14bdb
--- /dev/null
+++ b/private_dot_config/i3blocks/battery/README.md
@@ -0,0 +1,20 @@
+# battery
+
+Show battery info.
+
+![](battery.png)
+
+# Dependencies
+
+* `acpi`
+
+# Config
+
+```
+[battery]
+command=$SCRIPT_DIR/battery
+interval=30
+LABEL=BAT
+#LABEL=⚡
+#BAT_NUMBER=0
+```
diff --git a/private_dot_config/i3blocks/battery/battery.png b/private_dot_config/i3blocks/battery/battery.png
new file mode 100644
index 0000000..3bf89ba
--- /dev/null
+++ b/private_dot_config/i3blocks/battery/battery.png
Binary files differ
diff --git a/private_dot_config/i3blocks/battery/executable_battery b/private_dot_config/i3blocks/battery/executable_battery
new file mode 100644
index 0000000..fe64835
--- /dev/null
+++ b/private_dot_config/i3blocks/battery/executable_battery
@@ -0,0 +1,98 @@
+#!/usr/bin/env perl
+#
+# Copyright 2014 Pierre Mavro <deimos@deimos.fr>
+# Copyright 2014 Vivien Didelot <vivien@didelot.org>
+#
+# Slightly modified by Adrià Vilanova
+#
+# 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 $ac_adapt;
+my $full_text;
+my $short_text;
+my $bat_number = $ENV{BAT_NUMBER} || 0;
+my $label = $ENV{LABEL} || "";
+
+# read the first line of the "acpi" command output
+open (ACPI, "acpi -b 2>/dev/null| grep 'Battery $bat_number' |") or die;
+$acpi = <ACPI>;
+close(ACPI);
+
+# fail on unexpected output
+if (not defined($acpi)) {
+    # don't print anything to stderr if there is no battery
+    exit(0);
+}
+elsif ($acpi !~ /: ([\w\s]+), (\d+)%/) {
+	die "$acpi\n";
+}
+
+$status = $1;
+$percent = $2;
+$full_text = "$label";
+
+if ($status eq 'Discharging') {
+	$full_text .= '⚡';
+} elsif ($status eq 'Charging') {
+	$full_text .= '🔌';
+} elsif ($status eq 'Unknown') {
+	open (AC_ADAPTER, "acpi -a |") or die;
+	$ac_adapt = <AC_ADAPTER>;
+	close(AC_ADAPTER);
+
+	if ($ac_adapt =~ /: ([\w-]+)/) {
+		$ac_adapt = $1;
+
+		if ($ac_adapt eq 'on-line') {
+			$full_text .= '🔌';
+		} elsif ($ac_adapt eq 'off-line') {
+			$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/private_dot_config/i3blocks/battery/i3blocks.conf b/private_dot_config/i3blocks/battery/i3blocks.conf
new file mode 100644
index 0000000..18b3968
--- /dev/null
+++ b/private_dot_config/i3blocks/battery/i3blocks.conf
@@ -0,0 +1,6 @@
+[battery]
+command=$SCRIPT_DIR/battery
+interval=30
+LABEL=BAT
+#LABEL=⚡
+#BAT_NUMBER=0