mirror of
				https://github.com/bytequill/dotfiles.git
				synced 2025-11-04 12:19:19 +01:00 
			
		
		
		
	Initial push of current integrated configs and early stow skeleton
This commit is contained in:
		
							parent
							
								
									36315f3bb4
								
							
						
					
					
						commit
						07434affb4
					
				
							
								
								
									
										214
									
								
								.config/i3/config
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										214
									
								
								.config/i3/config
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,214 @@
 | 
			
		||||
# Stored online on: https://git.codebased.xyz/bytequill/dotfiles/src/branch/main/.config/i3/config
 | 
			
		||||
# i3 config file (v4) - Edited by bytequill@codebased.xyz
 | 
			
		||||
#
 | 
			
		||||
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
 | 
			
		||||
 | 
			
		||||
set $mod Mod4
 | 
			
		||||
# Mod = Super
 | 
			
		||||
 | 
			
		||||
# Font for window titles. Will also be used by the bar unless a different font
 | 
			
		||||
# is used in the bar {} block below.
 | 
			
		||||
font pango:IosevkaTermNerdFont 10
 | 
			
		||||
 | 
			
		||||
# 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
 | 
			
		||||
 | 
			
		||||
# Start XDG autostart .desktop files using dex. See also
 | 
			
		||||
# https://wiki.archlinux.org/index.php/XDG_Autostart
 | 
			
		||||
exec --no-startup-id dex-autostart --autostart --environment i3
 | 
			
		||||
 | 
			
		||||
# The combination of xss-lock, nm-applet and pactl is a popular choice, so
 | 
			
		||||
# they are included here as an example. Modify as you see fit.
 | 
			
		||||
 | 
			
		||||
# xss-lock grabs a logind suspend inhibit lock and will use i3lock to lock the
 | 
			
		||||
# screen before suspend. Use loginctl lock-session to lock your screen.
 | 
			
		||||
exec --no-startup-id xss-lock --transfer-sleep-lock -- /home/user/bin/i3lock-color/examples/my_lock.sh
 | 
			
		||||
 | 
			
		||||
# NetworkManager is the most popular way to manage wireless networks on Linux,
 | 
			
		||||
# and nm-applet is a desktop environment-independent system tray GUI for it.
 | 
			
		||||
exec --no-startup-id nm-applet
 | 
			
		||||
 | 
			
		||||
# Use pactl to adjust volume in PulseAudio.
 | 
			
		||||
set $refresh_i3status killall -SIGUSR1 i3status
 | 
			
		||||
bindsym XF86AudioRaiseVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ +10% && $refresh_i3status
 | 
			
		||||
bindsym XF86AudioLowerVolume exec --no-startup-id pactl set-sink-volume @DEFAULT_SINK@ -10% && $refresh_i3status
 | 
			
		||||
bindsym XF86AudioMute exec --no-startup-id pactl set-sink-mute @DEFAULT_SINK@ toggle && $refresh_i3status
 | 
			
		||||
bindsym XF86AudioMicMute exec --no-startup-id pactl set-source-mute @DEFAULT_SOURCE@ toggle && $refresh_i3status
 | 
			
		||||
 | 
			
		||||
# Use Mouse+$mod to drag floating windows to their wanted position
 | 
			
		||||
floating_modifier $mod
 | 
			
		||||
 | 
			
		||||
# start a terminal
 | 
			
		||||
## CUSTOM
 | 
			
		||||
bindsym $mod+Return exec kitty
 | 
			
		||||
bindsym $mod+Shift+Return exec --no-startup-id tdrop -ma kitty
 | 
			
		||||
 | 
			
		||||
# kill focused window
 | 
			
		||||
bindsym $mod+Shift+q kill
 | 
			
		||||
 | 
			
		||||
# start dmenu (a program launcher)
 | 
			
		||||
#bindsym $mod+d exec --no-startup-id "dmenu_run -nf '#BBBBBB' -nb '#222222' -sb '#005577' -sf '#EEEEEE' -fn 'monospace-10'"
 | 
			
		||||
# A more modern dmenu replacement is rofi:
 | 
			
		||||
bindsym $mod+d exec "rofi -combi-modes drun#run -show combi"
 | 
			
		||||
# There also is i3-dmenu-desktop which only displays applications shipping a
 | 
			
		||||
# .desktop file. It is a wrapper around dmenu, so you need that installed.
 | 
			
		||||
# bindcode $mod+40 exec --no-startup-id i3-dmenu-desktop
 | 
			
		||||
 | 
			
		||||
#CUSTOM STUFF
 | 
			
		||||
bindsym $mod+c exec "rofi -modi calc -show calc"
 | 
			
		||||
bindsym $mod+Mod1+b exec --no-startup-id feh ~/Documents/wallpaper/* --recursive --randomize --bg-fill
 | 
			
		||||
bindsym $mod+l exec --no-startup-id betterlockscreen -l dim
 | 
			
		||||
bindsym Print exec --no-startup-id flameshot gui
 | 
			
		||||
for_window [class="ecode"] border pixel 0
 | 
			
		||||
 | 
			
		||||
exec --no-startup-id xwayland
 | 
			
		||||
exec --no-startup-id pipewire
 | 
			
		||||
exec --no-startup-id wireplumber
 | 
			
		||||
# 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
 | 
			
		||||
 | 
			
		||||
# split in horizontal orientation
 | 
			
		||||
bindsym $mod+h split h
 | 
			
		||||
 | 
			
		||||
# split in vertical orientation
 | 
			
		||||
bindsym $mod+v split v
 | 
			
		||||
 | 
			
		||||
# enter fullscreen mode for the focused container
 | 
			
		||||
bindsym $mod+f fullscreen toggle
 | 
			
		||||
 | 
			
		||||
# change container layout (stacked, tabbed, toggle split)
 | 
			
		||||
bindsym $mod+s layout stacking
 | 
			
		||||
bindsym $mod+w layout tabbed
 | 
			
		||||
bindsym $mod+e layout toggle split
 | 
			
		||||
 | 
			
		||||
# toggle tiling / floating
 | 
			
		||||
bindsym $mod+Shift+space floating toggle
 | 
			
		||||
 | 
			
		||||
# change focus between tiling / floating windows
 | 
			
		||||
bindsym $mod+space focus mode_toggle
 | 
			
		||||
 | 
			
		||||
# focus the parent container
 | 
			
		||||
bindsym $mod+a focus parent
 | 
			
		||||
 | 
			
		||||
# focus the child container
 | 
			
		||||
#bindsym $mod+d focus child
 | 
			
		||||
 | 
			
		||||
# Define names for default workspaces for which we configure key bindings later on.
 | 
			
		||||
# We use variables to avoid repeating the names in multiple places.
 | 
			
		||||
set $ws1 "1"
 | 
			
		||||
set $ws2 "2"
 | 
			
		||||
set $ws3 "3"
 | 
			
		||||
set $ws4 "4"
 | 
			
		||||
set $ws5 "5"
 | 
			
		||||
set $ws6 "6"
 | 
			
		||||
set $ws7 "7"
 | 
			
		||||
set $ws8 "8"
 | 
			
		||||
set $ws9 "9"
 | 
			
		||||
set $ws10 "10"
 | 
			
		||||
 | 
			
		||||
# switch to workspace
 | 
			
		||||
bindsym $mod+1 workspace number $ws1
 | 
			
		||||
bindsym $mod+2 workspace number $ws2
 | 
			
		||||
bindsym $mod+3 workspace number $ws3
 | 
			
		||||
bindsym $mod+4 workspace number $ws4
 | 
			
		||||
bindsym $mod+5 workspace number $ws5
 | 
			
		||||
bindsym $mod+6 workspace number $ws6
 | 
			
		||||
bindsym $mod+7 workspace number $ws7
 | 
			
		||||
bindsym $mod+8 workspace number $ws8
 | 
			
		||||
bindsym $mod+9 workspace number $ws9
 | 
			
		||||
bindsym $mod+0 workspace number $ws10
 | 
			
		||||
 | 
			
		||||
# move focused container to workspace
 | 
			
		||||
bindsym $mod+Shift+1 move container to workspace number $ws1
 | 
			
		||||
bindsym $mod+Shift+2 move container to workspace number $ws2
 | 
			
		||||
bindsym $mod+Shift+3 move container to workspace number $ws3
 | 
			
		||||
bindsym $mod+Shift+4 move container to workspace number $ws4
 | 
			
		||||
bindsym $mod+Shift+5 move container to workspace number $ws5
 | 
			
		||||
bindsym $mod+Shift+6 move container to workspace number $ws6
 | 
			
		||||
bindsym $mod+Shift+7 move container to workspace number $ws7
 | 
			
		||||
bindsym $mod+Shift+8 move container to workspace number $ws8
 | 
			
		||||
bindsym $mod+Shift+9 move container to workspace number $ws9
 | 
			
		||||
bindsym $mod+Shift+0 move container to workspace number $ws10
 | 
			
		||||
 | 
			
		||||
# reload the configuration file
 | 
			
		||||
bindsym $mod+Shift+c reload
 | 
			
		||||
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
 | 
			
		||||
bindsym $mod+Shift+r restart
 | 
			
		||||
# exit i3 (logs you out of your X session)
 | 
			
		||||
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -B 'Yes, exit i3' 'i3-msg exit'"
 | 
			
		||||
 | 
			
		||||
# resize window (you can also use the mouse for that)
 | 
			
		||||
mode "resize" {
 | 
			
		||||
        # These bindings trigger as soon as you enter the resize mode
 | 
			
		||||
 | 
			
		||||
        # Pressing left will shrink the 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 or $mod+r
 | 
			
		||||
        bindsym Return mode "default"
 | 
			
		||||
        bindsym Escape mode "default"
 | 
			
		||||
        bindsym $mod+r mode "default"
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
bindsym $mod+r mode "resize"
 | 
			
		||||
 | 
			
		||||
# class                 border  bground text    indicator child_border
 | 
			
		||||
client.focused          #83CAFA #51A2DA #FFFFFF #83CAFA   #51A2DA
 | 
			
		||||
client.focused_inactive #8C8C8C #4C4C4C #FFFFFF #4C4C4C   #8C8C8C
 | 
			
		||||
client.unfocused        #4C4C4C #222222 #888888 #292D2E   #222222
 | 
			
		||||
client.urgent           #EC69A0 #DB3279 #FFFFFF #DB3279   #DB3279
 | 
			
		||||
client.placeholder      #000000 #0C0C0C #FFFFFF #000000   #0C0C0C
 | 
			
		||||
 | 
			
		||||
client.background       #FFFFFF
 | 
			
		||||
 | 
			
		||||
# Start i3bar to display a workspace bar (plus the system information i3status
 | 
			
		||||
# finds out, if available)
 | 
			
		||||
bar {
 | 
			
		||||
  colors {
 | 
			
		||||
    background #000000
 | 
			
		||||
    statusline #FFFFFF
 | 
			
		||||
    separator  #666666
 | 
			
		||||
 | 
			
		||||
    focused_workspace  #83CAFA #51A2DA #FFFFFF
 | 
			
		||||
    active_workspace   #3C6EB4 #294172 #FFFFFF
 | 
			
		||||
    inactive_workspace #8C8C8C #4C4C4C #888888
 | 
			
		||||
    urgent_workspace   #EC69A0 #DB3279 #FFFFFF
 | 
			
		||||
    binding_mode       #b691d3 #A07CBC #FFFFFF
 | 
			
		||||
  }
 | 
			
		||||
  position top
 | 
			
		||||
  status_command $HOME/.config/i3/conky/runner.sh
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										91
									
								
								.config/i3/conky/conkystatus.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										91
									
								
								.config/i3/conky/conkystatus.conf
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,91 @@
 | 
			
		||||
#### Conky configuration file
 | 
			
		||||
## to replace the i3status for i3bar
 | 
			
		||||
 | 
			
		||||
# Only stdio output
 | 
			
		||||
out_to_x no
 | 
			
		||||
own_window no
 | 
			
		||||
out_to_console yes
 | 
			
		||||
background no
 | 
			
		||||
max_text_width 0
 | 
			
		||||
 | 
			
		||||
# Update interval in seconds
 | 
			
		||||
update_interval 0.5
 | 
			
		||||
 | 
			
		||||
# This is the number of times Conky will update before quitting.
 | 
			
		||||
# Set to zero to run forever.
 | 
			
		||||
total_run_times 0
 | 
			
		||||
 | 
			
		||||
# Shortens units to a single character (kiB->k, GiB->G, etc.). Default is off.
 | 
			
		||||
short_units yes
 | 
			
		||||
 | 
			
		||||
# How strict should if_up be when testing an interface for being up?
 | 
			
		||||
# The value is one of up, link or address, to check for the interface
 | 
			
		||||
# being solely up, being up and having link or being up, having link
 | 
			
		||||
# and an assigned IP address. 
 | 
			
		||||
if_up_strictness link
 | 
			
		||||
 | 
			
		||||
# Add spaces to keep things from moving about?  This only affects certain objects.
 | 
			
		||||
# use_spacer should have an argument of left, right, or none
 | 
			
		||||
use_spacer left
 | 
			
		||||
 | 
			
		||||
# Force UTF8? note that UTF8 support required XFT
 | 
			
		||||
override_utf8_locale no
 | 
			
		||||
 | 
			
		||||
# number of cpu samples to average
 | 
			
		||||
# set to 1 to disable averaging
 | 
			
		||||
cpu_avg_samples 2
 | 
			
		||||
 | 
			
		||||
# Stuff after 'TEXT' will be formatted on screen
 | 
			
		||||
TEXT
 | 
			
		||||
 | 
			
		||||
# JSON for i3bar
 | 
			
		||||
[
 | 
			
		||||
    # Free storage space in /home
 | 
			
		||||
    { "full_text" : " ${fs_free /home} Free" , "color" : "\#ffffff" },
 | 
			
		||||
    
 | 
			
		||||
    # RAM
 | 
			
		||||
    { "full_text" : "  ${memperc}% (${mem}/${memmax})" , "color" : \
 | 
			
		||||
    ${if_match ${memperc}<90}"\#ffffff"${else}"\#ff0000"${endif} }, 
 | 
			
		||||
 | 
			
		||||
    # CPU
 | 
			
		||||
    { "full_text" : " ${cpu}% ${freq_g 1}GHz", "color" : \
 | 
			
		||||
    ${if_match ${cpu}<90}"\#ffffff"${else}"\#ff0000"${endif}},
 | 
			
		||||
    
 | 
			
		||||
 | 
			
		||||
    # Networking 
 | 
			
		||||
   # ${if_up wlp0s20f3} { "full_text" : " (${wireless_essid wlp0s20f3}) ${addr wlp0s20f3}" , "color" : "\#00ff00" },${endif}\
 | 
			
		||||
   # ${if_up enp4so} { "full_text" : "Eth: ${addr enp4so}" , "color" : "\#00ff00" },${endif}\ 
 | 
			
		||||
    
 | 
			
		||||
    # All the charges for the Battery
 | 
			
		||||
    # This looks aweful because conky doesn't have an "else if"
 | 
			
		||||
    # icon cheet sheet https://fortawesome.github.io/Font-Awesome/cheatsheet/
 | 
			
		||||
    ${if_existing /sys/class/power_supply/BAT0}\
 | 
			
		||||
    	${if_match ${battery_percent}>15}\
 | 
			
		||||
        	${if_match ${battery_percent}>35}\
 | 
			
		||||
           		 ${if_match ${battery_percent}>60}\
 | 
			
		||||
              	  ${if_match ${battery_percent}>80}\
 | 
			
		||||
               	   	  # 100% ish
 | 
			
		||||
                 	   { "full_text" : " ${battery_percent}%(${battery_time})", "color" : "\#ffffff" }, \
 | 
			
		||||
              	  ${else}\
 | 
			
		||||
                  	  # less than 75% 
 | 
			
		||||
                  	  { "full_text" : " ${battery_percent}%(${battery_time})", "color" : "\#ffffff" }, \
 | 
			
		||||
              	  ${endif}\
 | 
			
		||||
          	  ${else}\
 | 
			
		||||
               		 # less than 50%
 | 
			
		||||
               	 	{ "full_text" : " ${battery_percent}%(${battery_time})", "color" : "\#ffffff" }, \
 | 
			
		||||
            	  ${endif}\
 | 
			
		||||
        	${else}\
 | 
			
		||||
           		 # 20ish % charge
 | 
			
		||||
           		 { "full_text" : " ${battery_percent}%(${battery_time})", "color" : "\#ff8800" }, \
 | 
			
		||||
        	${endif}\
 | 
			
		||||
   	 ${else}\
 | 
			
		||||
      	  #empty battery
 | 
			
		||||
      	  { "full_text" : " ${battery_percent}%(${battery_time})", "color" : "\#ff0000" }, \
 | 
			
		||||
    	${endif}\
 | 
			
		||||
    ${endif}\
 | 
			
		||||
    # Volume
 | 
			
		||||
    { "full_text" : "  ${exec amixer get Master -M | grep -oE -m1 "[[:digit:]]*%"}", "color" : "\#ffffff"},
 | 
			
		||||
    
 | 
			
		||||
    # Time 
 | 
			
		||||
    { "full_text" : " ${time %y/%m/%d (%a) %H:%M:%S}" , "color" : "\#ff8800"}
 | 
			
		||||
    ],
 | 
			
		||||
							
								
								
									
										18
									
								
								.config/i3/conky/runner.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										18
									
								
								.config/i3/conky/runner.sh
									
									
									
									
									
										Executable file
									
								
							@ -0,0 +1,18 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
# TODO: find a better place for this auto-exec
 | 
			
		||||
xcompmgr -c -f -n &
 | 
			
		||||
 | 
			
		||||
scripts="$HOME/.config/i3/conky"
 | 
			
		||||
 | 
			
		||||
# Send the header so that i3bar knows we want to use JSON:
 | 
			
		||||
echo '{"version":1}'
 | 
			
		||||
 | 
			
		||||
# Begin the endless array.
 | 
			
		||||
echo '['
 | 
			
		||||
 | 
			
		||||
# We send an empty first array of blocks to make the loop simpler:
 | 
			
		||||
echo '[],'
 | 
			
		||||
 | 
			
		||||
# Now send blocks with information forever:
 | 
			
		||||
exec conky -c "$scripts/conkystatus.conf"
 | 
			
		||||
							
								
								
									
										2534
									
								
								.config/kitty/kitty.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2534
									
								
								.config/kitty/kitty.conf
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1004
									
								
								.config/nvim/init.lua
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1004
									
								
								.config/nvim/init.lua
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										24
									
								
								.config/nvim/lazy-lock.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								.config/nvim/lazy-lock.json
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,24 @@
 | 
			
		||||
{
 | 
			
		||||
  "LuaSnip": { "branch": "master", "commit": "458560534a73f7f8d7a11a146c801db00b081df0" },
 | 
			
		||||
  "blink.cmp": { "branch": "main", "commit": "9bcb14b43852a6f2bfd5ac9ef29cb5cf09b1b39b" },
 | 
			
		||||
  "conform.nvim": { "branch": "master", "commit": "8132ec733eed3bf415b97b76797ca41b59f51d7d" },
 | 
			
		||||
  "fidget.nvim": { "branch": "main", "commit": "d9ba6b7bfe29b3119a610892af67602641da778e" },
 | 
			
		||||
  "gitsigns.nvim": { "branch": "main", "commit": "1b0350ab707713b2bc6c236151f1a324175347b1" },
 | 
			
		||||
  "guess-indent.nvim": { "branch": "main", "commit": "84a4987ff36798c2fc1169cbaff67960aed9776f" },
 | 
			
		||||
  "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
 | 
			
		||||
  "lazydev.nvim": { "branch": "main", "commit": "2367a6c0a01eb9edb0464731cc0fb61ed9ab9d2c" },
 | 
			
		||||
  "mason-lspconfig.nvim": { "branch": "main", "commit": "c4c84f4521d62de595c0d0f718a9a40c1890c8ce" },
 | 
			
		||||
  "mason-tool-installer.nvim": { "branch": "main", "commit": "93a9ff9b34c91c0cb0f7de8d5f7e4abce51d8903" },
 | 
			
		||||
  "mason.nvim": { "branch": "main", "commit": "8024d64e1330b86044fed4c8494ef3dcd483a67c" },
 | 
			
		||||
  "mini.nvim": { "branch": "main", "commit": "01dce72f2177de6044bcab60ebb8f8e56ade0936" },
 | 
			
		||||
  "nvim-lspconfig": { "branch": "master", "commit": "2d0ca00368742c0c7af802b9b2a920c4cd02303a" },
 | 
			
		||||
  "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
 | 
			
		||||
  "nvim-web-devicons": { "branch": "master", "commit": "19d6211c78169e78bab372b585b6fb17ad974e82" },
 | 
			
		||||
  "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
 | 
			
		||||
  "telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" },
 | 
			
		||||
  "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" },
 | 
			
		||||
  "telescope.nvim": { "branch": "master", "commit": "b4da76be54691e854d3e0e02c36b0245f945c2c7" },
 | 
			
		||||
  "todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" },
 | 
			
		||||
  "tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" },
 | 
			
		||||
  "which-key.nvim": { "branch": "main", "commit": "370ec46f710e058c9c1646273e6b225acf47cbed" }
 | 
			
		||||
}
 | 
			
		||||
							
								
								
									
										3
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								.gitmodules
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,3 @@
 | 
			
		||||
[submodule ".oh-my-zsh"]
 | 
			
		||||
	path = .oh-my-zsh
 | 
			
		||||
	url = https://github.com/ohmyzsh/ohmyzsh.git
 | 
			
		||||
							
								
								
									
										1
									
								
								.oh-my-zsh
									
									
									
									
									
										Submodule
									
								
							
							
								
								
								
								
								
								
									
									
								
							
						
						
									
										1
									
								
								.oh-my-zsh
									
									
									
									
									
										Submodule
									
								
							@ -0,0 +1 @@
 | 
			
		||||
Subproject commit f8022980a3423f25e3d5e1b6a60d2372a2ba006b
 | 
			
		||||
							
								
								
									
										15
									
								
								.stow-local-ignore
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								.stow-local-ignore
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,15 @@
 | 
			
		||||
# Comments and blank lines are allowed.
 | 
			
		||||
 | 
			
		||||
\.git
 | 
			
		||||
\.gitignore
 | 
			
		||||
\.gitmodules
 | 
			
		||||
 | 
			
		||||
.+~          # emacs backup files
 | 
			
		||||
\#.*\#       # emacs autosave files
 | 
			
		||||
 | 
			
		||||
^/README.*
 | 
			
		||||
^/LICENSE.*
 | 
			
		||||
^/COPYING
 | 
			
		||||
 | 
			
		||||
# Custom files
 | 
			
		||||
stow.sh
 | 
			
		||||
							
								
								
									
										119
									
								
								.zshrc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										119
									
								
								.zshrc
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,119 @@
 | 
			
		||||
# If you come from bash you might have to change your $PATH.
 | 
			
		||||
# export PATH=$HOME/bin:$HOME/.local/bin:/usr/local/bin:$PATH
 | 
			
		||||
 | 
			
		||||
# Path to your Oh My Zsh installation.
 | 
			
		||||
export ZSH="$HOME/.oh-my-zsh"
 | 
			
		||||
 | 
			
		||||
# Set name of the theme to load --- if set to "random", it will
 | 
			
		||||
# load a random theme each time Oh My Zsh is loaded, in which case,
 | 
			
		||||
# to know which specific one was loaded, run: echo $RANDOM_THEME
 | 
			
		||||
# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes
 | 
			
		||||
ZSH_THEME="mortalscumbag"
 | 
			
		||||
 | 
			
		||||
# Set list of themes to pick from when loading at random
 | 
			
		||||
# Setting this variable when ZSH_THEME=random will cause zsh to load
 | 
			
		||||
# a theme from this variable instead of looking in $ZSH/themes/
 | 
			
		||||
# If set to an empty array, this variable will have no effect.
 | 
			
		||||
# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" )
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line to use case-sensitive completion.
 | 
			
		||||
# CASE_SENSITIVE="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line to use hyphen-insensitive completion.
 | 
			
		||||
# Case-sensitive completion must be off. _ and - will be interchangeable.
 | 
			
		||||
# HYPHEN_INSENSITIVE="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment one of the following lines to change the auto-update behavior
 | 
			
		||||
# zstyle ':omz:update' mode disabled  # disable automatic updates
 | 
			
		||||
# zstyle ':omz:update' mode auto      # update automatically without asking
 | 
			
		||||
# zstyle ':omz:update' mode reminder  # just remind me to update when it's time
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line to change how often to auto-update (in days).
 | 
			
		||||
# zstyle ':omz:update' frequency 13
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line if pasting URLs and other text is messed up.
 | 
			
		||||
# DISABLE_MAGIC_FUNCTIONS="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line to disable colors in ls.
 | 
			
		||||
# DISABLE_LS_COLORS="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line to disable auto-setting terminal title.
 | 
			
		||||
# DISABLE_AUTO_TITLE="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line to enable command auto-correction.
 | 
			
		||||
# ENABLE_CORRECTION="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line to display red dots whilst waiting for completion.
 | 
			
		||||
# You can also set it to another string to have that shown instead of the default red dots.
 | 
			
		||||
# e.g. COMPLETION_WAITING_DOTS="%F{yellow}waiting...%f"
 | 
			
		||||
# Caution: this setting can cause issues with multiline prompts in zsh < 5.7.1 (see #5765)
 | 
			
		||||
# COMPLETION_WAITING_DOTS="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line if you want to disable marking untracked files
 | 
			
		||||
# under VCS as dirty. This makes repository status check for large repositories
 | 
			
		||||
# much, much faster.
 | 
			
		||||
# DISABLE_UNTRACKED_FILES_DIRTY="true"
 | 
			
		||||
 | 
			
		||||
# Uncomment the following line if you want to change the command execution time
 | 
			
		||||
# stamp shown in the history command output.
 | 
			
		||||
# You can set one of the optional three formats:
 | 
			
		||||
# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd"
 | 
			
		||||
# or set a custom format using the strftime function format specifications,
 | 
			
		||||
# see 'man strftime' for details.
 | 
			
		||||
# HIST_STAMPS="mm/dd/yyyy"
 | 
			
		||||
 | 
			
		||||
# Would you like to use another custom folder than $ZSH/custom?
 | 
			
		||||
# ZSH_CUSTOM=/path/to/new-custom-folder
 | 
			
		||||
 | 
			
		||||
# Which plugins would you like to load?
 | 
			
		||||
# Standard plugins can be found in $ZSH/plugins/
 | 
			
		||||
# Custom plugins may be added to $ZSH_CUSTOM/plugins/
 | 
			
		||||
# Example format: plugins=(rails git textmate ruby lighthouse)
 | 
			
		||||
# Add wisely, as too many plugins slow down shell startup.
 | 
			
		||||
plugins=(git)
 | 
			
		||||
 | 
			
		||||
source $ZSH/oh-my-zsh.sh
 | 
			
		||||
 | 
			
		||||
# User configuration
 | 
			
		||||
 | 
			
		||||
# export MANPATH="/usr/local/man:$MANPATH"
 | 
			
		||||
 | 
			
		||||
# You may need to manually set your language environment
 | 
			
		||||
# export LANG=en_US.UTF-8
 | 
			
		||||
 | 
			
		||||
# Preferred editor for local and remote sessions
 | 
			
		||||
# if [[ -n $SSH_CONNECTION ]]; then
 | 
			
		||||
#   export EDITOR='vim'
 | 
			
		||||
# else
 | 
			
		||||
#   export EDITOR='nvim'
 | 
			
		||||
# fi
 | 
			
		||||
 | 
			
		||||
# Compilation flags
 | 
			
		||||
# export ARCHFLAGS="-arch $(uname -m)"
 | 
			
		||||
 | 
			
		||||
# Set personal aliases, overriding those provided by Oh My Zsh libs,
 | 
			
		||||
# plugins, and themes. Aliases can be placed here, though Oh My Zsh
 | 
			
		||||
# users are encouraged to define aliases within a top-level file in
 | 
			
		||||
# the $ZSH_CUSTOM folder, with .zsh extension. Examples:
 | 
			
		||||
# - $ZSH_CUSTOM/aliases.zsh
 | 
			
		||||
# - $ZSH_CUSTOM/macos.zsh
 | 
			
		||||
# For a full list of active aliases, run `alias`.
 | 
			
		||||
#
 | 
			
		||||
# Example aliases
 | 
			
		||||
export PATH="$PATH:/home/$USER/.local/bin"
 | 
			
		||||
alias lsc="ls --color=tty" # Default ls behavior. "lsCompact"
 | 
			
		||||
alias ls="ls -lAh --color=tty"
 | 
			
		||||
function untargz() {
 | 
			
		||||
   eval "tar -xvzf $1"
 | 
			
		||||
}
 | 
			
		||||
alias untarball="untargz"
 | 
			
		||||
alias untarx="untargz"
 | 
			
		||||
 | 
			
		||||
# Automatically added completion files for 3rd party programsi below this line
 | 
			
		||||
 | 
			
		||||
# bun completions
 | 
			
		||||
[ -s "/home/desktop/.bun/_bun" ] && source "/home/desktop/.bun/_bun"
 | 
			
		||||
 | 
			
		||||
# bun
 | 
			
		||||
export BUN_INSTALL="$HOME/.bun"
 | 
			
		||||
export PATH="$BUN_INSTALL/bin:$HOME/go/bin:$PATH"
 | 
			
		||||
							
								
								
									
										12
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										12
									
								
								README.md
									
									
									
									
									
								
							@ -1,3 +1,15 @@
 | 
			
		||||
# dotfiles
 | 
			
		||||
 | 
			
		||||
Universal config files for my linux desktop environments. Managed with GNU stow
 | 
			
		||||
 | 
			
		||||
# Installation 
 | 
			
		||||
## Applying config
 | 
			
		||||
Using [GNU Stow](https://www.gnu.org/software/stow/) you can easily apply configs provided by this repo
 | 
			
		||||
You can either run the script `stow.sh` or execute the below manually:
 | 
			
		||||
```sh
 | 
			
		||||
stow --target $HOME .
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
# note
 | 
			
		||||
## .oh-my-zsh inclusion
 | 
			
		||||
I would rather not have included the `.oh-my-zsh` submodule in this repo, however the official install script overwrites `.zshrc` and I wanted a plug-and-play experiance without having to do any manual intervention/extra steps
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										12
									
								
								stow.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										12
									
								
								stow.sh
									
									
									
									
									
										Executable file
									
								
							@ -0,0 +1,12 @@
 | 
			
		||||
#!/bin/sh
 | 
			
		||||
 | 
			
		||||
# TODO: Implement an auto update funtionality
 | 
			
		||||
# - Stow on file added?
 | 
			
		||||
# - Auto fetch vc and stow
 | 
			
		||||
 | 
			
		||||
# TODO: Implement cli arguments. Empty args should just stow:
 | 
			
		||||
# - Unstow
 | 
			
		||||
# - Handling of above mentioned auto functions
 | 
			
		||||
# - Adopt(Overwrite) option
 | 
			
		||||
 | 
			
		||||
stow --target $HOME .
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user