Compare commits
73 Commits
d923b4747d
...
1735f9cbec
Author | SHA1 | Date |
---|---|---|
Sebastian Schulze | 1735f9cbec | |
Sebastian Schulze | 7d64c504a5 | |
Sebastian Schulze | 84f0f64886 | |
Sebastian Schulze | d323fcd97f | |
Sebastian Schulze | 179243dc71 | |
Sebastian Schulze | 75be5d032f | |
Sebastian Schulze | 788a29fef0 | |
Sebastian Schulze | 6c1dc805e4 | |
Sebastian Schulze | a0ce3c5e30 | |
Sebastian Schulze | 095b2a56c2 | |
Sebastian Schulze | d7d6d54ac0 | |
Sebastian Schulze | 618718d664 | |
Sebastian Schulze | 2c7722ca4f | |
Sebastian Schulze | 81cd5ea099 | |
Sebastian Schulze | 583a477deb | |
Sebastian Schulze | 84fb1ac236 | |
Sebastian Schulze | 5d9b50e60b | |
Sebastian Schulze | f5824ae53c | |
Sebastian Schulze | 62081a7710 | |
Sebastian Schulze | 937498bedb | |
Sebastian Schulze | 99d6cbd076 | |
Sebastian Schulze | 06e0c9d618 | |
Sebastian Schulze | 9a2691f413 | |
Sebastian Schulze | 7d632f7584 | |
Sebastian Schulze | 619b26b7d0 | |
Sebastian Schulze | f776ced6cf | |
Sebastian Schulze | 11dec5c8e6 | |
Sebastian Schulze | cb61fb2a28 | |
Sebastian Schulze | 12faf1d4b0 | |
Sebastian Schulze | e99d9480dd | |
Sebastian Schulze | 9a2573fd35 | |
Sebastian Schulze | 3f2063d8db | |
Sebastian Schulze | a5aaf0a7c8 | |
Sebastian Schulze | e63bd1edc9 | |
Sebastian Schulze | f2f7751cb0 | |
Sebastian Schulze | 92542b5675 | |
Sebastian Schulze | 87d34832ab | |
Sebastian Schulze | fcb9c33587 | |
Sebastian Schulze | 8c65669340 | |
Sebastian Schulze | 840c1a1512 | |
Sebastian Schulze | 33800bcf7e | |
Sebastian Schulze | a0ebef017e | |
Sebastian Schulze | 4c0c31d72e | |
Sebastian Schulze | b32865e311 | |
Sebastian Schulze | f1b8212ec6 | |
Sebastian Schulze | 1fafcf530b | |
Sebastian Schulze | a4c1e62357 | |
Sebastian Schulze | 8187dcd10f | |
Sebastian Schulze | 20755c5a24 | |
Sebastian Schulze | e61cd83fa3 | |
Sebastian Schulze | 987367ad05 | |
Sebastian Schulze | 13faf0ad65 | |
Sebastian Schulze | 80a03719dd | |
Sebastian Schulze | c7640e4317 | |
Sebastian Schulze | 87a517b471 | |
Sebastian Schulze | 91f922370d | |
Sebastian Schulze | f1233020fa | |
Sebastian Schulze | f2e680de25 | |
Sebastian Schulze | 88f0a2adae | |
Sebastian Schulze | 5bc4f0c181 | |
Sebastian Schulze | 5eb5a62b0b | |
Sebastian Schulze | 375e763e1e | |
Sebastian Schulze | 27905eab84 | |
Sebastian Schulze | dedee63ed3 | |
Sebastian Schulze | b3254ce91d | |
Sebastian Schulze | 3cceb24c9c | |
Sebastian Schulze | 22ec4c1190 | |
Sebastian Schulze | b3eae34fa8 | |
Sebastian Schulze | e2d1e75de6 | |
Sebastian Schulze | 1f95cd68d7 | |
Sebastian Schulze | b6e901d16e | |
Sebastian Schulze | a667e614eb | |
Sebastian Schulze | 31feace4e6 |
|
@ -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
|
||||
|
|
|
@ -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 NerdFont
|
||||
# The `style` can be specified to pick a specific face.
|
||||
style: Regular
|
||||
|
||||
# Bold font face
|
||||
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
|
|
@ -0,0 +1 @@
|
|||
--theme="base16"
|
|
@ -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
|
|
@ -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=
|
||||
|
|
|
@ -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,19 +270,28 @@ 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:
|
||||
|
@ -313,12 +318,40 @@ 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,19 +363,10 @@ 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
|
||||
|
||||
# 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
|
||||
|
||||
|
||||
status_command i3status-rs ~/.config/i3status-rs.toml
|
||||
font pango:FuraMono Nerd Font, FontAwesome 12
|
||||
colors {
|
||||
background $base00
|
||||
separator $base01
|
||||
|
@ -358,5 +382,11 @@ 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
|
||||
|
|
@ -0,0 +1 @@
|
|||
/home/bascht/.config/systemd/user/emacs.service
|
|
@ -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
|
||||
|
|
@ -0,0 +1,6 @@
|
|||
[Unit]
|
||||
Description=Run maid cleanup
|
||||
|
||||
[Service]
|
||||
Type=oneshot
|
||||
ExecStart=maid clean --force
|
|
@ -0,0 +1,10 @@
|
|||
[Unit]
|
||||
Description=Run maid timer
|
||||
|
||||
[Timer]
|
||||
OnActiveSec=30s
|
||||
OnUnitActiveSec=120m
|
||||
Unit=maid.service
|
||||
|
||||
[Install]
|
||||
WantedBy=timers.target
|
|
@ -0,0 +1 @@
|
|||
/home/bascht/.config/systemd/user/maid.timer
|
|
@ -1 +1 @@
|
|||
Subproject commit 0e0319968db33a0846252d4cc42b96e1f0d46617
|
||||
Subproject commit fdd38eec9b7bcb5ed92404d3c30401791808e968
|
|
@ -0,0 +1 @@
|
|||
Subproject commit ff951341c993ed84ad65344e496e122ee3dddf67
|
|
@ -1 +1 @@
|
|||
Subproject commit 9817e1e7ff62494abf9d7c78870e92908567e8f4
|
||||
Subproject commit e38099de96e8b62976354b468da1b21ec2d57f68
|
|
@ -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
|
||||
|
|
|
@ -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:
|
||||
|
|
|
@ -0,0 +1,6 @@
|
|||
# -*- mode: snippet -*-
|
||||
# name: lgs
|
||||
# key: lgs
|
||||
# --
|
||||
Liebe Grüße,
|
||||
Sebastian
|
Binary file not shown.
|
@ -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
|
|
@ -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
|
|
@ -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
|
||||
|
|
33
home/.zshrc
33
home/.zshrc
|
@ -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
|
||||
|
|
|
@ -1,3 +1,3 @@
|
|||
#!/bin/bash
|
||||
|
||||
exec emacsclient -c $*
|
||||
exec emacsclient -s daemacs -c "${@}"
|
||||
|
|
|
@ -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;
|
||||
|
|
|
@ -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
|
||||
|
||||
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
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue