From a49c9e47fd7197bb247e2c89ffc9d463058c79fc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?tr=C3=A9meur?= Date: Sat, 30 Nov 2019 21:33:03 +0000 Subject: [PATCH] First commit --- dots/.XCompose | 18 ++++ dots/.conkyrc | 80 +++++++++++++++++ dots/.zshrc | 196 ++++++++++++++++++++++++++++++++++++++++++ scripts/dotset.sh | 6 ++ scripts/nowplaying.sh | 22 +++++ scripts/spotify.sh | 7 ++ scripts/today.sh | 6 ++ 7 files changed, 335 insertions(+) create mode 100644 dots/.XCompose create mode 100644 dots/.conkyrc create mode 100644 dots/.zshrc create mode 100755 scripts/dotset.sh create mode 100755 scripts/nowplaying.sh create mode 100755 scripts/spotify.sh create mode 100755 scripts/today.sh diff --git a/dots/.XCompose b/dots/.XCompose new file mode 100644 index 0000000..c913b28 --- /dev/null +++ b/dots/.XCompose @@ -0,0 +1,18 @@ +include "%L" + +# CUSTOM COMBINATIONS + : "ɐ" U0250 + : "ɻ" U027b + : "ʌ" U028c + : "ʍ" U028d +

: "ɛ" U025b + : "ɡ" U0261 + : "ɪ" U026a + : "ɔ" U0254 + : "ʃ" U0283 + : "θ" U03b8 + : "ʊ" U028a + : "ʉ" U0289 + : "ˈ" U02c8 + : "ː" U02d0 + : "ʒ" U0292 diff --git a/dots/.conkyrc b/dots/.conkyrc new file mode 100644 index 0000000..6a5efbf --- /dev/null +++ b/dots/.conkyrc @@ -0,0 +1,80 @@ +-- vim: ts=4 sw=4 noet ai cindent syntax=lua +--[[ +Conky, a system monitor, based on torsmo + +Any original torsmo code is licensed under the BSD license + +All code written since the fork of torsmo is licensed under the GPL + +Please see COPYING for details + +Copyright (c) 2004, Hannu Saransaari and Lauri Hakkarainen +Copyright (c) 2005-2012 Brenden Matthews, Philip Kovacs, et. al. (see AUTHORS) +All rights reserved. + +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 . +]] + +conky.config = { + alignment = 'top_left', + background = false, + border_width = 1, + cpu_avg_samples = 2, + default_color = 'black', + default_outline_color = 'grey', + default_shade_color = 'grey', + draw_borders = false, + draw_graph_borders = true, + draw_outline = false, + draw_shades = false, + double_buffer = true, + use_xft = true, + font = 'Inconsolata:size=9', + gap_x = 25, + gap_y = 40, + minimum_width = 5, + net_avg_samples = 2, + no_buffers = true, + out_to_console = false, + out_to_stderr = false, + extra_newline = false, + own_window = true, + own_window_class = 'Conky', + own_window_type = 'desktop', + own_window_transparent = false, + own_window_argb_visual = true, + own_window_argb_value = 100, + own_window_colour = '87875f', + stippled_borders = 0, + update_interval = 1.0, + uppercase = false, + use_spacer = 'none', + show_graph_scale = false, + show_graph_range = false, + use_xft = true +} + +conky.text = [[ +Sync +${exec command insync get_sync_progress} +$hr +Calendar +${exec command ~/.scripts/today.sh} +$hr +To do +${exec command ~/go/bin/todoist sync && ~/go/bin/todoist list --filter '(overdue | today)' | sed 's/^..............//' | sed 's/\#Inbox\ //g' | sed 's/\ ..\:..\ //g' | sort | sed 's/^.\{14\}//'} +$hr +Music +${exec command ~/.scripts/nowplaying.sh} +${execbar command ~/.scripts/cmus-conky/cmus-conky-timebar.sh} +]] diff --git a/dots/.zshrc b/dots/.zshrc new file mode 100644 index 0000000..909c0dc --- /dev/null +++ b/dots/.zshrc @@ -0,0 +1,196 @@ +# If you come from bash you might have to change your $PATH. +# export PATH=$HOME/bin:/usr/local/bin:$PATH +export PATH="${PATH}:${HOME}/.local/bin/" +(cat ~/.cache/wal/sequences &) + +# Path to your oh-my-zsh installation. +export ZSH="${HOME}/.oh-my-zsh" + +# export GOPATH=$HOME/Appsetc/go + +gitwho(){if git rev-parse --git-dir > /dev/null 2>&1; then + git config user.name; +else +fi; +} + +# Set name of the theme to load --- if set to "random", it will +# load a random theme each time oh-my-zsh is loaded, in which case, +# to know which specific one was loaded, run: echo $RANDOM_THEME +# See https://github.com/robbyrussell/oh-my-zsh/wiki/Themes +POWERLEVEL9K_MODE='nerdfont-complete' +ZSH_THEME="powerlevel9k/powerlevel9k" +POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(os_icon dir custom_prompt) +POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(status custom_gitwho vcs battery) +POWERLEVEL9K_PROMPT_ADD_NEWLINE=true +POWERLEVEL9K_RIGHT_SEGMENT_SEPARATOR='' + +. ~/.colourvars + +POWERLEVEL9K_CUSTOM_PROMPT="echo $'\u2023'" +POWERLEVEL9K_CUSTOM_PROMPT_FOREGROUND="$LINE1" +POWERLEVEL9K_CUSTOM_PROMPT_BACKGROUND="clear" + +POWERLEVEL9K_CUSTOM_GITWHO="gitwho" +POWERLEVEL9K_CUSTOM_GITWHO_FOREGROUND="$LINE2" +POWERLEVEL9K_CUSTOM_GITWHO_BACKGROUND="clear" + +POWERLEVEL9K_OS_ICON_FOREGROUND="$LINE1" +POWERLEVEL9K_OS_ICON_BACKGROUND='clear' + +# General Directory Settings +POWERLEVEL9K_DIR_DEFAULT_FOREGROUND="$LINE2" +POWERLEVEL9K_DIR_DEFAULT_BACKGROUND='clear' + +# Home Folder Settings +POWERLEVEL9K_DIR_HOME_FOREGROUND="$LINE2" +POWERLEVEL9K_DIR_HOME_BACKGROUND='clear' + +# Home Subfolder Settings +POWERLEVEL9K_DIR_HOME_SUBFOLDER_FOREGROUND="$LINE2" +POWERLEVEL9K_DIR_HOME_SUBFOLDER_BACKGROUND='clear' + +# Etc Directory Settings +POWERLEVEL9K_DIR_ETC_FOREGROUND="$LINE2" +POWERLEVEL9K_DIR_ETC_BACKGROUND='clear' + +# Status OK +POWERLEVEL9K_STATUS_OK_FOREGROUND="$LINE2" +POWERLEVEL9K_STATUS_OK_BACKGROUND='clear' + +# Status Error (if P9K_STATUS_CROSS=true) +POWERLEVEL9K_STATUS_ERROR_FOREGROUND='124' +POWERLEVEL9K_STATUS_ERROR_BACKGROUND='clear' + +# Status Error (if P9K_STATUS_CROSS=false) +POWERLEVEL9K_STATUS_ERROR_CR_FOREGROUND='124' +POWERLEVEL9K_STATUS_ERROR_CR_BACKGROUND='clear' + +# Battery Low +POWERLEVEL9K_BATTERY_LOW_FOREGROUND='124' +POWERLEVEL9K_BATTERY_LOW_BACKGROUND='clear' + +# Battery Charging +POWERLEVEL9K_BATTERY_CHARGING_FOREGROUND="$LINE1" +POWERLEVEL9K_BATTERY_CHARGING_BACKGROUND='clear' + +# Battery Charged +POWERLEVEL9K_BATTERY_CHARGED_FOREGROUND="$LINE1" +POWERLEVEL9K_BATTERY_CHARGED_BACKGROUND='clear' + +# Battery Disconnected +POWERLEVEL9K_BATTERY_DISCONNECTED_FOREGROUND="$LINE3" +POWERLEVEL9K_BATTERY_DISCONNECTED_BACKGROUND='clear' + +# Checkout Clean +POWERLEVEL9K_VCS_CLEAN_FOREGROUND="$LINE4" +POWERLEVEL9K_VCS_CLEAN_BACKGROUND='clear' + +# Checkout Contains Untracked Files +POWERLEVEL9K_VCS_UNTRACKED_FOREGROUND="$LINE5" +POWERLEVEL9K_VCS_UNTRACKED_BACKGROUND='clear' + +# Checkout Contains (Tracked) Modified Files +POWERLEVEL9K_VCS_MODIFIED_FOREGROUND="$LINE5" +POWERLEVEL9K_VCS_MODIFIED_BACKGROUND='clear' + +# Checkout Is Clobbered +POWERLEVEL9K_VCS_CLOBBERED_FOREGROUND="$LINE5" +POWERLEVEL9K_VCS_CLOBBERED_BACKGROUND='clear' + +# Set list of themes to pick from when loading at random +# Setting this variable when ZSH_THEME=random will cause zsh to load +# a theme from this variable instead of looking in ~/.oh-my-zsh/themes/ +# If set to an empty array, this variable will have no effect. +# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" ) + +# Uncomment the following line to use case-sensitive completion. +# CASE_SENSITIVE="true" + +# Uncomment the following line to use hyphen-insensitive completion. +# Case-sensitive completion must be off. _ and - will be interchangeable. +# HYPHEN_INSENSITIVE="true" + +# Uncomment the following line to disable bi-weekly auto-update checks. +# DISABLE_AUTO_UPDATE="true" + +# Uncomment the following line to automatically update without prompting. +# DISABLE_UPDATE_PROMPT="true" + +# Uncomment the following line to change how often to auto-update (in days). +# export UPDATE_ZSH_DAYS=13 + +# Uncomment the following line if pasting URLs and other text is messed up. +# DISABLE_MAGIC_FUNCTIONS=true + +# Uncomment the following line to disable colors in ls. +# DISABLE_LS_COLORS="true" + +# Uncomment the following line to disable auto-setting terminal title. +# DISABLE_AUTO_TITLE="true" + +# Uncomment the following line to enable command auto-correction. +# ENABLE_CORRECTION="true" + +# Uncomment the following line to display red dots whilst waiting for completion. +# COMPLETION_WAITING_DOTS="true" + +# Uncomment the following line if you want to disable marking untracked files +# under VCS as dirty. This makes repository status check for large repositories +# much, much faster. +# DISABLE_UNTRACKED_FILES_DIRTY="true" + +# Uncomment the following line if you want to change the command execution time +# stamp shown in the history command output. +# You can set one of the optional three formats: +# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd" +# or set a custom format using the strftime function format specifications, +# see 'man strftime' for details. +# HIST_STAMPS="mm/dd/yyyy" + +# Would you like to use another custom folder than $ZSH/custom? +# ZSH_CUSTOM=/path/to/new-custom-folder + +# Which plugins would you like to load? +# Standard plugins can be found in ~/.oh-my-zsh/plugins/* +# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/ +# Example format: plugins=(rails git textmate ruby lighthouse) +# Add wisely, as too many plugins slow down shell startup. +plugins=(git git-extras zsh-syntax-highlighting common-aliases) + +source $ZSH/oh-my-zsh.sh + +# User configuration + +# export MANPATH="/usr/local/man:$MANPATH" + +# You may need to manually set your language environment +# export LANG=en_US.UTF-8 + +# Preferred editor for local and remote sessions +# if [[ -n $SSH_CONNECTION ]]; then +# export EDITOR='vim' +# else +# export EDITOR='mvim' +# fi + +# Compilation flags +# export ARCHFLAGS="-arch x86_64" + +# Set personal aliases, overriding those provided by oh-my-zsh libs, +# plugins, and themes. Aliases can be placed here, though oh-my-zsh +# users are encouraged to define aliases within the ZSH_CUSTOM folder. +# For a full list of active aliases, run `alias`. +# +# Example aliases +# alias zshconfig="mate ~/.zshrc" +# alias ohmyzsh="mate ~/.oh-my-zsh" + +# Set location of aliases +. ~/.oh-my-zsh/custom/aliases + +# wal script +pywal() { + wal --vte -li "$1" + ~/.linux/scripts/colorus/convert.sh +} diff --git a/scripts/dotset.sh b/scripts/dotset.sh new file mode 100755 index 0000000..c49a467 --- /dev/null +++ b/scripts/dotset.sh @@ -0,0 +1,6 @@ +mv ~/mdddots ~/.linux + +ln -s ~/.linux/dots/.zshrc ~ +ln -s ~/.linux/dots/.gitconfig ~ +ln -s ~/.linux/dots/.XCompose ~ +ln -s ~/.linux/dots/.conkyrc ~ diff --git a/scripts/nowplaying.sh b/scripts/nowplaying.sh new file mode 100755 index 0000000..9b30baf --- /dev/null +++ b/scripts/nowplaying.sh @@ -0,0 +1,22 @@ +#/usr/bin/bash + +ARTIST=$( cmus-remote -Q 2>/dev/null | grep "tag artist" | cut -d " " -f 3- ) +TITLE=$( cmus-remote -Q 2>/dev/null | grep "tag title" | cut -d " " -f 3- ) +SPOTIFY_PID="$(pidof -s spotify || pidof -s .spotify-wrapped)" + +if [ -z "$ARTIST" ]; +then + if [ -z "$SPOTIFY_PID" ]; + then + echo "Nothing playing" + else + if [ -z "$(dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.freedesktop.DBus.Properties.Get string:'org.mpris.MediaPlayer2.Player' string:'Metadata'|egrep -A 2 "artist"|egrep -v "artist"|egrep -v "array"|cut -b 27-|cut -d '"' -f 1|egrep -v ^$)" ]; + then + echo "Nothing playing" + else + echo "$(dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.freedesktop.DBus.Properties.Get string:'org.mpris.MediaPlayer2.Player' string:'Metadata'|egrep -A 2 "artist"|egrep -v "artist"|egrep -v "array"|cut -b 27-|cut -d '"' -f 1|egrep -v ^$): $(dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.freedesktop.DBus.Properties.Get string:'org.mpris.MediaPlayer2.Player' string:'Metadata'|egrep -A 1 "title"|egrep -v "title"|cut -b 44-|cut -d '"' -f 1|egrep -v ^$)" + fi + fi +else + echo "$ARTIST: $TITLE" +fi diff --git a/scripts/spotify.sh b/scripts/spotify.sh new file mode 100755 index 0000000..743b8f5 --- /dev/null +++ b/scripts/spotify.sh @@ -0,0 +1,7 @@ +#!/bin/bash + +title=`dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.freedesktop.DBus.Properties.Get string:'org.mpris.MediaPlayer2.Player' string:'Metadata'|egrep -A 1 "title"|egrep -v "title"|cut -b 44-|cut -d '"' -f 1|egrep -v ^$` +echo $title + +artist=`dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.freedesktop.DBus.Properties.Get string:'org.mpris.MediaPlayer2.Player' string:'Metadata'|egrep -A 2 "artist"|egrep -v "artist"|egrep -v "array"|cut -b 27-|cut -d '"' -f 1|egrep -v ^$` +echo $artist diff --git a/scripts/today.sh b/scripts/today.sh new file mode 100755 index 0000000..c21e975 --- /dev/null +++ b/scripts/today.sh @@ -0,0 +1,6 @@ +#/usr/bin/bash + +now=$(date "+%Y-%m-%d") +tomorrow=$(date "+%Y-%m-%d" -d "+1 day") + +gcalcli agenda $now $tomorrow --military --nodeclined | sed 's/\x1b\[[0-9;]*m//g'