From 29358b8d15ec1ddd8d2c11e2f2f6964ec49edc52 Mon Sep 17 00:00:00 2001 From: benj Date: Mon, 9 Sep 2019 15:22:07 -0700 Subject: basic i3 setup --- configs/i3/config | 217 -------------------------------- configs/i3/format_displays.sh | 83 ------------ configs/i3/i3blocks/config | 48 ------- configs/i3/i3blocks/scripts/archupdates | 10 -- configs/i3/i3blocks/scripts/bandwidth | 88 ------------- configs/i3/i3blocks/scripts/battery | 29 ----- configs/i3/i3blocks/scripts/brightness | 10 -- configs/i3/i3blocks/scripts/calendar | 40 ------ configs/i3/i3blocks/scripts/volume | 70 ----------- configs/i3/i3lock.sh | 6 - 10 files changed, 601 deletions(-) delete mode 100644 configs/i3/config delete mode 100755 configs/i3/format_displays.sh delete mode 100644 configs/i3/i3blocks/config delete mode 100755 configs/i3/i3blocks/scripts/archupdates delete mode 100755 configs/i3/i3blocks/scripts/bandwidth delete mode 100755 configs/i3/i3blocks/scripts/battery delete mode 100755 configs/i3/i3blocks/scripts/brightness delete mode 100755 configs/i3/i3blocks/scripts/calendar delete mode 100755 configs/i3/i3blocks/scripts/volume delete mode 100755 configs/i3/i3lock.sh (limited to 'configs') diff --git a/configs/i3/config b/configs/i3/config deleted file mode 100644 index e709703..0000000 --- a/configs/i3/config +++ /dev/null @@ -1,217 +0,0 @@ -# This file has been auto-generated by i3-config-wizard(1). -# It will not be overwritten, so edit it as you like. -# -# Should you change your keyboard layout some time, delete -# this file and re-run i3-config-wizard(1). -# -# i3 config file (v4) -# -# Please see https://i3wm.org/docs/userguide.html for a complete reference! - -set $mod Mod4 - -# Font for window titles. Will also be used by the bar unless a different font -# is used in the bar {} block below. -font pango:monospace 8 - -# This font is widely installed, provides lots of unicode glyphs, right-to-left -# text rendering and scalability on retina/hidpi displays (thanks to pango). -# font pango:DejaVu Sans Mono 8 -font pango:Source Code Pro 8 - -# Background -exec --no-startup-id feh --bg-fill ~/pictures/Yosemite-Color-Block.png - -# Compositor -exec --no-startup-id compton --config ~/.config/compton.conf -b - -# The combination of xss-lock, nm-applet and pactl is a popular choice, so -# they are included here as an example. Modify as you see fit. - -# Lock screen with i3lock and custom wallpaper -exec --no-startup-id /usr/local/bin/i3lock - -## Allow yad to float for i3bar calendar -for_window [class="Yad"] floating enable - -# NetworkManager is the most popular way to manage wireless networks on Linux, -# and nm-applet is a desktop environment-independent system tray GUI for it. -exec --no-startup-id nm-applet - -# Use pactl to adjust volume in PulseAudio. -bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +5% && pkill -SIGRTMIN+10 i3blocks -bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -5% && pkill -SIGRTMIN+10 i3blocks -bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && pkill -SIGRTMIN+10 i3blocks - -# Use change_brightness (in .setup dir) to adjust backlight -bindsym XF86MonBrightnessUp exec --no-startup-id change_brightness -i 50 && pkill -SIGRTMIN+9 i3blocks -bindsym XF86MonBrightnessDown exec --no-startup-id change_brightness -d 50 && pkill -SIGRTMIN+9 i3blocks - -# Use format_displays (in .setup dir) to configure external displays -bindsym XF86LaunchA exec --no-startup-id format_displays - -# Use Mouse+$mod to drag floating windows to their wanted position -floating_modifier $mod - -# start a terminal -bindsym $mod+Return exec urxvt - -# kill focused window -bindsym $mod+q kill - -# start dmenu (a program launcher) -# bindsym $mod+space exec --no-startup-id dmenu_run -# There also is the (new) i3-dmenu-desktop which only displays applications -# shipping a .desktop file. It is a wrapper around dmenu, so you need that -# installed. -# bindsym $mod+space exec --no-startup-id i3-dmenu-desktop -bindsym $mod+space exec --no-startup-id rofi -lines 5 -padding 18 -width 60 -location 0 -show drun -sidebar-mode -columns 3 -font 'Source Code Pro 18' -bindsym $mod+Tab exec --no-startup-id rofi -lines 5 -padding 18 -width 60 -location 0 -show window -sidebar-mode -columns 4 -font 'Source Code Pro 18' - -# change focus -bindsym $mod+h focus left -bindsym $mod+j focus down -bindsym $mod+k focus up -bindsym $mod+l focus right - -# alternatively, you can use the cursor keys: -bindsym $mod+Left focus left -bindsym $mod+Down focus down -bindsym $mod+Up focus up -bindsym $mod+Right focus right - -# move focused window -bindsym $mod+Shift+h move left -bindsym $mod+Shift+j move down -bindsym $mod+Shift+k move up -bindsym $mod+Shift+l move right - -# alternatively, you can use the cursor keys: -bindsym $mod+Shift+Left move left -bindsym $mod+Shift+Down move down -bindsym $mod+Shift+Up move up -bindsym $mod+Shift+Right move right - -# split in horizontal orientation -bindsym $mod+equal split h - -# split in vertical orientation -bindsym $mod+Shift+equal split v - -# enter fullscreen mode for the focused container -bindsym $mod+f fullscreen toggle - -# change container layout (stacked, tabbed, toggle split) -bindsym $mod+s layout stacking -bindsym $mod+w layout tabbed -bindsym $mod+e layout toggle split - -# toggle tiling / floating -bindsym $mod+Shift+d floating toggle - -# change focus between tiling / floating windows -bindsym $mod+d focus mode_toggle - -# focus the parent container -bindsym $mod+a focus parent - -# focus the child container -#bindsym $mod+d focus child - -# Define names for default workspaces for which we configure key bindings later on. -# We use variables to avoid repeating the names in multiple places. -set $ws1 "1" -set $ws2 "2" -set $ws3 "3" -set $ws4 "4" -set $ws5 "5" -set $ws6 "6" -set $ws7 "7" -set $ws8 "8" -set $ws9 "9" -set $ws10 "10" - -# switch to workspace -bindsym $mod+1 workspace $ws1 -bindsym $mod+2 workspace $ws2 -bindsym $mod+3 workspace $ws3 -bindsym $mod+4 workspace $ws4 -bindsym $mod+5 workspace $ws5 -bindsym $mod+6 workspace $ws6 -bindsym $mod+7 workspace $ws7 -bindsym $mod+8 workspace $ws8 -bindsym $mod+9 workspace $ws9 -bindsym $mod+0 workspace $ws10 - -# move focused container to workspace -bindsym $mod+Shift+1 move container to workspace $ws1 -bindsym $mod+Shift+2 move container to workspace $ws2 -bindsym $mod+Shift+3 move container to workspace $ws3 -bindsym $mod+Shift+4 move container to workspace $ws4 -bindsym $mod+Shift+5 move container to workspace $ws5 -bindsym $mod+Shift+6 move container to workspace $ws6 -bindsym $mod+Shift+7 move container to workspace $ws7 -bindsym $mod+Shift+8 move container to workspace $ws8 -bindsym $mod+Shift+9 move container to workspace $ws9 -bindsym $mod+Shift+0 move container to workspace $ws10 - -# reload the configuration file -bindsym $mod+Shift+c reload -# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) -bindsym $mod+Shift+r restart -# exit i3 (logs you out of your X session) -bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'" - -# fullscreen videos to small sticky in corner -bindsym $mod+y fullscreen disable; floating enable; resize set 844 480; sticky enable; move position 870 25 - -# resize window (you can also use the mouse for that) -mode "resize" { - # These bindings trigger as soon as you enter the resize mode - - # Pressing left will shrink the window’s width. - # Pressing right will grow the window’s width. - # Pressing up will shrink the window’s height. - # Pressing down will grow the window’s height. - bindsym h resize shrink width 10 px or 10 ppt - bindsym j resize grow height 10 px or 10 ppt - bindsym k resize shrink height 10 px or 10 ppt - bindsym l resize grow width 10 px or 10 ppt - - # same bindings, but for the arrow keys - bindsym Left resize shrink width 10 px or 10 ppt - bindsym Down resize grow height 10 px or 10 ppt - bindsym Up resize shrink height 10 px or 10 ppt - bindsym Right resize grow width 10 px or 10 ppt - - # back to normal: Enter or Escape or $mod+r - bindsym Return mode "default" - bindsym Escape mode "default" - bindsym $mod+r mode "default" -} - -bindsym $mod+r mode "resize" - -# Start i3bar to display a workspace bar (plus the system information i3status -# finds out, if available) - -# custom bindings for i3blocks -bar { - status_command i3blocks - i3bar_command i3bar -t - - font pango:Font Awesome,Source Code Pro 9 - - position bottom - mode dock - colors { - statusline #76c2d6 - background #1d2021A0 - - # Type border background text - focused_workspace #191919 #191919 #bf3f34 - active_workspace #191919 #191919 #696f89 - inactive_workspace #191919 #191919 #696f89 - urgent_workspace #191919 #191919 #c7a551 - } -} diff --git a/configs/i3/format_displays.sh b/configs/i3/format_displays.sh deleted file mode 100755 index 68279d7..0000000 --- a/configs/i3/format_displays.sh +++ /dev/null @@ -1,83 +0,0 @@ -#!/usr/bin/env bash - -# get the displays which are connected and setup an associative array -DISPLAYS=( $(xrandr | grep " connected" | awk '{print $1}') ) -declare -A DISP_RES - -BG_IMG="~/pictures/Yosemite-Color-Block.png" - -VERBOSE="" -if_echo () { - if [ -n "$VERBOSE" ]; then - echo $1 - fi -} - -while getopts ":h" opt; do - case ${opt} in - h ) VERBOSE="on" - ;; - \? ) echo "read the script for help; -v for verbose logging" - ;; - esac -done - -for (( i=0; i <${#DISPLAYS[@]}; i++ )); do - # store the assocated resolutions - DISPLAY_NAME=${DISPLAYS[i]} - DISP_RES["$DISPLAY_NAME"]=$(xrandr | grep "^$DISPLAY_NAME" -A 1 | tail -n 1 | awk '{print $1}') -done - -# We setup a consistent monitor ordering as follows... -# ----- ----- ------ ------ -# | DP-1 | | DP-2 | | HDMI-1 | | HDMI-2 | -# ----- ----- ------ ------ -# \ \ / / -# \ | | / -# \ ----- / -# \ | eDP-1 |----/ -# _____ - -EDP_1=${DISP_RES["eDP-1"]} -DP_1=${DISP_RES["DP-1"]} -DP_2=${DISP_RES["DP-2"]} -HDMI_1=${DISP_RES["HDMI-1"]} - -if [ -n "$EDP_1" ]; then - # if no other displays are set, then we bring all windows into eDP-1 - if [[ -z "$DP_1" && -z "$DP_2" && -z "$HDMI_1" ]]; then - if_echo "No displays detected. Resetting primary display (eDP-1)" - xrandr --auto - else - if_echo "Found other displays, and explicitly setting primary display (eDP-1)" - xrandr --output eDP-1 --mode "$EDP_1" - fi -fi - -if [ -n "$DP_1" ]; then - if_echo "Found DP-1. Setting DP-1 above primary display (eDP-1)" - xrandr --output DP-1 --mode "$DP_1" --above eDP-1 -fi - -if [[ -n "$DP_2" && -n "$DP_1" ]]; then - if_echo "Found DP-2. Setting DP-2 right of DP-1" - xrandr --output DP-2 --mode "$DP_2" --right-of DP-1 -elif [[ -n "$DP_2" ]]; then - if_echo "Found DP-2 but not DP-1. Setting DP-2 above primary display (eDP-1)" - xrandr --output DP-2 --mode "$DP_2" --above eDP-1 -fi - -if [[ -n "$HDMI_1" && -n "$DP_2" && "$DP_1" ]]; then - if_echo "Found HDMI-1. Setting it right of DP-2" - xrandr --output HDMI-1 --mode "$HDMI_1" --right-of DP-2 -elif [[ -n "$HDMI_1" && ( "$DP_2" || "$DP_1" ) ]]; then - if [ -n "$DP_2" ]; then - if_echo "Found HDMI-1 and DP-2 but not DP-1. Setting HDMI-1 right of DP-2" - xrandr --output HDMI-1 --mode "$HDMI_1" --right-of DP-2 - else - if_echo "Found HDMI-1 and DP-1 but not DP-2. Setting HDMI-1 right of DP-1" - xrandr --output HDMI-1 --mode "$HDMI_1" --right-of DP-1 - fi -fi - -feh bg-fill "$IMG" diff --git a/configs/i3/i3blocks/config b/configs/i3/i3blocks/config deleted file mode 100644 index 34a7aef..0000000 --- a/configs/i3/i3blocks/config +++ /dev/null @@ -1,48 +0,0 @@ -command=/usr/lib/i3blocks/$BLOCK_NAME -separator=false -separator_block_width=15 -markup=pango - -[battery] -command=/usr/local/i3blocks/$BLOCK_NAME -interval=1 -color=#eee8d5 - -[brightness] -command=/usr/local/i3blocks/$BLOCK_NAME -interval=once -signal=9 -color=#ffff33 - -[volume] -command=/usr/local/i3blocks/$BLOCK_NAME -instance=Master -interval=once -signal=10 -color=#4ca2df - -[bandwidth] -command=/usr/local/i3blocks/$BLOCK_NAME -instance=wlp3s0 -interval=1 -# color=#859900 - -[memory] -label= -interval=1 -color=#e6ccff - -[temperature] -label= -interval=10 -color=#cb4b16 - -[archupdates] -command=/usr/local/i3blocks/$BLOCK_NAME -interval=60 -color=#49E20E - -[calendar] -command=/usr/local/i3blocks/calendar -interval=60 -color=#ffffff diff --git a/configs/i3/i3blocks/scripts/archupdates b/configs/i3/i3blocks/scripts/archupdates deleted file mode 100755 index c07c45f..0000000 --- a/configs/i3/i3blocks/scripts/archupdates +++ /dev/null @@ -1,10 +0,0 @@ -#!/usr/bin/bash - -PAC_UPDATES=$(checkupdates | wc -l) -AUR_UPDATES=$(cower -u | wc -l) - -if [[ $PAC_UPDATES -gt 0 || $AUR_UPDATES -gt 0 ]]; then - echo " [$PAC_UPDATES .. $AUR_UPDATES]" -else - echo " 0" -fi \ No newline at end of file diff --git a/configs/i3/i3blocks/scripts/bandwidth b/configs/i3/i3blocks/scripts/bandwidth deleted file mode 100755 index d7db2a6..0000000 --- a/configs/i3/i3blocks/scripts/bandwidth +++ /dev/null @@ -1,88 +0,0 @@ -#!/bin/bash -# Copyright (C) 2012 Stefan Breunig -# Copyright (C) 2014 kaueraal -# Copyright (C) 2015 Thiago Perrotta - -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -# Use the provided interface, otherwise the device used for the default route. -if [[ -n $BLOCK_INSTANCE ]]; then - INTERFACE=$BLOCK_INSTANCE -else - INTERFACE=$(ip route | awk '/^default/ { print $5 ; exit }') -fi - -# Issue #36 compliant. -if ! [ -e "/sys/class/net/${INTERFACE}/operstate" ] || ! [ "`cat /sys/class/net/${INTERFACE}/operstate`" = "up" ] -then - echo "$INTERFACE down" - echo "$INTERFACE down" - echo "#FF0000" - exit 0 -fi - -# path to store the old results in -path="/dev/shm/$(basename $0)-${INTERFACE}" - -# grabbing data for each adapter. -read rx < "/sys/class/net/${INTERFACE}/statistics/rx_bytes" -read tx < "/sys/class/net/${INTERFACE}/statistics/tx_bytes" - -# get time -time=$(date +%s) - -# write current data if file does not exist. Do not exit, this will cause -# problems if this file is sourced instead of executed as another process. -if ! [[ -f "${path}" ]]; then - echo "${time} ${rx} ${tx}" > "${path}" - chmod 0666 "${path}" -fi - -# read previous state and update data storage -read old < "${path}" -echo "${time} ${rx} ${tx}" > "${path}" - -# parse old data and calc time passed -old=(${old//;/ }) -time_diff=$(( $time - ${old[0]} )) - -# sanity check: has a positive amount of time passed -[[ "${time_diff}" -gt 0 ]] || exit - -# calc bytes transferred, and their rate in byte/s -rx_diff=$(( $rx - ${old[1]} )) -tx_diff=$(( $tx - ${old[2]} )) -rx_rate=$(( $rx_diff / $time_diff )) -tx_rate=$(( $tx_diff / $time_diff )) - -# shift by 10 bytes to get KiB/s. If the value is larger than -# 1024^2 = 1048576, then display MiB/s instead - -# incoming -echo -n "⇘" -rx_kib=$(( $rx_rate >> 10 )) -if [[ "$rx_rate" -gt 1048576 ]]; then - printf '%sM' "`echo "scale=1; $rx_kib / 1024" | bc`" -else - echo -n "${rx_kib}K" -fi - -# outgoing -echo -n "" -tx_kib=$(( $tx_rate >> 10 )) -if [[ "$tx_rate" -gt 1048576 ]]; then - printf '%sM' "`echo "scale=1; $tx_kib / 1024" | bc`" -else - echo -n "${tx_kib}K" -fi diff --git a/configs/i3/i3blocks/scripts/battery b/configs/i3/i3blocks/scripts/battery deleted file mode 100755 index 802689b..0000000 --- a/configs/i3/i3blocks/scripts/battery +++ /dev/null @@ -1,29 +0,0 @@ -#!/usr/bin/bash - -BAT_DIR=/sys/class/power_supply/BAT0 -CHARGE=$(cat $BAT_DIR/capacity) -CHARGE_FULL=$(cat $BAT_DIR/charge_full) -CHARGE_NOW=$(cat $BAT_DIR/charge_now) -STATUS=$(cat $BAT_DIR/status) - -ICON_BATTERY_25_P= -ICON_BATTERY_50_P= -ICON_BATTERY_75_P= -ICON_BATTERY_FULL= -ICON_BATTERY_CHARGING= -ICON_FULL= - -PERCENT_FULL=$(echo - | awk -v charge_full="$CHARGE_FULL" -v charge_now="$CHARGE_NOW" '{printf "%1.0f\n", (charge_now / charge_full)*100}') -if [[ $STATUS == "Full" ]]; then - echo "$ICON_FULL" -elif [[ $STATUS == "Charging" ]]; then - echo "$ICON_BATTERY_CHARGING ($PERCENT_FULL%)" -elif [[ $PERCENT_FULL -lt 100 ]]; then - echo "$ICON_BATTERY_FULL ($PERCENT_FULL%)" -elif [[ $PERCENT_FULL -lt 75 ]]; then - echo "$ICON_BATTERY_75_P ($PERCENT_FULL%)" -elif [[ $PERCENT_FULL -lt 50 ]]; then - echo "$ICON_BATTERY_50_P ($PERCENT_FULL%)" -elif [[ $PERCENT_FULL -lt 25 ]]; then - echo "$ICON_BATTERY_25_P ($PERCENT_FULL%)" -fi diff --git a/configs/i3/i3blocks/scripts/brightness b/configs/i3/i3blocks/scripts/brightness deleted file mode 100755 index 64ea1d8..0000000 --- a/configs/i3/i3blocks/scripts/brightness +++ /dev/null @@ -1,10 +0,0 @@ -#!/usr/bin/bash - -BRIGHTNESS_DIR=/sys/class/backlight/intel_backlight -MAX_BRIGHTNESS=$(cat $BRIGHTNESS_DIR/max_brightness) -CURR_BRIGHTNESS=$(cat $BRIGHTNESS_DIR/actual_brightness) - -ICON_BRIGHT_SUN="☀" -BRIGHTNESS_P=$(echo - | awk -v max="$MAX_BRIGHTNESS" -v curr="$CURR_BRIGHTNESS" '{printf "%1.0f\n", (curr / max)*100}') - -echo "$ICON_BRIGHT_SUN $BRIGHTNESS_P%" diff --git a/configs/i3/i3blocks/scripts/calendar b/configs/i3/i3blocks/scripts/calendar deleted file mode 100755 index 7ad0363..0000000 --- a/configs/i3/i3blocks/scripts/calendar +++ /dev/null @@ -1,40 +0,0 @@ -#! /bin/sh - -WIDTH=${WIDTH:-100} -HEIGHT=${HEIGHT:-100} -DATEFMT=${DATEFMT:-"+%Y-%M-%d %H:%m"} -SHORTFMT=${SHORTFMT:-"+%H:%M:%S"} - -OPTIND=1 -while getopts ":f:W:H:" opt; do - case $opt in - f) DATEFMT="$OPTARG" ;; - W) WIDTH="$OPTARG" ;; - H) HEIGHT="$OPTARG" ;; - \?) - echo "Invalid option: -$OPTARG" >&2 - exit 1 - ;; - :) - echo "Option -$OPTARG requires an argument." >&2 - exit 1 - ;; - esac -done - -case "$BLOCK_BUTTON" in - 1|2|3) - - # the position of the upper left corner of the popup - posX=$(( ( $BLOCK_X - 230 ) - $WIDTH / 2 )) - posY=$(( ( $BLOCK_Y - 200 ) - $HEIGHT )) - - i3-msg -q "exec yad --calendar \ - --width=$WIDTH --height=$HEIGHT \ - --undecorated --fixed \ - --close-on-unfocus --no-buttons \ - --posx=$posX --posy=$posY \ - > /dev/null" -esac -echo "$LABEL$(date "$DATEFMT") " -echo "$LABEL$(date "$SHORTFMT") " diff --git a/configs/i3/i3blocks/scripts/volume b/configs/i3/i3blocks/scripts/volume deleted file mode 100755 index 1e318a0..0000000 --- a/configs/i3/i3blocks/scripts/volume +++ /dev/null @@ -1,70 +0,0 @@ -#!/bin/bash -# Copyright (C) 2014 Julien Bonjean -# Copyright (C) 2014 Alexander Keller - -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. - -# You should have received a copy of the GNU General Public License -# along with this program. If not, see . - -#------------------------------------------------------------------------ - -# The second parameter overrides the mixer selection -# For PulseAudio users, use "pulse" -# For Jack/Jack2 users, use "jackplug" -# For ALSA users, you may use "default" for your primary card -# or you may use hw:# where # is the number of the card desired -MIXER="default" -[ -n "$(lsmod | grep pulse)" ] && MIXER="pulse" -[ -n "$(lsmod | grep jack)" ] && MIXER="jackplug" -MIXER="${2:-$MIXER}" - -# The instance option sets the control to report and configure -# This defaults to the first control of your selected mixer -# For a list of the available, use `amixer -D $Your_Mixer scontrols` -SCONTROL="${BLOCK_INSTANCE:-$(amixer -D $MIXER scontrols | - sed -n "s/Simple mixer control '\([A-Za-z ]*\)',0/\1/p" | - head -n1 - )}" - -# The first parameter sets the step to change the volume by (and units to display) -# This may be in in % or dB (eg. 5% or 3dB) -STEP="${1:-5%}" - -#------------------------------------------------------------------------ - -capability() { # Return "Capture" if the device is a capture device - amixer -D $MIXER get $SCONTROL | - sed -n "s/ Capabilities:.*cvolume.*/Capture/p" -} - -volume() { - amixer -D $MIXER get $SCONTROL $(capability) -} - -format() { - perl_filter='if (/.*\[(\d+%)\] (\[(-?\d+.\d+dB)\] )?\[(on|off)\]/)' - perl_filter+='{CORE::say $4 eq "off" ? " MUTE" : "' - # If dB was selected, print that instead - perl_filter+=$([[ $STEP = *dB ]] && echo '$3' || echo ' $1') - perl_filter+='"; exit}' - perl -ne "$perl_filter" -} - -#------------------------------------------------------------------------ - -case $BLOCK_BUTTON in - 3) amixer -q -D $MIXER sset $SCONTROL $(capability) toggle ;; # right click, mute/unmute - 4) amixer -q -D $MIXER sset $SCONTROL $(capability) ${STEP}+ unmute ;; # scroll up, increase - 5) amixer -q -D $MIXER sset $SCONTROL $(capability) ${STEP}- unmute ;; # scroll down, decrease -esac - -volume | format diff --git a/configs/i3/i3lock.sh b/configs/i3/i3lock.sh deleted file mode 100755 index 822451d..0000000 --- a/configs/i3/i3lock.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -IMG="~/pictures/Yosemite-Color-Block.png" - -xautolock -time 1 -locker "i3lock -i $IMG" -notify 20 -notifier 'xset dpms force off' & -xautolock -time 10 -locker "systemctl suspend" & -- cgit v1.2.3