822a4b46e9f774f9a213c51c515ea45f63aedc0c

Author
Pavle Portic <pavle.portic@tilda.center>
Committer
Pavle Portic <pavle.portic@tilda.center>
Date

Message

Initial commit

Diff

This diff is truncated to protect this page.

   1diff --git a/.gitignore b/.gitignore
   2new file mode 100644
   3index 0000000000000000000000000000000000000000..bee8a64b79a99590d5303307144172cfe824fbf7
   4--- /dev/null
   5+++ b/.gitignore
   6@@ -0,0 +1 @@
   7+__pycache__
   8diff --git a/dot_Xresources b/dot_Xresources
   9new file mode 100644
  10index 0000000000000000000000000000000000000000..6d36d385df18014345e18db8cf08c99ef459b43e
  11--- /dev/null
  12+++ b/dot_Xresources
  13@@ -0,0 +1,31 @@
  14+! -- Color settings
  15+*foreground:	#ebdbb2
  16+*background:	#282828
  17+
  18+!black
  19+*color0:	#1d2021
  20+*color8:	#665c54
  21+!red
  22+*color1:	#cc241d
  23+*color9:	#fb4934
  24+!green
  25+*color2:	#98971a
  26+*color10:	#b8bb26
  27+!yellow
  28+*color3:	#d79921
  29+*color11:	#fabd2f
  30+!blue
  31+*color4:	#388588
  32+*color12:	#72a591
  33+!magenta
  34+*color5:	#b16286
  35+*color13:	#d3869b
  36+!cyan
  37+*color6:	#689d6a
  38+*color14:	#8ec07c
  39+!white
  40+*color7:	#dbae93
  41+*color15:	#fbf1c7
  42+
  43+Xcursor.theme: Human
  44+
  45diff --git a/dot_config/flake8 b/dot_config/flake8
  46new file mode 100644
  47index 0000000000000000000000000000000000000000..04456669d2f1b2241ade6a276e8ec51b8104753f
  48--- /dev/null
  49+++ b/dot_config/flake8
  50@@ -0,0 +1,3 @@
  51+[flake8]
  52+max-line-length = 256
  53+ignore = E202,W191,W391,E117
  54diff --git a/dot_config/i3/config b/dot_config/i3/config
  55new file mode 100644
  56index 0000000000000000000000000000000000000000..521d8590015d9ad074196bcb01f5a55920e7f021
  57--- /dev/null
  58+++ b/dot_config/i3/config
  59@@ -0,0 +1,249 @@
  60+# vim: syntax=i3config ft=i3config ts=4 sts=4 sw=4 noet
  61+#
  62+# i3 config file
  63+#
  64+# Please see http://i3wm.org/docs/userguide.html for a complete reference!
  65+
  66+set $foreground	#ebdbb2
  67+set $background	#282828
  68+set $color0		#1d2021
  69+set $color1		#cc241d
  70+set $color2		#98971a
  71+set $color3		#d79921
  72+set $color4		#458588
  73+set $color5		#b16286
  74+set $color6		#689d6a
  75+set $color7		#a89984
  76+set $color8		#665c54
  77+set $color9		#fb4934
  78+set $color10	#b8bb26
  79+set $color11	#fabd2f
  80+set $color12	#83a598
  81+set $color13	#d3869b
  82+set $color14	#8ec07c
  83+set $color15	#fbf1c7
  84+set $color16	#d65d0e
  85+set $color17	#fe8019
  86+
  87+set $mod Mod4
  88+
  89+# Font for window titles. Will also be used by the bar unless a different font
  90+# is used in the bar {} block below.
  91+font pango:Pragmata Pro, FontAwesome 11
  92+
  93+#class						background		border			text			split
  94+client.focused				$color8			$color8			$foreground		$color7
  95+client.focused_inactive		$background		$background		$color7			$color0
  96+client.unfocused			$color0			$background		$color8			$color0
  97+client.urgent				$color1			$color1			$foreground		$color1
  98+client.background			$background
  99+
 100+# Use Mouse+$mod to drag floating windows to their wanted position
 101+floating_modifier $mod
 102+
 103+# start a terminal
 104+bindsym $mod+Return exec roxterm
 105+
 106+# kill focused window
 107+bindsym $mod+Shift+q kill
 108+
 109+# start rofi (a program launcher)
 110+bindsym $mod+space exec "rofi -show drun"
 111+bindsym $mod+BackSpace exec "rofi -show drun"
 112+
 113+# change focus
 114+bindsym $mod+h focus left
 115+bindsym $mod+n focus down
 116+bindsym $mod+e focus up
 117+bindsym $mod+i focus right
 118+bindsym $mod+Left focus left
 119+bindsym $mod+Down focus down
 120+bindsym $mod+Up focus up
 121+bindsym $mod+Right focus right
 122+
 123+# move focused window
 124+bindsym $mod+Shift+h move left
 125+bindsym $mod+Shift+n move down
 126+bindsym $mod+Shift+e move up
 127+bindsym $mod+Shift+i move right
 128+bindsym $mod+Shift+Left move left
 129+bindsym $mod+Shift+Down move down
 130+bindsym $mod+Shift+Up move up
 131+bindsym $mod+Shift+Right move right
 132+
 133+# split in horizontal orientation
 134+bindsym $mod+c split h
 135+
 136+# split in vertical orientation
 137+bindsym $mod+v split v
 138+
 139+# enter fullscreen mode for the focused container
 140+bindsym $mod+f fullscreen toggle
 141+
 142+# change container layout (tabbed, toggle split)
 143+bindsym $mod+s layout toggle split
 144+bindsym $mod+t layout tabbed
 145+
 146+# toggle tiling / floating
 147+bindsym $mod+Shift+space floating toggle
 148+bindsym $mod+Shift+BackSpace floating toggle
 149+bindsym $mod+g focus mode_toggle
 150+
 151+bindsym $mod+Tab workspace next
 152+bindsym $mod+Shift+Tab workspace prev
 153+
 154+# switch to workspace
 155+bindsym $mod+1 workspace number 1
 156+bindsym $mod+2 workspace number 2
 157+bindsym $mod+3 workspace number 3
 158+bindsym $mod+4 workspace number 4
 159diff --git a/dot_config/i3/i3-autoname-workspaces.py b/dot_config/i3/i3-autoname-workspaces.py
 160new file mode 100644
 161index 0000000000000000000000000000000000000000..e16bc2c2e3f3c0d4abf220fc8bd30cdac54c011e
 162--- /dev/null
 163+++ b/dot_config/i3/i3-autoname-workspaces.py
 164@@ -0,0 +1,198 @@
 165+#!/usr/bin/env python3
 166+
 167+# This script listens for i3 events and updates workspace names to show icons
 168+# for running programs.  It contains icons for a few programs, but more can
 169+# easily be added by inserting them into WINDOW_ICONS below.
 170+#
 171+# Dependencies
 172+# * xorg-xprop - install through system package manager
 173+# * i3ipc - install with pip
 174+# * fontawesome - install with pip
 175+#
 176+# Installation:
 177+# * Download this script and place it in ~/.config/i3/ (or anywhere you want)
 178+# * Add "exec_always ~/.config/i3/i3-autoname-workspaces.py &" to your i3 config
 179+# * Restart i3: "$ i3-msg restart"
 180+#
 181+# Configuration:
 182+# The default i3 config's keybingings reference workspaces by name, which is an
 183+# issue when using this script because the "names" are constantaly changing to
 184+# show window icons.  Instead, you'll need to change the keybindings to
 185+# reference workspaces by number.  Change lines like:
 186+#   bindsym $mod+1 workspace 1
 187+# To:
 188+#   bindsym $mod+1 workspace number 1
 189+
 190+
 191+import re
 192+import signal
 193+import subprocess as proc
 194+import sys
 195+
 196+import fontawesome as fa
 197+import i3ipc
 198+
 199+# Add icons here for common programs you use.  The keys are the X window class
 200+# (WM_CLASS) names (lower-cased) and the icons can be any text you want to
 201+# display.
 202+#
 203+# Most of these are character codes for font awesome:
 204+#   http://fortawesome.github.io/Font-Awesome/icons/
 205+#
 206+# If you're not sure what the WM_CLASS is for your application, you can use
 207+# xprop (https://linux.die.net/man/1/xprop). Run `xprop | grep WM_CLASS`
 208+# then click on the application you want to inspect.
 209+WINDOW_ICONS = {
 210+	'blender': fa.icons['cube'],
 211+	'blueman-manager': fa.icons['bluetooth'],
 212+	'chromium': fa.icons['chrome'],
 213+	'cities.x64': fa.icons['city'],
 214+	'code': fa.icons['code'],
 215+	'darktable': fa.icons['camera'],
 216+	'dwarf_fortress': fa.icons['fort-awesome'],
 217+	'eclipse': fa.icons['code'],
 218+	'emacs': fa.icons['code'],
 219+	'evince': fa.icons['file-pdf'],
 220+	'factorio': fa.icons['cog'],
 221+	'feh': fa.icons['image'],
 222+	'firefox': fa.icons['firefox'],
 223+	'firefox-developer': fa.icons['firefox'],
 224+	'ghb': fa.icons['video'],
 225+	'gimp': fa.icons['file-image'],
 226+	'google-chrome': fa.icons['chrome'],
 227+	'gparted': fa.icons['hdd'],
 228+	'gpicview': fa.icons['image'],
 229+	'gsmartcontrol': fa.icons['hdd'],
 230+	'inkscape': fa.icons['pen-nib'],
 231+	'jetbrains-studio': fa.icons['code'],
 232+	'kicad': fa.icons['microchip'],
 233+	'roxterm': fa.icons['terminal'],
 234+	'ksp.x86_64': fa.icons['space-shuttle'],
 235+	'libreoffice-impress': fa.icons['file-powerpoint'],
 236+	'libreoffice-writer': fa.icons['file-alt'],
 237+	'lutris': fa.icons['gamepad'],
 238+	'minecraft 1.12.2': fa.icons['cube'],
 239+	'mirage': fa.icons['image'],
 240+	'mpv': fa.icons['video'],
 241+	'multimc': fa.icons['cube'],
 242+	'mupdf': fa.icons['file-pdf'],
 243+	'nm-connection-editor': fa.icons['wifi'],
 244+	'org-openstreetmap-josm-gui-mainapplication': fa.icons['map'],
 245+	'pavucontrol': fa.icons['volume-up'],
 246+	'qbittorrent': fa.icons['download'],
 247+	'qtcreator': fa.icons['code'],
 248+	'riot': fa.icons['comments'],
 249+	'seahorse': fa.icons['lock'],
 250+	'spotify': fa.icons['spotify'],
 251+	'sqlitebrowser': fa.icons['database'],
 252+	'steam': fa.icons['steam'],
 253+	'subl': fa.icons['file-alt'],
 254+	'subl3': fa.icons['file-alt'],
 255+	'surviving mars': fa.icons['rocket'],
 256+	'telegram-desktop': fa.icons['telegram'],
 257+	'terraria.bin.x86_64': fa.icons['tree'],
 258+	'thunderbird': fa.icons['envelope'],
 259+	'vim': fa.icons['code'],
 260+	'virt-manager': fa.icons['desktop'],
 261+	'virtualbox manager': fa.icons['desktop'],
 262+	'vivifyscrum': fa.icons['check'],
 263+	'vlc': fa.icons['video'],
 264diff --git a/dot_config/private_user-dirs.dirs b/dot_config/private_user-dirs.dirs
 265new file mode 100644
 266index 0000000000000000000000000000000000000000..d2e4b56f64e16108c89a35b80c73db1dc4578317
 267--- /dev/null
 268+++ b/dot_config/private_user-dirs.dirs
 269@@ -0,0 +1,15 @@
 270+# This file is written by xdg-user-dirs-update
 271+# If you want to change or add directories, just edit the line you're
 272+# interested in. All local changes will be retained on the next run.
 273+# Format is XDG_xxx_DIR="$HOME/yyy", where yyy is a shell-escaped
 274+# homedir-relative path, or XDG_xxx_DIR="/yyy", where /yyy is an
 275+# absolute path. No other format is supported.
 276+# 
 277+XDG_DESKTOP_DIR="$HOME/"
 278+XDG_DOCUMENTS_DIR="$HOME/documents/"
 279+XDG_DOWNLOAD_DIR="$HOME/downloads/"
 280+XDG_MUSIC_DIR="$HOME/music/"
 281+XDG_PICTURES_DIR="$HOME/pictures/"
 282+XDG_VIDEOS_DIR="$HOME/videos/"
 283+XDG_TEMPLATES_DIR="$HOME/"
 284+XDG_PUBLICSHARE_DIR="$HOME/"
 285diff --git a/dot_config/rofi/config b/dot_config/rofi/config
 286new file mode 100644
 287index 0000000000000000000000000000000000000000..61617584a04f93c6ad5770b4cecb7e5f6684ae3b
 288--- /dev/null
 289+++ b/dot_config/rofi/config
 290@@ -0,0 +1,23 @@
 291+! vim: set ft=xdefaults:
 292+! General settings
 293+rofi.levenshtein-sort: false
 294+rofi.matching: fuzzy
 295+rofi.modi: drun,ssh
 296+
 297+! Styling
 298+rofi.color-window: #1d2021,#665c54
 299+rofi.color-normal: #1d2021,#665c54,#1d2021,#665c54,#1d2021
 300+rofi.bc: #1d2021
 301+rofi.location: 0
 302+rofi.lines: 10
 303+rofi.bw: 0
 304+rofi.hide-scrollbar: true
 305+rofi.font: Pragmata Pro 13
 306+rofi.separator-style: none
 307+rofi.show-icons: false
 308+
 309+! Running
 310+rofi.terminal: terminator
 311+rofi.ssh-command: {terminal} -x "{ssh-client} {host}"
 312+rofi.run-command: {cmd}
 313+rofi.run-shell-command: {terminal} -c "{cmd}"
 314diff --git a/dot_config/roxterm.sourceforge.net/Colours/Default b/dot_config/roxterm.sourceforge.net/Colours/Default
 315new file mode 100644
 316index 0000000000000000000000000000000000000000..bb0ad727ae56469de5c839cfadad284135ba55ca
 317--- /dev/null
 318+++ b/dot_config/roxterm.sourceforge.net/Colours/Default
 319@@ -0,0 +1,20 @@
 320+[roxterm colour scheme]
 321+foreground=#ebebdbdbb2b2
 322+background=#282828282828
 323+palette_size=16
 324+0=#282828282828
 325+1=#cccc24241d1d
 326+2=#989897971a1a
 327+3=#d7d799992121
 328+4=#383885858888
 329+5=#b1b162628686
 330+6=#68689d9d6a6a
 331+7=#dbdbaeae9393
 332+8=#66665c5c5454
 333+9=#fbfb49493434
 334+10=#b8b8bbbb2626
 335+11=#fafabdbd2f2f
 336+12=#7272a5a59191
 337+13=#d3d386869b9b
 338+14=#8e8ec0c07c7c
 339+15=#ebebdbdbb2b2
 340diff --git a/dot_config/roxterm.sourceforge.net/Global b/dot_config/roxterm.sourceforge.net/Global
 341new file mode 100644
 342index 0000000000000000000000000000000000000000..64c1bc579ddc0f92c98f84c565fb6a79e9d107a1
 343--- /dev/null
 344+++ b/dot_config/roxterm.sourceforge.net/Global
 345@@ -0,0 +1,4 @@
 346+[roxterm options]
 347+prefer_dark_theme=0
 348+warn_close=1
 349+only_warn_running=1
 350diff --git a/dot_config/roxterm.sourceforge.net/Profiles/Default b/dot_config/roxterm.sourceforge.net/Profiles/Default
 351new file mode 100644
 352index 0000000000000000000000000000000000000000..d054863dc1c78b9bf2f0515ed842127d559c3c98
 353--- /dev/null
 354+++ b/dot_config/roxterm.sourceforge.net/Profiles/Default
 355@@ -0,0 +1,13 @@
 356+[roxterm profile]
 357+font=Pragmata Pro 11
 358+always_show_tabs=0
 359+colour_scheme=Default
 360+bell_highlights_tab=0
 361+audible_bell=0
 362+autowrap=1
 363+cursor_blink_mode=2
 364+scrollbar_pos=0
 365+limit_scrollback=0
 366+vspacing=8
 367+hide_menubar=1
 368+scroll_on_keystroke=1
 369diff --git a/dot_config/twmn/twmn.conf b/dot_config/twmn/twmn.conf
 370new file mode 100644
 371index 0000000000000000000000000000000000000000..22d82cb45c61f96c813d8324f228ff3a64faf068
 372--- /dev/null
 373+++ b/dot_config/twmn/twmn.conf
 374@@ -0,0 +1,31 @@
 375+[gui]
 376+absolute_position=
 377+always_on_top=true
 378+background_color=#3c3836
 379+bounce=false
 380+bounce_duration=500
 381+font=Ubuntu
 382+font_size=26
 383+font_variant=regular
 384+foreground_color=#fbf1c7
 385+height=80
 386+in_animation=38
 387+in_animation_duration=150
 388+opacity=100
 389+out_animation=13
 390+out_animation_duration=150
 391+position=top_right
 392+screen=0
 393+
 394+[icons]
 395+info_icon=
 396+warning_icon=
 397+critical_icon=
 398+
 399+[main]
 400+activate_command=
 401+duration=5000
 402+enable_shortcuts=true
 403+host=127.0.0.1
 404+port=9797
 405+sound_command=
 406diff --git a/dot_config/zsh/antigen.zsh b/dot_config/zsh/antigen.zsh
 407new file mode 100644
 408index 0000000000000000000000000000000000000000..e81320767aefeaaf4ee4cb321a081bb1e04e2422
 409--- /dev/null
 410+++ b/dot_config/zsh/antigen.zsh
 411@@ -0,0 +1,2057 @@
 412+######################################################################
 413+# This file was autogenerated by `make`. Do not edit it directly!
 414+######################################################################
 415+# Antigen: A simple plugin manager for zsh
 416+ # Authors: Shrikant Sharat Kandula
 417+ #          and Contributors <https://github.com/zsh-users/antigen/contributors>
 418+ # Homepage: http://antigen.sharats.me
 419+ # License: MIT License <mitl.sharats.me>
 420+zmodload zsh/parameter
 421+autoload -U is-at-least
 422+
 423+# While boot.zsh is part of the ext/cache functionallity it may be disabled
 424+# with ANTIGEN_CACHE flag, and it's always compiled with antigen.zsh
 425+if [[ $ANTIGEN_CACHE != false ]]; then
 426+  ANTIGEN_CACHE="${ANTIGEN_CACHE:-${ADOTDIR:-$HOME/.antigen}/init.zsh}"
 427+  ANTIGEN_RSRC="${ANTIGEN_RSRC:-${ADOTDIR:-$HOME/.antigen}/.resources}"
 428+
 429+  # It may not be necessary to check ANTIGEN_AUTO_CONFIG.
 430+  if [[ $ANTIGEN_AUTO_CONFIG != false && -f $ANTIGEN_RSRC ]]; then
 431+    # Check the list of files for configuration changes (uses -nt comp)
 432+    ANTIGEN_CHECK_FILES=$(cat $ANTIGEN_RSRC 2> /dev/null)
 433+    ANTIGEN_CHECK_FILES=(${(@f)ANTIGEN_CHECK_FILES})
 434+
 435+    for config in $ANTIGEN_CHECK_FILES; do
 436+      if [[ "$config" -nt "$config.zwc" ]]; then
 437+        # Flag configuration file as newer
 438+        { zcompile "$config" } &!
 439+        # Kill cache file in order to force full loading (see a few lines below)
 440+        [[ -f "$ANTIGEN_CACHE" ]] && rm -f "$ANTIGEN_CACHE"
 441+      fi
 442+    done
 443+  fi
 444+
 445+  # If there is a cache file do load from it
 446+  if [[ -f $ANTIGEN_CACHE && ! $_ANTIGEN_CACHE_LOADED == true ]]; then
 447+    # Wrap antigen in order to defer cache source until `antigen-apply`
 448+    antigen() {
 449+      if [[ $1 == "apply" ]]; then
 450+        source "$ANTIGEN_CACHE"
 451+      # Handle `antigen-init` command properly
 452+      elif [[ $1 == "init" ]]; then
 453+        source "$2"
 454+      fi
 455+    }
 456+    # Do not continue loading antigen as cache bundle takes care of it.
 457+    return 0
 458+  fi
 459+fi
 460+[[ -z "$_ANTIGEN_INSTALL_DIR" ]] && _ANTIGEN_INSTALL_DIR=${0:A:h}
 461+
 462+# Each line in this string has the following entries separated by a space
 463+# character.
 464+# <repo-url>, <plugin-location>, <bundle-type>, <has-local-clone>
 465+[[ $_ANTIGEN_CACHE_LOADED != true ]] && typeset -aU _ANTIGEN_BUNDLE_RECORD
 466+
 467+# Do not load anything if git is not available.
 468+if (( ! $+commands[git] )); then
 469+    echo 'Antigen: Please install git to use Antigen.' >&2
 470+    return 1
 471+fi
 472+
 473+# Used to defer compinit/compdef
 474+typeset -a __deferred_compdefs
 475+compdef () { __deferred_compdefs=($__deferred_compdefs "$*") }
 476+
 477+# A syntax sugar to avoid the `-` when calling antigen commands. With this
 478+# function, you can write `antigen-bundle` as `antigen bundle` and so on.
 479+antigen () {
 480+  local cmd="$1"
 481+  if [[ -z "$cmd" ]]; then
 482+    echo 'Antigen: Please give a command to run.' >&2
 483+    return 1
 484+  fi
 485+  shift
 486+
 487+  if (( $+functions[antigen-$cmd] )); then
 488+      "antigen-$cmd" "$@"
 489+      return $?
 490+  else
 491+      echo "Antigen: Unknown command: $cmd" >&2
 492+      return 1
 493+  fi
 494+}
 495+# Returns the bundle's git revision
 496+#
 497+# Usage
 498+#   -antigen-bundle-rev bundle-name [is_local_clone]
 499+#
 500+# Returns
 501+#   Bundle rev-parse output (branch name or short ref name)
 502+-antigen-bundle-rev () {
 503+  local bundle=$1
 504+  local is_local_clone=$2
 505+
 506+  local bundle_path=$bundle
 507+  # Get bunde path inside $ADOTDIR if bundle was effectively cloned
 508+  if [[ "$is_local_clone" == "true" ]]; then
 509+    bundle_path=$(-antigen-get-clone-dir $bundle)
 510+  fi
 511diff --git a/dot_config/zsh/functions/genpass b/dot_config/zsh/functions/genpass
 512new file mode 100644
 513index 0000000000000000000000000000000000000000..8448ef1f5e81c9a8ac028679bdf6bc5e992c6231
 514--- /dev/null
 515+++ b/dot_config/zsh/functions/genpass
 516@@ -0,0 +1,3 @@
 517+# Function to generate random string from /dev/urandom
 518+
 519+< /dev/urandom tr -dc 'A-Za-z0-9%+,-./:=@^_' | head -c $1
 520diff --git a/dot_config/zsh/functions/gitignore b/dot_config/zsh/functions/gitignore
 521new file mode 100644
 522index 0000000000000000000000000000000000000000..08432cc907a1364bddcb24fc9d069be9c4501c16
 523--- /dev/null
 524+++ b/dot_config/zsh/functions/gitignore
 525@@ -0,0 +1,10 @@
 526+# Function to add files and folders to the .gitignore file
 527+
 528+if (( $# < 1 )); then
 529+	echo "Need at least one argument"
 530+fi
 531+
 532+for var in "$@"; do
 533+	echo "$var" >> .gitignore
 534+done
 535+
 536diff --git a/dot_config/zsh/functions/pbin b/dot_config/zsh/functions/pbin
 537new file mode 100644
 538index 0000000000000000000000000000000000000000..472ba54b80a2d5fabe6fcb83d2120e5c13a95d18
 539--- /dev/null
 540+++ b/dot_config/zsh/functions/pbin
 541@@ -0,0 +1,16 @@
 542+# vim: ft=zsh
 543+# Wrapper function for pbincli for easier output parsing
 544+
 545+LOGFILE="$HOME/.local/share/pbincli/pbincli.log"
 546+DATADIR="$HOME/.local/share/pbincli"
 547+
 548+mkdir -p $DATADIR
 549+echo "-------------------------------------------" >> $LOGFILE
 550+date --iso-8601=seconds >> $LOGFILE
 551+
 552+OUTPUT=$(pbincli send $@)
 553+echo $OUTPUT >> $LOGFILE
 554+echo "" >> $LOGFILE
 555+
 556+echo $OUTPUT | tail -n1 | cut -d $'\t' -f 3
 557+
 558diff --git a/dot_config/zsh/functions/sha256 b/dot_config/zsh/functions/sha256
 559new file mode 100644
 560index 0000000000000000000000000000000000000000..821abb4921bb2a6a64b7ae91bd8f67eb99aab8dd
 561--- /dev/null
 562+++ b/dot_config/zsh/functions/sha256
 563@@ -0,0 +1,4 @@
 564+# Function to Calculate the sha256sum of a string
 565+
 566+echo -n "$@" | sha256sum | base64 | head -n1 | tr -d '\n'
 567+
 568diff --git a/dot_config/zsh/load_functions.zsh b/dot_config/zsh/load_functions.zsh
 569new file mode 100644
 570index 0000000000000000000000000000000000000000..a63d8fde913133b1a11900293b3928e9838be4e8
 571--- /dev/null
 572+++ b/dot_config/zsh/load_functions.zsh
 573@@ -0,0 +1,2 @@
 574+autoload -Uz *
 575+
 576diff --git a/dot_config/zsh/private_histfile b/dot_config/zsh/private_histfile
 577new file mode 100644
 578index 0000000000000000000000000000000000000000..cbf4974803f793ad8911ab045ef81e53ab1a89a3
 579--- /dev/null
 580+++ b/dot_config/zsh/private_histfile
 581@@ -0,0 +1,10173 @@
 582+: 1545394432:0;ll /usr/bin/gpg2
 583+: 1545394452:0;rm .authinfo
 584+: 1545394456:0;gpg -d .authinfo.gpg
 585+: 1545394487:0;gpg --help G -- --for-your-eyes-only
 586+: 1545394491:0;gpg --help
 587+: 1545394494:0;man gpg
 588+: 1545394857:0;systemctl list-unit-files
 589+: 1545394861:0;systemctl list-unit-files G mbs
 590+: 1545394863:0;systemctl list-unit-files G sync
 591+: 1545394932:0;vim .isyncrc
 592+: 1545394964:0;cd .config/isync
 593+: 1545394969:0;mv isyncpass.gpg tildapass.gpg
 594+: 1545394979:0;mv .isyncrc .config/isync/config
 595+: 1545395015:0;ll /etc/ssl/certs/
 596+: 1545395020:0;cd /etc/ss
 597+: 1545395048:0;cat cert.pem
 598+: 1545395065:0;md email
 599+: 1545395066:0;cd email
 600+: 1545395102:0;md tilda
 601+: 1545395112:0;isync --help
 602+: 1545395115:0;isync -l
 603+: 1545395132:0;isync -l -c ~/.config/isync/config
 604+: 1545395143:0;isync -w
 605+: 1545395145:0;mbsync
 606+: 1545395151:0;mbsync -l -c ~/.config/isync/config
 607+: 1545395155:0;mbsync -h
 608+: 1545395200:0;mbsync -l -c ~/.config/isync/config tilda
 609+: 1545395213:0;cd email/tilda
 610+: 1545395214:0;cd INBOX
 611+: 1545395222:0;cat cur/1545395205.1610_1.neon,U=1:2,S
 612+: 1545395262:0;man isync
 613+: 1545395308:0;isync -c ~/.config/isync/config
 614+: 1545395332:0;man mbsync
 615+: 1545395545:0;cd tilda
 616+: 1545395548:0;rmr INBOX/
 617+: 1545395672:0;l Inbox
 618+: 1545395675:0;mbsync  -c ~/.config/isync/config tilda
 619+: 1545395702:0;ll Archives
 620+: 1545395736:0;vim ~/.config/systemd/user/mbsync.service
 621+: 1545395790:0;vim ~/.config/systemd/user/mbsync.timer
 622+: 1545395862:0;emacsclient
 623+: 1545395878:0;emacsclient -e '(mu4e-update-index)'
 624+: 1545395916:0;vim /usr/lib/systemd/user/emacs.service
 625+: 1545395925:0;sustatus emacs.service
 626+: 1545395929:0;sustatus start emacs.service
 627+: 1545395937:0;sustart emacs.service
 628+: 1545395944:0;suenable emacs.service
 629+: 1545395961:0;sustatus mbsync.service
 630+: 1545395963:0;sustatus mbsync.timer
 631+: 1545396082:0;cp df.desktop emacsclient.desktop
 632+: 1545396093:0;which emacsclient
 633+: 1545396104:0;cat /usr/share/applications/emacs.desktop
 634+: 1545396133:0;emacsclient --help
 635+: 1545396144:0;vim emacsclient.desktop
 636+: 1545396179:0;vim rofi3.druncache
 637+: 1545396189:0;/cl
 638+: 1545396319:0;ll multi-user.target.wants
 639+: 1545396342:0;mv *.service ~/.config/systemd/user
 640+: 1545396347:0;vim pscircle.service
 641+: 1545396420:0;cp mbsync.timer pscircle.timer
 642+: 1545396423:0;vim pscircle.timer
 643+: 1545396489:0;rm default.target.wants/i3control.service default.target.wants/pscircle.service
 644+: 1545396496:0;suenable pscircle.timer
 645+: 1545396514:0;suenable i3control.service
 646+: 1545396522:0;suctl daemon-reload
 647+: 1545396541:0;notify-send "This is a notification"
 648+: 1545396556:0;sustop pscircle.service
 649+: 1545396574:0;suenable mbsync.timer
 650+: 1545396648:0;mu index --maildir=~/email/tilda
 651+: 1545396702:0;yar html2text
 652+: 1545396722:0;rmr Maildir\
 653+cl
 654+: 1545396829:0;rg .spacevim
 655+: 1545396834:0;rg "\.spacevim"
 656+: 1545397127:0;cat .config/systemd/user/mbsync.service
 657+: 1545397136:0;mbsync --help
 658+: 1545397275:0;rmr email
 659+: 1545397278:0;rmr isync
 660+: 1545397281:0;rm .authinfo.gpg
 661+: 1545397288:0;cd .config/systemd
 662+: 1545397293:0;sudisable mbsync.timer
 663+: 1545397295:0;rm mbsync.*
 664+: 1545397297:0;ll default.target.wants
 665+: 1545397299:0;ll timers.target.wants
 666+: 1545397387:0;cd .space-vim/layers
 667+: 1545397389:0;cd +programming/programming
 668+: 1545397477:0;cd vim/templates
 669+: 1545397478:0;vim \=template=.py
 670+: 1545397519:0;sudisable emacs.service
 671+: 1545397521:0;sustop emacs.service
 672+: 1545397527:0;rm emacsclient.desktop
 673+: 1545397540:0;gcl
 674+: 1545397544:0;vim .spacemacs
 675+: 1545397653:0;gcmsg "Remove mu4e from emacs layers"
 676+: 1545397696:0;gcmsg "Add spacemacs indentation settings to spacevim"
 677+: 1545398020:0;yar qtcreator
 678+: 1545398494:0;gcmsg "Add qtcreator icon to i3-autoname"
 679+: 1545398515:0;vim li
 680+: 1545398642:0;gcmsg "Optionally install and link spacemacs files"
 681diff --git a/dot_gitconfig b/dot_gitconfig
 682new file mode 100644
 683index 0000000000000000000000000000000000000000..40b36ff494cd6a60da74041654ab66b92f251f27
 684--- /dev/null
 685+++ b/dot_gitconfig
 686@@ -0,0 +1,15 @@
 687+[user]
 688+	name = Pavle Portic
 689+	email = pavle.portic@tilda.center
 690+	signingkey = 6758ACE46AA2A849
 691+[alias]
 692+	lg = log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
 693+[diff]
 694+	tool = vimdiff
 695+[difftool]
 696+	prompt = false
 697+[commit]
 698+	gpgsign = true
 699+[pull]
 700+	rebase = true
 701+
 702diff --git a/dot_local/bin/executable_flac2mp3 b/dot_local/bin/executable_flac2mp3
 703new file mode 100644
 704index 0000000000000000000000000000000000000000..0c55d59be4bf09b6e29919624a394bc098e40365
 705--- /dev/null
 706+++ b/dot_local/bin/executable_flac2mp3
 707@@ -0,0 +1,4 @@
 708+#!/bin/zsh
 709+
 710+ffmpeg -n -i "$1" -acodec libmp3lame -ab 320k -map_metadata 0 -id3v2_version 3 "$2" &> /dev/null
 711+
 712diff --git a/dot_local/bin/executable_smart-resize b/dot_local/bin/executable_smart-resize
 713new file mode 100644
 714index 0000000000000000000000000000000000000000..9b20f003ff53abebe073e0f00550f859474fad22
 715--- /dev/null
 716+++ b/dot_local/bin/executable_smart-resize
 717@@ -0,0 +1,21 @@
 718+#!/usr/bin/env bash
 719+#
 720+# resize-test.sh
 721+# Copyright (C) 2018 pavle <pavle.portic@tilda.center>
 722+#
 723+# Distributed under terms of the MIT license.
 724+#
 725+
 726+echo "Resizing "$1
 727+
 728+RES=$(identify -format '%G\n' $1)
 729+
 730+XRES=$(echo $RES | cut -d "x" -f1)
 731+YRES=$(echo $RES | cut -d "x" -f2)
 732+
 733+if (( XRES > YRES )); then
 734+	convert $1 -resize x$2 $1
 735+else
 736+	convert $1 -resize $2x $1
 737+fi
 738+
 739diff --git a/dot_local/bin/executable_start-ssh-agent b/dot_local/bin/executable_start-ssh-agent
 740new file mode 100644
 741index 0000000000000000000000000000000000000000..9b9c56daf546d266182e8bf6c12b5a45a297afd7
 742--- /dev/null
 743+++ b/dot_local/bin/executable_start-ssh-agent
 744@@ -0,0 +1,22 @@
 745+#!/bin/zsh
 746+SSH_ENV="$HOME/.ssh/environment"
 747+
 748+function start_agent {
 749+     echo "Initialising new SSH agent..."
 750+     /usr/bin/ssh-agent | sed 's/^echo/#echo/' > "${SSH_ENV}"
 751+     echo succeeded
 752+     chmod 600 "${SSH_ENV}"
 753+     . "${SSH_ENV}" > /dev/null
 754+}
 755+
 756+# Source SSH settings, if applicable
 757+
 758+if [ -f "${SSH_ENV}" ]; then
 759+     . "${SSH_ENV}" > /dev/null
 760+     #ps ${SSH_AGENT_PID} doesn't work under cywgin
 761+     ps -ef | grep ${SSH_AGENT_PID} | grep ssh-agent$ > /dev/null || {
 762+         start_agent;
 763+     }
 764+else
 765+     start_agent;
 766+fi
 767diff --git a/dot_local/bin/executable_testcolor b/dot_local/bin/executable_testcolor
 768new file mode 100644
 769index 0000000000000000000000000000000000000000..a1381187997a0e758ebaf2f18088873f9fe831fa
 770--- /dev/null
 771+++ b/dot_local/bin/executable_testcolor
 772@@ -0,0 +1,43 @@
 773+#!/usr/bin/perl
 774+# Author: Todd Larason <jtl@molehill.org>
 775+# $XFree86: xc/programs/xterm/vttests/256colors2.pl,v 1.2 2002/03/26 01:46:43 dickey Exp $
 776+
 777+# use the resources for colors 0-15 - usually more-or-less a
 778+# reproduction of the standard ANSI colors, but possibly more
 779+# pleasing shades
 780+
 781+# colors 232-255 are a grayscale ramp, intentionally leaving out
 782+
 783+# display the colors
 784+
 785+# first the system ones:
 786+print "ANSI colors:\n";
 787+for ($color = 0; $color < 8; $color++) {
 788+    print "\x1b[48;5;${color}m       ";
 789+}
 790+print "\x1b[0m\n";
 791+for ($color = 8; $color < 16; $color++) {
 792+    print "\x1b[48;5;${color}m       ";
 793+}
 794+print "\x1b[0m\n\n";
 795+
 796+# now the color cube
 797+print "Color cube, 6x6x6:\n";
 798+for ($green = 0; $green < 6; $green++) {
 799+    for ($red = 0; $red < 6; $red++) {
 800+	for ($blue = 0; $blue < 6; $blue++) {
 801+	    $color = 16 + ($red * 36) + ($green * 6) + $blue;
 802+	    print "\x1b[48;5;${color}m  ";
 803+	}
 804+	print "\x1b[0m ";
 805+    }
 806+    print "\n";
 807+}
 808+
 809+# now the grayscale ramp
 810+print "Grayscale ramp:\n";
 811+for ($color = 232; $color < 256; $color++) {
 812+    print "\x1b[48;5;${color}m  ";
 813+}
 814+print "\x1b[0m\n";
 815+
 816diff --git a/dot_local/bin/executable_testtruecolor b/dot_local/bin/executable_testtruecolor
 817new file mode 100644
 818index 0000000000000000000000000000000000000000..19349cbe17ac65eebab5f07eeae3c8f712108550
 819--- /dev/null
 820+++ b/dot_local/bin/executable_testtruecolor
 821@@ -0,0 +1,17 @@
 822+#!/bin/bash
 823+
 824+# Print True color test strip
 825+awk -v term_cols="${width:-$(tput cols || echo 80)}" 'BEGIN{
 826+    s="  ";
 827+    for (colnum = 0; colnum<term_cols; colnum++) {
 828+        r = 255-(colnum*255/term_cols);
 829+        g = (colnum*510/term_cols);
 830+        b = (colnum*255/term_cols);
 831+        if (g>255) g = 510-g;
 832+        printf "\033[48;2;%d;%d;%dm", r,g,b;
 833+        printf "\033[38;2;%d;%d;%dm", 255-r,255-g,255-b;
 834+        printf "%s\033[0m", substr(s,colnum%2+1,1);
 835+    }
 836+    printf "\n";
 837+}'
 838+
 839diff --git a/dot_local/bin/symlink_myazo b/dot_local/bin/symlink_myazo
 840new file mode 100644
 841index 0000000000000000000000000000000000000000..808e5c46a5fe8e2f36af6d04fdd56ae4f748422e
 842--- /dev/null
 843+++ b/dot_local/bin/symlink_myazo
 844@@ -0,0 +1 @@
 845+/home/pavle/dev/webdev/myazo/client/myazo.py
 846diff --git a/dot_local/bin/symlink_myazo-image b/dot_local/bin/symlink_myazo-image
 847new file mode 100644
 848index 0000000000000000000000000000000000000000..3ab4b9ec2c632771cb7121a5bc90044092b7cfd4
 849--- /dev/null
 850+++ b/dot_local/bin/symlink_myazo-image
 851@@ -0,0 +1 @@
 852+/home/pavle/dev/webdev/myazo/client/myazo-image.py
 853diff --git a/dot_local/bin/symlink_rpn b/dot_local/bin/symlink_rpn
 854new file mode 100644
 855index 0000000000000000000000000000000000000000..29d4f7916aa0d8618974ce356ae823038fc1217f
 856--- /dev/null
 857+++ b/dot_local/bin/symlink_rpn
 858@@ -0,0 +1 @@
 859+/home/pavle/dev/python/rpncalc/rpncalc.py
 860diff --git a/dot_local/share/nvim/templates/=template=.c b/dot_local/share/nvim/templates/=template=.c
 861new file mode 100644
 862index 0000000000000000000000000000000000000000..636275a5294f6c905f3835be05a941d9caac32d9
 863--- /dev/null
 864+++ b/dot_local/share/nvim/templates/=template=.c
 865@@ -0,0 +1,8 @@
 866+/*
 867+ * %FFILE%
 868+ * Copyright (C) %YEAR% %USER% <%MAIL%>
 869+ *
 870+ * Distributed under terms of the %LICENSE% license.
 871+ */
 872+
 873+%HERE%
 874diff --git a/dot_local/share/nvim/templates/=template=.html b/dot_local/share/nvim/templates/=template=.html
 875new file mode 100644
 876index 0000000000000000000000000000000000000000..983317ba639b10a3e453c8ec3a76849b1610acb5
 877--- /dev/null
 878+++ b/dot_local/share/nvim/templates/=template=.html
 879@@ -0,0 +1,11 @@
 880+<!DOCTYPE html>
 881+<html>
 882+	<head>
 883+		<meta charset="utf-8" />
 884+		<title>%CLASS%</title>
 885+	</head>
 886+	<body>
 887+		%HERE%
 888+	</body>
 889+</html>
 890+
 891diff --git a/dot_local/share/nvim/templates/=template=.js b/dot_local/share/nvim/templates/=template=.js
 892new file mode 100644
 893index 0000000000000000000000000000000000000000..f1bc8bb90647e8918484909178ff887ee14fe5e7
 894--- /dev/null
 895+++ b/dot_local/share/nvim/templates/=template=.js
 896@@ -0,0 +1,9 @@
 897+/*
 898+ * %FFILE%
 899+ * Copyright (C) %YEAR% %USER% <%MAIL%>
 900+ *
 901+ * Distributed under terms of the %LICENSE% license.
 902+ */
 903+
 904+%HERE%
 905+
 906diff --git a/dot_local/share/nvim/templates/=template=.py b/dot_local/share/nvim/templates/=template=.py
 907new file mode 100644
 908index 0000000000000000000000000000000000000000..48f9aa3667ec3e7d8bcab30cc065459b65ef145b
 909--- /dev/null
 910+++ b/dot_local/share/nvim/templates/=template=.py
 911@@ -0,0 +1,11 @@
 912+#! /usr/bin/env python
 913+# -*- coding: utf-8 -*-
 914+# vim:fenc=utf-8
 915+#
 916+# Copyright © %YEAR% %USER% <%MAIL%>
 917+#
 918+# Distributed under terms of the %LICENSE% license.
 919+
 920+
 921+%HERE%
 922+
 923diff --git a/dot_spacevim b/dot_spacevim
 924new file mode 100644
 925index 0000000000000000000000000000000000000000..0d328ae19dbd00798f407d15bb3f967597f6315f
 926--- /dev/null
 927+++ b/dot_spacevim
 928@@ -0,0 +1,325 @@
 929+" vim: set ft=vim: syntax=vim
 930+" Use exclude option if you don't want the full Layer,
 931+" e.g., Layer 'better-defaults', { 'exclude': 'itchyny/vim-cursorword' }
 932+function! Layers()
 933+
 934+	Layer 'better-defaults', { 'exclude': [
 935+				\ 'kshenoy/vim-signature',
 936+				\ 'google/vim-searchindex',
 937+				\ 'mhinz/vim-startify',
 938+				\ ] }
 939+	Layer 'unite'
 940+	Layer 'airline'
 941+	Layer 'programming', { 'exclude': [
 942+				\ 'luochen1990/rainbow',
 943+				\ ] }
 944+	Layer 'editing'
 945+	Layer 'fzf'
 946+	Layer 'git'
 947+	Layer 'syntax-checking'
 948+	Layer 'deoplete', {'exclude': [
 949+				\ 'eagletmt/neco-ghc',
 950+				\ 'sebastianmarkow/deoplete-rust',
 951+				\ 'zchee/deoplete-go',
 952+				\ ]}
 953+	Layer 'c-c++'
 954+	Layer 'docker'
 955+	Layer 'html'
 956+	Layer 'javascript'
 957+	Layer 'markdown'
 958+	Layer 'python', {'exclude': [
 959+				\ 'python-mode/python-mode',
 960+				\ ]}
 961+
 962+endfunction
 963+
 964+function! UserInit()
 965+
 966+	Plug 'morhetz/gruvbox'
 967+	Plug 'chr4/nginx.vim'
 968+	Plug 'Firef0x/PKGBUILD.vim'
 969+	Plug 'alvan/vim-closetag'
 970+	Plug 'lepture/vim-jinja'
 971+	Plug 'aperezdc/vim-template'
 972+	Plug 'elzr/vim-json'
 973+	Plug 'andymass/vim-matchup'
 974+	Plug 'zchee/deoplete-jedi', { 'for': 'python' }
 975+	Plug 'davidhalter/jedi-vim', { 'for': 'python' }
 976+	Plug 'idbrii/vim-remarkjs'
 977+	Plug 'idbrii/vim-gogo'
 978+	Plug 'edkolev/tmuxline.vim'
 979+	Plug 'tpope/vim-repeat'
 980+	Plug 'diepm/vim-rest-console'
 981+	Plug 'RRethy/vim-hexokinase'
 982+	Plug 'mbbill/undotree'
 983+
 984+endfunction
 985+
 986+" Override the existing configurations and add extras here.
 987+function! UserConfig()
 988+
 989+	set termguicolors
 990+	color gruvbox
 991+	set encoding=utf8
 992+	set shell=/bin/bash
 993+	set autochdir
 994+	set laststatus=2
 995+	"set timeoutlen=300
 996+	"set backspace=2
 997+	set showcmd
 998+	set wrap
 999+	set linebreak
1000+	set number
1001+	set relativenumber
1002+	set cursorline
1003+	set cursorcolumn
1004+	set tabstop=4
1005+	set shiftwidth=4
1006+	set softtabstop=4
1007+	set textwidth=0
1008+	set noexpandtab
1009+	set autoindent
1010+	set background=dark
1011+	set list
1012+	set listchars=tab:│\ ,trail:~,extends:>,precedes:<
1013+	set splitright
1014+	set splitbelow
1015+	set foldmethod=indent
1016+
1017+	" Persistent undo
1018+	set undofile
1019+	set undodir=~/.local/share/nvim/undodir
1020+
1021+	" Set default LICENSE
1022+	let g:license = 'BSD-3-Clause'
1023+	let g:email = 'pavle.portic@tilda.center'
1024+
1025+	" Set python path
1026+	let g:python_host_prog = '/usr/bin/python'
1027+
1028diff --git a/dot_xinitrc b/dot_xinitrc
1029new file mode 100644
1030index 0000000000000000000000000000000000000000..3688c9740e2f3032fba41706662c33ddf10d8b74
1031--- /dev/null
1032+++ b/dot_xinitrc
1033@@ -0,0 +1,26 @@
1034+#!/bin/bash
1035+
1036+userresources=$HOME/.Xresources
1037+usermodmap=$HOME/.Xmodmap
1038+
1039+if [ -f "$userresources" ]; then
1040+    xrdb -merge "$userresources"
1041+fi
1042+
1043+if [ -f "$usermodmap" ]; then
1044+    xmodmap "$usermodmap"
1045+fi
1046+
1047+source /etc/X11/xinit/xinitrc.d/50-systemd-user.sh
1048+
1049+xset fp rehash
1050+xset dpms 3600 3600 3600
1051+xset s 3600 3600
1052+xhost +localhost
1053+xhost +natrium
1054+xcape -e 'Control_L=Escape'
1055+xbindkeys
1056+feh --bg-fill /home/pavle/pictures/wallpapers/arboreal_serenity.jpg
1057+
1058+exec i3
1059+
1060diff --git a/dot_zshrc b/dot_zshrc
1061new file mode 100644
1062index 0000000000000000000000000000000000000000..2e95f22f77f1e9d63c5ab1b16179a77c96dc74c5
1063--- /dev/null
1064+++ b/dot_zshrc
1065@@ -0,0 +1,148 @@
1066+# vim: ft=zsh
1067+# History settings
1068+HISTFILE=~/.config/zsh/histfile
1069+HISTSIZE=10000
1070+SAVEHIST=10000
1071+setopt HIST_IGNORE_DUPS
1072+
1073+# Misc options
1074+setopt autocd extendedglob notify
1075+# setopt SOURCE_TRACE
1076+unsetopt beep nomatch
1077+bindkey -v
1078+
1079+source ~/.config/zsh/antigen.zsh
1080+
1081+# Load the oh-my-zsh's library.
1082+antigen use oh-my-zsh
1083+
1084+# Load plugins from oh-my-zsh
1085+antigen bundle archlinux
1086+antigen bundle aws
1087+antigen bundle colored-man-pages
1088+antigen bundle colorize
1089+antigen bundle common-aliases
1090+antigen bundle copybuffer
1091+antigen bundle docker
1092+antigen bundle docker-compose
1093+antigen bundle extract
1094+antigen bundle git
1095+
1096+# Additional antigen plugins
1097+antigen bundle zsh-users/zsh-autosuggestions
1098+antigen bundle zsh-users/zsh-syntax-highlighting
1099+antigen bundle MichaelAquilina/zsh-you-should-use
1100+antigen bundle zsh-users/zsh-completions
1101+
1102+# Load theme
1103+antigen theme https://gitlab.theedgeofrage.com/TheEdgeOfRage/boban-zsh.git
1104+antigen apply
1105+
1106+# Completion options
1107+zstyle :compinstall filename '$HOME/.zshrc'
1108+zstyle ':completion:*' menu select
1109+fpath=(~/.config/zsh/completions ~/.config/zsh/functions $fpath)
1110+autoload -Uz compinit && compinit
1111+autoload -Uz ~/.config/zsh/functions/*
1112+
1113+# Aliases
1114+alias '...'='../..'
1115+alias '....'='../../..'
1116+alias '.....'='../../../..'
1117+alias '......'='../../../../..'
1118+alias '.......'='../../../../../..'
1119+alias '........'='../../../../../../..'
1120+alias ls='ls --group-directories-first --color=always --time-style=long-iso'
1121+alias cl=clear
1122+alias cdl='cd ~/ && cl'
1123+alias rmr='rm -rIf'
1124+alias mkdir='mkdir -p'
1125+alias df='df -h'
1126+alias ran=ranger
1127+alias -g WC='| wc -l'
1128+alias rcp='rsync -rPv'
1129+alias cal='cal -m'
1130+alias grep='grep -Hn --color=always'
1131+alias -g NO='>/dev/null 2>&1'
1132+alias -g clip='xclip -selection c'
1133+alias db='sudo duplicity-backup -c /etc/duplicity/duplicity-backup.conf'
1134+alias wakerouter='wol 18:a9:05:39:c4:4d'
1135+alias myip='curl icanhazip.com'
1136+alias -g vim='nvim'
1137+alias manage='python manage.py'
1138+alias zpool='sudo zpool'
1139+alias 'zpool import'='zpool import -d /dev/disk/by-id'
1140+alias zfs='sudo zfs'
1141+alias fdisk='sudo fdisk'
1142+alias cfn='cfn-lint'
1143+alias diff='diff -y --suppress-common-lines'
1144+alias -g HASH='| sha256sum | base64 H -n1 | clip'
1145+alias cz=chezmoi
1146+
1147+# Systemctl aliases
1148+alias sctl='sudo systemctl'
1149+alias sstatus='sudo systemctl status'
1150+alias sstart='sudo systemctl start'
1151+alias srestart='sudo systemctl restart'
1152+alias sreload='sudo systemctl reload'
1153+alias sstop='sudo systemctl stop'
1154+alias senable='sudo systemctl enable'
1155+alias sdisable='sudo systemctl disable'
1156+alias hib='sudo systemctl suspend'
1157+
1158+alias suctl='systemctl --user'
1159+alias sustatus='systemctl --user status'
1160+alias sustart='systemctl --user start'
1161+alias surestart='systemctl --user restart'
1162+alias sureload='systemctl --user reload'
1163+alias sustop='systemctl --user stop'
1164+alias suenable='systemctl --user enable'