Compare commits

..

4 commits

Author SHA1 Message Date
Simon Bruder 099d895600
Remove sway and related tools
Now managed by home-manager.
2020-09-25 21:40:30 +02:00
Simon Bruder 37be2ea29d
Remove zathura
Now managed by home-manager.
2020-09-25 19:22:53 +02:00
Simon Bruder 36d202452e
Remove mpv
Now managed by home-manager.
2020-09-25 19:15:39 +02:00
Simon Bruder 73990eaed6
Remove alacritty
It is configure with home-manager in nixos repo.
2020-09-25 17:02:46 +02:00
33 changed files with 33 additions and 975 deletions

7
.gitmodules vendored
View file

@ -4,9 +4,6 @@
[submodule "home/.dynamic-colors"]
path = dynamic-colors
url = https://github.com/sos4nt/dynamic-colors
[submodule "mpv-gallery-view"]
path = mpv-gallery-view
url = https://github.com/occivink/mpv-gallery-view
[submodule "vim-plug"]
path = vim-plug
url = https://github.com/junegunn/vim-plug
@ -19,7 +16,3 @@
[submodule "zsh-nix-shell"]
path = zsh-nix-shell
url = https://github.com/chisui/zsh-nix-shell
[submodule "mpv-prescalers"]
path = mpv-prescalers
url = https://github.com/bjin/mpv-prescalers
shallow = true

View file

@ -74,6 +74,17 @@ include "%L"
<Multi_key> <percent> <0> <0> <D> : "ↇ" U2187 # ROMAN NUMERAL FIFTY THOUSAND
<Multi_key> <percent> <0> <0> <M> : "ↈ" U2188 # ROMAN NUMERAL ONE HUNDRED THOUSAND
## quotation marks
### japanese
<Multi_key> <j> <doublelowquotemark> : "「" U300C # LEFT CORNER BRACKET
<Multi_key> <j> <leftdoublequotemark> : "」" U300D # RIGHT CORNER BRACKET
<Multi_key> <j> <singlelowquotemark> : "『" U300D # LEFT WHITE CORNER BRACKET
<Multi_key> <j> <leftsinglequotemark> : "』" U300F # RIGHT WHITE CORNER BRACKET
# misc symbols
<Multi_key> <n> <s> : "卐" U5350 # CJK UNIFIED IDEOGRAPH
# symbols
<Multi_key> <Left> <Left> : "←" leftarrow # LEFTWARDS ARROW
<Multi_key> <Up> <Up> : "↑" uparrow # UPWARDS ARROW

View file

@ -1,55 +0,0 @@
font:
normal:
#family: Terminess Powerline
family: Iosevka Nerd Font
style: Regular
size: 13.5
mouse:
hide_when_typing: true
key_bindings:
- key: V
mods: Control|Alt
action: Paste
- key: C
mods: Control|Alt
action: Copy
bell:
duration: 100
# https://github.com/alacritty/alacritty/wiki/Color-schemes#solarized
colors:
# Default colors
primary:
background: '#002b36' # base03
foreground: '#839496' # base0
# Cursor colors
cursor:
text: '#002b36' # base03
cursor: '#839496' # base0
# Normal colors
normal:
black: '#073642' # base02
red: '#dc322f' # red
green: '#859900' # green
yellow: '#b58900' # yellow
blue: '#268bd2' # blue
magenta: '#d33682' # magenta
cyan: '#2aa198' # cyan
white: '#eee8d5' # base2
# Bright colors
bright:
black: '#002b36' # base03
red: '#cb4b16' # orange
green: '#586e75' # base01
yellow: '#657b83' # base00
blue: '#839496' # base0
magenta: '#6c71c4' # violet
cyan: '#93a1a1' # base1
white: '#fdf6e3' # base3

View file

@ -1,16 +0,0 @@
[calendars]
[[calendar_local]]
path = ~/.calendar/*
type = discover
[[contacts_local]]
path = ~/.contacts/d6abd3ea-3abd-7550-9f24-f06293d36a82/
type = birthdays
[locale]
timeformat = %H:%M
dateformat = %Y-%m-%d
longdateformat = %Y-%m-%d
datetimeformat = %Y-%m-%d %H:%M
longdatetimeformat = %Y-%m-%d %H:%M

View file

@ -1,26 +0,0 @@
[addressbooks]
[[personal]]
path = ~/.contacts/d6abd3ea-3abd-7550-9f24-f06293d36a82/
[general]
debug = no
default_action = list
editor = nvim, -i, NONE
merge_editor = nvim, -d
[contact table]
display = first_name
group_by_addressbook = no
reverse = no
show_nicknames = yes
show_uids = no
sort = last_name
localize_dates = yes
preferred_phone_number_type = pref, cell, home
preferred_email_address_type = pref, home, work
[vcard]
private_objects = Jabber,
preferred_version = 3.0
search_in_source_files = no
skip_unparsable = no

View file

@ -1,8 +0,0 @@
background-color=#002b36
border-color=#073642
text-color=#839496
progress-color=over #073642
group-by=app-name
default-timeout=5000

View file

@ -1,31 +0,0 @@
# audio filter bs2b (for headphones)
b af toggle "bs2b"
# toggle debanding
D cycle deband
# variable correction of audio pitch when changing speed
k cycle-values audio-pitch-correction "no" "yes"
# reverse cycling for audio and video (shift modifier on german keyboard layout)
' cycle audio down
- cycle video down
c cycle-values audio-channels stereo mono auto
# Upscaling shaders
K cycle-values glsl-shaders ~~/shaders/mpv-prescalers/compute/ravu-lite-r4.hook ~~/shaders/mpv-prescalers/compute/ravu-lite-r3.hook ~~/shaders/mpv-prescalers/compute/ravu-lite-r2.hook /dev/null
Alt+K cycle-values glsl-shaders ~~/shaders/mpv-prescalers/compute/ravu-zoom-r4-yuv.hook ~~/shaders/mpv-prescalers/compute/ravu-zoom-r3-yuv.hook ~~/shaders/mpv-prescalers/compute/ravu-zoom-r2-yuv.hook /dev/null
Alt+k cycle-values glsl-shaders ~~/shaders/mpv-prescalers/compute/nnedi3-nns256-win8x4.hook ~~/shaders/mpv-prescalers/compute/nnedi3-nns128-win8x4.hook /dev/null
Ctrl+p script-message-to pitchcontrol toggle
# more granular panning
Alt+left add video-pan-x 0.05
Alt+right add video-pan-x -0.05
Alt+up add video-pan-y 0.05
Alt+down add video-pan-y -0.05
# sub-delay for fixing 24 empty frames on blu-ray
Alt+z add sub-delay -1
Alt+Z add sub-delay +1

View file

@ -1,89 +0,0 @@
# configure fonts
osd-font = 'DINW07-Medium'
sub-font = 'Gandhi Sans'
sub-bold = yes
sub-font-size = 44
sub-use-margins = no
sub-border-size = 2
# make vobsub/PGS subtitles look nicer
sub-gauss=0.5
sub-gray=yes
# dont correct pitch of audio
#audio-pitch-correction = no
# max volume
volume-max = 150
# downmix to stereo by default
audio-channels = stereo
# i18n
#alang = ger,de,deu,eng,en
#slang = ger,de,deu,eng,en
# allow seeking in streamed media
force-seekable
# enable hardware decoding when avaliable
hwdec = auto-safe
# do not show images only one second
image-display-duration = inf
# better quality (but not too high, otherwise too high frame drop)
profile = gpu-hq
deband = no
dither-depth = auto
# screenshots
screenshot-format = png
[musicvideo]
lavfi-complex = '[aid1]asplit=4[ao][a1][a2][a3];[a1]avectorscope=m=lissajous:s=640x600:draw=dot:r=25[avectorscope];[a2]aresample=44100,showwaves=s=1280x600:mode=p2p:colors=red|lightgreen:r=25[showwaves];[a3]showcqt=s=1920x600:axis=0:axis_h=0:r=25[showcqt];[showwaves][avectorscope]hstack=shortest=1[top];[top][showcqt]vstack=shortest=1,fps=25[vo]'
alpha = no
[musicvideo-1080]
lavfi-complex = '[aid1]asplit=4[ao][a1][a2][a3];[a1]avectorscope=m=lissajous:s=640x540:draw=dot:r=25[avectorscope];[a2]aresample=44100,showwaves=s=1280x540:mode=p2p:colors=red|lightgreen:r=25[showwaves];[a3]showcqt=s=1920x540:axis=0:axis_h=0:r=25[showcqt];[showwaves][avectorscope]hstack=shortest=1[top];[top][showcqt]vstack=shortest=1,fps=25[vo]'
alpha = no
[musicvideo-c64]
lavfi-complex = '[aid1]channelsplit=4.0[mono][c1][c2][c3];[mono]channelmap=mono,asplit=2[ao][a2];[c1][c2][c3]join=inputs=3:channel_layout=3.0[a1];[a1]aresample=44100,showwaves=s=1920x600:mode=p2p:colors=red|lightgreen|yellow:split_channels=1:r=25[showwaves];[a2]showcqt=s=1920x600:axis=0:axis_h=0:r=25[showcqt];[showwaves][showcqt]vstack=shortest=1,fps=25,format=rgba[vo]'
alpha = no
[hqencode]
ovc = libx264
ovcopts-add = crf=18
oac = flac
audio-format = s16
[rain]
lavfi-complex = 'amovie=https\\://s3.sbruder.de/cdn/rain.opus,volume=0.5[rain];[aid1][rain]amix=2:duration=shortest[ao]'
[lq]
scale = bicubic_fast
cscale = bicubic_fast
dscale = bicubic_fast
[hq]
scale = ewa_lanczossharp
dscale = ewa_lanczossharp
cscale = ewa_lanczossharp
glsl-shader=~~/shaders/mpv-prescalers/compute/nnedi3-nns256-win8x4.hook
glsl-shader=~~/shaders/mpv-prescalers/compute/ravu-zoom-r4-chroma.hook
[interpolate]
blend-subtitles = yes
video-sync = display-resample
interpolation = yes
tscale = box
tscale-window = sphinx
tscale-radius = 1.0
tscale-clamp = 0.0
[clear-speed]
# https://github.com/mpv-player/mpv/issues/4418#issuecomment-368272929
af-add = scaletempo=stride=28:overlap=.9:search=25

View file

@ -1 +0,0 @@
thumbs_dir=~/.cache/thumbnails/mpv

View file

@ -1,4 +0,0 @@
font=DINW07-Regular
font_mono=DINW07-Regular
font_size=10
redraw_delay=0.25

View file

@ -1 +0,0 @@
../../../../mpv-gallery-view/scripts/gallery-thumbgen.lua

View file

@ -1 +0,0 @@
../../../../mpv-gallery-view/scripts/gallery-thumbgen.lua

View file

@ -1 +0,0 @@
../../../../mpv-gallery-view/scripts/gallery-thumbgen.lua

View file

@ -1 +0,0 @@
../../../../mpv-gallery-view/scripts/gallery-thumbgen.lua

View file

@ -1 +0,0 @@
../../../../../mpv-gallery-view/scripts/lib/gallery.lua

View file

@ -1,33 +0,0 @@
require 'mp.options'
function handle_file_load ()
if mp.get_property("metadata/by-key/artist") == nil and mp.get_property("metadata/by-key/title") == nil then
-- media-title is filename if no title is set
if mp.get_property("media-title") ~= mp.get_property("filename") then
info = mp.get_property("media-title")
else
info = mp.get_property("filename/no-ext")
end
else
info = mp.get_property("metadata/by-key/artist") .. " " .. mp.get_property("metadata/by-key/title")
end
-- check for youtube-dl
if mp.get_property("stream-open-filename") ~= mp.get_property("path") then
info = info .. "\n(" .. mp.get_property("path") .. ")"
end
file = io.open(options.write, "w")
io.output(file)
io.write(info .. "\n")
io.close(file)
end
options = {
write = "",
}
read_options(options)
if options.write ~= "" then
mp.register_event("file-loaded", handle_file_load)
end

View file

@ -1,95 +0,0 @@
-- pitchcontrol.lua
--
-- Version: 0.2.0
-- URL: https://github.com/FichteFoll/mpv-scripts
-- License: ISC
-- Commands for key bindings:
--
-- * script-message-to pitchcontrol increase
-- Increase pitch by one half-tone. Bound to Alt+R.
-- * script-message-to pitchcontrol decrease
-- Increase pitch by one half-tone. Bound to Alt+r.
-- * script-message-to pitchcontrol toggle
-- Toggle pitching.
-- * script-message-to pitchcontrol set_halftone_pitch <number>
-- Sets pitch to <number> half-tones - positive, negative or 0.
-- Copyright 2016-2017 FichteFoll
--
-- Permission to use, copy, modify, and/or distribute this software for any
-- purpose with or without fee is hereby granted, provided that the above
-- copyright notice and this permission notice appear in all copies.
--
-- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
-- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
-- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
-- SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
-- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
-- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR
-- IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
local utils = require 'mp.utils'
local msg = require('mp.msg')
local options = require('mp.options')
local script_name = mp.get_script_name() -- "pitchcontrol"
local HALFTONE_SCALE = math.pow(2, 1.0/12) -- 1.059463094352953
local RUBBERBAND_LABEL = string.format("%s-rubberband", script_name)
local current_pitch = 0
local active = false
function set_halftone_pitch(pitch, activate)
if activate == nil then
activate = true
end
pitch = tonumber(pitch)
local pitch_scale = math.pow(HALFTONE_SCALE, pitch)
if active then
mp.commandv('af-command', RUBBERBAND_LABEL, 'set-pitch', pitch_scale)
elseif activate then
mp.command(("af add @%s:rubberband=pitch-scale=%s"):format(RUBBERBAND_LABEL, pitch_scale))
active = true
else
mp.osd_message(("'%s' is inactive"):format(script_name))
return
end
current_pitch = pitch
-- output new pitch
msg.debug(("new pitch-scale: %f"):format(pitch_scale))
mp.osd_message(("Pitch: %+d halftones"):format(pitch))
end
function increase_handler()
set_halftone_pitch(current_pitch + 1, false)
end
function decrease_handler()
set_halftone_pitch(current_pitch - 1, false)
end
function toggle_handler()
if active then
mp.command(("af del @%s"):format(RUBBERBAND_LABEL))
mp.osd_message(("'%s' deactivated"):format(script_name))
active = false
else
set_halftone_pitch(current_pitch, true)
end
end
mp.add_key_binding("Alt+p", 'increase', decrease_handler)
mp.add_key_binding("Alt+P", 'decrease', increase_handler)
mp.register_script_message('toggle', toggle_handler)
mp.register_script_message('set_halftone_pitch', set_halftone_pitch)

View file

@ -1 +0,0 @@
../../../../mpv-gallery-view/scripts/playlist-view.lua

View file

@ -1 +0,0 @@
../../../../mpv-prescalers

View file

@ -43,9 +43,8 @@ endif
call plug#begin('~/.local/share/nvim/plugged')
" Multi-entry selection UI
Plug 'junegunn/fzf', { 'tag': trim(system('fzf --version')) }
" FIXME: update once nixpkgs stable has fzf ≥ 0.23
Plug 'junegunn/fzf.vim', { 'commit': '0fe8e198a3a501b54dbc4f9587526c097599f95a' }
Plug 'junegunn/fzf'
Plug 'junegunn/fzf.vim'
" Per-project settings
Plug 'editorconfig/editorconfig-vim'
@ -87,9 +86,6 @@ Plug 'Xuyuanp/nerdtree-git-plugin'
" Icons for NERDTree and airline
Plug 'ryanoasis/vim-devicons'
" Git integration
Plug 'tpope/vim-fugitive'
" Intra word motion
Plug 'chaoren/vim-wordmotion'
@ -111,12 +107,11 @@ Plug 'autozimu/LanguageClient-neovim', {
\ }
let g:LanguageClient_serverCommands = {
\ 'rust': ['nix-shell', '--quiet', '-p', 'rls', '--run', 'rls'],
\ 'go': ['nix-shell', '--quiet', '-p', 'gopls', '--run', 'gopls'],
\ 'python': ['nix-shell', '--quiet', '-p', 'python38Packages.python-language-server', '--run', 'pyls'],
\ 'typescript': ['nix-shell', '--quiet', '-p', 'nodePackages.javascript-typescript-langserver', '--run', 'javascript-typescript-stdio'],
\ 'javascript': ['nix-shell', '--quiet', '-p', 'nodePackages.javascript-typescript-langserver', '--run', 'javascript-typescript-stdio'],
\ 'haskell': ['nix-shell', '--quiet', '-p', 'haskellPackages.haskell-language-server', '--run', 'haskell-language-server --lsp'],
\ 'rust': ['rustup', 'run', 'stable', 'rls'],
\ 'go': ['gopls'],
\ 'python': ['pyls'],
\ 'typescript': ['docker', 'run', '--rm', '--init', '-i', '-v', '$HOME:$HOME:ro', '--network=none', 'r.sbruder.de/javascript-typescript-langserver'],
\ 'javascript': ['docker', 'run', '--rm', '--init', '-i', '-v', '$HOME:$HOME:ro', '--network=none', 'r.sbruder.de/javascript-typescript-langserver'],
\ }
let g:LanguageClient_loggingFile = '~/.local/share/nvim/LanguageClient.log'
@ -141,7 +136,7 @@ let g:rust_fold = 1
map <Leader>rt :RustTest<CR>
" Black (python formatter)
Plug 'psf/black', { 'commit': '1d3fb871bec82d1263940ba1d32095d660fea2ab', 'for': 'python' }
Plug 'psf/black', { 'branch': 'stable', 'for': 'python' }
" LaTeX helpers
Plug 'lervag/vimtex'
@ -156,7 +151,6 @@ let g:vimtex_syntax_autoload_packages = [
let g:vimtex_quickfix_ignore_filters = [
\'Underfull \\hbox (badness [0-9]*) in ',
\'Overfull \\hbox ([0-9]*.[0-9]*pt too wide) in ',
\'Overfull \\vbox ([0-9]*.[0-9]*pt too high) detected ',
\'Package hyperref Warning: Token not allowed in a PDF string',
\'Package typearea Warning: Bad type area settings!',
\]

View file

@ -1,191 +0,0 @@
# vim: set ts=4 sw=4 sts=4:
set $mod Mod4
set $left h
set $down j
set $up k
set $right l
set $term alacritty
# Symlink to the current wallpaper
set $wallpaper $HOME/.config/sway/wallpaper
set $menu dmenu-wl_path | dmenu-wl -nb "#002b36" -nf "#839496" -sb "#859900" -sf "#073642" | xargs swaymsg exec --
# Outputs
output * bg $wallpaper fill
# FIXME: maybe use kanshi
output eDP-1 resolution 1920x1080 position 0,424
output "Dell Inc. DELL U2410 F525M0A104NL" resolution 1920x1200 position 1920,0
# Inputs
input type:keyboard {
xkb_layout de
xkb_options compose:caps
xkb_numlock enable
}
# Idle
exec swayidle -w \
timeout 300 "swaylock -f -i $wallpaper" \
timeout 300 'swaymsg "output * dpms off"' \
resume 'swaymsg "output * dpms on"' \
before-sleep "swaylock -f -i $wallpaper"
# Key bindings
# Basics
bindsym $mod+Return exec $term
bindsym $mod+Shift+c kill
bindsym $mod+r exec $menu
floating_modifier $mod normal
bindsym $mod+Control+r reload
bindsym $mod+Shift+q exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
# Focus
bindsym $mod+$left focus left
bindsym $mod+$down focus down
bindsym $mod+$up focus up
bindsym $mod+$right focus right
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# Moving
bindsym $mod+Shift+$left move left
bindsym $mod+Shift+$down move down
bindsym $mod+Shift+$up move up
bindsym $mod+Shift+$right move right
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# Workspaces
bindsym $mod+1 workspace 1
bindsym $mod+2 workspace 2
bindsym $mod+3 workspace 3
bindsym $mod+4 workspace 4
bindsym $mod+5 workspace 5
bindsym $mod+6 workspace 6
bindsym $mod+7 workspace 7
bindsym $mod+8 workspace 8
bindsym $mod+9 workspace 9
bindsym $mod+0 workspace 10
bindsym $mod+Shift+1 move container to workspace 1
bindsym $mod+Shift+2 move container to workspace 2
bindsym $mod+Shift+3 move container to workspace 3
bindsym $mod+Shift+4 move container to workspace 4
bindsym $mod+Shift+5 move container to workspace 5
bindsym $mod+Shift+6 move container to workspace 6
bindsym $mod+Shift+7 move container to workspace 7
bindsym $mod+Shift+8 move container to workspace 8
bindsym $mod+Shift+9 move container to workspace 9
bindsym $mod+Shift+0 move container to workspace 10
# Moving workspaces between outputs
bindsym $mod+Control+$left move workspace to output left
bindsym $mod+Control+$down move workspace to output down
bindsym $mod+Control+$up move workspace to output up
bindsym $mod+Control+$right move workspace to output right
bindsym $mod+Control+Left move workspace to output left
bindsym $mod+Control+Down move workspace to output down
bindsym $mod+Control+Up move workspace to output up
bindsym $mod+Control+Right move workspace to output right
# open next window as (vertical/horizontal) split
bindsym $mod+b splith
bindsym $mod+v splitv
# layouts
bindsym $mod+s layout stacking
bindsym $mod+t layout tabbed
bindsym $mod+e layout toggle split
bindsym $mod+f fullscreen
bindsym $mod+Control+space floating toggle
# switch focus to tiling/floating
bindsym $mod+space focus mode_toggle
bindsym $mod+a focus parent
# Scratchpad
bindsym $mod+Shift+minus move scratchpad
# show/hide/cycle scratchpad windows
bindsym $mod+minus scratchpad show
# Resizing
mode "resize" {
bindsym $left resize shrink width 10px
bindsym $down resize grow height 10px
bindsym $up resize shrink height 10px
bindsym $right resize grow width 10px
bindsym Left resize shrink width 10px
bindsym Down resize grow height 10px
bindsym Up resize shrink height 10px
bindsym Right resize grow width 10px
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+d mode "resize"
# Multimedia Keys
bindsym XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle
bindsym XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle
bindsym --locked XF86MonBrightnessDown exec brightnessctl set 5%-
bindsym --locked XF86MonBrightnessUp exec brightnessctl set +5%
bindsym XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5%
bindsym XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5%
bindsym XF86AudioPrev exec mpc next
bindsym XF86AudioNext exec mpc prev
bindsym XF86AudioPlay exec mpc toggle
bindsym $mod+y exec "swaylock -f -i $wallpaper"
bindsym --locked $mod+q exec 'test $(swaymsg -t get_outputs | jq "[.[].dpms] | any") = "true" && swaymsg "output * dpms off" || swaymsg "output * dpms on"'
# Status Bar
bar {
swaybar_command waybar
}
# Window rules (native: by app_id, xwayland legacy: by class)
assign [app_id="firefox"] 2
#assign [class="Chromium"] 2
assign [app_id="net.sourceforge.mumble."] 3
assign [class="Claws-mail"] 3
assign [app_id="anki"] 4
assign [app_id="libreoffice-startcenter"] 4
assign [app_id="net.sourceforge.gscan2pdf"] 4
assign [app_id="org.pwmt.zathura"] 4
assign [app_id="xournalpp"] 4
assign [app_id="audacious"] 5
assign [app_id="pavucontrol"] 5
assign [app_id="darktable"] 8
assign [app_id="org.inkscape.Inkscape"] 8
assign [class="Blender"] 8
assign [class="Gimp"] 8
assign [class="krita"] 8
# Window borders
default_border pixel 1
client.focused "#93a1a1" "#073642" "#93a1a1" "#2aa198"
client.focused_inactive "#839496" "#002b36" "#839496" "#2aa198"
client.unfocused "#839496" "#002b36" "#839496" "#2aa198"
client.urgent "#073642" "#dc322f" "#073642" "#2aa198"
# Cursor
seat seat0 xcursor_theme Adwaita
# Autostart
exec mako

View file

@ -1,163 +0,0 @@
// vim: set ft=json:
// not actually json, but better than nothing
{
"layer": "top",
"position": "top",
"height": 24, // Waybar height (to be removed for auto height)
// Position/Order of modules
"modules-left": [
"sway/workspaces",
"sway/mode"
],
"modules-center": [],
"modules-right": [
"tray",
"custom/redshift",
"idle_inhibitor",
"backlight",
"mpd",
"pulseaudio",
"network",
"custom/vpn",
"network#speed",
"memory",
"cpu",
"temperature",
"battery",
"clock"
],
// Modules configuration
"sway/workspaces": {
"disable-scroll": true
},
"sway/mode": {
"format": "{}"
},
"mpd": {
"format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ",
"format-disconnected": "Disconnected ",
"format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon}Stopped ",
"unknown-tag": "N/A",
"interval": 2,
"consume-icons": {
"on": " "
},
"random-icons": {
"off": "劣 ",
"on": "列 "
},
"repeat-icons": {
"on": "凌 "
},
"single-icons": {
"on": "綾 "
},
"state-icons": {
"paused": "",
"playing": "契"
},
"tooltip-format": "MPD (connected)",
"tooltip-format-disconnected": "MPD (disconnected)"
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": " ",
"deactivated": " "
}
},
"tray": {
// "icon-size": 21,
"spacing": 5
},
"clock": {
"format": "{:%H:%M %Z}",
"format-alt": "{:%Y-%m-%d (%a)}",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>"
},
"cpu": {
"interval": 2,
"format": "{usage:2}% ﬙ ",
"tooltip": false
},
"memory": {
"interval": 2,
"format": "{:2}%  "
},
"temperature": {
"critical-threshold": 80,
"format": "{temperatureC}°C {icon}",
"format-icons": ["", "", "", "", ""]
},
"backlight": {
"format": "{percent}% {icon}",
"format-icons": [" ", " ", " ", " ", " ", " ", " "],
"on-scroll-up": "brightnessctl set +5%",
"on-scroll-down": "brightnessctl set 5%-"
},
"battery": {
"interval": 5,
"states": {
"good": 95,
"warning": 30,
"critical": 15
},
"format": "{capacity}% {icon}",
"format-charging": "{capacity}% ",
"format-plugged": "{capacity}% ﮣ",
"format-alt": "{time} {icon}",
"format-icons": ["", "", "", "", "", "", "", "", "", "", ""]
},
"network": {
"format-wifi": "{essid} ({signalStrength}%) 直 ",
"format-ethernet": "{ifname}: {ipaddr}/{cidr}  ",
"format-linked": "{ifname} (No IP)  ",
"format-disconnected": "Disconnected ⚠ ",
"format-alt": "{ifname}: {ipaddr}/{cidr}",
"tooltip": false,
"on-click-right": "alacritty -e nmtui"
},
"network#speed": {
"interval": 2,
"format": "{bandwidthDownBits:>8}  {bandwidthUpBits:>8} 祝",
"format-alt": "{bandwidthDownOctets:>8}  {bandwidthUpOctets:>8} 祝",
"format-disconnected": " 0b/s 祝 0b/s",
"tooltip": false
},
"pulseaudio": {
"format": "{volume}% {icon} {format_source}",
"format-bluetooth": "{volume}% {icon} {format_source}",
"format-bluetooth-muted": "遼 {icon} {format_source}", // FIXME: see below
"format-muted": "遼 {format_source}", // FIXME: use normal mute icon (ﱝ ), which for some reason is displayed right of the source?
"format-source": "{volume}% \u2009",
"format-source-muted": "\u2009",
"format-icons": {
"headphone": " ",
"hands-free": " ",
"headset": " ",
"phone": " ",
"portable": " ",
"car": " ",
"default": ["奄", "奔", "墳"]
},
"on-click": "pavucontrol"
},
"custom/vpn": {
"interval": 10,
"exec": "ip -j link | jq --unbuffered --compact-output '[[.[].ifname | select(. | startswith(\"mullvad\"))][] | split(\"-\")[1] + \" \u2009\"] as $conns | { text: ($conns[0] // \"\"), class: (if $conns | length > 0 then \"connected\" else \"disconnected\" end) }'",
"return-type": "json",
"format": "{}",
"tooltip": false
},
"custom/redshift": {
"interval": 10,
"exec": "systemctl --user show redshift | grep -q ActiveState=active && echo '{\"tooltip\": \"Redshift active\", \"class\": \"active\"}' || echo '{\"tooltip\": \"Redshift inactive\", \"class\": \"inactive\"}'",
"on-click": "systemctl --user show redshift | grep -q ActiveState=active && systemctl --user stop redshift || systemctl --user start redshift",
"return-type": "json",
"format": "",
"tooltip": false
}
}

View file

@ -1,153 +0,0 @@
* {
border-radius: 0;
border: none;
font-family: "Iosevka Nerd Font";
font-size: 12px;
min-height: 0;
transition-property: none;
}
window#waybar {
background-color: #002b36;
color: #839496;
}
#workspaces button {
padding: 0 5px;
background-color: #002b36;
color: inherit;
border-bottom: 2px solid transparent;
}
#workspaces button:hover {
background: #073642;
box-shadow: inherit;
text-shadow: inherit;
}
#workspaces button.focused {
border-bottom: 2px solid #859900;
}
#workspaces button.urgent {
background-color: #dc322f;
}
#mode {
background-color: #073642;
font-style: italic;
}
/* all modules on the right */
#waybar > box > box:nth-child(3) > widget > label {
padding: 0 10px;
}
#battery.charging {
color: #073642;
background-color: #859900;
}
@keyframes blink {
to {
background-color: #fdf6e3;
color: #657b83;
}
}
#battery.critical:not(.charging),
#temperature.critical {
background-color: #dc322f;
animation-name: blink;
animation-duration: 0.5s;
/* FIXME use nearest neighbor interpolation if possible */
animation-timing-function: cubic-bezier(1, 0, 0, 1);
animation-iteration-count: infinite;
animation-direction: alternate;
}
#cpu {
background-color: #2aa198;
color: #073642
}
#memory {
background-color: #b58900;
color: #073642
}
#backlight {
background-color: #fdf6e3;
color: #657b83;
}
#network {
background-color: #6c71c4;
color: #073642
}
#custom-vpn {
background-color: #268bd2;
color: #073642
}
#network.disconnected {
background-color: #dc322f;
}
#network.speed {
background-color: #859900;
}
#pulseaudio {
background-color: #fdf6e3;
color: #657b83;
}
#pulseaudio.muted {
background-color: #002b36;
color: #839496;
}
#temperature {
background-color: #d33682;
color: #073642;
}
#idle_inhibitor.activated {
background-color: #fdf6e3;
color: #002b36;
}
#mpd {
background-color: #859900;
color: #073642;
}
#mpd.disconnected {
background-color: #dc322f;
}
#mpd.stopped {
background-color: #cb4b16;
}
#mpd.paused {
background-color: #b58900;
}
#custom-redshift {
color: #073642;
}
#custom-redshift.active {
background-color: #dc322f;
}
#custom-redshift.inactive {
background-color: #268bd2;
}
#tray {
padding: 0 5px;
}

View file

@ -1,40 +0,0 @@
set selection-clipboard "clipboard"
map <C-j> set page-right-to-left
# Base16 Solarized Dark
# Author: Ethan Schoonover (modified by aramisgithub)
# Source: https://github.com/nicodebo/base16-zathura (modified)
set default-bg "#002b36"
set default-fg "#002b36"
set statusbar-fg "#839496"
set statusbar-bg "#073642"
set inputbar-bg "#002b36"
set inputbar-fg "#fdf6e3"
set notification-bg "#002b36"
set notification-fg "#fdf6e3"
set notification-error-bg "#002b36"
set notification-error-fg "#dc322f"
set notification-warning-bg "#002b36"
set notification-warning-fg "#dc322f"
set highlight-color "#b58900"
set highlight-active-color "#859900"
set completion-bg "#073642"
set completion-fg "#859900"
set completion-highlight-fg "#fdf6e3"
set completion-highlight-bg "#859900"
set recolor-lightcolor "#002b36"
set recolor-darkcolor "#839496"
set recolor "false"
set recolor-keephue "false"

View file

@ -2,35 +2,15 @@
name = Simon Bruder
email = simon@sbruder.de
signingkey = 51276B7B829AF24674F2AA716F03E0000CC5B62F
[commit]
gpgsign = true
[core]
excludesfile = ~/.gitignore
pager = delta
quotepath = off
[filter "lfs"]
process = git-lfs filter-process
required = true
clean = git-lfs clean -- %f
smudge = git-lfs smudge -- %f
[pull]
ff = only
[interactive]
diffFilter = delta --color-only
[delta]
line-numbers = true
side-by-side = true
decorations = true
features = decorations
syntax-theme = base16
[delta "decorations"]
commit-decoration-style = bold yellow box ul
file-style = bold yellow ul
file-decoration-style = none

View file

@ -1,13 +0,0 @@
import anki.sync
import anki.hooks
import aqt
anki.sync.SYNC_BASE = "https://anki.sbruder.de/%s"
anki.sync.SYNC_MEDIA_BASE = "https://anki.sbruder.de/msync%s"
def resetHostNum():
aqt.mw.pm.profile["hostNum"] = None
anki.hooks.addHook("profileLoaded", resetHostNum)

3
home/.xprofile Normal file
View file

@ -0,0 +1,3 @@
export GTK_IM_MODULE=ibus
export XMODIFIERS=@im=ibus
export QT_IM_MODULE=ibus

View file

@ -1,8 +1,11 @@
GOPATH="$HOME/go"
path=(
~/bin
~/.local/bin
$path
~/.cargo/bin
$GOPATH/bin
)
# Force antialiasing in java

View file

@ -81,7 +81,6 @@ function vapoursynth() {
--group-add $(getent group video|cut -d: -f3) \
--group-add $(getent group render|cut -d: -f3) \
--device /dev/dri \
--device /dev/kfd \
r.sbruder.de/vapoursynth \
$@
}
@ -97,7 +96,6 @@ function yuuno() {
--group-add $(getent group video|cut -d: -f3) \
--group-add $(getent group render|cut -d: -f3) \
--device /dev/dri \
--device /dev/kfd \
r.sbruder.de/vapoursynth \
jupyter notebook --ip 0.0.0.0 --port 8087
}

View file

@ -13,10 +13,6 @@ alias vim="nvim"
alias vimdiff="nvim -d"
alias userctl="systemctl --user"
## homeshick
source "$HOME/.homesick/repos/homeshick/homeshick.sh"
fpath=($HOME/.homesick/repos/homeshick/completions $fpath)
## Debian packages fd as fdfind
command -v fdfind >/dev/null && alias fd="fdfind"
@ -103,7 +99,7 @@ function nixify() {
{ pkgs ? import <nixpkgs> {} }:
pkgs.mkShell {
buildInputs = with pkgs; [
nativeBuildInputs = with pkgs; [
];
}
EOF

7
home/.zshrc.pre Normal file
View file

@ -0,0 +1,7 @@
## homeshick
source "$HOME/.homesick/repos/homeshick/homeshick.sh"
fpath=($HOME/.homesick/repos/homeshick/completions $fpath)
## completions
mkdir -p ~/.zfunc
fpath+=~/.zfunc

@ -1 +0,0 @@
Subproject commit 5139d346de67e8dbee8c8983777026502d6bc627

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