Merge branch 'master' of frogit:geoffrey/dotfiles
This commit is contained in:
commit
3d9635c306
|
@ -1,3 +1,4 @@
|
||||||
#include ".Xresources.d/xft"
|
#include ".Xresources.d/xft"
|
||||||
#include ".Xresources.d/theme"
|
#include ".Xresources.d/theme"
|
||||||
#include ".Xresources.d/xterm"
|
#include ".Xresources.d/xterm"
|
||||||
|
#include ".Xresources.d/urxvt"
|
||||||
|
|
56
Xresources.d/urxvt
Normal file
56
Xresources.d/urxvt
Normal file
|
@ -0,0 +1,56 @@
|
||||||
|
! Scrollback position
|
||||||
|
! TODO Do not work
|
||||||
|
|
||||||
|
! do not scroll with output
|
||||||
|
URxvt*scrollTtyOutput: false
|
||||||
|
|
||||||
|
! scroll in relation to buffer (with mouse scroll or Shift+Page Up)
|
||||||
|
URxvt*scrollWithBuffer: true
|
||||||
|
|
||||||
|
! scroll back to the bottom on keypress
|
||||||
|
URxvt*scrollTtyKeypress: true
|
||||||
|
|
||||||
|
|
||||||
|
! Scrollback buffer in secondary screen
|
||||||
|
! TODO Do not work
|
||||||
|
URxvt.secondaryScreen: 1
|
||||||
|
URxvt.secondaryScroll: 0
|
||||||
|
|
||||||
|
|
||||||
|
! Font declaration
|
||||||
|
URxvt.font: xft:DejaVu Sans Mono for Powerline:size=12:antialias=true
|
||||||
|
|
||||||
|
! Font spacing
|
||||||
|
URxvt.letterSpace: 0
|
||||||
|
|
||||||
|
! No scroll bar
|
||||||
|
URxvt*scrollBar: false
|
||||||
|
|
||||||
|
! Disable Ctrl+Shift default bindings
|
||||||
|
URxvt.iso14755: false
|
||||||
|
URxvt.iso14755_52: false
|
||||||
|
|
||||||
|
! Copy/Paste CLIPBOARD selection with Ctrl+Shift+C/V
|
||||||
|
URxvt.keysym.C-S-C: eval:selection_to_clipboard
|
||||||
|
URxvt.keysym.C-S-V: eval:paste_clipboard
|
||||||
|
|
||||||
|
|
||||||
|
! Extensions
|
||||||
|
URxvt.perl-ext-common: default,matcher,resize-font
|
||||||
|
|
||||||
|
! Clickable URL (extension: matcher)
|
||||||
|
URxvt.url-launcher: /usr/bin/xdg-open
|
||||||
|
URxvt.matcher.button: 1
|
||||||
|
|
||||||
|
! Changing font size on the fly (extension: resize-font, package: urxvt-resize-font-git)
|
||||||
|
URxvt.keysym.C-KP_Subtract: resize-font:smaller
|
||||||
|
URxvt.keysym.C-KP_Add: resize-font:bigger
|
||||||
|
|
||||||
|
! Fake transparency (without compositing manager)
|
||||||
|
urxvt*transparent: true
|
||||||
|
urxvt*shading: 30
|
||||||
|
|
||||||
|
! True transparency (with compositing manager)
|
||||||
|
!urxvt*depth: 32
|
||||||
|
!urxvt*background: rgba:2700/2800/2200/c800
|
||||||
|
|
29
bashrc
29
bashrc
|
@ -12,9 +12,9 @@ export BROWSER=qutebrowser
|
||||||
|
|
||||||
# Some programs need those changes
|
# Some programs need those changes
|
||||||
export PATH="/usr/lib/ccache/bin/:$PATH"
|
export PATH="/usr/lib/ccache/bin/:$PATH"
|
||||||
if [ -d $HOME/.gem/ruby/2.4.0/bin ]; then
|
# if [ -d $HOME/.gem/ruby/2.4.0/bin ]; then
|
||||||
export PATH="$HOME/.gem/ruby/2.4.0/bin/:$PATH"
|
# export PATH="$HOME/.gem/ruby/2.4.0/bin/:$PATH"
|
||||||
fi
|
# fi
|
||||||
if [ -d /data/data/com.termux/ ]; then
|
if [ -d /data/data/com.termux/ ]; then
|
||||||
export PATH="$HOME/.termux/scripts:$HOME/.termux/bin:$PATH"
|
export PATH="$HOME/.termux/scripts:$HOME/.termux/bin:$PATH"
|
||||||
fi
|
fi
|
||||||
|
@ -43,9 +43,13 @@ alias rm='rm -Iv --one-file-system'
|
||||||
alias free='free -m'
|
alias free='free -m'
|
||||||
alias df='df -h'
|
alias df='df -h'
|
||||||
alias pacman='pacman --color auto'
|
alias pacman='pacman --color auto'
|
||||||
|
alias pacaur='pacaur --color auto'
|
||||||
alias dmesg='dmesg --ctime'
|
alias dmesg='dmesg --ctime'
|
||||||
|
|
||||||
# Frequent mistakes
|
# Frequent mistakes
|
||||||
|
alias sl=ls
|
||||||
|
alias al=la
|
||||||
|
alias mdkir=mkdir
|
||||||
alias systemclt=systemctl
|
alias systemclt=systemctl
|
||||||
|
|
||||||
# Shortcuts for commonly used commands
|
# Shortcuts for commonly used commands
|
||||||
|
@ -59,15 +63,30 @@ alias mc="machines"
|
||||||
alias tracefiles="strace -f -t -e trace=file"
|
alias tracefiles="strace -f -t -e trace=file"
|
||||||
|
|
||||||
# Superseding commands with better ones if they are present
|
# Superseding commands with better ones if they are present
|
||||||
|
function vi() {
|
||||||
if which vim &> /dev/null; then
|
if which vim &> /dev/null; then
|
||||||
alias vi='vim'
|
alias vi='vim'
|
||||||
fi
|
fi
|
||||||
|
vim "$@"
|
||||||
|
}
|
||||||
|
function pass() {
|
||||||
if which gopass &> /dev/null; then
|
if which gopass &> /dev/null; then
|
||||||
alias pass='gopass'
|
alias pass='gopass'
|
||||||
fi
|
fi
|
||||||
|
gopass "$@"
|
||||||
|
}
|
||||||
|
function wol() {
|
||||||
if which wakeonlan &> /dev/null; then
|
if which wakeonlan &> /dev/null; then
|
||||||
alias wol='wakeonlan'
|
alias wol='wakeonlan'
|
||||||
fi
|
fi
|
||||||
|
wakeonlan "$@"
|
||||||
|
}
|
||||||
|
function mutt() {
|
||||||
|
if which neomutt &> /dev/null; then
|
||||||
|
alias mutt='neomutt'
|
||||||
|
fi
|
||||||
|
neomutt "$@"
|
||||||
|
}
|
||||||
|
|
||||||
# SHELL CUSTOMIZATION
|
# SHELL CUSTOMIZATION
|
||||||
|
|
||||||
|
@ -84,7 +103,8 @@ shopt -s hostcomplete
|
||||||
|
|
||||||
export HISTSIZE=100000
|
export HISTSIZE=100000
|
||||||
export HISTFILESIZE=${HISTSIZE}
|
export HISTFILESIZE=${HISTSIZE}
|
||||||
export HISTCONTROL=ignoreboth
|
export HISTCONTROL=ignorespace:erasedups
|
||||||
|
export HISTTIMEFORMAT="%d/%m/%y %H:%M:%S "
|
||||||
|
|
||||||
# PROMPT CUSTOMIZATION
|
# PROMPT CUSTOMIZATION
|
||||||
|
|
||||||
|
@ -99,6 +119,7 @@ export PS1="\[\e]2;\u@\h \w\a\]\[\e[0;37m\][\[\e[0;${col}m\]\u\[\e[0;37m\]@\[\e[
|
||||||
export PS2="> "
|
export PS2="> "
|
||||||
export PS3="+ "
|
export PS3="+ "
|
||||||
export PS4="- "
|
export PS4="- "
|
||||||
|
export PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}:${PWD}\007"'
|
||||||
|
|
||||||
# CUSTOM SCRIPTS
|
# CUSTOM SCRIPTS
|
||||||
|
|
||||||
|
|
|
@ -1,53 +0,0 @@
|
||||||
shadow = false;
|
|
||||||
no-dnd-shadow = true;
|
|
||||||
no-dock-shadow = true;
|
|
||||||
clear-shadow = true;
|
|
||||||
|
|
||||||
menu-opacity = 0.9;
|
|
||||||
inactive-opacity = 0.93;
|
|
||||||
active-opacity = 1;
|
|
||||||
alpha-step = 0.01;
|
|
||||||
inactive-dim = 0.0;
|
|
||||||
blur-background = false;
|
|
||||||
blur-kern = "3x3box";
|
|
||||||
|
|
||||||
fading = false;
|
|
||||||
fade-delta = 1;
|
|
||||||
fade-in-step = 0.03;
|
|
||||||
fade-out-step = 0.03;
|
|
||||||
fade-exclude = [ ];
|
|
||||||
|
|
||||||
backend = "xrender";
|
|
||||||
mark-wmwin-focused = true;
|
|
||||||
mark-ovredir-focused = true;
|
|
||||||
detect-rounded-corners = true;
|
|
||||||
detect-client-opacity = true;
|
|
||||||
unredir-if-possible = true;
|
|
||||||
refresh-rate = 0;
|
|
||||||
vsync = "none";
|
|
||||||
dbe = false;
|
|
||||||
paint-on-overlay = true;
|
|
||||||
focus-exclude = [ "class_g = 'Cairo-clock'" ];
|
|
||||||
detect-transient = true;
|
|
||||||
detect-client-leader = true;
|
|
||||||
invert-color-include = [ ];
|
|
||||||
glx-copy-from-front = false;
|
|
||||||
glx-swap-method = "undefined";
|
|
||||||
|
|
||||||
wintypes :
|
|
||||||
{
|
|
||||||
tooltip :
|
|
||||||
{
|
|
||||||
fade = true;
|
|
||||||
shadow = false;
|
|
||||||
opacity = 0.75;
|
|
||||||
focus = true;
|
|
||||||
};
|
|
||||||
fullscreen :
|
|
||||||
{
|
|
||||||
fade = true;
|
|
||||||
shadow = false;
|
|
||||||
opacity = 1;
|
|
||||||
focus = true;
|
|
||||||
};
|
|
||||||
};
|
|
|
@ -1,300 +1,63 @@
|
||||||
[global]
|
[global]
|
||||||
font = Cantarell 10
|
|
||||||
|
|
||||||
# Allow a small subset of html markup:
|
|
||||||
# <b>bold</b>
|
|
||||||
# <i>italic</i>
|
|
||||||
# <s>strikethrough</s>
|
|
||||||
# <u>underline</u>
|
|
||||||
#
|
|
||||||
# For a complete reference see
|
|
||||||
# <http://developer.gnome.org/pango/stable/PangoMarkupFormat.html>.
|
|
||||||
# If markup is not allowed, those tags will be stripped out of the
|
|
||||||
# message.
|
|
||||||
allow_markup = yes
|
|
||||||
|
|
||||||
# The format of the message. Possible variables are:
|
|
||||||
# %a appname
|
|
||||||
# %s summary
|
|
||||||
# %b body
|
|
||||||
# %i iconname (including its path)
|
|
||||||
# %I iconname (without its path)
|
|
||||||
# %p progress value if set ([ 0%] to [100%]) or nothing
|
|
||||||
# Markup is allowed
|
|
||||||
format = "%s %p\n%b"
|
|
||||||
|
|
||||||
# Sort messages by urgency.
|
|
||||||
sort = no
|
|
||||||
|
|
||||||
# Show how many messages are currently hidden (because of geometry).
|
|
||||||
indicate_hidden = yes
|
|
||||||
|
|
||||||
# Alignment of message text.
|
|
||||||
# Possible values are "left", "center" and "right".
|
|
||||||
alignment = left
|
alignment = left
|
||||||
|
always_run_script = true
|
||||||
# The frequency with wich text that is longer than the notification
|
browser = /usr/bin/qutebrowser
|
||||||
# window allows bounces back and forth.
|
class = Dunst
|
||||||
# This option conflicts with "word_wrap".
|
|
||||||
# Set to 0 to disable.
|
|
||||||
bounce_freq = 5
|
|
||||||
|
|
||||||
|
|
||||||
# Show age of message if message is older than show_age_threshold
|
|
||||||
# seconds.
|
|
||||||
# Set to -1 to disable.
|
|
||||||
show_age_threshold = 60
|
|
||||||
|
|
||||||
# Split notifications into multiple lines if they don't fit into
|
|
||||||
# geometry.
|
|
||||||
word_wrap = no
|
|
||||||
|
|
||||||
# Ignore newlines '\n' in notifications.
|
|
||||||
ignore_newline = no
|
|
||||||
|
|
||||||
|
|
||||||
# The geometry of the window:
|
|
||||||
# [{width}]x{height}[+/-{x}+/-{y}]
|
|
||||||
# The geometry of the message window.
|
|
||||||
# The height is measured in number of notifications everything else
|
|
||||||
# in pixels. If the width is omitted but the height is given
|
|
||||||
# ("-geometry x2"), the message window expands over the whole screen
|
|
||||||
# (dmenu-like). If width is 0, the window expands to the longest
|
|
||||||
# message displayed. A positive x is measured from the left, a
|
|
||||||
# negative from the right side of the screen. Y is measured from
|
|
||||||
# the top and down respectevly.
|
|
||||||
# The width can be negative. In this case the actual width is the
|
|
||||||
# screen width minus the width defined in within the geometry option.
|
|
||||||
geometry = "0x0-25+25"
|
|
||||||
|
|
||||||
# Shrink window if it's smaller than the width. Will be ignored if
|
|
||||||
# width is 0.
|
|
||||||
shrink = yes
|
|
||||||
|
|
||||||
# The transparency of the window. Range: [0; 100].
|
|
||||||
# This option will only work if a compositing windowmanager is
|
|
||||||
# present (e.g. xcompmgr, compiz, etc.).
|
|
||||||
transparency = 17
|
|
||||||
|
|
||||||
# Don't remove messages, if the user is idle (no mouse or keyboard input)
|
|
||||||
# for longer than idle_threshold seconds.
|
|
||||||
# Set to 0 to disable.
|
|
||||||
# default 120
|
|
||||||
idle_threshold = 120
|
|
||||||
|
|
||||||
# Which monitor should the notifications be displayed on.
|
|
||||||
monitor = 0
|
|
||||||
|
|
||||||
# Display notification on focused monitor. Possible modes are:
|
|
||||||
# mouse: follow mouse pointer
|
|
||||||
# keyboard: follow window with keyboard focus
|
|
||||||
# none: don't follow anything
|
|
||||||
#
|
|
||||||
# "keyboard" needs a windowmanager that exports the
|
|
||||||
# _NET_ACTIVE_WINDOW property.
|
|
||||||
# This should be the case for almost all modern windowmanagers.
|
|
||||||
#
|
|
||||||
# If this option is set to mouse or keyboard, the monitor option
|
|
||||||
# will be ignored.
|
|
||||||
follow = none
|
|
||||||
|
|
||||||
# Should a notification popped up from history be sticky or timeout
|
|
||||||
# as if it would normally do.
|
|
||||||
sticky_history = yes
|
|
||||||
|
|
||||||
# Maximum amount of notifications kept in history
|
|
||||||
history_length = 20
|
|
||||||
|
|
||||||
# Display indicators for URLs (U) and actions (A).
|
|
||||||
show_indicators = yes
|
|
||||||
|
|
||||||
# The height of a single line. If the height is smaller than the
|
|
||||||
# font height, it will get raised to the font height.
|
|
||||||
# This adds empty space above and under the text.
|
|
||||||
line_height = 0
|
|
||||||
|
|
||||||
# Draw a line of "separator_height" pixel height between two
|
|
||||||
# notifications.
|
|
||||||
# Set to 0 to disable.
|
|
||||||
separator_height = 1
|
|
||||||
|
|
||||||
# Padding between text and separator.
|
|
||||||
# padding = 8
|
|
||||||
padding = 8
|
|
||||||
|
|
||||||
# Horizontal padding.
|
|
||||||
horizontal_padding = 10
|
|
||||||
|
|
||||||
# Define a color for the separator.
|
|
||||||
# possible values are:
|
|
||||||
# * auto: dunst tries to find a color fitting to the background;
|
|
||||||
# * foreground: use the same color as the foreground;
|
|
||||||
# * frame: use the same color as the frame;
|
|
||||||
# * anything else will be interpreted as a X color.
|
|
||||||
separator_color = #2ECC71
|
|
||||||
|
|
||||||
# Print a notification on startup.
|
|
||||||
# This is mainly for error detection, since dbus (re-)starts dunst
|
|
||||||
# automatically after a crash.
|
|
||||||
startup_notification = false
|
|
||||||
|
|
||||||
# dmenu path.
|
|
||||||
dmenu = /usr/bin/dmenu -p dunst:
|
dmenu = /usr/bin/dmenu -p dunst:
|
||||||
|
ellipsize = middle
|
||||||
# Browser for opening urls in context menu.
|
follow = none
|
||||||
browser = firefox
|
font = DejaVu Sans 10
|
||||||
|
force_xinerama = false
|
||||||
# Align icons left/right/off
|
format = "<b>%s %p</b>\n%b"
|
||||||
|
frame_color = "#A6E22E"
|
||||||
|
frame_width = 3
|
||||||
|
geometry = "500x5-30+20"
|
||||||
|
hide_duplicate_count = false
|
||||||
|
history_length = 20
|
||||||
|
horizontal_padding = 8
|
||||||
|
icon_path = /usr/share/icons/gnome/256x256/status/:/usr/share/icons/gnome/256x256/devices/
|
||||||
icon_position = left
|
icon_position = left
|
||||||
|
idle_threshold = 120
|
||||||
# Paths to default icons.
|
ignore_newline = no
|
||||||
icon_folders = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
|
indicate_hidden = yes
|
||||||
|
line_height = 0
|
||||||
[frame]
|
markup = full
|
||||||
width = 1
|
max_icon_size = 48
|
||||||
color = "#2ECC71"
|
monitor = 0
|
||||||
|
notification_height = 0
|
||||||
|
padding = 8
|
||||||
|
separator_color = frame
|
||||||
|
separator_height = 2
|
||||||
|
show_age_threshold = 60
|
||||||
|
show_indicators = yes
|
||||||
|
shrink = no
|
||||||
|
sort = yes
|
||||||
|
stack_duplicates = true
|
||||||
|
startup_notification = false
|
||||||
|
sticky_history = yes
|
||||||
|
title = Dunst
|
||||||
|
transparency = 0
|
||||||
|
verbosity = mesg
|
||||||
|
word_wrap = yes
|
||||||
|
[experimental]
|
||||||
|
per_monitor_dpi = false
|
||||||
[shortcuts]
|
[shortcuts]
|
||||||
|
|
||||||
# Shortcuts are specified as [modifier+][modifier+]...key
|
|
||||||
# Available modifiers are "ctrl", "mod1" (the alt-key), "mod2",
|
|
||||||
# "mod3" and "mod4" (windows-key).
|
|
||||||
# Xev might be helpful to find names for keys.
|
|
||||||
|
|
||||||
# Close notification.
|
|
||||||
close = mod4+n
|
|
||||||
|
|
||||||
# Close all notifications.
|
|
||||||
# close_all = ctrl+shift+space
|
|
||||||
close_all = ctrl+mod4+n
|
close_all = ctrl+mod4+n
|
||||||
|
close = mod4+n
|
||||||
# Redisplay last message(s).
|
|
||||||
# On the US keyboard layout "grave" is normally above TAB and left
|
|
||||||
# of "1".
|
|
||||||
history = shift+mod4+n
|
|
||||||
|
|
||||||
# Context menu.
|
|
||||||
context = mod1+mod4+n
|
context = mod1+mod4+n
|
||||||
|
history = shift+mod4+n
|
||||||
[urgency_low]
|
[urgency_low]
|
||||||
# IMPORTANT: colors have to be defined in quotation marks.
|
background = "#272822"
|
||||||
# Otherwise the "#" and following would be interpreted as a comment.
|
foreground = "#F8F8F2"
|
||||||
background = "#000000"
|
frame_color = "#A6E22E"
|
||||||
foreground = "#888888"
|
|
||||||
timeout = 10
|
timeout = 10
|
||||||
|
|
||||||
[urgency_normal]
|
[urgency_normal]
|
||||||
background = "#000000"
|
background = "#272822"
|
||||||
foreground = "#ffffff"
|
foreground = "#F8F8F2"
|
||||||
|
frame_color = "#F4BF75"
|
||||||
timeout = 10
|
timeout = 10
|
||||||
|
|
||||||
[urgency_critical]
|
[urgency_critical]
|
||||||
background = "#900000"
|
background = "#272822"
|
||||||
foreground = "#ffffff"
|
foreground = "#F8F8F2"
|
||||||
|
frame_color = "#F92672"
|
||||||
timeout = 0
|
timeout = 0
|
||||||
|
|
||||||
|
|
||||||
# Every section that isn't one of the above is interpreted as a rules to
|
|
||||||
# override settings for certain messages.
|
|
||||||
# Messages can be matched by "appname", "summary", "body", "icon", "category",
|
|
||||||
# "msg_urgency" and you can override the "timeout", "urgency", "foreground",
|
|
||||||
# "background", "new_icon" and "format".
|
|
||||||
# Shell-like globbing will get expanded.
|
|
||||||
#
|
|
||||||
# SCRIPTING
|
|
||||||
# You can specify a script that gets run when the rule matches by
|
|
||||||
# setting the "script" option.
|
|
||||||
# The script will be called as follows:
|
|
||||||
# script appname summary body icon urgency
|
|
||||||
# where urgency can be "LOW", "NORMAL" or "CRITICAL".
|
|
||||||
#
|
|
||||||
# NOTE: if you don't want a notification to be displayed, set the format
|
|
||||||
# to "".
|
|
||||||
# NOTE: It might be helpful to run dunst -print in a terminal in order
|
|
||||||
# to find fitting options for rules.
|
|
||||||
|
|
||||||
#[espeak]
|
|
||||||
# summary = "*"
|
|
||||||
# script = dunst_espeak.sh
|
|
||||||
|
|
||||||
#[script-test]
|
|
||||||
# summary = "*script*"
|
|
||||||
# script = dunst_test.sh
|
|
||||||
|
|
||||||
#[ignore]
|
|
||||||
# # This notification will not be displayed
|
|
||||||
# summary = "foobar"
|
|
||||||
# format = ""
|
|
||||||
|
|
||||||
#[signed_on]
|
|
||||||
# appname = Pidgin
|
|
||||||
# summary = "*signed on*"
|
|
||||||
# urgency = low
|
|
||||||
#
|
|
||||||
#[signed_off]
|
|
||||||
# appname = Pidgin
|
|
||||||
# summary = *signed off*
|
|
||||||
# urgency = low
|
|
||||||
#
|
|
||||||
#[says]
|
|
||||||
# appname = Pidgin
|
|
||||||
# summary = *says*
|
|
||||||
# urgency = critical
|
|
||||||
#
|
|
||||||
#[twitter]
|
|
||||||
# appname = Pidgin
|
|
||||||
# summary = *twitter.com*
|
|
||||||
# urgency = normal
|
|
||||||
#
|
|
||||||
#[Claws Mail]
|
|
||||||
# appname = claws-mail
|
|
||||||
# category = email.arrived
|
|
||||||
# urgency = normal
|
|
||||||
# background = "#2F899E"
|
|
||||||
# foreground = "#FFA247"
|
|
||||||
#
|
|
||||||
#[mute.sh]
|
|
||||||
# appname = mute
|
|
||||||
# category = mute.sound
|
|
||||||
# script = mute.sh
|
|
||||||
#
|
|
||||||
#[JDownloader]
|
|
||||||
# appname = JDownloader
|
|
||||||
# category = JD
|
|
||||||
# background = "#FFA247"
|
|
||||||
# foreground = "#FFFFFF"
|
|
||||||
#
|
|
||||||
#[newsbeuter]
|
|
||||||
# summary = *Feeds*
|
|
||||||
# background = "#A8EB41"
|
|
||||||
# foreground = "#FFFFFF"
|
|
||||||
#
|
|
||||||
[irc]
|
|
||||||
appname = weechat
|
|
||||||
timeout = 0
|
|
||||||
background = "#0033bb"
|
|
||||||
foreground = "#dddddd"
|
|
||||||
#
|
|
||||||
[weechat hl]
|
|
||||||
appname = weechat
|
|
||||||
category = weechat.HL
|
|
||||||
background = "#FF5C47"
|
|
||||||
foreground = "#FFFFFF"
|
|
||||||
#
|
|
||||||
[weechat pn]
|
|
||||||
appname = weechat
|
|
||||||
category = weechat.PM
|
|
||||||
background = "#D53B84"
|
|
||||||
foreground = "#FFFFFF"
|
|
||||||
#
|
|
||||||
#[CMUS]
|
|
||||||
# appname = CMUS
|
|
||||||
# category = cmus
|
|
||||||
# background = "#6C4AB7"
|
|
||||||
# foreground = "#FFE756"
|
|
||||||
#
|
|
||||||
#
|
|
||||||
# background = "#30AB70"
|
|
||||||
# foreground = "#F67245"
|
|
||||||
#
|
|
||||||
# vim: ft=cfg
|
|
||||||
|
|
7
config/i3/ashuffle
Executable file
7
config/i3/ashuffle
Executable file
|
@ -0,0 +1,7 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
while true
|
||||||
|
do
|
||||||
|
ashuffle
|
||||||
|
sleep 1
|
||||||
|
done
|
55
config/i3/batteryNotify
Executable file
55
config/i3/batteryNotify
Executable file
|
@ -0,0 +1,55 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
BATT="/sys/class/power_supply/BAT0"
|
||||||
|
LOW=10
|
||||||
|
CRIT=3
|
||||||
|
LASTSTATE="$HOME/.cache/batteryState"
|
||||||
|
|
||||||
|
function setState() { # state [...notify-send arguments]
|
||||||
|
state="$1"
|
||||||
|
last="$(cat "$LASTSTATE" 2> /dev/null)"
|
||||||
|
shift
|
||||||
|
|
||||||
|
echo "Battery state: $state"
|
||||||
|
|
||||||
|
if [ "$state" != "$last" ]
|
||||||
|
then
|
||||||
|
notify-send "$@"
|
||||||
|
echo "$state" > "$LASTSTATE"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function computeState() {
|
||||||
|
acpiStatus="$(cat "$BATT/status")"
|
||||||
|
acpiCapacity="$(cat "$BATT/capacity")"
|
||||||
|
|
||||||
|
if [ "$acpiStatus" == "Discharging" ]
|
||||||
|
then
|
||||||
|
if [ $acpiCapacity -le $CRIT ]
|
||||||
|
then
|
||||||
|
setState "CRIT" -u critical -i battery-caution "Battery level is critical" "$acpiCapacity %"
|
||||||
|
elif [ $acpiCapacity -le $LOW ]
|
||||||
|
then
|
||||||
|
setState "LOW" -u critical -i battery-low "Battery level is low" "$acpiCapacity %"
|
||||||
|
else
|
||||||
|
setState "DISCHARGING" -i battery-good "Battery is discharging" "$acpiCapacity %"
|
||||||
|
fi
|
||||||
|
elif [ "$acpiStatus" == "Charging" ]
|
||||||
|
then
|
||||||
|
setState "CHARGING" -u normal -i battery-good-charging "Battery is charging" "$acpiCapacity %"
|
||||||
|
elif [ "$acpiStatus" == "Full" ]
|
||||||
|
then
|
||||||
|
setState "FULL" -u low -i battery-full-charged "Battery is full" "$acpiCapacity %"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ "$1" == "-d" ]
|
||||||
|
then
|
||||||
|
while true
|
||||||
|
do
|
||||||
|
computeState
|
||||||
|
sleep 10
|
||||||
|
done
|
||||||
|
else
|
||||||
|
computeState
|
||||||
|
fi
|
|
@ -22,8 +22,7 @@ hide_edge_borders both
|
||||||
# Font for window titles. Will also be used by the bar unless a different font
|
# Font for window titles. Will also be used by the bar unless a different font
|
||||||
# is used in the bar {} block below.
|
# is used in the bar {} block below.
|
||||||
|
|
||||||
font pango:Source Code Pro 8
|
font pango:DejaVu Sans 8
|
||||||
font pango:DejaVu Sans Mono 8
|
|
||||||
font pango:Sans 8
|
font pango:Sans 8
|
||||||
|
|
||||||
# Use Mouse+$mod to drag floating windows
|
# Use Mouse+$mod to drag floating windows
|
||||||
|
@ -47,7 +46,7 @@ bindsym $mod+dollar exec --no-startup-id ~/.config/i3/sshmenu root
|
||||||
bindsym $mod+d exec --no-startup-id ~/.config/i3/dmenu_run
|
bindsym $mod+d exec --no-startup-id ~/.config/i3/dmenu_run
|
||||||
|
|
||||||
# Start Applications
|
# Start Applications
|
||||||
bindsym $mod+Return exec xterm
|
bindsym $mod+Return exec urxvtc
|
||||||
bindsym $mod+p exec thunar
|
bindsym $mod+p exec thunar
|
||||||
bindsym $mod+m exec qutebrowser --override-restore --backend=webengine
|
bindsym $mod+m exec qutebrowser --override-restore --backend=webengine
|
||||||
|
|
||||||
|
@ -60,8 +59,8 @@ bindsym $mod+F7 exec pactl suspend-sink @DEFAULT_SINK@ 1; exec pactl suspend-sin
|
||||||
bindsym $mod+F8 exec mpc prev
|
bindsym $mod+F8 exec mpc prev
|
||||||
bindsym $mod+F9 exec mpc toggle
|
bindsym $mod+F9 exec mpc toggle
|
||||||
bindsym $mod+F10 exec mpc next
|
bindsym $mod+F10 exec mpc next
|
||||||
bindsym $mod+F11 exec xterm -e 'pacmixer'
|
bindsym $mod+F11 exec urxvtc -e 'pacmixer'
|
||||||
bindsym $mod+F12 exec xterm -e 'pacmixer'
|
bindsym $mod+F12 exec urxvtc -e 'pacmixer'
|
||||||
|
|
||||||
#Brightness control
|
#Brightness control
|
||||||
bindsym XF86MonBrightnessDown exec xbacklight -dec 20
|
bindsym XF86MonBrightnessDown exec xbacklight -dec 20
|
||||||
|
@ -145,14 +144,19 @@ set $WS10 10
|
||||||
# Workspace output
|
# Workspace output
|
||||||
workspace "$WS1" output LVDS1
|
workspace "$WS1" output LVDS1
|
||||||
workspace "$WS2" output VGA1
|
workspace "$WS2" output VGA1
|
||||||
|
workspace "$WS2" output HDMI1
|
||||||
workspace "$WS3" output LVDS1
|
workspace "$WS3" output LVDS1
|
||||||
workspace "$WS4" output VGA1
|
workspace "$WS4" output VGA1
|
||||||
|
workspace "$WS4" output HDMI1
|
||||||
workspace "$WS5" output LVDS1
|
workspace "$WS5" output LVDS1
|
||||||
workspace "$WS6" output VGA1
|
workspace "$WS6" output VGA1
|
||||||
|
workspace "$WS6" output HDMI1
|
||||||
workspace "$WS7" output LVDS1
|
workspace "$WS7" output LVDS1
|
||||||
workspace "$WS8" output VGA1
|
workspace "$WS8" output VGA1
|
||||||
|
workspace "$WS8" output HDMI1
|
||||||
workspace "$WS9" output LVDS1
|
workspace "$WS9" output LVDS1
|
||||||
workspace "$WS10" output VGA1
|
workspace "$WS10" output VGA1
|
||||||
|
workspace "$WS10" output HDMI1
|
||||||
|
|
||||||
# switch to workspace
|
# switch to workspace
|
||||||
bindsym $mod+1 workspace $WS1
|
bindsym $mod+1 workspace $WS1
|
||||||
|
@ -356,17 +360,18 @@ bindsym $mod+F5 exec --no-startup-id xautolock -enable
|
||||||
|
|
||||||
|
|
||||||
# Autostart applications
|
# Autostart applications
|
||||||
exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 # Password remembering
|
#exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 # Password remembering
|
||||||
exec --no-startup-id gnome-keyring-daemon # Password remembering
|
#exec --no-startup-id gnome-keyring-daemon # Password remembering
|
||||||
|
exec --no-startup-id urxvtd -q -f # urxvt daemon
|
||||||
exec --no-startup-id numlockx on # Activate Num lock
|
exec --no-startup-id numlockx on # Activate Num lock
|
||||||
#exec --no-startup-id nm-applet # Network manager tray icon
|
|
||||||
#exec --no-startup-id compton -b # Compositing manager
|
|
||||||
exec --no-startup-id unclutter # Hide mouse cursor after some time
|
exec --no-startup-id unclutter # Hide mouse cursor after some time
|
||||||
exec --no-startup-id dunst # Notifications
|
#exec --no-startup-id dunst # Notifications (handled by systemd)
|
||||||
exec --no-startup-id keynav # Keyboard cursor controller
|
exec --no-startup-id keynav # Keyboard cursor controller
|
||||||
#exec --no-startup-id $HOME/.config/i3/clipmenud # Clipboard manager
|
#exec --no-startup-id $HOME/.config/i3/clipmenud # Clipboard manager
|
||||||
exec --no-startup-id mpd # Music Player Daemon
|
#exec --no-startup-id mpd # Music Player Daemon (handled by systemd)
|
||||||
|
exec --no-startup-id ~/.config/i3/ashuffle # MPD Auto-refill
|
||||||
exec --no-startup-id autorandr --change # Screen configuration and everything that depends on it
|
exec --no-startup-id autorandr --change # Screen configuration and everything that depends on it
|
||||||
|
exec --no-startup-id ~/.config/i3/batteryNotify -d # Battery state notification
|
||||||
|
|
||||||
set $ignore #ff00000
|
set $ignore #ff00000
|
||||||
|
|
||||||
|
|
34
config/khal/config
Normal file
34
config/khal/config
Normal file
|
@ -0,0 +1,34 @@
|
||||||
|
[calendars]
|
||||||
|
[[calendars]]
|
||||||
|
path = ~/.vdirsyncer/calendars/*
|
||||||
|
type = discover
|
||||||
|
|
||||||
|
# [[birthdays]]
|
||||||
|
# type=birthdays
|
||||||
|
# path = ~/.vdirsyncer/contacts/contacts/
|
||||||
|
# color = light magenta
|
||||||
|
|
||||||
|
[locale]
|
||||||
|
timeformat = %H:%M
|
||||||
|
dateformat = %d/%m
|
||||||
|
longdateformat = %d/%m/%Y
|
||||||
|
datetimeformat = %d/%m %H:%M
|
||||||
|
longdatetimeformat = %d/%m/%Y %H:%M
|
||||||
|
local_timezone = Europe/Paris
|
||||||
|
|
||||||
|
[default]
|
||||||
|
default_calendar = "Personnel"
|
||||||
|
default_command = interactive
|
||||||
|
highlight_event_days = True
|
||||||
|
show_all_days = True
|
||||||
|
timedelta = 7d
|
||||||
|
|
||||||
|
[highlight_days]
|
||||||
|
|
||||||
|
[view]
|
||||||
|
agenda_day_format = "{bold}{name}, {date-long}{reset}"
|
||||||
|
agenda_event_format = "{calendar-color}{cancelled}{start-end-time-style} {title}{repeat-symbol} | {location}{reset}"
|
||||||
|
bold_for_light_color = False
|
||||||
|
event_format = "{calendar-color}{cancelled}{start}-{end} {title}{repeat-symbol} | {location}{reset}"
|
||||||
|
event_view_always_visible = True
|
||||||
|
frame = color
|
43
config/khard/khard.conf
Normal file
43
config/khard/khard.conf
Normal file
|
@ -0,0 +1,43 @@
|
||||||
|
# example configuration file for khard version >= 0.11.0
|
||||||
|
# place it under $HOME/.config/khard/khard.conf
|
||||||
|
|
||||||
|
[addressbooks]
|
||||||
|
[[contacts]]
|
||||||
|
path = ~/.vdirsyncer/contacts/contacts/
|
||||||
|
|
||||||
|
[general]
|
||||||
|
debug = no
|
||||||
|
default_action = list
|
||||||
|
editor = vim
|
||||||
|
merge_editor = vimdiff
|
||||||
|
|
||||||
|
[contact table]
|
||||||
|
# display names by first or last name: first_name / last_name
|
||||||
|
display = first_name
|
||||||
|
# group by address book: yes / no
|
||||||
|
group_by_addressbook = no
|
||||||
|
# reverse table ordering: yes / no
|
||||||
|
reverse = no
|
||||||
|
# append nicknames to name column: yes / no
|
||||||
|
show_nicknames = no
|
||||||
|
# show uid table column: yes / no
|
||||||
|
show_uids = yes
|
||||||
|
# sort by first or last name: first_name / last_name
|
||||||
|
sort = last_name
|
||||||
|
# localize dates: yes / no
|
||||||
|
localize_dates = yes
|
||||||
|
|
||||||
|
[vcard]
|
||||||
|
# extend contacts with your own private objects
|
||||||
|
# these objects are stored with a leading "X-" before the object name in the vcard files
|
||||||
|
# every object label may only contain letters, digits and the - character
|
||||||
|
# example:
|
||||||
|
# private_objects = Jabber, Skype, Twitter
|
||||||
|
private_objects = Jabber, Skype, Twitter
|
||||||
|
# preferred vcard version: 3.0 / 4.0
|
||||||
|
preferred_version = 3.0
|
||||||
|
# Look into source vcf files to speed up search queries: yes / no
|
||||||
|
search_in_source_files = no
|
||||||
|
# skip unparsable vcard files: yes / no
|
||||||
|
skip_unparsable = no
|
||||||
|
|
10
config/offlineimap.py
Normal file
10
config/offlineimap.py
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
#! /usr/bin/env python2
|
||||||
|
from subprocess import check_output
|
||||||
|
|
||||||
|
|
||||||
|
def get_pass(account):
|
||||||
|
return check_output("pass " + account, shell=True).splitlines()[0]
|
||||||
|
|
||||||
|
def beep():
|
||||||
|
check_output("play -n synth sine E4 sine A5 remix 1-2 fade 0.5 1.2 0.5 2", shell=True)
|
||||||
|
|
12
config/polybar/bbswitch
Executable file
12
config/polybar/bbswitch
Executable file
|
@ -0,0 +1,12 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
state="$(grep -o '\w\+$' /proc/acpi/bbswitch)"
|
||||||
|
if [ "$state" == "ON" ]
|
||||||
|
then
|
||||||
|
echo ""
|
||||||
|
elif [ "$state" == "OFF" ]
|
||||||
|
then
|
||||||
|
echo ""
|
||||||
|
else
|
||||||
|
echo "?"
|
||||||
|
fi
|
|
@ -76,7 +76,7 @@ enable-ipc = true
|
||||||
inherit = bar/base
|
inherit = bar/base
|
||||||
|
|
||||||
modules-center = mpd
|
modules-center = mpd
|
||||||
modules-right = vpncheck eth wlan bbswitch xbacklight volume battery date
|
modules-right = mail todo vpncheck eth wlan bbswitch xbacklight volume battery shortdate
|
||||||
|
|
||||||
tray-position = right
|
tray-position = right
|
||||||
tray-padding = 2
|
tray-padding = 2
|
||||||
|
@ -84,7 +84,7 @@ tray-transparent = false
|
||||||
|
|
||||||
[bar/secondary]
|
[bar/secondary]
|
||||||
inherit = bar/base
|
inherit = bar/base
|
||||||
modules-right = cpu memory temperature vpncheck ethMore wlanMore filesystem bbswitch xbacklight volume date
|
modules-right = cpu memory temperature vpncheck ethMore wlanMore filesystem linuxmismatch bbswitch xbacklight volume date
|
||||||
|
|
||||||
|
|
||||||
[module/filesystem]
|
[module/filesystem]
|
||||||
|
@ -176,12 +176,35 @@ toggle-off-foreground = #55
|
||||||
|
|
||||||
[module/bbswitch]
|
[module/bbswitch]
|
||||||
type = custom/script
|
type = custom/script
|
||||||
exec = grep -o '\w\+$' /proc/acpi/bbswitch
|
exec = ~/.config/polybar/bbswitch
|
||||||
exec-if = test -f /proc/acpi/bbswitch
|
exec-if = test -f /proc/acpi/bbswitch
|
||||||
interval = 5
|
interval = 5
|
||||||
prefix =
|
format-prefix =
|
||||||
format-foreground = ${theme.redF}
|
format-foreground = ${theme.redF}
|
||||||
|
|
||||||
|
[module/todo]
|
||||||
|
type = custom/script
|
||||||
|
exec = ~/.config/polybar/todo
|
||||||
|
interval = 30
|
||||||
|
format-prefix =
|
||||||
|
format-foreground = ${theme.yellowF}
|
||||||
|
|
||||||
|
[module/mail]
|
||||||
|
type = custom/script
|
||||||
|
exec = cat ~/.cache/mutt/status
|
||||||
|
interval = 1
|
||||||
|
format-prefix =
|
||||||
|
format-foreground = ${theme.magentaF}
|
||||||
|
; format-background = ${theme.magentaB}
|
||||||
|
|
||||||
|
[module/linuxmismatch]
|
||||||
|
type = custom/script
|
||||||
|
exec = echo
|
||||||
|
exec-if = ~/.config/polybar/linuxmismatch
|
||||||
|
interval = 30
|
||||||
|
format-foreground = ${theme.yellowF}
|
||||||
|
; format-background = ${theme.yellowF}
|
||||||
|
|
||||||
[module/xbacklight]
|
[module/xbacklight]
|
||||||
type = internal/xbacklight
|
type = internal/xbacklight
|
||||||
output = ${env:display:LVDS1}
|
output = ${env:display:LVDS1}
|
||||||
|
@ -201,7 +224,7 @@ card = intel_backlight
|
||||||
|
|
||||||
[module/cpu]
|
[module/cpu]
|
||||||
type = internal/cpu
|
type = internal/cpu
|
||||||
interval = 0.5
|
interval = 1
|
||||||
format = <ramp-coreload>
|
format = <ramp-coreload>
|
||||||
format-foreground = ${theme.redF}
|
format-foreground = ${theme.redF}
|
||||||
ramp-coreload-0 = ▁
|
ramp-coreload-0 = ▁
|
||||||
|
@ -215,7 +238,7 @@ ramp-coreload-7 = █
|
||||||
|
|
||||||
[module/memory]
|
[module/memory]
|
||||||
type = internal/memory
|
type = internal/memory
|
||||||
interval = 2
|
interval = 1
|
||||||
format-foreground = ${theme.greenF}
|
format-foreground = ${theme.greenF}
|
||||||
label = %gb_free%
|
label = %gb_free%
|
||||||
|
|
||||||
|
@ -229,7 +252,7 @@ format-foreground = ${theme.blueF}
|
||||||
[module/eth]
|
[module/eth]
|
||||||
type = internal/network
|
type = internal/network
|
||||||
interface = ${env:ethI:eth0}
|
interface = ${env:ethI:eth0}
|
||||||
interval = 1
|
interval = 5
|
||||||
|
|
||||||
format-connected = <label-connected>
|
format-connected = <label-connected>
|
||||||
label-connected = %local_ip%
|
label-connected = %local_ip%
|
||||||
|
@ -244,7 +267,7 @@ label-connected = ↑%upspeed% ↓%downspeed%
|
||||||
[module/wlan]
|
[module/wlan]
|
||||||
type = internal/network
|
type = internal/network
|
||||||
interface = ${env:wlanI:wlan0}
|
interface = ${env:wlanI:wlan0}
|
||||||
interval = 1
|
interval = 5
|
||||||
|
|
||||||
format-connected = <ramp-signal> <label-connected>
|
format-connected = <ramp-signal> <label-connected>
|
||||||
label-connected = %local_ip% %essid%
|
label-connected = %local_ip% %essid%
|
||||||
|
@ -281,6 +304,11 @@ format-foreground = ${theme.cyanF}
|
||||||
|
|
||||||
label = %date% %time%
|
label = %date% %time%
|
||||||
|
|
||||||
|
[module/shortdate]
|
||||||
|
inherit = module/date
|
||||||
|
date = " %d/%m"
|
||||||
|
|
||||||
|
|
||||||
[module/volume]
|
[module/volume]
|
||||||
type = internal/volume
|
type = internal/volume
|
||||||
|
|
||||||
|
@ -307,11 +335,12 @@ label-full =
|
||||||
|
|
||||||
format-charging = <ramp-capacity> <label-charging>
|
format-charging = <ramp-capacity> <label-charging>
|
||||||
format-charging-foreground = ${theme.yellowF}
|
format-charging-foreground = ${theme.yellowF}
|
||||||
|
format-charging-prefix =
|
||||||
label-charging = %percentage%% (%time%)
|
label-charging = %percentage%% (%time%)
|
||||||
|
|
||||||
format-discharging = <ramp-capacity> <label-discharging>
|
format-discharging = <ramp-capacity> <label-discharging>
|
||||||
format-discharging-foreground = ${self.format-charging-foreground}
|
format-discharging-foreground = ${self.format-charging-foreground}
|
||||||
format-discharging-background = ${theme.redB}
|
; format-discharging-background = ${theme.redB}
|
||||||
label-discharging = %percentage%% (%time%)
|
label-discharging = %percentage%% (%time%)
|
||||||
|
|
||||||
format-full-prefix = " "
|
format-full-prefix = " "
|
||||||
|
|
17
config/polybar/linuxmismatch
Executable file
17
config/polybar/linuxmismatch
Executable file
|
@ -0,0 +1,17 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
if ! which pacman &> /dev/null
|
||||||
|
then
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
packageVersion=$(pacman -Q linux | cut -d' ' -f2)
|
||||||
|
runningVersion=$(uname -r)
|
||||||
|
|
||||||
|
if echo "$runningVersion" | grep "^$packageVersion" &> /dev/null
|
||||||
|
then
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
21
config/polybar/todo
Executable file
21
config/polybar/todo
Executable file
|
@ -0,0 +1,21 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
CALDIR="$HOME/.vdirsyncer/currentCalendars"
|
||||||
|
|
||||||
|
function status() {
|
||||||
|
ls "$CALDIR" | while read account
|
||||||
|
do
|
||||||
|
displayname="$(cat "$CALDIR/$account/displayname")"
|
||||||
|
color="$(cat "$CALDIR/$account/color")"
|
||||||
|
nb="$(todo list "$displayname" | grep -v "^$" | wc -l)"
|
||||||
|
|
||||||
|
if [ $nb -gt 0 ]
|
||||||
|
then
|
||||||
|
echo -n " %{F$color}$nb%{F-}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
# Newline to tell polybar to update in any case
|
||||||
|
echo
|
||||||
|
}
|
||||||
|
|
||||||
|
status
|
1
config/systemd/user/default.target.wants/dunst.service
Symbolic link
1
config/systemd/user/default.target.wants/dunst.service
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/user/dunst.service
|
1
config/systemd/user/default.target.wants/mpd.service
Symbolic link
1
config/systemd/user/default.target.wants/mpd.service
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/user/mpd.service
|
1
config/systemd/user/default.target.wants/offlineimap.service
Symbolic link
1
config/systemd/user/default.target.wants/offlineimap.service
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/user/offlineimap.service
|
1
config/systemd/user/default.target.wants/syncthing.service
Symbolic link
1
config/systemd/user/default.target.wants/syncthing.service
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/user/syncthing.service
|
1
config/systemd/user/timers.target.wants/vdirsyncer.timer
Symbolic link
1
config/systemd/user/timers.target.wants/vdirsyncer.timer
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
/usr/lib/systemd/user/vdirsyncer.timer
|
4
config/todoman/todoman.conf
Normal file
4
config/todoman/todoman.conf
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
[main]
|
||||||
|
path = ~/.vdirsyncer/currentCalendars/*
|
||||||
|
default_list = Personnel
|
||||||
|
humanize = True
|
0
config/vdirsyncer/.dfrecur
Normal file
0
config/vdirsyncer/.dfrecur
Normal file
68
config/vdirsyncer/config
Normal file
68
config/vdirsyncer/config
Normal file
|
@ -0,0 +1,68 @@
|
||||||
|
# An example configuration for vdirsyncer.
|
||||||
|
#
|
||||||
|
# Move it to ~/.vdirsyncer/config or ~/.config/vdirsyncer/config and edit it.
|
||||||
|
# Run `vdirsyncer --help` for CLI usage.
|
||||||
|
#
|
||||||
|
# Optional parameters are commented out.
|
||||||
|
# This file doesn't document all available parameters, see
|
||||||
|
# http://vdirsyncer.pimutils.org/ for the rest of them.
|
||||||
|
|
||||||
|
[general]
|
||||||
|
# A folder where vdirsyncer can store some metadata about each pair.
|
||||||
|
status_path = "~/.vdirsyncer/status/"
|
||||||
|
|
||||||
|
# # CARDDAV
|
||||||
|
[pair geoffrey_contacts]
|
||||||
|
# A `[pair <name>]` block defines two storages `a` and `b` that should be
|
||||||
|
# synchronized. The definition of these storages follows in `[storage <name>]`
|
||||||
|
# blocks. This is similar to accounts in OfflineIMAP.
|
||||||
|
a = "geoffrey_contacts_local"
|
||||||
|
b = "geoffrey_contacts_remote"
|
||||||
|
|
||||||
|
# Synchronize all collections that can be found.
|
||||||
|
# You need to run `vdirsyncer discover` if new calendars/addressbooks are added
|
||||||
|
# on the server.
|
||||||
|
|
||||||
|
collections = ["from a", "from b"]
|
||||||
|
|
||||||
|
# Synchronize the "display name" property into a local file (~/.contacts/displayname).
|
||||||
|
metadata = ["displayname"]
|
||||||
|
|
||||||
|
# To resolve a conflict the following values are possible:
|
||||||
|
# `null` - abort when collisions occur (default)
|
||||||
|
# `"a wins"` - assume a's items to be more up-to-date
|
||||||
|
# `"b wins"` - assume b's items to be more up-to-date
|
||||||
|
#conflict_resolution = null
|
||||||
|
|
||||||
|
[storage geoffrey_contacts_local]
|
||||||
|
# A storage references actual data on a remote server or on the local disk.
|
||||||
|
# Similar to repositories in OfflineIMAP.
|
||||||
|
type = "filesystem"
|
||||||
|
path = "~/.vdirsyncer/contacts/"
|
||||||
|
fileext = ".vcf"
|
||||||
|
|
||||||
|
[storage geoffrey_contacts_remote]
|
||||||
|
type = "carddav"
|
||||||
|
url = "https://dav.frogeye.fr/caldav.php/"
|
||||||
|
username = "geoffrey"
|
||||||
|
password.fetch = ["command", "sh", "-c", "cat ~/.config/vdirsyncer/pass"]
|
||||||
|
|
||||||
|
# CALDAV
|
||||||
|
[pair geoffrey_calendar]
|
||||||
|
a = "geoffrey_calendar_local"
|
||||||
|
b = "geoffrey_calendar_remote"
|
||||||
|
collections = ["from a", "from b"]
|
||||||
|
|
||||||
|
# Calendars also have a color property
|
||||||
|
metadata = ["displayname", "color"]
|
||||||
|
|
||||||
|
[storage geoffrey_calendar_local]
|
||||||
|
type = "filesystem"
|
||||||
|
path = "~/.vdirsyncer/calendars/"
|
||||||
|
fileext = ".ics"
|
||||||
|
|
||||||
|
[storage geoffrey_calendar_remote]
|
||||||
|
type = "caldav"
|
||||||
|
url = "https://dav.frogeye.fr/caldav.php/"
|
||||||
|
username = "geoffrey"
|
||||||
|
password.fetch = ["command", "sh", "-c", "cat ~/.config/vdirsyncer/pass"]
|
|
@ -8,3 +8,8 @@
|
||||||
default = matching
|
default = matching
|
||||||
[alias]
|
[alias]
|
||||||
git = !exec git
|
git = !exec git
|
||||||
|
[filter "lfs"]
|
||||||
|
clean = git-lfs clean -- %f
|
||||||
|
smudge = git-lfs smudge -- %f
|
||||||
|
process = git-lfs filter-process
|
||||||
|
required = true
|
||||||
|
|
3
scripts/arch-kexec
Executable file
3
scripts/arch-kexec
Executable file
|
@ -0,0 +1,3 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
sudo kexec -l /boot/vmlinuz-linux --initrd=/boot/initramfs-linux.img --reuse-cmdline
|
||||||
|
sudo systemctl kexec
|
10
scripts/heavyPackages
Executable file
10
scripts/heavyPackages
Executable file
|
@ -0,0 +1,10 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Return a list of packages sorted by size
|
||||||
|
|
||||||
|
(echo PACKAGE SIZE; \
|
||||||
|
for A in /var/lib/pacman/local/*/desc; do
|
||||||
|
(sed -n 2p $A; (grep '^%SIZE%$' $A -A1 | tail -1)) | tr '\n' ' '; echo
|
||||||
|
done \
|
||||||
|
| sort -nrk2) \
|
||||||
|
| column -t
|
|
@ -167,6 +167,10 @@ function altInst {
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function systemdUserUnit {
|
||||||
|
systemctl enable "$1"
|
||||||
|
systemctl start "$1"
|
||||||
|
}
|
||||||
|
|
||||||
# Common CLI
|
# Common CLI
|
||||||
|
|
||||||
|
@ -248,7 +252,7 @@ fi
|
||||||
|
|
||||||
if [ $GUI == 1 ]; then
|
if [ $GUI == 1 ]; then
|
||||||
# Desktop manager
|
# Desktop manager
|
||||||
inst i3 i3lock dunst unclutter xautolock feh numlockx scrot xterm xclip
|
inst i3 i3lock dunst unclutter xautolock feh numlockx scrot rxvt-unicode xclip
|
||||||
curl "https://raw.githubusercontent.com/FortAwesome/Font-Awesome/a8386aae19e200ddb0f6845b5feeee5eb7013687/fonts/fontawesome-webfont.ttf" > ~/.local/share/fonts/fontawesome-webfont.ttf
|
curl "https://raw.githubusercontent.com/FortAwesome/Font-Awesome/a8386aae19e200ddb0f6845b5feeee5eb7013687/fonts/fontawesome-webfont.ttf" > ~/.local/share/fonts/fontawesome-webfont.ttf
|
||||||
if [ $ARCH == 1 ]; then
|
if [ $ARCH == 1 ]; then
|
||||||
inst xorg-xinit
|
inst xorg-xinit
|
||||||
|
@ -315,16 +319,23 @@ if [ $GUI == 1 ]; then
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
if [ $EXTRA == 1 ]; then
|
if [ $EXTRA == 1 ]; then
|
||||||
# Extra dev
|
# Extra dev
|
||||||
inst cmake clang llvm npm
|
inst cmake clang llvm npm
|
||||||
|
|
||||||
# Extra CLI
|
# Extra CLI
|
||||||
inst ffmpeg youtube-dl optipng syncthing ccache
|
inst ffmpeg youtube-dl optipng syncthing ccache mutt
|
||||||
|
systemdUserUnit syncthing.service
|
||||||
if [ $ARCH == 1 ]; then
|
if [ $ARCH == 1 ]; then
|
||||||
inst jq
|
inst jq
|
||||||
altInst pdftk translate-shell git-lfs js-beautify insect visidata-git
|
altInst pdftk translate-shell git-lfs js-beautify insect visidata-git
|
||||||
|
|
||||||
|
# Orga
|
||||||
|
# TODO For others
|
||||||
|
inst vdirsyncer khard
|
||||||
|
altInst khal todoman offlineimap
|
||||||
|
systemdUserUnit vdirsyncer.timer
|
||||||
else
|
else
|
||||||
# translate-shell
|
# translate-shell
|
||||||
curl -L git.io/trans > ~/.bin/trans
|
curl -L git.io/trans > ~/.bin/trans
|
||||||
|
@ -337,7 +348,7 @@ if [ $EXTRA == 1 ]; then
|
||||||
|
|
||||||
if [ $ARCH == 1 ]; then
|
if [ $ARCH == 1 ]; then
|
||||||
inst simplescreenrecorder
|
inst simplescreenrecorder
|
||||||
altInst pacmixer xcursor-menda-git menda-themes-git menda-maia-icon-theme vimpc-git mpc
|
altInst pacmixer xcursor-menda-git menda-themes-git menda-maia-icon-theme vimpc-git mpc ashuffle-git
|
||||||
fi
|
fi
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
|
@ -52,7 +52,7 @@ function _machines-api {
|
||||||
wget $MACHINES_API/$route --content-on-error --quiet --output-document=- "$@"
|
wget $MACHINES_API/$route --content-on-error --quiet --output-document=- "$@"
|
||||||
result=$?
|
result=$?
|
||||||
if [ $result != 0 ]; then
|
if [ $result != 0 ]; then
|
||||||
echo "[ERROR] wget returned $result..."
|
echo "[ERROR] wget returned $result..." > /dev/stderr
|
||||||
exit 2
|
exit 2
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
@ -77,7 +77,7 @@ function _machines-pubFromCrt {
|
||||||
function _machines-verifyCertificate {
|
function _machines-verifyCertificate {
|
||||||
return
|
return
|
||||||
if openssl verify $MACHINES_CONFIG/machines.crt | grep -v 'error 18' | grep 'error' --quiet; then
|
if openssl verify $MACHINES_CONFIG/machines.crt | grep -v 'error 18' | grep 'error' --quiet; then
|
||||||
echo "[ERROR] Invalid certificate"
|
echo "[ERROR] Invalid certificate" > /dev/stderr
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
@ -92,7 +92,7 @@ function _machines-ensurePub {
|
||||||
if [ $? == 1 ]; then
|
if [ $? == 1 ]; then
|
||||||
mv $CERT_FILE $MACHINES_CONFIG/machines.crt &> /dev/null
|
mv $CERT_FILE $MACHINES_CONFIG/machines.crt &> /dev/null
|
||||||
else
|
else
|
||||||
echo "[ERROR] Certificate rejected."
|
echo "[ERROR] Certificate rejected." > /dev/stderr
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
@ -105,7 +105,7 @@ function _machines-ensurePub {
|
||||||
|
|
||||||
function _machines-ensureAdmin {
|
function _machines-ensureAdmin {
|
||||||
if [ ! -f $MACHINES_CONFIG/machines.key ]; then
|
if [ ! -f $MACHINES_CONFIG/machines.key ]; then
|
||||||
echo "[ERROR] You need have to have the private key to do that"
|
echo "[ERROR] You need have to have the private key to do that" > /dev/stderr
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
@ -127,6 +127,10 @@ function _machines-getAkey { # network
|
||||||
SIGN_FILE=$(mktemp)
|
SIGN_FILE=$(mktemp)
|
||||||
_machines-api akey/$1 > $KEY_FILE
|
_machines-api akey/$1 > $KEY_FILE
|
||||||
_machines-api akey/$1?signature > $SIGN_FILE
|
_machines-api akey/$1?signature > $SIGN_FILE
|
||||||
|
md5sum $KEY_FILE &> /dev/stderr
|
||||||
|
md5sum $SIGN_FILE &> /dev/stderr
|
||||||
|
md5sum $MACHINES_CONFIG/machines.pub &> /dev/stderr
|
||||||
|
|
||||||
openssl dgst -sha256 -verify $MACHINES_CONFIG/machines.pub -signature $SIGN_FILE $KEY_FILE &> /dev/null
|
openssl dgst -sha256 -verify $MACHINES_CONFIG/machines.pub -signature $SIGN_FILE $KEY_FILE &> /dev/null
|
||||||
if [ $? == 0 ]; then
|
if [ $? == 0 ]; then
|
||||||
cat $KEY_FILE
|
cat $KEY_FILE
|
||||||
|
@ -147,7 +151,7 @@ function _machines-updateAkey {
|
||||||
return 0
|
return 0
|
||||||
else
|
else
|
||||||
cat $MYKEY_FILE
|
cat $MYKEY_FILE
|
||||||
echo "[ERROR] Authorized keys are not properly signed"
|
echo "[ERROR] Authorized keys are not properly signed" > /dev/stderr
|
||||||
rm $MYKEY_FILE
|
rm $MYKEY_FILE
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
@ -365,15 +369,16 @@ machines_net_help() { machines_network_help "$@"; }
|
||||||
machines_n_help() { machines_network_help "$@"; }
|
machines_n_help() { machines_network_help "$@"; }
|
||||||
|
|
||||||
function machines_update-all {
|
function machines_update-all {
|
||||||
machines_list | while read machine; do
|
machines_machine_list | while read machine; do
|
||||||
echo "Updating $machine..."
|
echo "Updating $machine..."
|
||||||
ssh $machine 'machines-update' &
|
ssh $machine 'machines update' &
|
||||||
|
ssh $machine 'cd .dotfiles && git pull' &
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
function machines_regen-keys {
|
function machines_regen-keys {
|
||||||
if [[ -e $MACHINES_CONFIG/machines.key || -e $MACHINES_CONFIG/machines.pub || -e $MACHINES_CONFIG/machines.crt ]]; then
|
if [[ -e $MACHINES_CONFIG/machines.key || -e $MACHINES_CONFIG/machines.pub || -e $MACHINES_CONFIG/machines.crt ]]; then
|
||||||
echo "[ERROR] Please delete the pem files manually to prove you know what you're doing."
|
echo "[ERROR] Please delete the pem files manually to prove you know what you're doing." > /dev/stderr
|
||||||
exit 1
|
exit 1
|
||||||
else
|
else
|
||||||
openssl genrsa -out $MACHINES_CONFIG/machines.key 4096
|
openssl genrsa -out $MACHINES_CONFIG/machines.key 4096
|
||||||
|
@ -389,7 +394,7 @@ function machines_regen-keys {
|
||||||
|
|
||||||
function machines_setup {
|
function machines_setup {
|
||||||
if [ -e $MACHINES_CONFIG/this.name ]; then
|
if [ -e $MACHINES_CONFIG/this.name ]; then
|
||||||
echo "[ERROR] This machine is already set up"
|
echo "[ERROR] This machine is already set up" > /dev/stderr
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
4
scripts/pdfpages
Executable file
4
scripts/pdfpages
Executable file
|
@ -0,0 +1,4 @@
|
||||||
|
#!/usr/bin/bash
|
||||||
|
|
||||||
|
# From https://stackoverflow.com/a/14736593
|
||||||
|
pdftk "$1" dump_data | grep NumberOfPages | awk '{print $2}'
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
# Moves a file to another place and put a symbolic link in place
|
# Moves a file to another place and put a symbolic link in place
|
||||||
|
|
||||||
function proxy_help {
|
function rep_help {
|
||||||
echo "Usage: $0 SOURCE DEST"
|
echo "Usage: $0 SOURCE DEST"
|
||||||
echo
|
echo
|
||||||
echo "Arguments:"
|
echo "Arguments:"
|
||||||
|
@ -17,9 +17,9 @@ ln -s "$2" "$1"
|
||||||
# MAIN
|
# MAIN
|
||||||
command="$1"
|
command="$1"
|
||||||
shift
|
shift
|
||||||
if type "proxy_$command" &> /dev/null; then
|
if type "rep_$command" &> /dev/null; then
|
||||||
"proxy_$command" "$@"
|
"rep_$command" "$@"
|
||||||
else
|
else
|
||||||
proxy_help
|
rep_help
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
2
scripts/rms
Executable file
2
scripts/rms
Executable file
|
@ -0,0 +1,2 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
find . -name "*.sync-conflict-*" -delete
|
BIN
terminfo/a/alacritty
Normal file
BIN
terminfo/a/alacritty
Normal file
Binary file not shown.
BIN
terminfo/a/alacritty-256color
Normal file
BIN
terminfo/a/alacritty-256color
Normal file
Binary file not shown.
BIN
terminfo/r/rxvt-unicode
Normal file
BIN
terminfo/r/rxvt-unicode
Normal file
Binary file not shown.
BIN
terminfo/r/rxvt-unicode-256color
Normal file
BIN
terminfo/r/rxvt-unicode-256color
Normal file
Binary file not shown.
7
vimpcrc
Normal file
7
vimpcrc
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
map FF :browse<C-M>gg/
|
||||||
|
map à :set add next<C-M>a:set add end<C-M>
|
||||||
|
map @ :set add next<C-M>a:set add end<C-M>:next<C-M>
|
||||||
|
map ° D:browse<C-M>A:shuffle<C-M>:play<C-M>:playlist<C-M>
|
||||||
|
set songformat {%a - %b: %t}|{%f}$E$R $H[$H%l$H]$H
|
||||||
|
set libraryformat %n \| {%t}|{%f}$E$R $H[$H%l$H]$H
|
||||||
|
set ignorecase
|
3
vimrc
3
vimrc
|
@ -36,6 +36,7 @@ Plugin 'tomtom/tcomment_vim'
|
||||||
Plugin 'Shougo/denite.nvim'
|
Plugin 'Shougo/denite.nvim'
|
||||||
Plugin 'tomlion/vim-solidity'
|
Plugin 'tomlion/vim-solidity'
|
||||||
Plugin 'godlygeek/tabular'
|
Plugin 'godlygeek/tabular'
|
||||||
|
Plugin 'jrozner/vim-antlr'
|
||||||
|
|
||||||
call vundle#end() " required
|
call vundle#end() " required
|
||||||
filetype plugin indent on " required
|
filetype plugin indent on " required
|
||||||
|
@ -48,7 +49,7 @@ nmap <F7> :UndotreeToggle<CR>:UndotreeFocus<CR>
|
||||||
|
|
||||||
let g:ctrlp_custom_ignore = {
|
let g:ctrlp_custom_ignore = {
|
||||||
\ 'dir': '\v([\/]\.(git|hg|svn)|log|node_modules|bower_components|__pycache__|vendor|output|buildroot|doc)$',
|
\ 'dir': '\v([\/]\.(git|hg|svn)|log|node_modules|bower_components|__pycache__|vendor|output|buildroot|doc)$',
|
||||||
\ 'file': '\v\.(exe|so|dll|o|pyc)$',
|
\ 'file': '\v\.(exe|so|dll|o|pyc|a)$',
|
||||||
\ 'link': 'SOME_BAD_SYMBOLIC_LINKS',
|
\ 'link': 'SOME_BAD_SYMBOLIC_LINKS',
|
||||||
\ }
|
\ }
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue