Browse Source

Merge remote-tracking branch 'refs/remotes/origin/master'

master
chodak166 1 month ago
parent
commit
2f58b1caa3
  1. 2
      .bashrc
  2. 582
      .config/i3/config
  3. 77
      .config/i3/py3status.conf
  4. 13
      .config/i3/scripts/always-float
  5. 32
      .config/i3/scripts/autoapp
  6. 21
      .config/i3/scripts/backlight
  7. 102
      .config/i3/scripts/bandwidth
  8. 81
      .config/i3/scripts/dmenu-i3-window-jumper
  9. 33
      .config/i3/scripts/i3exit
  10. 34
      .config/i3/scripts/load_average
  11. 56
      .config/i3/scripts/redshift-adjust
  12. 30
      .config/i3/scripts/top
  13. 5693
      .config/i3/scripts/trans
  14. 12
      .config/i3/scripts/trans-xsel
  15. 30
      .config/i3/scripts/volctl
  16. 70
      .config/i3/scripts/volume_auto
  17. BIN
      .config/i3/wallpaper.jpg
  18. 2
      .config/nvim/.env
  19. 5
      .config/nvim/init.lua
  20. 25
      .config/nvim/lazy-lock.json
  21. 24
      .config/nvim/lua/config/clipboard.lua
  22. 21
      .config/nvim/lua/config/options.lua
  23. 44
      .config/nvim/lua/plugins/avante-ai.lua
  24. 50
      .config/nvim/lua/plugins/colorscheme.lua
  25. 9
      .config/nvim/lua/plugins/dotenv.lua
  26. 17
      .config/nvim/lua/plugins/indent-blankline.lua
  27. 27
      .config/nvim/lua/plugins/just.lua
  28. 5
      .config/nvim/lua/plugins/zz_disabled.lua
  29. 13
      .config/ratflow/profiles/chodak-laptop/autoapp.conf
  30. 16
      .config/ratflow/profiles/chodak-laptop/config.d/01-variables
  31. 56
      .config/ratflow/profiles/chodak-laptop/config.d/10-workspaces
  32. 30
      .config/ratflow/profiles/chodak-laptop/config.d/11-outputs
  33. 16
      .config/ratflow/profiles/chodak-laptop/config.d/13-wallpaper
  34. 21
      .config/ratflow/profiles/chodak-laptop/config.d/20-keys-apps-core
  35. 4
      .config/ratflow/profiles/chodak-laptop/config.d/20-keys-window-jumper
  36. 87
      .config/ratflow/profiles/chodak-laptop/config.d/20-keys-wm
  37. 1
      .config/ratflow/profiles/chodak-laptop/config.d/21-always-float
  38. 22
      .config/ratflow/profiles/chodak-laptop/config.d/21-keys-apps
  39. 35
      .config/ratflow/profiles/chodak-laptop/config.d/21-keys-media
  40. 11
      .config/ratflow/profiles/chodak-laptop/config.d/21-keys-projector
  41. 36
      .config/ratflow/profiles/chodak-laptop/config.d/21-keys-session
  42. 2
      .config/ratflow/profiles/chodak-laptop/config.d/21-new-workspace
  43. 50
      .config/ratflow/profiles/chodak-laptop/config.d/30-theme
  44. 35
      .config/ratflow/profiles/chodak-laptop/config.d/31-bar
  45. 42
      .config/ratflow/profiles/chodak-laptop/config.d/40-assignments
  46. 12
      .config/ratflow/profiles/chodak-laptop/config.d/50-floating
  47. 42
      .config/ratflow/profiles/chodak-laptop/config.d/90-exec
  48. 7
      .config/ratflow/profiles/chodak-laptop/config.d/91-exec_always
  49. 1
      .config/ratflow/profiles/chodak-laptop/config.d/floating.d/Osmo.float
  50. 1
      .config/ratflow/profiles/chodak-laptop/config.d/floating.d/Skype.float
  51. 1
      .config/ratflow/profiles/chodak-laptop/config.d/floating.d/Yad.float
  52. 1
      .config/ratflow/profiles/chodak-laptop/env
  53. 77
      .config/ratflow/profiles/chodak-laptop/py3status.conf
  54. 13
      .config/ratflow/profiles/chodak_pc/autoapp.conf
  55. 612
      .config/ratflow/profiles/chodak_pc/config-gen
  56. 15
      .config/ratflow/profiles/chodak_pc/config.d/01-variables
  57. 56
      .config/ratflow/profiles/chodak_pc/config.d/10-workspaces
  58. 30
      .config/ratflow/profiles/chodak_pc/config.d/11-outputs
  59. 23
      .config/ratflow/profiles/chodak_pc/config.d/13-wallpaper
  60. 24
      .config/ratflow/profiles/chodak_pc/config.d/20-keys-apps-core
  61. 87
      .config/ratflow/profiles/chodak_pc/config.d/20-keys-wm
  62. 1
      .config/ratflow/profiles/chodak_pc/config.d/21-always-float
  63. 22
      .config/ratflow/profiles/chodak_pc/config.d/21-keys-apps
  64. 9
      .config/ratflow/profiles/chodak_pc/config.d/21-keys-imagemagick
  65. 40
      .config/ratflow/profiles/chodak_pc/config.d/21-keys-media
  66. 36
      .config/ratflow/profiles/chodak_pc/config.d/21-keys-session
  67. 2
      .config/ratflow/profiles/chodak_pc/config.d/21-new-workspace
  68. 52
      .config/ratflow/profiles/chodak_pc/config.d/30-theme
  69. 35
      .config/ratflow/profiles/chodak_pc/config.d/31-bar
  70. 42
      .config/ratflow/profiles/chodak_pc/config.d/40-assignments
  71. 7
      .config/ratflow/profiles/chodak_pc/config.d/50-floating
  72. 45
      .config/ratflow/profiles/chodak_pc/config.d/90-exec
  73. 7
      .config/ratflow/profiles/chodak_pc/config.d/91-exec_always
  74. 1
      .config/ratflow/profiles/chodak_pc/config.d/floating.d/Gsimplecal.float
  75. 1
      .config/ratflow/profiles/chodak_pc/config.d/floating.d/Osmo.float
  76. 1
      .config/ratflow/profiles/chodak_pc/config.d/floating.d/QNapi.float
  77. 1
      .config/ratflow/profiles/chodak_pc/config.d/floating.d/Vncviewer.float
  78. 1
      .config/ratflow/profiles/chodak_pc/config.d/floating.d/Yad.float
  79. 1
      .config/ratflow/profiles/chodak_pc/config.d/floating.d/graviglass-sim.float
  80. 1
      .config/ratflow/profiles/chodak_pc/config.d/floating.d/qhourglass.float
  81. 1
      .config/ratflow/profiles/chodak_pc/config.d/floating.d/screengrab.float
  82. 1
      .config/ratflow/profiles/chodak_pc/env
  83. 191
      .config/ratflow/profiles/chodak_pc/i3blocks.conf
  84. 47
      .config/ratflow/profiles/chodak_pc/i3status.conf
  85. 77
      .config/ratflow/profiles/chodak_pc/py3status.conf
  86. 37
      .dotfiles.d/README.md
  87. 3
      .dotfiles.d/init/init-nvim.sh
  88. 1
      .gitignore
  89. 5
      .tmux.conf
  90. 6
      .zshrc

2
.bashrc

@ -156,4 +156,4 @@ alias bat=batcat
[ -f ~/.fzf.bash ] && source ~/.fzf.bash [ -f ~/.fzf.bash ] && source ~/.fzf.bash
. "$HOME/.local/bin/env" [ -f "$HOME/.local/bin/env" ] && . "$HOME/.local/bin/env"

582
.config/i3/config

@ -0,0 +1,582 @@
# Dependencies:
# i3 i3blocks i3lock dbus-x11 suckless-tools x11-xserver-utils feh terminator libnotify-bin dunst yad pcmanfm compton py3status python3-pkg-resources software-properties-common xserver-xorg-input-synaptics xsel osmo gawk qt5ct file-roller git clipit network-manager-gnome redshift screengrab micro gnome-themes-extra geany geany-plugins lxappearance
#################################################################
# /profiles/current/config.d/01-variables:
#------------------------------------------------
#
# variable definitions
#
#------------------------------------------------
# what will be yout mod key? Use Mod4 for "window" key, Mod1 for "alt"
set $mod Mod4
#set $mod Mod1
# helper scripts location
set $scriptsDir ~/.config/i3/scripts/
#################################################################
# /profiles/current/config.d/10-workspaces:
#------------------------------------------------
#
# workspace settings
#
#------------------------------------------------
# workspaces
set $workspace1 1: >_
set $workspace2 2: dev
set $workspace3 3: www
set $workspace4 4: files
set $workspace5 5: e-mail
set $workspace6 6: IM
set $workspace7 7: video
set $workspace8 8: workspace
set $workspace9 9: workspace
set $workspace10 10: Music
set $workspace11 V: VM
# switch to workspace
bindsym $mod+1 workspace $workspace1
bindsym $mod+2 workspace $workspace2
bindsym $mod+3 workspace $workspace3
bindsym $mod+4 workspace $workspace4
bindsym $mod+5 workspace $workspace5
bindsym $mod+6 workspace $workspace6
bindsym $mod+7 workspace $workspace7
bindsym $mod+8 workspace $workspace8
bindsym $mod+9 workspace $workspace9
bindsym $mod+0 workspace $workspace10
#bindsym $mod+Mod1+v workspace $workspace11
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace $workspace1
bindsym $mod+Shift+2 move container to workspace $workspace2
bindsym $mod+Shift+3 move container to workspace $workspace3
bindsym $mod+Shift+4 move container to workspace $workspace4
bindsym $mod+Shift+5 move container to workspace $workspace5
bindsym $mod+Shift+6 move container to workspace $workspace6
bindsym $mod+Shift+7 move container to workspace $workspace7
bindsym $mod+Shift+8 move container to workspace $workspace8
bindsym $mod+Shift+9 move container to workspace $workspace9
bindsym $mod+Shift+0 move container to workspace $workspace10
# next/prev workspace
bindsym $mod+x workspace next
bindsym $mod+Shift+x move container to workspace next
bindsym $mod+z workspace prev
bindsym $mod+Shift+z move container to workspace prev
# moving workspace across monitors
bindsym $mod+Control+Left move workspace to output left
bindsym $mod+Control+Right move workspace to output right
#################################################################
# /profiles/current/config.d/11-outputs:
#------------------------------------------------
#
# video output management
#
#------------------------------------------------
# monitors - use "xrandr --listmonitors" to obtain your output names
set $leftOutput eDP
set $rightOutput HDMI-A-0
# setup monitors
exec --no-startup-id xrandr --output $rightOutput --primary
exec --no-startup-id xrandr --output $leftOutput --left-of $rightOutput
mode "outputs" {
# mod + shift + 1 to turn off left monitor, mod + 1 to turn it on
bindsym $mod+Shift+1 exec xrandr --output $leftOutput --off; mode "default"; restart
bindsym $mod+1 exec xrandr --output $leftOutput --auto --left-of $rightOutput;mode "default"; restart
# mod + shift + 2 to turn off right monitor, mod + 2 to turn it on
bindsym $mod+Shift+2 exec xrandr --output $rightOutput --off; mode "default", restart
bindsym $mod+2 exec xrandr --output $rightOutput --auto --right-of $leftOutput; mode "default"; restart
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+m mode "outputs"
#################################################################
# /profiles/current/config.d/13-wallpaper:
#------------------------------------------------
#
# wallpaper settings
#
#------------------------------------------------
# wallpapers (second for multihead)
set $wallpaper1 ~/.config/i3/wallpaper.jpg
# set wallpapers
exec_always --no-startup-id sleep 2 && feh --bg-scale $wallpaper1 --bg-scale $wallpaper1
# apply xrandr settings
exec_always --no-startup-id sleep 2 && xrandr --output $leftOutput --left-of $rightOutput
#################################################################
# /profiles/current/config.d/20-keys-apps-core:
#------------------------------------------------
#
# application running bindings
#
#------------------------------------------------
# start a terminal
#bindsym $mod+Return exec i3-sensible-terminal
#bindsym $mod+Return exec terminator -p ratflow-terminator
bindsym $mod+Return exec kitty
# start dmenu (a program launcher)
#bindsym $mod+d exec dmenu_run
#bindsym Mod1+F2 exec dmenu_run
#let's replace dmenu by custom launcher:
bindsym $mod+d exec ulauncher
bindsym Mod1+F2 exec dmenu_run
# run app assigned to current workspace
bindsym $mod+Shift+a exec $scriptsDir/autoapp
#################################################################
# /profiles/current/config.d/20-keys-window-jumper:
#bindsym Mod1+Tab exec "$scriptsDir/dmenu-i3-window-jumper &"
bindsym $mod+Tab workspace back_and_forth
#################################################################
# /profiles/current/config.d/20-keys-wm:
#------------------------------------------------
#
# window management bindings
#
#------------------------------------------------
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# kill focused window
bindsym $mod+Shift+q kill
# change focus
bindsym $mod+j focus left
bindsym $mod+k focus down
bindsym $mod+l focus up
bindsym $mod+semicolon focus right
# alternatively, you can use the cursor keys:
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+j move left
bindsym $mod+Shift+k move down
bindsym $mod+Shift+l move up
bindsym $mod+Shift+semicolon move right
# alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# nested split in horizontal orientation
bindsym $mod+h split h
# nested split in vertical orientation
bindsym $mod+v split v
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen
# 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+space floating toggle
bindsym --whole-window $mod+button2 floating toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
# focus the parent container
bindsym $mod+a focus parent
# 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 window’s width.
# Pressing right will grow the window’s width.
# Pressing up will shrink the window’s height.
# Pressing down will grow the window’s 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
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
#################################################################
# /profiles/current/config.d/21-always-float:
bindsym $mod+Shift+f exec $scriptsDir/always-float
#################################################################
# /profiles/current/config.d/21-keys-apps:
#------------------------------------------------
#
# application running bindings
#
#------------------------------------------------
# calendar
bindsym $mod+c exec osmo -c
# screenshots (full, region, active)
bindsym Print exec screengrab --fullscreen
bindsym Shift+Print exec screengrab --region
bindsym Control+Print exec screengrab --active
# redshift
bindsym $mod+Control+Next exec $scriptsDir/redshift-adjust -100
bindsym $mod+Control+Prior exec $scriptsDir/redshift-adjust +100
bindsym $mod+Control+l exec redshift -x
# translation of selected text
bindsym $mod+t exec bash -c "$scriptsDir/trans-xsel en:pl &"
bindsym $mod+Shift+t exec bash -c "$scriptsDir/trans-xsel pl:en &"
#################################################################
# /profiles/current/config.d/21-keys-media:
#------------------------------------------------
#
# multimedia keys and audio/video players bindings
#
#------------------------------------------------
# Pulse Audio controls (debian), the VOLCTL_SINK_NUM selects sink starting from the most recent one connected
bindsym XF86AudioRaiseVolume exec --no-startup-id (VOLCTL_SINK_NUM=1 $scriptsDir/volctl up)
bindsym XF86AudioLowerVolume exec --no-startup-id (VOLCTL_SINK_NUM=1 $scriptsDir/volctl down)
bindsym XF86AudioMute exec --no-startup-id (VOLCTL_SINK_NUM=1 $scriptsDir/volctl toggle)
bindsym Shift+XF86AudioRaiseVolume exec --no-startup-id (VOLCTL_SINK_NUM=2 $scriptsDir/volctl up)
bindsym Shift+XF86AudioLowerVolume exec --no-startup-id (VOLCTL_SINK_NUM=2 $scriptsDir/volctl down)
bindsym Shift+XF86AudioMute exec --no-startup-id (VOLCTL_SINK_NUM=2 $scriptsDir/volctl toggle)
# Sreen brightness controls
#bindsym XF86MonBrightnessUp exec xbacklight -inc 20 # increase screen brightness
#bindsym XF86MonBrightnessDown exec xbacklight -dec 20 # decrease screen brightness
bindsym XF86MonBrightnessUp exec $scriptsDir/backlight up
bindsym XF86MonBrightnessDown exec $scriptsDir/backlight down
# Media player controls
#bindsym XF86AudioPlay exec playerctl play
#bindsym XF86AudioPause exec playerctl pause
#bindsym XF86AudioNext exec playerctl next
#bindsym XF86AudioPrev exec playerctl previous
# Clementine player controls
bindsym XF86AudioPlay exec clementine --play-pause
bindsym XF86AudioPause exec clementine --pause
bindsym XF86AudioNext exec clementine --next
bindsym XF86AudioPrev exec clementine --previous
# bindsym Shift+XF86AudioRaiseVolume exec clementine --volume-up
# bindsym Shift+XF86AudioLowerVolume exec clementine --volume-down
#################################################################
# /profiles/current/config.d/21-keys-projector:
#------------------------------------------------
#
# media player bindings
#
#------------------------------------------------
# Pulse Audio controls (debian)
bindsym $mod+p exec /home/chodak/.screenlayout/projector.sh
bindsym Shift+$mod+p exec /home/chodak/.screenlayout/edp.sh
#################################################################
# /profiles/current/config.d/21-keys-session:
#------------------------------------------------
#
# session/power management
#
#------------------------------------------------
# regenerate and reload i3 configuration file
bindsym $mod+Shift+c exec rfreload
# suspend
bindsym $mod+Escape exec systemctl suspend
# regenerate i3 configuration file and restart i3 (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r exec rfreload --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'"
# use i3exit script from https://github.com/giacomos/i3wm-config/blob/master/i3exit
set $exitScript ~/.config/i3/scripts/i3exit
mode "session_management" {
bindsym l exec --no-startup-id $exitScript lock, mode "default"
bindsym e exec --no-startup-id $exitScript logout, mode "default"
bindsym s exec --no-startup-id $exitScript suspend, mode "default"
bindsym h exec --no-startup-id $exitScript hibernate, mode "default"
bindsym r exec --no-startup-id $exitScript reboot, mode "default"
bindsym Shift+s exec --no-startup-id $exitScript shutdown, mode "default"
# back to normal: Enter or Escape
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+Pause mode "session_management"
#################################################################
# /profiles/current/config.d/21-new-workspace:
# create temporary workspace
bindsym $mod+n exec name=$(yad --entry --splash --title "Create workspace" --text "Name of temporary workspace:") && i3-msg workspace $name
#################################################################
# /profiles/current/config.d/30-theme:
#------------------------------------------------
#
# appearance
#
#------------------------------------------------
# font
set $fontName Source Sans Pro Semi-Bold
set $fontSize 10
set $barFontSize 9
# colors
set $clFocusedActiveBorder #252525
set $clFocusedActiveBackground #252525
set $clFocusedActiveText #D9D9D9
set $clFocusedInactiveBorder #101010
set $clFocusedinactiveBackground #101010
set $clFocusedInactiveText #606060
set $clUnfocusedBorder #101010
set $clUnfocusedBackground #000000
set $clUnfocusedText #606060
set $clUrgentBorder #F05000
set $clUrgentBackground #F05000
set $clUrgentText #F0F0F0
set $clIndicator #101010
# --------- fonts ---------
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
font pango: $fontName $fontSize
#font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
# 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
# --------- windows ---------
# Widow Colours
# border background text indicator
client.focused $clFocusedActiveBorder $clFocusedActiveBackground $clFocusedActiveText $clIndicator
client.focused_inactive $clFocusedInactiveBorder $clFocusedinactiveBackground $clFocusedInactiveText $clIndicator
client.unfocused $clUnfocusedBorder $clUnfocusedBackground $clUnfocusedText $clIndicator
client.urgent $clUrgentBorder $clUrgentBackground $clUrgentText $clIndicator
#################################################################
# /profiles/current/config.d/31-bar:
#------------------------------------------------
#
# i3 bar
#
#------------------------------------------------
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
position top
i3bar_command i3bar -t
status_command py3status -c ~/.config/i3/py3status.conf
font xft:$fontName, FontAwesome $barFontsize
tray_padding 0
#Use tray_output primary/none/<output name> to define where the tray should be (multiple tray_output can be used)
#Remember to set any of your displays to primary (i.e. using xrandr)
#tray_output primary
colors {
separator $clFocusedActiveText
#background $clUnfocusedBackground
background #00000070
#statusline #FFFFFF99
statusline $clFocusedActiveText
# border background text
focused_workspace $clFocusedActiveBackground $clFocusedActiveBackground $clFocusedActiveText
active_workspace $clFocusedActiveBorder $clFocusedActiveBackground $clFocusedActiveText
inactive_workspace $clUnfocusedBackground $clUnfocusedBackground $clUnfocusedText
urgent_workspace $clUrgentBorder $clUrgentBackground $clUrgentText
}
}
#################################################################
# /profiles/current/config.d/40-assignments:
#------------------------------------------------
#
# assign applications to workspaces
#
#------------------------------------------------
assign [class="Qtcreator"] $workspace2
assign [class="Eclipse"] $workspace2
#assign [class="Kate"] $workspace2
#assign [class="Gedit"] $workspace2
#assign [class="Emacs"] $workspace2
assign [class="Iceweasel"] $workspace3
assign [class="Firefox"] $workspace3
assign [class="Chromium-browser"] $workspace3
assign [class="Chrome"] $workspace3
assign [class="Pcmanfm"] $workspace4
assign [class="Dolphin"] $workspace4
assign [class="Nautilus"] $workspace4
assign [class="Thunar"] $workspace4
assign [class="Thunderbird"] $workspace5
assign [class="Kadu"] $workspace6
assign [class="Skype"] $workspace6
assign [class="Pidgin"] $workspace6
assign [class="Kopete"] $workspace6
assign [class="Telegram"] $workspace6
#assign [class="Smplayer"] $workspace7
#assign [class="Smplayer2"] $workspace7
#assign [class="Mplayer"] $workspace7
#assign [class="Vlc"] $workspace7
#assign [class="dragonplayer"] $workspace7
assign [class="Kodi"] $workspace7
assign [class="Clementine"] $workspace10
assign [class="Rhythmbox"] $workspace10
assign [class="Spotify"] $workspace10
assign [class="VirtualBox"] $workspace11
#################################################################
# /profiles/current/config.d/50-floating:
#------------------------------------------------
#
# floating windows
#
#------------------------------------------------
for_window [class="screengrab"] floating enable
for_window [class="osmo"] floating enable
for_window [class="gsimplecal"] floating enable
for_window [class="Osmo"] floating enable
for_window [class="Skype"] floating enable
for_window [class="Yad"] floating enable
#################################################################
# /profiles/current/config.d/90-exec:
#------------------------------------------------
#
# autostart - login command execution
#
#------------------------------------------------
# ensure that notification daemon is running
exec --no-startup-id dunst
# run window composer (with 2ms per step while faiding)
exec --no-startup-id compton -f -D 2
# enable touchpad with tapping and two-finger scroll
exec --no-startup-id synclient TouchpadOff=0
exec --no-startup-id synclient TapButton1=1
exec --no-startup-id synclient VertTwoFingerScroll=1
exec --no-startup-id synclient VertHysteresis=30
exec --no-startup-id synclient HorizHysteresis=30
# tune down screen colors with redshift
# exec --no-startup-id redshift -l 52.43:15.15 -m randr
# run network manager
exec --no-startup-id nm-applet
# run clipboard manager
#exec --no-startup-id bash -c "/usr/bin/clipit &"
exec --no-startup-id parcellite
# run bluetooth manager
#exec blueman-applet
# run tray icon with calendar
# other autostart apps
#exec terminator -p ratflow-terminator
#exec pcmanfm
#exec firefox
#exec thunderbird
#################################################################
# /profiles/current/config.d/91-exec_always:
#------------------------------------------------
#
# autostart - (re)load command execution
#
#------------------------------------------------
exec_always --no-startup-id xset dpms 600 600 600

77
.config/i3/py3status.conf

@ -0,0 +1,77 @@
# i3status configuration file.
# see "man i3status" for documentation.
# It is important that this file is edited as UTF-8.
# The following line should contain a sharp s:
# ß
# If the above line is not correctly displayed, fix your editor first!
general {
output_format = "i3bar"
colors = true
interval = 10
}
order += "volume_status"
order += "diskdata"
order += "netdata"
order += "networkmanager"
order += "battery all"
order += "external_script top"
order += "sysdata mem"
order += "tztime local"
diskdata {
# disk = "/"
format = "{free}GB"
}
networkmanager {
# devices = ['e*'] # ethernet only
#devices = ['w*'] # wireless only
devices = ["*"]
format = "{format_device}"
format_device = "[{ip4_address1}]"
format_device_separator = " / "
}
external_script top {
cache_timeout = 10
script_path = "/usr/share/ratflow/scripts/top"
}
netdata {
cache_timeout = 5
format = '{nic}: [{down}↓ {up}↑]'
}
volume_status {
thresholds = [
(0, "#FF0000"),
(10, ""),
(100, "#FFFF00")
]
}
sysdata cpu {
cache_timeout = 5
format = "CPU: {cpu_used_percent}%"
}
sysdata mem {
cache_timeout = 5
format = " {mem_used_percent}%"
}
battery all {
format = "%status %percentage %remaining"
}
tztime local {
format = "%d-%m-%Y %H:%M"
}

13
.config/i3/scripts/always-float

@ -0,0 +1,13 @@
#!/bin/bash
currentClass=$(xprop -id $(xprop -root 32x '\t$0' _NET_ACTIVE_WINDOW | cut -f 2) WM_CLASS | awk '{print $NF}')
# unquote
currentClass=$(eval echo $currentClass)
floatingDir="$HOME/.config/ratflow/profiles/current/config.d/floating.d"
mkdir -p "$floatingDir"
echo "for_window [class=\"${currentClass}\"] floating enable" > "$floatingDir/${currentClass}.float"
i3-msg floating enabled
rfreload

32
.config/i3/scripts/autoapp

@ -0,0 +1,32 @@
#!/usr/bin/python3
import subprocess, json, os
mapFile = open(os.environ['HOME'] + '/.config/ratflow/profiles/current/autoapp.conf', 'r');
map = json.loads(mapFile.read());
print(map)
def getCurrentWorkspaceNum():
command = "i3-msg -t get_workspaces"
proc = subprocess.Popen([command], stdout=subprocess.PIPE, shell=True)
(out, err) = proc.communicate()
jworkspaces = json.loads(out)
print(jworkspaces)
for workspace in jworkspaces:
if workspace['focused'] == True:
return workspace['num']
return False
workspaceNum = str(getCurrentWorkspaceNum())
if workspaceNum in map:
command = "i3-msg exec "+map[workspaceNum]
print ("running command: " + command)
proc = subprocess.Popen([command], stdout=subprocess.PIPE, shell=True)
else:
print("no application assigned to workspace " + workspaceNum)

21
.config/i3/scripts/backlight

@ -0,0 +1,21 @@
#!/bin/bash
set -x
if xbacklight -get; then
if [[ "$1" == "up" ]]; then
xbacklight -inc 20
else
xbacklight -dec 20
fi
else
val=$(cat /sys/class/backlight/*/brightness | head -1)
if [[ "$1" == "up" ]]; then
val=$((val+20))
else
val=$((val-20))
fi
for bk in /sys/class/backlight/*; do
echo $val > $bk/brightness
done
fi

102
.config/i3/scripts/bandwidth

@ -0,0 +1,102 @@
#!/bin/bash
# Copyright (C) 2012 Stefan Breunig <stefan+measure-net-speed@mathphys.fsk.uni-heidelberg.de>
# Copyright (C) 2014 kaueraal
# Copyright (C) 2015 Thiago Perrotta <perrotta dot thiago at poli dot ufrj dot br>
# 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/>.
############ ratflow edit ###########
# replace IN/OUT labels:
#inLabel=" "
#outLabel=" "
inLabel=" "
outLabel=" "
#######################################
# Use the provided interface, otherwise the device used for the default route.
if [[ -n $BLOCK_INSTANCE ]]; then
INTERFACE=$BLOCK_INSTANCE
else
INTERFACE=$(ip route | awk '/^default/ { print $5 ; exit }')
fi
# Issue #36 compliant.
if ! [ -e "/sys/class/net/${INTERFACE}/operstate" ] || [ "`cat /sys/class/net/${INTERFACE}/operstate`" == "down" ]
then
echo "$INTERFACE down"
echo "$INTERFACE down"
echo "#FF0000"
exit 0
fi
# path to store the old results in
path="/dev/shm/$(basename $0)-${INTERFACE}"
# grabbing data for each adapter.
read rx < "/sys/class/net/${INTERFACE}/statistics/rx_bytes"
read tx < "/sys/class/net/${INTERFACE}/statistics/tx_bytes"
# get time
time=$(date +%s)
# write current data if file does not exist. Do not exit, this will cause
# problems if this file is sourced instead of executed as another process.
if ! [[ -f "${path}" ]]; then
echo "${time} ${rx} ${tx}" > "${path}"
chmod 0666 "${path}"
fi
# read previous state and update data storage
read old < "${path}"
echo "${time} ${rx} ${tx}" > "${path}"
# parse old data and calc time passed
old=(${old//;/ })
time_diff=$(( $time - ${old[0]} ))
# sanity check: has a positive amount of time passed
[[ "${time_diff}" -gt 0 ]] || exit
# calc bytes transferred, and their rate in byte/s
rx_diff=$(( $rx - ${old[1]} ))
tx_diff=$(( $tx - ${old[2]} ))
rx_rate=$(( $rx_diff / $time_diff ))
tx_rate=$(( $tx_diff / $time_diff ))
# shift by 10 bytes to get KiB/s. If the value is larger than
# 1024^2 = 1048576, then display MiB/s instead
# incoming
echo -n "$inLabel"
rx_kib=$(( $rx_rate >> 10 ))
if [[ "$rx_rate" -gt 1048576 ]]; then
printf '%sM' "`echo "scale=1; $rx_kib / 1024" | bc`"
else
echo -n "${rx_kib}K"
fi
echo -n " "
# outgoing
echo -n "$outLabel"
tx_kib=$(( $tx_rate >> 10 ))
if [[ "$tx_rate" -gt 1048576 ]]; then
printf '%sM' "`echo "scale=1; $tx_kib / 1024" | bc`"
else
echo -n "${tx_kib}K"
fi

81
.config/i3/scripts/dmenu-i3-window-jumper

@ -0,0 +1,81 @@
#!/bin/sh
#description: dmenu-i3-window-jumper is a window selector for i3-wm
#usage: dmenu-i3-window-jumper is best suited to be launched from a shortcut (tab)
#example: dmenu-i3-window-jumper
#a gui menu appears asking which windows jump to
progname="$(expr "${0}" : '.*/\([^/]*\)')"
#variables are impractical to save complex cmds because of shell expantion
#therefore functions are required: http://mywiki.wooledge.org/BashFAQ/050
DMENU() { dmenu -p 'Jump to' -l 20 -i -fn Bahamas-10 \
-nb \#000000 -nf \#ffffff -sb \#c0c0c0 -sf \#000000; }
#looks better on xft powered dmenu:
#https://bugs.launchpad.net/ubuntu/+source/suckless-tools/+bug/1093745
_usage() {
printf "%s\\n" "Usage: ${progname} [app|title]"
printf "%s\\n" "Dmenu window selector for i3-wm."
printf "%s\\n"
printf "%s\\n" " -h, --help show this message and exit"
}
_die() {
[ -n "${1}" ] && _die_msg="${1}" || exit 1
printf "%b%b\\n" "${_die_msg}" ", press <Enter> to exit" | DMENU
exit 1
}
_i3_get_app_tree() {
i3-msg -t get_tree | \
egrep -o "(class\":\".[^\"]+\"|title\":\"[^\"]+)" | \
sed 's/"//g;s/class://g;s/title://g' | \
while read -r line; read -r line2; do \
printf "%s\\n" "═ ${line} :: ${line2}"; \
done | sed '/i3bar for/d'
#alternative
#i3-msg -t get_tree | python -mjson.tool | \
#sed -n -e 's/^ \{35\}[ ]\+\"name\": \"\(.*\)\", $/\1/p' | \
#sed '/^#[a-F0-9]\{6\}$/d'
}
if [ ! -t 0 ]; then
#add input comming from pipe or file to $@
set -- "${@}" $(cat)
fi
for arg in "${@}"; do #parse options
case "${arg}" in
-h|--help) _usage && exit ;;
esac
done
if [ -z "${1}" ]; then
if ! command -v "dmenu" >/dev/null 2>&1; then
printf "%s\\n" "${progname}: install 'dmenu' to run this program" >&2
exit 1
fi
selected_entry="$(_i3_get_app_tree | DMENU)"
else
selected_entry="$(_i3_get_app_tree | grep -i "${@}" 2>/dev/null | head -1 )"
fi
if [ -z "${selected_entry}" ]; then
_die
else
#escape some characters to prevent i3 to interpret them as a pattern
# "(" and ")" replace them with "\(" and "\)"
#title="$(printf "%s\\n" "${windows}" | sed 's/\([()]\)/\\\1/g')"
title="$(printf "%s\\n" "${selected_entry}" | \
egrep -o "::.*" | sed 's/:: //g;s/\([()]\)/\\\1/g')"
#focus window
output_msg="$(i3-msg "[title=\"${title}\"] focus" 2>&1)"
if printf "%s\\n" "${output_msg}" | tail -1 | \
grep "success" | grep "false" >/dev/null 2>&1; then
app="${title}"; i3-msg "[class=\"${app}\"] focus"
fi
fi

33
.config/i3/scripts/i3exit

@ -0,0 +1,33 @@
#!/bin/sh
lock() {
i3lock -n --color=000000
}
case "$1" in
lock)
lock
;;
logout)
i3-msg exit
;;
suspend)
gksu pm-suspend
;;
hibernate)
lock && dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Hibernate
/sbin/reboot
;;
reboot)
dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Restart
;;
shutdown)
#dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop
/sbin/poweroff
;;
*)
echo "Usage: $0 {lock|logout|suspend|hibernate|reboot|shutdown}"
exit 2
esac
exit 0

34
.config/i3/scripts/load_average

@ -0,0 +1,34 @@
#!/bin/sh
# Copyright (C) 2014 Julien Bonjean <julien@bonjean.info>
# 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/>.
load="$(cut -d ' ' -f1 /proc/loadavg)"
cpus="$(nproc)"
# full text
echo "$load"
# short text
echo "$load"
# color if load is too high
awk -v cpus=$cpus -v cpuload=$load '
BEGIN {
if (cpus <= cpuload) {
print "#FF0000";
exit 33;
}
}
'

56
.config/i3/scripts/redshift-adjust

@ -0,0 +1,56 @@
#!/bin/bash
# redshift-adjust — Script for manually adjusting the colour temperature with hotkeys
# Copyright © 2014, 2015 Mattias Andrée (maandree@member.fsf.org)
# Copyright © 2015 "tPenguinLTG"
#
# 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/>.
file="/tmp/.${UID}.${DISPLAY}.redshift-adjust"
if [ ! $# = 1 ] || [ "${1}" = "-h" ] || [ "${1}" = "--help" ]; then
cat <<EOF
$0 =TEMP Set colour temperature to TEMP K
$0 +TEMP Increase colour temperature by TEMP K
$0 -TEMP Decrease colour temperature by TEMP K
$0 -p Print the current temperature
EOF
if [ $# = 1 ]; then
exit 0
fi
exit 1
fi
if [ ! -e "${file}" ]; then
echo 6500 > "${file}"
fi
if [ "${1}" = "-p" ] || [ "${1}" = "--print" ]; then
cat "${file}"
exit 0
fi
if [ "${1::1}" = "=" ]; then
temperature="${1:1}"
else
temperature=$(( $(cat "${file}") ${1::1} ${1:1} ))
fi
redshift -P -O $temperature || redshift -O $temperature
echo $temperature > "${file}"

30
.config/i3/scripts/top

@ -0,0 +1,30 @@
#!/bin/bash
# DANGER='\033[0;31m'
# WARNING='\033[1;33m'
# INFO='\033[0;34m'
# NC='\033[0m' # No Color
DANGER='#FF0000'
WARNING='#FFFF00'
INFO='#00FF00'
NC='' # No Color
topLine=$(top -b -n 1 | head -8 | tail -1)
topApp=$(echo -n $topLine | awk '{print $12}')
cpuLoad=$(echo -n $topLine | awk '{print $9}')
COLOR=$NC
cpuInt=$(printf "%.0f" $cpuLoad)
if [ $cpuInt -gt 80 ]; then
COLOR=$DANGER
elif [ $cpuInt -gt 50 ]; then
COLOR=$WARNING
fi
printf "${cpuLoad}%% ${topApp}\n${COLOR}\n"
exit 0

5693
.config/i3/scripts/trans

File diff suppressed because it is too large Load Diff

12
.config/i3/scripts/trans-xsel

@ -0,0 +1,12 @@
#!/bin/bash
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
srcTarget=$1
text=$(xsel)
#trim
text=${text##*( )}
text=${text%%*( )}
trResult=$($SCRIPT_DIR/trans -b $srcTarget "${text}")
notify-send -t 20000 "$(echo -e "Selected text translation ${srcTarget^^}: \n${trResult}")"

30
.config/i3/scripts/volctl

@ -0,0 +1,30 @@
#!/bin/bash
set -x
cmd=$1
sink=$VOLCTL_SINK
# if VOLCTL_SINK is not set, use the sink that was most recently connected
if [ -z "$sink" ]; then
NUM=${VOLCTL_SINK_NUM:-1}
sink=$(pactl list sinks | grep "Name:" | awk '{print $2}' | sed "${NUM}q;d")
fi
case $cmd in
up | u)
pactl set-sink-volume $sink +5%
;;
down | d)
pactl set-sink-volume $sink -5%
;;
toggle | t)
pactl set-sink-mute $sink toggle
;;
*)
echo -n "unknown command: $cmd"
;;
esac

70
.config/i3/scripts/volume_auto

@ -0,0 +1,70 @@
#!/bin/bash
# Copyright (C) 2014 Julien Bonjean <julien@bonjean.info>
# Copyright (C) 2014 Alexander Keller <github@nycroth.com>
# 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/>.
#------------------------------------------------------------------------
# The second parameter overrides the mixer selection
# For PulseAudio users, use "pulse"
# For Jack/Jack2 users, use "jackplug"
# For ALSA users, you may use "default" for your primary card
# or you may use hw:# where # is the number of the card desired
MIXER="default"
# [ -n "$(ps -x | grep -v grep | grep pulseaudio)" ] && MIXER="pulse"
# [ -n "$(lsmod | grep jack)" ] && MIXER="jackplug"
# MIXER="${2:-$MIXER}"
# The instance option sets the control to report and configure
# This defaults to the first control of your selected mixer
# For a list of the available, use `amixer -D $Your_Mixer scontrols`
SCONTROL="${BLOCK_INSTANCE:-$(amixer -D $MIXER scontrols |
sed -n "s/Simple mixer control '\([A-Za-z ]*\)',0/\1/p" |
head -n1
)}"
# The first parameter sets the step to change the volume by (and units to display)
# This may be in in % or dB (eg. 5% or 3dB)
STEP="${1:-5%}"
#------------------------------------------------------------------------
capability() { # Return "Capture" if the device is a capture device
amixer -D $MIXER get $SCONTROL |
sed -n "s/ Capabilities:.*cvolume.*/Capture/p"
}
volume() {
amixer -D $MIXER get $SCONTROL $(capability)
}
format() {
perl_filter='if (/.*\[(\d+%)\] (\[(-?\d+.\d+dB)\] )?\[(on|off)\]/)'
perl_filter+='{CORE::say $4 eq "off" ? "MUTE" : "'
# If dB was selected, print that instead
perl_filter+=$([[ $STEP = *dB ]] && echo '$3' || echo '$1')
perl_filter+='"; exit}'
perl -ne "$perl_filter"
}
#------------------------------------------------------------------------
case $BLOCK_BUTTON in
3) amixer -q -D $MIXER sset $SCONTROL $(capability) toggle ;; # right click, mute/unmute
4) amixer -q -D $MIXER sset $SCONTROL $(capability) ${STEP}+ unmute ;; # scroll up, increase
5) amixer -q -D $MIXER sset $SCONTROL $(capability) ${STEP}- unmute ;; # scroll down, decrease
esac
volume | format

BIN
.config/i3/wallpaper.jpg

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB

2
.config/nvim/.env

@ -0,0 +1,2 @@
AVANTE_DEEPSEEK_API_KEY=sk-f0415e7a442944a59020592c7e550e70
AVANTE_Z_API_KEY=1c71032c639a419eb4d90393fab40f4c.PgITdx53xWWfkNrq

5
.config/nvim/init.lua

@ -1,2 +1,5 @@
-- bootstrap lazy.nvim, LazyVim and your plugins -- early setup: make sure custom clipboard OSC 52 is registered first, options.lua manages default registry
require("config.clipboard")
require("config.lazy") require("config.lazy")
vim.cmd.Dotenv(vim.fn.stdpath("config") .. "/.env")

25
.config/nvim/lazy-lock.json

@ -1,33 +1,38 @@
{ {
"LazyVim": { "branch": "main", "commit": "83d90f339defdb109a6ede333865a66ffc7ef6aa" }, "LazyVim": { "branch": "main", "commit": "83d90f339defdb109a6ede333865a66ffc7ef6aa" },
"avante.nvim": { "branch": "main", "commit": "f57f541959797bbca76e6e77efeb8b572e0bea2f" },
"blink.cmp": { "branch": "main", "commit": "78336bc89ee5365633bcf754d93df01678b5c08f" }, "blink.cmp": { "branch": "main", "commit": "78336bc89ee5365633bcf754d93df01678b5c08f" },
"bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" }, "bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" },
"catppuccin": { "branch": "main", "commit": "426dbebe06b5c69fd846ceb17b42e12f890aedf1" }, "catppuccin": { "branch": "main", "commit": "426dbebe06b5c69fd846ceb17b42e12f890aedf1" },
"conform.nvim": { "branch": "master", "commit": "086a40dc7ed8242c03be9f47fbcee68699cc2395" }, "conform.nvim": { "branch": "master", "commit": "dca1a190aa85f9065979ef35802fb77131911106" },
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" }, "diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
"dotenv.nvim": { "branch": "main", "commit": "7d516e9293c6e3ac21830fb10a4e8674c02747c6" },
"dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" },
"flash.nvim": { "branch": "main", "commit": "fcea7ff883235d9024dc41e638f164a450c14ca2" }, "flash.nvim": { "branch": "main", "commit": "fcea7ff883235d9024dc41e638f164a450c14ca2" },
"friendly-snippets": { "branch": "main", "commit": "6cd7280adead7f586db6fccbd15d2cac7e2188b9" }, "friendly-snippets": { "branch": "main", "commit": "6cd7280adead7f586db6fccbd15d2cac7e2188b9" },
"gitsigns.nvim": { "branch": "main", "commit": "8d82c240f190fc33723d48c308ccc1ed8baad69d" }, "gitsigns.nvim": { "branch": "main", "commit": "dd3f588bacbeb041be6facf1742e42097f62165d" },
"grug-far.nvim": { "branch": "main", "commit": "21604255d0e8f9968322f61f2b6c09e5efe1285a" }, "grug-far.nvim": { "branch": "main", "commit": "21790e59dd0109a92a70cb874dd002af186314f5" },
"indent-blankline.nvim": { "branch": "master", "commit": "d28a3f70721c79e3c5f6693057ae929f3d9c0a03" },
"just-runner.nvim": { "branch": "main", "commit": "f29d405aa828900df242600720a2b0e57261489f" },
"lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" }, "lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" },
"lazydev.nvim": { "branch": "main", "commit": "ff2cbcba459b637ec3fd165a2be59b7bbaeedf0d" }, "lazydev.nvim": { "branch": "main", "commit": "ff2cbcba459b637ec3fd165a2be59b7bbaeedf0d" },
"lualine.nvim": { "branch": "master", "commit": "a905eeebc4e63fdc48b5135d3bf8aea5618fb21c" }, "lualine.nvim": { "branch": "master", "commit": "131a558e13f9f28b15cd235557150ccb23f89286" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "0a3b42c3e503df87aef6d6513e13148381495c3a" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "0c2823e0418f3d9230ff8b201c976e84de1cb401" },
"mason.nvim": { "branch": "main", "commit": "b03fb0f20bc1d43daf558cda981a2be22e73ac42" }, "mason.nvim": { "branch": "main", "commit": "cb8445f8ce85d957416c106b780efd51c6298f89" },
"mini.ai": { "branch": "main", "commit": "43eb2074843950a3a25aae56a5f41362ec043bfa" }, "mini.ai": { "branch": "main", "commit": "7e10ce8468c0fce4f527ae2c0e5c484f7667f73d" },
"mini.files": { "branch": "main", "commit": "e8db416c9f5dbce70f5501da28263d45c0a4df6b" }, "mini.files": { "branch": "main", "commit": "3e247eb12ca8c05622ceb8745f9004f761b22ef8" },
"mini.icons": { "branch": "main", "commit": "bac6317300e205335df425296570d84322730067" }, "mini.icons": { "branch": "main", "commit": "bac6317300e205335df425296570d84322730067" },
"mini.nvim": { "branch": "main", "commit": "418ef4930ddabe80f449c6f1323f8b6abb172d1c" },
"mini.pairs": { "branch": "main", "commit": "42387c7fe68fc0b6e95eaf37f1bb76e7bffaa0d9" }, "mini.pairs": { "branch": "main", "commit": "42387c7fe68fc0b6e95eaf37f1bb76e7bffaa0d9" },
"noice.nvim": { "branch": "main", "commit": "7bfd942445fb63089b59f97ca487d605e715f155" }, "noice.nvim": { "branch": "main", "commit": "7bfd942445fb63089b59f97ca487d605e715f155" },
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
"nvim-lint": { "branch": "master", "commit": "eab58b48eb11d7745c11c505e0f3057165902461" }, "nvim-lint": { "branch": "master", "commit": "eab58b48eb11d7745c11c505e0f3057165902461" },
"nvim-lspconfig": { "branch": "master", "commit": "4b7fbaa239c5db6b36f424a4521ca9f1a401be33" }, "nvim-lspconfig": { "branch": "master", "commit": "31026a13eefb20681124706a79fc1df6bf11ab27" },
"nvim-treesitter": { "branch": "main", "commit": "4916d6592ede8c07973490d9322f187e07dfefac" }, "nvim-treesitter": { "branch": "main", "commit": "4916d6592ede8c07973490d9322f187e07dfefac" },
"nvim-treesitter-textobjects": { "branch": "main", "commit": "851e865342e5a4cb1ae23d31caf6e991e1c99f1e" }, "nvim-treesitter-textobjects": { "branch": "main", "commit": "851e865342e5a4cb1ae23d31caf6e991e1c99f1e" },
"nvim-ts-autotag": { "branch": "main", "commit": "88c1453db4ba7dd24131086fe51fdf74e587d275" }, "nvim-ts-autotag": { "branch": "main", "commit": "88c1453db4ba7dd24131086fe51fdf74e587d275" },
"persistence.nvim": { "branch": "main", "commit": "b20b2a7887bd39c1a356980b45e03250f3dce49c" }, "persistence.nvim": { "branch": "main", "commit": "b20b2a7887bd39c1a356980b45e03250f3dce49c" },
"plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" }, "plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" },
"render-markdown.nvim": { "branch": "main", "commit": "629eb9533ec989d9d5c6cab8f3ad5372422c24e0" },
"snacks.nvim": { "branch": "main", "commit": "ad9ede6a9cddf16cedbd31b8932d6dcdee9b716e" }, "snacks.nvim": { "branch": "main", "commit": "ad9ede6a9cddf16cedbd31b8932d6dcdee9b716e" },
"todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" }, "todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" },
"tokyonight.nvim": { "branch": "main", "commit": "cdc07ac78467a233fd62c493de29a17e0cf2b2b6" }, "tokyonight.nvim": { "branch": "main", "commit": "cdc07ac78467a233fd62c493de29a17e0cf2b2b6" },

24
.config/nvim/lua/config/clipboard.lua

@ -0,0 +1,24 @@
-- ~/.config/nvim/lua/config/clipboard.lua
-- Only override clipboard when running over SSH.
-- Locally, let Neovim auto-detect the system clipboard tool (xclip, pbcopy, wl-copy, etc.)
if vim.env.SSH_TTY then
local osc52 = require("vim.ui.clipboard.osc52")
vim.g.clipboard = {
name = "OSC 52 (SSH)",
copy = {
["+"] = osc52.copy("+"),
["*"] = osc52.copy("*"),
},
paste = {
-- OSC52 paste reads back from the terminal via an escape sequence response.
-- If your terminal supports it (Kitty, WezTerm, iTerm2, etc.), use it:
["+"] = osc52.paste("+"),
["*"] = osc52.paste("*"),
},
}
end
-- Always sync unnamed register with the clipboard register
vim.opt.clipboard = "unnamedplus"

21
.config/nvim/lua/config/options.lua

@ -2,6 +2,12 @@
-- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua -- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua
-- Add any additional options here -- Add any additional options here
-- use '+' register by default to sync clipboard without "+p
vim.opt.clipboard = "unnamedplus"
-- Polish spellcheck by default, change runtime by :opt.spelllang = { "en_gb" }
vim.opt.spelllang = { "pl,en" }
--- Disable hiding of markup --- Disable hiding of markup
vim.opt.conceallevel = 0 vim.opt.conceallevel = 0
@ -15,3 +21,18 @@ vim.opt.autoindent = true
--- Disable the inlay hints (additional information about types and parameters names) because it clutters view --- Disable the inlay hints (additional information about types and parameters names) because it clutters view
vim.g.lazyvim_no_inlay_hints = true vim.g.lazyvim_no_inlay_hints = true
-- -- Enable list mode to show whitespace
-- vim.opt.list = true
-- Configure listchars to use dots (·) for spaces and tabs
vim.opt.listchars = {
tab = "· ", -- Dot for the first part of a tab, followed by space
trail = "·", -- Dot for trailing spaces
nbsp = "+", -- Symbol for non-breaking spaces
extends = ">", -- Symbol for characters that extend beyond the window
precedes = "<", -- Symbol for characters that precede the window
-- eol = "↲", -- Symbol for end of line (optional)
}

44
.config/nvim/lua/plugins/avante-ai.lua

@ -0,0 +1,44 @@
return {
"yetone/avante.nvim",
event = "VeryLazy",
version = false,
---@module 'avante'
---@type avante.Config
opts = {
instructions_file = "avante.md",
provider = "deepseek/coder",
providers = {
["deepseek/coder"] = {
__inherited_from = "openai",
api_key_name = "DEEPSEEK_API_KEY",
endpoint = "https://api.deepseek.com",
model = "deepseek-coder",
},
["deepseek/v4pro"] = {
__inherited_from = "openai",
api_key_name = "DEEPSEEK_API_KEY",
endpoint = "https://api.deepseek.com",
model = "deepseek-v4-pro",
},
["z.ai/glm-4.6"] = {
__inherited_from = "openai",
api_key_name = "Z_API_KEY",
endpoint = "https://api.z.ai/api/coding/paas/v4",
model = "glm-4.6",
},
},
},
dependencies = {
"nvim-lua/plenary.nvim",
"stevearc/dressing.nvim", -- for input provider dressing
"folke/snacks.nvim", -- for input provider snacks
"MunifTanjim/nui.nvim",
{
"MeanderingProgrammer/render-markdown.nvim",
opts = {
file_types = { "markdown", "Avante" },
},
ft = { "markdown", "Avante" },
},
},
}

50
.config/nvim/lua/plugins/colorscheme.lua

@ -0,0 +1,50 @@
-- return {
-- -- Install the colorscheme plugin
-- -- { "catppuccin/nvim", name = "catppuccin", priority = 1000 },
-- { "Shatur/neovim-ayu" },
--
-- -- Configure LazyVim to use it
-- {
-- "LazyVim/LazyVim",
-- opts = {
-- colorscheme = "ayu-mirage", -- Change this to your desired theme
-- },
-- },
-- }
return {
dir = "/home/chodak/src/git/nvim-hybrid-theme",
name = "hybrid-theme",
lazy = false,
priority = 1000,
config = function()
require("hybrid-theme").setup({
theme = "dark",
transparent = false,
background_variant = "flat",
italics = {
comments = true,
keywords = false,
functions = false,
strings = false,
variables = false,
},
})
require("hybrid-theme").colorscheme()
end,
}
-- return {
-- {
-- "chodak166/nvim-hybrid-theme",
-- name = "hybrid-theme",
-- lazy = false,
-- priority = 1000,
-- config = function()
-- require("hybrid-theme").setup({
-- background_variant = "semi_flat",
-- })
-- require("hybrid-theme").colorscheme()
-- end,
-- },
-- }

9
.config/nvim/lua/plugins/dotenv.lua

@ -0,0 +1,9 @@
return {
{
"ellisonleao/dotenv.nvim",
lazy = false, -- Load immediately
opts = {
file_name = "~/.config/nvim/.env",
},
},
}

17
.config/nvim/lua/plugins/indent-blankline.lua

@ -0,0 +1,17 @@
return {
"lukas-reineke/indent-blankline.nvim",
main = "ibl",
opts = {
indent = {
highlight = {
"IblIndent1",
"IblIndent2",
"IblIndent3",
"IblIndent4",
"IblIndent5",
"IblIndent6",
},
},
scope = { enabled = false },
},
}

27
.config/nvim/lua/plugins/just.lua

@ -0,0 +1,27 @@
return {
"alirezanobakht13/just-runner.nvim",
dependencies = {
"folke/snacks.nvim", -- Recommended (default)
-- OR use "nvim-telescope/telescope.nvim"
},
config = function()
require("just-runner").setup({
picker = "snacks",
window_position = "bottom",
close_on_success = false,
close_on_error = false,
pause_before_close = 2000,
})
end,
keys = {
-- Use Lua function, not command string!
{
"<leader>j",
function()
require("just-runner").run()
end,
desc = "Just Run",
mode = "n",
},
},
}

5
.config/nvim/lua/plugins/zz_disabled.lua

@ -0,0 +1,5 @@
-- NOTE: this file is in .gitignore to keep some plugins disabled by default
-- Force the change after adding more disabled plugins
return {
{ "yetone/avante.nvim", enabled = false },
}

13
.config/ratflow/profiles/chodak-laptop/autoapp.conf

@ -0,0 +1,13 @@
{
"1": "terminator",
"2": "eclipse",
"3": "firefox",
"4": "pcmanfm",
"5": "thunderbird",
"6": "slack || telegram",
"7": "kodi",
"8": "kate || gedit",
"9": "kate || gedit",
"0": "clementine",
"vm": "virtualbox || openxenmanager"
}

16
.config/ratflow/profiles/chodak-laptop/config.d/01-variables

@ -0,0 +1,16 @@
#------------------------------------------------
#
# variable definitions
#
#------------------------------------------------
# what will be yout mod key? Use Mod4 for "window" key, Mod1 for "alt"
set $mod ${{echo $RF_MOD_KEY}}
#set $mod Mod1
# helper scripts location
set $scriptsDir /usr/share/ratflow/scripts
# config dir
set $configDir ${{echo "$HOME/.config/ratflow"}}
set $profileConfigDir ${{echo "$HOME/.config/ratflow/profiles/current/config.d"}}

56
.config/ratflow/profiles/chodak-laptop/config.d/10-workspaces

@ -0,0 +1,56 @@
#------------------------------------------------
#
# workspace settings
#
#------------------------------------------------
# workspaces
set $workspace1 1: >_
set $workspace2 2: dev
set $workspace3 3: www
set $workspace4 4: files
set $workspace5 5: e-mail
set $workspace6 6: IM
set $workspace7 7: video
set $workspace8 8: workspace
set $workspace9 9: workspace
set $workspace10 10: Music
set $workspace11 V: VM
# switch to workspace
bindsym $mod+1 workspace $workspace1
bindsym $mod+2 workspace $workspace2
bindsym $mod+3 workspace $workspace3
bindsym $mod+4 workspace $workspace4
bindsym $mod+5 workspace $workspace5
bindsym $mod+6 workspace $workspace6
bindsym $mod+7 workspace $workspace7
bindsym $mod+8 workspace $workspace8
bindsym $mod+9 workspace $workspace9
bindsym $mod+0 workspace $workspace10
#bindsym $mod+Mod1+v workspace $workspace11
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace $workspace1
bindsym $mod+Shift+2 move container to workspace $workspace2
bindsym $mod+Shift+3 move container to workspace $workspace3
bindsym $mod+Shift+4 move container to workspace $workspace4
bindsym $mod+Shift+5 move container to workspace $workspace5
bindsym $mod+Shift+6 move container to workspace $workspace6
bindsym $mod+Shift+7 move container to workspace $workspace7
bindsym $mod+Shift+8 move container to workspace $workspace8
bindsym $mod+Shift+9 move container to workspace $workspace9
bindsym $mod+Shift+0 move container to workspace $workspace10
# next/prev workspace
bindsym $mod+x workspace next
bindsym $mod+Shift+x move container to workspace next
bindsym $mod+z workspace prev
bindsym $mod+Shift+z move container to workspace prev
# moving workspace across monitors
bindsym $mod+Control+Left move workspace to output left
bindsym $mod+Control+Right move workspace to output right

30
.config/ratflow/profiles/chodak-laptop/config.d/11-outputs

@ -0,0 +1,30 @@
#------------------------------------------------
#
# video output management
#
#------------------------------------------------
# monitors - use "xrandr --listmonitors" to obtain your output names
set $leftOutput ${{xrandr | grep connected | awk 'NR==1{print $1}'}}
set $rightOutput ${{xrandr | grep connected | awk 'NR==2{print $1}'}}
# setup monitors
exec --no-startup-id xrandr --output $rightOutput --primary
exec --no-startup-id xrandr --output $leftOutput --left-of $rightOutput
mode "outputs" {
# mod + shift + 1 to turn off left monitor, mod + 1 to turn it on
bindsym $mod+Shift+1 exec xrandr --output $leftOutput --off; mode "default"; restart
bindsym $mod+1 exec xrandr --output $leftOutput --auto --left-of $rightOutput;mode "default"; restart
# mod + shift + 2 to turn off right monitor, mod + 2 to turn it on
bindsym $mod+Shift+2 exec xrandr --output $rightOutput --off; mode "default", restart
bindsym $mod+2 exec xrandr --output $rightOutput --auto --right-of $leftOutput; mode "default"; restart
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+m mode "outputs"

16
.config/ratflow/profiles/chodak-laptop/config.d/13-wallpaper

@ -0,0 +1,16 @@
#------------------------------------------------
#
# wallpaper settings
#
#------------------------------------------------
# wallpapers (second for multihead)
set $wallpaper1 /usr/share/ratflow/images/rf_wp_14.jpg
set $wallpaper2 /usr/share/ratflow/images/rf_wp_14.jpg
# set wallpapers
exec_always --no-startup-id sleep 2 && feh --bg-scale $wallpaper1 --bg-scale $wallpaper2
# apply xrandr settings
exec_always --no-startup-id sleep 2 && xrandr --output $leftOutput --left-of $rightOutput

21
.config/ratflow/profiles/chodak-laptop/config.d/20-keys-apps-core

@ -0,0 +1,21 @@
#------------------------------------------------
#
# application running bindings
#
#------------------------------------------------
# start a terminal
#bindsym $mod+Return exec i3-sensible-terminal
#bindsym $mod+Return exec terminator -p ratflow-terminator
bindsym $mod+Return exec kitty
# start dmenu (a program launcher)
#bindsym $mod+d exec dmenu_run
#bindsym Mod1+F2 exec dmenu_run
#let's replace dmenu by custom launcher:
bindsym $mod+d exec ${{command -v ulauncher 2>&1 >/dev/null && echo ulauncher || echo dmenu_run}}
bindsym Mod1+F2 exec dmenu_run
# run app assigned to current workspace
bindsym $mod+Shift+a exec $scriptsDir/autoapp

4
.config/ratflow/profiles/chodak-laptop/config.d/20-keys-window-jumper

@ -0,0 +1,4 @@
#bindsym Mod1+Tab exec "$scriptsDir/dmenu-i3-window-jumper &"
bindsym $mod+Tab workspace back_and_forth

87
.config/ratflow/profiles/chodak-laptop/config.d/20-keys-wm

@ -0,0 +1,87 @@
#------------------------------------------------
#
# window management bindings
#
#------------------------------------------------
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# kill focused window
bindsym $mod+Shift+q kill
# change focus
bindsym $mod+j focus left
bindsym $mod+k focus down
bindsym $mod+l focus up
bindsym $mod+semicolon focus right
# alternatively, you can use the cursor keys:
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+j move left
bindsym $mod+Shift+k move down
bindsym $mod+Shift+l move up
bindsym $mod+Shift+semicolon move right
# alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# nested split in horizontal orientation
bindsym $mod+h split h
# nested split in vertical orientation
bindsym $mod+v split v
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen
# 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+space floating toggle
bindsym --whole-window $mod+button2 floating toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
# focus the parent container
bindsym $mod+a focus parent
# 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 window’s width.
# Pressing right will grow the window’s width.
# Pressing up will shrink the window’s height.
# Pressing down will grow the window’s 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
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"

1
.config/ratflow/profiles/chodak-laptop/config.d/21-always-float

@ -0,0 +1 @@
bindsym $mod+Shift+f exec $scriptsDir/always-float

22
.config/ratflow/profiles/chodak-laptop/config.d/21-keys-apps

@ -0,0 +1,22 @@
#------------------------------------------------
#
# application running bindings
#
#------------------------------------------------
# calendar
bindsym $mod+c exec osmo -c
# screenshots (full, region, active)
bindsym Print exec screengrab --fullscreen
bindsym Shift+Print exec screengrab --region
bindsym Control+Print exec screengrab --active
# redshift
bindsym $mod+Control+Next exec $scriptsDir/redshift-adjust -100
bindsym $mod+Control+Prior exec $scriptsDir/redshift-adjust +100
bindsym $mod+Control+l exec redshift -x
# translation of selected text
bindsym $mod+t exec bash -c "$scriptsDir/trans-xsel en:pl &"
bindsym $mod+Shift+t exec bash -c "$scriptsDir/trans-xsel pl:en &"

35
.config/ratflow/profiles/chodak-laptop/config.d/21-keys-media

@ -0,0 +1,35 @@
#------------------------------------------------
#
# multimedia keys and audio/video players bindings
#
#------------------------------------------------
# Pulse Audio controls (debian), the VOLCTL_SINK_NUM selects sink starting from the most recent one connected
bindsym XF86AudioRaiseVolume exec --no-startup-id (VOLCTL_SINK_NUM=1 $scriptsDir/volctl up)
bindsym XF86AudioLowerVolume exec --no-startup-id (VOLCTL_SINK_NUM=1 $scriptsDir/volctl down)
bindsym XF86AudioMute exec --no-startup-id (VOLCTL_SINK_NUM=1 $scriptsDir/volctl toggle)
bindsym Shift+XF86AudioRaiseVolume exec --no-startup-id (VOLCTL_SINK_NUM=2 $scriptsDir/volctl up)
bindsym Shift+XF86AudioLowerVolume exec --no-startup-id (VOLCTL_SINK_NUM=2 $scriptsDir/volctl down)
bindsym Shift+XF86AudioMute exec --no-startup-id (VOLCTL_SINK_NUM=2 $scriptsDir/volctl toggle)
# Sreen brightness controls
#bindsym XF86MonBrightnessUp exec xbacklight -inc 20 # increase screen brightness
#bindsym XF86MonBrightnessDown exec xbacklight -dec 20 # decrease screen brightness
bindsym XF86MonBrightnessUp exec $scriptsDir/backlight up
bindsym XF86MonBrightnessDown exec $scriptsDir/backlight down
# Media player controls
#bindsym XF86AudioPlay exec playerctl play
#bindsym XF86AudioPause exec playerctl pause
#bindsym XF86AudioNext exec playerctl next
#bindsym XF86AudioPrev exec playerctl previous
# Clementine player controls
bindsym XF86AudioPlay exec clementine --play-pause
bindsym XF86AudioPause exec clementine --pause
bindsym XF86AudioNext exec clementine --next
bindsym XF86AudioPrev exec clementine --previous
# bindsym Shift+XF86AudioRaiseVolume exec clementine --volume-up
# bindsym Shift+XF86AudioLowerVolume exec clementine --volume-down

11
.config/ratflow/profiles/chodak-laptop/config.d/21-keys-projector

@ -0,0 +1,11 @@
#------------------------------------------------
#
# media player bindings
#
#------------------------------------------------
# Pulse Audio controls (debian)
bindsym $mod+p exec /home/chodak/.screenlayout/projector.sh
bindsym Shift+$mod+p exec /home/chodak/.screenlayout/edp.sh

36
.config/ratflow/profiles/chodak-laptop/config.d/21-keys-session

@ -0,0 +1,36 @@
#------------------------------------------------
#
# session/power management
#
#------------------------------------------------
# regenerate and reload i3 configuration file
bindsym $mod+Shift+c exec rfreload
# suspend
bindsym $mod+Escape exec systemctl suspend
# regenerate i3 configuration file and restart i3 (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r exec rfreload --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'"
# use i3exit script from https://github.com/giacomos/i3wm-config/blob/master/i3exit
set $exitScript /usr/share/ratflow/scripts/i3exit
mode "session_management" {
bindsym l exec --no-startup-id $exitScript lock, mode "default"
bindsym e exec --no-startup-id $exitScript logout, mode "default"
bindsym s exec --no-startup-id $exitScript suspend, mode "default"
bindsym h exec --no-startup-id $exitScript hibernate, mode "default"
bindsym r exec --no-startup-id $exitScript reboot, mode "default"
bindsym Shift+s exec --no-startup-id $exitScript shutdown, mode "default"
# back to normal: Enter or Escape
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+Pause mode "session_management"

2
.config/ratflow/profiles/chodak-laptop/config.d/21-new-workspace

@ -0,0 +1,2 @@
# create temporary workspace
bindsym $mod+n exec name=$(yad --entry --splash --title "Create workspace" --text "Name of temporary workspace:") && i3-msg workspace $name

50
.config/ratflow/profiles/chodak-laptop/config.d/30-theme

@ -0,0 +1,50 @@
#------------------------------------------------
#
# appearance
#
#------------------------------------------------
# font
set $fontName Source Sans Pro Semi-Bold
set $fontSize 10
set $barFontSize 9
# colors
set $clFocusedActiveBorder #252525
set $clFocusedActiveBackground #252525
set $clFocusedActiveText #D9D9D9
set $clFocusedInactiveBorder #101010
set $clFocusedinactiveBackground #101010
set $clFocusedInactiveText #606060
set $clUnfocusedBorder #101010
set $clUnfocusedBackground #000000
set $clUnfocusedText #606060
set $clUrgentBorder #F05000
set $clUrgentBackground #F05000
set $clUrgentText #F0F0F0
set $clIndicator #101010
# --------- fonts ---------
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
font pango: $fontName $fontSize
#font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
# 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
# --------- windows ---------
# Widow Colours
# border background text indicator
client.focused $clFocusedActiveBorder $clFocusedActiveBackground $clFocusedActiveText $clIndicator
client.focused_inactive $clFocusedInactiveBorder $clFocusedinactiveBackground $clFocusedInactiveText $clIndicator
client.unfocused $clUnfocusedBorder $clUnfocusedBackground $clUnfocusedText $clIndicator
client.urgent $clUrgentBorder $clUrgentBackground $clUrgentText $clIndicator

35
.config/ratflow/profiles/chodak-laptop/config.d/31-bar

@ -0,0 +1,35 @@
#------------------------------------------------
#
# i3 bar
#
#------------------------------------------------
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
position top
i3bar_command i3bar -t
status_command py3status -c $configDir/profiles/current/py3status.conf
font xft:$fontName, FontAwesome $barFontsize
tray_padding 0
#Use tray_output primary/none/<output name> to define where the tray should be (multiple tray_output can be used)
#Remember to set any of your displays to primary (i.e. using xrandr)
#tray_output primary
colors {
separator $clFocusedActiveText
#background $clUnfocusedBackground
background #00000070
#statusline #FFFFFF99
statusline $clFocusedActiveText
# border background text
focused_workspace $clFocusedActiveBackground $clFocusedActiveBackground $clFocusedActiveText
active_workspace $clFocusedActiveBorder $clFocusedActiveBackground $clFocusedActiveText
inactive_workspace $clUnfocusedBackground $clUnfocusedBackground $clUnfocusedText
urgent_workspace $clUrgentBorder $clUrgentBackground $clUrgentText
}
}

42
.config/ratflow/profiles/chodak-laptop/config.d/40-assignments

@ -0,0 +1,42 @@
#------------------------------------------------
#
# assign applications to workspaces
#
#------------------------------------------------
assign [class="Qtcreator"] $workspace2
assign [class="Eclipse"] $workspace2
#assign [class="Kate"] $workspace2
#assign [class="Gedit"] $workspace2
#assign [class="Emacs"] $workspace2
assign [class="Iceweasel"] $workspace3
assign [class="Firefox"] $workspace3
assign [class="Chromium-browser"] $workspace3
assign [class="Chrome"] $workspace3
assign [class="Pcmanfm"] $workspace4
assign [class="Dolphin"] $workspace4
assign [class="Nautilus"] $workspace4
assign [class="Thunar"] $workspace4
assign [class="Thunderbird"] $workspace5
assign [class="Kadu"] $workspace6
assign [class="Skype"] $workspace6
assign [class="Pidgin"] $workspace6
assign [class="Kopete"] $workspace6
assign [class="Telegram"] $workspace6
#assign [class="Smplayer"] $workspace7
#assign [class="Smplayer2"] $workspace7
#assign [class="Mplayer"] $workspace7
#assign [class="Vlc"] $workspace7
#assign [class="dragonplayer"] $workspace7
assign [class="Kodi"] $workspace7
assign [class="Clementine"] $workspace10
assign [class="Rhythmbox"] $workspace10
assign [class="Spotify"] $workspace10
assign [class="VirtualBox"] $workspace11

12
.config/ratflow/profiles/chodak-laptop/config.d/50-floating

@ -0,0 +1,12 @@
#------------------------------------------------
#
# floating windows
#
#------------------------------------------------
for_window [class="screengrab"] floating enable
for_window [class="osmo"] floating enable
for_window [class="gsimplecal"] floating enable
${{fdir="$HOME/.config/ratflow/profiles/current/config.d/floating.d" && test -d $fdir && cat $fdir/*.float}}

42
.config/ratflow/profiles/chodak-laptop/config.d/90-exec

@ -0,0 +1,42 @@
#------------------------------------------------
#
# autostart - login command execution
#
#------------------------------------------------
# ensure that notification daemon is running
exec --no-startup-id dunst
# run window composer (with 2ms per step while faiding)
exec --no-startup-id compton -f -D 2
# enable touchpad with tapping and two-finger scroll
exec --no-startup-id synclient TouchpadOff=0
exec --no-startup-id synclient TapButton1=1
exec --no-startup-id synclient VertTwoFingerScroll=1
exec --no-startup-id synclient VertHysteresis=30
exec --no-startup-id synclient HorizHysteresis=30
# tune down screen colors with redshift
# exec --no-startup-id redshift -l 52.43:15.15 -m randr
# run network manager
exec --no-startup-id nm-applet
# run clipboard manager
#exec --no-startup-id bash -c "/usr/bin/clipit &"
exec --no-startup-id parcellite
# run bluetooth manager
#exec blueman-applet
# run tray icon with calendar
#exec gtrayicon --activate="gsimplecal" --deactivate="killall gsimplecal" --activate-icon="/usr/share/ratflow/icons/cal-activate.png" --deactivate-icon="/usr/share/ratflow/icons/cal-deactivate.png"
# other autostart apps
#exec terminator -p ratflow-terminator
#exec pcmanfm
#exec firefox
#exec thunderbird

7
.config/ratflow/profiles/chodak-laptop/config.d/91-exec_always

@ -0,0 +1,7 @@
#------------------------------------------------
#
# autostart - (re)load command execution
#
#------------------------------------------------
exec_always --no-startup-id xset dpms 600 600 600

1
.config/ratflow/profiles/chodak-laptop/config.d/floating.d/Osmo.float

@ -0,0 +1 @@
for_window [class="Osmo"] floating enable

1
.config/ratflow/profiles/chodak-laptop/config.d/floating.d/Skype.float

@ -0,0 +1 @@
for_window [class="Skype"] floating enable

1
.config/ratflow/profiles/chodak-laptop/config.d/floating.d/Yad.float

@ -0,0 +1 @@
for_window [class="Yad"] floating enable

1
.config/ratflow/profiles/chodak-laptop/env

@ -0,0 +1 @@
export RF_MOD_KEY=Mod4

77
.config/ratflow/profiles/chodak-laptop/py3status.conf

@ -0,0 +1,77 @@
# i3status configuration file.
# see "man i3status" for documentation.
# It is important that this file is edited as UTF-8.
# The following line should contain a sharp s:
# ß
# If the above line is not correctly displayed, fix your editor first!
general {
output_format = "i3bar"
colors = true
interval = 10
}
order += "volume_status"
order += "diskdata"
order += "netdata"
order += "networkmanager"
order += "battery all"
order += "external_script top"
order += "sysdata mem"
order += "tztime local"
diskdata {
# disk = "/"
format = "{free}GB"
}
networkmanager {
# devices = ['e*'] # ethernet only
#devices = ['w*'] # wireless only
devices = ["*"]
format = "{format_device}"
format_device = "[{ip4_address1}]"
format_device_separator = " / "
}
external_script top {
cache_timeout = 10
script_path = "/usr/share/ratflow/scripts/top"
}
netdata {
cache_timeout = 5
format = '{nic}: [{down}↓ {up}↑]'
}
volume_status {
thresholds = [
(0, "#FF0000"),
(10, ""),
(100, "#FFFF00")
]
}
sysdata cpu {
cache_timeout = 5
format = "CPU: {cpu_used_percent}%"
}
sysdata mem {
cache_timeout = 5
format = " {mem_used_percent}%"
}
battery all {
format = "%status %percentage %remaining"
}
tztime local {
format = "%d-%m-%Y %H:%M"
}

13
.config/ratflow/profiles/chodak_pc/autoapp.conf

@ -0,0 +1,13 @@
{
"1": "terminator",
"2": "qtcreator || eclipse || emacs ",
"3": "firefox",
"4": "pcmanfm",
"5": "thunderbird",
"6": "slack || telegram",
"7": "kodi",
"8": "howl || kate || gedit",
"9": "howl || kate || gedit",
"0": "clementine",
"vm": "virtualbox || openxenmanager"
}

612
.config/ratflow/profiles/chodak_pc/config-gen

@ -0,0 +1,612 @@
#----------------------------------------------------------------
# DO NOT EDIT THIS FILE
#
# This file has been generated by rfreload script.
# Source files can be edited before calling rfreload in:
# /home/chodak/.config/ratflow/profiles/current/config.d
#
# Run 'rfreload -i' to print complete config file list.
#
# Use ${{<command>}} syntax to include shell command result
# in configuration file content. Environment variables can be
# added to <profile>/env file. Run 'rfreload' to reload
# current profile. See 'rfreload --help' to learn more.
#
#----------------------------------------------------------------
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/01-variables:
#------------------------------------------------
#
# variable definitions
#
#------------------------------------------------
# what will be yout mod key? Use Mod4 for "window" key, Mod1 for "alt"
set $mod Mod4
#set $mod Mod1
# helper scripts location
set $scriptsDir /usr/share/ratflow/scripts
# config dir
set $configDir /home/chodak/.config/ratflow
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/10-workspaces:
#------------------------------------------------
#
# workspace settings
#
#------------------------------------------------
# workspaces
set $workspace1 1: >_
set $workspace2 2: dev
set $workspace3 3: www
set $workspace4 4: files
set $workspace5 5: e-mail
set $workspace6 6: IM
set $workspace7 7: video
set $workspace8 8: workspace
set $workspace9 9: workspace
set $workspace10 10: Music
set $workspace11 V: VM
# switch to workspace
bindsym $mod+1 workspace $workspace1
bindsym $mod+2 workspace $workspace2
bindsym $mod+3 workspace $workspace3
bindsym $mod+4 workspace $workspace4
bindsym $mod+5 workspace $workspace5
bindsym $mod+6 workspace $workspace6
bindsym $mod+7 workspace $workspace7
bindsym $mod+8 workspace $workspace8
bindsym $mod+9 workspace $workspace9
bindsym $mod+0 workspace $workspace10
#bindsym $mod+Mod1+v workspace $workspace11
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace $workspace1
bindsym $mod+Shift+2 move container to workspace $workspace2
bindsym $mod+Shift+3 move container to workspace $workspace3
bindsym $mod+Shift+4 move container to workspace $workspace4
bindsym $mod+Shift+5 move container to workspace $workspace5
bindsym $mod+Shift+6 move container to workspace $workspace6
bindsym $mod+Shift+7 move container to workspace $workspace7
bindsym $mod+Shift+8 move container to workspace $workspace8
bindsym $mod+Shift+9 move container to workspace $workspace9
bindsym $mod+Shift+0 move container to workspace $workspace10
# next/prev workspace
bindsym $mod+x workspace next
bindsym $mod+Shift+x move container to workspace next
bindsym $mod+z workspace prev
bindsym $mod+Shift+z move container to workspace prev
# moving workspace across monitors
bindsym $mod+Control+Left move workspace to output left
bindsym $mod+Control+Right move workspace to output right
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/11-outputs:
#------------------------------------------------
#
# video output management
#
#------------------------------------------------
# monitors - use "xrandr --listmonitors" to obtain your output names
set $rightOutput DP-1
set $leftOutput HDMI-1
# setup monitors
exec --no-startup-id xrandr --output $rightOutput --primary
exec --no-startup-id xrandr --output $leftOutput --left-of $rightOutput
mode "outputs" {
# mod + shift + 1 to turn off left monitor, mod + 1 to turn it on
bindsym $mod+Shift+1 exec xrandr --output $leftOutput --off; mode "default"; restart
bindsym $mod+1 exec xrandr --output $leftOutput --auto --left-of $rightOutput;mode "default"; restart
# mod + shift + 2 to turn off right monitor, mod + 2 to turn it on
bindsym $mod+Shift+2 exec xrandr --output $rightOutput --off; mode "default", restart
bindsym $mod+2 exec xrandr --output $rightOutput --auto --right-of $leftOutput; mode "default"; restart
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+m mode "outputs"
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/13-wallpaper:
#------------------------------------------------
#
# wallpaper settings
#
#------------------------------------------------
# wallpapers (second for multihead)
#set $wallpaper1 /usr/share/ratflow/images/rf_wp_06.jpg
#set $wallpaper2 /usr/share/ratflow/images/rf_wp_06.jpg
#set $wallpaper1 /home/chodak/Pictures/wallpapers/enso02.png
#set $wallpaper2 /home/chodak/Pictures/wallpapers/enso02.png
#set $wallpaper1 /home/chodak/.config/ratflow/basil02-up.jpeg
#set $wallpaper2 /home/chodak/.config/ratflow/basil02-up.jpeg
set $wallpaper1 /home/chodak/.config/ratflow/chill-idg2-s.jpeg
set $wallpaper2 /home/chodak/.config/ratflow/chilli-idg2-s.jpeg
# set wallpapers
exec_always --no-startup-id sleep 2 && feh --bg-scale $wallpaper1 --bg-scale $wallpaper2
# apply xrandr settings
exec_always --no-startup-id sleep 2 && xrandr --output $leftOutput --left-of $rightOutput
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/20-keys-apps-core:
#------------------------------------------------
#
# application running bindings
#
#------------------------------------------------
# start a terminal
#bindsym $mod+Return exec i3-sensible-terminal
#bindsym $mod+Return exec terminator -p ratflow-terminator
bindsym $mod+Return exec kitty
# start dmenu (a program launcher)
#bindsym $mod+d exec dmenu_run
#bindsym Mod1+F2 exec dmenu_run
#let's replace dmenu by custom launcher:
bindsym $mod+d exec ulauncher
bindsym Mod1+F2 exec ulauncher
# run app assigned to current workspace
bindsym $mod+Shift+a exec $scriptsDir/autoapp
bindsym Ctrl+Mod1+h exec diodon
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/20-keys-wm:
#------------------------------------------------
#
# window management bindings
#
#------------------------------------------------
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# kill focused window
bindsym $mod+Shift+q kill
# change focus
bindsym $mod+j focus left
bindsym $mod+k focus down
bindsym $mod+l focus up
bindsym $mod+semicolon focus right
# alternatively, you can use the cursor keys:
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+j move left
bindsym $mod+Shift+k move down
bindsym $mod+Shift+l move up
bindsym $mod+Shift+semicolon move right
# alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# nested split in horizontal orientation
bindsym $mod+h split h
# nested split in vertical orientation
bindsym $mod+v split v
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen
# 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+space floating toggle
bindsym --whole-window $mod+button2 floating toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
# focus the parent container
bindsym $mod+a focus parent
# 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 window’s width.
# Pressing right will grow the window’s width.
# Pressing up will shrink the window’s height.
# Pressing down will grow the window’s 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
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/21-always-float:
bindsym $mod+Shift+f exec $scriptsDir/always-float
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/21-keys-apps:
#------------------------------------------------
#
# application running bindings
#
#------------------------------------------------
# calendar
bindsym $mod+c exec osmo -c
# screenshots (full, region, active)
bindsym Print exec screengrab --fullscreen
bindsym Shift+Print exec screengrab --region
bindsym Control+Print exec screengrab --active
# redshift
bindsym $mod+Control+Next exec $scriptsDir/redshift-adjust -100
bindsym $mod+Control+Prior exec $scriptsDir/redshift-adjust +100
bindsym $mod+Control+l exec bash -c 'pgrep redshift && killall redshift || redshift -x'
# translation of selected text
bindsym $mod+t exec bash -c "$scriptsDir/trans-xsel en:pl &"
bindsym $mod+Shift+t exec bash -c "$scriptsDir/trans-xsel pl:en &"
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/21-keys-imagemagick:
#------------------------------------------------
#
# imagemagick bindings
#
#------------------------------------------------
# silent screenshot of active window
bindsym $mod+Shift+s exec bash -c 'mkdir $HOME/screenshots'; exec bash -c 'import -window "$(xdotool getwindowfocus -f)" $HOME/screenshots/$(date +%s).png'
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/21-keys-media:
#------------------------------------------------
#
# media player bindings
#
#------------------------------------------------
set $defaultAudioSink alsa_output.pci-0000_00_1b.0.analog-stereo
# Pulse Audio controls
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume $defaultAudioSink +5%
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume $defaultAudioSink -5%
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute $defaultAudioSink toggle
# Sreen brightness controls
bindsym XF86MonBrightnessUp exec xbacklight -inc 20 # increase screen brightness
bindsym XF86MonBrightnessDown exec xbacklight -dec 20 # decrease screen brightness
# Media player controls
#bindsym XF86AudioPlay exec playerctl play
#bindsym XF86AudioPause exec playerctl pause
#bindsym XF86AudioNext exec playerctl next
#bindsym XF86AudioPrev exec playerctl previous
# Clementine player controls
#bindsym XF86AudioPlay exec clementine --play-pause
bindsym XF86AudioPlay exec playerctl play-pause
#bindsym XF86AudioPause exec clementine --pause
bindsym XF86AudioPause exec playerctl pause
bindsym XF86AudioNext exec clementine --next
bindsym XF86AudioPrev exec clementine --previous
bindsym Shift+XF86AudioRaiseVolume exec clementine --volume-up
bindsym Shift+XF86AudioLowerVolume exec clementine --volume-down
bindsym $mod+b exec sleep 0.5 && xset dpms force off
bindsym $mod+Mod1+r exec recordmydesktop -o ~/Pictures/recordmydesktop/$(date +%Y%m%d).ogv
bindsym $mod+Shift+Mod1+r exec killall -SIGTERM recordmydesktop
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/21-keys-session:
#------------------------------------------------
#
# session/power management
#
#------------------------------------------------
# regenerate and reload i3 configuration file
bindsym $mod+Shift+c exec rfreload
# regenerate i3 configuration file and restart i3 (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r exec rfreload --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'"
# use i3exit script from https://github.com/giacomos/i3wm-config/blob/master/i3exit
set $exitScript /usr/share/ratflow/scripts/i3exit
mode "session_management" {
bindsym l exec --no-startup-id $exitScript lock, mode "default"
bindsym e exec --no-startup-id $exitScript logout, mode "default"
bindsym s exec --no-startup-id $exitScript suspend, mode "default"
bindsym h exec --no-startup-id $exitScript hibernate, mode "default"
bindsym r exec --no-startup-id $exitScript reboot, mode "default"
bindsym Shift+s exec --no-startup-id $exitScript shutdown, mode "default"
# back to normal: Enter or Escape
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+Pause mode "session_management"
bindsym $mod+Escape exec systemctl suspend
bindsym $mod+Shift+b exec xscreensaver-command -activate
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/21-new-workspace:
# create temporary workspace
bindsym $mod+n exec name=$(yad --entry --splash --title "Create workspace" --text "Name of temporary workspace:") && i3-msg workspace $name
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/30-theme:
#------------------------------------------------
#
# appearance
#
#------------------------------------------------
# font
#set $fontName Source Sans Pro Semi-Bold
set $fontName Bitstream Vera Sans
#set $fontName Source Sans Pro Semi-Bold
set $fontSize 10
set $barFontSize 10
# colors
set $clFocusedActiveBorder #252525
set $clFocusedActiveBackground #252525
set $clFocusedActiveText #75B0D0
set $clFocusedInactiveBorder #101010
set $clFocusedinactiveBackground #101010
set $clFocusedInactiveText #606060
set $clUnfocusedBorder #101010
set $clUnfocusedBackground #000000
set $clUnfocusedText #606060
set $clUrgentBorder #F05000
set $clUrgentBackground #F05000
set $clUrgentText #F0F0F0
set $clIndicator #101010
# --------- fonts ---------
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
font pango: $fontName $fontSize
#font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
# 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
# --------- windows ---------
# Widow Colours
# border background text indicator
client.focused $clFocusedActiveBorder $clFocusedActiveBackground $clFocusedActiveText $clIndicator
client.focused_inactive $clFocusedInactiveBorder $clFocusedinactiveBackground $clFocusedInactiveText $clIndicator
client.unfocused $clUnfocusedBorder $clUnfocusedBackground $clUnfocusedText $clIndicator
client.urgent $clUrgentBorder $clUrgentBackground $clUrgentText $clIndicator
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/31-bar:
#------------------------------------------------
#
# i3 bar
#
#------------------------------------------------
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
position top
i3bar_command i3bar -t
status_command py3status -c $configDir/profiles/current/py3status.conf
font xft:$fontName, FontAwesome $barFontsize
tray_padding 0
#Use tray_output primary/none/<output name> to define where the tray should be (multiple tray_output can be used)
#Remember to set any of your displays to primary (i.e. using xrandr)
tray_output primary
colors {
separator $clFocusedActiveText
#background $clUnfocusedBackground
background #00000070
#statusline #FFFFFF99
statusline $clFocusedActiveText
# border background text
focused_workspace $clFocusedActiveBackground $clFocusedActiveBackground $clFocusedActiveText
active_workspace $clFocusedActiveBorder $clFocusedActiveBackground $clFocusedActiveText
inactive_workspace $clUnfocusedBackground $clUnfocusedBackground $clUnfocusedText
urgent_workspace $clUrgentBorder $clUrgentBackground $clUrgentText
}
}
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/40-assignments:
#------------------------------------------------
#
# assign applications to workspaces
#
#------------------------------------------------
assign [class="Qtcreator"] $workspace2
assign [class="Eclipse"] $workspace2
#assign [class="Kate"] $workspace2
#assign [class="Gedit"] $workspace2
#assign [class="Emacs"] $workspace2
assign [class="Iceweasel"] $workspace3
assign [class="Firefox"] $workspace3
assign [class="Chromium-browser"] $workspace3
assign [class="Chrome"] $workspace3
assign [class="Pcmanfm"] $workspace4
assign [class="Dolphin"] $workspace4
assign [class="Nautilus"] $workspace4
assign [class="Thunar"] $workspace4
assign [class="Thunderbird"] $workspace5
assign [class="Kadu"] $workspace6
assign [class="Skype"] $workspace6
assign [class="Pidgin"] $workspace6
assign [class="Kopete"] $workspace6
assign [class="Telegram"] $workspace6
#assign [class="Smplayer"] $workspace7
#assign [class="Smplayer2"] $workspace7
#assign [class="Mplayer"] $workspace7
#assign [class="Vlc"] $workspace7
#assign [class="dragonplayer"] $workspace7
assign [class="Kodi"] $workspace7
assign [class="Clementine"] $workspace10
assign [class="Rhythmbox"] $workspace10
assign [class="Spotify"] $workspace10
assign [class="VirtualBox"] $workspace11
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/50-floating:
#------------------------------------------------
#
# floating windows
#
#------------------------------------------------
for_window [class="Gsimplecal"] floating enable
for_window [class="Osmo"] floating enable
for_window [class="QNapi"] floating enable
for_window [class="Vncviewer"] floating enable
for_window [class="Yad"] floating enable
for_window [class="graviglass-sim"] floating enable
for_window [class="qhourglass"] floating enable
for_window [class="screengrab"] floating enable
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/90-exec:
#------------------------------------------------
#
# autostart - login command execution
#
#------------------------------------------------
# ensure that notification daemon is running
exec --no-startup-id dunst
# run window composer (with 2ms per step while faiding)
exec --no-startup-id picom -f -D 2 -C --vsync
#exec --no-startup-id compton --config ~/.config/compton.conf -b
# enable touchpad with tapping and two-finger scroll
exec --no-startup-id synclient TouchpadOff=0
exec --no-startup-id synclient TapButton1=1
exec --no-startup-id synclient VertTwoFingerScroll=1
exec --no-startup-id synclient VertHysteresis=30
exec --no-startup-id synclient HorizHysteresis=30
# tune down screen colors with redshift
# exec --no-startup-id redshift -l 52.43:15.15 -m randr
# run network manager
exec --no-startup-id nm-applet
# run clipboard manager
# exec --no-startup-id bash -c "/usr/bin/clipit &"
exec --no-startup-id bash -c "/usr/bin/diodon &"
#exec --no-startup-id clipit
#exec --no-startup-id qlipper
# run bluetooth manager
#exec blueman-applet
# run tray icon with calendar
#exec gtrayicon --activate="gsimplecal" --deactivate="killall gsimplecal" --activate-icon="/usr/share/ratflow/icons/cal-activate.png" --deactivate-icon="/usr/share/ratflow/icons/cal-deactivate.png"
# other autostart apps
#exec terminator -p ratflow-terminator
#exec pcmanfm
#exec firefox
#exec thunderbird
#################################################################
# /home/chodak/.config/ratflow/profiles/current/config.d/91-exec_always:
#------------------------------------------------
#
# autostart - (re)load command execution
#
#------------------------------------------------

15
.config/ratflow/profiles/chodak_pc/config.d/01-variables

@ -0,0 +1,15 @@
#------------------------------------------------
#
# variable definitions
#
#------------------------------------------------
# what will be yout mod key? Use Mod4 for "window" key, Mod1 for "alt"
set $mod ${{echo $RF_MOD_KEY}}
#set $mod Mod1
# helper scripts location
set $scriptsDir /usr/share/ratflow/scripts
# config dir
set $configDir ${{echo "$HOME/.config/ratflow"}}

56
.config/ratflow/profiles/chodak_pc/config.d/10-workspaces

@ -0,0 +1,56 @@
#------------------------------------------------
#
# workspace settings
#
#------------------------------------------------
# workspaces
set $workspace1 1: >_
set $workspace2 2: dev
set $workspace3 3: www
set $workspace4 4: files
set $workspace5 5: e-mail
set $workspace6 6: IM
set $workspace7 7: video
set $workspace8 8: workspace
set $workspace9 9: workspace
set $workspace10 10: Music
set $workspace11 V: VM
# switch to workspace
bindsym $mod+1 workspace $workspace1
bindsym $mod+2 workspace $workspace2
bindsym $mod+3 workspace $workspace3
bindsym $mod+4 workspace $workspace4
bindsym $mod+5 workspace $workspace5
bindsym $mod+6 workspace $workspace6
bindsym $mod+7 workspace $workspace7
bindsym $mod+8 workspace $workspace8
bindsym $mod+9 workspace $workspace9
bindsym $mod+0 workspace $workspace10
#bindsym $mod+Mod1+v workspace $workspace11
# move focused container to workspace
bindsym $mod+Shift+1 move container to workspace $workspace1
bindsym $mod+Shift+2 move container to workspace $workspace2
bindsym $mod+Shift+3 move container to workspace $workspace3
bindsym $mod+Shift+4 move container to workspace $workspace4
bindsym $mod+Shift+5 move container to workspace $workspace5
bindsym $mod+Shift+6 move container to workspace $workspace6
bindsym $mod+Shift+7 move container to workspace $workspace7
bindsym $mod+Shift+8 move container to workspace $workspace8
bindsym $mod+Shift+9 move container to workspace $workspace9
bindsym $mod+Shift+0 move container to workspace $workspace10
# next/prev workspace
bindsym $mod+x workspace next
bindsym $mod+Shift+x move container to workspace next
bindsym $mod+z workspace prev
bindsym $mod+Shift+z move container to workspace prev
# moving workspace across monitors
bindsym $mod+Control+Left move workspace to output left
bindsym $mod+Control+Right move workspace to output right

30
.config/ratflow/profiles/chodak_pc/config.d/11-outputs

@ -0,0 +1,30 @@
#------------------------------------------------
#
# video output management
#
#------------------------------------------------
# monitors - use "xrandr --listmonitors" to obtain your output names
set $rightOutput ${{xrandr | grep ' connected' | awk 'NR==2{print $1}'}}
set $leftOutput ${{xrandr | grep ' connected' | awk 'NR==1{print $1}'}}
# setup monitors
exec --no-startup-id xrandr --output $rightOutput --primary
exec --no-startup-id xrandr --output $leftOutput --left-of $rightOutput
mode "outputs" {
# mod + shift + 1 to turn off left monitor, mod + 1 to turn it on
bindsym $mod+Shift+1 exec xrandr --output $leftOutput --off; mode "default"; restart
bindsym $mod+1 exec xrandr --output $leftOutput --auto --left-of $rightOutput;mode "default"; restart
# mod + shift + 2 to turn off right monitor, mod + 2 to turn it on
bindsym $mod+Shift+2 exec xrandr --output $rightOutput --off; mode "default", restart
bindsym $mod+2 exec xrandr --output $rightOutput --auto --right-of $leftOutput; mode "default"; restart
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+m mode "outputs"

23
.config/ratflow/profiles/chodak_pc/config.d/13-wallpaper

@ -0,0 +1,23 @@
#------------------------------------------------
#
# wallpaper settings
#
#------------------------------------------------
# wallpapers (second for multihead)
#set $wallpaper1 /usr/share/ratflow/images/rf_wp_06.jpg
#set $wallpaper2 /usr/share/ratflow/images/rf_wp_06.jpg
#set $wallpaper1 /home/chodak/Pictures/wallpapers/enso02.png
#set $wallpaper2 /home/chodak/Pictures/wallpapers/enso02.png
#set $wallpaper1 /home/chodak/.config/ratflow/basil02-up.jpeg
#set $wallpaper2 /home/chodak/.config/ratflow/basil02-up.jpeg
set $wallpaper1 /home/chodak/.config/ratflow/chill-idg2-s.jpeg
set $wallpaper2 /home/chodak/.config/ratflow/chilli-idg2-s.jpeg
# set wallpapers
exec_always --no-startup-id sleep 2 && feh --bg-scale $wallpaper1 --bg-scale $wallpaper2
# apply xrandr settings
exec_always --no-startup-id sleep 2 && xrandr --output $leftOutput --left-of $rightOutput

24
.config/ratflow/profiles/chodak_pc/config.d/20-keys-apps-core

@ -0,0 +1,24 @@
#------------------------------------------------
#
# application running bindings
#
#------------------------------------------------
# start a terminal
#bindsym $mod+Return exec i3-sensible-terminal
#bindsym $mod+Return exec terminator -p ratflow-terminator
bindsym $mod+Return exec kitty
# start dmenu (a program launcher)
#bindsym $mod+d exec dmenu_run
#bindsym Mod1+F2 exec dmenu_run
#let's replace dmenu by custom launcher:
bindsym $mod+d exec ulauncher
bindsym Mod1+F2 exec ulauncher
# run app assigned to current workspace
bindsym $mod+Shift+a exec $scriptsDir/autoapp
bindsym Ctrl+Mod1+h exec diodon

87
.config/ratflow/profiles/chodak_pc/config.d/20-keys-wm

@ -0,0 +1,87 @@
#------------------------------------------------
#
# window management bindings
#
#------------------------------------------------
# Use Mouse+$mod to drag floating windows to their wanted position
floating_modifier $mod
# kill focused window
bindsym $mod+Shift+q kill
# change focus
bindsym $mod+j focus left
bindsym $mod+k focus down
bindsym $mod+l focus up
bindsym $mod+semicolon focus right
# alternatively, you can use the cursor keys:
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+j move left
bindsym $mod+Shift+k move down
bindsym $mod+Shift+l move up
bindsym $mod+Shift+semicolon move right
# alternatively, you can use the cursor keys:
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+Right move right
# nested split in horizontal orientation
bindsym $mod+h split h
# nested split in vertical orientation
bindsym $mod+v split v
# enter fullscreen mode for the focused container
bindsym $mod+f fullscreen
# 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+space floating toggle
bindsym --whole-window $mod+button2 floating toggle
# change focus between tiling / floating windows
bindsym $mod+space focus mode_toggle
# focus the parent container
bindsym $mod+a focus parent
# 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 window’s width.
# Pressing right will grow the window’s width.
# Pressing up will shrink the window’s height.
# Pressing down will grow the window’s 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
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+r mode "resize"

1
.config/ratflow/profiles/chodak_pc/config.d/21-always-float

@ -0,0 +1 @@
bindsym $mod+Shift+f exec $scriptsDir/always-float

22
.config/ratflow/profiles/chodak_pc/config.d/21-keys-apps

@ -0,0 +1,22 @@
#------------------------------------------------
#
# application running bindings
#
#------------------------------------------------
# calendar
bindsym $mod+c exec osmo -c
# screenshots (full, region, active)
bindsym Print exec screengrab --fullscreen
bindsym Shift+Print exec screengrab --region
bindsym Control+Print exec screengrab --active
# redshift
bindsym $mod+Control+Next exec $scriptsDir/redshift-adjust -100
bindsym $mod+Control+Prior exec $scriptsDir/redshift-adjust +100
bindsym $mod+Control+l exec bash -c 'pgrep redshift && killall redshift || redshift -x'
# translation of selected text
bindsym $mod+t exec bash -c "$scriptsDir/trans-xsel en:pl &"
bindsym $mod+Shift+t exec bash -c "$scriptsDir/trans-xsel pl:en &"

9
.config/ratflow/profiles/chodak_pc/config.d/21-keys-imagemagick

@ -0,0 +1,9 @@
#------------------------------------------------
#
# imagemagick bindings
#
#------------------------------------------------
# silent screenshot of active window
bindsym $mod+Shift+s exec bash -c 'mkdir $HOME/screenshots'; exec bash -c 'import -window "$(xdotool getwindowfocus -f)" $HOME/screenshots/$(date +%s).png'

40
.config/ratflow/profiles/chodak_pc/config.d/21-keys-media

@ -0,0 +1,40 @@
#------------------------------------------------
#
# media player bindings
#
#------------------------------------------------
set $defaultAudioSink ${{pactl info | grep "Default Sink" | awk '{print $NF}' }}
# Pulse Audio controls
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume $defaultAudioSink +5%
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume $defaultAudioSink -5%
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute $defaultAudioSink toggle
# Sreen brightness controls
bindsym XF86MonBrightnessUp exec xbacklight -inc 20 # increase screen brightness
bindsym XF86MonBrightnessDown exec xbacklight -dec 20 # decrease screen brightness
# Media player controls
#bindsym XF86AudioPlay exec playerctl play
#bindsym XF86AudioPause exec playerctl pause
#bindsym XF86AudioNext exec playerctl next
#bindsym XF86AudioPrev exec playerctl previous
# Clementine player controls
#bindsym XF86AudioPlay exec clementine --play-pause
bindsym XF86AudioPlay exec playerctl play-pause
#bindsym XF86AudioPause exec clementine --pause
bindsym XF86AudioPause exec playerctl pause
bindsym XF86AudioNext exec clementine --next
bindsym XF86AudioPrev exec clementine --previous
bindsym Shift+XF86AudioRaiseVolume exec clementine --volume-up
bindsym Shift+XF86AudioLowerVolume exec clementine --volume-down
bindsym $mod+b exec sleep 0.5 && xset dpms force off
bindsym $mod+Mod1+r exec recordmydesktop -o ~/Pictures/recordmydesktop/$(date +%Y%m%d).ogv
bindsym $mod+Shift+Mod1+r exec killall -SIGTERM recordmydesktop

36
.config/ratflow/profiles/chodak_pc/config.d/21-keys-session

@ -0,0 +1,36 @@
#------------------------------------------------
#
# session/power management
#
#------------------------------------------------
# regenerate and reload i3 configuration file
bindsym $mod+Shift+c exec rfreload
# regenerate i3 configuration file and restart i3 (preserves your layout/session, can be used to upgrade i3)
bindsym $mod+Shift+r exec rfreload --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'"
# use i3exit script from https://github.com/giacomos/i3wm-config/blob/master/i3exit
set $exitScript /usr/share/ratflow/scripts/i3exit
mode "session_management" {
bindsym l exec --no-startup-id $exitScript lock, mode "default"
bindsym e exec --no-startup-id $exitScript logout, mode "default"
bindsym s exec --no-startup-id $exitScript suspend, mode "default"
bindsym h exec --no-startup-id $exitScript hibernate, mode "default"
bindsym r exec --no-startup-id $exitScript reboot, mode "default"
bindsym Shift+s exec --no-startup-id $exitScript shutdown, mode "default"
# back to normal: Enter or Escape
bindsym Return mode "default"
bindsym Escape mode "default"
}
bindsym $mod+Pause mode "session_management"
bindsym $mod+Escape exec systemctl suspend
bindsym $mod+Shift+b exec xscreensaver-command -activate

2
.config/ratflow/profiles/chodak_pc/config.d/21-new-workspace

@ -0,0 +1,2 @@
# create temporary workspace
bindsym $mod+n exec name=$(yad --entry --splash --title "Create workspace" --text "Name of temporary workspace:") && i3-msg workspace $name

52
.config/ratflow/profiles/chodak_pc/config.d/30-theme

@ -0,0 +1,52 @@
#------------------------------------------------
#
# appearance
#
#------------------------------------------------
# font
#set $fontName Source Sans Pro Semi-Bold
set $fontName Bitstream Vera Sans
#set $fontName Source Sans Pro Semi-Bold
set $fontSize 10
set $barFontSize 10
# colors
set $clFocusedActiveBorder #252525
set $clFocusedActiveBackground #252525
set $clFocusedActiveText #75B0D0
set $clFocusedInactiveBorder #101010
set $clFocusedinactiveBackground #101010
set $clFocusedInactiveText #606060
set $clUnfocusedBorder #101010
set $clUnfocusedBackground #000000
set $clUnfocusedText #606060
set $clUrgentBorder #F05000
set $clUrgentBackground #F05000
set $clUrgentText #F0F0F0
set $clIndicator #101010
# --------- fonts ---------
# Font for window titles. Will also be used by the bar unless a different font
# is used in the bar {} block below.
font pango: $fontName $fontSize
#font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1
# 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
# --------- windows ---------
# Widow Colours
# border background text indicator
client.focused $clFocusedActiveBorder $clFocusedActiveBackground $clFocusedActiveText $clIndicator
client.focused_inactive $clFocusedInactiveBorder $clFocusedinactiveBackground $clFocusedInactiveText $clIndicator
client.unfocused $clUnfocusedBorder $clUnfocusedBackground $clUnfocusedText $clIndicator
client.urgent $clUrgentBorder $clUrgentBackground $clUrgentText $clIndicator

35
.config/ratflow/profiles/chodak_pc/config.d/31-bar

@ -0,0 +1,35 @@
#------------------------------------------------
#
# i3 bar
#
#------------------------------------------------
# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
position top
i3bar_command i3bar -t
status_command py3status -c $configDir/profiles/current/py3status.conf
font xft:$fontName, FontAwesome $barFontsize
tray_padding 0
#Use tray_output primary/none/<output name> to define where the tray should be (multiple tray_output can be used)
#Remember to set any of your displays to primary (i.e. using xrandr)
tray_output primary
colors {
separator $clFocusedActiveText
#background $clUnfocusedBackground
background #00000070
#statusline #FFFFFF99
statusline $clFocusedActiveText
# border background text
focused_workspace $clFocusedActiveBackground $clFocusedActiveBackground $clFocusedActiveText
active_workspace $clFocusedActiveBorder $clFocusedActiveBackground $clFocusedActiveText
inactive_workspace $clUnfocusedBackground $clUnfocusedBackground $clUnfocusedText
urgent_workspace $clUrgentBorder $clUrgentBackground $clUrgentText
}
}

42
.config/ratflow/profiles/chodak_pc/config.d/40-assignments

@ -0,0 +1,42 @@
#------------------------------------------------
#
# assign applications to workspaces
#
#------------------------------------------------
assign [class="Qtcreator"] $workspace2
assign [class="Eclipse"] $workspace2
#assign [class="Kate"] $workspace2
#assign [class="Gedit"] $workspace2
#assign [class="Emacs"] $workspace2
assign [class="Iceweasel"] $workspace3
assign [class="Firefox"] $workspace3
assign [class="Chromium-browser"] $workspace3
assign [class="Chrome"] $workspace3
assign [class="Pcmanfm"] $workspace4
assign [class="Dolphin"] $workspace4
assign [class="Nautilus"] $workspace4
assign [class="Thunar"] $workspace4
assign [class="Thunderbird"] $workspace5
assign [class="Kadu"] $workspace6
assign [class="Skype"] $workspace6
assign [class="Pidgin"] $workspace6
assign [class="Kopete"] $workspace6
assign [class="Telegram"] $workspace6
#assign [class="Smplayer"] $workspace7
#assign [class="Smplayer2"] $workspace7
#assign [class="Mplayer"] $workspace7
#assign [class="Vlc"] $workspace7
#assign [class="dragonplayer"] $workspace7
assign [class="Kodi"] $workspace7
assign [class="Clementine"] $workspace10
assign [class="Rhythmbox"] $workspace10
assign [class="Spotify"] $workspace10
assign [class="VirtualBox"] $workspace11

7
.config/ratflow/profiles/chodak_pc/config.d/50-floating

@ -0,0 +1,7 @@
#------------------------------------------------
#
# floating windows
#
#------------------------------------------------
${{fdir="$HOME/.config/ratflow/profiles/current/config.d/floating.d" && test -d $fdir && cat $fdir/*.float}}

45
.config/ratflow/profiles/chodak_pc/config.d/90-exec

@ -0,0 +1,45 @@
#------------------------------------------------
#
# autostart - login command execution
#
#------------------------------------------------
# ensure that notification daemon is running
exec --no-startup-id dunst
# run window composer (with 2ms per step while faiding)
exec --no-startup-id picom -f -D 2 -C --vsync
#exec --no-startup-id compton --config ~/.config/compton.conf -b
# enable touchpad with tapping and two-finger scroll
exec --no-startup-id synclient TouchpadOff=0
exec --no-startup-id synclient TapButton1=1
exec --no-startup-id synclient VertTwoFingerScroll=1
exec --no-startup-id synclient VertHysteresis=30
exec --no-startup-id synclient HorizHysteresis=30
# tune down screen colors with redshift
# exec --no-startup-id redshift -l 52.43:15.15 -m randr
# run network manager
exec --no-startup-id nm-applet
# run clipboard manager
# exec --no-startup-id bash -c "/usr/bin/clipit &"
exec --no-startup-id bash -c "/usr/bin/diodon &"
#exec --no-startup-id clipit
#exec --no-startup-id qlipper
# run bluetooth manager
#exec blueman-applet
# run tray icon with calendar
#exec gtrayicon --activate="gsimplecal" --deactivate="killall gsimplecal" --activate-icon="/usr/share/ratflow/icons/cal-activate.png" --deactivate-icon="/usr/share/ratflow/icons/cal-deactivate.png"
# other autostart apps
#exec terminator -p ratflow-terminator
#exec pcmanfm
#exec firefox
#exec thunderbird

7
.config/ratflow/profiles/chodak_pc/config.d/91-exec_always

@ -0,0 +1,7 @@
#------------------------------------------------
#
# autostart - (re)load command execution
#
#------------------------------------------------

1
.config/ratflow/profiles/chodak_pc/config.d/floating.d/Gsimplecal.float

@ -0,0 +1 @@
for_window [class="Gsimplecal"] floating enable

1
.config/ratflow/profiles/chodak_pc/config.d/floating.d/Osmo.float

@ -0,0 +1 @@
for_window [class="Osmo"] floating enable

1
.config/ratflow/profiles/chodak_pc/config.d/floating.d/QNapi.float

@ -0,0 +1 @@
for_window [class="QNapi"] floating enable

1
.config/ratflow/profiles/chodak_pc/config.d/floating.d/Vncviewer.float

@ -0,0 +1 @@
for_window [class="Vncviewer"] floating enable

1
.config/ratflow/profiles/chodak_pc/config.d/floating.d/Yad.float

@ -0,0 +1 @@
for_window [class="Yad"] floating enable

1
.config/ratflow/profiles/chodak_pc/config.d/floating.d/graviglass-sim.float

@ -0,0 +1 @@
for_window [class="graviglass-sim"] floating enable

1
.config/ratflow/profiles/chodak_pc/config.d/floating.d/qhourglass.float

@ -0,0 +1 @@
for_window [class="qhourglass"] floating enable

1
.config/ratflow/profiles/chodak_pc/config.d/floating.d/screengrab.float

@ -0,0 +1 @@
for_window [class="screengrab"] floating enable

1
.config/ratflow/profiles/chodak_pc/env

@ -0,0 +1 @@
export RF_MOD_KEY=Mod4

191
.config/ratflow/profiles/chodak_pc/i3blocks.conf

@ -0,0 +1,191 @@
# i3blocks config file
#
# Please see man i3blocks for a complete reference!
# The man page is also hosted at http://vivien.github.io/i3blocks
#
# List of valid properties:
#
# align
# color
# command
# full_text
# instance
# interval
# label
# min_width
# name
# separator
# separator_block_width
# short_text
# signal
# urgent
##### ratflow note ####
#
# This file uses icons from Font Awesome,
# please see: https://fortawesome.github.io/Font-Awesome/cheatsheet/
#
# Note that some of the blocks may be using custom commands or
# scripts located in /usr/share/ratflow/scripts
#
#########################
# Global properties
#
# The top properties below are applied to every block, but can be overridden.
# Each block command defaults to the script name to avoid boilerplate.
command=/usr/share/i3blocks/$BLOCK_NAME
separator_block_width=15
markup=none
# Volume indicator
#
# The first parameter sets the step (and units to display)
# The second parameter overrides the mixer selection
# See the script for details.
[volume]
#label=VOL
#label=♪
label=
instance=Master
#instance=PCM
interval=1
signal=10
# use fixed volume script (better pulseaudio detection)
command=/usr/share/ratflow/scripts/volume_auto
# Memory usage
#
# The type defaults to "mem" if the instance is not specified.
#[memory]
#label=MEM
#separator=false
#interval=30
#[memory]
#label=SWAP
#instance=swap
#separator=false
#interval=30
# Disk usage
#
# The directory defaults to $HOME if the instance is not specified.
# The script may be called with a optional argument to set the alert
# (defaults to 10 for 10%).
[disk]
#label=HOME
label=
instance=/home
interval=30
#[disk]
#label=ROOT
#label=
#instance=/
#interval=30
# Network interface monitoring
#
# If the instance is not specified, use the interface used for default route.
# The address can be forced to IPv4 or IPv6 with -4 or -6 switches.
[iface]
#instance=wlan0
#color=#00FF00
interval=10
separator=false
[wifi]
#instance=wlp3s0
interval=10
separator=false
[bandwidth]
#instance=eth0
command=/usr/share/ratflow/scripts/bandwidth
interval=5
# CPU usage
#
# The script may be called with -w and -c switches to specify thresholds,
# see the script for details.
#[cpu_usage]
#label=CPU
#label=
#interval=10
#min_width=CPU: 100.00%
#separator=false
[load_average]
#label=CPU
label=
interval=10
command=/usr/share/ratflow/scripts/load_average
# Top CPU consuming command
#
[top_app]
command=/usr/share/ratflow/scripts/top
#label=TOP
label=
interval=10
# Battery indicator
#
# The battery instance defaults to 0.
[battery]
#label=BAT
#label=⚡
label=
#instance=1
interval=30
# Date Time
#
[time]
command=date '+%Y-%m-%d %H:%M'
interval=5
# Generic media player support
#
# This displays "ARTIST - SONG" if a music is playing.
# Supported players are: spotify, vlc, audacious, xmms2, mplayer, and others.
#[mediaplayer]
#instance=spotify
#interval=5
#signal=10
# OpenVPN support
#
# Support multiple VPN, with colors.
#[openvpn]
#interval=20
# Temperature
#
# Support multiple chips, though lm-sensors.
# The script may be called with -w and -c switches to specify thresholds,
# see the script for details.
#[temperature]
#label=TEMP
#interval=10
# Key indicators
#
# Add the following bindings to i3 config file:
#
# bindsym --release Caps_Lock exec pkill -SIGRTMIN+11 i3blocks
# bindsym --release Num_Lock exec pkill -SIGRTMIN+11 i3blocks
#[keyindicator]
#instance=CAPS
#interval=once
#signal=11
#[keyindicator]
#instance=NUM
#interval=once
#signal=11

47
.config/ratflow/profiles/chodak_pc/i3status.conf

@ -0,0 +1,47 @@
# i3status configuration file.
# see "man i3status" for documentation.
# It is important that this file is edited as UTF-8.
# The following line should contain a sharp s:
# ß
# If the above line is not correctly displayed, fix your editor first!
general {
colors = true
interval = 5
}
order += "ipv6"
order += "disk /"
order += "wireless _first_"
order += "ethernet _first_"
order += "battery all"
order += "load"
order += "tztime local"
wireless _first_ {
format_up = "W: (%quality at %essid) %ip"
format_down = "W: down"
}
ethernet _first_ {
# if you use %speed, i3status requires root privileges
format_up = "E: %ip (%speed)"
format_down = "E: down"
}
battery all {
format = "%status %percentage %remaining"
}
tztime local {
format = "%Y-%m-%d %H:%M:%S"
}
load {
format = "%1min"
}
disk "/" {
format = "%avail"
}

77
.config/ratflow/profiles/chodak_pc/py3status.conf

@ -0,0 +1,77 @@
# i3status configuration file.
# see "man i3status" for documentation.
# It is important that this file is edited as UTF-8.
# The following line should contain a sharp s:
# ß
# If the above line is not correctly displayed, fix your editor first!
general {
output_format = "i3bar"
colors = true
interval = 10
}
order += "volume_status"
order += "diskdata"
order += "netdata"
order += "networkmanager"
# order += "battery all"
order += "external_script top"
order += "sysdata mem"
order += "tztime local"
diskdata {
# disk = "/"
format = "{free}GB"
}
networkmanager {
# devices = ['e*'] # ethernet only
devices = ['w*'] # wireless only
#devices = ["*"]
format = "{format_device}"
format_device = "[{ip4_address1}]"
format_device_separator = " / "
}
external_script top {
cache_timeout = 10
script_path = "/usr/share/ratflow/scripts/top"
}
netdata {
cache_timeout = 5
format = '{nic}: [{down}↓ {up}↑]'
}
volume_status {
thresholds = [
(0, "#FF0000"),
(10, ""),
(100, "#FFFF00")
]
}
sysdata cpu {
cache_timeout = 5
format = "CPU: {cpu_used_percent}%"
}
sysdata mem {
cache_timeout = 5
format = " {mem_used_percent}%"
}
battery all {
format = "%status %percentage %remaining"
}
tztime local {
format = "%d-%m-%Y %H:%M"
}

37
.dotfiles.d/README.md

@ -1,6 +1,30 @@
# Dotfiles # Dotfiles
## Initialization The following instructions will set up a bare Git repository in your home directory to track and manage your dotfiles without the need for symlinks or a separate tool.
## Quick start
```bash
curl -L bit.ly/4vVSPw1 | sh
```
This will pull dotfiles into your home directory.
Then run one of the init scripts in `~/.dotfiles.d/init`:
```bash
bash ~/.dotfiles.d/init/init-shell.sh
```
Run `zsh` to initialize the configuration. You may also want to set `zsh` as default shell:
```
chsh -s $(which zsh)
```
**IMPORTANT**: Backup your critical dotfiles before initializing this repostitory.
```bash ```bash
git init --bare $HOME/.dotfiles.git git init --bare $HOME/.dotfiles.git
@ -34,3 +58,14 @@ config add .config/redshift.conf
config commit -m "Add redshift config" config commit -m "Add redshift config"
config push config push
``` ```
## Initialization
This is how it was created. No need to do this when using existing repository.
```bash
git init --bare $HOME/.dotfiles.git
alias config='/usr/bin/git --git-dir=$$HOME/.dotfiles.git --work-tree=$$HOME'
config config status.showUntrackedFiles no

3
.dotfiles.d/init/init-nvim.sh

@ -9,7 +9,8 @@ sudo apt install -y \
ripgrep \ ripgrep \
fd-find \ fd-find \
zoxide \ zoxide \
build-essential build-essential \
just
cd /tmp cd /tmp
curl -LO https://github.com/neovim/neovim/releases/latest/download/nvim-linux-x86_64.tar.gz curl -LO https://github.com/neovim/neovim/releases/latest/download/nvim-linux-x86_64.tar.gz

1
.gitignore vendored

@ -0,0 +1 @@
.config/nvim/lua/plugins/zz_disabled.lua

5
.tmux.conf

@ -1,12 +1,15 @@
set -g default-command /usr/bin/zsh set -g default-command /usr/bin/zsh
set -g default-terminal "xterm-256color" set -g default-terminal "tmux-256color"
# disable mouse mode (to use selection mode from current terminal) # disable mouse mode (to use selection mode from current terminal)
set-option -g mouse off set-option -g mouse off
# copy mode # copy mode
setw -g mode-keys vi setw -g mode-keys vi
set -g set-clipboard on
set -g allow-passthrough on
bind-key -T copy-mode-vi 'v' send -X begin-selection bind-key -T copy-mode-vi 'v' send -X begin-selection
bind-key -T copy-mode-vi 'y' send -X copy-selection-and-cancel bind-key -T copy-mode-vi 'y' send -X copy-selection-and-cancel

6
.zshrc

@ -177,17 +177,23 @@ done
export PATH export PATH
alias bat=batcat alias bat=batcat
alias xcontrast-low='xcalib -c && xcalib -co 90 -b 0 -gc 0.8 -a'
alias xcontrast-reset='xcalib -c'
alias ll='eza --icons=auto -T --level 2 -lah --group-directories-first --color=always | less' alias ll='eza --icons=auto -T --level 2 -lah --group-directories-first --color=always | less'
alias l='eza --icons=auto -lah --group-directories-first --color=always | less'
alias gl="git log --graph --abbrev-commit --decorate --format=format:'%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(dim white)- %an%C(reset)%C(bold yellow)%d%C(reset)' --all" alias gl="git log --graph --abbrev-commit --decorate --format=format:'%C(bold blue)%h%C(reset) - %C(bold green)(%ar)%C(reset) %C(white)%s%C(reset) %C(dim white)- %an%C(reset)%C(bold yellow)%d%C(reset)' --all"
alias git-config-pb='git config user.name "Łukasz Chodyła" && git config user.email "lukasz.chodyla@platformabiznesu.net"' alias git-config-pb='git config user.name "Łukasz Chodyła" && git config user.email "lukasz.chodyla@platformabiznesu.net"'
alias git-config-ch='git config user.name "chodak166" && git config user.email "chodak166@op.pl"' alias git-config-ch='git config user.name "chodak166" && git config user.email "chodak166@op.pl"'
alias config='/usr/bin/git --git-dir=$HOME/.dotfiles.git/ --work-tree=$HOME' alias config='/usr/bin/git --git-dir=$HOME/.dotfiles.git/ --work-tree=$HOME'
alias v='nvim'
alias se=sudoedit
config config status.showUntrackedFiles no config config status.showUntrackedFiles no
export TERM=xterm-256color export TERM=xterm-256color
export VCPKG_ROOT=/opt/vcpkg export VCPKG_ROOT=/opt/vcpkg
export SHELL=$(which zsh) export SHELL=$(which zsh)
export SUDO_EDITOR=nvim
. "$HOME/.local/bin/env" 2>/dev/null . "$HOME/.local/bin/env" 2>/dev/null

Loading…
Cancel
Save