Compare commits

..

3 Commits

Author SHA1 Message Date
Matus Namesny 3413fef9ce Add legacy i3 2022-01-20 10:49:50 +01:00
LordMathis e1258f3b58
Remove files that are no longer needed 2020-01-21 22:26:13 +01:00
LordMathis 090f41f6d1
Add conda init 2020-01-21 22:23:26 +01:00
23 changed files with 1040 additions and 38 deletions

4
.aliases Normal file
View File

@ -0,0 +1,4 @@
alias mkdir='mkdir -p'
alias cat='bat'
alias config='/usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME'
alias condainit='source /home/matus/bin/anaconda3/etc/profile.d/conda.sh'

213
.config/i3/config Normal file
View File

@ -0,0 +1,213 @@
# This file has been auto-generated by i3-config-wizard(1).
# It will not be overwritten, so edit it as you like.
#
# Should you change your keyboard layout some time, delete
# this file and re-run i3-config-wizard(1).
#
# i3 config file (v4)
#
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
set $mod Mod4
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
font pango:monospace 8
# This font is widely installed, provides lots of unicode glyphs, right-to-left
# text rendering and scalability on retina/hidpi displays (thanks to pango).
#font pango:DejaVu Sans Mono 8
# Before i3 v4.8, we used to recommend this one as the default:
# font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
# The font above is very space-efficient, that is, it looks good, sharp and
# clear in small sizes. However, its unicode glyph coverage is limited, the old
# X core fonts rendering does not support right-to-left and this being a bitmap
# font, it doesnt scale on retina/hidpi displays.
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# start a terminal
bindsym $mod+Return exec i3-sensible-terminal
# kill focused window
bindsym $mod+Shift+q kill
# start dmenu (a program launcher)
bindsym $mod+d exec rofi -modi drun -show drun
bindsym $mod+Tab exec rofi -modi window -show window
# change focus
bindsym $mod+Left focus left
bindsym $mod+Down focus down
bindsym $mod+Up focus up
bindsym $mod+Right focus right
# move focused window
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# split in horizontal orientation
bindsym $mod+h split h
# split i
bindsym $mod+v split v
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen toggle
# change container layout (stacked, tabbed, toggle split)
bindsym $mod+s layout stacking
bindsym $mod+w layout tabbed
bindsym $mod+e layout toggle split
# toggle tiling / floating
bindsym $mod+Shift+f floating toggle
# change focus between tiling / floating windows
#bindsym $mod+space focus mode_toggle
# focus the parent container
#bindsym $mod+a focus parent
# focus the child container
#bindsym $mod+d focus child
# Define names for default workspaces for which we configure key bindings later on.
# We use variables to avoid repeating the names in multiple places.
set $ws1 "1"
set $ws2 "2"
set $ws3 "3"
set $ws4 "4"
set $ws5 "5"
set $ws6 "6"
set $ws7 "7"
set $ws8 "8"
set $ws9 "9"
set $ws10 "10"
# switch to workspace
bindsym $mod+1 workspace $ws1
bindsym $mod+2 workspace $ws2
bindsym $mod+3 workspace $ws3
bindsym $mod+4 workspace $ws4
bindsym $mod+5 workspace $ws5
bindsym $mod+6 workspace $ws6
bindsym $mod+7 workspace $ws7
bindsym $mod+8 workspace $ws8
bindsym $mod+9 workspace $ws9
bindsym $mod+0 workspace $ws10
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace $ws1
bindsym $mod+Shift+2 move container to workspace $ws2
bindsym $mod+Shift+3 move container to workspace $ws3
bindsym $mod+Shift+4 move container to workspace $ws4
bindsym $mod+Shift+5 move container to workspace $ws5
bindsym $mod+Shift+6 move container to workspace $ws6
bindsym $mod+Shift+7 move container to workspace $ws7
bindsym $mod+Shift+8 move container to workspace $ws8
bindsym $mod+Shift+9 move container to workspace $ws9
bindsym $mod+Shift+0 move container to workspace $ws10
# Workspaces back and forth
bindsym $mod+b workspace back_and_forth
# Screenshot
bindsym Print exec gnome-screenshot
# Next | Prev worksapce
bindsym $mod+Next workspace next
bindsym $mod+Prior workspace prev
# Pulse Audio controls
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume 0 +5% #increase sound volume
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume 0 -5% #decrease sound volume
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute 0 toggle # mute sound
# Sreen brightness controls
bindsym XF86MonBrightnessUp exec xbacklight -inc 20 # increase screen brightness
bindsym XF86MonBrightnessDown exec xbacklight -dec 20 # decrease screen brightness
# Set background
exec --no-startup-id ~/.fehbg &
# Polybar
exec_always --no-startup-id $HOME/.config/polybar/launch.sh
# Keyboard layout
exec setxkbmap -model pc104 -layout us,sk -variant ,qwerty -option grp:win_space_toggle
# Lock screen
bindsym $mod+l exec --no-startup-id $HOME/bin/lock.sh $HOME/Pictures/Wallpapers/1-blurred.png
# Start Compton
exec --no-startup-id compton
# Start nextcloud client
exec --no-startup-id nextcloud
# Conky
exec --no-startup-id $HOME/bin/startup/start_conky.sh
# Redshift
exec --no-startup-id redshift-gtk
# KeePassXC
exec --no-startup-id $HOME/bin/startup/start_keepassxc.sh
# Nemo
bindsym $mod+n exec nemo
# Turn on/off monitors
bindsym $mod+m exec $HOME/bin/xrandr/switch_monitors.sh -i
bindsym $mod+Shift+m exec $HOME/bin/xrandr/switch_monitors.sh -e
# Monitor setup
exec --no-startup-id $HOME/bin/xrandr/monitor_setup.sh single
# Window titlebar and gaps
for_window [class="^.*"] border pixel 2
# reload the configuration file
bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r restart
# exit i3 (logs you out of your X session)
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'"
# resize window (you can also use the mouse for that)
mode "resize" {
# These bindings trigger as soon as you enter the resize mode
# Pressing left will shrink the windows width.
# Pressing right will grow the windows width.
# Pressing up will shrink the windows height.
# Pressing down will grow the windows height.
bindsym j resize shrink width 10 px or 10 ppt
bindsym k resize grow height 10 px or 10 ppt
bindsym l resize shrink height 10 px or 10 ppt
bindsym semicolon resize grow width 10 px or 10 ppt
# same bindings, but for the arrow keys
bindsym Left resize shrink width 10 px or 10 ppt
bindsym Down resize grow height 10 px or 10 ppt
bindsym Up resize shrink height 10 px or 10 ppt
bindsym Right resize grow width 10 px or 10 ppt
# back to normal: Enter or Escape or $mod+r
bindsym Return mode "default"
bindsym Escape mode "default"
bindsym $mod+r mode "default"
}
bindsym $mod+r mode "resize"
#bar {
# status_command i3blocks
#}

249
.config/polybar/config Normal file
View File

@ -0,0 +1,249 @@
;=====================================================
;
; To learn more about how to configure Polybar
; go to https://github.com/jaagr/polybar
;
; The README contains alot of information
;
;=====================================================
[settings]
compositing-background = over
compositing-foreground = over
compositing-overline = over
compositing-underline = over
compositing-border = over
[colors]
background = #EE222222
foreground = #dfdfdf
primary = #0a6cf5
secondary = #009646
alert = #bd2c40
[bar/default]
width = 100%
height = 27
radius = 3.0
fixed-center = true
monitor = ${env:MONITOR:}
background = ${colors.background}
foreground = ${colors.foreground}
line-size = 2
line-color = #f00
border-size = 0
border-color = #00000000
padding-left = 2
padding-right = 2
module-margin-left = 2
module-margin-right = 2
font-0 = FontAwesome:size=10;1
font-1 = siji:pixelsize=10;1
font-2 = Weather Icons:size=10;1
modules-left = powermenu i3
modules-center = datetime openweathermap
modules-right = system-usb-udev updates pulseaudio-tail wlan eth vpn xkeyboard battery
tray-detached = false
tray-position = right
scroll-up = i3wm-wsnext
scroll-down = i3wm-wsprev
[module/xwindow]
type = internal/xwindow
label = %title:0:30:...%
[module/xkeyboard]
type = internal/xkeyboard
blacklist-0 = num lock
label-layout = " %layout%"
label-layout-underline = ${colors.primary}
label-indicator = %name%
label-indicator-underline = ${colors.secondary}
[module/openweathermap]
type = custom/script
exec = ~/bin/polybar/openweathermap-simple.sh
interval = 600
label-font = 3
[module/filesystem]
type = internal/fs
interval = 25
mount-0 = /
label-mounted = %{F#0a81f5}%mountpoint%%{F-}: %percentage_used%%
label-unmounted = %mountpoint% not mounted
label-unmounted-foreground = ${colors.foreground-alt}
[module/bspwm]
type = internal/bspwm
label-focused = %index%
label-focused-background = ${colors.background-alt}
label-focused-underline= ${colors.primary}
label-focused-padding = 2
label-occupied = %index%
label-occupied-padding = 2
label-urgent = %index%!
label-urgent-background = ${colors.alert}
label-urgent-padding = 2
label-empty = %index%
label-empty-foreground = ${colors.foreground-alt}
label-empty-padding = 2
[module/i3]
type = internal/i3
format = <label-state> <label-mode>
index-sort = true
wrapping-scroll = false
; Only show workspaces on the same output as the bar
;pin-workspaces = true
label-mode-padding = 2
label-mode-foreground = #000
label-mode-background = ${colors.primary}
; focused = Active workspace on focused monitor
label-focused = %index%
label-focused-background = ${colors.background}
label-focused-underline = ${colors.primary}
label-focused-padding = 2
; unfocused = Inactive workspace on any monitor
label-unfocused = %index%
label-unfocused-padding = 2
; visible = Active workspace on unfocused monitor
label-visible = %index%
label-visible-background = ${self.label-focused-background}
label-visible-underline = ${self.label-focused-underline}
label-visible-padding = ${self.label-focused-padding}
; urgent = Workspace with urgency hint set
label-urgent = %index%
label-urgent-background = ${colors.alert}
label-urgent-padding = 2
[module/wlan]
type = internal/network
interface = wlo1
interval = 3.0
format-connected =  <label-connected>
label-connected = "%essid%"
format-disconnected =
[module/eth]
type = internal/network
interface = enp8s0
interval = 3.0
format-connected-prefix-foreground = ${colors.foreground-alt}
label-connected = ""
format-disconnected =
[module/powermenu]
type = custom/menu
format-foreground = ${colors.foreground}
format-background = ${colors.background}
label-open = ""
label-open-font = 4
label-close = ""
label-close-foreground = ${colors.foreground}
label-separator = " / "
label-separator-foreground = ${colors.foreground}
;logout
menu-0-2 = ""
menu-0-2-exec = i3-msg exit
menu-0-2-foreground = ${colors.foreground}
; reboot
menu-0-1 = ""
menu-0-1-exec = systemctl reboot
menu-0-1-foreground = ${colors.foreground}
; shutdown
menu-0-0 = ""
menu-0-0-exec = systemctl poweroff
menu-0-0-foreground = ${colors.alert}
[module/datetime]
type = custom/script
exec = date +'%H:%M'
tail = false
interval = 60
click-left = gsimplecal
[module/system-usb-udev]
type = custom/script
exec = ~/bin/polybar/system-usb-udev.sh
tail = true
click-left = ~/bin/polybar/system-usb-udev.sh --mount
click-right = ~/bin/polybar/system-usb-udev.sh --unmount
[module/pulseaudio-tail]
type = custom/script
exec = ~/bin/polybar/pulseaudio-tail.sh 2> /dev/null
tail = true
click-right = ~/bin/polybar/pulseaudio-tail.sh --show 2> /dev/null
click-left = ~/bin/polybar/pulseaudio-tail.sh --mute 2> /dev/null
scroll-up = ~/bin/polybar/pulseaudio-tail.sh --up 2> /dev/null
scroll-down = ~/bin/polybar/pulseaudio-tail.sh --down 2> /dev/null
[module/vpn]
type = custom/script
exec = ~/bin/polybar/vpn_running.sh
interval = 5
click-left = ~/bin/polybar/vpn_country.sh
[module/updates]
type = custom/script
exec = ~/bin/polybar/updates.sh 2> /dev/null
interval = 600
format-prefix = ""
format-underline = ${colors.alert}
[module/battery]
type = internal/battery
battery = BAT0
adapter = AC
full-at = 96
format-charging = <label-charging>
format-charging-underline = ${colors.secondary}
format-discharging = <label-discharging>
format-discharging-underline = ${colors.alert}
label-full = ""
label-discharging = " %percentage%%"
label-charging = " %percentage%%"
[global/wm]
margin-top = 5
margin-bottom = 5

20
.config/polybar/launch.sh Executable file
View File

@ -0,0 +1,20 @@
#!/usr/bin/env sh
# Terminate already running bar instances
killall -q polybar
# Wait until the processes have been shut down
while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done
# Launch polybar
intern=eDP-1
extern=HDMI-1
if xrandr | grep "$extern disconnected"; then
m=$intern
else
m=$extern
fi
MONITOR=$m polybar default &

View File

@ -0,0 +1,122 @@
/**
* Author: Primetoxinz
*/
* {
text-color: #f2f2f2;
background-color: #222222;
lightbg: #534c48;
red: #f15d22;
orange: #faa41a;
blue: #0a6cf5;
selected-normal-foreground: @foreground;
normal-foreground: @foreground;
alternate-normal-background: @background;
selected-urgent-foreground: @foreground;
urgent-foreground: @foreground;
alternate-urgent-background: @background;
active-foreground: @foreground;
selected-active-foreground: @foreground;
alternate-normal-foreground: @foreground;
alternate-active-background: @blue;
bordercolor: @foreground;
normal-background: @background;
selected-normal-background: @blue;
separatorcolor: @orange;
spacing: 2;
urgent-background: @red;
alternate-urgent-foreground: @foreground;
selected-urgent-background: @red;
alternate-active-foreground: @foreground;
selected-active-background: @blue;
active-background: @orange;
}
#window {
border: 0;
text-color: @foreground;
background-color: rgba ( 0, 0, 0, 0 % );
padding: 5;
text-color: @bordercolor;
background-color: @background;
}
#mainbox {
border: 0;
padding: 0;
}
#message {
border: 1px dash 0px 0px ;
text-color: @separatorcolor;
padding: 2px 0px 0px ;
}
#textbox {
text-color: @foreground;
}
#listview {
fixed-height: 0;
border: 2px 0px 0px ;
padding: 2px 0px 0px ;
text-color: @separatorcolor;
}
#element {
border: 0;
}
#element.normal.normal {
text-color: @normal-foreground;
background-color: @normal-background;
}
#element.normal.urgent {
text-color: @urgent-foreground;
background-color: @urgent-background;
}
#element.normal.active {
text-color: @active-foreground;
background-color: @active-background;
}
#element.selected.normal {
text-color: @selected-normal-foreground;
background-color: @selected-normal-background;
}
#element.selected.urgent {
text-color: @selected-urgent-foreground;
background-color: @selected-urgent-background;
}
#element.selected.active {
text-color: @selected-active-foreground;
background-color: @selected-active-background;
}
#element.alternate.normal {
text-color: @alternate-normal-foreground;
background-color: @alternate-normal-background;
}
#element.alternate.urgent {
text-color: @alternate-urgent-foreground;
background-color: @alternate-urgent-background;
}
#element.alternate.active {
text-color: @alternate-active-foreground;
background-color: @alternate-active-background;
}
#sidebar {
border: 1px dash 0px 0px ;
}
#button selected {
text-color: @selected-normal-foreground;
background-color: @selected-normal-background;
}
#inputbar {
spacing: 0;
border: 0px ;
}
#button normal {
text-color: @foreground;
}
#inputbar {
children: [ prompt,textbox-prompt-colon,entry,case-indicator ];
}
#textbox-prompt-colon {
expand: false;
str: ":";
margin: 0px 0.3em 0em 0em ;
text-color: @normal-foreground;
}

1
.config/rofi/config Normal file
View File

@ -0,0 +1 @@
rofi.theme: /home/matus/.config/rofi/Pop-Dark-Blue.rasi

59
.conky/FuzzyClock/conkyrc Normal file
View File

@ -0,0 +1,59 @@
conky.config = {
-------------------------------------
-- Generic Settings
-------------------------------------
background=true,
update_interval=1,
double_buffer=true,
no_buffers=true,
imlib_cache_size=10,
draw_shades=false,
draw_outline=false,
draw_borders=false,
-------------------------------------
-- Window Specifications
-------------------------------------
alignment="middle_left",
gap_x=0,
gap_y=200,
minimum_width=1920,
own_window=true,
own_window_type="override",
own_window_transparent=true,
own_window_hints="undecorated,below,sticky,skip_taskbar,skip_pager",
own_window_argb_visual=true,
own_window_argb_value=0,
-------------------------------------
-- Text Settings
-------------------------------------
use_xft=true,
xftalpha=1,
font="Droid Sans:size=30",
text_buffer_size=256,
override_utf8_locale=true,
-------------------------------------
-- Color Scheme
-------------------------------------
default_color='FFFFFF',
}
---------------------------------------------------
---------------------------------------------------
conky.text = [[
${font Poiret One:weight=Bold:size=30}${alignc}${execi 60 bash-fuzzy-clock}
]]

25
.github/README.md vendored Normal file
View File

@ -0,0 +1,25 @@
# Dotfiles
My dotfiles. If you want to use them fork or clone the repo.
## Requirements
* [git](https://git-scm.com/), [zsh](http://www.zsh.org/), [antigen](https://github.com/zsh-users/antigen) and [bat](https://github.com/sharkdp/bat)
* Desktop environment:
* [i3](https://i3wm.org/)
* [polybar](https://github.com/jaagr/polybar)
* [rofi](https://github.com/DaveDavenport/rofi)
* [gsimplecal](https://github.com/dmedvinsky/gsimplecal)
* For conky you also need [conky](https://github.com/brndnmtthws/conky), [bash-fuzzy-clock](https://github.com/coreymwamba/bashfuzzyclock), [Poiret One font](https://www.fontsquirrel.com/fonts/poiret-one) and [compton](https://github.com/yshui/compton)
* Polybar scripts are adapted from [here](https://github.com/x70b1/polybar-scripts)
## Usage
* `echo ".dotfiles" >> .gitignore`
* `git clone --bare https://github.com/LordMathis/dotfiles/ $HOME/.dotfiles`
* `alias config='/usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME'`
* `config checkout`
* `source .zshrc`
* run `bin/setup.sh`
## [Full Guide](https://developer.atlassian.com/blog/2016/02/best-way-to-store-dotfiles-git-bare-repo/)

9
.vimrc Normal file
View File

@ -0,0 +1,9 @@
syntax on
filetype plugin indent on
" show existing tab with 4 spaces width
set tabstop=4
" when indenting with '>', use 4 spaces width
set shiftwidth=4
" On pressing tab, insert 4 spaces
set expandtab

30
.zshrc Normal file
View File

@ -0,0 +1,30 @@
source $HOME/.antigen.zsh
source $HOME/.aliases
# Set $PATH
export PATH=$HOME/bin:$PATH
# Load the oh-my-zsh's library.
antigen use oh-my-zsh
# Bundles from the default repo (robbyrussell's oh-my-zsh).
antigen bundle git
antigen bundle heroku
antigen bundle pip
antigen bundle lein
antigen bundle command-not-found
# Syntax highlighting bundle.
antigen bundle zsh-users/zsh-syntax-highlighting
antigen bundle zsh-users/zsh-autosuggestions
# Load the theme.
antigen theme gentoo
# Tell Antigen that you're done.
antigen apply
# VTE
if [ $TILIX_ID ] || [ $VTE_VERSION ]; then
source /etc/profile.d/vte.sh
fi

View File

@ -1,23 +0,0 @@
# Dotfiles
My dotfiles. If you want to use them fork or clone the repo. Each branch has specific dotfiles for one of my machines
## Requirements
* [git](https://git-scm.com/), [zsh](http://www.zsh.org/) and [bat](https://github.com/sharkdp/bat)
## Install
`curl https://git.namesny.com/Mathis/dotfiles/raw/branch/main/install.sh | zsh -s -- <branch name>`
## Manual install
* `echo ".dotfiles" >> .gitignore`
* `git clone --bare git@git.namesny.com:Mathis/dotfiles.git $HOME/.dotfiles`
* `alias config='/usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME'`
* `config checkout <branch-name>`
* `config submodule init`
* `config submodule update`
* `source .zshrc`
## [Full Guide](https://developer.atlassian.com/blog/2016/02/best-way-to-store-dotfiles-git-bare-repo/)

23
bin/lock.sh Executable file
View File

@ -0,0 +1,23 @@
#!/bin/bash
letterEnteredColor=00af46ff
letterRemovedColor=d23c3dff
passwordCorrect=00000000
passwordIncorrect=d23c3dff
background=00000000
foreground=ffffffff
qdbus org.keepassxc.KeePassXC.MainWindow /keepassxc org.keepassxc.MainWindow.lockAllDatabases
i3lock \
-t -i "$1" \
--timepos="110:h-70" \
--datepos="135:h-45" \
--clock --datestr "Type password to unlock..." \
--insidecolor=$background --ringcolor=$foreground --line-uses-inside \
--keyhlcolor=$letterEnteredColor --bshlcolor=$letterRemovedColor --separatorcolor=$background \
--insidevercolor=$passwordCorrect --insidewrongcolor=$passwordIncorrect \
--ringvercolor=$foreground --ringwrongcolor=$foreground --indpos="x+280:h-70" \
--radius=20 --ring-width=4 --veriftext="" --wrongtext="" \
--verifcolor="$foreground" --timecolor="$foreground" --datecolor="$foreground" \
--noinputtext="" --force-clock $lockargs

View File

@ -0,0 +1,57 @@
#!/bin/sh
get_icon() {
case $1 in
01d) icon="";;
01n) icon="";;
02d) icon="";;
02n) icon="";;
03*) icon="";;
04*) icon="";;
09d) icon="";;
09n) icon="";;
10d) icon="";;
10n) icon="";;
11d) icon="";;
11n) icon="";;
13d) icon="";;
13n) icon="";;
50d) icon="";;
50n) icon="";;
*) icon="";
esac
echo $icon
}
KEY=`secret-tool lookup openweathermap api_key`
BRNO_CZ="3078610"
ZVOLEN_SK="3056459"
CITY=$BRNO_CZ
UNITS="metric"
SYMBOL="°"
if [ ! -z $CITY ]; then
weather=$(curl -sf "http://api.openweathermap.org/data/2.5/weather?APPID=$KEY&id=$CITY&units=$UNITS")
# weather=$(curl -sf "http://api.openweathermap.org/data/2.5/forecast?APPID=$KEY&id=$CITY&units=$UNITS&cnt=1")
else
location=$(curl -sf https://location.services.mozilla.com/v1/geolocate?key=geoclue)
if [ ! -z "$location" ]; then
location_lat="$(echo "$location" | jq '.location.lat')"
location_lon="$(echo "$location" | jq '.location.lng')"
weather=$(curl -sf "http://api.openweathermap.org/data/2.5/weather?appid=$KEY&lat=$location_lat&lon=$location_lon&units=$UNITS")
fi
fi
if [ ! -z "$weather" ]; then
weather_temp=$(echo "$weather" | jq ".main.temp" | cut -d "." -f 1)
weather_icon=$(echo "$weather" | jq -r ".weather[].icon")
echo "$(get_icon "$weather_icon")" "$weather_temp$SYMBOL"
fi

56
bin/polybar/pulseaudio-tail.sh Executable file
View File

@ -0,0 +1,56 @@
#!/bin/sh
sink=0
volume_up() {
pactl set-sink-volume $sink +1%
}
volume_down() {
pactl set-sink-volume $sink -1%
}
volume_mute() {
pactl set-sink-mute $sink toggle
}
volume_print() {
icon=""
muted=$(pamixer --sink $sink --get-mute)
if [ "$muted" = true ]; then
echo "$icon --"
else
echo "$icon $(pamixer --sink $sink --get-volume)"
fi
}
listen() {
volume_print
pactl subscribe | while read -r event; do
if echo "$event" | grep -q "#$sink"; then
volume_print
fi
done
}
case "$1" in
--up)
volume_up
;;
--down)
volume_down
;;
--mute)
volume_mute
;;
--show)
show_active
;;
*)
listen
;;
esac

88
bin/polybar/system-usb-udev.sh Executable file
View File

@ -0,0 +1,88 @@
#!/bin/sh
usb_print() {
devices=$(lsblk -Jplno NAME,TYPE,RM,SIZE,MOUNTPOINT,VENDOR)
output=""
counter=0
for unmounted in $(echo "$devices" | jq -r '.blockdevices[] | select(.type == "part") | select(.rm == "1") | select(.mountpoint == null) | .name'); do
unmounted=$(echo "$unmounted" | tr -d "[:digit:]")
unmounted=$(echo "$devices" | jq -r '.blockdevices[] | select(.name == "'"$unmounted"'") | .vendor')
unmounted=$(echo "$unmounted" | tr -d ' ')
if [ $counter -eq 0 ]; then
space=""
else
space=" "
fi
counter=$((counter + 1))
output="$output$space#1 $unmounted"
done
for mounted in $(echo "$devices" | jq -r '.blockdevices[] | select(.type == "part") | select(.rm == "1") | select(.mountpoint != null) | .size'); do
if [ $counter -eq 0 ]; then
space=""
else
space=" "
fi
counter=$((counter + 1))
output="$output$space#2 $mounted"
done
echo "$output"
}
usb_update() {
pid=$(pgrep -xf "/bin/sh /home/matus/bin/system-usb-udev.sh")
if [ "$pid" != "" ]; then
kill -10 "$pid"
fi
}
case "$1" in
--update)
usb_update
;;
--mount)
devices=$(lsblk -Jplno NAME,TYPE,RM,MOUNTPOINT)
for mount in $(echo "$devices" | jq -r '.blockdevices[] | select(.type == "part") | select(.rm == "1") | select(.mountpoint == null) | .name'); do
# udisksctl mount --no-user-interaction -b "$mount"
# mountpoint=$(udisksctl mount --no-user-interaction -b $mount)
# mountpoint=$(echo $mountpoint | cut -d " " -f 4 | tr -d ".")
# terminal -e "bash -lc 'filemanager $mountpoint'"
mountpoint=$(udisksctl mount --no-user-interaction -b "$mount")
mountpoint=$(echo "$mountpoint" | cut -d " " -f 4 | tr -d ".")
termite -e "bash -lc 'mc $mountpoint'" &
done
usb_update
;;
--unmount)
devices=$(lsblk -Jplno NAME,TYPE,RM,MOUNTPOINT)
for unmount in $(echo "$devices" | jq -r '.blockdevices[] | select(.type == "part") | select(.rm == "1") | select(.mountpoint != null) | .name'); do
udisksctl unmount --no-user-interaction -b "$unmount"
udisksctl power-off --no-user-interaction -b "$unmount"
done
usb_update
;;
*)
trap exit INT
trap "echo" USR1
while true; do
usb_print
sleep 60 &
wait
done
;;
esac

9
bin/polybar/updates.sh Executable file
View File

@ -0,0 +1,9 @@
#!/bin/sh
updates_arch=$(checkupdates | wc -l)
if [ "$updates_arch" -gt 0 ]; then
echo " $updates_arch"
else
echo ""
fi

7
bin/polybar/vpn_running.sh Executable file
View File

@ -0,0 +1,7 @@
#!/bin/sh
if [ "$(pgrep openvpn)" ]; then
echo ""
else
echo
fi

17
bin/setup.sh Executable file
View File

@ -0,0 +1,17 @@
#!/bin/sh
echo "Enter OpenWeatherMap API key"
read line
echo $line | secret-tool store --label='OpenWeatherMap API Key' openweathermap api_key
echo "Enter KeePassXC master password"
read line
echo $line | secret-tool store --label='KeePassXC master password' keepassxc master
echo "Enter git name"
read name
git config --global user.name $name
echo "Enter git email"
read email
git config --global user.email $email

3
bin/startup/start_conky.sh Executable file
View File

@ -0,0 +1,3 @@
#!/bin/bash
(sleep 10 && conky -dc $HOME/.conky/FuzzyClock/conkyrc)

3
bin/startup/start_keepassxc.sh Executable file
View File

@ -0,0 +1,3 @@
#!/bin/sh
secret-tool lookup keepassxc master | keepassxc --pw-stdin ~/Documents/Important/passwords.kdbx

24
bin/xrandr/monitor_setup.sh Executable file
View File

@ -0,0 +1,24 @@
#!/bin/bash
intern=eDP-1
extern=HDMI-1
case $1 in
"single")
if xrandr | grep "$extern disconnected"; then
xrandr --output "$extern" --off --output "$intern" --auto
else
xrandr --output "$intern" --off --output "$extern" --auto
fi
;;
"dual")
if xrandr | grep "$extern disconnected"; then
xrandr --output "$extern" --off --output "$intern" --auto
else
xrandr --output $extern --primary
xrandr --output $extern --left-of $intern
fi
;;
esac
i3-msg restart

21
bin/xrandr/switch_monitors.sh Executable file
View File

@ -0,0 +1,21 @@
#!/bin/bash
intern=eDP-1
extern=HDMI-1
case $1 in
"-i")
m=$intern
;;
"-e")
m=$extern
;;
*)
echo "Wrong option"
esac
if xrandr --listactivemonitors | grep "$m"; then
xrandr --output "$m" --off
else
xrandr --output "$m" --auto
fi

View File

@ -1,15 +0,0 @@
#!/usr/bin/zsh
if [ $# -eq 0 ]
then
echo "Git branch name missing"
exit 1;
fi
echo ".dotfiles" >> $HOME/.gitignore
git clone --bare https://git.namesny.com/Mathis/dotfiles.git $HOME/.dotfiles
alias config='/usr/bin/git --git-dir=$HOME/.dotfiles/ --work-tree=$HOME'
config checkout $1
config submodule init
config submodule update
source .zshrc