kolejne zmiany, dużo, zebrało się
This commit is contained in:
144
.config/alacritty/alacritty.toml
Normal file
144
.config/alacritty/alacritty.toml
Normal file
@ -0,0 +1,144 @@
|
|||||||
|
|
||||||
|
[colors.bright]
|
||||||
|
black = "0x9ca5a6"
|
||||||
|
blue = "0x38B3BF"
|
||||||
|
cyan = "0xA5CCD5"
|
||||||
|
green = "0x297889"
|
||||||
|
magenta = "0x539DA8"
|
||||||
|
red = "0x23837B"
|
||||||
|
white = "0xdfecee"
|
||||||
|
yellow = "0x507785"
|
||||||
|
|
||||||
|
[colors.cursor]
|
||||||
|
cursor = "0xdfecee"
|
||||||
|
text = "0x0C0F11"
|
||||||
|
|
||||||
|
[colors.normal]
|
||||||
|
black = "0x0C0F11"
|
||||||
|
blue = "0x38B3BF"
|
||||||
|
cyan = "0xA5CCD5"
|
||||||
|
green = "0x297889"
|
||||||
|
magenta = "0x539DA8"
|
||||||
|
red = "0x23837B"
|
||||||
|
white = "0xdfecee"
|
||||||
|
yellow = "0x507785"
|
||||||
|
|
||||||
|
[colors.primary]
|
||||||
|
background = "0x0C0F11"
|
||||||
|
foreground = "0xdfecee"
|
||||||
|
|
||||||
|
[cursor]
|
||||||
|
style = "Beam"
|
||||||
|
|
||||||
|
[env]
|
||||||
|
TERM = "xterm-256color"
|
||||||
|
|
||||||
|
[font]
|
||||||
|
size = 9.0
|
||||||
|
|
||||||
|
[font.bold]
|
||||||
|
family = "Terminus (TTF)"
|
||||||
|
style = "Bold"
|
||||||
|
|
||||||
|
[font.italic]
|
||||||
|
family = "Terminus (TTF)"
|
||||||
|
style = "Regular"
|
||||||
|
|
||||||
|
[font.normal]
|
||||||
|
family = "Terminus (TTF)"
|
||||||
|
style = "Regular"
|
||||||
|
|
||||||
|
[font.offset]
|
||||||
|
x = 0
|
||||||
|
y = 0
|
||||||
|
|
||||||
|
[[keyboard.bindings]]
|
||||||
|
action = "SpawnNewInstance"
|
||||||
|
key = "Return"
|
||||||
|
mods = "Control|Shift"
|
||||||
|
|
||||||
|
[[keyboard.bindings]]
|
||||||
|
action = "Paste"
|
||||||
|
key = "V"
|
||||||
|
mods = "Alt"
|
||||||
|
|
||||||
|
[[keyboard.bindings]]
|
||||||
|
action = "IncreaseFontSize"
|
||||||
|
key = "J"
|
||||||
|
mods = "Alt"
|
||||||
|
|
||||||
|
[[keyboard.bindings]]
|
||||||
|
action = "DecreaseFontSize"
|
||||||
|
key = "K"
|
||||||
|
mods = "Alt"
|
||||||
|
|
||||||
|
[[keyboard.bindings]]
|
||||||
|
action = "ScrollPageUp"
|
||||||
|
key = "PageUp"
|
||||||
|
mods = "Shift"
|
||||||
|
|
||||||
|
[[keyboard.bindings]]
|
||||||
|
action = "ScrollPageDown"
|
||||||
|
key = "PageDown"
|
||||||
|
mods = "Shift"
|
||||||
|
|
||||||
|
[mouse]
|
||||||
|
hide_when_typing = true
|
||||||
|
|
||||||
|
[[mouse.bindings]]
|
||||||
|
action = "PasteSelection"
|
||||||
|
mods = "Shift"
|
||||||
|
mouse = "Middle"
|
||||||
|
|
||||||
|
[[mouse.bindings]]
|
||||||
|
action = "Paste"
|
||||||
|
mods = "Shift"
|
||||||
|
mouse = "Right"
|
||||||
|
|
||||||
|
[[mouse.bindings]]
|
||||||
|
action = "None"
|
||||||
|
mouse = "Middle"
|
||||||
|
|
||||||
|
[[mouse.bindings]]
|
||||||
|
action = "None"
|
||||||
|
mouse = "Right"
|
||||||
|
|
||||||
|
|
||||||
|
[scrolling]
|
||||||
|
history = 10000
|
||||||
|
multiplier = 3
|
||||||
|
|
||||||
|
[selection]
|
||||||
|
#ave_to_clipboard = true
|
||||||
|
semantic_escape_chars = ",│`|:\"' ()[]{}<>\t"
|
||||||
|
|
||||||
|
[terminal.shell]
|
||||||
|
args = ["-l"]
|
||||||
|
program = "/bin/zsh"
|
||||||
|
|
||||||
|
[window]
|
||||||
|
decorations = "none"
|
||||||
|
dynamic_padding = true
|
||||||
|
dynamic_title = true
|
||||||
|
opacity = 0.9
|
||||||
|
|
||||||
|
[window.class]
|
||||||
|
general = "Alacritty"
|
||||||
|
instance = "Alacritty"
|
||||||
|
|
||||||
|
[window.dimensions]
|
||||||
|
columns = 80
|
||||||
|
lines = 20
|
||||||
|
|
||||||
|
[window.padding]
|
||||||
|
x = 12
|
||||||
|
y = 12
|
||||||
|
|
||||||
|
[window.position]
|
||||||
|
x = 0
|
||||||
|
y = 0
|
||||||
|
|
||||||
|
[general]
|
||||||
|
working_directory = "None"
|
||||||
|
|
||||||
|
[terminal]
|
@ -1,5 +1,5 @@
|
|||||||
env:
|
env:
|
||||||
TERM: xterm-256color
|
TERM: xterm-256color
|
||||||
window:
|
window:
|
||||||
dimensions:
|
dimensions:
|
||||||
columns: 80
|
columns: 80
|
||||||
@ -34,7 +34,7 @@ font:
|
|||||||
style: Bold
|
style: Bold
|
||||||
italic:
|
italic:
|
||||||
family: Terminus (TTF)
|
family: Terminus (TTF)
|
||||||
style: Italic
|
style: Regular
|
||||||
size: 9.0
|
size: 9.0
|
||||||
offset:
|
offset:
|
||||||
x: 0
|
x: 0
|
||||||
@ -42,7 +42,7 @@ font:
|
|||||||
|
|
||||||
selection:
|
selection:
|
||||||
semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
|
semantic_escape_chars: ",│`|:\"' ()[]{}<>\t"
|
||||||
ave_to_clipboard: true
|
# ave_to_clipboard: true
|
||||||
|
|
||||||
cursor:
|
cursor:
|
||||||
style: Beam
|
style: Beam
|
||||||
@ -56,22 +56,22 @@ working_directory: None
|
|||||||
|
|
||||||
mouse:
|
mouse:
|
||||||
hide_when_typing: true
|
hide_when_typing: true
|
||||||
hints:
|
#hints:
|
||||||
launcher:
|
# launcher:
|
||||||
program: xdg-open
|
# program: xdg-open
|
||||||
args: []
|
# args: []
|
||||||
|
|
||||||
mouse_bindings:
|
mouse_bindings:
|
||||||
- { mouse: Middle, mods: Shift, action: PasteSelection }
|
- { mouse: Middle, mods: Shift, action: PasteSelection }
|
||||||
- { mouse: Right, mods: Shift, action: Paste }
|
- { mouse: Right, mods: Shift, action: Paste }
|
||||||
- { mouse: Middle, action: None }
|
- { mouse: Middle, action: None }
|
||||||
- { mouse: Right, action: None }
|
- { mouse: Right, action: None }
|
||||||
|
|
||||||
key_bindings:
|
key_bindings:
|
||||||
- { key: Return, mods: Control|Shift, action: SpawnNewInstance }
|
- { key: Return, mods: Control|Shift, action: SpawnNewInstance }
|
||||||
- { key: V, mods: Alt, action: Paste}
|
- { key: V, mods: Alt, action: Paste }
|
||||||
- { key: J, mods: Alt, action: IncreaseFontSize }
|
- { key: J, mods: Alt, action: IncreaseFontSize }
|
||||||
- { key: K, mods: Alt, action: DecreaseFontSize }
|
- { key: K, mods: Alt, action: DecreaseFontSize }
|
||||||
# - { key: J, mods: Shift, action: ScrollLineUp}
|
# - { key: J, mods: Shift, action: ScrollLineUp}
|
||||||
# - { key: K, mods: Shift, action: ScrollLineDown}
|
# - { key: K, mods: Shift, action: ScrollLineDown}
|
||||||
# { mouse: Middle, action: PasteSelection }
|
# { mouse: Middle, action: PasteSelection }
|
||||||
@ -79,8 +79,8 @@ key_bindings:
|
|||||||
#- { key: Copy, action: Copy }
|
#- { key: Copy, action: Copy }
|
||||||
#- { key: L, mods: Control, action: ClearLogNotice }
|
#- { key: L, mods: Control, action: ClearLogNotice }
|
||||||
#- { key: L, mods: Control, mode: ~Vi, chars: "\x0c" }
|
#- { key: L, mods: Control, mode: ~Vi, chars: "\x0c" }
|
||||||
- { key: PageUp, mods: Shift, action: ScrollPageUp, }
|
- { key: PageUp, mods: Shift, action: ScrollPageUp }
|
||||||
- { key: PageDown, mods: Shift, action: ScrollPageDown }
|
- { key: PageDown, mods: Shift, action: ScrollPageDown }
|
||||||
#- { key: Home, mods: Shift, mode: ~Alt, action: ScrollToTop, }
|
#- { key: Home, mods: Shift, mode: ~Alt, action: ScrollToTop, }
|
||||||
#- { key: End, mods: Shift, mode: ~Alt, action: ScrollToBottom }
|
#- { key: End, mods: Shift, mode: ~Alt, action: ScrollToBottom }
|
||||||
|
|
||||||
@ -230,41 +230,38 @@ key_bindings:
|
|||||||
# cyan: '0x8ec07c'
|
# cyan: '0x8ec07c'
|
||||||
# white: '0xebdbb2'
|
# white: '0xebdbb2'
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
# Colors (Hyper)
|
# Colors (Hyper)
|
||||||
colors:
|
#colors:
|
||||||
# Default colors
|
# # Default colors
|
||||||
primary:
|
# primary:
|
||||||
background: '0x000000'
|
# background: '0x000000'
|
||||||
foreground: '0xffffff'
|
# foreground: '0xffffff'
|
||||||
cursor:
|
# cursor:
|
||||||
text: '0xF81CE5'
|
# text: '0xF81CE5'
|
||||||
cursor: '0xffffff'
|
# cursor: '0xffffff'
|
||||||
|
|
||||||
# Normal colors
|
# Normal colors
|
||||||
normal:
|
# normal:
|
||||||
black: '0x000000'
|
# black: '0x000000'
|
||||||
red: '0xfe0100'
|
# red: '0xfe0100'
|
||||||
green: '0x33ff00'
|
# green: '0x33ff00'
|
||||||
yellow: '0xfeff00'
|
# yellow: '0xfeff00'
|
||||||
blue: '0x0066ff'
|
# blue: '0x0066ff'
|
||||||
magenta: '0xcc00ff'
|
# magenta: '0xcc00ff'
|
||||||
cyan: '0x00ffff'
|
# cyan: '0x00ffff'
|
||||||
white: '0xd0d0d0'
|
# white: '0xd0d0d0'
|
||||||
|
|
||||||
|
# Bright colors
|
||||||
|
# bright:
|
||||||
|
# black: '0x808080'
|
||||||
|
# red: '0xfe0100'
|
||||||
|
# green: '0x33ff00'
|
||||||
|
# yellow: '0xfeff00'
|
||||||
|
# blue: '0x0066ff'
|
||||||
|
# magenta: '0xcc00ff'
|
||||||
|
# cyan: '0x00ffff'
|
||||||
|
# white: '0xFFFFFF'
|
||||||
|
|
||||||
# Bright colors
|
|
||||||
bright:
|
|
||||||
black: '0x808080'
|
|
||||||
red: '0xfe0100'
|
|
||||||
green: '0x33ff00'
|
|
||||||
yellow: '0xfeff00'
|
|
||||||
blue: '0x0066ff'
|
|
||||||
magenta: '0xcc00ff'
|
|
||||||
cyan: '0x00ffff'
|
|
||||||
white: '0xFFFFFF'
|
|
||||||
|
|
||||||
|
|
||||||
# Colors (Gotham)
|
# Colors (Gotham)
|
||||||
# colors:
|
# colors:
|
||||||
# # Default colors
|
# # Default colors
|
||||||
@ -296,28 +293,28 @@ colors:
|
|||||||
# BEGIN ACE
|
# BEGIN ACE
|
||||||
colors:
|
colors:
|
||||||
primary:
|
primary:
|
||||||
background: '0x0C0F11'
|
background: '0x0f0e09'
|
||||||
foreground: '0xdfecee'
|
foreground: '0xdbcdac'
|
||||||
cursor:
|
cursor:
|
||||||
text: '0x0C0F11'
|
text: '0x0f0e09'
|
||||||
cursor: '0xdfecee'
|
cursor: '0xdbcdac'
|
||||||
normal:
|
normal:
|
||||||
black: '0x0C0F11'
|
black: '0x0f0e09'
|
||||||
red: '0x23837B'
|
red: '0x6B5835'
|
||||||
green: '0x297889'
|
green: '0x324443'
|
||||||
yellow: '0x507785'
|
yellow: '0x746A46'
|
||||||
blue: '0x38B3BF'
|
blue: '0x8C552E'
|
||||||
magenta: '0x539DA8'
|
magenta: '0x89784D'
|
||||||
cyan: '0xA5CCD5'
|
cyan: '0x9F8D5E'
|
||||||
white: '0xdfecee'
|
white: '0xdbcdac'
|
||||||
bright:
|
bright:
|
||||||
black: '0x9ca5a6'
|
black: '0x998f78'
|
||||||
red: '0x23837B'
|
red: '0x6B5835'
|
||||||
green: '0x297889'
|
green: '0x324443'
|
||||||
yellow: '0x507785'
|
yellow: '0x746A46'
|
||||||
blue: '0x38B3BF'
|
blue: '0x8C552E'
|
||||||
magenta: '0x539DA8'
|
magenta: '0x89784D'
|
||||||
cyan: '0xA5CCD5'
|
cyan: '0x9F8D5E'
|
||||||
white: '0xdfecee'
|
white: '0xdbcdac'
|
||||||
|
|
||||||
# END ACE
|
# END ACE
|
||||||
|
@ -2,10 +2,10 @@
|
|||||||
LocationMode=path-bar
|
LocationMode=path-bar
|
||||||
ShowHidden=false
|
ShowHidden=false
|
||||||
ShowSizeColumn=true
|
ShowSizeColumn=true
|
||||||
GeometryX=2376
|
GeometryX=456
|
||||||
GeometryY=194
|
GeometryY=1287
|
||||||
GeometryWidth=1008
|
GeometryWidth=1008
|
||||||
GeometryHeight=690
|
GeometryHeight=690
|
||||||
SortColumn=name
|
SortColumn=modified
|
||||||
SortOrder=ascending
|
SortOrder=descending
|
||||||
StartupMode=recent
|
StartupMode=recent
|
||||||
|
@ -1 +1,2 @@
|
|||||||
|
file:///home/paramah/Projects
|
||||||
file:///home/paramah/Nextcloud
|
file:///home/paramah/Nextcloud
|
||||||
|
@ -1,191 +1,2 @@
|
|||||||
/* Custom styles */
|
/* Remove dotted lines from GTK 3 applications */
|
||||||
|
.undershoot.top, .undershoot.right, .undershoot.bottom, .undershoot.left { background-image: none; }
|
||||||
/* select-off
|
|
||||||
@define-color selected_bg_color #398ee7;
|
|
||||||
@define-color selected_fg_color #eeeeee;
|
|
||||||
@define-color theme_selected_bg_color @selected_bg_color;
|
|
||||||
@define-color theme_selected_fg_color @selected_fg_color;
|
|
||||||
select-off */
|
|
||||||
|
|
||||||
/* panel-off
|
|
||||||
@define-color panel_bg_color #cccccc;
|
|
||||||
@define-color panel_fg_color #333333;
|
|
||||||
|
|
||||||
PanelWidget,
|
|
||||||
PanelApplet,
|
|
||||||
PanelToplevel,
|
|
||||||
PanelSeparator,
|
|
||||||
PanelApplet > GtkMenuBar.menubar,
|
|
||||||
PanelApplet > GtkMenuBar.menubar.menuitem,
|
|
||||||
PanelMenuBar.menubar,
|
|
||||||
PanelMenuBar.menubar.menuitem,
|
|
||||||
PanelAppletFrame,
|
|
||||||
UnityPanelWidget,
|
|
||||||
.gnome-panel-menu-bar,
|
|
||||||
.unity-panel {
|
|
||||||
background-image: -gtk-gradient(linear,left top,left bottom,from(shade(@panel_bg_color,1.2)),to(shade(@panel_bg_color,0.8)));
|
|
||||||
color: @panel_fg_color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.unity-panel.menuitem,
|
|
||||||
.unity-panel .menuitem {
|
|
||||||
color: @panel_fg_color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.unity-panel.menubar.menuitem:hover,
|
|
||||||
.unity-panel.menubar .menuitem *:hover {
|
|
||||||
border-color: shade(@panel_bg_color, 0.7);
|
|
||||||
border-image: none;
|
|
||||||
background-image: -gtk-gradient(linear,left top,left bottom,from(shade(@panel_bg_color, 0.97)),to(shade(@panel_bg_color, 0.82)));
|
|
||||||
color: @panel_fg_color;
|
|
||||||
}
|
|
||||||
|
|
||||||
PanelApplet .button {
|
|
||||||
border-color: transparent;
|
|
||||||
border-image: none;
|
|
||||||
background-image: -gtk-gradient(linear,left top,left bottom,from(shade(@panel_bg_color,1.2)),to(shade(@panel_bg_color,0.8)));
|
|
||||||
color: @panel_fg_color;
|
|
||||||
box-shadow: none;
|
|
||||||
text-shadow: none;
|
|
||||||
-unico-inner-stroke-width: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
PanelApplet .button:active {
|
|
||||||
border-color: shade(@panel_bg_color,0.8);
|
|
||||||
border-image: none;
|
|
||||||
background-image: -gtk-gradient(linear,left top,left bottom,from(shade(shade(@panel_bg_color,1.02),0.9)),to(shade(shade(@panel_bg_color,1.02),0.95)));
|
|
||||||
color: @panel_fg_color;
|
|
||||||
box-shadow: none;
|
|
||||||
text-shadow: none;
|
|
||||||
-unico-inner-stroke-width: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
PanelApplet .button:prelight {
|
|
||||||
border-color: transparent;
|
|
||||||
border-image: none;
|
|
||||||
background-image: -gtk-gradient(linear,left top,left bottom,from(shade(@panel_bg_color,1.2)),to(shade(@panel_bg_color,1.0)));
|
|
||||||
color: @panel_fg_color;
|
|
||||||
box-shadow: none;
|
|
||||||
text-shadow: none;
|
|
||||||
-unico-inner-stroke-width: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
PanelApplet .button:active:prelight {
|
|
||||||
border-color: shade(@panel_bg_color,0.8);
|
|
||||||
border-image: none;
|
|
||||||
background-image: -gtk-gradient(linear,left top,left bottom,from(shade(shade(@panel_bg_color,1.02),1.0)),to(shade(shade(@panel_bg_color,1.02),1.05)));
|
|
||||||
color: @panel_fg_color;
|
|
||||||
box-shadow: none;
|
|
||||||
text-shadow: none;
|
|
||||||
-unico-inner-stroke-width: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
WnckPager,
|
|
||||||
WnckTasklist {
|
|
||||||
background-color: @panel_bg_color;
|
|
||||||
}
|
|
||||||
|
|
||||||
panel-off */
|
|
||||||
|
|
||||||
/* menu-off
|
|
||||||
@define-color menu_bg_color #eeeeee;
|
|
||||||
@define-color menu_fg_color #333333;
|
|
||||||
|
|
||||||
GtkTreeMenu.menu,
|
|
||||||
GtkMenuToolButton.menu,
|
|
||||||
GtkComboBox .menu {
|
|
||||||
background-color: @menu_bg_color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.primary-toolbar .button .menu,
|
|
||||||
.toolbar .menu,
|
|
||||||
.toolbar .primary-toolbar .menu,
|
|
||||||
.menu {
|
|
||||||
border-style: none;
|
|
||||||
background-image: none;
|
|
||||||
background-color: @menu_bg_color;
|
|
||||||
color: @menu_fg_color;
|
|
||||||
box-shadow: none;
|
|
||||||
text-shadow: none;
|
|
||||||
-unico-inner-stroke-width: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.menu.button:hover,
|
|
||||||
.menu.button:active,
|
|
||||||
.menu.button:active:insensitive,
|
|
||||||
.menu.button:insensitive,
|
|
||||||
.menu.button {
|
|
||||||
background-color: @menu_bg_color;
|
|
||||||
background-image: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
GtkTreeMenu .menuitem * {
|
|
||||||
color: @menu_fg_color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.menuitem,
|
|
||||||
.menu .menuitem {
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
.menu .menuitem:active,
|
|
||||||
.menu .menuitem:hover {
|
|
||||||
background-color: @theme_selected_bg_color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.menuitem.check,
|
|
||||||
.menuitem.radio,
|
|
||||||
.menuitem.check:hover,
|
|
||||||
.menuitem.radio:hover,
|
|
||||||
.menuitem.check:active,
|
|
||||||
.menuitem.radio:active {
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
|
|
||||||
.menu .menuitem:insensitive,
|
|
||||||
.menu .menuitem *:insensitive {
|
|
||||||
color: mix(@menu_fg_color,@menu_bg_color,0.5);
|
|
||||||
}
|
|
||||||
|
|
||||||
.menuitem.arrow {
|
|
||||||
color: alpha(@menu_fg_color, 0.6);
|
|
||||||
}
|
|
||||||
|
|
||||||
.menuitem .entry {
|
|
||||||
border-color: shade(@menu_bg_color,0.7);
|
|
||||||
border-image: none;
|
|
||||||
background-color: @menu_bg_color;
|
|
||||||
background-image: none;
|
|
||||||
color: @menu_fg_color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.menuitem .accelerator {
|
|
||||||
color: alpha(@menu_fg_color,0.6);
|
|
||||||
}
|
|
||||||
|
|
||||||
.menuitem .accelerator:insensitive {
|
|
||||||
color: alpha(mix(@menu_fg_color,@menu_bg_color,0.5),0.6);
|
|
||||||
text-shadow: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.menuitem.separator {
|
|
||||||
background-color: transparent;
|
|
||||||
color: shade(@menu_bg_color, 0.9);
|
|
||||||
}
|
|
||||||
|
|
||||||
.menuitem GtkCalendar,
|
|
||||||
.menuitem GtkCalendar.button,
|
|
||||||
.menuitem GtkCalendar.header,
|
|
||||||
.menuitem GtkCalendar.view {
|
|
||||||
border-color: shade(@menu_bg_color,0.8);
|
|
||||||
border-image: none;
|
|
||||||
background-color: @menu_bg_color;
|
|
||||||
background-image: none;
|
|
||||||
color: @menu_fg_color;
|
|
||||||
}
|
|
||||||
|
|
||||||
.menuitem GtkCalendar:inconsistent {
|
|
||||||
color: mix(@menu_fg_color,@menu_bg_color,0.5);
|
|
||||||
}
|
|
||||||
|
|
||||||
menu-off */
|
|
||||||
|
@ -1,11 +1,19 @@
|
|||||||
[Settings]
|
[Settings]
|
||||||
gtk-application-prefer-dark-theme=1
|
gtk-theme-name=Adwaita
|
||||||
gtk-button-images=1
|
gtk-icon-theme-name=Adwaita
|
||||||
|
gtk-font-name=Cantarell 10
|
||||||
gtk-cursor-theme-name=Adwaita
|
gtk-cursor-theme-name=Adwaita
|
||||||
gtk-fallback-icon-theme=Adwaita
|
gtk-cursor-theme-size=24
|
||||||
gtk-font-name=Noto Sans Cypriot Regular 9
|
|
||||||
gtk-icon-theme-name=Gruvbox
|
|
||||||
gtk-menu-images=0
|
|
||||||
gtk-primary-button-warps-slider=false
|
|
||||||
gtk-theme-name=Breeze-Dark
|
|
||||||
gtk-toolbar-style=GTK_TOOLBAR_ICONS
|
gtk-toolbar-style=GTK_TOOLBAR_ICONS
|
||||||
|
gtk-toolbar-icon-size=GTK_ICON_SIZE_SMALL_TOOLBAR
|
||||||
|
gtk-button-images=1
|
||||||
|
gtk-menu-images=0
|
||||||
|
gtk-enable-event-sounds=1
|
||||||
|
gtk-enable-input-feedback-sounds=0
|
||||||
|
gtk-xft-antialias=1
|
||||||
|
gtk-xft-hinting=1
|
||||||
|
gtk-xft-hintstyle=hintmedium
|
||||||
|
gtk-xft-rgba=rgb
|
||||||
|
gtk-application-prefer-dark-theme=1
|
||||||
|
gtk-fallback-icon-theme=Adwaita
|
||||||
|
gtk-primary-button-warps-slider=false
|
||||||
|
@ -13,4 +13,24 @@
|
|||||||
</metadata>
|
</metadata>
|
||||||
</info>
|
</info>
|
||||||
</bookmark>
|
</bookmark>
|
||||||
|
<bookmark href="smb://myszka/projekty/" added="2024-01-06T15:22:09.410445Z" modified="2024-01-20T14:30:44.304461Z" visited="2024-01-20T14:30:44.304459Z">
|
||||||
|
<title>projekty na myszka</title>
|
||||||
|
<info>
|
||||||
|
<metadata owner="http://freedesktop.org">
|
||||||
|
<bookmark:applications>
|
||||||
|
<bookmark:application name="org.gnome.Nautilus" exec="'org.gnome.Nautilus %u'" modified="2024-01-20T14:30:44.304459Z" count="3"/>
|
||||||
|
</bookmark:applications>
|
||||||
|
</metadata>
|
||||||
|
</info>
|
||||||
|
</bookmark>
|
||||||
|
<bookmark href="smb://myszka/media/" added="2024-01-18T11:53:45.487441Z" modified="2024-01-18T11:53:45.487444Z" visited="2024-01-18T11:53:45.487441Z">
|
||||||
|
<title>media na myszka</title>
|
||||||
|
<info>
|
||||||
|
<metadata owner="http://freedesktop.org">
|
||||||
|
<bookmark:applications>
|
||||||
|
<bookmark:application name="org.gnome.Nautilus" exec="'org.gnome.Nautilus %u'" modified="2024-01-18T11:53:45.487442Z" count="1"/>
|
||||||
|
</bookmark:applications>
|
||||||
|
</metadata>
|
||||||
|
</info>
|
||||||
|
</bookmark>
|
||||||
</xbel>
|
</xbel>
|
@ -1,23 +1,13 @@
|
|||||||
profile Home {
|
profile Home {
|
||||||
output eDP-1 mode 1920x1080@60Hz position 1920,0
|
output eDP-1 mode 1920x1080 position 850,1080 transform normal
|
||||||
output DP-3 mode 1920x1080@60Hz position 3830,0
|
output DP-3 mode 1920x1080 position 0,0 transform normal
|
||||||
output DP-4 mode 1920x1080@60Hz position 0,0
|
output DP-4 mode 1920x1080 position 1920,10 transform normal
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
profile HomeAS {
|
profile HomeAS {
|
||||||
output eDP-1 mode 1920x1080@60Hz position 1920,0
|
output eDP-1 mode 1920x1080 position 850,1080 transform normal
|
||||||
output DP-5 mode 1920x1080@60Hz position 3830,0
|
output DP-5 mode 1920x1080 position 0,0 transform normal
|
||||||
output DP-6 mode 1920x1080@60Hz position 0,0
|
output DP-6 mode 1920x1080 position 1920,10 transform normal
|
||||||
}
|
}
|
||||||
|
|
||||||
profile StreamSage {
|
|
||||||
output eDP-1 mode 1920x1080@60Hz position 1910,0
|
|
||||||
output DP-7 mode 1920x1080@60Hz position 3830,0
|
|
||||||
output DP-6 mode 1920x1080@60Hz position 0,0
|
|
||||||
}
|
|
||||||
|
|
||||||
profile StreamSage_duzy {
|
|
||||||
output eDP-1 mode 1920x1080 position 1930,0
|
|
||||||
output DP-4 mode 1920x1080 position 0,0
|
|
||||||
output DP-5 mode 1920x1080 position 3870,0
|
|
||||||
}
|
|
||||||
|
13
.config/sway/autostart
Normal file
13
.config/sway/autostart
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
exec rm /tmp/nwg-shell-check-update.lock
|
||||||
|
exec wlsunset -t 4500 -T 6500 -l -1 -L -1 -g 1.0
|
||||||
|
exec swaync -s /home/paramah/.config/swaync/preset-0.css
|
||||||
|
exec nm-applet --indicator
|
||||||
|
exec wl-paste --type text --watch cliphist store
|
||||||
|
exec wl-paste --type image --watch cliphist store
|
||||||
|
exec_always nwg-autotiling
|
||||||
|
exec_always nwg-drawer -r -c 6 -is 64 -fscol 2 -s preset-0.css -term foot -ft -pbexit 'nwg-dialog -p exit-sway -c "swaymsg exit"' -pblock 'nwg-lock' -pbpoweroff 'nwg-dialog -p poweroff -c "systemctl -i poweroff"' -pbreboot 'nwg-dialog -p reboot -c "systemctl reboot"' -pbsleep 'nwg-dialog -p sleep -c "systemctl suspend"' -pbsize 48
|
||||||
|
exec_always nwg-panel -c preset-0 -s preset-0.css
|
||||||
|
exec_always nwg-shell-check-updates
|
||||||
|
#exec swayidle timeout 1200 nwg-lock timeout 1800 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"'
|
||||||
|
exec nwg-update-indicator
|
||||||
|
exec_always nwg-screenshot-applet
|
46
.config/sway/config-backup-20240519-141059
Normal file
46
.config/sway/config-backup-20240519-141059
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
# Default config for sway
|
||||||
|
#
|
||||||
|
# Copy this to ~/.config/sway/config and edit it to your liking.
|
||||||
|
#
|
||||||
|
# Read `man 5 sway` for a complete reference.
|
||||||
|
|
||||||
|
### Variables
|
||||||
|
#
|
||||||
|
# Logo key. Use Mod1 for Alt.
|
||||||
|
set $mod Mod4
|
||||||
|
set $alt Mod1
|
||||||
|
|
||||||
|
# Home row direction keys, like vim
|
||||||
|
set $left h
|
||||||
|
set $down j
|
||||||
|
set $up k
|
||||||
|
set $right l
|
||||||
|
# Your preferred terminal emulator
|
||||||
|
# set $term foot
|
||||||
|
set $term alacritty
|
||||||
|
# Your preferred application launcher
|
||||||
|
# Note: pass the final command to swaymsg so that the resulting window can be opened
|
||||||
|
# on the original workspace that the command was run on.
|
||||||
|
set $menu dmenu_path | dmenu | xargs swaymsg exec --
|
||||||
|
|
||||||
|
font Terminus 9
|
||||||
|
#font pango:SourceCodePro Medium 11
|
||||||
|
|
||||||
|
gaps inner 10
|
||||||
|
default_border none
|
||||||
|
default_border normal 0
|
||||||
|
|
||||||
|
### Output configuration
|
||||||
|
#
|
||||||
|
# Default wallpaper (more resolutions are available in @datadir@/backgrounds/sway/)
|
||||||
|
# output * bg ~/Wallpapers/deusex.jpg fill
|
||||||
|
|
||||||
|
|
||||||
|
#for_window [app_id="^launcher$"] floating enable, sticky enable, resize set 30 ppt 60 ppt, border pixel 10
|
||||||
|
#set $menu exec $term --class=launcher -e /home/paramah/bin/sway-launcher-desktop.sh
|
||||||
|
#bindsym $mod+d exec $menu
|
||||||
|
|
||||||
|
# include @sysconfdir@/sway/config.d/*
|
||||||
|
|
||||||
|
|
||||||
|
include $HOME/.config/sway/sway.d/*.conf
|
8
.config/sway/keyboard
Normal file
8
.config/sway/keyboard
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
input "type:keyboard" {
|
||||||
|
xkb_layout pl
|
||||||
|
repeat_delay 300
|
||||||
|
repeat_rate 40
|
||||||
|
xkb_capslock disabled
|
||||||
|
xkb_numlock disabled
|
||||||
|
}
|
||||||
|
bindsym --release Super_L exec $launcher
|
0
.config/sway/outputs
Normal file
0
.config/sway/outputs
Normal file
5
.config/sway/pointer
Normal file
5
.config/sway/pointer
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
input "type:pointer" {
|
||||||
|
natural_scroll disabled
|
||||||
|
scroll_factor 1.0
|
||||||
|
left_handed disabled
|
||||||
|
}
|
@ -15,7 +15,7 @@ workspace 2 output eDP-1
|
|||||||
workspace 3 output DP-3
|
workspace 3 output DP-3
|
||||||
workspace 4 output DP-3
|
workspace 4 output DP-3
|
||||||
|
|
||||||
workspace 5 output DP-4
|
workspace 5 output DP-3
|
||||||
|
|
||||||
workspace 10 output eDP-1
|
workspace 10 output eDP-1
|
||||||
|
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
for_window [app_id="(.*)telegram(.*)"] resize set 900 600, move scratchpad, border pixel 1
|
for_window [app_id="(.*)telegram(.*)"] resize set 900 600, move scratchpad, border pixel 1
|
||||||
for_window [class="Mattermost"] resize set 900 600, move scratchpad, border pixel 1
|
for_window [class="Mattermost"] resize set 900 600, move scratchpad, border pixel 1
|
||||||
for_window [title="WhatsApp"] move scratchpad, border pixel 1
|
for_window [title="WhatsApp"] move scratchpad, border pixel 1
|
||||||
|
for_window [class="Element"] move scratchpad, resize set 1000 800, border pixel 1
|
||||||
for_window [class="discord"] move scratchpad, border pixel 1
|
for_window [class="discord"] move scratchpad, border pixel 1
|
||||||
for_window [window_role="floating"] floating enable
|
for_window [window_role="floating"] floating enable
|
||||||
for_window [class="QSyncthingTray"] floating enable
|
for_window [class="QSyncthingTray"] floating enable
|
||||||
@ -13,6 +14,8 @@ for_window [class="Gnome-calculator"] floating enable
|
|||||||
for_window [class="zoom"] move scratchpad, floating enable
|
for_window [class="zoom"] move scratchpad, floating enable
|
||||||
for_window [class="Signal"] move scratchpad
|
for_window [class="Signal"] move scratchpad
|
||||||
|
|
||||||
|
for_window [class="Trilium Notes"] move scratchpad, resize set 1200 800, border normal 2
|
||||||
|
|
||||||
for_window [class="pavucontrol"] floating enable
|
for_window [class="pavucontrol"] floating enable
|
||||||
for_window [app_id="zenity"] floating enable
|
for_window [app_id="zenity"] floating enable
|
||||||
|
|
||||||
|
@ -147,12 +147,12 @@ bindsym Shift+$mod+b exec rofi-buku
|
|||||||
## Screenshot // Screenshot active display // <Print> ##
|
## Screenshot // Screenshot active display // <Print> ##
|
||||||
#bindsym Print exec $BIN_DIR/screenshots.sh display
|
#bindsym Print exec $BIN_DIR/screenshots.sh display
|
||||||
#bindsym --locked Print exec grim -o "$(swaymsg --type get_outputs --raw | jq -r '.[] | select(.focused) | .name')" - | swappy -f -
|
#bindsym --locked Print exec grim -o "$(swaymsg --type get_outputs --raw | jq -r '.[] | select(.focused) | .name')" - | swappy -f -
|
||||||
bindsym --locked Print exec /usr/share/sway/scripts/grimshot --notify save area - | swappy -f -
|
bindsym --locked Print exec grimshot --notify save area - | swappy -f -
|
||||||
|
|
||||||
## Screenshot // Screenshot current window // <><Print> ##
|
## Screenshot // Screenshot current window // <><Print> ##
|
||||||
#bindsym $mod+Print exec $BIN_DIR/screenshots.sh window
|
#bindsym $mod+Print exec $BIN_DIR/screenshots.sh window
|
||||||
#bindsym $mod+Print exec swaymsg -t get_tree | jq -r '.. | (.nodes? // empty)[] | select(.focused) | .rect | "\(.x),\(.y) \(.width)x\(.height)"' | grim -g - - | swappy -f -
|
#bindsym $mod+Print exec swaymsg -t get_tree | jq -r '.. | (.nodes? // empty)[] | select(.focused) | .rect | "\(.x),\(.y) \(.width)x\(.height)"' | grim -g - - | swappy -f -
|
||||||
bindsym $mod+Print exec /usr/share/sway/scripts/grimshot --notify save output - | swappy -f -
|
bindsym $mod+Print exec grimshot --notify save output - | swappy -f -
|
||||||
|
|
||||||
## Modify // Monitor brightness up // <XF86MonBrightnessUp> ##
|
## Modify // Monitor brightness up // <XF86MonBrightnessUp> ##
|
||||||
#bindsym XF86MonBrightnessUp exec light -A 5
|
#bindsym XF86MonBrightnessUp exec light -A 5
|
||||||
@ -201,6 +201,8 @@ bindsym $mod+x exec $BIN_DIR/dmenuscreenshare.sh
|
|||||||
bindsym $mod+p [class="Mattermost"] scratchpad show
|
bindsym $mod+p [class="Mattermost"] scratchpad show
|
||||||
bindsym $mod+Shift+m [class="Thunderbird"] scratchpad show
|
bindsym $mod+Shift+m [class="Thunderbird"] scratchpad show
|
||||||
|
|
||||||
|
bindsym $mod+n [class="Trilium Notes"] scratchpad show
|
||||||
|
|
||||||
bindsym $mod+i exec --no-startup-id /home/paramah/.config/rofi/launchers/type-4/launcher.sh -show window
|
bindsym $mod+i exec --no-startup-id /home/paramah/.config/rofi/launchers/type-4/launcher.sh -show window
|
||||||
bindsym $mod+Shift+o exec --no-startup-id ~/.config/rofi/scripts/nmvpnmenu.sh
|
bindsym $mod+Shift+o exec --no-startup-id ~/.config/rofi/scripts/nmvpnmenu.sh
|
||||||
bindsym $mod+o exec --no-startup-id ~/.config/rofi/scripts/sound.sh
|
bindsym $mod+o exec --no-startup-id ~/.config/rofi/scripts/sound.sh
|
||||||
|
13
.config/sway/touchpad
Normal file
13
.config/sway/touchpad
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
input "type:touchpad" {
|
||||||
|
pointer_accel 0.0
|
||||||
|
natural_scroll disabled
|
||||||
|
scroll_factor 1.0
|
||||||
|
scroll_method two_finger
|
||||||
|
left_handed disabled
|
||||||
|
tap enabled
|
||||||
|
tap_button_map lrm
|
||||||
|
drag enabled
|
||||||
|
drag_lock disabled
|
||||||
|
dwt enabled
|
||||||
|
middle_emulation enabled
|
||||||
|
}
|
6
.config/sway/variables
Normal file
6
.config/sway/variables
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
set $term foot
|
||||||
|
set $browser chromium --enable-features=UseOzonePlatform --ozone-platform=wayland
|
||||||
|
set $filemanager thunar
|
||||||
|
set $editor vim
|
||||||
|
set $launcher nwg-drawer
|
||||||
|
set $exit $launcher
|
0
.config/sway/workspaces
Normal file
0
.config/sway/workspaces
Normal file
11
.config/systemd/user/crc-daemon.service
Normal file
11
.config/systemd/user/crc-daemon.service
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
|
||||||
|
[Unit]
|
||||||
|
Description=CRC daemon
|
||||||
|
Requires=crc-http.socket
|
||||||
|
Requires=crc-vsock.socket
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
# This allows systemd to know when startup is not complete (for example, because of a preflight failure)
|
||||||
|
# daemon.SdNotify(false, daemon.SdNotifyReady) must be called before the startup is successful
|
||||||
|
Type=notify
|
||||||
|
ExecStart=/home/paramah/.crc/bin/crc daemon
|
9
.config/systemd/user/crc-http.socket
Normal file
9
.config/systemd/user/crc-http.socket
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=CRC HTTP socket
|
||||||
|
|
||||||
|
[Socket]
|
||||||
|
ListenStream=%h/.crc/crc-http.sock
|
||||||
|
Service=crc-daemon.service
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=default.target
|
9
.config/systemd/user/crc-vsock.socket
Normal file
9
.config/systemd/user/crc-vsock.socket
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=CRC vsock socket
|
||||||
|
|
||||||
|
[Socket]
|
||||||
|
ListenStream=vsock::1024
|
||||||
|
Service=crc-daemon.service
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=default.target
|
1
.config/systemd/user/default.target.wants/crc-http.socket
Symbolic link
1
.config/systemd/user/default.target.wants/crc-http.socket
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/home/paramah/.config/systemd/user/crc-http.socket
|
1
.config/systemd/user/default.target.wants/crc-vsock.socket
Symbolic link
1
.config/systemd/user/default.target.wants/crc-vsock.socket
Symbolic link
@ -0,0 +1 @@
|
|||||||
|
/home/paramah/.config/systemd/user/crc-vsock.socket
|
@ -0,0 +1 @@
|
|||||||
|
/home/paramah/.config/systemd/user/gitwatch@.service
|
10
.config/systemd/user/gitwatch@.service
Normal file
10
.config/systemd/user/gitwatch@.service
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=Watch file or directory and git commit all changes. run with: systemctl --user --now enable gitwatch@$(systemd-escape -- "'-r url/to/repository' /path/to/folder").service
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Environment="SCRIPT_ARGS=%I"
|
||||||
|
ExecStart=/usr/bin/bash -c "/home/paramah/bin/gitwatch ${SCRIPT_ARGS}"
|
||||||
|
ExecStop=/bin/true
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=default.target
|
4
.config/waybar/bin/lampka.sh
Executable file
4
.config/waybar/bin/lampka.sh
Executable file
@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
curl -X POST -d '' http://192.168.88.129:8123/api/webhook/-atYLUfPeumO_uApfB5X5vOst
|
||||||
|
|
@ -1,2 +1,2 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
curl -X POST -d '' http://192.168.88.169:8123/api/webhook/tv_voldown
|
curl -X POST -d '' http://192.168.88.129:8123/api/webhook/tv_voldown
|
||||||
|
@ -1,2 +1,2 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
curl -X POST -d '' http://192.168.88.169:8123/api/webhook/tv_volup
|
curl -X POST -d '' http://192.168.88.129:8123/api/webhook/tv_volup
|
||||||
|
14
.gitconfig
14
.gitconfig
@ -79,14 +79,14 @@
|
|||||||
[includeIf "gitdir:~/Projects/CyfroweNiebo/"]
|
[includeIf "gitdir:~/Projects/CyfroweNiebo/"]
|
||||||
path = ~/Projects/CyfroweNiebo/.gitconfig
|
path = ~/Projects/CyfroweNiebo/.gitconfig
|
||||||
|
|
||||||
[includeIf "gitdir:~/Projects/streamsage.io/"]
|
#[includeIf "gitdir:~/Projects/streamsage.io/"]
|
||||||
path = ~/Projects/streamsage.io/.gitconfig
|
# path = ~/Projects/streamsage.io/.gitconfig
|
||||||
|
|
||||||
[includeIf "gitdir:~/Projects/stream-sage/"]
|
#[includeIf "gitdir:~/Projects/stream-sage/"]
|
||||||
path = ~/Projects/streamsage.io/.gitconfig
|
# path = ~/Projects/streamsage.io/.gitconfig
|
||||||
|
|
||||||
[includeIf "gitdir:~/Projects/cardboard.live/"]
|
#[includeIf "gitdir:~/Projects/cardboard.live/"]
|
||||||
path = ~/Projects/streamsage.io/.gitconfig
|
# path = ~/Projects/streamsage.io/.gitconfig
|
||||||
|
|
||||||
[includeIf "gitdir:~/Projects/GONG/"]
|
[includeIf "gitdir:~/Projects/GONG/"]
|
||||||
path = ~/Projects/GONG/.gitconfig
|
path = ~/Projects/GONG/.gitconfig
|
||||||
@ -117,3 +117,5 @@
|
|||||||
|
|
||||||
[safe]
|
[safe]
|
||||||
directory = /opt/flutter
|
directory = /opt/flutter
|
||||||
|
[credential]
|
||||||
|
helper = store
|
||||||
|
@ -1,6 +1,3 @@
|
|||||||
--
|
𝔸𝕝𝕖𝕜𝕤𝕒𝕟𝕕𝕖𝕣 ℂ𝕪𝕟𝕒𝕣𝕤𝕜𝕚
|
||||||
Aleksander "paramah" Cynarski
|
DevOps ☣ Developer ☣ Freak
|
||||||
-------------------------------
|
https://cynarski.pl
|
||||||
PGP/GPG: http://gpg.cynarski.pl
|
|
||||||
About: http://cynarski.pl
|
|
||||||
|
|
||||||
|
@ -80,6 +80,8 @@ set -g @plugin 'tmux-plugins/tmux-sessionist'
|
|||||||
|
|
||||||
set -g default-terminal "screen-256color"
|
set -g default-terminal "screen-256color"
|
||||||
|
|
||||||
|
#set -s copy-command 'wl-copy'
|
||||||
|
|
||||||
set-option -g status on
|
set-option -g status on
|
||||||
set-option -g status-interval 2
|
set-option -g status-interval 2
|
||||||
set-option -g status-justify "centre"
|
set-option -g status-justify "centre"
|
||||||
|
42
.zshrc
42
.zshrc
@ -43,6 +43,9 @@ export PATH="/home/paramah/bin:$PATH"
|
|||||||
export PATH="$HOME/.symfony/bin:$PATH"
|
export PATH="$HOME/.symfony/bin:$PATH"
|
||||||
export PATH="/home/paramah/.linkerd2/bin:$PATH"
|
export PATH="/home/paramah/.linkerd2/bin:$PATH"
|
||||||
|
|
||||||
|
#dotnet
|
||||||
|
export DOTNET_ROOT=$HOME/.dotnet
|
||||||
|
|
||||||
# Path to your oh-my-zsh installation.
|
# Path to your oh-my-zsh installation.
|
||||||
export ZSH=$HOME/.oh-my-zsh
|
export ZSH=$HOME/.oh-my-zsh
|
||||||
#source /usr/share/zsh-theme-powerlevel9k/powerlevel9k.zsh-theme
|
#source /usr/share/zsh-theme-powerlevel9k/powerlevel9k.zsh-theme
|
||||||
@ -56,10 +59,10 @@ source /usr/bin/virtualenvwrapper.sh
|
|||||||
|
|
||||||
plugins=(
|
plugins=(
|
||||||
zsh-autosuggestions
|
zsh-autosuggestions
|
||||||
virtualenvwrapper
|
#virtualenvwrapper
|
||||||
virtualenv
|
virtualenv
|
||||||
taskwarrior
|
#taskwarrior
|
||||||
timewarrior
|
#timewarrior
|
||||||
archlinux
|
archlinux
|
||||||
systemd
|
systemd
|
||||||
themes
|
themes
|
||||||
@ -73,6 +76,9 @@ plugins=(
|
|||||||
terraform
|
terraform
|
||||||
asdf
|
asdf
|
||||||
#aterminal
|
#aterminal
|
||||||
|
poetry
|
||||||
|
#fzf-tab-completion
|
||||||
|
sd
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
@ -91,6 +97,8 @@ zplug "kazhala/dotbare"
|
|||||||
|
|
||||||
# autocomplete on steroids
|
# autocomplete on steroids
|
||||||
zstyle ':completion:*' fzf-search-display true
|
zstyle ':completion:*' fzf-search-display true
|
||||||
|
zstyle ':completion::*:ls::*' fzf-completion-opts --preview='eval head {1}'
|
||||||
|
zstyle ':completion::*:cat::*' fzf-completion-opts --preview='eval head {1}'
|
||||||
|
|
||||||
# Map widgets to key
|
# Map widgets to key
|
||||||
bindkey '^ge' fzf-select-widget
|
bindkey '^ge' fzf-select-widget
|
||||||
@ -242,7 +250,6 @@ alias tfw="terraform workspace"
|
|||||||
autoload -U +X bashcompinit && bashcompinit
|
autoload -U +X bashcompinit && bashcompinit
|
||||||
complete -o nospace -C /usr/bin/vault vault
|
complete -o nospace -C /usr/bin/vault vault
|
||||||
|
|
||||||
xset b off
|
|
||||||
#wal -i ~/Wallpapers/5sense1.jpg
|
#wal -i ~/Wallpapers/5sense1.jpg
|
||||||
#wal -i ~/Wallpapers/steampunk_1.jpg
|
#wal -i ~/Wallpapers/steampunk_1.jpg
|
||||||
#wal -i ~/Wallpapers/steampunk_5.jpg
|
#wal -i ~/Wallpapers/steampunk_5.jpg
|
||||||
@ -390,7 +397,7 @@ mb() {
|
|||||||
|
|
||||||
export PAGER=bat
|
export PAGER=bat
|
||||||
|
|
||||||
alias ls="exa"
|
#alias ls="exa"
|
||||||
#cat ~/.ideas
|
#cat ~/.ideas
|
||||||
#
|
#
|
||||||
|
|
||||||
@ -406,8 +413,8 @@ then
|
|||||||
echo -en "\e]0;$(id --user --name)@$(hostname): ${1}\a"
|
echo -en "\e]0;$(id --user --name)@$(hostname): ${1}\a"
|
||||||
}
|
}
|
||||||
fi
|
fi
|
||||||
PROG=tea _CLI_ZSH_AUTOCOMPLETE_HACK=1 source "/home/paramah/.config/tea/autocomplete.zsh"
|
#PROG=tea _CLI_ZSH_AUTOCOMPLETE_HACK=1 source "/home/paramah/.config/tea/autocomplete.zsh"
|
||||||
PROG=ledo _CLI_ZSH_AUTOCOMPLETE_HACK=1 source "/home/paramah/.config/ledo/autocomplete.zsh"
|
#PROG=ledo _CLI_ZSH_AUTOCOMPLETE_HACK=1 source "/home/paramah/.config/ledo/autocomplete.zsh"
|
||||||
|
|
||||||
PATH="/home/paramah/perl5/bin${PATH:+:${PATH}}"; export PATH;
|
PATH="/home/paramah/perl5/bin${PATH:+:${PATH}}"; export PATH;
|
||||||
PERL5LIB="/home/paramah/perl5/lib/perl5${PERL5LIB:+:${PERL5LIB}}"; export PERL5LIB;
|
PERL5LIB="/home/paramah/perl5/lib/perl5${PERL5LIB:+:${PERL5LIB}}"; export PERL5LIB;
|
||||||
@ -417,7 +424,7 @@ PERL_MM_OPT="INSTALL_BASE=/home/paramah/perl5"; export PERL_MM_OPT;
|
|||||||
PATH="/home/paramah/.local/share/gem/ruby/3.0.0/bin${PATH:+${PATH}}"; export PATH;
|
PATH="/home/paramah/.local/share/gem/ruby/3.0.0/bin${PATH:+${PATH}}"; export PATH;
|
||||||
|
|
||||||
#source <(clockify-cli completion zsh)
|
#source <(clockify-cli completion zsh)
|
||||||
source <(kubectl completion zsh)
|
#source <(kubectl completion zsh)
|
||||||
source <(helm completion zsh)
|
source <(helm completion zsh)
|
||||||
source <(kubectl completion zsh)
|
source <(kubectl completion zsh)
|
||||||
POWERLEVEL9K_DISABLE_CONFIGURATION_WIZARD=true
|
POWERLEVEL9K_DISABLE_CONFIGURATION_WIZARD=true
|
||||||
@ -443,3 +450,22 @@ typeset -g POWERLEVEL9K_AWS_SHOW_ON_DEMAND=''
|
|||||||
#export GPG_TTY=$(tty)
|
#export GPG_TTY=$(tty)
|
||||||
#gpgconf --launch gpg-agent
|
#gpgconf --launch gpg-agent
|
||||||
#gpg-connect-agent updatestartuptty /bye >/dev/null
|
#gpg-connect-agent updatestartuptty /bye >/dev/null
|
||||||
|
|
||||||
|
#export NVM_DIR="$HOME/.nvm"
|
||||||
|
#[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
|
||||||
|
#[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
|
||||||
|
#
|
||||||
|
autoload bashcompinit
|
||||||
|
bashcompinit
|
||||||
|
source /usr/lib/python3.12/site-packages/argcomplete/bash_completion.d/_python-argcomplete
|
||||||
|
|
||||||
|
# pnpm
|
||||||
|
export PNPM_HOME="/home/paramah/.local/share/pnpm"
|
||||||
|
case ":$PATH:" in
|
||||||
|
*":$PNPM_HOME:"*) ;;
|
||||||
|
*) export PATH="$PNPM_HOME:$PATH" ;;
|
||||||
|
esac
|
||||||
|
# pnpm end
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
413
bin/gitwatch
Executable file
413
bin/gitwatch
Executable file
@ -0,0 +1,413 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
#
|
||||||
|
# gitwatch - watch file or directory and git commit all changes as they happen
|
||||||
|
#
|
||||||
|
# Copyright (C) 2013-2018 Patrick Lehner
|
||||||
|
# with modifications and contributions by:
|
||||||
|
# - Matthew McGowan
|
||||||
|
# - Dominik D. Geyer
|
||||||
|
# - Phil Thompson
|
||||||
|
# - Dave Musicant
|
||||||
|
#
|
||||||
|
#############################################################################
|
||||||
|
# This program is free software: you can redistribute it and/or modify
|
||||||
|
# it under the terms of the GNU General Public License as published by
|
||||||
|
# the Free Software Foundation, either version 3 of the License, or
|
||||||
|
# (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
#############################################################################
|
||||||
|
#
|
||||||
|
# Idea and original code taken from http://stackoverflow.com/a/965274
|
||||||
|
# original work by Lester Buck
|
||||||
|
# (but heavily modified by now)
|
||||||
|
#
|
||||||
|
# Requires the command 'inotifywait' to be available, which is part of
|
||||||
|
# the inotify-tools (See https://github.com/rvoicilas/inotify-tools ),
|
||||||
|
# and (obviously) git.
|
||||||
|
# Will check the availability of both commands using the `which` command
|
||||||
|
# and will abort if either command (or `which`) is not found.
|
||||||
|
#
|
||||||
|
|
||||||
|
REMOTE=""
|
||||||
|
PULL_BEFORE_PUSH=0
|
||||||
|
BRANCH=""
|
||||||
|
SLEEP_TIME=2
|
||||||
|
DATE_FMT="+%Y-%m-%d %H:%M:%S"
|
||||||
|
COMMITMSG="Scripted auto-commit on change (%d) by gitwatch.sh"
|
||||||
|
LISTCHANGES=-1
|
||||||
|
LISTCHANGES_COLOR="--color=always"
|
||||||
|
GIT_DIR=""
|
||||||
|
SKIP_IF_MERGING=0
|
||||||
|
|
||||||
|
# Print a message about how to use this script
|
||||||
|
shelp() {
|
||||||
|
echo "gitwatch - watch file or directory and git commit all changes as they happen"
|
||||||
|
echo ""
|
||||||
|
echo "Usage:"
|
||||||
|
echo "${0##*/} [-s <secs>] [-d <fmt>] [-r <remote> [-b <branch>]]"
|
||||||
|
echo " [-m <msg>] [-l|-L <lines>] [-x <pattern>] [-M] <target>"
|
||||||
|
echo ""
|
||||||
|
echo "Where <target> is the file or folder which should be watched. The target needs"
|
||||||
|
echo "to be in a Git repository, or in the case of a folder, it may also be the top"
|
||||||
|
echo "folder of the repo."
|
||||||
|
echo ""
|
||||||
|
echo " -s <secs> After detecting a change to the watched file or directory,"
|
||||||
|
echo " wait <secs> seconds until committing, to allow for more"
|
||||||
|
echo " write actions of the same batch to finish; default is 2sec"
|
||||||
|
echo " -d <fmt> The format string used for the timestamp in the commit"
|
||||||
|
echo " message; see 'man date' for details; default is "
|
||||||
|
echo ' "+%Y-%m-%d %H:%M:%S"'
|
||||||
|
echo " -r <remote> If given and non-empty, a 'git push' to the given <remote>"
|
||||||
|
echo " is done after every commit; default is empty, i.e. no push"
|
||||||
|
echo " -R If given along with -r, a 'git pull --rebase <remote>' is done before any push"
|
||||||
|
echo " -b <branch> The branch which should be pushed automatically;"
|
||||||
|
echo " - if not given, the push command used is 'git push <remote>',"
|
||||||
|
echo " thus doing a default push (see git man pages for details)"
|
||||||
|
echo " - if given and"
|
||||||
|
echo " + repo is in a detached HEAD state (at launch)"
|
||||||
|
echo " then the command used is 'git push <remote> <branch>'"
|
||||||
|
echo " + repo is NOT in a detached HEAD state (at launch)"
|
||||||
|
echo " then the command used is"
|
||||||
|
echo " 'git push <remote> <current branch>:<branch>' where"
|
||||||
|
echo " <current branch> is the target of HEAD (at launch)"
|
||||||
|
echo " if no remote was defined with -r, this option has no effect"
|
||||||
|
echo " -g <path> Location of the .git directory, if stored elsewhere in"
|
||||||
|
echo " a remote location. This specifies the --git-dir parameter"
|
||||||
|
echo " -l <lines> Log the actual changes made in this commit, up to a given"
|
||||||
|
echo " number of lines, or all lines if 0 is given"
|
||||||
|
echo " -L <lines> Same as -l but without colored formatting"
|
||||||
|
echo " -m <msg> The commit message used for each commit; all occurrences of"
|
||||||
|
echo " %d in the string will be replaced by the formatted date/time"
|
||||||
|
echo " (unless the <fmt> specified by -d is empty, in which case %d"
|
||||||
|
echo " is replaced by an empty string); the default message is:"
|
||||||
|
echo ' "Scripted auto-commit on change (%d) by gitwatch.sh"'
|
||||||
|
echo " -e <events> Events passed to inotifywait to watch (defaults to "
|
||||||
|
echo " '$EVENTS')"
|
||||||
|
echo " (useful when using inotify-win, e.g. -e modify,delete,move)"
|
||||||
|
echo " (currently ignored on Mac, which only uses default values)"
|
||||||
|
echo " -M Prevent commits when there is an ongoing merge in the repo"
|
||||||
|
echo " -x <pattern> Pattern to exclude from inotifywait"
|
||||||
|
echo ""
|
||||||
|
echo "As indicated, several conditions are only checked once at launch of the"
|
||||||
|
echo "script. You can make changes to the repo state and configurations even while"
|
||||||
|
echo "the script is running, but that may lead to undefined and unpredictable (even"
|
||||||
|
echo "destructive) behavior!"
|
||||||
|
echo "It is therefore recommended to terminate the script before changing the repo's"
|
||||||
|
echo "config and restarting it afterwards."
|
||||||
|
echo ""
|
||||||
|
echo 'By default, gitwatch tries to use the binaries "git", "inotifywait", and'
|
||||||
|
echo "\"readline\", expecting to find them in the PATH (it uses 'which' to check this"
|
||||||
|
echo "and will abort with an error if they cannot be found). If you want to use"
|
||||||
|
echo "binaries that are named differently and/or located outside of your PATH, you can"
|
||||||
|
echo "define replacements in the environment variables GW_GIT_BIN, GW_INW_BIN, and"
|
||||||
|
echo "GW_RL_BIN for git, inotifywait, and readline, respectively."
|
||||||
|
}
|
||||||
|
|
||||||
|
# print all arguments to stderr
|
||||||
|
stderr() {
|
||||||
|
echo "$@" >&2
|
||||||
|
}
|
||||||
|
|
||||||
|
# clean up at end of program, killing the remaining sleep process if it still exists
|
||||||
|
cleanup() {
|
||||||
|
if [[ -n $SLEEP_PID ]] && kill -0 "$SLEEP_PID" &> /dev/null; then
|
||||||
|
kill "$SLEEP_PID" &> /dev/null
|
||||||
|
fi
|
||||||
|
exit 0
|
||||||
|
}
|
||||||
|
|
||||||
|
# Tests for the availability of a command
|
||||||
|
is_command() {
|
||||||
|
hash "$1" 2> /dev/null
|
||||||
|
}
|
||||||
|
|
||||||
|
# Test whether or not current git directory has ongoign merge
|
||||||
|
is_merging () {
|
||||||
|
[ -f "$(git rev-parse --git-dir)"/MERGE_HEAD ]
|
||||||
|
}
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
|
while getopts b:d:h:g:L:l:m:p:r:s:e:x:MR option; do # Process command line options
|
||||||
|
case "${option}" in
|
||||||
|
b) BRANCH=${OPTARG} ;;
|
||||||
|
d) DATE_FMT=${OPTARG} ;;
|
||||||
|
h)
|
||||||
|
shelp
|
||||||
|
exit
|
||||||
|
;;
|
||||||
|
g) GIT_DIR=${OPTARG} ;;
|
||||||
|
l) LISTCHANGES=${OPTARG} ;;
|
||||||
|
L)
|
||||||
|
LISTCHANGES=${OPTARG}
|
||||||
|
LISTCHANGES_COLOR=""
|
||||||
|
;;
|
||||||
|
m) COMMITMSG=${OPTARG} ;;
|
||||||
|
M) SKIP_IF_MERGING=1 ;;
|
||||||
|
p | r) REMOTE=${OPTARG} ;;
|
||||||
|
R) PULL_BEFORE_PUSH=1 ;;
|
||||||
|
s) SLEEP_TIME=${OPTARG} ;;
|
||||||
|
x) EXCLUDE_PATTERN=${OPTARG} ;;
|
||||||
|
e) EVENTS=${OPTARG} ;;
|
||||||
|
*)
|
||||||
|
stderr "Error: Option '${option}' does not exist."
|
||||||
|
shelp
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
shift $((OPTIND - 1)) # Shift the input arguments, so that the input file (last arg) is $1 in the code below
|
||||||
|
|
||||||
|
if [ $# -ne 1 ]; then # If no command line arguments are left (that's bad: no target was passed)
|
||||||
|
shelp # print usage help
|
||||||
|
exit # and exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
# if custom bin names are given for git, inotifywait, or readlink, use those; otherwise fall back to "git", "inotifywait", and "readlink"
|
||||||
|
if [ -z "$GW_GIT_BIN" ]; then GIT="git"; else GIT="$GW_GIT_BIN"; fi
|
||||||
|
|
||||||
|
if [ -z "$GW_INW_BIN" ]; then
|
||||||
|
# if Mac, use fswatch
|
||||||
|
if [ "$(uname)" != "Darwin" ]; then
|
||||||
|
INW="inotifywait"
|
||||||
|
EVENTS="${EVENTS:-close_write,move,move_self,delete,create,modify}"
|
||||||
|
else
|
||||||
|
INW="fswatch"
|
||||||
|
# default events specified via a mask, see
|
||||||
|
# https://emcrisostomo.github.io/fswatch/doc/1.14.0/fswatch.html/Invoking-fswatch.html#Numeric-Event-Flags
|
||||||
|
# default of 414 = MovedTo + MovedFrom + Renamed + Removed + Updated + Created
|
||||||
|
# = 256 + 128+ 16 + 8 + 4 + 2
|
||||||
|
EVENTS="${EVENTS:---event=414}"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
INW="$GW_INW_BIN"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$GW_RL_BIN" ]; then RL="readlink"; else RL="$GW_RL_BIN"; fi
|
||||||
|
|
||||||
|
# Check availability of selected binaries and die if not met
|
||||||
|
for cmd in "$GIT" "$INW"; do
|
||||||
|
is_command "$cmd" || {
|
||||||
|
stderr "Error: Required command '$cmd' not found."
|
||||||
|
exit 2
|
||||||
|
}
|
||||||
|
done
|
||||||
|
unset cmd
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
|
SLEEP_PID="" # pid of timeout subprocess
|
||||||
|
|
||||||
|
trap "cleanup" EXIT # make sure the timeout is killed when exiting script
|
||||||
|
|
||||||
|
# Expand the path to the target to absolute path
|
||||||
|
if [ "$(uname)" != "Darwin" ]; then
|
||||||
|
IN=$($RL -f "$1")
|
||||||
|
else
|
||||||
|
if is_command "greadlink"; then
|
||||||
|
IN=$(greadlink -f "$1")
|
||||||
|
else
|
||||||
|
IN=$($RL -f "$1")
|
||||||
|
if [ $? -eq 1 ]; then
|
||||||
|
echo "Seems like your readlink doesn't support '-f'. Running without. Please 'brew install coreutils'."
|
||||||
|
IN=$($RL "$1")
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -d "$1" ]; then # if the target is a directory
|
||||||
|
|
||||||
|
TARGETDIR=$(sed -e "s/\/*$//" <<< "$IN") # dir to CD into before using git commands: trim trailing slash, if any
|
||||||
|
|
||||||
|
if [ -z $EXCLUDE_PATTERN ]; then
|
||||||
|
EXCLUDE_OPTS="'(\.git/|\.git$)'"
|
||||||
|
else
|
||||||
|
EXCLUDE_OPTS="'(\.git/|\.git$|$EXCLUDE_PATTERN)'"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# construct inotifywait-commandline
|
||||||
|
if [ "$(uname)" != "Darwin" ]; then
|
||||||
|
INW_ARGS=("-qmr" "-e" "$EVENTS" "--exclude" $EXCLUDE_OPTS "\"$TARGETDIR\"")
|
||||||
|
else
|
||||||
|
# still need to fix EVENTS since it wants them listed one-by-one
|
||||||
|
INW_ARGS=("--recursive" "$EVENTS" "-E" "--exclude" $EXCLUDE_OPTS "\"$TARGETDIR\"")
|
||||||
|
fi
|
||||||
|
GIT_ADD_ARGS="--all ." # add "." (CWD) recursively to index
|
||||||
|
GIT_COMMIT_ARGS="" # add -a switch to "commit" call just to be sure
|
||||||
|
|
||||||
|
elif [ -f "$1" ]; then # if the target is a single file
|
||||||
|
|
||||||
|
TARGETDIR=$(dirname "$IN") # dir to CD into before using git commands: extract from file name
|
||||||
|
# construct inotifywait-commandline
|
||||||
|
if [ "$(uname)" != "Darwin" ]; then
|
||||||
|
INW_ARGS=("-qm" "-e" "$EVENTS" "$IN")
|
||||||
|
else
|
||||||
|
INW_ARGS=("$EVENTS" "$IN")
|
||||||
|
fi
|
||||||
|
|
||||||
|
GIT_ADD_ARGS="$IN" # add only the selected file to index
|
||||||
|
GIT_COMMIT_ARGS="" # no need to add anything more to "commit" call
|
||||||
|
else
|
||||||
|
stderr "Error: The target is neither a regular file nor a directory."
|
||||||
|
exit 3
|
||||||
|
fi
|
||||||
|
|
||||||
|
# If $GIT_DIR is set, verify that it is a directory, and then add parameters to
|
||||||
|
# git command as need be
|
||||||
|
if [ -n "$GIT_DIR" ]; then
|
||||||
|
|
||||||
|
if [ ! -d "$GIT_DIR" ]; then
|
||||||
|
stderr ".git location is not a directory: $GIT_DIR"
|
||||||
|
exit 4
|
||||||
|
fi
|
||||||
|
|
||||||
|
GIT="$GIT --no-pager --work-tree $TARGETDIR --git-dir $GIT_DIR"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Check if commit message needs any formatting (date splicing)
|
||||||
|
if ! grep "%d" > /dev/null <<< "$COMMITMSG"; then # if commitmsg didn't contain %d, grep returns non-zero
|
||||||
|
DATE_FMT="" # empty date format (will disable splicing in the main loop)
|
||||||
|
FORMATTED_COMMITMSG="$COMMITMSG" # save (unchanging) commit message
|
||||||
|
fi
|
||||||
|
|
||||||
|
# CD into right dir
|
||||||
|
cd "$TARGETDIR" || {
|
||||||
|
stderr "Error: Can't change directory to '${TARGETDIR}'."
|
||||||
|
exit 5
|
||||||
|
}
|
||||||
|
|
||||||
|
if [ -n "$REMOTE" ]; then # are we pushing to a remote?
|
||||||
|
if [ -z "$BRANCH" ]; then # Do we have a branch set to push to ?
|
||||||
|
PUSH_CMD="$GIT push $REMOTE" # Branch not set, push to remote without a branch
|
||||||
|
else
|
||||||
|
# check if we are on a detached HEAD
|
||||||
|
if HEADREF=$($GIT symbolic-ref HEAD 2> /dev/null); then # HEAD is not detached
|
||||||
|
#PUSH_CMD="$GIT push $REMOTE $(sed "s_^refs/heads/__" <<< "$HEADREF"):$BRANCH"
|
||||||
|
PUSH_CMD="$GIT push $REMOTE ${HEADREF#refs/heads/}:$BRANCH"
|
||||||
|
else # HEAD is detached
|
||||||
|
PUSH_CMD="$GIT push $REMOTE $BRANCH"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
if [[ $PULL_BEFORE_PUSH -eq 1 ]]; then
|
||||||
|
PULL_CMD="$GIT pull --rebase $REMOTE" # Branch not set, pull to remote without a branch
|
||||||
|
fi
|
||||||
|
|
||||||
|
else
|
||||||
|
PUSH_CMD="" # if not remote is selected, make sure push command is empty
|
||||||
|
PULL_CMD="" # if not remote is selected, make sure pull command is empty
|
||||||
|
fi
|
||||||
|
|
||||||
|
# A function to reduce git diff output to the actual changed content, and insert file line numbers.
|
||||||
|
# Based on "https://stackoverflow.com/a/12179492/199142" by John Mellor
|
||||||
|
diff-lines() {
|
||||||
|
local path=
|
||||||
|
local line=
|
||||||
|
local previous_path=
|
||||||
|
while read -r; do
|
||||||
|
esc=$'\033'
|
||||||
|
if [[ $REPLY =~ ---\ (a/)?([^[:blank:]$esc]+).* ]]; then
|
||||||
|
previous_path=${BASH_REMATCH[2]}
|
||||||
|
continue
|
||||||
|
elif [[ $REPLY =~ \+\+\+\ (b/)?([^[:blank:]$esc]+).* ]]; then
|
||||||
|
path=${BASH_REMATCH[2]}
|
||||||
|
elif [[ $REPLY =~ @@\ -[0-9]+(,[0-9]+)?\ \+([0-9]+)(,[0-9]+)?\ @@.* ]]; then
|
||||||
|
line=${BASH_REMATCH[2]}
|
||||||
|
elif [[ $REPLY =~ ^($esc\[[0-9;]+m)*([\ +-]) ]]; then
|
||||||
|
REPLY=${REPLY:0:150} # limit the line width, so it fits in a single line in most git log outputs
|
||||||
|
if [[ $path == "/dev/null" ]]; then
|
||||||
|
echo "File $previous_path deleted or moved."
|
||||||
|
continue
|
||||||
|
else
|
||||||
|
echo "$path:$line: $REPLY"
|
||||||
|
fi
|
||||||
|
if [[ ${BASH_REMATCH[2]} != - ]]; then
|
||||||
|
((line++))
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
|
||||||
|
# main program loop: wait for changes and commit them
|
||||||
|
# whenever inotifywait reports a change, we spawn a timer (sleep process) that gives the writing
|
||||||
|
# process some time (in case there are a lot of changes or w/e); if there is already a timer
|
||||||
|
# running when we receive an event, we kill it and start a new one; thus we only commit if there
|
||||||
|
# have been no changes reported during a whole timeout period
|
||||||
|
eval "$INW" "${INW_ARGS[@]}" | while read -r line; do
|
||||||
|
# is there already a timeout process running?
|
||||||
|
if [[ -n $SLEEP_PID ]] && kill -0 "$SLEEP_PID" &> /dev/null; then
|
||||||
|
# kill it and wait for completion
|
||||||
|
kill "$SLEEP_PID" &> /dev/null || true
|
||||||
|
wait "$SLEEP_PID" &> /dev/null || true
|
||||||
|
fi
|
||||||
|
|
||||||
|
# start timeout process
|
||||||
|
(
|
||||||
|
sleep "$SLEEP_TIME" # wait some more seconds to give apps time to write out all changes
|
||||||
|
|
||||||
|
if [ -n "$DATE_FMT" ]; then
|
||||||
|
#FORMATTED_COMMITMSG="$(sed "s/%d/$(date "$DATE_FMT")/" <<< "$COMMITMSG")" # splice the formatted date-time into the commit message
|
||||||
|
FORMATTED_COMMITMSG="${COMMITMSG/\%d/$(date "$DATE_FMT")}" # splice the formatted date-time into the commit message
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ $LISTCHANGES -ge 0 ]]; then # allow listing diffs in the commit log message, unless if there are too many lines changed
|
||||||
|
DIFF_COMMITMSG="$($GIT diff -U0 "$LISTCHANGES_COLOR" | diff-lines)"
|
||||||
|
LENGTH_DIFF_COMMITMSG=0
|
||||||
|
if [[ $LISTCHANGES -ge 1 ]]; then
|
||||||
|
LENGTH_DIFF_COMMITMSG=$(echo -n "$DIFF_COMMITMSG" | grep -c '^')
|
||||||
|
fi
|
||||||
|
if [[ $LENGTH_DIFF_COMMITMSG -le $LISTCHANGES ]]; then
|
||||||
|
# Use git diff as the commit msg, unless if files were added or deleted but not modified
|
||||||
|
if [ -n "$DIFF_COMMITMSG" ]; then
|
||||||
|
FORMATTED_COMMITMSG="$DIFF_COMMITMSG"
|
||||||
|
else
|
||||||
|
FORMATTED_COMMITMSG="New files added: $($GIT status -s)"
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
#FORMATTED_COMMITMSG="Many lines were modified. $FORMATTED_COMMITMSG"
|
||||||
|
FORMATTED_COMMITMSG=$($GIT diff --stat | grep '|')
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
# CD into right dir
|
||||||
|
cd "$TARGETDIR" || {
|
||||||
|
stderr "Error: Can't change directory to '${TARGETDIR}'."
|
||||||
|
exit 6
|
||||||
|
}
|
||||||
|
STATUS=$($GIT status -s)
|
||||||
|
if [ -n "$STATUS" ]; then # only commit if status shows tracked changes.
|
||||||
|
# We want GIT_ADD_ARGS and GIT_COMMIT_ARGS to be word splitted
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
|
||||||
|
if [ "$SKIP_IF_MERGING" -eq 1 ] && is_merging; then
|
||||||
|
echo "Skipping commit - repo is merging"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
$GIT add $GIT_ADD_ARGS # add file(s) to index
|
||||||
|
# shellcheck disable=SC2086
|
||||||
|
$GIT commit $GIT_COMMIT_ARGS -m"$FORMATTED_COMMITMSG" # construct commit message and commit
|
||||||
|
|
||||||
|
if [ -n "$PULL_CMD" ]; then
|
||||||
|
echo "Pull command is $PULL_CMD"
|
||||||
|
eval "$PULL_CMD"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -n "$PUSH_CMD" ]; then
|
||||||
|
echo "Push command is $PUSH_CMD"
|
||||||
|
eval "$PUSH_CMD"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
) & # and send into background
|
||||||
|
|
||||||
|
SLEEP_PID=$! # and remember its PID
|
||||||
|
done
|
32
bin/wireguard-cynarski.sh
Executable file
32
bin/wireguard-cynarski.sh
Executable file
@ -0,0 +1,32 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
IPS=( "3.71.86.69" )
|
||||||
|
GW="10.0.200.2"
|
||||||
|
|
||||||
|
MODE=$1
|
||||||
|
|
||||||
|
function r_up() {
|
||||||
|
for host in "${IPS[@]}"
|
||||||
|
do
|
||||||
|
ip r a ${host} via ${GW}
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
function r_down() {
|
||||||
|
for host in "${IPS[@]}"
|
||||||
|
do
|
||||||
|
ip r d ${host} via ${GW}
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
case ${MODE} in
|
||||||
|
up)
|
||||||
|
r_up
|
||||||
|
;;
|
||||||
|
down)
|
||||||
|
r_down
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
11
bin/zsh_history_fix
Executable file
11
bin/zsh_history_fix
Executable file
@ -0,0 +1,11 @@
|
|||||||
|
#!/usr/bin/env zsh
|
||||||
|
# George Ornbo (shapeshed) http://shapeshed.com
|
||||||
|
# License - http://unlicense.org
|
||||||
|
#
|
||||||
|
# Fixes a corrupt .zsh_history file
|
||||||
|
|
||||||
|
mv ~/.zsh_history ~/.zsh_history_bad
|
||||||
|
strings ~/.zsh_history_bad > ~/.zsh_history
|
||||||
|
fc -R ~/.zsh_history
|
||||||
|
rm ~/.zsh_history_bad
|
||||||
|
|
Reference in New Issue
Block a user