Compare commits

...

73 Commits

Author SHA1 Message Date
Sebastian Schulze 1735f9cbec
[sway] Add workspace_auto_back_and_forth toogle + smart gaps 2020-01-06 16:07:21 +01:00
Sebastian Schulze 7d64c504a5
[sway] Add shortcut to focus child container (going back from mod+a) 2020-01-06 16:06:57 +01:00
Sebastian Schulze 84f0f64886
[sway] It's winter. Time for some snowy mountains 2020-01-06 16:06:35 +01:00
Sebastian Schulze d323fcd97f
[bin] Remove version-argument from uni. It's at 1.0.0 and knows shit 2020-01-06 16:06:09 +01:00
Sebastian Schulze 179243dc71
[bin] Extract simple .gz archives via `gunzip`
Acked-by: Sebastian Schulze <github.com@bascht.com>
2020-01-06 16:04:39 +01:00
Sebastian Schulze 75be5d032f
[bin] Bump helm to 3.0.2 und use new version --short argument 2020-01-06 16:03:09 +01:00
Sebastian Schulze 788a29fef0
[alacritty] Remove obsolete faux_multiplier option 2020-01-03 22:03:22 +01:00
Sebastian Schulze 6c1dc805e4
[bin] Bump helm to 3.0.1 and add uni 2020-01-03 22:02:47 +01:00
Sebastian Schulze a0ce3c5e30
[zsh] Fixup the Alt-v vm starter command 2020-01-03 22:02:21 +01:00
Sebastian Schulze 095b2a56c2
[emacs] Use enh-ruby-mode 2019-12-30 16:44:10 +01:00
Sebastian Schulze d7d6d54ac0
[git] Remove remnants of old vundle path 2019-12-04 20:47:28 +01:00
Sebastian Schulze 618718d664
[git] Fixup vundle submodule path 2019-12-04 20:42:02 +01:00
Sebastian Schulze 2c7722ca4f
[git] Switch all submodules to https:// URIs 2019-12-04 20:33:56 +01:00
Sebastian Schulze 81cd5ea099
[systemd] Move stuff from .zprofile into my environment.d 2019-12-04 20:31:34 +01:00
Sebastian Schulze 583a477deb
[bin] Bump Hugo to 0.59.1 2019-12-04 20:30:45 +01:00
Sebastian Schulze 84fb1ac236
[bin] Display last worklogger times and current time in the title 2019-12-04 20:30:24 +01:00
Sebastian Schulze 5d9b50e60b
[zsh] Remove a few more unnecessary zprofile settings 2019-12-04 20:30:05 +01:00
Sebastian Schulze f5824ae53c
[emacs] Tweak super-agenda and add neat little icons 2019-12-04 20:29:25 +01:00
Sebastian Schulze 62081a7710
[sway] Fixup a few matchers and the lid closes / open event 2019-12-04 20:28:54 +01:00
Sebastian Schulze 937498bedb
[vim] Add sir's vimrc for the occasional vimming on remote boxes 2019-12-04 20:28:23 +01:00
Sebastian Schulze 99d6cbd076
[emacs] Add new semi-formal greeting to message-mode 2019-10-25 22:33:10 +02:00
Sebastian Schulze 06e0c9d618
[org] Add personal agenda view shortcut & save on org statechange 2019-10-25 22:32:18 +02:00
Sebastian Schulze 9a2691f413
[emacs] Use multidict de_DE & en_GB and start org-capture in i-mode 2019-10-25 22:30:57 +02:00
Sebastian Schulze 7d632f7584
[emacs] Remap oa and ob to more sensible leaders 2019-10-25 22:30:15 +02:00
Sebastian Schulze 619b26b7d0
[sway] Remove clipman from autostart - it's broken 2019-10-25 22:27:22 +02:00
Sebastian Schulze f776ced6cf
[emacs] Rename emacs service to override the system service
I used to have both "emacsd.service" and "emacs.service"
2019-10-25 22:23:38 +02:00
Sebastian Schulze 11dec5c8e6
[zsh] Use a bright fzf theme 2019-10-25 22:23:06 +02:00
Sebastian Schulze cb61fb2a28
[sway] Clean up config and refine a few floating details 2019-10-25 22:22:31 +02:00
Sebastian Schulze 12faf1d4b0
[bat] Use a bright bat theme 2019-10-25 22:20:51 +02:00
Sebastian Schulze e99d9480dd
[alacritty] Rework alacritty config & use new bright one theme 2019-10-25 22:20:20 +02:00
Sebastian Schulze 9a2573fd35
[zsh] Alias ssh to a compatible 256color terminal 2019-10-25 17:16:39 +02:00
Sebastian Schulze 3f2063d8db
[zshr] Fix weather display & add termbin paste-bucket 2019-10-25 17:16:11 +02:00
Sebastian Schulze a5aaf0a7c8
[tmux] Use :Tc for xterm-24bit 2019-10-25 17:01:58 +02:00
Sebastian Schulze e63bd1edc9
[tmux] Try to work around alacritty & 24bit terminfo 2019-10-25 16:44:43 +02:00
Sebastian Schulze f2f7751cb0
[tmux] Set tmux 24bit overrides 2019-10-25 15:29:58 +02:00
Sebastian Schulze 92542b5675
[term] Add xterm 24bit terminfo 2019-10-25 14:45:39 +02:00
Sebastian Schulze 87d34832ab
[term] Nudged by @code-later back to bight colours 2019-10-25 14:40:33 +02:00
Sebastian Schulze fcb9c33587
[bin] Upgrade helm to 3.0.0 (beta5)
Let's see this Cluster burn.
2019-10-24 15:01:08 +02:00
Sebastian Schulze 8c65669340
[sway] Increase the border-width to 2px 2019-10-18 16:48:58 +02:00
Sebastian Schulze 840c1a1512
[sway] Clean up the status bar section 2019-10-18 16:48:46 +02:00
Sebastian Schulze 33800bcf7e
[sway] Pin Wire and Signal to desk 3 2019-10-18 16:46:40 +02:00
Sebastian Schulze a0ebef017e
[sway] Add new run mode to launch all shortcuts 2019-10-18 16:46:27 +02:00
Sebastian Schulze 4c0c31d72e
[sway] Cleanup shortcuts and launchers 2019-10-18 16:46:06 +02:00
Sebastian Schulze b32865e311
[sway] Listen to lid-events 2019-10-18 16:45:27 +02:00
Sebastian Schulze f1b8212ec6
[sway] Clean up the outputs and aliases 2019-10-18 16:45:05 +02:00
Sebastian Schulze 1fafcf530b
[i3blocks] Clean up the config and labels 2019-10-18 16:44:29 +02:00
Sebastian Schulze a4c1e62357
[emacs] Add new helper shortcut to directly select a Org file 2019-10-18 16:44:02 +02:00
Sebastian Schulze 8187dcd10f
[zsh] Fix path to new sway-run helper 2019-10-18 16:43:44 +02:00
Sebastian Schulze 20755c5a24
[zsh] Fix tmux Auth socket reparation "helper" 2019-10-18 16:43:09 +02:00
Sebastian Schulze e61cd83fa3
[zsh] Fix $KUBECONFIG file detection 2019-10-18 16:42:58 +02:00
Sebastian Schulze 987367ad05
[zsh] Brighten up the fzf prompt a bit 2019-10-18 16:42:45 +02:00
Sebastian Schulze 13faf0ad65
[tmux] Bind swap-window to a shortcut that works via prefix 2019-10-18 12:17:59 +02:00
Sebastian Schulze 80a03719dd
[tmux] Add shortcut to toggle between last & first window 2019-10-17 12:49:00 +02:00
Sebastian Schulze c7640e4317
[zsh] Alias docker run --rm -ti – I am getting too old for this 2019-10-15 22:13:35 +02:00
Sebastian Schulze 87a517b471
[zsh] Optionally load kubectl completion 2019-10-15 20:28:49 +02:00
Sebastian Schulze 91f922370d
[bat] Add bat config 2019-10-15 20:12:43 +02:00
Sebastian Schulze f1233020fa
Bump Rancher CLI to 2.3.0 – I picked up the wrong one 2019-10-15 10:54:25 +02:00
Sebastian Schulze f2e680de25
Install Rancher CLI v0.6.4 2019-10-15 10:52:13 +02:00
Sebastian Schulze 88f0a2adae
[emacs] Directly jump to the inbox on "om" 2019-10-14 17:31:10 +02:00
Sebastian Schulze 5bc4f0c181
[emacs] Store one recentf file per VM and session name 2019-10-14 17:30:53 +02:00
Sebastian Schulze 5eb5a62b0b
[zsh] Add weather-shenanigans, and directly start Sway 2019-10-14 17:30:02 +02:00
Sebastian Schulze 375e763e1e
[emacs] Store running timers across emacs sessions 2019-10-14 17:29:40 +02:00
Sebastian Schulze 27905eab84
[bin] Reorder start sequence and start wl-paste for clipman 2019-10-14 17:29:36 +02:00
Sebastian Schulze dedee63ed3
[bin] The big YAML-reckoning + more debug output when needed 2019-10-14 17:26:57 +02:00
Sebastian Schulze b3254ce91d
[tmux] Set escape-time globally 2019-10-02 17:14:29 +02:00
Sebastian Schulze 3cceb24c9c
[bin] Bump oh-my-zsh and spacemacs versions 2019-10-02 16:58:22 +02:00
Sebastian Schulze 22ec4c1190
[emacs] Fix location of recentf files 2019-10-02 16:55:35 +02:00
Sebastian Schulze b3eae34fa8
[tmux] Reduce escape time to 0 to not catch evils <esc> 2019-10-02 16:10:08 +02:00
Sebastian Schulze e2d1e75de6
[fzf] Use $HOST instead of $HOSTNAME for local fzf files 2019-10-02 13:48:00 +02:00
Sebastian Schulze 1f95cd68d7
[fzf] Add fzf as a submodule to get full completion 2019-07-31 13:18:47 +02:00
Sebastian Schulze b6e901d16e
[emacs] Store recentf per machine to not interfere with VMs 2019-07-31 13:15:19 +02:00
Sebastian Schulze a667e614eb
[zsh] Add correct base path to fzf installation 2019-07-31 13:04:29 +02:00
Sebastian Schulze 31feace4e6
[maid] Add maid to the systemd timers 2019-07-31 12:42:50 +02:00
28 changed files with 640 additions and 549 deletions

11
.gitmodules vendored
View File

@ -12,4 +12,13 @@
url = https://github.com/romkatv/powerlevel10k.git
[submodule "home/.zsh-custom/plugins/fzf-marks"]
path = home/.zsh-custom/plugins/fzf-marks
url = git@github.com:urbainvaes/fzf-marks.git
url = https://github.com/urbainvaes/fzf-marks.git
[submodule "home/.fzf"]
path = home/.fzf
url = https://github.com/junegunn/fzf.git
[submodule "home/.config/base16-shell"]
path = home/.config/base16-shell
url = https://github.com/chriskempson/base16-shell.git
[submodule "home/.vim/bundle/Vundle.vim"]
path = home/.vim/bundle/Vundle.vim
url = https://github.com/VundleVim/Vundle.vim.git

View File

@ -1,364 +1,64 @@
# Configuration for Alacritty, the GPU enhanced terminal emulator.
# Any items in the `env` entry below will be added as
# environment variables. Some entries may override variables
# set by alacritty itself.
env:
# TERM variable
#
# This value is used to set the `$TERM` environment variable for
# each instance of Alacritty. If it is not present, alacritty will
# check the local terminfo database and use 'alacritty' if it is
# available, otherwise 'xterm-256color' is used.
TERM: xterm-256color
TERM: xterm-24bit
window:
# Window dimensions (changes require restart)
#
# Specified in number of columns/lines, not pixels.
# If both are `0`, this setting is ignored.
dimensions:
columns: 80
lines: 24
# Window padding (changes require restart)
#
# Blank space added around the window in pixels. This padding is scaled
# by DPI and the specified value is always added at both opposing sides.
padding:
x: 10
y: 10
# Window decorations
#
# Values for `decorations`:
# - full: Borders and title bar
# - none: Neither borders nor title bar
decorations: full
x: 12
y: 12
decorations: none
scrolling:
# Maximum number of lines in the scrollback buffer.
# Specifying '0' will disable scrolling.
history: 10000
# Number of lines the viewport will move for every line scrolled when
# scrollback is enabled (history > 0).
multiplier: 3
# Faux Scrolling
#
# The `faux_multiplier` setting controls the number of lines the terminal
# should scroll when the alternate screen buffer is active. This is used
# to allow mouse scrolling for applications like `man`.
#
# Specifying `0` will disable faux scrolling.
faux_multiplier: 3
# Scroll to the bottom when new text is written to the terminal.
auto_scroll: false
# Spaces per Tab (changes require restart)
#
# This setting defines the width of a tab in cells.
#
# Some applications, like Emacs, rely on knowing about the width of a tab.
# To prevent unexpected behavior in these applications, it's also required to
# change the `it` value in terminfo when altering this setting.
tabspaces: 8
# Font configuration (changes require restart)
#
# Important font attributes like antialiasing, subpixel aa, and hinting can be
# controlled through fontconfig. Specifically, the following attributes should
# have an effect:
# - hintstyle
# - antialias
# - lcdfilter
# - rgba
#
# For instance, if you wish to disable subpixel antialiasing, you might set the
# rgba property to `none`. If you wish to completely disable antialiasing, you
# can set antialias to `false`.
#
# Please see these resources for more information on how to use fontconfig:
# - https://wiki.archlinux.org/index.php/font_configuration#Fontconfig_configuration
# - file:///usr/share/doc/fontconfig/fontconfig-user.html
draw_bold_text_with_bright_colors: true
font:
# Normal (roman) font face
normal:
family: FuraMono Nerd Font
# The `style` can be specified to pick a specific face.
style: Regular
# Bold font face
family: FuraMono NerdFont
bold:
family: FuraMono Nerd Font
# The `style` can be specified to pick a specific face.
style: Bold
# Italic font face
family: monospace
italic:
family: FuraMono Nerd Font
# The `style` can be specified to pick a specific face.
style: Italic
family: monospace
size: 12.0
# Point size
size: 12
# Offset is the extra space around each character. `offset.y` can be thought of
# as modifying the line spacing, and `offset.x` as modifying the letter spacing.
offset:
x: 0
y: 0
# Glyph offset determines the locations of the glyphs within their cells with
# the default being at the bottom. Increasing `x` moves the glyph to the right,
# increasing `y` moves the glyph upwards.
glyph_offset:
x: 0
y: 0
# Scale the font size based on the monitor's DPI. This will lead to bigger text on HiDPI
# screens and make reading text a little easier.
# On X11 it is possible to change the DPI for each instance of alacritty by using
# `WINIT_HIDPI_FACTOR=1.0 alacritty` to scale the font.
# scale_with_dpi: true
# Display the time it takes to redraw each frame.
# If `true`, bold text is drawn using the bright color variants.
draw_bold_text_with_bright_colors: true
# Base16 iA Light 256 - alacritty color config
# iA Inc. (modified by aramisgithub)
colors:
# Default colors
primary:
background: '0xf6f6f6'
foreground: '0x181818'
# Colors the cursor will use if `custom_cursor_colors` is true
cursor:
text: '0xf6f6f6'
cursor: '0x181818'
# Normal colors
normal:
black: '0xf6f6f6'
red: '0x9c5a02'
green: '0x38781c'
yellow: '0xc48218'
blue: '0x48bac2'
magenta: '0xa94598'
cyan: '0x2d6bb1'
white: '0x181818'
# Bright colors
bright:
black: '0x898989'
red: '0x9c5a02'
green: '0x38781c'
yellow: '0xc48218'
blue: '0x48bac2'
magenta: '0xa94598'
cyan: '0x2d6bb1'
white: '0xf8f8f8'
indexed_colors:
- { index: 16, color: '0xc43e18' }
- { index: 17, color: '0x8b6c37' }
- { index: 18, color: '0xdedede' }
- { index: 19, color: '0xbde5f2' }
- { index: 20, color: '0x767676' }
- { index: 21, color: '0xe8e8e8' }
# Visual Bell
#
# Any time the BEL code is received, Alacritty "rings" the visual bell. Once
# rung, the terminal background will be set to white and transition back to the
# default background color. You can control the rate of this transition by
# setting the `duration` property (represented in milliseconds). You can also
# configure the transition function by setting the `animation` property.
#
# Values for `animation`:
# - Ease
# - EaseOut
# - EaseOutSine
# - EaseOutQuad
# - EaseOutCubic
# - EaseOutQuart
# - EaseOutQuint
# - EaseOutExpo
# - EaseOutCirc
# - Linear
#
# Specifying a `duration` of `0` will disable the visual bell.
visual_bell:
animation: EaseOutExpo
duration: 100
duration: 0 # disabled
# Background opacity
#
# Window opacity as a floating point number from `0.0` to `1.0`.
# The value `0.0` is completely transparent and `1.0` is opaque.
background_opacity: 1.0
# Mouse bindings
#
# Available fields:
# - mouse
# - action
# - mods (optional)
#
# Values for `mouse`:
# - Middle
# - Left
# - Right
# - Numeric identifier such as `5`
#
# All available `mods` and `action` values are documented in the key binding
# section.
mouse_bindings:
- { mouse: Middle, action: PasteSelection }
mouse:
# Click settings
#
# The `double_click` and `triple_click` settings control the time
# alacritty should wait for accepting multiple clicks as one double
# or triple click.
double_click: { threshold: 300 }
triple_click: { threshold: 300 }
# If this is `true`, the cursor is temporarily hidden when typing.
hide_when_typing: false
url:
# URL launcher
#
# This program is executed when clicking on a text which is recognized as a URL.
# The URL is always added to the command as the last parameter.
launcher: xdg-open
# URL modifiers
#
# These are the modifiers that need to be held down for opening URLs when clicking
# on them. The available modifiers are documented in the key binding section.
modifiers: Control|Shift
launcher: firefox
modifiers: Control
selection:
semantic_escape_chars: ",│`|:\"' ()[]{}<>"
# When set to `true`, selected text will be copied to both the primary and
# the selection clipboard. Otherwise, it will only be copied to the selection
# clipboard.
save_to_clipboard: false
dynamic_title: true
cursor:
# Cursor style
#
# Values for 'style':
# - ▇ Block
# - _ Underline
# - | Beam
style: Block
# If this is `true`, the cursor will be rendered as a hollow box when the
# window is not focused.
unfocused_hollow: true
# Live config reload (changes require restart)
live_config_reload: true
# Shell
#
# You can set `shell.program` to the path of your favorite shell, e.g. `/bin/fish`.
# Entries in `shell.args` are passed unmodified as arguments to the shell.
#shell:
# program: /bin/bash
# args:
# - --login
# Key bindings
#
# Key bindings are specified as a list of objects. Each binding will specify
# a key and modifiers required to trigger it, terminal modes where the binding
# is applicable, and what should be done when the key binding fires. It can
# either send a byte sequnce to the running application (`chars`), execute
# a predefined action (`action`) or fork and execute a specified command plus
# arguments (`command`).
#
# Example:
# `- { key: V, mods: Command, action: Paste }`
#
# Available fields:
# - key
# - mods (optional)
# - chars | action | command (exactly one required)
# - mode (optional)
#
# Values for `key`:
# - `A` -> `Z`
# - `F1` -> `F12`
# - `Key1` -> `Key0`
#
# A full list with available key codes can be found here:
# https://docs.rs/glutin/*/glutin/enum.VirtualKeyCode.html#variants
#
# Instead of using the name of the keys, the `key` field also supports using
# the scancode of the desired key. Scancodes have to be specified as a
# decimal number.
# This command will allow you to display the hex scancodes for certain keys:
# `showkey --scancodes`
#
# Values for `mods`:
# - Command
# - Control
# - Shift
# - Alt
#
# Multiple `mods` can be combined using `|` like this: `mods: Control|Shift`.
# Whitespace and capitalization is relevant and must match the example.
#
# Values for `chars`:
# The `chars` field writes the specified string to the terminal. This makes
# it possible to pass escape sequences.
# To find escape codes for bindings like `PageUp` ("\x1b[5~"), you can run
# the command `showkey -a` outside of tmux.
# Note that applications use terminfo to map escape sequences back to
# keys. It is therefore required to update the terminfo when
# changing an escape sequence.
#
# Values for `action`:
# - Paste
# - PasteSelection
# - Copy
# - IncreaseFontSize
# - DecreaseFontSize
# - ResetFontSize
# - ScrollPageUp
# - ScrollPageDown
# - ScrollToTop
# - ScrollToBottom
# - ClearHistory
# - Hide
# - Quit
#
# Values for `command`:
# The `command` field must be a map containing a `program` string and
# an `args` array of command line parameter strings.
#
# Example:
# `command: { program: "alacritty", args: ["-e", "vttest"] }`
#
# Values for `mode`:
# - ~AppCursor
# - AppCursor
# - ~AppKeypad
# - AppKeypad
key_bindings:
- { key: V, mods: Control|Shift, action: Paste }
- { key: C, mods: Control|Shift, action: Copy }
@ -368,7 +68,7 @@ key_bindings:
- { key: W, mods: Command, action: Quit }
- { key: Insert, mods: Shift, action: PasteSelection }
- { key: Key0, mods: Control, action: ResetFontSize }
- { key: Add, mods: Control, action: IncreaseFontSize }
- { key: Equals, mods: Control, action: IncreaseFontSize }
- { key: Subtract, mods: Control, action: DecreaseFontSize }
- { key: Home, chars: "\x1bOH", mode: AppCursor }
- { key: Home, chars: "\x1b[H", mode: ~AppCursor }
@ -465,3 +165,46 @@ key_bindings:
- { key: F10, mods: Super, chars: "\x1b[21;3~" }
- { key: F11, mods: Super, chars: "\x1b[23;3~" }
- { key: F12, mods: Super, chars: "\x1b[24;3~" }
# Base16 One Light 256 - alacritty color config
# Daniel Pfeifer (http://github.com/purpleKarrot)
colors:
# Default colors
primary:
background: '0xfafafa'
foreground: '0x383a42'
# Colors the cursor will use if `custom_cursor_colors` is true
cursor:
text: '0xfafafa'
cursor: '0x383a42'
# Normal colors
normal:
black: '0xfafafa'
red: '0xca1243'
green: '0x50a14f'
yellow: '0xc18401'
blue: '0x4078f2'
magenta: '0xa626a4'
cyan: '0x0184bc'
white: '0x383a42'
# Bright colors
bright:
black: '0xa0a1a7'
red: '0xca1243'
green: '0x50a14f'
yellow: '0xc18401'
blue: '0x4078f2'
magenta: '0xa626a4'
cyan: '0x0184bc'
white: '0x090a0b'
indexed_colors:
- { index: 16, color: '0xd75f00' }
- { index: 17, color: '0x986801' }
- { index: 18, color: '0xf0f0f1' }
- { index: 19, color: '0xe5e5e6' }
- { index: 20, color: '0x696c77' }
- { index: 21, color: '0x202227' }

@ -0,0 +1 @@
Subproject commit ce8e1e540367ea83cc3e01eec7b2a11783b3f9e1

1
home/.config/bat/config Normal file
View File

@ -0,0 +1 @@
--theme="base16"

View File

@ -0,0 +1,6 @@
PATH=$HOME/.local/bin:$HOME/bin:$HOME/bin/go/bin:$HOME/.cargo/bin:$PATH
DICPATH="${HOME}/.local/share/hunspell"
XDG_CURRENT_DESKTOP=GNOME
PASSWORD_STORE_DIR="${HOME}/Documents/Passwords/.password-store"
MOZ_ENABLE_WAYLAND=1
MOZ_USE_XINPUT2=1

View File

@ -1,11 +1,11 @@
command=/usr/local/libexec/i3blocks/$BLOCK_NAME
command=/usr/libexec/i3blocks/$BLOCK_NAME
separator=true
separator_block_width=12
separator_block_width=20
markup=pango
border_top=0
border_left=0
border_right=0
border_bottom=0
# border_top=0
# border_left=30
# border_right=25
# border_bottom=0
[mail]
command=i3-mail
@ -13,10 +13,14 @@ interval=10
label=
border=#f5f5f5
[memory-label]
separator_block_width=0
separator=false
full_text=
[memory]
label=
interval=30
border=#d79921
# border=#d79921
[memory]
label=
@ -33,11 +37,10 @@ interval=10
label=
[openvpn]
command= /usr/local/share/doc/i3blocks/contrib/openvpn
interval=10
[mediaplayer]
command= /usr/local/share/doc/i3blocks/contrib/mediaplayer
command=mpc status|head -1
interval=5
signal=10
label=

View File

@ -37,16 +37,17 @@ set $term alacritty
# Your preferred application launcher
# Note: it's recommended that you pass the final command to sway
set $menu dmenu_path | i3-rofi | xargs swaymsg exec
set $display_laptop eDP-1
set $display_dell "Dell Inc. DELL U2415 7MT018BM1PGU"
set $display_lg "Goldstar Company Ltd 34UM95 0x00000101"
set $display_coworking "Dell Inc. DELL U2713H C6F0K34O095L"
### Output configuration
#
# Default wallpaper (more resolutions are available in /usr/share/backgrounds/sway/)
output * bg ~/Pictures/Wallpapers/mountains-blue.jpg fill
output "Dell Inc. DELL U2415 7MT018BM1PGU" transform 270 pos 0 0
#output eDP-1 scale 1 pos 1440 500
output "Goldstar Company Ltd 34UM95 0x00000101" mode 3440x1440@49.987000Hz pos 1200 290
# output "Dell Inc. DELL U2713H C6F0K34O095L" transform 270 pos 0 0
output * bg ~/Pictures/Wallpapers/scheidegg-mountains.jpg fill
output $display_dell transform 270 pos 0 0
output $display_lg mode 3440x1440@49.987000Hz pos 1200 290
output $display_coworking pos 2560 0
#
# Example configuration:
#
@ -103,6 +104,8 @@ input "2:10:TPPS/2_IBM_TrackPoint" {
input "1390:269:ELECOM_TrackBall_Mouse_HUGE_TrackBall" {
natural_scroll enabled
scroll_button 279
scroll_method on_button_down
}
input "65261:4871:ErgoDox_EZ_ErgoDox_EZ_Keyboard" {
@ -117,6 +120,9 @@ input "1:1:AT_Translated_Set_2_keyboard" {
input * xkb_layout "de"
bindswitch --locked lid:on output $display_laptop disable
bindswitch --locked lid:off output $display_laptop enable
bindsym $mod+shift+b border toggle
@ -142,17 +148,8 @@ bindsym shift+Print exec i3-screenshot -s
bindsym control+shift+Print exec i3-dropshot
bindsym control+alt+l exec i3-blur-lock
bindsym $mod+shift+m exec em
bindsym $mod+shift+v exec rofi-pass
bindsym $mod+shift+o exec nautilus
bindsym $mod+shift+x exec rofi-clipboard
bindsym $mod+shift+a exec rofi-marks
bindsym control+shift+Space exec makoctl dismiss
bindsym $mod+o move workspace to output right
bindsym $mod+shift+o move workspace to output right
bindsym $mod+o focus output right
# Basics:
#
@ -162,11 +159,9 @@ bindsym $mod+Return exec $term
# kill focused window
bindsym $mod+q kill
# start your launcher
bindsym $mod+d exec $menu
bindsym $mod+shift+d exec alacritty --class 'launcher' --command bash -c 'compgen -c | sort -u | fzf | xargs -r swaymsg -t command exec'
for_window [app_id="^launcher$"] floating enable, border none, resize set width 25 ppt height 100 ppt, move position 0 px 0 px
for_window [app_id="^launcher$"] floating enable, border pixel 4, resize set width 25 ppt height 100 ppt, move position center
# Drag floating windows by holding down $mod and left mouse button.
# Resize them with right mouse button + $mod.
@ -255,10 +250,11 @@ bindsym $mod+f fullscreen
bindsym $mod+Shift+space floating toggle
# Swap focus between the tiling area and the floating area
bindsym $mod+space focus mode_toggle
bindsym $mod+alt+space focus mode_toggle
# move focus to the parent container
bindsym $mod+a focus parent
bindsym $mod+shift+a focus child
#
# Scratchpad:
#
@ -274,51 +270,88 @@ bindsym $mod+minus scratchpad show
bindsym $mod+t scratchpad toggle
for_window [title="terminal_scratchpad"] move scratchpad
for_window [title="terminal_scratchpad"] fullscreen enable
for_window [title="terminal_scratchpad"] move scratchpad, fullscreen disable, border pixel 4, move position center
bindsym $mod+u exec swaymsg [title="terminal_scratchpad"] scratchpad show
exec alacritty --title terminal_scratchpad
for_window [title="worklogger"] floating enable
# mako
bindsym $mod+n exec makoctl dismiss
bindsym $mod+Shift+n exec makoctl dismiss -a
for_window [title="^worklogger.*$"] floating enable, border pixel 4, move position center
for_window [title="nm-tray"] floating enable
for_window [app_id="org.gnome.Nautilus"] floating enable
for_window [title="Firefox - Sharing Indicator"] floating enable
assign [instance="^.*\.yakshed\.org$"] "3: Comms"
assign [instance="^.*\.slack\.com$"] "3: Comms"
assign [instance="web.whatsapp.com"] "3: Comms"
assign [instance="inoreader.com"] "3: Comms"
assign [title="^.*qutebrowser-comms$"] "3: Comms"
assign [title="Wire"] "3: Comms"
assign [title="Signal"] "3: Comms"
#
# Resizing containers:
#
mode "resize" {
# left will shrink the containers width
# right will grow the containers width
# up will shrink the containers height
# down will grow the containers height
bindsym $left resize shrink width 10px
bindsym $down resize grow height 10px
bindsym $up resize shrink height 10px
bindsym $right resize grow width 10px
# ditto, with arrow keys
bindsym Left resize shrink width 10px
bindsym Down resize grow height 10px
bindsym Up resize shrink height 10px
bindsym Right resize grow width 10px
# return to default mode
bindsym Return mode "default"
bindsym Escape mode "default"
# left will shrink the containers width
# right will grow the containers width
# up will shrink the containers height
# down will grow the containers height
bindsym $left resize shrink width 10px
bindsym $down resize grow height 10px
bindsym $up resize shrink height 10px
bindsym $right resize grow width 10px
# ditto, with arrow keys
bindsym Left resize shrink width 10px
bindsym Down resize grow height 10px
bindsym Up resize shrink height 10px
bindsym Right resize grow width 10px
# return to default mode
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
mode "run" {
# start your launcher
bindsym $mod+d exec $menu; mode "default";
bindsym d exec $menu; mode "default";
bindsym r exec i3-rofi; mode "default";
bindsym p exec rofi-pass; mode "default";
bindsym w exec qutebrowser; mode "default";
bindsym e exec em; mode "default"
bindsym f exec nautilus; mode "default"
bindsym c exec clipman pick --tool=rofi; mode "default"
bindsym b exec rofi-marks; mode "default"
bindsym o exec pavucontrol; mode "default"
bindsym v exec alacritty --class 'vm' --command zsh -c 'vm'
# return to default mode
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+d mode "run"
set $font_family FuraMono Nerd Font
set $font_size 10
font pango:$font_family $font_size
default_border pixel 1
default_border pixel 2
workspace_auto_back_and_forth yes
smart_gaps on
smart_borders on
# class border backgr. text indic. child_border
@ -330,33 +363,30 @@ client.urgent $base08 $base08 $base00 $base08 $base08
client.placeholder $base00 $base00 $base05 $base00 $base00
client.background $base07
#
# Status Bar:
#
# Read `man 5 sway-bar` for more information about this section.
bar {
position top
position top
status_command i3status-rs ~/.config/i3status-rs.toml
font pango:FuraMono Nerd Font, FontAwesome 12
colors {
background $base00
separator $base01
statusline $base04
# When the status_command prints a new line to stdout, swaybar updates.
# The default just shows the current date and time.
# swaybar_command waybar
status_command i3status
colors {
background $base00
separator $base01
statusline $base04
# State Border BG Text
focused_workspace $base05 $base0D $base00
active_workspace $base05 $base03 $base00
inactive_workspace $base03 $base01 $base05
urgent_workspace $base08 $base08 $base00
binding_mode $base00 $base0A $base00
}
# State Border BG Text
focused_workspace $base05 $base0D $base00
active_workspace $base05 $base03 $base00
inactive_workspace $base03 $base01 $base05
urgent_workspace $base08 $base08 $base00
binding_mode $base00 $base0A $base00
}
}
include /etc/sway/config.d/*
# Currently inactive see https://github.com/swaywm/sway/issues/4649
#exec wl-paste -t text --watch clipman store
# See https://github.com/swaywm/sway/wiki#after-unplugging-an-external-display-some-applications-appear-too-large-on-my-hidpi-screen
exec xrdb -load ~/.Xresources
exec i3-autostart

View File

@ -0,0 +1 @@
/home/bascht/.config/systemd/user/emacs.service

View File

@ -4,8 +4,8 @@ Documentation=info:emacs man:emacs(1) https://gnu.org/software/emacs/
[Service]
Type=forking
ExecStart=/usr/bin/emacs --daemon
ExecStop=/usr/bin/emacsclient --eval "(kill-emacs)"
ExecStart=/usr/bin/emacs --bg-daemon=daemacs
ExecStop=/usr/bin/emacsclient -s daemacs --eval "(save-buffers-kill-emacs)"
Environment=SSH_AUTH_SOCK=%t/keyring/ssh
Restart=on-failure

View File

@ -0,0 +1,6 @@
[Unit]
Description=Run maid cleanup
[Service]
Type=oneshot
ExecStart=maid clean --force

View File

@ -0,0 +1,10 @@
[Unit]
Description=Run maid timer
[Timer]
OnActiveSec=30s
OnUnitActiveSec=120m
Unit=maid.service
[Install]
WantedBy=timers.target

View File

@ -0,0 +1 @@
/home/bascht/.config/systemd/user/maid.timer

@ -1 +1 @@
Subproject commit 0e0319968db33a0846252d4cc42b96e1f0d46617
Subproject commit fdd38eec9b7bcb5ed92404d3c30401791808e968

1
home/.fzf Submodule

@ -0,0 +1 @@
Subproject commit ff951341c993ed84ad65344e496e122ee3dddf67

@ -1 +1 @@
Subproject commit 9817e1e7ff62494abf9d7c78870e92908567e8f4
Subproject commit e38099de96e8b62976354b468da1b21ec2d57f68

View File

@ -90,6 +90,7 @@ values."
flycheck-plantuml
backline
magit-todos
enh-ruby-mode
)
;; A list of packages that cannot be updated.
dotspacemacs-frozen-packages '()
@ -167,15 +168,15 @@ values."
;; Press <SPC> T n to cycle to the next theme in the list (works great
;; with 2 themes variants, one dark and one light)
dotspacemacs-themes '(doom-one-light
spacemacs-light
doom-nord-light
doom-opera-light
doom-solarized-light
doom-nord-light
doom-one-light
doom-nord
doom-dracula
doom-spacegrey
doom-one-light
doom-one
doom-nord
spacemacs-light
spacemacs-dark)
;; If non nil the cursor color matches the state color in GUI Emacs.
dotspacemacs-colorize-cursor-according-to-state t
@ -344,7 +345,8 @@ values."
;; delete only whitespace for changed lines or `nil' to disable cleanup.
;; (default nil)
dotspacemacs-whitespace-cleanup nil
))
)
)
(defun dotspacemacs/user-init ()
"Initialization function for user code.
@ -377,19 +379,24 @@ you should place your code here."
(global-set-key (kbd "C->") 'mc/mark-next-like-this)
(global-set-key (kbd "C-<") 'mc/mark-previous-like-this)
(spacemacs/set-leader-keys "oa" 'org-agenda)
(spacemacs/set-leader-keys "om" 'mu4e)
(spacemacs/set-leader-keys "oa" 'my-org-agenda)
(spacemacs/set-leader-keys "om" 'bascht/mu4e-inbox)
(spacemacs/set-leader-keys "oo" 'helm-org-rifle-agenda-files)
(spacemacs/set-leader-keys "oc" 'org-mru-clock-in)
(spacemacs/set-leader-keys "ok" 'org-clock-goto)
(spacemacs/set-leader-keys "or" 'org-refile-goto-last-stored)
(spacemacs/set-leader-keys "od" 'my-daily-review)
(spacemacs/set-leader-keys "og" 'bascht/go-to-org-file)
(spacemacs/set-leader-keys "glu" 'mu4e-view-go-to-url)
(spacemacs/set-leader-keys "drr" 'rake)
(spacemacs/set-leader-keys "drl" 'rake-rerun)
(spacemacs/toggle-hungry-delete-on)
(defun bascht/go-to-org-file ()
"Jump to one of my Agenda files via helm"
(interactive)
(helm-find-files-1 "~/Documents/Zettelkasten/"))
(with-eval-after-load 'org
(if
(or (s-starts-with? "zog" system-name) (s-starts-with? "kandalingo" system-name))
@ -399,6 +406,9 @@ you should place your code here."
(load-file "~/.spacemacs.d/private/org-config.el")))
)
;; Don't litter. Use one file per VM.
(setq recentf-save-file (format "%s.%s.%s" recentf-save-file system-name server-name))
;; Tramp speed up
(setq remote-file-name-inhibit-cache nil)
(setq vc-ignore-dir-regexp
@ -444,7 +454,16 @@ you should place your code here."
(flycheck-yamllint-setup)
))
(with-eval-after-load "ispell"
(setq ispell-program-name "hunspell")
;; ispell-set-spellchecker-params has to be called
;; before ispell-hunspell-add-multi-dic will work
(ispell-set-spellchecker-params)
(ispell-hunspell-add-multi-dic "de_DE,en_GB")
(setq ispell-dictionary "de_DE,en_GB"))
(add-hook 'git-commit-mode-hook 'evil-insert-state)
(add-hook 'org-capture-mode-hook 'evil-insert-state)
(setq delete-selection-mode nil)
(setq hledger-currency-string "EUR")
@ -463,7 +482,6 @@ you should place your code here."
(setq atomic-chrome-default-major-mode 'markdown-mode)
(setq web-mode-engines-alist
'(("go" . "\\.phtml\\'")))
(setq recentf-save-file "~/.emacs.d.recentf")
)
;; Do not write anything past this comment. This is where Emacs will

View File

@ -56,7 +56,14 @@
(setq org-refile-allow-creating-parent-nodes 'confirm)
(setq org-clock-sound t)
(setq org-clock-out-remove-zero-time-clocks t)
;; Resume clocking task when emacs is restarted
(org-clock-persistence-insinuate)
;; Save the running clock and all clock history when exiting Emacs, load it on startup
(setq org-clock-persist t)
;; Resume clocking task on clock-in if the clock is open
(setq org-clock-in-resume t)
;; Do not prompt to resume an active clock, just resume it
(setq org-clock-persist-query-resume nil)
(setq org-agenda-start-with-clockreport-mode t)
(setq org-clock-report-include-clocking-task t)
@ -154,7 +161,7 @@
:time-grid t)))))
(todo "" ((org-agenda-overriding-header "Other")
(org-super-agenda-groups
'((auto-category t)) )))
'((:auto-category t)) )))
(todo "" ((org-agenda-overriding-header "Grouped")
(org-super-agenda-groups
'((:name none ; Disable super group header
@ -173,6 +180,9 @@
(:name "Process + Shallow"
:time-grid t
:tag ("@process" "@shallow"))
(:name "Customer Projects"
:file-path "Customer"
)
(:name "Quick Picks"
:effort< "0:30"
)
@ -185,6 +195,9 @@
(setq org-agenda-span 1)
((org-super-agenda-groups
'(
(:name "Quick Picks"
:effort< "0:30"
)
(:name "Immersive + Deep"
:tag ("@immersive" "@deep"))
(:name "Immersive + Shallow"
@ -193,10 +206,11 @@
:tag ("@process" "@deep"))
(:name "Process + Shallow"
:tag ("@process" "@shallow"))
(:name "Quick Picks"
:effort< "0:30"
(:name "Customer Projects"
:file-path "Customer"
)
(:priority<= "B"
(:name "Low Prio and future"
:priority<= "B"
:scheduled future
:order 1))))
(org-agenda nil "a"))
@ -234,6 +248,15 @@
(org-cycle-hide-drawers 'all)
(search-forward "[ ]"))
(defun my-org-agenda ()
(interactive)
(let ((org-agenda-start-with-log-mode 'nil)
(org-agenda-show-log 'nil)
(org-agenda-span 'day)
(org-agenda-use-time-grid t))
(org-agenda nil "c")
(org-agenda-redo)
))
; Recent loops callable for daily review
(defun my-org-agenda-recent-open-loops ()
(interactive)
@ -246,6 +269,19 @@
(add-to-list 'org-global-properties
'("Effort_ALL". "0:05 0:10 0:15 0:30 1:00 2:00 3:00 4:00"))
(setq org-agenda-category-icon-alist
'(("Todo" "~/.icons/emacs/todo-16x16.png" nil nil :ascent center)
("Personal.*" "~/.icons/emacs/person-16x16.png" nil nil :ascent center)
("Customer.*" "~/.icons/emacs/briefcase-16x16.png" nil nil :ascent center)
("Project.*" "~/.icons/emacs/generic-folder-16x16.png" nil nil :ascent center)
("\\(ROPrivat\\|ROArbeit\\)" "~/.icons/emacs/calendar-16x16.png" nil nil :ascent center)
(".*" '(space . (:width (16))))))
; Save file on every state change
(add-hook 'org-trigger-hook 'save-buffer)
(add-hook 'org-clock-in-hook 'save-buffer)
(add-hook 'org-clock-out-hook 'save-buffer)
(provide 'org-config)
;;; org-config.el ends here
;; Local Variables:

View File

@ -0,0 +1,6 @@
# -*- mode: snippet -*-
# name: lgs
# key: lgs
# --
Liebe Grüße,
Sebastian

Binary file not shown.

View File

@ -2,7 +2,8 @@ unbind C-b
set-option -g prefix C-o
bind-key C-o send-prefix
set -g default-terminal "screen-256color"
set -g default-terminal "xterm-24bit"
set -ag terminal-overrides ",xterm-24bit:Tc"
bind s split-window -v
bind v split-window -h
@ -19,12 +20,16 @@ bind > resize-pane -R 1
bind - resize-pane -D 1
bind + resize-pane -U 1
bind-key C-Tab next-window
bind-key C-S-Tab previous-window
bind-key -n C-Tab next-window
bind-key -n C-S-Tab previous-window
bind-key C-l last-window
bind-key -n C-S-Left swap-window -t -1
bind-key -n C-S-Right swap-window -t +1
bind-key S-Left swap-window -t -1
bind-key S-Right swap-window -t +1
bind-key -n C-S-Up switch-client -p
bind-key -n C-S-Down switch-client -n
@ -64,5 +69,6 @@ set-option -g display-panes-active-colour colour33
set-option -g display-panes-colour colour166
set-window-option -g clock-mode-colour colour64
set-window-option -g window-status-bell-style fg=colour235,bg=colour160
set -g escape-time 0
run-shell "~/bin/tmux-statusline"

@ -0,0 +1 @@
Subproject commit b255382d6242d7ea3877bf059d2934125e0c4d95

161
home/.vimrc Normal file
View File

@ -0,0 +1,161 @@
set nocompatible
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" Bundles
" Actual plugins
Plugin 'VundleVim/Vundle.vim'
Plugin 'tpope/vim-fugitive'
Plugin 'kien/ctrlp.vim'
Plugin 'tpope/vim-surround'
Plugin 'tpope/vim-repeat'
Plugin 'editorconfig/editorconfig-vim'
Plugin 'gerw/vim-HiLinkTrace'
" Meta plugins
Plugin 'vim-scripts/ingo-library'
Plugin 'vim-scripts/SyntaxRange'
" Syntax highlighting
Plugin 'plasticboy/vim-markdown'
Plugin 'cespare/vim-toml'
Plugin 'rust-lang/rust.vim'
Plugin 'mxw/vim-jsx'
Plugin 'pangloss/vim-javascript'
Plugin 'kchmck/vim-coffee-script'
Plugin 'google/vim-jsonnet'
Plugin 'sirtaj/vim-openscad'
Plugin 'leafgarland/typescript-vim'
Plugin 'beyondmarc/glsl.vim'
Plugin 'vim-scripts/scons.vim'
Plugin 'calviken/vim-gdscript3'
Plugin 'wannesm/wmgraphviz.vim'
Plugin 'sotte/presenting.vim'
Plugin 'ziglang/zig.vim'
Plugin 'dracula/vim', { 'name': 'dracula' }
" /Bundles
call vundle#end()
filetype plugin indent on
set laststatus=2
set t_Co=256
let g:vim_markdown_folding_disabled=1
let g:vim_markdown_frontmatter=1
let g:jsx_ext_required = 0
set encoding=utf-8
set tabstop=4
set shiftwidth=4
set autoindent
set magic " unbreak vim's regex implementation
set number
set scrolloff=3
set sidescroll=3
set ruler
set cc=80
set nowrap
set ignorecase
set smartcase
set splitbelow
set hidden
set notimeout
" Search as you type, highlight results
set incsearch
set showmatch
set hlsearch
" Resize windows and move tabs and such with the mouse
set mouse=a
" Don't litter swp files everywhere
set backupdir=~/.cache
set directory=~/.cache
set nofoldenable
set lazyredraw
set tags=./tags;
set printheader=\
syntax on
let mapleader = "\<space>"
nnoremap \\ :noh<cr> " Clear higlighting
nnoremap <silent> <F5> :let _s=@/<Bar>:%s/\s\+$//e<Bar>:let @/=_s<Bar>:nohl<CR> " Trim trailing spaces
nnoremap Y y$
nnoremap cc :center<cr>
inoremap <C-c> <ESC>
" Ex mode is fucking dumb
nnoremap Q <Nop>
command Jp e ++enc=euc-jp
" Preferences for various file formats
autocmd FileType c setlocal noet ts=4 sw=4 tw=80
autocmd FileType h setlocal noet ts=4 sw=4 tw=80
autocmd FileType cpp setlocal noet ts=4 sw=4 tw=80
autocmd FileType s setlocal noet ts=4 sw=4
autocmd FileType go setlocal noet ts=4 sw=4
autocmd FileType hy setlocal filetype=lisp
autocmd FileType sh setlocal noet ts=4 sw=4
autocmd BufRead,BufNewFile *.js setlocal et ts=2 sw=2
autocmd FileType html setlocal et ts=2 sw=2
autocmd FileType htmldjango setlocal et ts=2 sw=2
autocmd FileType ruby setlocal et ts=2 sw=2
autocmd FileType scss setlocal et ts=2 sw=2
autocmd FileType yaml setlocal et ts=2 sw=2
autocmd FileType markdown setlocal tw=80 et ts=2 sw=2
autocmd FileType text setlocal tw=80
autocmd FileType meson setlocal noet ts=2 sw=2
autocmd FileType bzl setlocal et ts=2 sw=2
autocmd FileType typescript setlocal et ts=2 sw=2
autocmd FileType python setlocal et ts=4 sw=4
autocmd BufNewFile,BufRead *.ms set syntax=python ts=4 sw=4 noet
autocmd BufNewFile,BufRead *.scd set ts=4 sw=4 noet
autocmd FileType tex hi Error ctermbg=NONE
autocmd FileType mail setlocal noautoindent
augroup filetypedetect
autocmd BufRead,BufNewFile *mutt-* setfiletype mail
augroup filetypedetect
autocmd BufRead,BufNewFile *qutebrowser-editor-* set ts=4 sw=4 et
autocmd BufNewFile,BufRead * if expand('%:t') == 'APKBUILD' | set ft=sh | endif
autocmd BufNewFile,BufRead * if expand('%:t') == 'PKGBUILD' | set ft=sh | endif
set guioptions-=m
set guioptions-=T
set guioptions-=r
set guioptions-=e
nmap <leader>l :set list!<CR>
set listchars=tab:▸\ ,eol,space:.
syntax enable
" Transparent editing of gpg encrypted files.
" By Wouter Hanegraaff
augroup encrypted
au!
autocmd BufReadPre,FileReadPre *.gpg set viminfo=
autocmd BufReadPre,FileReadPre *.gpg set noswapfile noundofile nobackup
autocmd BufReadPre,FileReadPre *.gpg set bin
autocmd BufReadPre,FileReadPre *.gpg let ch_save = &ch|set ch=2
autocmd BufReadPost,FileReadPost *.gpg '[,']!gpg --decrypt 2> /dev/null
autocmd BufReadPost,FileReadPost *.gpg set nobin
autocmd BufReadPost,FileReadPost *.gpg let &ch = ch_save|unlet ch_save
autocmd BufReadPost,FileReadPost *.gpg execute ":doautocmd BufReadPost " . expand("%:r")
autocmd BufWritePre,FileWritePre *.gpg '[,']!gpg --default-recipient-self -ae 2>/dev/null
autocmd BufWritePost,FileWritePost *.gpg u
augroup END
let g:presenting_top_margin = 2
" set printdevice=EPSON_LX-350

View File

@ -1,9 +1,10 @@
export PATH=$HOME/.local/bin:$HOME/bin:$HOME/bin/go/bin:$HOME/.cargo/bin:$PATH
source ~/.config/environment.d/*
export PATH
export DICPATH
export XDG_CURRENT_DESKTOP
export PASSWORD_STORE_DIR
export MOZ_ENABLE_WAYLAND
export MOZ_USE_XINPUT2
export VAGRANT_DEFAULT_PROVIDER=libvirt
export VAGRANT_DOTFILE_PATH=".vagrant-$(hostname)"
export QT_QPA_PLATFORMTHEME="qt5ct"
export DICPATH="${HOME}/.local/share/hunspell"
export XDG_CURRENT_DESKTOP=GNOME
export PASSWORD_STORE_DIR="${HOME}/Documents/Passwords/.password-store"
export MOZ_ENABLE_WAYLAND=1
export MOZ_USE_XINPUT2=1

View File

@ -1,3 +1,8 @@
# Directly start sway if we're on tty1
if [ "$(tty)" = "/dev/tty1" ]; then
exec sway-run
fi
# Back out if we're surrounded by Emacs
[ "$TERM" = "eterm-color" ] && exec bash
[ "$TERM" = "xterm-termite" ] && export TERM=xterm-256color
@ -15,7 +20,7 @@ fpath=( ~/.kubectx/completion "${fpath[@]}" )
ZSH_CUSTOM="${HOME}/.zsh-custom"
ZSH_THEME="powerlevel10k/powerlevel10k"
ZSH_DOTENV_FILE=".direnv"
FZF_MARKS_FILE="${HOME}/.config/fzf/${HOSTNAME}"
FZF_MARKS_FILE="${HOME}/.config/fzf/${HOST}"
export ZSH=/home/bascht/.oh-my-zsh
@ -34,16 +39,20 @@ alias docker-rm-dangling="docker rmi (docker images -q -f dangling=true)"
alias dco="docker-compose"
alias dcorrm="docker-compose run --rm"
alias emacseval="emacs -batch -l ~/.emacs.d/init.el -eval '(org-batch-agenda "a")'"
alias dry="docker run --rm -itv /var/run/docker.sock:/var/run/docker.sock skanehira/docui"
alias drri="docker run --rm -ti"
alias dry="drri -v /var/run/docker.sock:/var/run/docker.sock skanehira/docui"
alias k=kubectl
alias g=git
alias git-cleanup-merged-branches="git fetch -va && git branch --merged | egrep -v '(^\*|master)' | xargs git branch -d"
alias wttr="curl 'wttr.in/Bogenhausen?1pQF&lang=de'"
alias termbin="nc termbin.com 9999"
alias ssh='TERM=xterm-256color ssh'
timestamp() { date +%Y-%m-%d-%H%M%S }
letterup() { take $1 && cp -a ~/Documents/Personal/Brief-Vorlage/2017-LaTeX/* .; }
# Override the tmux ssh auth sock
SSH_TMUX_SOCK="${HOME}/.ssh/ssh_auth_sock"
if [ "${SSH_AUTH_SOCK}" != "${SSH_TMUX_SOCK}" ]; then
if [ "${SSH_AUTH_SOCK}" != "${SSH_TMUX_SOCK}" ] && [ "${SSH_AUTH_SOCK}" != "" ]; then
ln -sf "$SSH_AUTH_SOCK" "$SSH_TMUX_SOCK"
fi
@ -68,9 +77,25 @@ function fzf-ssh () {
zle reset-prompt
}
# Only load kubectl completion when needed. I's bog-slow
if [[ -f $KUBECONFIG ]]; then
source <(kubectl completion zsh);
fi;
zle -N fzf-ssh
bindkey '\es' fzf-ssh
function fzf-vm () {
local selected_vm=$(grep "Host " ~/.ssh/config | grep -oP "vm-(\w+)" | sort -u | cut -b 4- | fzf --reverse --height=20 --query "$LBUFFER")
if [ -n "$selected_vm" ]; then
BUFFER="vm ${selected_vm} ''"
zle accept-line
fi
zle reset-prompt
}
zle -N fzf-vm
bindkey '\ev' fzf-vm
# Via @leahneukirchen
autoload -Uz copy-earlier-word
zle -N copy-earlier-word
@ -79,6 +104,6 @@ bindkey "^[m" copy-earlier-word
if [ -f ~/Code/architecture/bin/ia ]; then
source <(~/Code/architecture/bin/ia completion)
fi;
source ~/.zsh-custom/plugins/
# To customize prompt, run `p9k_configure` or edit ~/.p10k.zsh.
source ~/.p10k.zsh

View File

@ -1,3 +1,3 @@
#!/bin/bash
exec emacsclient -c $*
exec emacsclient -s daemacs -c "${@}"

View File

@ -30,15 +30,17 @@ else
swaymsg workspace "4: Docs"
swaymsg exec "emacs ~/"
swaymsg workspace "2: Web"
swaymsg exec chromium-browser
swaymsg exec firefox-wayland
swaymsg workspace "3: Comms"
swaymsg exec start-comms
swaymsg workspace "5: Media"
swaymsg exec alacritty -- -e "mux start music"
swaymsg workspace "1: Code"
swaymsg exec alacritty
swaymsg -- exec swayidle \
timeout 300 'swaylock -c 000000' \
swayidle \
timeout 300 'i3-blur-lock' \
timeout 600 'swaymsg "output * dpms off"' \
resume 'swaymsg "output * dpms on"' \
before-sleep 'swaylock -c 000000'
before-sleep 'i3-blur-lock' &
fi;

View File

@ -3,119 +3,131 @@
require 'json'
require 'erb'
require 'pry'
require 'yaml'
binaries = {
skaffold: {
url: "https://storage.googleapis.com/skaffold/releases/<%= version %>/skaffold-linux-amd64",
version: "v0.17.0",
version_argument: "version",
version_match: "<%= version %>"
},
kubectl: {
url: "https://storage.googleapis.com/kubernetes-release/release/<%= version %>/bin/linux/amd64/kubectl",
version: "v1.15.1",
version_argument: "version --client",
version_match: '^Client Version.*GitVersion:\"(?<version><%= version %>)\"'
},
kustomize: {
url: "https://github.com/kubernetes-sigs/kustomize/releases/download/v<%= version %>/kustomize_<%= version %>_linux_amd64",
version: "2.0.3",
version_argument: "version",
version_match: '^Version: {KustomizeVersion:(?<version><%= version %>) '
},
yq: {
url: "https://github.com/mikefarah/yq/releases/download/<%= version %>/yq_linux_amd64",
version: "2.1.1",
version_argument: "--version",
version_match: '^yq version <%= version %>'
},
lab: {
url: "https://github.com/zaquestion/lab/releases/download/v<%= version %>/lab_<%= version %>_linux_amd64.tar.gz",
version: "0.14.0",
version_argument: "version",
version_match: '^lab version <%= version %>',
},
gopass: {
url: "https://github.com/gopasspw/gopass/releases/download/v<%= version %>/gopass-<%= version %>-linux-amd64.tar.gz",
version: "1.8.6",
version_argument: "version",
version_match: '^gopass <%= version %> ',
extractor: lambda() do
Dir.glob("gopass*/gopass")
end
},
greenclip: {
url: "https://github.com/erebe/greenclip/releases/download/<%= version %>/greenclip",
version: "3.1",
version_argument: "version",
version_match: '^greenclip v<%= version %>',
},
packer: {
url: "https://releases.hashicorp.com/packer/<%= version %>/packer_<%= version %>_linux_amd64.zip",
version: "1.3.5",
version_argument: "version",
version_match: "^Packer v<%= version %>"
},
minikube: {
url: "https://storage.googleapis.com/minikube/releases/v<%= version %>/minikube-linux-amd64",
version: "0.33.1",
version_argument: "version",
version_match: "^minikube version: v<%= version %>"
},
terraform: {
url: "https://releases.hashicorp.com/terraform/<%= version %>/terraform_<%= version %>_linux_amd64.zip",
version: "0.12.2",
version_argument: "version",
version_match: "^Terraform v<%= version %>"
},
vagrant: {
url: "https://releases.hashicorp.com/vagrant/<%= version %>/vagrant_<%= version %>_linux_amd64.zip",
version: "2.2.5",
version_argument: "version",
version_match: "^Vagrant <%= version %>"
},
helm: {
url: "https://storage.googleapis.com/kubernetes-helm/helm-v<%= version %>-linux-amd64.tar.gz",
version: "2.13.0",
version_argument: "--version",
version_match: "v<%= version %>"
},
fzf: {
url: "https://github.com/junegunn/fzf-bin/releases/download/<%= version %>/fzf-<%= version %>-linux_amd64.tgz",
version: "0.17.5",
version_argument: "--version",
version_match: "<%= version %>.*"
},
bat: {
url: "https://github.com/sharkdp/bat/releases/download/v<%= version %>/bat-v<%= version %>-x86_64-unknown-linux-gnu.tar.gz",
version: "0.10.0",
version_argument: "--version",
version_match: "v<%= version %>"
},
hcloud: {
url: "https://github.com/hetznercloud/cli/releases/download/v<%= version %>/hcloud-linux-amd64-v<%= version %>.tar.gz",
version: "1.12.0",
version_argument: "version",
version_match: "v<%= version %>"
},
hugo: {
url: "https://github.com/gohugoio/hugo/releases/download/v<%= version %>/hugo_<%= version %>_Linux-64bit.tar.gz",
version: "0.55.6",
version_argument: "version",
version_match: "Hugo Static Site Generator v<%= version %>"
},
pandoc: {
url: "https://github.com/jgm/pandoc/releases/download/<%= version %>/pandoc-<%= version %>-linux.tar.gz",
version: "2.7.3",
version_argument: "--version",
version_match: "pandoc-citeproc 0.16.2"
},
"wally-cli": {
url: "https://github.com/zsa/wally/releases/download/<%= version %>-linux/wally-cli",
version: "1.1.0"
},
}
verbose = ARGV.include? "-v"
binaries = YAML.load <<EOB
---
:skaffold:
:url: https://storage.googleapis.com/skaffold/releases/<%= version %>/skaffold-linux-amd64
:version: v0.17.0
:version_argument: version
:version_match: "<%= version %>"
:kubectl:
:url: https://storage.googleapis.com/kubernetes-release/release/<%= version %>/bin/linux/amd64/kubectl
:version: v1.15.1
:version_argument: version --client
:version_match: ^Client Version.*GitVersion:\"(?<version><%= version %>)\"
:kustomize:
:url: https://github.com/kubernetes-sigs/kustomize/releases/download/v<%= version
%>/kustomize_<%= version %>_linux_amd64
:version: 2.0.3
:version_argument: version
:version_match: "^Version: {KustomizeVersion:(?<version><%= version %>) "
:yq:
:url: https://github.com/mikefarah/yq/releases/download/<%= version %>/yq_linux_amd64
:version: 2.1.1
:version_argument: "--version"
:version_match: "^yq version <%= version %>"
:lab:
:url: https://github.com/zaquestion/lab/releases/download/v<%= version %>/lab_<%=
version %>_linux_amd64.tar.gz
:version: 0.14.0
:version_argument: version
:version_match: "^lab version <%= version %>"
:gopass:
:url: https://github.com/gopasspw/gopass/releases/download/v<%= version %>/gopass-<%=
version %>-linux-amd64.tar.gz
:version: 1.8.6
:version_argument: version
:version_match: "^gopass <%= version %> "
:greenclip:
:url: https://github.com/erebe/greenclip/releases/download/<%= version %>/greenclip
:version: '3.1'
:version_argument: version
:version_match: "^greenclip v<%= version %>"
:packer:
:url: https://releases.hashicorp.com/packer/<%= version %>/packer_<%= version %>_linux_amd64.zip
:version: 1.3.5
:version_argument: version
:version_match: "^Packer v<%= version %>"
:minikube:
:url: https://storage.googleapis.com/minikube/releases/v<%= version %>/minikube-linux-amd64
:version: 0.33.1
:version_argument: version
:version_match: "^minikube version: v<%= version %>"
:terraform:
:url: https://releases.hashicorp.com/terraform/<%= version %>/terraform_<%= version
%>_linux_amd64.zip
:version: 0.12.10
:version_argument: version
:version_match: "^Terraform v<%= version %>"
:vagrant:
:url: https://releases.hashicorp.com/vagrant/<%= version %>/vagrant_<%= version
%>_linux_amd64.zip
:version: 2.2.5
:version_argument: version
:version_match: "^Installed Version: <%= version %>"
:helm:
:url: https://get.helm.sh/helm-v<%= version %>-linux-amd64.tar.gz
:version: 3.0.2
:version_argument: "version --short"
:version_match: v<%= version %>
:fzf:
:url: https://github.com/junegunn/fzf-bin/releases/download/<%= version %>/fzf-<%=
version %>-linux_amd64.tgz
:version: 0.17.5
:version_argument: "--version"
:version_match: "<%= version %>.*"
:bat:
:url: https://github.com/sharkdp/bat/releases/download/v<%= version %>/bat-v<%=
version %>-x86_64-unknown-linux-gnu.tar.gz
:version: 0.12.1
:version_argument: "--version"
:version_match: bat <%= version %>
:hcloud:
:url: https://github.com/hetznercloud/cli/releases/download/v<%= version %>/hcloud-linux-amd64-v<%=
version %>.tar.gz
:version: 1.12.0
:version_argument: version
:version_match: v<%= version %>
:hugo:
:url: https://github.com/gohugoio/hugo/releases/download/v<%= version %>/hugo_<%=
version %>_Linux-64bit.tar.gz
:version: 0.59.1
:version_argument: version
:version_match: Hugo Static Site Generator v<%= version %>
:pandoc:
:url: https://github.com/jgm/pandoc/releases/download/<%= version %>/pandoc-<%=
version %>-linux.tar.gz
:version: 2.7.3
:version_argument: "--version"
:version_match: pandoc-citeproc 0.16.2
:hadolint:
:url: https://github.com/hadolint/hadolint/releases/download/v<%= version %>/hadolint-Linux-x86_64
:version: 1.17.2
:version_match: "<%= version %>"
:version_argument: "--version"
:shellcheck:
:url: https://storage.googleapis.com/shellcheck/shellcheck-v<%= version %>.linux.x86_64.tar.xz
:version: 0.7.0
:version_match: "version: <%= version %>"
:version_argument: "--version"
:wally-cli:
:url: https://github.com/zsa/wally/releases/download/<%= version %>-linux/wally-cli
:version: 1.1.0
:version_match: "---"
:rancher:
:url: https://github.com/rancher/cli/releases/download/v<%= version %>/rancher-linux-amd64-v<%= version %>.tar.gz
:version: 2.3.0
:version_match: "rancher version v<%= version %>"
:version_argument: "--version"
:uni:
:url: https://github.com/arp242/uni/releases/download/v<%= version %>/uni-v<%= version %>-linux-amd64.gz
:version: 1.0.0
:version_match: "v<%= version %>"
EOB
tmpdir = Dir.mktmpdir
binaries.each do |binary, download|
@ -138,18 +150,28 @@ binaries.each do |binary, download|
download_dir = File.join(tmpdir, binary.to_s)
Dir.mkdir(download_dir)
Dir.chdir(download_dir) do
puts "Downloading from #{download_url} to #{download_dir}" if verbose
system "curl -s -L -O #{download_url}"
downloaded_file = Dir.glob("*").first
extraction_command = case File.extname(downloaded_file)
when ".tgz", ".tar.gz", ".gz" then
puts "Downloaded as #{downloaded_file}" if verbose
extraction_command = case File.basename(downloaded_file)
when /.tgz$/, /.tar.gz$/, /.tar.xz$/ then
"tar xvf"
when ".zip" then
when /.gz$/ then
"gunzip"
when /.zip$/ then
"unzip"
end
system("#{extraction_command} #{downloaded_file} > /dev/null")
if extraction_command
puts "Using #{extraction_command} to extract" if verbose
system("#{extraction_command} #{downloaded_file} > /dev/null")
else
puts "Did not find any archive I could extract"
end
extracted_executables = Dir.glob("**/**").select do |f|
`file #{f}`.match(/LSB executable|ELF 64-bit LSB shared object/)
`file #{f}`.match(/LSB executable|ELF 64-bit LSB shared object|ELF 64-bit LSB pie executable/)
end
FileUtils.mv(File.realpath(extracted_executables.first), target)
end

View File

@ -17,7 +17,7 @@ now = Time.now
JOURNAL_PATH = Pathname.new("~/Documents/Worklog").expand_path
CURRENT_FILE = Pathname.new(JOURNAL_PATH.join(now.strftime("%Y%m%d")))
DIALOG="zenity --entry --title='worklogger'"
DIALOG="zenity --entry"
we_are_appending = CURRENT_FILE.exist?
@ -28,11 +28,12 @@ File.open(CURRENT_FILE, "a+") do |f|
all_tasks = f.each_line.select{|line| line.start_with? "**" }
all_tasks.map{ |task| task.sub(/^\*\* /, "") }.last(3).join("")
else
location = `#{DIALOG} --text="Where are we today?"`.strip
location = `#{DIALOG} --title='worklogger' --text="Where are we today?"`.strip
f.write(now.strftime("* %A, %d/%m/%Y\n"))
f.write(" :PROPERTIES:\n :WORKLOG_LOCATION: #{location}\n :END:\n\n")
"First entry for today!"
end
entry = `#{DIALOG} --text="#{last_tasks}"`.strip
f.write("** #{now.strftime('%H:%M')} #{entry}\n") unless entry.empty?
time = now.strftime('%H:%M')
entry = `#{DIALOG} --title='worklogger @#{time}' --text="#{last_tasks}"`.strip
f.write("** #{time} #{entry}\n") unless entry.empty?
end