Compare commits
35 Commits
be733bbcba
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
| 3ff0adcbf3 | |||
| c6705a2229 | |||
| 41e9336603 | |||
| 93473be663 | |||
| 912afb5576 | |||
| 913de0fa24 | |||
| 1d1cabbd38 | |||
| 75b08a39f6 | |||
| af4e2d4364 | |||
| 5b12de7672 | |||
| 144ea8b936 | |||
| 6ec0d320c3 | |||
| f81face7de | |||
| 1fbd656840 | |||
| eabfa84c6a | |||
| 10ff2034bb | |||
| 04273c2422 | |||
| 522854ab3d | |||
| 1c8133c827 | |||
| d933b8a830 | |||
| 34451575a9 | |||
| 2ba88ea838 | |||
| 4aa6e57064 | |||
| 037b8321d6 | |||
| e7ece8748b | |||
| 13baa5f8ce | |||
| b082cc00b2 | |||
| 9c6ecfce28 | |||
| eb7a79a758 | |||
| 5fc158cf12 | |||
| 135b6c5ea3 | |||
| e3a67128fa | |||
| 715d630ff7 | |||
| 438051159a | |||
| ec76425031 |
5
.bashrc
5
.bashrc
@@ -4,3 +4,8 @@
|
||||
if [ -f "$HOME/.bashrc.kuba" ]; then
|
||||
. "$HOME/.bashrc.kuba"
|
||||
fi
|
||||
|
||||
# Settings not included in dotfiles repo
|
||||
if [ -f "$HOME/.bashrc.local" ]; then
|
||||
. "$HOME/.bashrc.local"
|
||||
fi
|
||||
|
||||
73
.bashrc.kuba
73
.bashrc.kuba
@@ -35,40 +35,6 @@ complete -o bashdefault -o default -o nospace -F __git_wrap__git_main dotfiles
|
||||
# Define a OS X-like open command
|
||||
open() { command xdg-open "$@" > /dev/null 2>&1 & }
|
||||
|
||||
# Inspect .npz files
|
||||
npz_py_str="$(cat << EOM
|
||||
from sys import argv
|
||||
import numpy as np
|
||||
try:
|
||||
import matplotlib.pyplot as plt
|
||||
print('Imported matplotlib.pyplot as plt')
|
||||
except ImportError:
|
||||
pass
|
||||
|
||||
class Wrap:
|
||||
def __init__(self, fname):
|
||||
n = np.load(fname, allow_pickle=True)
|
||||
files = n.files
|
||||
globs = globals()
|
||||
print('Contains files', files)
|
||||
for f in files:
|
||||
setattr(self, f, n[f])
|
||||
globs[f] = n[f]
|
||||
|
||||
archive = Wrap(argv[1])
|
||||
print('Global namespace populated with "archive" and all files')
|
||||
EOM
|
||||
)"
|
||||
|
||||
npz_preview() {
|
||||
if [ $# -lt 1 ]; then
|
||||
echo "Please specify file to open as argument"
|
||||
return
|
||||
fi
|
||||
|
||||
python -ic "$npz_py_str" "$1"
|
||||
}
|
||||
|
||||
# Source git prompt
|
||||
source_existing ~/scripts/git-prompt.sh
|
||||
source_existing ~/.bash_prompt.kuba
|
||||
@@ -76,30 +42,25 @@ source_existing ~/.bash_prompt.kuba
|
||||
# Activate python virtualenv
|
||||
source_existing ~/.python-venv.kuba/bin/activate
|
||||
|
||||
# Source lmod module setup
|
||||
source_existing /usr/share/lmod/lmod/init/profile
|
||||
if command -v ipython &> /dev/null; then
|
||||
alias p="ipython --pylab"
|
||||
elif command -v python &> /dev/null; then
|
||||
alias p=python
|
||||
fi
|
||||
|
||||
complete -o default -C "python ~/.python-venv.kuba/lib/python3.9/site-packages/myqueue/complete.py" mq
|
||||
complete -o bashdefault -C snakemake-bash-completion snakemake
|
||||
|
||||
case $(hostname) in
|
||||
vera* )
|
||||
if [ -z "$DONT_LOAD_LMOD" ]; then
|
||||
if [ -e /usr/share/lmod/lmod/init/profile ]; then
|
||||
# Source lmod module setup
|
||||
. /usr/share/lmod/lmod/init/profile
|
||||
|
||||
module use "$HOME/.modules.kuba/"
|
||||
module load iccifort/2019.5.281
|
||||
module load impi/2018.5.288
|
||||
module load imkl/2019.5.281
|
||||
module load Python/3.7.4
|
||||
module load clusterappl
|
||||
module load slurm-aliases
|
||||
;;
|
||||
tetralith* )
|
||||
module use "$HOME/.modules.kuba/"
|
||||
module load Python/3.6.3-anaconda-5.0.1-nsc1
|
||||
module load clusterappl
|
||||
;;
|
||||
* )
|
||||
if [ -e /usr/share/lmod/lmod/init/profile ]; then
|
||||
module use "$HOME/.modules.kuba/"
|
||||
module use "$HOME/git/auto-venv-setup/lmod-modules/"
|
||||
fi
|
||||
esac
|
||||
module use "$HOME/git/auto-venv-setup/lmod-modules/"
|
||||
module load tools
|
||||
else
|
||||
# lmod does not exist
|
||||
source $HOME/.modules.kuba/.tools.sh
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -1,12 +0,0 @@
|
||||
[$Version]
|
||||
update_info=okular.upd:annotation-toolbar,okular.upd:builtin-annotations
|
||||
|
||||
[Identity]
|
||||
IdentityAuthor=Jakub Fojt
|
||||
|
||||
[Main View]
|
||||
SplitterSizes=145,719
|
||||
|
||||
[Reviews]
|
||||
BuiltinAnnotationTools=<tool name="Yellow Highlighter" type="highlight" id="1"><engine type="TextSelector" color="#fff9f06b"><annotation type="Highlight" opacity="0.5" color="#fff9f06b"/></engine><shortcut>2</shortcut></tool>,<tool type="underline" id="2"><engine type="TextSelector" color="#ff0000"><annotation type="Underline" color="#ffff0000"/></engine></tool>,<tool type="squiggly" id="3"><engine type="TextSelector" color="#ff0000"><annotation type="Squiggly" color="#ffff0000"/></engine></tool>,<tool type="strikeout" id="4"><engine type="TextSelector" color="#ff0000"><annotation type="StrikeOut" color="#ffff0000"/></engine></tool>,<tool name="Totalpoäng" type="typewriter" id="5"><engine type="PickPoint" block="true"><annotation textColor="#1a5fb4" type="Typewriter" color="#00ffffff" width="0" font="Cantarell\\,26\\,-1\\,5\\,50\\,0\\,0\\,0\\,0\\,0"/></engine></tool>,<tool type="note-inline" id="6"><engine hoverIcon="tool-note-inline" type="PickPoint" block="true" color="#ffff00"><annotation textColor="#ff000000" type="FreeText" color="#ffffff00"/></engine></tool>,<tool name="Yellow popup note" type="note-linked" id="7"><engine hoverIcon="tool-note" type="PickPoint" color="#fff9f06b"><annotation icon="Comment" type="Text" color="#fff9f06b"/></engine><shortcut>8</shortcut></tool>,<tool type="ink" id="8"><engine type="SmoothLine" color="#00ff00"><annotation type="Ink" color="#ff00ff00" width="2"/></engine></tool>,<tool name="Arrow" type="straight-line" id="9"><engine type="PolyLine" color="#000000" points="2"><annotation type="Line" endStyle="3" color="#ff000000" width="2"/></engine></tool>,<tool type="straight-line" id="10"><engine type="PolyLine" color="#000000" points="2"><annotation type="Line" color="#ff000000" width="2"/></engine></tool>,<tool name="Yellow transparent fill" type="rectangle" id="11"><engine type="PickPoint" block="true" color="#fff9f06b"><annotation type="GeomSquare" opacity="0.5" color="#fff9f06b" innerColor="#f9f06b" width="5"/></engine><shortcut>5</shortcut></tool>,<tool name="Green transparent fill" type="ellipse" id="12"><engine type="PickPoint" block="true" color="#ff33d17a"><annotation type="GeomCircle" opacity="0.5" color="#ff33d17a" innerColor="#33d17a" width="5"/></engine><shortcut>6</shortcut></tool>,<tool type="polygon" id="13"><engine type="PolyLine" color="#007eee" points="-1"><annotation type="Line" color="#ff007eee" width="2"/></engine></tool>,<tool type="stamp" id="14"><engine hoverIcon="Sold" type="PickPoint" block="true" size="64"><annotation icon="Sold" type="Stamp"/></engine></tool>
|
||||
QuickAnnotationTools=<tool id="1" name="Red highlighter" type="highlight"><engine type="TextSelector" color="#fff66151"><annotation opacity="0.5" type="Highlight" color="#fff66151"/></engine><shortcut>1</shortcut></tool>,<tool id="2" name="Yellow Highlighter" type="highlight"><engine type="TextSelector" color="#fff9f06b"><annotation opacity="0.5" type="Highlight" color="#fff9f06b"/></engine><shortcut>2</shortcut></tool>,<tool id="3" name="Green Highlighter" type="highlight"><engine type="TextSelector" color="#ff8ff0a4"><annotation opacity="0.5" type="Highlight" color="#ff8ff0a4"/></engine><shortcut>3</shortcut></tool>,<tool id="4" name="Red transparent fill" type="rectangle"><engine block="true" type="PickPoint" color="#fff66151"><annotation width="5" innerColor="#f66151" opacity="0.5" type="GeomSquare" color="#fff66151"/></engine><shortcut>4</shortcut></tool>,<tool id="5" name="Yellow transparent fill" type="rectangle"><engine block="true" type="PickPoint" color="#fff9f06b"><annotation width="5" innerColor="#f9f06b" opacity="0.5" type="GeomSquare" color="#fff9f06b"/></engine><shortcut>5</shortcut></tool>,<tool id="6" name="Green transparent fill" type="rectangle"><engine block="true" type="PickPoint" color="#ff8ff0a4"><annotation width="5" innerColor="#8ff0a4" opacity="0.5" type="GeomSquare" color="#ff8ff0a4"/></engine><shortcut>6</shortcut></tool>,<tool id="7" name="Red popup note" type="note-linked"><engine hoverIcon="tool-note" type="PickPoint" color="#fff66151"><annotation icon="Comment" type="Text" color="#fff66151"/></engine><shortcut>7</shortcut></tool>,<tool id="8" name="Yellow popup note" type="note-linked"><engine hoverIcon="tool-note" type="PickPoint" color="#fff9f06b"><annotation icon="Comment" type="Text" color="#fff9f06b"/></engine><shortcut>8</shortcut></tool>,<tool id="9" name="Green pop-up note" type="note-linked"><engine hoverIcon="tool-note" type="PickPoint" color="#ff8ff0a4"><annotation icon="Comment" type="Text" color="#ff8ff0a4"/></engine><shortcut>9</shortcut></tool>,<tool id="10" type="note-inline"><engine hoverIcon="tool-note-inline" block="true" type="PickPoint" color="#ffff00"><annotation textColor="#ff000000" type="FreeText" color="#ffffff00"/></engine></tool>,<tool id="11" name="Insert Text" type="typewriter"><engine block="true" type="PickPoint"><annotation width="0" textColor="#000000" type="Typewriter" color="#00ffffff"/></engine></tool>,<tool id="12" name="Totalpoäng" type="typewriter"><engine block="true" type="PickPoint"><annotation width="0" textColor="#1a5fb4" type="Typewriter" font="Cantarell\\,26\\,-1\\,5\\,50\\,0\\,0\\,0\\,0\\,0" color="#00ffffff"/></engine></tool>,<tool id="13" type="underline"><engine type="TextSelector" color="#ff0000"><annotation type="Underline" color="#ffff0000"/></engine></tool>
|
||||
433
.config/picom.conf
Normal file
433
.config/picom.conf
Normal file
@@ -0,0 +1,433 @@
|
||||
#################################
|
||||
# Shadows #
|
||||
#################################
|
||||
|
||||
|
||||
# Enabled client-side shadows on windows. Note desktop windows
|
||||
# (windows with '_NET_WM_WINDOW_TYPE_DESKTOP') never get shadow,
|
||||
# unless explicitly requested using the wintypes option.
|
||||
#
|
||||
# shadow = false
|
||||
shadow = true;
|
||||
|
||||
# The blur radius for shadows, in pixels. (defaults to 12)
|
||||
# shadow-radius = 12
|
||||
shadow-radius = 7;
|
||||
|
||||
# The opacity of shadows. (0.0 - 1.0, defaults to 0.75)
|
||||
# shadow-opacity = .75
|
||||
|
||||
# The left offset for shadows, in pixels. (defaults to -15)
|
||||
# shadow-offset-x = -15
|
||||
shadow-offset-x = -7;
|
||||
|
||||
# The top offset for shadows, in pixels. (defaults to -15)
|
||||
# shadow-offset-y = -15
|
||||
shadow-offset-y = -7;
|
||||
|
||||
# Red color value of shadow (0.0 - 1.0, defaults to 0).
|
||||
# shadow-red = 0
|
||||
|
||||
# Green color value of shadow (0.0 - 1.0, defaults to 0).
|
||||
# shadow-green = 0
|
||||
|
||||
# Blue color value of shadow (0.0 - 1.0, defaults to 0).
|
||||
# shadow-blue = 0
|
||||
|
||||
# Hex string color value of shadow (#000000 - #FFFFFF, defaults to #000000). This option will override options set shadow-(red/green/blue)
|
||||
# shadow-color = "#000000"
|
||||
|
||||
# Specify a list of conditions of windows that should have no shadow.
|
||||
#
|
||||
# examples:
|
||||
# shadow-exclude = "n:e:Notification";
|
||||
#
|
||||
# shadow-exclude = []
|
||||
shadow-exclude = [
|
||||
"name = 'Notification'",
|
||||
"class_g = 'Conky'",
|
||||
"class_g ?= 'Notify-osd'",
|
||||
"class_g = 'Cairo-clock'",
|
||||
"_GTK_FRAME_EXTENTS@:c"
|
||||
];
|
||||
|
||||
# Specify a list of conditions of windows that should have no shadow painted over, such as a dock window.
|
||||
# clip-shadow-above = []
|
||||
|
||||
# Specify a X geometry that describes the region in which shadow should not
|
||||
# be painted in, such as a dock window region. Use
|
||||
# shadow-exclude-reg = "x10+0+0"
|
||||
# for example, if the 10 pixels on the bottom of the screen should not have shadows painted on.
|
||||
#
|
||||
# shadow-exclude-reg = ""
|
||||
|
||||
# Crop shadow of a window fully on a particular Xinerama screen to the screen.
|
||||
# xinerama-shadow-crop = false
|
||||
|
||||
|
||||
#################################
|
||||
# Fading #
|
||||
#################################
|
||||
|
||||
|
||||
# Fade windows in/out when opening/closing and when opacity changes,
|
||||
# unless no-fading-openclose is used.
|
||||
# fading = false
|
||||
fading = true;
|
||||
|
||||
# Opacity change between steps while fading in. (0.01 - 1.0, defaults to 0.028)
|
||||
# fade-in-step = 0.028
|
||||
fade-in-step = 0.03;
|
||||
|
||||
# Opacity change between steps while fading out. (0.01 - 1.0, defaults to 0.03)
|
||||
# fade-out-step = 0.03
|
||||
fade-out-step = 0.03;
|
||||
|
||||
# The time between steps in fade step, in milliseconds. (> 0, defaults to 10)
|
||||
# fade-delta = 10
|
||||
|
||||
# Specify a list of conditions of windows that should not be faded.
|
||||
# fade-exclude = []
|
||||
|
||||
# Do not fade on window open/close.
|
||||
# no-fading-openclose = false
|
||||
|
||||
# Do not fade destroyed ARGB windows with WM frame. Workaround of bugs in Openbox, Fluxbox, etc.
|
||||
# no-fading-destroyed-argb = false
|
||||
|
||||
|
||||
#################################
|
||||
# Transparency / Opacity #
|
||||
#################################
|
||||
|
||||
|
||||
# Opacity of inactive windows. (0.1 - 1.0, defaults to 1.0)
|
||||
# inactive-opacity = 1
|
||||
inactive-opacity = 0.8;
|
||||
|
||||
# Opacity of window titlebars and borders. (0.1 - 1.0, disabled by default)
|
||||
# frame-opacity = 1.0
|
||||
frame-opacity = 0.7;
|
||||
|
||||
# Let inactive opacity set by -i override the '_NET_WM_WINDOW_OPACITY' values of windows.
|
||||
# inactive-opacity-override = true
|
||||
inactive-opacity-override = false;
|
||||
|
||||
# Default opacity for active windows. (0.0 - 1.0, defaults to 1.0)
|
||||
# active-opacity = 1.0
|
||||
|
||||
# Dim inactive windows. (0.0 - 1.0, defaults to 0.0)
|
||||
# inactive-dim = 0.0
|
||||
|
||||
# Specify a list of conditions of windows that should never be considered focused.
|
||||
# focus-exclude = []
|
||||
focus-exclude = [ "class_g = 'Cairo-clock'",
|
||||
"class_g = 'firefox'",
|
||||
"class_g = 'zoom'",
|
||||
"class_g = 'Soffice'",
|
||||
"class_g = 'libreoffice-impress'"
|
||||
];
|
||||
|
||||
# Use fixed inactive dim value, instead of adjusting according to window opacity.
|
||||
# inactive-dim-fixed = 1.0
|
||||
|
||||
# Specify a list of opacity rules, in the format `PERCENT:PATTERN`,
|
||||
# like `50:name *= "Firefox"`. picom-trans is recommended over this.
|
||||
# Note we don't make any guarantee about possible conflicts with other
|
||||
# programs that set '_NET_WM_WINDOW_OPACITY' on frame or client windows.
|
||||
# example:
|
||||
# opacity-rule = [ "80:class_g = 'URxvt'" ];
|
||||
#
|
||||
# opacity-rule = []
|
||||
|
||||
|
||||
#################################
|
||||
# Corners #
|
||||
#################################
|
||||
|
||||
# Sets the radius of rounded window corners. When > 0, the compositor will
|
||||
# round the corners of windows. Does not interact well with
|
||||
# `transparent-clipping`.
|
||||
corner-radius = 3
|
||||
|
||||
# Exclude conditions for rounded corners.
|
||||
rounded-corners-exclude = [
|
||||
"window_type = 'dock'",
|
||||
"window_type = 'desktop'"
|
||||
];
|
||||
|
||||
|
||||
#################################
|
||||
# Background-Blurring #
|
||||
#################################
|
||||
|
||||
|
||||
# Parameters for background blurring, see the *BLUR* section for more information.
|
||||
# blur-method =
|
||||
# blur-size = 12
|
||||
#
|
||||
# blur-deviation = false
|
||||
#
|
||||
# blur-strength = 5
|
||||
|
||||
# Blur background of semi-transparent / ARGB windows.
|
||||
# Bad in performance, with driver-dependent behavior.
|
||||
# The name of the switch may change without prior notifications.
|
||||
#
|
||||
blur-background = false
|
||||
|
||||
# Blur background of windows when the window frame is not opaque.
|
||||
# Implies:
|
||||
# blur-background
|
||||
# Bad in performance, with driver-dependent behavior. The name may change.
|
||||
#
|
||||
# blur-background-frame = false
|
||||
|
||||
|
||||
# Use fixed blur strength rather than adjusting according to window opacity.
|
||||
# blur-background-fixed = false
|
||||
|
||||
|
||||
# Specify the blur convolution kernel, with the following format:
|
||||
# example:
|
||||
# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
|
||||
#
|
||||
# blur-kern = ""
|
||||
blur-kern = "3x3box";
|
||||
|
||||
|
||||
# Exclude conditions for background blur.
|
||||
# blur-background-exclude = []
|
||||
blur-background-exclude = [
|
||||
"window_type = 'dock'",
|
||||
"window_type = 'desktop'",
|
||||
"_GTK_FRAME_EXTENTS@:c"
|
||||
];
|
||||
|
||||
#################################
|
||||
# General Settings #
|
||||
#################################
|
||||
|
||||
# Enable remote control via D-Bus. See the man page for more details.
|
||||
# dbus = true
|
||||
|
||||
# Daemonize process. Fork to background after initialization. Causes issues with certain (badly-written) drivers.
|
||||
# daemon = false
|
||||
|
||||
# Specify the backend to use: `xrender`, `glx`, or `xr_glx_hybrid`.
|
||||
# `xrender` is the default one.
|
||||
#
|
||||
# backend = "glx"
|
||||
backend = "xrender";
|
||||
|
||||
# Enable/disable VSync.
|
||||
# vsync = false
|
||||
vsync = true;
|
||||
|
||||
# Enable remote control via D-Bus. See the *D-BUS API* section below for more details.
|
||||
# dbus = false
|
||||
|
||||
# Try to detect WM windows (a non-override-redirect window with no
|
||||
# child that has 'WM_STATE') and mark them as active.
|
||||
#
|
||||
# mark-wmwin-focused = false
|
||||
mark-wmwin-focused = true;
|
||||
|
||||
# Mark override-redirect windows that doesn't have a child window with 'WM_STATE' focused.
|
||||
# mark-ovredir-focused = false
|
||||
mark-ovredir-focused = true;
|
||||
|
||||
# Try to detect windows with rounded corners and don't consider them
|
||||
# shaped windows. The accuracy is not very high, unfortunately.
|
||||
#
|
||||
# detect-rounded-corners = false
|
||||
detect-rounded-corners = true;
|
||||
|
||||
# Detect '_NET_WM_WINDOW_OPACITY' on client windows, useful for window managers
|
||||
# not passing '_NET_WM_WINDOW_OPACITY' of client windows to frame windows.
|
||||
#
|
||||
# detect-client-opacity = false
|
||||
detect-client-opacity = true;
|
||||
|
||||
# Use EWMH '_NET_ACTIVE_WINDOW' to determine currently focused window,
|
||||
# rather than listening to 'FocusIn'/'FocusOut' event. Might have more accuracy,
|
||||
# provided that the WM supports it.
|
||||
#
|
||||
# use-ewmh-active-win = false
|
||||
|
||||
# Unredirect all windows if a full-screen opaque window is detected,
|
||||
# to maximize performance for full-screen windows. Known to cause flickering
|
||||
# when redirecting/unredirecting windows.
|
||||
#
|
||||
# unredir-if-possible = false
|
||||
|
||||
# Delay before unredirecting the window, in milliseconds. Defaults to 0.
|
||||
# unredir-if-possible-delay = 0
|
||||
|
||||
# Conditions of windows that shouldn't be considered full-screen for unredirecting screen.
|
||||
# unredir-if-possible-exclude = []
|
||||
|
||||
# Use 'WM_TRANSIENT_FOR' to group windows, and consider windows
|
||||
# in the same group focused at the same time.
|
||||
#
|
||||
# detect-transient = false
|
||||
detect-transient = true;
|
||||
|
||||
# Use 'WM_CLIENT_LEADER' to group windows, and consider windows in the same
|
||||
# group focused at the same time. This usually means windows from the same application
|
||||
# will be considered focused or unfocused at the same time.
|
||||
# 'WM_TRANSIENT_FOR' has higher priority if detect-transient is enabled, too.
|
||||
#
|
||||
# detect-client-leader = false
|
||||
|
||||
# Resize damaged region by a specific number of pixels.
|
||||
# A positive value enlarges it while a negative one shrinks it.
|
||||
# If the value is positive, those additional pixels will not be actually painted
|
||||
# to screen, only used in blur calculation, and such. (Due to technical limitations,
|
||||
# with use-damage, those pixels will still be incorrectly painted to screen.)
|
||||
# Primarily used to fix the line corruption issues of blur,
|
||||
# in which case you should use the blur radius value here
|
||||
# (e.g. with a 3x3 kernel, you should use `--resize-damage 1`,
|
||||
# with a 5x5 one you use `--resize-damage 2`, and so on).
|
||||
# May or may not work with *--glx-no-stencil*. Shrinking doesn't function correctly.
|
||||
#
|
||||
# resize-damage = 1
|
||||
|
||||
# Specify a list of conditions of windows that should be painted with inverted color.
|
||||
# Resource-hogging, and is not well tested.
|
||||
#
|
||||
# invert-color-include = []
|
||||
|
||||
# GLX backend: Avoid using stencil buffer, useful if you don't have a stencil buffer.
|
||||
# Might cause incorrect opacity when rendering transparent content (but never
|
||||
# practically happened) and may not work with blur-background.
|
||||
# My tests show a 15% performance boost. Recommended.
|
||||
#
|
||||
# glx-no-stencil = false
|
||||
|
||||
# GLX backend: Avoid rebinding pixmap on window damage.
|
||||
# Probably could improve performance on rapid window content changes,
|
||||
# but is known to break things on some drivers (LLVMpipe, xf86-video-intel, etc.).
|
||||
# Recommended if it works.
|
||||
#
|
||||
# glx-no-rebind-pixmap = false
|
||||
|
||||
# Disable the use of damage information.
|
||||
# This cause the whole screen to be redrawn everytime, instead of the part of the screen
|
||||
# has actually changed. Potentially degrades the performance, but might fix some artifacts.
|
||||
# The opposing option is use-damage
|
||||
#
|
||||
# no-use-damage = false
|
||||
use-damage = true;
|
||||
|
||||
# Use X Sync fence to sync clients' draw calls, to make sure all draw
|
||||
# calls are finished before picom starts drawing. Needed on nvidia-drivers
|
||||
# with GLX backend for some users.
|
||||
#
|
||||
# xrender-sync-fence = false
|
||||
|
||||
# GLX backend: Use specified GLSL fragment shader for rendering window
|
||||
# contents. Read the man page for a detailed explanation of the interface.
|
||||
#
|
||||
# window-shader-fg = "default"
|
||||
|
||||
# Use rules to set per-window shaders. Syntax is SHADER_PATH:PATTERN, similar
|
||||
# to opacity-rule. SHADER_PATH can be "default". This overrides window-shader-fg.
|
||||
#
|
||||
# window-shader-fg-rule = [
|
||||
# "my_shader.frag:window_type != 'dock'"
|
||||
# ]
|
||||
|
||||
# Force all windows to be painted with blending. Useful if you
|
||||
# have a glx-fshader-win that could turn opaque pixels transparent.
|
||||
#
|
||||
# force-win-blend = false
|
||||
|
||||
# Do not use EWMH to detect fullscreen windows.
|
||||
# Reverts to checking if a window is fullscreen based only on its size and coordinates.
|
||||
#
|
||||
# no-ewmh-fullscreen = false
|
||||
|
||||
# Dimming bright windows so their brightness doesn't exceed this set value.
|
||||
# Brightness of a window is estimated by averaging all pixels in the window,
|
||||
# so this could comes with a performance hit.
|
||||
# Setting this to 1.0 disables this behaviour. Requires --use-damage to be disabled. (default: 1.0)
|
||||
#
|
||||
# max-brightness = 1.0
|
||||
|
||||
# Make transparent windows clip other windows like non-transparent windows do,
|
||||
# instead of blending on top of them.
|
||||
#
|
||||
# transparent-clipping = false
|
||||
|
||||
# Specify a list of conditions of windows that should never have transparent
|
||||
# clipping applied. Useful for screenshot tools, where you need to be able to
|
||||
# see through transparent parts of the window.
|
||||
#
|
||||
# transparent-clipping-exclude = []
|
||||
|
||||
# Set the log level. Possible values are:
|
||||
# "trace", "debug", "info", "warn", "error"
|
||||
# in increasing level of importance. Case doesn't matter.
|
||||
# If using the "TRACE" log level, it's better to log into a file
|
||||
# using *--log-file*, since it can generate a huge stream of logs.
|
||||
#
|
||||
# log-level = "debug"
|
||||
log-level = "warn";
|
||||
|
||||
# Set the log file.
|
||||
# If *--log-file* is never specified, logs will be written to stderr.
|
||||
# Otherwise, logs will to written to the given file, though some of the early
|
||||
# logs might still be written to the stderr.
|
||||
# When setting this option from the config file, it is recommended to use an absolute path.
|
||||
#
|
||||
# log-file = "/path/to/your/log/file"
|
||||
|
||||
# Show all X errors (for debugging)
|
||||
# show-all-xerrors = false
|
||||
|
||||
# Write process ID to a file.
|
||||
# write-pid-path = "/path/to/your/log/file"
|
||||
|
||||
# Window type settings
|
||||
#
|
||||
# 'WINDOW_TYPE' is one of the 15 window types defined in EWMH standard:
|
||||
# "unknown", "desktop", "dock", "toolbar", "menu", "utility",
|
||||
# "splash", "dialog", "normal", "dropdown_menu", "popup_menu",
|
||||
# "tooltip", "notification", "combo", and "dnd".
|
||||
#
|
||||
# Following per window-type options are available: ::
|
||||
#
|
||||
# fade, shadow:::
|
||||
# Controls window-type-specific shadow and fade settings.
|
||||
#
|
||||
# opacity:::
|
||||
# Controls default opacity of the window type.
|
||||
#
|
||||
# focus:::
|
||||
# Controls whether the window of this type is to be always considered focused.
|
||||
# (By default, all window types except "normal" and "dialog" has this on.)
|
||||
#
|
||||
# full-shadow:::
|
||||
# Controls whether shadow is drawn under the parts of the window that you
|
||||
# normally won't be able to see. Useful when the window has parts of it
|
||||
# transparent, and you want shadows in those areas.
|
||||
#
|
||||
# clip-shadow-above:::
|
||||
# Controls wether shadows that would have been drawn above the window should
|
||||
# be clipped. Useful for dock windows that should have no shadow painted on top.
|
||||
#
|
||||
# redir-ignore:::
|
||||
# Controls whether this type of windows should cause screen to become
|
||||
# redirected again after been unredirected. If you have unredir-if-possible
|
||||
# set, and doesn't want certain window to cause unnecessary screen redirection,
|
||||
# you can set this to `true`.
|
||||
#
|
||||
wintypes:
|
||||
{
|
||||
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; full-shadow = false; };
|
||||
dock = { shadow = false; clip-shadow-above = true; }
|
||||
dnd = { shadow = false; }
|
||||
popup_menu = { opacity = 0.8; }
|
||||
dropdown_menu = { opacity = 0.8; }
|
||||
};
|
||||
@@ -7,6 +7,7 @@
|
||||
title_inactive_bg_color = "#4C566A"
|
||||
always_split_with_profile = True
|
||||
[keybindings]
|
||||
help = ""
|
||||
[profiles]
|
||||
[[default]]
|
||||
background_color = "#12204d"
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
process = git-lfs filter-process
|
||||
required = true
|
||||
[credential]
|
||||
helper = cache --timeout=3600
|
||||
helper = libsecret
|
||||
[color]
|
||||
ui = auto
|
||||
[pull]
|
||||
|
||||
2
.i3
2
.i3
Submodule .i3 updated: 6c27c94e91...6f3a75a596
18
.i3initrc
18
.i3initrc
@@ -5,18 +5,18 @@
|
||||
i3config="/tmp/i3_${USER}_config"
|
||||
rm -f $i3config
|
||||
|
||||
if [ -f ~/.i3/base.config ]; then
|
||||
cat ~/.i3/base.config >> $i3config
|
||||
if [ -f "$HOME/.i3/base.config" ]; then
|
||||
cat "$HOME/.i3/base.config" >> $i3config
|
||||
fi
|
||||
|
||||
if [ "`hostname`" = "kubaArch-Laptop" ] && [ -f ~/.i3/home.config ]; then
|
||||
cat ~/.i3/home.config >> $i3config
|
||||
elif [ "`hostname`" = "kubaDesktop" ] && [ -f ~/.i3/home.config ]; then
|
||||
cat ~/.i3/home.config >> $i3config
|
||||
elif [ "`hostname`" = "JakubArch" ] && [ -f ~/.i3/work.config ]; then
|
||||
cat ~/.i3/work.config >> $i3config
|
||||
if [ "`hostname`" = "kubaArch-Laptop" ] && [ -f "$HOME/.i3/home.config" ]; then
|
||||
cat "$HOME/.i3/home.config" >> $i3config
|
||||
elif [ "`hostname`" = "kubaDesktop" ] && [ -f "$HOME/.i3/home.config" ]; then
|
||||
cat "$HOME/.i3/home.config" >> $i3config
|
||||
elif [ "`hostname`" = "JakubArch" ] && [ -f "$HOME/.i3/work.config" ]; then
|
||||
cat "$HOME/.i3/work.config" >> $i3config
|
||||
fi
|
||||
|
||||
#exec i3 -c $i3config -V >> ~/${WM}.log 2>&1
|
||||
sh ~/.i3/scripts/displays.sh auto
|
||||
sh "$HOME/.i3/scripts/displays.sh" auto
|
||||
exec i3 -c $i3config
|
||||
|
||||
33
.modules.kuba/.slurm-aliases.sh
Normal file
33
.modules.kuba/.slurm-aliases.sh
Normal file
@@ -0,0 +1,33 @@
|
||||
qnode() {
|
||||
[ $# -lt 1 ] && echo "Usage qnode JOBID" && return 0
|
||||
squeue --noheader --jobs $1 -o %R
|
||||
}
|
||||
|
||||
qssh() {
|
||||
[ $# -lt 1 ] && echo "Usage qssh JOBID" && return 0
|
||||
ssh $(qnode $1)
|
||||
}
|
||||
|
||||
taillog() { [ $# -lt 1 ] && echo "Usage taillog LOGFILE [JOBIDs ..]" && return 0
|
||||
if [ $# -lt 2 ] ; then
|
||||
tail "$1"
|
||||
else
|
||||
tail "$1" "$1.$2"{.e,.o}
|
||||
fi
|
||||
}
|
||||
|
||||
catlog() { [ $# -lt 1 ] && echo "Usage catlog LOGFILE [JOBIDs ..]" && return 0
|
||||
if [ $# -lt 2 ] ; then
|
||||
cat "$1" | less
|
||||
else
|
||||
cat "$1" "$1.$2"{.e,.o} | less
|
||||
fi
|
||||
}
|
||||
|
||||
watchlog() { [ $# -lt 2 ] && echo "Usage watchlog INTERVAL LOGFILE [JOBIDs ..]" && return 0;
|
||||
if [ $# -lt 3 ] ; then
|
||||
watch -n $1 tail "$2"
|
||||
else
|
||||
watch -n $1 tail "$2" "$2.$3"{.e,.o}
|
||||
fi
|
||||
}
|
||||
131
.modules.kuba/.tools.sh
Normal file
131
.modules.kuba/.tools.sh
Normal file
@@ -0,0 +1,131 @@
|
||||
# Inspect .npz files
|
||||
npz_py_str="$(cat << EOM
|
||||
from sys import argv
|
||||
import numpy as np
|
||||
try:
|
||||
import matplotlib.pyplot as plt
|
||||
print('Imported matplotlib.pyplot as plt')
|
||||
except ImportError:
|
||||
pass
|
||||
|
||||
class Wrap:
|
||||
def __init__(self, fname):
|
||||
n = np.load(fname, allow_pickle=True)
|
||||
globs = globals()
|
||||
if isinstance(n, np.lib.npyio.NpzFile):
|
||||
files = n.files
|
||||
print('Contains files', files)
|
||||
for f in files:
|
||||
setattr(self, f, n[f])
|
||||
globs[f] = n[f]
|
||||
else:
|
||||
print('Loaded data of shape', n.shape)
|
||||
setattr(self, 'data', n)
|
||||
globs['data'] = n
|
||||
|
||||
|
||||
argv = argv[argv.index('--')+1:]
|
||||
archives = [Wrap(arg) for arg in argv]
|
||||
archive = archives[-1]
|
||||
print('Global namespace populated with "archive", "archives" and all files')
|
||||
for i, fname in enumerate(argv):
|
||||
print(f' {i:<3.0f}: {fname}')
|
||||
EOM
|
||||
)"
|
||||
|
||||
npz_preview() {
|
||||
if [ $# -lt 1 ]; then
|
||||
echo "Please specify file to open as argument"
|
||||
return
|
||||
fi
|
||||
|
||||
python -ic "$npz_py_str" -- "$@"
|
||||
}
|
||||
|
||||
npz_previewi() {
|
||||
if [ $# -lt 1 ]; then
|
||||
echo "Please specify file to open as argument"
|
||||
return
|
||||
fi
|
||||
|
||||
ipython -i -c "$npz_py_str" -- "$@"
|
||||
}
|
||||
|
||||
rsync_wrap() {
|
||||
cmd="rsync -a -R -r --copy-links --exclude .git --exclude __pycache__ --progress"
|
||||
if [ $# == 0 ]; then
|
||||
echo "Usage rsync_wrap [...]
|
||||
|
||||
Useful for synchronizing repositories
|
||||
|
||||
Calls $cmd [...]"
|
||||
return
|
||||
fi
|
||||
$cmd $@
|
||||
}
|
||||
|
||||
rsync_wrap_huge() {
|
||||
cmd="rsync -a -R -r --copy-links --size-only --exclude .git --exclude __pycache__ --progress"
|
||||
if [ $# == 0 ]; then
|
||||
echo "Usage rsync_wrap_huge [...]
|
||||
|
||||
Useful for synchronizing repositories. Does not do checksum
|
||||
|
||||
Calls $cmd [...]"
|
||||
return
|
||||
fi
|
||||
$cmd $@
|
||||
}
|
||||
|
||||
if command -v xclip &> /dev/null; then
|
||||
alias selc="xclip -sel primary -i"
|
||||
alias selv="xclip -sel primary -o"
|
||||
alias clipc="xclip -sel clip -i"
|
||||
alias clipv="xclip -sel clip -o"
|
||||
fi
|
||||
|
||||
watch_modify() {
|
||||
if [ $# -lt 2 ]; then
|
||||
echo "Usage watch_modify FILE CMD ARGS...
|
||||
|
||||
Run CMD ARGS... when file FILE is updated
|
||||
"
|
||||
return
|
||||
fi
|
||||
|
||||
file="$1"
|
||||
base="$(basename "$file")"
|
||||
dir="$(dirname "$file")"
|
||||
inotifywait -r -m -e modify "$dir" | while read file_path file_event file_name; do
|
||||
[ "$base" == "$file_name" ] && echo ${@:2} && ${@:2}
|
||||
done
|
||||
}
|
||||
|
||||
pdftoclipboard() {
|
||||
if [ $# -lt 1 ]; then
|
||||
echo "Usage pdftoclipboard FILE [DPI]
|
||||
|
||||
Convert pdf file FILE to png and copy to clipboard. Default DPI is 600
|
||||
"
|
||||
return
|
||||
fi
|
||||
file="$1"
|
||||
dpi="${2:-600}"
|
||||
|
||||
pdftoppm -png -r "$dpi" "$file" | xclip -sel clip -t image/png -i
|
||||
}
|
||||
|
||||
gitgrepsed() {
|
||||
if [ $# -lt 2 ]; then
|
||||
echo "Usage gitgrepsed SEARCH REPLACE
|
||||
|
||||
Search and replace in git repository.
|
||||
Alias for git grep -l \$SEARCH | xargs sed -i "s/\$SEARCH/\$REPLACE/g"
|
||||
"
|
||||
return
|
||||
fi
|
||||
|
||||
search="$1"
|
||||
replace="$2"
|
||||
git grep -l "$search" | xargs sed -i "s/$search/$replace/g"
|
||||
}
|
||||
@@ -1,27 +0,0 @@
|
||||
whatis("Ase")
|
||||
|
||||
conflict("ASE")
|
||||
|
||||
function ld (m)
|
||||
if not ( isloaded(m) ) then
|
||||
load(m)
|
||||
end
|
||||
end
|
||||
|
||||
ld("iccifort/2019.5.281")
|
||||
ld("impi/2018.5.288")
|
||||
ld("imkl/2019.5.281")
|
||||
ld("Python/3.7.4")
|
||||
ld("Tkinter/3.7.4")
|
||||
ld("matplotlib/3.1.1-Python-3.7.4")
|
||||
|
||||
ld("clusterappl") -- Sets up MYNOBACKUP
|
||||
|
||||
local nobackup = os.getenv("MYNOBACKUP")
|
||||
local root = pathJoin(nobackup, "git/ase/dev")
|
||||
|
||||
prepend_path("PYTHONPATH", root)
|
||||
prepend_path("PATH", pathJoin(root, "tools"))
|
||||
prepend_path("PATH", pathJoin(root, "bin"))
|
||||
|
||||
execute {cmd='complete -o default -C "/usr/bin/python3 ' .. root .. '/ase/cli/complete.py" ase', modeA={"load"}}
|
||||
@@ -1,25 +0,0 @@
|
||||
whatis([==[
|
||||
Creates $USERAPPL environment variable and adds paths
|
||||
]==])
|
||||
|
||||
local pyver = subprocess([[python --version 2>&1 | sed 's/.*\([23]\.[0-9]\).*/\1/']])
|
||||
if pyver:sub(1, 1) == "2" then
|
||||
LmodError("Must have Python 3 loaded")
|
||||
end
|
||||
|
||||
local home = os.getenv("HOME")
|
||||
local nobackup = pathJoin(home, "nobackup")
|
||||
local userappl = pathJoin(nobackup, "appl")
|
||||
local git = pathJoin(nobackup, "git")
|
||||
local pythonp = pathJoin(userappl, "lib", "python" .. pyver, "site-packages")
|
||||
local binp = pathJoin(userappl, "bin")
|
||||
local libp = pathJoin(userappl, "lib")
|
||||
|
||||
setenv("MYNOBACKUP", nobackup)
|
||||
setenv("USERAPPL", userappl)
|
||||
|
||||
prepend_path("PYTHONPATH", pythonp)
|
||||
prepend_path("PYTHONPATH", ".")
|
||||
prepend_path("PATH", binp)
|
||||
prepend_path("LD_LIBRARY_PATH", libp)
|
||||
execute {cmd='`snakemake --bash-completion`', modeA={"load"}}
|
||||
@@ -1,7 +0,0 @@
|
||||
local name = myModuleName()
|
||||
local version = myModuleVersion()
|
||||
local home = os.getenv("HOME")
|
||||
local setups_root = pathJoin(home, "gpaw-setups", version)
|
||||
|
||||
prepend_path("GPAW_SETUP_PATH", pathJoin(setups_root, "gpaw-setups-" .. version))
|
||||
prepend_path("GPAW_SETUP_PATH", pathJoin(setups_root, "gpaw-basis-pvalence-" .. version))
|
||||
@@ -1,26 +0,0 @@
|
||||
whatis([==[My compiled version of GPAW]==])
|
||||
|
||||
unload("GPAW")
|
||||
|
||||
function ld (m)
|
||||
if not ( isloaded(m) ) then
|
||||
load(m)
|
||||
end
|
||||
end
|
||||
|
||||
ld("clusterappl")
|
||||
|
||||
local nobackup = os.getenv("MYNOBACKUP")
|
||||
local root = pathJoin(nobackup, "git/gpaw/20.1.0")
|
||||
|
||||
ld("Python/3.6.7-env-nsc1-gcc-2018a-eb")
|
||||
-- ld("Python/3.6.3-anaconda-5.0.1-nsc1")
|
||||
ld("ASE/3.18.0-nsc1")
|
||||
|
||||
ld("gpaw-setups/0.9.20000")
|
||||
|
||||
setenv("OMP_NUM_THREADS", 1)
|
||||
prepend_path("PATH", pathJoin(root, "tools"))
|
||||
prepend_path("PYTHONPATH", root)
|
||||
prepend_path("PYTHONPATH", pathJoin(root, "build/lib.linux-x86_64-3.7"))
|
||||
execute {cmd='complete -o default -C "/usr/bin/python3 ' .. root .. '/gpaw/cli/complete.py" gpaw', modeA={"load"}}
|
||||
@@ -1 +0,0 @@
|
||||
dev.lua
|
||||
@@ -1,23 +0,0 @@
|
||||
whatis([==[My compiled version of GPAW]==])
|
||||
|
||||
unload("GPAW")
|
||||
|
||||
function ld (m)
|
||||
if not ( isloaded(m) ) then
|
||||
load(m)
|
||||
end
|
||||
end
|
||||
|
||||
ld("ase/dev")
|
||||
ld("libxc/4.3.4")
|
||||
ld("gpaw-setups/0.9.20000")
|
||||
|
||||
local _, version = splitFileName(myModuleVersion())
|
||||
local nobackup = os.getenv("MYNOBACKUP")
|
||||
local root = pathJoin(nobackup, "git/gpaw", version)
|
||||
|
||||
setenv("OMP_NUM_THREADS", 1)
|
||||
prepend_path("PATH", pathJoin(root, "tools"))
|
||||
prepend_path("PYTHONPATH", root)
|
||||
prepend_path("PYTHONPATH", pathJoin(root, "build/lib.linux-x86_64-3.7"))
|
||||
execute {cmd='complete -o default -C "/usr/bin/python3 ' .. root .. '/gpaw/cli/complete.py" gpaw', modeA={"load"}}
|
||||
@@ -1 +0,0 @@
|
||||
dev.lua
|
||||
3
.modules.kuba/node.lua
Normal file
3
.modules.kuba/node.lua
Normal file
@@ -0,0 +1,3 @@
|
||||
local home = os.getenv("HOME")
|
||||
local pkg = pathJoin(home, "node-v21.1.0-linux-x64")
|
||||
prepend_path("PATH", pathJoin(pkg, "bin"))
|
||||
@@ -3,6 +3,16 @@ Defines useful SLURM aliases
|
||||
]==])
|
||||
|
||||
set_alias("si", 'sinfo -e -o "%9P %4a %8s %.10l %11A %6z %.7m %40N"')
|
||||
set_alias("q", 'squeue -u $USER -o "%7A %56j %2t %16S %.10M %.10L %.2D %4N"')
|
||||
set_alias("q", 'squeue -u $USER -o "%8A %56j %2t %16S %.10M %.10L %.2D %4N"')
|
||||
set_alias("ql", 'squeue -u $USER -o "%8A %7K %56j %2t %3r %16S %.10M %.10L %.4D %8N %4f"')
|
||||
set_alias("qll", 'squeue -u $USER -o "%8A %7K %150j %2t %3r %16S %.10M %.10L %.4D %8N %4f"')
|
||||
set_alias("qa", 'squeue -o "%8A %10u %.6Q %24j %2t %3r %16S %.10M %.10L %.4D %16N" -S t,-p | less')
|
||||
set_alias("qq", 'squeue -u $USER -o "%8A %7K %76j %9F %2t %.10L"')
|
||||
set_alias("qid", 'squeue -h -u $USER -o "%A"')
|
||||
set_alias("scancelall", 'squeue -h -u $USER -o "%A" | xargs scancel')
|
||||
|
||||
local path = splitFileName(myFileName());
|
||||
local loadscript = pathJoin(path, '.' .. myModuleName() .. '.sh');
|
||||
|
||||
execute{cmd='source ' .. loadscript, modeA={"load"}}
|
||||
execute{cmd='unset -f qnode qssh watchlog catlog taillog;', modeA={"unload"}}
|
||||
|
||||
12
.modules.kuba/tools.lua
Normal file
12
.modules.kuba/tools.lua
Normal file
@@ -0,0 +1,12 @@
|
||||
whatis([==[
|
||||
Loads useful tools
|
||||
]==])
|
||||
|
||||
local path = splitFileName(myFileName());
|
||||
local loadscript = pathJoin(path, '.' .. myModuleName() .. '.sh');
|
||||
|
||||
execute{cmd='source ' .. loadscript, modeA={"load"}}
|
||||
execute{cmd='unset -f npz_preview npz_previewi ' ..
|
||||
'rsync_wrap rsync_wrap_huge selc selv cliipc clipv watch_modify pdftoclipboard gitgrepsed' ..
|
||||
'rsync_wrap rsync_wrap_huge selc selv cliipc clipv watch_modify' ..
|
||||
';', modeA={"unload"}}
|
||||
43
.ssh/config
43
.ssh/config
@@ -15,15 +15,15 @@ Host aino
|
||||
User jakub
|
||||
Port 22209
|
||||
|
||||
Host tahoe
|
||||
HostName tahoe.fy.chalmers.se
|
||||
Host puffinus
|
||||
HostName puffinus.fy.chalmers.se
|
||||
User jakub
|
||||
Port 22209
|
||||
|
||||
Host geym
|
||||
HostName geym.fy.chalmers.se
|
||||
User jakub
|
||||
Port 22209
|
||||
Host sharknado
|
||||
HostName 130.239.81.182
|
||||
User ubuntu
|
||||
IdentityFile ~/.ssh/jupyterhub_rsa
|
||||
|
||||
Host pi4
|
||||
HostName 192.168.0.200
|
||||
@@ -48,11 +48,7 @@ Host vera2
|
||||
User fojt
|
||||
|
||||
Host tetralith
|
||||
Hostname tetralith1.nsc.liu.se
|
||||
User x_jakfo
|
||||
|
||||
Host tetralith2
|
||||
Hostname tetralith2.nsc.liu.se
|
||||
Hostname tetralith.nsc.liu.se
|
||||
User x_jakfo
|
||||
|
||||
Host remote11
|
||||
@@ -63,29 +59,10 @@ Host remote11
|
||||
ControlPersist yes
|
||||
ControlPath ~/.ssh/socket-%r@%h:%p
|
||||
|
||||
Host beskow
|
||||
Hostname beskow.pdc.kth.se
|
||||
Host dardel
|
||||
Hostname dardel.pdc.kth.se
|
||||
User fojt
|
||||
GSSAPIAuthentication yes
|
||||
GSSAPIKeyExchange yes
|
||||
GSSAPIDelegateCredentials yes
|
||||
PreferredAuthentications gssapi-keyex,gssapi-with-mic
|
||||
|
||||
Host pdctransfer
|
||||
Hostname t04n27.pdc.kth.se
|
||||
User fojt
|
||||
GSSAPIAuthentication yes
|
||||
GSSAPIKeyExchange yes
|
||||
GSSAPIDelegateCredentials yes
|
||||
PreferredAuthentications gssapi-keyex,gssapi-with-mic
|
||||
|
||||
Host tegner
|
||||
Hostname tegner.pdc.kth.se
|
||||
User fojt
|
||||
GSSAPIAuthentication yes
|
||||
GSSAPIKeyExchange yes
|
||||
GSSAPIDelegateCredentials yes
|
||||
PreferredAuthentications gssapi-keyex,gssapi-with-mic
|
||||
IdentityFile ~/.ssh/id-ed25519-pdc
|
||||
|
||||
Host *
|
||||
ForwardAgent no
|
||||
|
||||
11
.ssh/rc
11
.ssh/rc
@@ -3,3 +3,14 @@
|
||||
if [ ! -S ~/.ssh/ssh_auth_sock ] && [ -S "$SSH_AUTH_SOCK" ]; then
|
||||
ln -sf $SSH_AUTH_SOCK ~/.ssh/ssh_auth_sock
|
||||
fi
|
||||
|
||||
# Taken from the sshd(8) manpage.
|
||||
if read proto cookie && [ -n "$DISPLAY" ]; then
|
||||
if [ `echo $DISPLAY | cut -c1-10` = 'localhost:' ]; then
|
||||
# X11UseLocalhost=yes
|
||||
echo add unix:`echo $DISPLAY | cut -c11-` $proto $cookie
|
||||
else
|
||||
# X11UseLocalhost=no
|
||||
echo add $DISPLAY $proto $cookie
|
||||
fi | xauth -q -
|
||||
fi
|
||||
|
||||
14
.tmux.conf
14
.tmux.conf
@@ -1,16 +1,24 @@
|
||||
# Prefix
|
||||
unbind C-b
|
||||
set-option -g prefix C-a
|
||||
bind-key C-a send-prefix
|
||||
set -g mouse on
|
||||
|
||||
# Mouse and colors
|
||||
set -g mouse on
|
||||
set -g default-terminal "screen-256color"
|
||||
|
||||
# pane movement
|
||||
bind-key j command-prompt -p "join pane from:" "join-pane -s '%%'"
|
||||
bind-key s command-prompt -p "send pane to:" "join-pane -t '%%'"
|
||||
|
||||
# ssh socket, important to create symlink in ~/.ssh/rc
|
||||
set-environment -g 'SSH_AUTH_SOCK' ~/.ssh/ssh_auth_sock
|
||||
# Update the session environment upon attaching
|
||||
set-option -g update-environment 'SSH_AUTH_SOCK SSH_CONNECTION DISPLAY'
|
||||
set-hook -g client-attached 'run-shell /bin/update_display.sh'
|
||||
|
||||
# Rename the session to the path
|
||||
set-option -g status-interval 5
|
||||
set-option -g automatic-rename on
|
||||
set-option -g automatic-rename-format '#{pane_current_path}'
|
||||
|
||||
# Shorten delay for relaying Esc (to e.g. vim). Too short and PgUp will not work
|
||||
set -sg escape-time 20
|
||||
|
||||
109
.vimrc
109
.vimrc
@@ -2,44 +2,50 @@ let mapleader = ","
|
||||
set nocompatible " be iMproved, required
|
||||
filetype off " required
|
||||
|
||||
let vundle_dir="~/.vim/bundle/Vundle.vim"
|
||||
if filereadable(expand(vundle_dir) . "/README.md")
|
||||
" set the runtime path to include Vundle and initialize
|
||||
let &rtp .= "," . vundle_dir
|
||||
call vundle#begin()
|
||||
let plug_fpath="~/.vim/autoload/plug.vim"
|
||||
if filereadable(expand(plug_fpath))
|
||||
call plug#begin()
|
||||
|
||||
Plugin 'VundleVim/Vundle.vim' " let Vundle manage Vundle, required
|
||||
|
||||
Plugin 'scrooloose/nerdtree'
|
||||
Plugin 'c.vim'
|
||||
Plugin 'jeetsukumaran/vim-buffergator'
|
||||
Plugin 'ericcurtin/CurtineIncSw.vim'
|
||||
Plugin 'tpope/vim-fugitive'
|
||||
Plugin 'tpope/vim-surround'
|
||||
Plugin 'ctrlpvim/ctrlp.vim'
|
||||
Plugin 'rhysd/vim-clang-format'
|
||||
Plugin 'godlygeek/tabular'
|
||||
Plugin 'airblade/vim-gitgutter'
|
||||
Plugin 'jeetsukumaran/vim-pythonsense'
|
||||
Plugin 'easymotion/vim-easymotion'
|
||||
Plugin 'cpiger/NeoDebug'
|
||||
Plugin 'ivan-krukov/vim-snakemake'
|
||||
Plugin 'nvie/vim-flake8'
|
||||
Plugin 'ludovicchabant/vim-gutentags'
|
||||
Plugin 'junegunn/vim-peekaboo'
|
||||
if empty($VIM_DISABLE_YCM)
|
||||
Plugin 'ycm-core/YouCompleteMe'
|
||||
Plug 'scrooloose/nerdtree'
|
||||
Plug 'vim-scripts/c.vim'
|
||||
Plug 'jeetsukumaran/vim-buffergator'
|
||||
Plug 'ericcurtin/CurtineIncSw.vim'
|
||||
Plug 'tpope/vim-fugitive'
|
||||
Plug 'tpope/vim-surround'
|
||||
Plug 'ctrlpvim/ctrlp.vim'
|
||||
Plug 'rhysd/vim-clang-format'
|
||||
Plug 'godlygeek/tabular'
|
||||
Plug 'airblade/vim-gitgutter'
|
||||
Plug 'jeetsukumaran/vim-pythonsense'
|
||||
Plug 'easymotion/vim-easymotion'
|
||||
Plug 'cpiger/NeoDebug'
|
||||
Plug 'ivan-krukov/vim-snakemake'
|
||||
Plug 'nvie/vim-flake8'
|
||||
Plug 'ludovicchabant/vim-gutentags'
|
||||
Plug 'junegunn/vim-peekaboo'
|
||||
if has('python3') && empty($VIM_DISABLE_YCM)
|
||||
Plug 'ycm-core/YouCompleteMe', { 'do': './install.py' }
|
||||
endif
|
||||
Plugin 'dense-analysis/ale'
|
||||
Plugin 'tpope/vim-unimpaired'
|
||||
Plug 'dense-analysis/ale'
|
||||
Plug 'tpope/vim-unimpaired'
|
||||
Plug 'JuliaEditorSupport/julia-vim'
|
||||
Plug 'tell-k/vim-autopep8'
|
||||
Plug 'tell-k/vim-autoflake'
|
||||
Plug 'jpalardy/vim-slime'
|
||||
Plug 'preservim/tagbar'
|
||||
Plug 'wellle/context.vim'
|
||||
|
||||
call vundle#end() " required
|
||||
call plug#end()
|
||||
else
|
||||
let vundle_repo="https://github.com/VundleVim/Vundle.vim.git"
|
||||
echo "Vundle not installed, type :CloneVundle to clone the vundle repo and install it"
|
||||
command! CloneVundle execute "!git clone " . vundle_repo . " " . vundle_dir | source $MYVIMRC | echo "Cloned Vundle. Do :PluginInstall"
|
||||
let plug_url="https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim"
|
||||
echo "Plug not installed, type :CurlPlug to download and install plug"
|
||||
command! CurlPlug execute "!curl -fLo " . plug_fpath . " --create-dirs " . plug_url | source $MYVIMRC | echo "Curled Plug. Do :PlugInstall"
|
||||
endif
|
||||
|
||||
set tabstop=4 " show existing tab with 4 spaces width
|
||||
set shiftwidth=4 " when indenting with '>', use 4 spaces width
|
||||
set expandtab " On pressing tab, insert 4 spaces
|
||||
|
||||
if !exists("vimrc_autocmds_loaded")
|
||||
let vimrc_autocmds_loaded = 1
|
||||
|
||||
@@ -55,6 +61,10 @@ if !exists("vimrc_autocmds_loaded")
|
||||
au BufRead,BufNewFile *.md setlocal textwidth=80 | setlocal colorcolumn=80
|
||||
au BufRead,BufNewFile *.py setlocal colorcolumn=100
|
||||
au FileType html setlocal shiftwidth=2 tabstop=2
|
||||
autocmd FileType javascript setlocal shiftwidth=2 tabstop=2
|
||||
autocmd FileType javascriptreact setlocal shiftwidth=2 tabstop=2
|
||||
autocmd FileType typescript setlocal shiftwidth=2 tabstop=2
|
||||
autocmd FileType typescriptreact setlocal shiftwidth=2 tabstop=2
|
||||
|
||||
if exists(":NERDTree")
|
||||
" Open NERDTree if no file specified
|
||||
@@ -80,10 +90,6 @@ autocmd GUIEnter * set visualbell t_vb=
|
||||
vnoremap > ><CR>gv
|
||||
vnoremap < <<CR>gv
|
||||
|
||||
set tabstop=4 " show existing tab with 4 spaces width
|
||||
set shiftwidth=4 " when indenting with '>', use 4 spaces width
|
||||
set expandtab " On pressing tab, insert 4 spaces
|
||||
|
||||
set mouse=a
|
||||
set hlsearch
|
||||
set scrolloff=5 " Don't let cursor be within 5 lines from top or bottom
|
||||
@@ -125,10 +131,21 @@ noremap Y y$
|
||||
command! -bang -range=% -complete=file -nargs=* W <line1>,<line2>write<bang> <args>
|
||||
command! -bang Q quit<bang>
|
||||
|
||||
let g:ctrlp_map = '<c-p>'
|
||||
let g:ctrlp_cmd = 'CtrlPMixed'
|
||||
let g:ctrlp_working_path_mode = 'ra' " Look for .git .hg .svn .bzr _darcs
|
||||
let g:ctrlp_custom_ignore = {
|
||||
\ 'dir': '\v[\/]\.(git|hg|svn|data|logs)$',
|
||||
\ 'file': '\v\.(exe|so|dll)$',
|
||||
\ }
|
||||
|
||||
" Gutentags configuration
|
||||
if !executable('ctags')
|
||||
let g:gutentags_enabled = 0
|
||||
else
|
||||
nmap <F1> :CtrlPTag<CR>
|
||||
nmap <F4> :TagbarToggle<CR>
|
||||
|
||||
let g:gutentags_add_default_project_roots = 0
|
||||
let g:gutentags_project_root = ['.git']
|
||||
|
||||
@@ -206,6 +223,7 @@ let g:ale_linters = {
|
||||
\ 'python': ['flake8'],
|
||||
\ 'c': ['gcc']
|
||||
\}
|
||||
let g:ale_virtualtext_cursor = 'disable'
|
||||
let g:ale_set_highlights = 1
|
||||
let g:ale_sign_error = '>>'
|
||||
let g:ale_sign_warning = '--'
|
||||
@@ -248,6 +266,7 @@ highlight GitGutterDelete ctermbg=NONE ctermfg=DarkRed
|
||||
highlight Search ctermbg=Brown ctermfg=LightRed
|
||||
highlight ColorColumn ctermbg=DarkBlue
|
||||
highlight Visual ctermbg=LightBlue
|
||||
highlight DiffChange ctermbg=black ctermfg=lightgreen
|
||||
highlight ALEInfo ctermbg=DarkBlue ctermfg=White
|
||||
highlight ALEWarning ctermbg=DarkBlue ctermfg=Black
|
||||
highlight ALEError ctermbg=DarkRed ctermfg=Black
|
||||
@@ -322,6 +341,20 @@ nmap <F2> :NERDTreeToggle<CR>
|
||||
nmap <F3> :NERDTreeFind<CR>
|
||||
map <F5> :call CurtineIncSw()<CR>
|
||||
|
||||
let g:context_enabled = 0
|
||||
map <F6> :ContextToggle<CR>
|
||||
map cp :ContextPeek<CR>
|
||||
|
||||
" Julialang
|
||||
let g:latex_to_unicode_auto = 1
|
||||
|
||||
noremap <expr> <F7> LaTeXtoUnicode#Toggle()
|
||||
noremap! <expr> <F7> LaTeXtoUnicode#Toggle()
|
||||
autocmd FileType python noremap <buffer> :call Autoflake()<CR> :call Autopep8()<CR>
|
||||
|
||||
let g:slime_target = "tmux"
|
||||
let g:slime_default_config = {"socket_name": "default", "target_pane": "{last}"}
|
||||
|
||||
nmap <Leader>cf :cd %:p:h <CR> " Change dir to parent of current file
|
||||
nmap <Leader>cg :cd $git_root_location <CR> " Change dir to git root
|
||||
nmap <Leader>vs :sp $HOME/.vimrc <CR>
|
||||
@@ -364,3 +397,7 @@ nmap <Leader>p :set paste! <CR>
|
||||
map <Leader>n :noh<CR>
|
||||
vmap <Leader>T :'<,'> Tabularize /
|
||||
nnoremap <leader>c :execute "set colorcolumn=" . (&colorcolumn == "" ? "120" : "")<CR>
|
||||
|
||||
" Insert "Embed IPython" command
|
||||
:command InsIPython :normal oimport IPython<CR>IPython.embed()<ESC><up>^
|
||||
nmap <Leader>i :InsIPython <CR>
|
||||
|
||||
33
.xinitrc
33
.xinitrc
@@ -1,33 +0,0 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# ~/.xinitrc
|
||||
#
|
||||
# Executed by startx (run your window manager from here)
|
||||
WM=i3
|
||||
if (( $# == 1 ))
|
||||
then
|
||||
WM=$1
|
||||
fi
|
||||
|
||||
if [ -d /etc/X11/xinit/xinitrc.d ]; then
|
||||
for f in /etc/X11/xinit/xinitrc.d/*; do
|
||||
[ -x "$f" ] && . "$f"
|
||||
done
|
||||
unset f
|
||||
fi
|
||||
|
||||
export EDITOR="vim"
|
||||
export CUPS_GSSSERVICENAME=HTTP
|
||||
|
||||
[[ -f ~/.Xresources ]] && xrdb -merge ~/.Xresources
|
||||
|
||||
rm -f "~/${WM}.log.old"
|
||||
mv -f "~/${WM}.log" "~/${WM}.log.old"
|
||||
rm -f "~/${WM}.log"
|
||||
rm -f "~/${WM}.log"
|
||||
|
||||
if [ "$WM" = "i3" ]; then
|
||||
. ~/.i3initrc
|
||||
else
|
||||
exec $WM >> "~/${WM}.log" 2>&1
|
||||
fi
|
||||
@@ -1,11 +0,0 @@
|
||||
#!/bin/bash
|
||||
|
||||
# To generate list of large packages
|
||||
# pacman -Qi | grep 'Name\|Size\|Description' | cut -d: -f2 | paste - - - | awk -F'\t' 'BEGIN{ s["MiB"]=1024; s["KiB"]=1;} {split($3, a, " "); print a[1] * s[a[2]], "KiB", $1}' | sort -n
|
||||
|
||||
LARGE_PKGS='linux jdk10-openjdk jre8-openjdk-headless jre10-openjdk-headless gimp gcc-list webkit2gtk gcc python chromium dropbox spotify mono bazel valgrind texlive-core linux-firmware'
|
||||
|
||||
echo -n "==> Looking for old packages to prune"
|
||||
paccache -rk1
|
||||
echo -n "==> Looking for old large packages to prune"
|
||||
paccache -rk0 $LARGE_PKGS
|
||||
Reference in New Issue
Block a user