diff --git a/.i3blocks/beep b/.i3blocks/beep new file mode 100755 index 0000000..60304f9 --- /dev/null +++ b/.i3blocks/beep @@ -0,0 +1,16 @@ +#!/bin/bash + +if [[ -n "$button" ]] +then + $HOME/.local/bin/toggle-beep +fi + +echo -n "beep " + +if [[ -e /dev/input/by-path/platform-pcspkr-event-spkr ]] +then + echo "" +else + echo "" +fi + diff --git a/.i3blocks/bepo b/.i3blocks/bepo new file mode 100755 index 0000000..3626819 --- /dev/null +++ b/.i3blocks/bepo @@ -0,0 +1,23 @@ +#!/bin/bash + +runtime="${XDG_RUNTIME_DIR}/i3blocks" +[[ ! -d "$runtime" ]] && mkdir -p "$runtime" + +if [[ -n "$button" ]] +then + if [[ -f "$runtime/oss" ]] + then + setxkbmap fr bepo + rm "$runtime/oss" + else + setxkbmap fr oss + touch "$runtime/oss" + fi +fi + +if [[ -f "$runtime/oss" ]] +then + echo "oss " +else + echo "bepo" +fi diff --git a/.i3blocks/mpd.new b/.i3blocks/mpd.new new file mode 100755 index 0000000..3267a24 --- /dev/null +++ b/.i3blocks/mpd.new @@ -0,0 +1,136 @@ +#!/bin/bash + +LONG=25 +SHORT=10 + +human_time() { + local seconds="$1" + if [[ "$seconds" -lt 0 ]] + then + echo "--:--" + return + fi + local minutes=$(( $seconds / 60 )) + seconds=$(( $seconds % 60 )) + if [[ "$minutes" -ge 90 ]] + then + printf "%5s\n" "${minutes}m" + else + printf "%02d:%02d\n" "$minutes" "$seconds" + fi + return +} + +if ! systemctl --user is-active mpd &>/dev/null +then + origstatus='off' +else + origstatus="$(mpc status | sed -n '2p' | grep -Eo '^\[.*\]' | tr -d '[]')" + [[ -z "$origstatus" ]] && origstatus='stop' +fi + + +case $BLOCK_BUTTON in + 1) mpc -q prev ;; + 2) mpc -q toggle ;; + 3) mpc -q next ;; + 4) mpc -q volume +2 ;; + 5) mpc -q volume -2 ;; +esac + +status="" +case $origstatus in + stop ) status="" ;; + paused ) status="" ;; + playing ) status="" ;; + off ) status="" ;; +esac + +if [[ "$origstatus" != "stop" ]] && [[ "$origstatus" != "off" ]] +then + if [[ ! -f /dev/shm/mpd ]] + then + mpc -f '[[%artist%§]%title%|[%file%]' current > /dev/shm/mpd + fi + + song=$( /dev/shm/mpd-scroll + song="$( /dev/shm/mpd-scroll + fi + fi + + time="$(echo -e 'status\nclose' | nc -U $MPD_HOST | grep time \ + | cut -d' ' -f2)" + + time_elapsed=$(human_time "${time%:*}") + time_total=$(human_time "${time#*:}") + time_left=$(human_time "$(( ${time#*:} - ${time%:*} ))") + + longtime="[$time_elapsed $time_left ${time_total/00:00/--:--}]" + shorttime="$time_elapsed $time_left" + + case $scrolling in + long) + longsong="${song} " + shortsong="${song} " + ;; + short) + longsong="$(" + echo "${shortsong} $status$shorttime" +else + [[ -f /dev/shm/mpd ]] && rm /dev/shm/mpd + [[ -f /dev/shm/mpd-scroll ]] && rm /dev/shm/mpd-scroll + printf "%${LONG}s $status[--:-- --:-- --:--]\n" " " + printf "%${SHORT}s $status--:-- --:--\n" " " +fi + + diff --git a/.local/bin/mcaselector b/.local/bin/mcaselector new file mode 100755 index 0000000..6450d33 --- /dev/null +++ b/.local/bin/mcaselector @@ -0,0 +1,5 @@ +#!/bin/sh + +/usr/lib/jvm/java-14-openjdk/bin/java --module-path /usr/lib/jvm/java-14-openjdk/lib/javafx.base.jar:/usr/lib/jvm/java-14-openjdk/lib/javafx.controls.jar:/usr/lib/jvm/java-14-openjdk/lib/javafx.fxml.jar:/usr/lib/jvm/java-14-openjdk/lib/javafx.graphics.jar:/usr/lib/jvm/java-14-openjdk/lib/javafx.media.jar:/usr/lib/jvm/java-14-openjdk/lib/javafx.swing.jar:/usr/lib/jvm/java-14-openjdk/lib/javafx.web.jar:/usr/lib/jvm/java-14-openjdk/lib/javafx-swt.jar:/usr/lib/jvm/java-14-openjfx/lib/javafx.base.jar:/usr/lib/jvm/java-14-openjfx/lib/javafx.controls.jar:/usr/lib/jvm/java-14-openjfx/lib/javafx.fxml.jar:/usr/lib/jvm/java-14-openjfx/lib/javafx.graphics.jar:/usr/lib/jvm/java-14-openjfx/lib/javafx.media.jar:/usr/lib/jvm/java-14-openjfx/lib/javafx.swing.jar:/usr/lib/jvm/java-14-openjfx/lib/javafx.web.jar:/usr/lib/jvm/java-14-openjfx/lib/javafx-swt.jar --add-modules ALL-MODULE-PATH -jar $(dirname $0)/mcaselector-1.12.jar + +rm -rf $(dirname $0)/cache diff --git a/.local/bin/mcaselector-1.12.jar b/.local/bin/mcaselector-1.12.jar new file mode 100644 index 0000000..ed83ea8 Binary files /dev/null and b/.local/bin/mcaselector-1.12.jar differ