commit
650f37c07d
@ -0,0 +1,5 @@
|
|||||||
|
Downloads ~/Downloads
|
||||||
|
Go ~/projects/go/src/github.com
|
||||||
|
Home ~/
|
||||||
|
Work ~/projects/work
|
||||||
|
Projects ~/projects
|
@ -0,0 +1,195 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#vim: set ft=sh
|
||||||
|
|
||||||
|
# Determine size of a file or total size of a directory
|
||||||
|
function fs() {
|
||||||
|
if du -b /dev/null > /dev/null 2>&1; then
|
||||||
|
local arg=-sbh;
|
||||||
|
else
|
||||||
|
local arg=-sh;
|
||||||
|
fi
|
||||||
|
if [[ -n "$@" ]]; then
|
||||||
|
du $arg -- "$@";
|
||||||
|
else
|
||||||
|
du $arg .[^.]* *;
|
||||||
|
fi;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# Create a .tar.gz archive, using `zopfli`, `pigz` or `gzip` for compression
|
||||||
|
function targz() {
|
||||||
|
local tmpFile="${@%/}.tar";
|
||||||
|
tar -cvf "${tmpFile}" --exclude=".DS_Store" "${@}" || return 1;
|
||||||
|
|
||||||
|
size=$(
|
||||||
|
stat -f"%z" "${tmpFile}" 2> /dev/null; # OS X `stat`
|
||||||
|
stat -c"%s" "${tmpFile}" 2> /dev/null # GNU `stat`
|
||||||
|
);
|
||||||
|
|
||||||
|
local cmd="";
|
||||||
|
if (( size < 52428800 )) && hash zopfli 2> /dev/null; then
|
||||||
|
# the .tar file is smaller than 50 MB and Zopfli is available; use it
|
||||||
|
cmd="zopfli";
|
||||||
|
else
|
||||||
|
if hash pigz 2> /dev/null; then
|
||||||
|
cmd="pigz";
|
||||||
|
else
|
||||||
|
cmd="gzip";
|
||||||
|
fi;
|
||||||
|
fi;
|
||||||
|
|
||||||
|
echo "Compressing .tar using \`${cmd}\`…";
|
||||||
|
"${cmd}" -v "${tmpFile}" || return 1;
|
||||||
|
[ -f "${tmpFile}" ] && rm "${tmpFile}";
|
||||||
|
echo "${tmpFile}.gz created successfully.";
|
||||||
|
}
|
||||||
|
|
||||||
|
# Create a new directory and enter it
|
||||||
|
function mkd() {
|
||||||
|
mkdir -p "$@" && cd "$_";
|
||||||
|
}
|
||||||
|
|
||||||
|
# runs vim outside of the term by forking the command and gvim, great for my windows box
|
||||||
|
function vd(){
|
||||||
|
if [[ $# -eq 0 ]]; then
|
||||||
|
gvim &
|
||||||
|
else
|
||||||
|
gvim --remote-tab-silent "$@" &
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# `v` with no arguments opens the current directory in Vim, otherwise opens the
|
||||||
|
# given location
|
||||||
|
function v(){
|
||||||
|
if [[ $# -eq 0 ]]; then
|
||||||
|
vim .;
|
||||||
|
else
|
||||||
|
vim --remote-tab-silent "$@";
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# `s` with no arguments opens the current directory in Sublime Text, otherwise
|
||||||
|
# opens the given location
|
||||||
|
function s() {
|
||||||
|
if [ $# -eq 0 ]; then
|
||||||
|
subl .;
|
||||||
|
else
|
||||||
|
subl "$@";
|
||||||
|
fi;
|
||||||
|
}
|
||||||
|
|
||||||
|
# delete merged local branches
|
||||||
|
function prunelocal(){
|
||||||
|
for b in `git branch --merged | grep -v \*`; do git branch -D $b; done
|
||||||
|
}
|
||||||
|
|
||||||
|
# generates a public key from a private key
|
||||||
|
function pubkey(){
|
||||||
|
if [[ -z $1 ]]; then
|
||||||
|
echo "Takes a path to a private key and prints a compatible public key to stdout"
|
||||||
|
echo "$1 required: path to a private key"
|
||||||
|
return -1
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
ssh-keygen -y -f $1
|
||||||
|
}
|
||||||
|
# list network interfaces
|
||||||
|
function interfaces(){
|
||||||
|
ifconfig | grep "\: flags" | awk '{print $1}' | sed 's/:$//';
|
||||||
|
}
|
||||||
|
|
||||||
|
# Create a git.io short URL
|
||||||
|
function gitio() {
|
||||||
|
if [ -z "${1}" -o -z "${2}" ]; then
|
||||||
|
echo "Usage: \`gitio slug url\`";
|
||||||
|
return 1;
|
||||||
|
fi;
|
||||||
|
curl -i http://git.io/ -F "url=${2}" -F "code=${1}";
|
||||||
|
}
|
||||||
|
|
||||||
|
# kill the process using the specified port
|
||||||
|
function freeport(){
|
||||||
|
|
||||||
|
if [ -z $1 ]; then
|
||||||
|
echo "usage: freeport <port number>" >&2
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
lsof -t -i tcp:$1 | xargs kill
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
# runs tcp dump on the port specified in $1. $1 defaults to 8080
|
||||||
|
function dumptcp(){
|
||||||
|
local DUMPPORT=$1
|
||||||
|
local DUMPINTERFACE=$2
|
||||||
|
|
||||||
|
if [ -z "$1" ]; then
|
||||||
|
DUMPPORT=8080
|
||||||
|
elif [[ "$1" == "help" ]]; then
|
||||||
|
echo "dumps tcp info at the specified port. Useful for looking at http requests"
|
||||||
|
echo "usage dumptcp <port>"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$2" ]; then
|
||||||
|
DUMPINTERFACE=lo0
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "dumping tcp connections @ $DUMPINTERFACE on port $DUMPPORT..."
|
||||||
|
|
||||||
|
sudo tcpdump -s 0 -A -i $DUMPINTERFACE "tcp port $DUMPPORT and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Run `dig` and display the most useful info
|
||||||
|
function digga() {
|
||||||
|
dig +nocmd "$1" any +multiline +noall +answer;
|
||||||
|
}
|
||||||
|
|
||||||
|
# Simple calculator
|
||||||
|
function calc() {
|
||||||
|
local result="";
|
||||||
|
result="$(printf "scale=10;$*\n" | bc --mathlib | tr -d '\\\n')";
|
||||||
|
# └─ default (when `--mathlib` is used) is 20
|
||||||
|
#
|
||||||
|
if [[ "$result" == *.* ]]; then
|
||||||
|
# improve the output for decimal numbers
|
||||||
|
printf "$result" |
|
||||||
|
sed -e 's/^\./0./' # add "0" for cases like ".5"` \
|
||||||
|
-e 's/^-\./-0./' # add "0" for cases like "-.5"`\
|
||||||
|
-e 's/0*$//;s/\.$//'; # remove trailing zeros
|
||||||
|
else
|
||||||
|
printf "$result";
|
||||||
|
fi;
|
||||||
|
printf "\n";
|
||||||
|
}
|
||||||
|
|
||||||
|
# a shortcut for cloning from github
|
||||||
|
# usage: clone user/repo <dir>
|
||||||
|
function clone() {
|
||||||
|
if [ -z "$1" ]; then
|
||||||
|
echo "Missing git repository url ending"
|
||||||
|
echo "usage: clone 'git repository ending' ['target directory name']"
|
||||||
|
else
|
||||||
|
giturl="git@github.com:$1.git"
|
||||||
|
|
||||||
|
if [ -z "$2" ]; then
|
||||||
|
# we DON'T HAVE a target directory
|
||||||
|
git clone $giturl
|
||||||
|
else
|
||||||
|
# we HAVE a target directory
|
||||||
|
git clone $giturl $2
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
# Create a data URL from a file
|
||||||
|
function dataurl() {
|
||||||
|
local mimeType=$(file -b --mime-type "$1");
|
||||||
|
if [[ $mimeType == text/* ]]; then
|
||||||
|
mimeType="${mimeType};charset=utf-8";
|
||||||
|
fi
|
||||||
|
echo "data:${mimeType};base64,$(openssl base64 -in "$1" | tr -d '\n')";
|
||||||
|
}
|
@ -0,0 +1,57 @@
|
|||||||
|
// Place your key bindings in this file to overwrite the defaults
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"key": "ctrl+shift+alt+y",
|
||||||
|
"command": "extension.vim_ctrl+y",
|
||||||
|
"when": "editorTextFocus && vim.active && vim.use<C-y> && !inDebugRepl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+y",
|
||||||
|
"command": "-extension.vim_ctrl+y",
|
||||||
|
"when": "editorTextFocus && vim.active && vim.use<C-y> && !inDebugRepl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+y",
|
||||||
|
"command": "redo",
|
||||||
|
"when": "editorTextFocus && !editorReadonly"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+y",
|
||||||
|
"command": "-redo",
|
||||||
|
"when": "editorTextFocus && !editorReadonly"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+w",
|
||||||
|
"command": "-extension.vim_ctrl+w",
|
||||||
|
"when": "editorTextFocus && vim.active && vim.use<C-w> && !inDebugRepl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+w",
|
||||||
|
"command": "-workbench.action.closeWindow",
|
||||||
|
"when": "!editorIsOpen"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+shift+]",
|
||||||
|
"command": "editor.action.goToDeclaration",
|
||||||
|
"when": "editorHasDefinitionProvider && editorTextFocus && !isInEmbeddedEditor"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "f12",
|
||||||
|
"command": "-editor.action.goToDeclaration",
|
||||||
|
"when": "editorHasDefinitionProvider && editorTextFocus && !isInEmbeddedEditor"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+n",
|
||||||
|
"command": "workbench.action.files.newUntitledFile"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+\\",
|
||||||
|
"command": "workbench.action.terminal.split",
|
||||||
|
"when": "terminalFocus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+k ctrl+i",
|
||||||
|
"command": "editor.action.showHover",
|
||||||
|
"when": "editorTextFocus"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,72 @@
|
|||||||
|
{
|
||||||
|
"terminal.integrated.shellArgs.linux": ["--login"],
|
||||||
|
"terminal.integrated.shellArgs.osx": ["--login"],
|
||||||
|
"terminal.integrated.fontFamily": "'Ubuntu Mono derivative Powerline', 'Fira Code Retina:style=Retina', 'PragmataPro', 'Droid Sans Mono', 'monospace', monospace, 'Droid Sans Fallback'",
|
||||||
|
"terminal.integrated.fontSize": 14,
|
||||||
|
"editor.renderWhitespace": "boundary",
|
||||||
|
"editor.formatOnType": true,
|
||||||
|
"editor.formatOnPaste": true,
|
||||||
|
"editor.fontFamily": "'Fira Code Retina', 'Fira Code', 'PragmataPro'",
|
||||||
|
"editor.fontSize": 14,
|
||||||
|
"editor.codeLens": true,
|
||||||
|
"editor.fontLigatures": true,
|
||||||
|
"editor.hideCursorInOverviewRuler": true,
|
||||||
|
"editor.rulers": [120],
|
||||||
|
"eslint.alwaysShowStatus": true,
|
||||||
|
"eslint.autoFixOnSave": true,
|
||||||
|
"eslint.enable": true,
|
||||||
|
"[markdown]": {
|
||||||
|
"editor.wordWrap": "off",
|
||||||
|
"editor.quickSuggestions": {
|
||||||
|
"other": true,
|
||||||
|
"comments": false,
|
||||||
|
"strings": false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"files.exclude": {
|
||||||
|
"**/.git": true,
|
||||||
|
"**/.svn": true,
|
||||||
|
"**/.hg": true,
|
||||||
|
"**/CVS": true,
|
||||||
|
"**/.DS_Store": true,
|
||||||
|
"**/node_modules": true
|
||||||
|
},
|
||||||
|
"git.enableCommitSigning": true,
|
||||||
|
"git.autofetch": true,
|
||||||
|
"git.autorefresh": true,
|
||||||
|
"go.testOnSave": true,
|
||||||
|
"go.lintOnSave": "package",
|
||||||
|
"go.autocompleteUnimportedPackages": false,
|
||||||
|
"go.formatTool": "goreturns",
|
||||||
|
"prettier.eslintIntegration": true,
|
||||||
|
"prettier.tabWidth": 4,
|
||||||
|
"window.openFilesInNewWindow": "on",
|
||||||
|
"telemetry.enableTelemetry": false,
|
||||||
|
"vim.leader": ",",
|
||||||
|
"vim.surround": true,
|
||||||
|
"vim.useSystemClipboard": true,
|
||||||
|
"workbench.colorTheme": "Cobalt2",
|
||||||
|
"window.zoomLevel": 0,
|
||||||
|
"workbench.activityBar.visible": true,
|
||||||
|
"workbench.editor.enablePreview": false,
|
||||||
|
"workbench.editor.enablePreviewFromQuickOpen": false,
|
||||||
|
"explorer.confirmDragAndDrop": false,
|
||||||
|
"explorer.confirmDelete": false,
|
||||||
|
"[javascript]": {
|
||||||
|
"editor.formatOnSave": true
|
||||||
|
},
|
||||||
|
"fs.inotify.max_user_watches":524288,
|
||||||
|
"gitlens.keymap": "alternate",
|
||||||
|
"gitlens.advanced.messages": {
|
||||||
|
"suppressCommitHasNoPreviousCommitWarning": false,
|
||||||
|
"suppressCommitNotFoundWarning": false,
|
||||||
|
"suppressFileNotUnderSourceControlWarning": false,
|
||||||
|
"suppressGitVersionWarning": false,
|
||||||
|
"suppressLineUncommittedWarning": true,
|
||||||
|
"suppressNoRepositoryWarning": false,
|
||||||
|
"suppressResultsExplorerNotice": false,
|
||||||
|
"suppressShowKeyBindingsNotice": true
|
||||||
|
},
|
||||||
|
"gitlens.historyExplorer.enabled": true,
|
||||||
|
"gitlens.mode.active": "review",
|
||||||
|
}
|
@ -0,0 +1,108 @@
|
|||||||
|
#vim: set ft=sh
|
||||||
|
|
||||||
|
# basic configuration
|
||||||
|
backend = "glx";
|
||||||
|
vsync = "opengl-swc";
|
||||||
|
# GLX backend: GLX buffer swap method we assume.
|
||||||
|
# Could be undefined (0), copy (1), exchange (2), 3-6, or buffer-age (-1).
|
||||||
|
# undefined is the slowest and the safest, and the default value.
|
||||||
|
# copy is fastest, but may fail on some drivers,
|
||||||
|
# 2-6 are gradually slower but safer (6 is still faster than 0).
|
||||||
|
# Usually, double buffer means 2, triple buffer means 3.
|
||||||
|
# buffer-age means auto-detect using GLX_EXT_buffer_age, supported by some drivers.
|
||||||
|
# Useless with --glx-use-copysubbuffermesa.
|
||||||
|
# Partially breaks --resize-damage.
|
||||||
|
# Defaults to undefined.
|
||||||
|
glx-swap-method = "3";
|
||||||
|
|
||||||
|
glx-no-stencil = true;
|
||||||
|
|
||||||
|
glx-copy-from-front = false;
|
||||||
|
xrender-sync = true;
|
||||||
|
xrender-sync-fence = true;
|
||||||
|
paint-on-overlay = true;
|
||||||
|
detect-rounded-corners = true;
|
||||||
|
|
||||||
|
#################################
|
||||||
|
# Shadows
|
||||||
|
#################################
|
||||||
|
|
||||||
|
# Enabled client-side shadows on windows.
|
||||||
|
shadow = true;
|
||||||
|
# Don't draw shadows on DND windows.
|
||||||
|
no-dnd-shadow = true;
|
||||||
|
# Avoid drawing shadows on dock/panel windows.
|
||||||
|
no-dock-shadow = true;
|
||||||
|
# Zero the part of the shadow's mask behind the window. Fix some weirdness with ARGB windows.
|
||||||
|
clear-shadow = true;
|
||||||
|
# The blur radius for shadows. (default 12)
|
||||||
|
shadow-radius = 5;
|
||||||
|
# The left offset for shadows. (default -15)
|
||||||
|
shadow-offset-x = -5;
|
||||||
|
# The top offset for shadows. (default -15)
|
||||||
|
shadow-offset-y = -5;
|
||||||
|
# The translucency for shadows. (default .75)
|
||||||
|
shadow-opacity = 0.5;
|
||||||
|
|
||||||
|
|
||||||
|
# The shadow exclude options are helpful if you have shadows enabled. Due to the way compton draws its shadows, certain applications will have visual glitches
|
||||||
|
# (most applications are fine, only apps that do weird things with xshapes or argb are affected).
|
||||||
|
# This list includes all the affected apps I found in my testing. The "! name~=''" part excludes shadows on any "Unknown" windows, this prevents a visual glitch with the XFWM alt tab switcher.
|
||||||
|
shadow-exclude = [
|
||||||
|
"! name~=''",
|
||||||
|
"name = 'Notification'",
|
||||||
|
"name = 'Plank'",
|
||||||
|
"name = 'Docky'",
|
||||||
|
"name = 'Kupfer'",
|
||||||
|
"name = 'xfce4-notifyd'",
|
||||||
|
"name *= 'VLC'",
|
||||||
|
"name *= 'compton'",
|
||||||
|
"name *= 'Chromium'",
|
||||||
|
"name *= 'Chrome'",
|
||||||
|
"name *= 'Firefox'",
|
||||||
|
"name *= 'Visual'",
|
||||||
|
"name *= 'Slack'",
|
||||||
|
"name *= 'Insomnia'",
|
||||||
|
"class_g = 'Conky'",
|
||||||
|
"class_g = 'Kupfer'",
|
||||||
|
"class_g = 'Synapse'",
|
||||||
|
"class_g ?= 'Notify-osd'",
|
||||||
|
"class_g ?= 'Cairo-dock'",
|
||||||
|
"class_g ?= 'Xfce4-notifyd'",
|
||||||
|
"class_g ?= 'Xfce4-power-manager'"
|
||||||
|
];
|
||||||
|
# Avoid drawing shadow on all shaped windows (see also: --detect-rounded-corners)
|
||||||
|
shadow-ignore-shaped = false;
|
||||||
|
|
||||||
|
#################################
|
||||||
|
#
|
||||||
|
# Opacity
|
||||||
|
#
|
||||||
|
#################################
|
||||||
|
|
||||||
|
menu-opacity = 1;
|
||||||
|
inactive-opacity = 1;
|
||||||
|
active-opacity = 1;
|
||||||
|
frame-opacity = 1;
|
||||||
|
inactive-opacity-override = false;
|
||||||
|
alpha-step = 0.06;
|
||||||
|
|
||||||
|
# Dim inactive windows. (0.0 - 1.0)
|
||||||
|
# inactive-dim = 0.2;
|
||||||
|
# Do not let dimness adjust based on window opacity.
|
||||||
|
# inactive-dim-fixed = true;
|
||||||
|
# Blur background of transparent windows. Bad performance with X Render backend. GLX backend is preferred.
|
||||||
|
# blur-background = true;
|
||||||
|
# Blur background of opaque windows with transparent frames as well.
|
||||||
|
# blur-background-frame = true;
|
||||||
|
# Do not let blur radius adjust based on window opacity.
|
||||||
|
blur-background-fixed = false;
|
||||||
|
blur-background-exclude = [
|
||||||
|
"window_type = 'dock'",
|
||||||
|
"window_type = 'desktop'"
|
||||||
|
];
|
||||||
|
|
||||||
|
# transparancy settings for i3
|
||||||
|
opacity-rule = [
|
||||||
|
"0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'"
|
||||||
|
];
|
@ -0,0 +1,326 @@
|
|||||||
|
[global]
|
||||||
|
### Display ###
|
||||||
|
|
||||||
|
# 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 window manager that exports the
|
||||||
|
# _NET_ACTIVE_WINDOW property.
|
||||||
|
# This should be the case for almost all modern window managers.
|
||||||
|
#
|
||||||
|
# If this option is set to mouse or keyboard, the monitor option
|
||||||
|
# will be ignored.
|
||||||
|
follow = mouse
|
||||||
|
|
||||||
|
# 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 respectively.
|
||||||
|
# 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 = "300x5-30+20"
|
||||||
|
|
||||||
|
# Show how many messages are currently hidden (because of geometry).
|
||||||
|
indicate_hidden = yes
|
||||||
|
|
||||||
|
# Shrink window if it's smaller than the width. Will be ignored if
|
||||||
|
# width is 0.
|
||||||
|
shrink = no
|
||||||
|
|
||||||
|
# The transparency of the window. Range: [0; 100].
|
||||||
|
# This option will only work if a compositing window manager is
|
||||||
|
# present (e.g. xcompmgr, compiz, etc.).
|
||||||
|
transparency = 0
|
||||||
|
|
||||||
|
# The height of the entire notification. If the height is smaller
|
||||||
|
# than the font height and padding combined, it will be raised
|
||||||
|
# to the font height and padding.
|
||||||
|
notification_height = 0
|
||||||
|
|
||||||
|
# Draw a line of "separator_height" pixel height between two
|
||||||
|
# notifications.
|
||||||
|
# Set to 0 to disable.
|
||||||
|
separator_height = 2
|
||||||
|
|
||||||
|
# Padding between text and separator.
|
||||||
|
padding = 8
|
||||||
|
|
||||||
|
# Horizontal padding.
|
||||||
|
horizontal_padding = 8
|
||||||
|
|
||||||
|
# Defines width in pixels of frame around the notification window.
|
||||||
|
# Set to 0 to disable.
|
||||||
|
frame_width = 3
|
||||||
|
|
||||||
|
# Defines color of the frame around the notification window.
|
||||||
|
frame_color = "#aaaaaa"
|
||||||
|
|
||||||
|
# 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 = frame
|
||||||
|
|
||||||
|
# Sort messages by urgency.
|
||||||
|
sort = yes
|
||||||
|
|
||||||
|
# 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.
|
||||||
|
# Transient notifications ignore this setting.
|
||||||
|
idle_threshold = 60
|
||||||
|
|
||||||
|
### Text ###
|
||||||
|
|
||||||
|
font = Arial 16
|
||||||
|
|
||||||
|
# The spacing between lines. If the height is smaller than the
|
||||||
|
# font height, it will get raised to the font height.
|
||||||
|
line_height = 0
|
||||||
|
|
||||||
|
# Possible values are:
|
||||||
|
# full: Allow a small subset of html markup in notifications:
|
||||||
|
# <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>.
|
||||||
|
#
|
||||||
|
# strip: This setting is provided for compatibility with some broken
|
||||||
|
# clients that send markup even though it's not enabled on the
|
||||||
|
# server. Dunst will try to strip the markup but the parsing is
|
||||||
|
# simplistic so using this option outside of matching rules for
|
||||||
|
# specific applications *IS GREATLY DISCOURAGED*.
|
||||||
|
#
|
||||||
|
# no: Disable markup parsing, incoming notifications will be treated as
|
||||||
|
# plain text. Dunst will not advertise that it has the body-markup
|
||||||
|
# capability if this is set as a global setting.
|
||||||
|
#
|
||||||
|
# It's important to note that markup inside the format option will be parsed
|
||||||
|
# regardless of what this is set to.
|
||||||
|
markup = full
|
||||||
|
|
||||||
|
# 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
|
||||||
|
# %n progress value if set without any extra characters
|
||||||
|
# %% Literal %
|
||||||
|
# Markup is allowed
|
||||||
|
format = "<b>%s</b>\n%b"
|
||||||
|
|
||||||
|
# Alignment of message text.
|
||||||
|
# Possible values are "left", "center" and "right".
|
||||||
|
alignment = left
|
||||||
|
|
||||||
|
# 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 = yes
|
||||||
|
|
||||||
|
# When word_wrap is set to no, specify where to ellipsize long lines.
|
||||||
|
# Possible values are "start", "middle" and "end".
|
||||||
|
ellipsize = middle
|
||||||
|
|
||||||
|
# Ignore newlines '\n' in notifications.
|
||||||
|
ignore_newline = no
|
||||||
|
|
||||||
|
# Merge multiple notifications with the same content
|
||||||
|
stack_duplicates = true
|
||||||
|
|
||||||
|
# Hide the count of merged notifications with the same content
|
||||||
|
hide_duplicate_count = false
|
||||||
|
|
||||||
|
# Display indicators for URLs (U) and actions (A).
|
||||||
|
show_indicators = yes
|
||||||
|
|
||||||
|
### Icons ###
|
||||||
|
|
||||||
|
# Align icons left/right/off
|
||||||
|
icon_position = left
|
||||||
|
|
||||||
|
# Scale larger icons down to this size, set to 0 to disable
|
||||||
|
max_icon_size = 32
|
||||||
|
|
||||||
|
# Paths to default icons.
|
||||||
|
icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
|
||||||
|
|
||||||
|
### History ###
|
||||||
|
|
||||||
|
# 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
|
||||||
|
|
||||||
|
### Misc/Advanced ###
|
||||||
|
|
||||||
|
# dmenu path.
|
||||||
|
dmenu = /usr/bin/dmenu -p dunst:
|
||||||
|
|
||||||
|
# Browser for opening urls in context menu.
|
||||||
|
browser = /usr/bin/firefox -new-tab
|
||||||
|
|
||||||
|
# Always run rule-defined scripts, even if the notification is suppressed
|
||||||
|
always_run_script = true
|
||||||
|
|
||||||
|
# Define the title of the windows spawned by dunst
|
||||||
|
title = Dunst
|
||||||
|
|
||||||
|
# Define the class of the windows spawned by dunst
|
||||||
|
class = Dunst
|
||||||
|
|
||||||
|
# Print a notification on startup.
|
||||||
|
# This is mainly for error detection, since dbus (re-)starts dunst
|
||||||
|
# automatically after a crash.
|
||||||
|
startup_notification = false
|
||||||
|
|
||||||
|
### Legacy
|
||||||
|
|
||||||
|
# Use the Xinerama extension instead of RandR for multi-monitor support.
|
||||||
|
# This setting is provided for compatibility with older nVidia drivers that
|
||||||
|
# do not support RandR and using it on systems that support RandR is highly
|
||||||
|
# discouraged.
|
||||||
|
#
|
||||||
|
# By enabling this setting dunst will not be able to detect when a monitor
|
||||||
|
# is connected or disconnected which might break follow mode if the screen
|
||||||
|
# layout changes.
|
||||||
|
force_xinerama = false
|
||||||
|
|
||||||
|
# Experimental features that may or may not work correctly. Do not expect them
|
||||||
|
# to have a consistent behaviour across releases.
|
||||||
|
[experimental]
|
||||||
|
# Calculate the dpi to use on a per-monitor basis.
|
||||||
|
# If this setting is enabled the Xft.dpi value will be ignored and instead
|
||||||
|
# dunst will attempt to calculate an appropriate dpi value for each monitor
|
||||||
|
# using the resolution and physical size. This might be useful in setups
|
||||||
|
# where there are multiple screens with very different dpi values.
|
||||||
|
per_monitor_dpi = false
|
||||||
|
|
||||||
|
[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.
|
||||||
|
|
||||||
|
# C1616lose notification.
|
||||||
|
close = ctrl+space
|
||||||
|
|
||||||
|
# Close all notifications.
|
||||||
|
close_all = ctrl+shift+space
|
||||||
|
|
||||||
|
# Redisplay last message(s).
|
||||||
|
# On the US keyboard layout "grave" is normally above TAB and left
|
||||||
|
# of "1". Make sure this key actually exists on your keyboard layout,
|
||||||
|
# e.g. check output of 'xmodmap -pke'
|
||||||
|
history = ctrl+grave
|
||||||
|
|
||||||
|
# Context menu.
|
||||||
|
context = ctrl+shift+period
|
||||||
|
|
||||||
|
[urgency_low]
|
||||||
|
# IMPORTANT: colors have to be defined in quotation marks.
|
||||||
|
# Otherwise the "#" and following would be interpreted as a comment.
|
||||||
|
background = "#222222"
|
||||||
|
foreground = "#888888"
|
||||||
|
timeout = 10
|
||||||
|
# Icon for notifications with low urgency, uncomment to enable
|
||||||
|
#icon = /path/to/icon
|
||||||
|
|
||||||
|
[urgency_normal]
|
||||||
|
background = "#285577"
|
||||||
|
foreground = "#ffffff"
|
||||||
|
timeout = 10
|
||||||
|
# Icon for notifications with normal urgency, uncomment to enable
|
||||||
|
#icon = /path/to/icon
|
||||||
|
|
||||||
|
[urgency_critical]
|
||||||
|
background = "#900000"
|
||||||
|
foreground = "#ffffff"
|
||||||
|
frame_color = "#ff0000"
|
||||||
|
timeout = 0
|
||||||
|
# Icon for notifications with critical urgency, uncomment to enable
|
||||||
|
#icon = /path/to/icon
|
||||||
|
|
||||||
|
# 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 = ""
|
||||||
|
|
||||||
|
#[history-ignore]
|
||||||
|
# # This notification will not be saved in history
|
||||||
|
# summary = "foobar"
|
||||||
|
# history_ignore = yes
|
||||||
|
|
||||||
|
#[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
|
||||||
|
#
|
||||||
|
# vim: ft=cfg
|
@ -0,0 +1,8 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
killall -q polybar
|
||||||
|
while pgrep -x polybar >/dev/null; do sleep 1; done
|
||||||
|
|
||||||
|
MONITOR=eDP-1-1 polybar bar1 &
|
||||||
|
MONITOR=DVI-I-3-2 polybar bar1 &
|
||||||
|
MONITOR=DVI-I-2-1 polybar bar1 &
|
@ -0,0 +1,14 @@
|
|||||||
|
[xin_0]
|
||||||
|
file=/home/adam/Pictures/Wallpapers/wallhaven-553335.jpg
|
||||||
|
mode=2
|
||||||
|
bgcolor=#6a8397
|
||||||
|
|
||||||
|
[xin_1]
|
||||||
|
file=/home/adam/Pictures/Wallpapers/wallhaven-553335.jpg
|
||||||
|
mode=2
|
||||||
|
bgcolor=#6a8397
|
||||||
|
|
||||||
|
[xin_2]
|
||||||
|
file=/home/adam/Pictures/Wallpapers/wallhaven-553335.jpg
|
||||||
|
mode=2
|
||||||
|
bgcolor=#6a8397
|
@ -0,0 +1,12 @@
|
|||||||
|
[geometry]
|
||||||
|
posx=0
|
||||||
|
posy=24
|
||||||
|
sizex=1916
|
||||||
|
sizey=2134
|
||||||
|
|
||||||
|
[nitrogen]
|
||||||
|
view=icon
|
||||||
|
recurse=true
|
||||||
|
sort=alpha
|
||||||
|
icon_caps=true
|
||||||
|
dirs=/home/adam/Pictures/Wallpapers;
|
@ -0,0 +1,383 @@
|
|||||||
|
;=====================================================
|
||||||
|
;
|
||||||
|
; To learn more about how to configure Polybar
|
||||||
|
; go to https://github.com/jaagr/polybar
|
||||||
|
;
|
||||||
|
; The README contains alot of information
|
||||||
|
;
|
||||||
|
;=====================================================
|
||||||
|
|
||||||
|
[colors]
|
||||||
|
;background = ${xrdb:color0:#222}
|
||||||
|
background = #222
|
||||||
|
background-alt = #444
|
||||||
|
;foreground = ${xrdb:color7:#222}
|
||||||
|
foreground = #dfdfdf
|
||||||
|
foreground-alt = #555
|
||||||
|
primary = #ffb52a
|
||||||
|
secondary = #e60053
|
||||||
|
alert = #bd2c40
|
||||||
|
|
||||||
|
[bar/bar1]
|
||||||
|
monitor = ${env:MONITOR:eDP-1-1}
|
||||||
|
width = 100%
|
||||||
|
height = 45
|
||||||
|
|
||||||
|
;offset-x = 1%
|
||||||
|
;offset-y = 1%
|
||||||
|
radius = 0
|
||||||
|
fixed-center = false
|
||||||
|
|
||||||
|
background = ${colors.background}
|
||||||
|
foreground = ${colors.foreground}
|
||||||
|
|
||||||
|
line-size = 3
|
||||||
|
line-color = #f00
|
||||||
|
|
||||||
|
border-size = 0
|
||||||
|
border-color = #00000000
|
||||||
|
|
||||||
|
padding-left = 5
|
||||||
|
padding-right = 5
|
||||||
|
|
||||||
|
module-margin-left = 1
|
||||||
|
module-margin-right = 2
|
||||||
|
|
||||||
|
font-0 = fixed:pixelsize=18;1
|
||||||
|
font-1 = unifont:fontformat=truetype:size=8:antialias=false;0
|
||||||
|
font-2 = siji:pixelsize=18;1
|
||||||
|
|
||||||
|
modules-left = bspwm i3 powermenu
|
||||||
|
modules-center = mpd
|
||||||
|
modules-right = filesystem volume cpu memory temperature battery wlan eth date
|
||||||
|
|
||||||
|
bottom = true
|
||||||
|
tray-position = right
|
||||||
|
tray-padding = 4
|
||||||
|
tray-transparent = false
|
||||||
|
;tray-background = #0063ff
|
||||||
|
|
||||||
|
;wm-restack = bspwm
|
||||||
|
;wm-restack = i3
|
||||||
|
|
||||||
|
;override-redirect = true
|
||||||
|
|
||||||
|
;scroll-up = bspwm-desknext
|
||||||
|
;scroll-down = bspwm-deskprev
|
||||||
|
|
||||||
|
;scroll-up = i3wm-wsnext
|
||||||
|
;scroll-down = i3wm-wsprev
|
||||||
|
|
||||||
|
cursor-click = pointer
|
||||||
|
cursor-scroll = ns-resize
|
||||||
|
|
||||||
|
[module/xwindow]
|
||||||
|
type = internal/xwindow
|
||||||
|
label = %title:0:30:...%
|
||||||
|
|
||||||
|
[module/xkeyboard]
|
||||||
|
type = internal/xkeyboard
|
||||||
|
blacklist-0 = num lock
|
||||||
|
|
||||||
|
format-prefix = " "
|
||||||
|
format-prefix-foreground = ${colors.foreground-alt}
|
||||||
|
format-prefix-underline = ${colors.secondary}
|
||||||
|
|
||||||
|
label-layout = %layout%
|
||||||
|
label-layout-underline = ${colors.secondary}
|
||||||
|
|
||||||
|
label-indicator-padding = 2
|
||||||
|
label-indicator-margin = 1
|
||||||
|
label-indicator-background = ${colors.secondary}
|
||||||
|
label-indicator-underline = ${colors.secondary}
|
||||||
|
|
||||||
|
[module/filesystem]
|
||||||
|
type = internal/fs
|
||||||
|
interval = 25
|
||||||
|
|
||||||
|
mount-0 = /
|
||||||
|
|
||||||
|
label-mounted = %{F#0a81f5}%mountpoint%%{F-}: %percentage_used%%
|
||||||
|
label-unmounted = %mountpoint% not mounted
|
||||||
|
label-unmounted-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
[module/bspwm]
|
||||||
|
type = internal/bspwm
|
||||||
|
|
||||||
|
label-focused = %index%
|
||||||
|
label-focused-background = ${colors.background-alt}
|
||||||
|
label-focused-underline= ${colors.primary}
|
||||||
|
label-focused-padding = 2
|
||||||
|
|
||||||
|
label-occupied = %index%
|
||||||
|
label-occupied-padding = 2
|
||||||
|
|
||||||
|
label-urgent = %index%!
|
||||||
|
label-urgent-background = ${colors.alert}
|
||||||
|
label-urgent-padding = 2
|
||||||
|
|
||||||
|
label-empty = %index%
|
||||||
|
label-empty-foreground = ${colors.foreground-alt}
|
||||||
|
label-empty-padding = 2
|
||||||
|
|
||||||
|
[module/i3]
|
||||||
|
type = internal/i3
|
||||||
|
format = <label-state> <label-mode>
|
||||||
|
index-sort = true
|
||||||
|
wrapping-scroll = false
|
||||||
|
|
||||||
|
; Only show workspaces on the same output as the bar
|
||||||
|
;pin-workspaces = false
|
||||||
|
|
||||||
|
label-mode-padding = 2
|
||||||
|
label-mode-foreground = #000
|
||||||
|
label-mode-background = ${colors.primary}
|
||||||
|
|
||||||
|
; focused = Active workspace on focused monitor
|
||||||
|
label-focused = %index%
|
||||||
|
label-focused-background = ${module/bspwm.label-focused-background}
|
||||||
|
label-focused-underline = ${module/bspwm.label-focused-underline}
|
||||||
|
label-focused-padding = ${module/bspwm.label-focused-padding}
|
||||||
|
|
||||||
|
; unfocused = Inactive workspace on any monitor
|
||||||
|
label-unfocused = %index%
|
||||||
|
label-unfocused-padding = ${module/bspwm.label-occupied-padding}
|
||||||
|
|
||||||
|
; visible = Active workspace on unfocused monitor
|
||||||
|
label-visible = %index%
|
||||||
|
label-visible-background = ${self.label-focused-background}
|
||||||
|
label-visible-underline = ${self.label-focused-underline}
|
||||||
|
label-visible-padding = ${self.label-focused-padding}
|
||||||
|
|
||||||
|
; urgent = Workspace with urgency hint set
|
||||||
|
label-urgent = %index%
|
||||||
|
label-urgent-background = ${module/bspwm.label-urgent-background}
|
||||||
|
label-urgent-padding = ${module/bspwm.label-urgent-padding}
|
||||||
|
|
||||||
|
[module/mpd]
|
||||||
|
type = internal/mpd
|
||||||
|
format-online = <label-song> <icon-prev> <icon-stop> <toggle> <icon-next>
|
||||||
|
|
||||||
|
icon-prev =
|
||||||
|
icon-stop =
|
||||||
|
icon-play =
|
||||||
|
icon-pause =
|
||||||
|
icon-next =
|
||||||
|
|
||||||
|
label-song-maxlen = 25
|
||||||
|
label-song-ellipsis = true
|
||||||
|
|
||||||
|
[module/xbacklight]
|
||||||
|
type = internal/xbacklight
|
||||||
|
|
||||||
|
format = <label> <bar>
|
||||||
|
label = BL
|
||||||
|
|
||||||
|
bar-width = 10
|
||||||
|
bar-indicator = |
|
||||||
|
bar-indicator-foreground = #ff
|
||||||
|
bar-indicator-font = 2
|
||||||
|
bar-fill = ─
|
||||||
|
bar-fill-font = 2
|
||||||
|
bar-fill-foreground = #9f78e1
|
||||||
|
bar-empty = ─
|
||||||
|
bar-empty-font = 2
|
||||||
|
bar-empty-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
[module/backlight-acpi]
|
||||||
|
inherit = module/xbacklight
|
||||||
|
type = internal/backlight
|
||||||
|
card = intel_backlight
|
||||||
|
|
||||||
|
[module/memory]
|
||||||
|
type = internal/memory
|
||||||
|
interval = 2
|
||||||
|
format-prefix = " "
|
||||||
|
format-prefix-foreground = ${colors.foreground-alt}
|
||||||
|
format-underline = #4bffdc
|
||||||
|
label = %gb_used%/%gb_total%
|
||||||
|
|
||||||
|
[module/cpu]
|
||||||
|
type = internal/cpu
|
||||||
|
interval = 2
|
||||||
|
format-prefix = " "
|
||||||
|
format-prefix-foreground = ${colors.foreground-alt}
|
||||||
|
format-underline = #f90000
|
||||||
|
label = CPU: %percentage:2%%
|
||||||
|
|
||||||
|
[module/wlan]
|
||||||
|
type = internal/network
|
||||||
|
interface = wlp110s0
|
||||||
|
interval = 1.0
|
||||||
|
|
||||||
|
label-connected = wlan: '%essid%' - %local_ip% - U-%upspeed% D-%downspeed%
|
||||||
|
format-connected = <ramp-signal> <label-connected>
|
||||||
|
format-connected-underline = #9f78e1
|
||||||
|
|
||||||
|
;format-disconnected =
|
||||||
|
format-disconnected = <label-disconnected>
|
||||||
|
format-disconnected-underline = ${self.format-connected-underline}
|
||||||
|
label-disconnected = %ifname% disconnected
|
||||||
|
label-disconnected-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
ramp-signal-0 =
|
||||||
|
ramp-signal-1 =
|
||||||
|
ramp-signal-2 =
|
||||||
|
ramp-signal-3 =
|
||||||
|
ramp-signal-4 =
|
||||||
|
ramp-signal-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
[module/network]
|
||||||
|
type = internal/network
|
||||||
|
interface = enp109s0f1
|
||||||
|
;interface = enx8cae5cec01dd
|
||||||
|
interval = 3.0
|
||||||
|
|
||||||
|
format-connected-underline = #55aa55
|
||||||
|
;format-connected-prefix = " "
|
||||||
|
format-connected-prefix-foreground = ${colors.foreground-alt}
|
||||||
|
label-connected = eth %local_ip%
|
||||||
|
|
||||||
|
format-disconnected =
|
||||||
|
;format-disconnected = <label-disconnected>
|
||||||
|
;format-disconnected-underline = ${self.format-connected-underline}
|
||||||
|
label-disconnected = %ifname% disconnected
|
||||||
|
;label-disconnected-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
[module/date]
|
||||||
|
type = internal/date
|
||||||
|
interval = 5
|
||||||
|
|
||||||
|
date = "%Y-%m-%d"
|
||||||
|
date-alt = " %Y-%m-%d"
|
||||||
|
|
||||||
|
time = %H:%M
|
||||||
|
time-alt = %H:%M:%S
|
||||||
|
|
||||||
|
format-prefix =
|
||||||
|
format-prefix-foreground = ${colors.foreground-alt}
|
||||||
|
format-underline = #0a6cf5
|
||||||
|
|
||||||
|
label = %time% %date%
|
||||||
|
|
||||||
|
[module/volume]
|
||||||
|
type = internal/volume
|
||||||
|
|
||||||
|
format-volume = <label-volume> <bar-volume>
|
||||||
|
label-volume = 🔊
|
||||||
|
label-volume-foreground = ${root.foreground}
|
||||||
|
|
||||||
|
format-muted-prefix = " "
|
||||||
|
format-muted-foreground = ${colors.foreground-alt}
|
||||||
|
label-muted = sound muted
|
||||||
|
|
||||||
|
bar-volume-width = 10
|
||||||
|
bar-volume-foreground-0 = #55aa55
|
||||||
|
bar-volume-foreground-1 = #55aa55
|
||||||
|
bar-volume-foreground-2 = #55aa55
|
||||||
|
bar-volume-foreground-3 = #55aa55
|
||||||
|
bar-volume-foreground-4 = #55aa55
|
||||||
|
bar-volume-foreground-5 = #f5a70a
|
||||||
|
bar-volume-foreground-6 = #ff5555
|
||||||
|
bar-volume-gradient = true
|
||||||
|
bar-volume-indicator = |
|
||||||
|
bar-volume-indicator-font = 2
|
||||||
|
bar-volume-fill = ─
|
||||||
|
bar-volume-fill-font = 2
|
||||||
|
bar-volume-empty = ─
|
||||||
|
bar-volume-empty-font = 2
|
||||||
|
bar-volume-empty-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
[module/battery]
|
||||||
|
type = internal/battery
|
||||||
|
battery = BAT0
|
||||||
|
adapter = AC
|
||||||
|
full-at = 98
|
||||||
|
|
||||||
|
label-charging = %percentage%% - charging
|
||||||
|
format-charging = <animation-charging> <label-charging>
|
||||||
|
format-charging-underline = #ffb52a
|
||||||
|
|
||||||
|
label-discharging = %percentage%% - %time% remaining
|
||||||
|
format-discharging = <ramp-capacity> <label-discharging>
|
||||||
|
format-discharging-underline = ${self.format-charging-underline}
|
||||||
|
|
||||||
|
label-full = Full
|
||||||
|
format-full-prefix = " "
|
||||||
|
format-full-prefix-foreground = ${colors.foreground-alt}
|
||||||
|
format-full-underline = ${self.format-charging-underline}
|
||||||
|
|
||||||
|
ramp-capacity-0 =
|
||||||
|
ramp-capacity-1 =
|
||||||
|
ramp-capacity-2 =
|
||||||
|
ramp-capacity-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
animation-charging-0 =
|
||||||
|
animation-charging-1 =
|
||||||
|
animation-charging-2 =
|
||||||
|
animation-charging-foreground = ${colors.foreground-alt}
|
||||||
|
animation-charging-framerate = 1000
|
||||||
|
|
||||||
|
[module/temperature]
|
||||||
|
type = internal/temperature
|
||||||
|
thermal-zone = 0
|
||||||
|
warn-temperature = 70
|
||||||
|
|
||||||
|
format = <ramp> <label>
|
||||||
|
format-underline = #f50a4d
|
||||||
|
format-warn = <ramp> <label-warn>
|
||||||
|
format-warn-underline = ${self.format-underline}
|
||||||
|
|
||||||
|
label = %temperature%
|
||||||
|
label-warn = !!%temperature%!!
|
||||||
|
label-warn-foreground = ${colors.secondary}
|
||||||
|
|
||||||
|
ramp-0 =
|
||||||
|
ramp-1 =
|
||||||
|
ramp-2 =
|
||||||
|
ramp-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
[module/powermenu]
|
||||||
|
type = custom/menu
|
||||||
|
|
||||||
|
expand-right = true
|
||||||
|
|
||||||
|
format-spacing = 1
|
||||||
|
|
||||||
|
label-open = I/O
|
||||||
|
label-open-foreground = ${colors.secondary}
|
||||||
|
label-close = cancel
|
||||||
|
label-close-foreground = ${colors.secondary}
|
||||||
|
label-separator = |
|
||||||
|
label-separator-foreground = ${colors.foreground-alt}
|
||||||
|
|
||||||
|
menu-0-0 = reboot
|
||||||
|
menu-0-0-exec = menu-open-1
|
||||||
|
|
||||||
|
menu-0-1 = power off
|
||||||
|
menu-0-1-exec = menu-open-2
|
||||||
|
|
||||||
|
menu-1-0 = cancel
|
||||||
|
menu-1-0-exec = menu-open-0
|
||||||
|
|
||||||
|
menu-1-1 = reboot
|
||||||
|
menu-1-1-exec = shutdown -r now
|
||||||
|
|
||||||
|
menu-2-0 = power off
|
||||||
|
menu-2-0-exec = shutdown now
|
||||||
|
|
||||||
|
menu-2-1 = cancel
|
||||||
|
menu-2-1-exec = menu-open-0
|
||||||
|
|
||||||
|
[settings]
|
||||||
|
screenchange-reload = true
|
||||||
|
;compositing-background = xor
|
||||||
|
;compositing-background = screen
|
||||||
|
;compositing-foreground = source
|
||||||
|
;compositing-border = over
|
||||||
|
|
||||||
|
[global/wm]
|
||||||
|
margin-top = 5
|
||||||
|
margin-bottom = 5
|
||||||
|
|
||||||
|
; vim:ft=dosini
|
@ -0,0 +1,61 @@
|
|||||||
|
[global_config]
|
||||||
|
enabled_plugins = CustomCommandsMenu, LaunchpadCodeURLHandler, APTURLHandler, LaunchpadBugURLHandler
|
||||||
|
inactive_color_offset = 0.936073059361
|
||||||
|
suppress_multiple_term_dialog = True
|
||||||
|
title_inactive_bg_color = "#555753"
|
||||||
|
title_receive_bg_color = "#ce5c00"
|
||||||
|
title_transmit_bg_color = "#204a87"
|
||||||
|
[keybindings]
|
||||||
|
close_term = <Primary>w
|
||||||
|
close_window = <Primary><Shift>w
|
||||||
|
edit_tab_title = <Primary>F2
|
||||||
|
edit_terminal_title = F2
|
||||||
|
go_down = <Primary><Shift>j
|
||||||
|
go_left = <Primary><Shift>h
|
||||||
|
go_right = <Primary><Shift>l
|
||||||
|
go_up = <Primary><Shift>k
|
||||||
|
line_down = <Shift>Down
|
||||||
|
line_up = <Shift>Up
|
||||||
|
new_tab = <Primary>t
|
||||||
|
new_window = <Primary>n
|
||||||
|
next_tab = <Primary>Tab
|
||||||
|
search = <Primary>f
|
||||||
|
split_horiz = <Primary>s
|
||||||
|
split_vert = <Primary>i
|
||||||
|
ungroup_all = <Primary><Shift>g
|
||||||
|
ungroup_tab = <Primary><Shift>u
|
||||||
|
zoom_in = <Primary><Alt>equal
|
||||||
|
zoom_normal = <Primary><Alt>0
|
||||||
|
zoom_out = <Primary><Alt>minus
|
||||||
|
[layouts]
|
||||||
|
[[default]]
|
||||||
|
[[[child0]]]
|
||||||
|
fullscreen = False
|
||||||
|
last_active_term = 83e6ff1b-e9c5-4688-af8c-efb0ae56dd94
|
||||||
|
last_active_window = True
|
||||||
|
maximised = False
|
||||||
|
order = 0
|
||||||
|
parent = ""
|
||||||
|
position = 0:18
|
||||||
|
size = 1916, 2120
|
||||||
|
title = /bin/bash
|
||||||
|
type = Window
|
||||||
|
[[[terminal1]]]
|
||||||
|
order = 0
|
||||||
|
parent = child0
|
||||||
|
profile = default
|
||||||
|
type = Terminal
|
||||||
|
uuid = 83e6ff1b-e9c5-4688-af8c-efb0ae56dd94
|
||||||
|
[plugins]
|
||||||
|
[profiles]
|
||||||
|
[[default]]
|
||||||
|
background_darkness = 0.85
|
||||||
|
background_type = transparent
|
||||||
|
cursor_color = "#aaaaaa"
|
||||||
|
font = Ubuntu Mono derivative Powerline 18
|
||||||
|
foreground_color = "#ffffff"
|
||||||
|
login_shell = True
|
||||||
|
palette = "#000000:#cc0000:#4e9a06:#c4a000:#3465a4:#75507b:#06989a:#d3d7cf:#555753:#ef2929:#8ae234:#fce94f:#729fcf:#ad7fa8:#34e2e2:#eeeeec"
|
||||||
|
scrollback_infinite = True
|
||||||
|
use_system_font = False
|
||||||
|
visible_bell = True
|
@ -1,31 +1,92 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
if [ -d "${dest}/.config" ]; then
|
if [ ! -d ${dest}/config ]; then
|
||||||
echo ".config exists"
|
mkdir -p ${dest}/.config/
|
||||||
else
|
cp -R ${source}/config/ ${dest}/.config/
|
||||||
mkdir -p "${dest}/.config"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
cp -r ${source}/config/ ${dest}/.config/
|
apt-get update && apt-get install -y \
|
||||||
|
|
||||||
sudo apt-get update && sudo apt-get install \
|
|
||||||
build-essential \
|
build-essential \
|
||||||
|
bison \
|
||||||
|
checkinstall \
|
||||||
|
cargo \
|
||||||
cmake \
|
cmake \
|
||||||
|
cmake-data \
|
||||||
|
compton \
|
||||||
curl \
|
curl \
|
||||||
nvm \
|
git \
|
||||||
|
i3-wm \
|
||||||
|
libunwind-dev \
|
||||||
|
libcairo2-dev \
|
||||||
|
libxcb1-dev \
|
||||||
|
libxcb-ewmh-dev \
|
||||||
|
libxcb-icccm4-dev \
|
||||||
|
libxcb-image0-dev \
|
||||||
|
libxcb-randr0-dev \
|
||||||
|
libxcb-util0-dev \
|
||||||
|
libxcb-xkb-dev \
|
||||||
|
libxcb-xrm-dev \
|
||||||
|
libasound2-dev \
|
||||||
|
libssl-dev \
|
||||||
|
libpulse-dev \
|
||||||
|
libmpdclient-dev \
|
||||||
|
libiw-dev \
|
||||||
|
libcurl4-openssl-dev \
|
||||||
|
libxcb-cursor-dev \
|
||||||
|
nitrogen \
|
||||||
|
pkg-config \
|
||||||
|
python-xcbgen \
|
||||||
python \
|
python \
|
||||||
|
snap \
|
||||||
rbenv \
|
rbenv \
|
||||||
|
ruby-build \
|
||||||
|
rust \
|
||||||
|
terminator \
|
||||||
tmux \
|
tmux \
|
||||||
wget \
|
wget \
|
||||||
git;
|
xcb-proto;
|
||||||
|
|
||||||
|
snap install slack;
|
||||||
|
|
||||||
|
curl https://raw.githubusercontent.com/creationix/nvm/v0.25.0/install.sh | bash
|
||||||
|
bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)
|
||||||
|
source ~/.gvm/scripts/gvm
|
||||||
|
gvm install go1.4 -B
|
||||||
|
gvm use go1.4
|
||||||
|
export GOROOT_BOOTSTRAP=$GOROOT
|
||||||
|
gvm install go1.5
|
||||||
|
|
||||||
|
cd ${dest}/projects
|
||||||
|
|
||||||
|
# install polybar
|
||||||
|
git clone --branch 3.1.0 --recursive https://github.com/jaagr/polybar polybar
|
||||||
|
cd ./polybar
|
||||||
|
./build.sh
|
||||||
|
cd ..
|
||||||
|
|
||||||
|
|
||||||
|
# install vim with all of the necessary features
|
||||||
|
git clone https://github.com/vim/vim vim
|
||||||
|
cd ./vim
|
||||||
|
|
||||||
|
./configure --with-features=huge \
|
||||||
|
--enable-multibyte \
|
||||||
|
--enable-rubyinterp=yes \
|
||||||
|
--enable-python3interp=yes \
|
||||||
|
--enable-perlinterp=yes \
|
||||||
|
--enable-luainterp=yes \
|
||||||
|
--enable-gui=gtk2 \
|
||||||
|
--enable-cscope \
|
||||||
|
--prefix=/usr/local
|
||||||
|
|
||||||
rbenv install 1.9.3-p125;
|
make VIMRUNTUME=~/tools/vim/
|
||||||
rbenv global 1.9.3-p125;
|
|
||||||
|
|
||||||
rm -rf ~/tools/modules/iTerm2-Color-Schemes
|
checkinstall
|
||||||
rm -rf ~/tools/modules/tmux-MacOSX-pasteboard
|
cd ..
|
||||||
|
|
||||||
rake
|
git clone https://github.com/51v4n/i3-gnome i3-gnome
|
||||||
|
cd ./i3-gnome
|
||||||
|
make install
|
||||||
|
cd ..
|
||||||
|
|
||||||
echo "You must install YouCompleteMe by going to ~/tools/vim/bundle/YouCompleteMe/ and following the instructions in the README.md"
|
cd ${dest}
|
||||||
|
Loading…
Reference in new issue