home-lab/user_configs/geir/configurations.org
Geir Okkenhaug Jerstad 5843cf0056
Some checks are pending
🏠 Home Lab CI/CD Pipeline / 🔍 Validate Configuration (push) Waiting to run
🏠 Home Lab CI/CD Pipeline / 🔨 Build Configurations (push) Blocked by required conditions
🏠 Home Lab CI/CD Pipeline / 🔒 Security Audit (push) Blocked by required conditions
🏠 Home Lab CI/CD Pipeline / 📚 Documentation & Modules (push) Blocked by required conditions
🏠 Home Lab CI/CD Pipeline / 🔄 Update Dependencies (push) Waiting to run
🏠 Home Lab CI/CD Pipeline / 🚀 Deploy Configuration (push) Blocked by required conditions
🏠 Home Lab CI/CD Pipeline / 📢 Notify Results (push) Blocked by required conditions
fixed org mode formatting i think
2025-06-04 16:41:51 +02:00

7.6 KiB

Userland configurations for Geir Okkenhaug Jerstad

Introduction

Socalled dotfiles, or userland configurations, are personal configurations for various tools and applications.

Sway

Configuration for sway waybar fuzzel and other sway related tools

default_border none
  ### Variables
  #
  # Logo key. Use Mod1 for Alt.
  set $mod Mod4
  # Home row direction keys, like vim
  set $left h
  set $down j
  set $up k
  set $right l
  # Your preferred terminal emulator
  set $term kitty 

  set $menu fuzzel
  # Set gnome stuff
  set $gnome-schema org.gnome.desktop.interface
  ### Output configuration

  #
  # Default wallpaper (more resolutions are available in /run/current-system/sw/share/backgrounds/sway/)
  output * bg /home/geir/Pictures/wall.jpg fill
  #
  # Example configuration:
  #
  #   output HDMI-A-1 resolution 1920x1080 position 1920,0
  #
  # You can get the names of your outputs by running: swaymsg -t get_outputs

  ### Idle configuration
  #
  # Example configuration:
  #
  exec swayidle -w \
           timeout 1200 'swaylock -f -c 000000' \
           timeout 36000 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' \
           before-sleep 'swaylock -f -c 000000'

  # This will lock your screen after 600 seconds of inactivity, then turn off
  # your displays after another 600 seconds, and turn your screens back on when
  # resumed. It will also lock your screen before your computer goes to sleep.

  ### Input configuration
  #
  # Example configuration:
  #
input "type:touchpad" {
       dwt enabled
       tap enabled
       natural_scroll enabled
       middle_emulation enabled
     }
  #
  # You can get the names of your inputs by running: swaymsg -t get_inputs
  # Read `man 5 sway-input` for more information about
  # or input <identifier>
input "type:keyboard" {
  xkb_layout "us, no"
  xkb_variant ,nodeadkeys
  xkb_options "caps:ctrl_modifier, grp:win_space_toggle"

}
  # screenshots
  bindsym $mod+c exec flameshot gui -p /home/geir/Pictures/Screenshots
  ### Key bindings
  #
  # Basics:
  #
  # Start a terminal

  bindsym $mod+Return exec $term

  # Kill focused window
  bindsym $mod+Shift+q kill

  # Start your launcher
  bindsym $mod+d exec $menu

  # Drag floating windows by holding down $mod and left mouse button.
  floating_modifier $mod normal

  # Reload the configuration file
  bindsym $mod+Shift+c reload

  # Exit sway (logs you out of your Wayland session)
  bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -B 'Yes, exit sway' 'swaymsg exit'
  #
  # Moving around:
  #
      # Move your focus around
      bindsym $mod+$left focus left
      bindsym $mod+$down focus down
      bindsym $mod+$up focus up
      bindsym $mod+$right focus right
      # Or use $mod+[up|down|left|right]
      bindsym $mod+Left focus left
      bindsym $mod+Down focus down
      bindsym $mod+Up focus up
      bindsym $mod+Right focus right

      # Move the focused window with the same, but add Shift
      bindsym $mod+Shift+$left move left
      bindsym $mod+Shift+$down move down
      bindsym $mod+Shift+$up move up
      bindsym $mod+Shift+$right move right
      # Ditto, with arrow 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
  #
  # Workspaces:
  #
      # Switch to workspace
      bindsym $mod+1 workspace number 1
      bindsym $mod+2 workspace number 2
      bindsym $mod+3 workspace number 3
      bindsym $mod+4 workspace number 4
      bindsym $mod+5 workspace number 5
      bindsym $mod+6 workspace number 6
      bindsym $mod+7 workspace number 7
      bindsym $mod+8 workspace number 8
      bindsym $mod+9 workspace number 9
      bindsym $mod+0 workspace number 10
      # Move focused container to workspace
      bindsym $mod+Shift+1 move container to workspace number 1
      bindsym $mod+Shift+2 move container to workspace number 2
      bindsym $mod+Shift+3 move container to workspace number 3
      bindsym $mod+Shift+4 move container to workspace number 4
      bindsym $mod+Shift+5 move container to workspace number 5
      bindsym $mod+Shift+6 move container to workspace number 6
      bindsym $mod+Shift+7 move container to workspace number 7
      bindsym $mod+Shift+8 move container to workspace number 8
      bindsym $mod+Shift+9 move container to workspace number 9
      bindsym $mod+Shift+0 move container to workspace number 10

  #
  # Layout stuff:
  #
      # You can "split" the current object of your focus with
      # $mod+b or $mod+v, for horizontal and vertical splits
      # respectively.
      bindsym $mod+b splith
      bindsym $mod+v splitv

      # Switch the current container between different layout styles
      bindsym $mod+s layout stacking
      bindsym $mod+w layout tabbed
      bindsym $mod+e layout toggle split

      # Make the current focus fullscreen
      bindsym $mod+f fullscreen

      # Toggle the current focus between tiling and floating mode
      bindsym $mod+Shift+space floating toggle

      # Swap focus between the tiling area and the floating area
      bindsym $mod+ctrl+space focus mode_toggle

      # Move focus to the parent container
      bindsym $mod+a focus parent
  #
  # Scratchpad:
  #
      # Sway has a "scratchpad", which is a bag of holding for windows.
      # You can send windows there and get them back later.

      # Move the currently focused window to the scratchpad
      bindsym $mod+Shift+minus move scratchpad

      # Show the next scratchpad window or hide the focused scratchpad window.
      # If there are multiple scratchpad windows, this command cycles through them.
      bindsym $mod+minus scratchpad show
  #
  # Resizing containers:
  #
  mode "resize" {
      # left will shrink the containers width
      # right will grow the containers width
      # up will shrink the containers height
      # down will grow the containers height
      bindsym $left resize shrink width 10px
      bindsym $down resize grow height 10px
      bindsym $up resize shrink height 10px
      bindsym $right resize grow width 10px

      # Ditto, with arrow keys
      bindsym Left resize shrink width 10px
      bindsym Down resize grow height 10px
      bindsym Up resize shrink height 10px
      bindsym Right resize grow width 10px

      # Return to default mode
      bindsym Return mode "default"
      bindsym Escape mode "default"
  }
  bindsym $mod+r mode "resize"

  #
  # Status Bar:
  #
bar {
   swaybar_command waybar 
} 

include /etc/sway/config.d/*
exec dbus-sway-environment
exec configure-gtk
exec gammastep

*+END_SRC

* Zsh

Configuration for zsh.

#+BEGIN_SRC shell :tangle /home/geir/.config/zsh/.zshrc

zstyle ':completion:*' completer _expand _complete _ignored
zstyle ':completion:*' matcher-list ''
zstyle :compinstall filename '/home/geir/.zshrc'

autoload -Uz compinit
compinit
HISTFILE=~/.histfile
HISTSIZE=10000
SAVEHIST=10000
setopt autocd extendedglob
unsetopt beep nomatch
bindkey -e

eval "$(starship init zsh)"
eval "$(direnv hook zsh)"
eval "$(zoxide init zsh)"

fortune -s | cowsay -f dragon | clolcat

Git

Configuration for git.

user.email=geokkjer@gmail.com
user.name=Geir Okkenhaug Jerstad
filter.lfs.smudge=git-lfs smudge -- %f
filter.lfs.process=git-lfs filter-process
filter.lfs.required=true
filter.lfs.clean=git-lfs clean -- %f
init.defaultbranch=main