diff --git a/home/.bashrc b/home/.bashrc
index 0bb8682d..7fdbde18 100644
--- a/home/.bashrc
+++ b/home/.bashrc
@@ -1,4 +1,4 @@
-export EDITOR="vi"
+export EDITOR="gnome-text-editor"
export PS1="\n[\[\e[37m\]\u\[\e[0m\]@\[\e[37;2m\]\h\[\e[0m\]] \[\e[1m\]\w \[\e[0;2m\]J:\[\e[0m\]\j\n\$ "
# Commands that should be applied only for interactive shells.
diff --git a/home/.config/dunst/dunstrc b/home/.config/dunst/dunstrc
deleted file mode 100644
index 0a93a4a8..00000000
--- a/home/.config/dunst/dunstrc
+++ /dev/null
@@ -1,436 +0,0 @@
-# See dunst(5) for all configuration options
-
-[global]
- ### Display ###
-
- # Which monitor should the notifications be displayed on.
- monitor = 0
-
- # Display notification on focused monitor. Possible modes are:
- # mouse: follow mouse pointer
- # keyboard: follow window with keyboard focus
- # none: don't follow anything
- #
- # "keyboard" needs a window manager that exports the
- # _NET_ACTIVE_WINDOW property.
- # This should be the case for almost all modern window managers.
- #
- # If this option is set to mouse or keyboard, the monitor option
- # will be ignored.
- follow = mouse
-
- ### Geometry ###
-
- # dynamic width from 0 to 300
- # width = (0, 300)
- # constant width of 300
- width = 400
-
- # The maximum height of a single notification, excluding the frame.
- height = 400
-
- # Position the notification in the top right corner
- origin = top-center
-
- # Offset from the origin
- offset = 10x10
-
- # Scale factor. It is auto-detected if value is 0.
- scale = 0
-
- # Maximum number of notification (0 means no limit)
- notification_limit = 4
-
- ### Progress bar ###
-
- # Turn on the progess bar. It appears when a progress hint is passed with
- # for example dunstify -h int:value:12
- progress_bar = true
-
- # Set the progress bar height. This includes the frame, so make sure
- # it's at least twice as big as the frame width.
- progress_bar_height = 10
-
- # Set the frame width of the progress bar
- progress_bar_frame_width = 1
-
- # Set the minimum width for the progress bar
- progress_bar_min_width = 150
-
- # Set the maximum width for the progress bar
- progress_bar_max_width = 300
-
-
- # Show how many messages are currently hidden (because of
- # notification_limit).
- indicate_hidden = yes
-
- # The transparency of the window. Range: [0; 100].
- # This option will only work if a compositing window manager is
- # present (e.g. xcompmgr, compiz, etc.). (X11 only)
- transparency = 15
-
- # Draw a line of "separator_height" pixel height between two
- # notifications.
- # Set to 0 to disable.
- separator_height = 1
-
- # Padding between text and separator.
- padding = 8
-
- # Horizontal padding.
- horizontal_padding = 10
-
- # Padding between text and icon.
- text_icon_padding = 0
-
- # Defines width in pixels of frame around the notification window.
- # Set to 0 to disable.
- frame_width = 2
-
- # Defines color of the frame around the notification window.
- frame_color = "#ebdbb2"
-
- # Define a color for the separator.
- # possible values are:
- # * auto: dunst tries to find a color fitting to the background;
- # * foreground: use the same color as the foreground;
- # * frame: use the same color as the frame;
- # * anything else will be interpreted as a X color.
- separator_color = frame
-
- # Sort messages by urgency.
- sort = yes
-
- # Don't remove messages, if the user is idle (no mouse or keyboard input)
- # for longer than idle_threshold seconds.
- # Set to 0 to disable.
- # A client can set the 'transient' hint to bypass this. See the rules
- # section for how to disable this if necessary
- idle_threshold = 120
-
- ### Text ###
-
- font = JetBrains Mono Nerd Font 10
-
- # The spacing between lines. If the height is smaller than the
- # font height, it will get raised to the font height.
- line_height = 0
-
- # Possible values are:
- # full: Allow a small subset of html markup in notifications:
- # bold
- # italic
- # strikethrough
- # underline
- #
- # For a complete reference see
- # .
- #
- # strip: This setting is provided for compatibility with some broken
- # clients that send markup even though it's not enabled on the
- # server. Dunst will try to strip the markup but the parsing is
- # simplistic so using this option outside of matching rules for
- # specific applications *IS GREATLY DISCOURAGED*.
- #
- # no: Disable markup parsing, incoming notifications will be treated as
- # plain text. Dunst will not advertise that it has the body-markup
- # capability if this is set as a global setting.
- #
- # It's important to note that markup inside the format option will be parsed
- # regardless of what this is set to.
- markup = full
-
- # The format of the message. Possible variables are:
- # %a appname
- # %s summary
- # %b body
- # %i iconname (including its path)
- # %I iconname (without its path)
- # %p progress value if set ([ 0%] to [100%]) or nothing
- # %n progress value if set without any extra characters
- # %% Literal %
- # Markup is allowed
- format = "%s %p\n%b"
-
- # Alignment of message text.
- # Possible values are "left", "center" and "right".
- alignment = center
-
- # Vertical alignment of message text and icon.
- # Possible values are "top", "center" and "bottom".
- vertical_alignment = center
-
- # Show age of message if message is older than show_age_threshold
- # seconds.
- # Set to -1 to disable.
- show_age_threshold = 60
-
- # Specify where to make an ellipsis in long lines.
- # Possible values are "start", "middle" and "end".
- ellipsize = middle
-
- # Ignore newlines '\n' in notifications.
- ignore_newline = no
-
- # Stack together notifications with the same content
- stack_duplicates = true
-
- # Hide the count of stacked notifications with the same content
- hide_duplicate_count = false
-
- # Display indicators for URLs (U) and actions (A).
- show_indicators = yes
-
- ### Icons ###
-
- # Align icons left/right/off
- icon_position = left
-
- # Scale small icons up to this size, set to 0 to disable. Helpful
- # for e.g. small files or high-dpi screens. In case of conflict,
- # max_icon_size takes precedence over this.
- min_icon_size = 0
-
- # Scale larger icons down to this size, set to 0 to disable
- max_icon_size = 64
-
- # Paths to default icons.
- icon_path = /usr/share/icons/gnome/16x16/status/:/usr/share/icons/gnome/16x16/devices/
-
- ### History ###
-
- # Should a notification popped up from history be sticky or timeout
- # as if it would normally do.
- sticky_history = yes
-
- # Maximum amount of notifications kept in history
- history_length = 20
-
- ### Misc/Advanced ###
-
- # dmenu path.
- dmenu = wofi -p dunst:
-
- # Browser for opening urls in context menu.
- browser = firefox -new-tab
-
- # Always run rule-defined scripts, even if the notification is suppressed
- always_run_script = true
-
- # Define the title of the windows spawned by dunst
- title = Dunst
-
- # Define the class of the windows spawned by dunst
- class = Dunst
-
- # Define the corner radius of the notification window
- # in pixel size. If the radius is 0, you have no rounded
- # corners.
- # The radius will be automatically lowered if it exceeds half of the
- # notification height to avoid clipping text and/or icons.
- corner_radius = 10
-
- # Ignore the dbus closeNotification message.
- # Useful to enforce the timeout set by dunst configuration. Without this
- # parameter, an application may close the notification sent before the
- # user defined timeout.
- ignore_dbusclose = false
-
- ### Wayland ###
- # These settings are Wayland-specific. They have no effect when using X11
-
- # Uncomment this if you want to let notications appear under fullscreen
- # applications (default: overlay)
- # layer = top
-
- # Set this to true to use X11 output on Wayland.
- force_xwayland = false
-
- ### Legacy
-
- # Use the Xinerama extension instead of RandR for multi-monitor support.
- # This setting is provided for compatibility with older nVidia drivers that
- # do not support RandR and using it on systems that support RandR is highly
- # discouraged.
- #
- # By enabling this setting dunst will not be able to detect when a monitor
- # is connected or disconnected which might break follow mode if the screen
- # layout changes.
- force_xinerama = false
-
- ### mouse
-
- # Defines list of actions for each mouse event
- # Possible values are:
- # * none: Don't do anything.
- # * do_action: Invoke the action determined by the action_name rule. If there is no
- # such action, open the context menu.
- # * open_url: If the notification has exactly one url, open it. If there are multiple
- # ones, open the context menu.
- # * close_current: Close current notification.
- # * close_all: Close all notifications.
- # * context: Open context menu for the notification.
- # * context_all: Open context menu for all notifications.
- # These values can be strung together for each mouse event, and
- # will be executed in sequence.
- mouse_left_click = close_current
- mouse_middle_click = do_action, close_current
- mouse_right_click = close_all
-
-# Experimental features that may or may not work correctly. Do not expect them
-# to have a consistent behaviour across releases.
-[experimental]
- # Calculate the dpi to use on a per-monitor basis.
- # If this setting is enabled the Xft.dpi value will be ignored and instead
- # dunst will attempt to calculate an appropriate dpi value for each monitor
- # using the resolution and physical size. This might be useful in setups
- # where there are multiple screens with very different dpi values.
- per_monitor_dpi = false
-
-
-[urgency_low]
- # IMPORTANT: colors have to be defined in quotation marks.
- # Otherwise the "#" and following would be interpreted as a comment.
- background = "#282828"
- foreground = "#ebdbb2"
- timeout = 10
- # Icon for notifications with low urgency, uncomment to enable
- #new_icon = /path/to/icon
-
-[urgency_normal]
- background = "#282828"
- foreground = "#ebdbb2"
- timeout = 10
- # Icon for notifications with normal urgency, uncomment to enable
- #new_icon = /path/to/icon
-
-[urgency_critical]
- background = "#282828"
- foreground = "#ebdbb2"
- frame_color = "#fb4934"
- timeout = 0
- # Icon for notifications with critical urgency, uncomment to enable
- #new_icon = /path/to/icon
-
-# Every section that isn't one of the above is interpreted as a rules to
-# override settings for certain messages.
-#
-# Messages can be matched by
-# appname (discouraged, see desktop_entry)
-# body
-# category
-# desktop_entry
-# icon
-# match_transient
-# msg_urgency
-# stack_tag
-# summary
-#
-# and you can override the
-# background
-# foreground
-# format
-# frame_color
-# fullscreen
-# new_icon
-# set_stack_tag
-# set_transient
-# set_category
-# timeout
-# urgency
-# skip_display
-# history_ignore
-# action_name
-# word_wrap
-# ellipsize
-# alignment
-#
-# Shell-like globbing will get expanded.
-#
-# Instead of the appname filter, it's recommended to use the desktop_entry filter.
-# GLib based applications export their desktop-entry name. In comparison to the appname,
-# the desktop-entry won't get localized.
-#
-# SCRIPTING
-# You can specify a script that gets run when the rule matches by
-# setting the "script" option.
-# The script will be called as follows:
-# script appname summary body icon urgency
-# where urgency can be "LOW", "NORMAL" or "CRITICAL".
-#
-# NOTE: It might be helpful to run dunst -print in a terminal in order
-# to find fitting options for rules.
-
-# Disable the transient hint so that idle_threshold cannot be bypassed from the
-# client
-#[transient_disable]
-# match_transient = yes
-# set_transient = no
-#
-# Make the handling of transient notifications more strict by making them not
-# be placed in history.
-#[transient_history_ignore]
-# match_transient = yes
-# history_ignore = yes
-
-# fullscreen values
-# show: show the notifications, regardless if there is a fullscreen window opened
-# delay: displays the new notification, if there is no fullscreen window active
-# If the notification is already drawn, it won't get undrawn.
-# pushback: same as delay, but when switching into fullscreen, the notification will get
-# withdrawn from screen again and will get delayed like a new notification
-#[fullscreen_delay_everything]
-# fullscreen = delay
-#[fullscreen_show_critical]
-# msg_urgency = critical
-# fullscreen = show
-
-#[espeak]
-# summary = "*"
-# script = dunst_espeak.sh
-
-#[script-test]
-# summary = "*script*"
-# script = dunst_test.sh
-
-#[ignore]
-# # This notification will not be displayed
-# summary = "foobar"
-# skip_display = true
-
-#[history-ignore]
-# # This notification will not be saved in history
-# summary = "foobar"
-# history_ignore = yes
-
-#[skip-display]
-# # This notification will not be displayed, but will be included in the history
-# summary = "foobar"
-# skip_display = yes
-
-#[signed_on]
-# appname = Pidgin
-# summary = "*signed on*"
-# urgency = low
-#
-#[signed_off]
-# appname = Pidgin
-# summary = *signed off*
-# urgency = low
-#
-#[says]
-# appname = Pidgin
-# summary = *says*
-# urgency = critical
-#
-#[twitter]
-# appname = Pidgin
-# summary = *twitter.com*
-# urgency = normal
-#
-#[stack-volumes]
-# appname = "some_volume_notifiers"
-# set_stack_tag = "volume"
-#
-# vim: ft=cfg
diff --git a/home/.config/foot/foot.ini b/home/.config/foot/foot.ini
deleted file mode 100644
index 0da1e8fe..00000000
--- a/home/.config/foot/foot.ini
+++ /dev/null
@@ -1,206 +0,0 @@
-# -*- conf -*-
-
-shell=/bin/bash
-# term=foot (or xterm-256color if built with -Dterminfo=disabled)
-# login-shell=no
-
-# app-id=foot # globally set wayland app-id. Default values are "foot" and "footclient" for desktop and server mode
- title=Terminal
-# locked-title=no
-
- font=JetBrains Mono Nerd Font:size=12
-# font-bold=
-# font-italic=
-# font-bold-italic=
-# font-size-adjustment=0.5
-# line-height=
-# letter-spacing=0
-# horizontal-letter-offset=0
-# vertical-letter-offset=0
-# underline-offset=
-# underline-thickness=
-# box-drawings-uses-font-glyphs=no
-# dpi-aware=no
-
-# initial-window-size-pixels=700x500 # Or,
-# initial-window-size-chars=
-# initial-window-mode=windowed
-pad=5x5 center # optionally append 'center'
-# resize-delay-ms=100
-
-# notify=notify-send -a ${app-id} -i ${app-id} ${title} ${body}
-
-# bold-text-in-bright=no
-# word-delimiters=,│`|:"'()[]{}<>
-# selection-target=primary
-# workers=
-# utmp-helper=/usr/lib/utempter/utempter # When utmp backend is ‘libutempter’ (Linux)
-# utmp-helper=/usr/libexec/ulog-helper # When utmp backend is ‘ulog’ (FreeBSD)
-
-[environment]
-# name=value
-
-[bell]
-# urgent=no
-# notify=no
-# visual=no
-# command=
-# command-focused=no
-
-[scrollback]
-lines=1000
-# multiplier=3.0
-# indicator-position=relative
-# indicator-format=""
-
-[url]
-launch=xdg-open ${url}
-# label-letters=sadfjklewcmpgh
-# osc8-underline=url-mode
-# protocols=http, https, ftp, ftps, file, gemini, gopher
-# uri-characters=abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-_.,~:;/?#@!$&%*+="'()[]
-
-[cursor]
-style=block
-# color=
-# blink=no
-# beam-thickness=1.5
-# underline-thickness=
-
-[mouse]
-# hide-when-typing=no
-# alternate-scroll-mode=yes
-
-[touch]
-# long-press-delay=400
-
-# JetBrains Darcula
-# Palette based on the same theme from https://github.com/dexpota/kitty-themes
-
-#[cursor]
-#color=282a36 f8f8f2
-
-[colors]
-alpha=0.95
-background=282828
-foreground=ebdbb2
-regular0=282828
-regular1=cc241d
-regular2=98971a
-regular3=d79921
-regular4=458588
-regular5=b16286
-regular6=689d6a
-regular7=a89984
-bright0=928374
-bright1=fb4934
-bright2=b8bb26
-bright3=fabd2f
-bright4=83a598
-bright5=d3869b
-bright6=8ec07c
-bright7=ebdbb2
-
-[csd]
-# preferred=server
-# size=26
-# font=
-# color=
-# hide-when-maximized=no
-# double-click-to-maximize=yes
-# border-width=0
-# border-color=
-# button-width=26
-# button-color=
-# button-minimize-color=
-# button-maximize-color=
-# button-close-color=
-
-[key-bindings]
-# scrollback-up-page=Shift+Page_Up
-# scrollback-up-half-page=none
-# scrollback-up-line=none
-# scrollback-down-page=Shift+Page_Down
-# scrollback-down-half-page=none
-# scrollback-down-line=none
-# scrollback-home=none
-# scrollback-end=none
-# clipboard-copy=Control+Shift+c XF86Copy
-# clipboard-paste=Control+Shift+v XF86Paste
-# primary-paste=Shift+Insert
-# search-start=Control+Shift+r
-# font-increase=Control+plus Control+equal Control+KP_Add
-# font-decrease=Control+minus Control+KP_Subtract
-# font-reset=Control+0 Control+KP_0
-# spawn-terminal=Control+Shift+n
-# minimize=none
-# maximize=none
-# fullscreen=none
-# pipe-visible=[sh -c "xurls | fuzzel | xargs -r firefox"] none
-# pipe-scrollback=[sh -c "xurls | fuzzel | xargs -r firefox"] none
-# pipe-selected=[xargs -r firefox] none
-# show-urls-launch=Control+Shift+o
-# show-urls-copy=none
-# show-urls-persistent=none
-# prompt-prev=Control+Shift+z
-# prompt-next=Control+Shift+x
-# unicode-input=Control+Shift+u
-# noop=none
-
-[search-bindings]
-# cancel=Control+g Control+c Escape
-# commit=Return
-# find-prev=Control+r
-# find-next=Control+s
-# cursor-left=Left Control+b
-# cursor-left-word=Control+Left Mod1+b
-# cursor-right=Right Control+f
-# cursor-right-word=Control+Right Mod1+f
-# cursor-home=Home Control+a
-# cursor-end=End Control+e
-# delete-prev=BackSpace
-# delete-prev-word=Mod1+BackSpace Control+BackSpace
-# delete-next=Delete
-# delete-next-word=Mod1+d Control+Delete
-# extend-char=Shift+Right
-# extend-to-word-boundary=Control+w Control+Shift+Right
-# extend-to-next-whitespace=Control+Shift+w
-# extend-line-down=Shift+Down
-# extend-backward-char=Shift+Left
-# extend-backward-to-word-boundary=Control+Shift+Left
-# extend-backward-to-next-whitespace=none
-# extend-line-up=Shift+Up
-# clipboard-paste=Control+v Control+Shift+v Control+y XF86Paste
-# primary-paste=Shift+Insert
-# unicode-input=none
-# scrollback-up-page=Shift+Page_Up
-# scrollback-up-half-page=none
-# scrollback-up-line=none
-# scrollback-down-page=Shift+Page_Down
-# scrollback-down-half-page=none
-# scrollback-down-line=none
-# scrollback-home=none
-# scrollback-end=none
-
-[url-bindings]
-# cancel=Control+g Control+c Control+d Escape
-# toggle-url-visible=t
-
-[text-bindings]
-# \x03=Mod4+c # Map Super+c -> Ctrl+c
-
-[mouse-bindings]
-scrollback-up-mouse=BTN_BACK
-scrollback-down-mouse=BTN_FORWARD
-# selection-override-modifiers=Shift
-primary-paste=BTN_MIDDLE
-# select-begin=BTN_LEFT
-# select-begin-block=Control+BTN_LEFT
-# select-extend=BTN_RIGHT
-# select-extend-character-wise=Control+BTN_RIGHT
-# select-word=BTN_LEFT-2
-# select-word-whitespace=Control+BTN_LEFT-2
-# select-quote = BTN_LEFT-3
-# select-row=BTN_LEFT-4
-
-# vim: ft=dosini
\ No newline at end of file
diff --git a/home/.config/hypr/hyprland.conf b/home/.config/hypr/hyprland.conf
deleted file mode 100644
index 7bc4c42d..00000000
--- a/home/.config/hypr/hyprland.conf
+++ /dev/null
@@ -1,242 +0,0 @@
-##############
-### COLORS ###
-##############
-
-$color_accent = rgba(ffa348ee)
-$color_inactive = rgba(242424aa)
-$color_shadow = rgba(1a1a1aee)
-
-################
-### MONITORS ###
-################
-
-# See https://wiki.hyprland.org/Configuring/Monitors/
-monitor = HDMI-A-1,1920x1080,0x0,auto
-monitor = DP-2,preferred,1920x-400,auto
-monitor=,preferred,auto,auto
-
-
-###################
-### MY PROGRAMS ###
-###################
-
-# See https://wiki.hyprland.org/Configuring/Keywords/
-
-# Set programs that you use
-$terminal = foot
-$fileManager = nautilus
-$menu = rofi -show drun
-
-
-#################
-### AUTOSTART ###
-#################
-
-exec-once = waybar
-exec-once = swaybg -i ~/.wallpapers/bg-dark.png -m fill
-exec-once = dunst
-exec-once = udiskie
-exec-once = hyprctl setcursor GoogleDot-Black 24
-
-#############################
-### ENVIRONMENT VARIABLES ###
-#############################
-
-# See https://wiki.hyprland.org/Configuring/Environment-variables/
-
-env = XCURSOR_SIZE,24
-env = HYPRCURSOR_SIZE,24
-env = HYPRCURSOR_THEME,GoogleDot-Black
-
-
-#####################
-### LOOK AND FEEL ###
-#####################
-
-# Refer to https://wiki.hyprland.org/Configuring/Variables/
-
-# https://wiki.hyprland.org/Configuring/Variables/#general
-general {
- gaps_in = 2.5
- gaps_out = 5
- border_size = 2
-
- # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
- col.active_border = $color_accent
- col.inactive_border = $color_inactive
-
- # Set to true enable resizing windows by clicking and dragging on borders and gaps
- resize_on_border = true
-
- # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
- allow_tearing = false
-
- layout = dwindle
-}
-
-# https://wiki.hyprland.org/Configuring/Variables/#decoration
-decoration {
- rounding = 10
-
- # Change transparency of focused and unfocused windows
- active_opacity = 1.0
- inactive_opacity = 1.0
-
- drop_shadow = false
- shadow_range = 4
- shadow_render_power = 3
- col.shadow = $color_shadow
-
- # https://wiki.hyprland.org/Configuring/Variables/#blur
- blur {
- enabled = false
- size = 3
- passes = 1
-
- vibrancy = 0.1696
- }
-}
-
-# https://wiki.hyprland.org/Configuring/Variables/#animations
-animations {
- enabled = true
-
- # Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
-
- bezier = curve_main, 0.05, 0.9, 0.1, 1.05
-
- animation = windows, 1, 4, curve_main
- animation = windowsOut, 1, 7, default, popin 80%
- animation = border, 1, 10, default
- animation = borderangle, 1, 8, default
- animation = fade, 1, 4, default
- animation = workspaces, 1, 4, default
-}
-
-# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
-dwindle {
- pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
- preserve_split = true
-}
-
-# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
-master {
- new_status = master
-}
-
-# https://wiki.hyprland.org/Configuring/Variables/#misc
-misc {
- force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers
- disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :(
- vfr = true
-}
-
-
-#############
-### INPUT ###
-#############
-
-# https://wiki.hyprland.org/Configuring/Variables/#input
-input {
- kb_layout = us
- kb_variant = altgr-intl
- kb_model =
- kb_options =
- kb_rules =
-
- follow_mouse = 1
-
- sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
-
- touchpad {
- natural_scroll = true
- }
-}
-
-# https://wiki.hyprland.org/Configuring/Variables/#gestures
-gestures {
- workspace_swipe = false
-}
-
-# Example per-device config
-# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
-device {
- name = epic-mouse-v1
- sensitivity = -0.5
-}
-
-
-####################
-### KEYBINDINGSS ###
-####################
-
-# See https://wiki.hyprland.org/Configuring/Keywords/
-$mainMod = SUPER
-
-# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
-bind = $mainMod, Return, exec, $terminal
-bind = $mainMod, C, killactive,
-bind = $mainMod, M, exit,
-bind = $mainMod, E, exec, $fileManager
-bind = $mainMod, V, togglefloating,
-bind = $mainMod, R, exec, $menu
-bind = $mainMod, P, pseudo, # dwindle
-bind = $mainMod, J, togglesplit, # dwindle
-
-# Move focus with mainMod + arrow keys
-bind = $mainMod, left, movefocus, l
-bind = $mainMod, right, movefocus, r
-bind = $mainMod, up, movefocus, u
-bind = $mainMod, down, movefocus, d
-
-# Switch workspaces with mainMod + [0-9]
-bind = $mainMod, 1, workspace, 1
-bind = $mainMod, 2, workspace, 2
-bind = $mainMod, 3, workspace, 3
-bind = $mainMod, 4, workspace, 4
-bind = $mainMod, 5, workspace, 5
-bind = $mainMod, 6, workspace, 6
-bind = $mainMod, 7, workspace, 7
-bind = $mainMod, 8, workspace, 8
-bind = $mainMod, 9, workspace, 9
-bind = $mainMod, 0, workspace, 10
-
-# Move active window to a workspace with mainMod + SHIFT + [0-9]
-bind = $mainMod SHIFT, 1, movetoworkspace, 1
-bind = $mainMod SHIFT, 2, movetoworkspace, 2
-bind = $mainMod SHIFT, 3, movetoworkspace, 3
-bind = $mainMod SHIFT, 4, movetoworkspace, 4
-bind = $mainMod SHIFT, 5, movetoworkspace, 5
-bind = $mainMod SHIFT, 6, movetoworkspace, 6
-bind = $mainMod SHIFT, 7, movetoworkspace, 7
-bind = $mainMod SHIFT, 8, movetoworkspace, 8
-bind = $mainMod SHIFT, 9, movetoworkspace, 9
-bind = $mainMod SHIFT, 0, movetoworkspace, 10
-
-# Example special workspace (scratchpad)
-bind = $mainMod, S, togglespecialworkspace, magic
-bind = $mainMod SHIFT, S, movetoworkspace, special:magic
-
-# Scroll through existing workspaces with mainMod + scroll
-bind = $mainMod, mouse_down, workspace, e+1
-bind = $mainMod, mouse_up, workspace, e-1
-
-# Move/resize windows with mainMod + LMB/RMB and dragging
-bindm = $mainMod, mouse:272, movewindow
-bindm = $mainMod, mouse:273, resizewindow
-
-
-##############################
-### WINDOWS AND WORKSPACES ###
-##############################
-
-# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
-# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
-
-# Example windowrule v1
-windowrule = float, ^(Rofi)$
-
-# Example windowrule v2
-# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$
-
-windowrulev2 = suppressevent maximize, class:.*
diff --git a/home/.config/nvim/init.lua b/home/.config/nvim/init.lua
deleted file mode 100644
index 61a861ef..00000000
--- a/home/.config/nvim/init.lua
+++ /dev/null
@@ -1,683 +0,0 @@
--- Set as the leader key
--- See `:help mapleader`
-vim.g.mapleader = ' '
-vim.g.maplocalleader = ' '
-
--- [[ Setting options ]]
--- See `:help vim.opt`
--- For more options, you can see `:help option-list`
-
-vim.opt.number = true
-vim.opt.relativenumber = true
-vim.opt.mouse = 'a'
-vim.opt.showmode = false
-vim.g.have_nerd_font = true
-
--- See `:help 'clipboard'`
-vim.schedule(function()
- vim.opt.clipboard = 'unnamedplus'
-end)
-
-vim.opt.breakindent = true
-vim.opt.undofile = true
-vim.opt.ignorecase = true
-vim.opt.smartcase = true
-vim.opt.signcolumn = 'yes'
-vim.opt.updatetime = 250
-vim.opt.timeoutlen = 300
-vim.opt.splitright = true
-vim.opt.splitbelow = true
-vim.opt.list = true
-vim.opt.listchars = { tab = '» ', trail = '·', nbsp = '␣' }
-vim.opt.inccommand = 'split'
-vim.opt.cursorline = true
-vim.opt.scrolloff = 10
-
--- [[ Basic Keymaps ]]
--- See `:help vim.keymap.set()`
-
--- Clear highlights on search when pressing in normal mode
--- See `:help hlsearch`
-vim.keymap.set('n', '', 'nohlsearch')
-
--- Diagnostic keymaps
-vim.keymap.set('n', 'q', vim.diagnostic.setloclist, { desc = 'Open diagnostic [Q]uickfix list' })
-
--- Keybinds to make split navigation easier.
--- Use CTRL+ to switch between windows
---
--- See `:help wincmd` for a list of all window commands
-vim.keymap.set('n', '', '', { desc = 'Move focus to the left window' })
-vim.keymap.set('n', '', '', { desc = 'Move focus to the right window' })
-vim.keymap.set('n', '', '', { desc = 'Move focus to the lower window' })
-vim.keymap.set('n', '', '', { desc = 'Move focus to the upper window' })
-
--- [[ Basic Autocommands ]]
--- See `:help lua-guide-autocommands`
-
--- Highlight when yanking (copying) text
--- See `:help vim.highlight.on_yank()`
-vim.api.nvim_create_autocmd('TextYankPost', {
- desc = 'Highlight when yanking (copying) text',
- group = vim.api.nvim_create_augroup('kickstart-highlight-yank', { clear = true }),
- callback = function()
- vim.highlight.on_yank()
- end,
-})
-
--- [[ Install `lazy.nvim` plugin manager ]]
--- See `:help lazy.nvim.txt` or https://github.com/folke/lazy.nvim for more info
-local lazypath = vim.fn.stdpath 'data' .. '/lazy/lazy.nvim'
-if not (vim.uv or vim.loop).fs_stat(lazypath) then
- local lazyrepo = 'https://github.com/folke/lazy.nvim.git'
- local out = vim.fn.system { 'git', 'clone', '--filter=blob:none', '--branch=stable', lazyrepo, lazypath }
- if vim.v.shell_error ~= 0 then
- error('Error cloning lazy.nvim:\n' .. out)
- end
-end ---@diagnostic disable-next-line: undefined-field
-vim.opt.rtp:prepend(lazypath)
-
--- [[ Configure and install plugins ]]
---
--- To check the current status of your plugins, run
--- :Lazy
---
--- You can press `?` in this menu for help. Use `:q` to close the window
---
--- To update plugins you can run
--- :Lazy update
---
--- NOTE: Here is where you install your plugins.
-require('lazy').setup({
- -- NOTE: Plugins can be added with a link (or for a github repo: 'owner/repo' link).
- 'tpope/vim-sleuth', -- Detect tabstop and shiftwidth automatically
-
- -- See `:help gitsigns` to understand what the configuration keys do
- { -- Adds git related signs to the gutter, as well as utilities for managing changes
- 'lewis6991/gitsigns.nvim',
- opts = {
- signs = {
- add = { text = '+' },
- change = { text = '~' },
- delete = { text = '_' },
- topdelete = { text = '‾' },
- changedelete = { text = '~' },
- },
- },
- },
-
- { -- Useful plugin to show you pending keybinds.
- 'folke/which-key.nvim',
- event = 'VimEnter', -- Sets the loading event to 'VimEnter'
- opts = {
- -- delay between pressing a key and opening which-key (milliseconds)
- -- this setting is independent of vim.opt.timeoutlen
- delay = 0,
- icons = {
- -- set icon mappings to true if you have a Nerd Font
- mappings = vim.g.have_nerd_font,
- -- If you are using a Nerd Font: set icons.keys to an empty table which will use the
- -- default which-key.nvim defined Nerd Font icons, otherwise define a string table
- keys = vim.g.have_nerd_font and {} or {
- Up = ' ',
- Down = ' ',
- Left = ' ',
- Right = ' ',
- C = ' ',
- M = ' ',
- D = ' ',
- S = ' ',
- CR = ' ',
- Esc = ' ',
- ScrollWheelDown = ' ',
- ScrollWheelUp = ' ',
- NL = ' ',
- BS = ' ',
- Space = ' ',
- Tab = ' ',
- F1 = '',
- F2 = '',
- F3 = '',
- F4 = '',
- F5 = '',
- F6 = '',
- F7 = '',
- F8 = '',
- F9 = '',
- F10 = '',
- F11 = '',
- F12 = '',
- },
- },
-
- -- Document existing key chains
- spec = {
- { 'c', group = '[C]ode', mode = { 'n', 'x' } },
- { 'd', group = '[D]ocument' },
- { 'r', group = '[R]ename' },
- { 's', group = '[S]earch' },
- { 'w', group = '[W]orkspace' },
- { 't', group = '[T]oggle' },
- { 'h', group = 'Git [H]unk', mode = { 'n', 'v' } },
- },
- },
- },
-
- { -- Fuzzy Finder (files, lsp, etc)
- 'nvim-telescope/telescope.nvim',
- event = 'VimEnter',
- branch = '0.1.x',
- dependencies = {
- 'nvim-lua/plenary.nvim',
- { -- If encountering errors, see telescope-fzf-native README for installation instructions
- 'nvim-telescope/telescope-fzf-native.nvim',
- build = 'make',
- cond = function()
- return vim.fn.executable 'make' == 1
- end,
- },
- { 'nvim-telescope/telescope-ui-select.nvim' },
- { 'nvim-tree/nvim-web-devicons', enabled = vim.g.have_nerd_font },
- },
- config = function()
- -- :Telescope help_tags
- -- [[ Configure Telescope ]]
- -- See `:help telescope` and `:help telescope.setup()`
- require('telescope').setup {
- -- You can put your default mappings / updates / etc. in here
- -- All the info you're looking for is in `:help telescope.setup()`
- --
- -- defaults = {
- -- mappings = {
- -- i = { [''] = 'to_fuzzy_refine' },
- -- },
- -- },
- -- pickers = {}
- extensions = {
- ['ui-select'] = {
- require('telescope.themes').get_dropdown(),
- },
- },
- }
-
- -- Enable Telescope extensions if they are installed
- pcall(require('telescope').load_extension, 'fzf')
- pcall(require('telescope').load_extension, 'ui-select')
-
- -- See `:help telescope.builtin`
- local builtin = require 'telescope.builtin'
- vim.keymap.set('n', 'sh', builtin.help_tags, { desc = '[S]earch [H]elp' })
- vim.keymap.set('n', 'sk', builtin.keymaps, { desc = '[S]earch [K]eymaps' })
- vim.keymap.set('n', 'sf', builtin.find_files, { desc = '[S]earch [F]iles' })
- vim.keymap.set('n', 'ss', builtin.builtin, { desc = '[S]earch [S]elect Telescope' })
- vim.keymap.set('n', 'sw', builtin.grep_string, { desc = '[S]earch current [W]ord' })
- vim.keymap.set('n', 'sg', builtin.live_grep, { desc = '[S]earch by [G]rep' })
- vim.keymap.set('n', 'sd', builtin.diagnostics, { desc = '[S]earch [D]iagnostics' })
- vim.keymap.set('n', 'sr', builtin.resume, { desc = '[S]earch [R]esume' })
- vim.keymap.set('n', 's.', builtin.oldfiles, { desc = '[S]earch Recent Files ("." for repeat)' })
- vim.keymap.set('n', '', builtin.buffers, { desc = '[ ] Find existing buffers' })
-
- -- Overriding default behavior and theme
- vim.keymap.set('n', '/', function()
- -- You can pass additional configuration to Telescope to change the theme, layout, etc.
- builtin.current_buffer_fuzzy_find(require('telescope.themes').get_dropdown {
- winblend = 10,
- previewer = false,
- })
- end, { desc = '[/] Fuzzily search in current buffer' })
-
- -- It's also possible to pass additional configuration options.
- -- See `:help telescope.builtin.live_grep()` for information about particular keys
- vim.keymap.set('n', 's/', function()
- builtin.live_grep {
- grep_open_files = true,
- prompt_title = 'Live Grep in Open Files',
- }
- end, { desc = '[S]earch [/] in Open Files' })
-
- -- Shortcut for searching your Neovim configuration files
- vim.keymap.set('n', 'sn', function()
- builtin.find_files { cwd = vim.fn.stdpath 'config' }
- end, { desc = '[S]earch [N]eovim files' })
- end,
- },
-
- -- LSP Plugins
- {
- -- `lazydev` configures Lua LSP for your Neovim config, runtime and plugins
- -- used for completion, annotations and signatures of Neovim apis
- 'folke/lazydev.nvim',
- ft = 'lua',
- opts = {
- library = {
- -- Load luvit types when the `vim.uv` word is found
- { path = '${3rd}/luv/library', words = { 'vim%.uv' } },
- },
- },
- },
- {
- -- Main LSP Configuration
- 'neovim/nvim-lspconfig',
- dependencies = {
- -- Automatically install LSPs and related tools to stdpath for Neovim
- -- Mason must be loaded before its dependents so we need to set it up here.
- -- NOTE: `opts = {}` is the same as calling `require('mason').setup({})`
- { 'williamboman/mason.nvim', opts = {} },
- 'williamboman/mason-lspconfig.nvim',
- 'WhoIsSethDaniel/mason-tool-installer.nvim',
-
- -- Useful status updates for LSP.
- { 'j-hui/fidget.nvim', opts = {} },
-
- -- Allows extra capabilities provided by nvim-cmp
- 'hrsh7th/cmp-nvim-lsp',
- },
- config = function()
- vim.api.nvim_create_autocmd('LspAttach', {
- group = vim.api.nvim_create_augroup('kickstart-lsp-attach', { clear = true }),
- callback = function(event)
- -- Function that lets us more easily define mappings specific
- -- for LSP related items. It sets the mode, buffer and description for us each time.
- local map = function(keys, func, desc, mode)
- mode = mode or 'n'
- vim.keymap.set(mode, keys, func, { buffer = event.buf, desc = 'LSP: ' .. desc })
- end
-
- -- Jump to the definition of the word under your cursor.
- -- This is where a variable was first declared, or where a function is defined, etc.
- -- To jump back, press .
- map('gd', require('telescope.builtin').lsp_definitions, '[G]oto [D]efinition')
-
- -- Find references for the word under your cursor.
- map('gr', require('telescope.builtin').lsp_references, '[G]oto [R]eferences')
-
- -- Jump to the implementation of the word under your cursor.
- -- Useful when your language has ways of declaring types without an actual implementation.
- map('gI', require('telescope.builtin').lsp_implementations, '[G]oto [I]mplementation')
-
- -- Jump to the type of the word under your cursor.
- -- Useful when you're not sure what type a variable is and you want to see
- -- the definition of its *type*, not where it was *defined*.
- map('D', require('telescope.builtin').lsp_type_definitions, 'Type [D]efinition')
-
- -- Fuzzy find all the symbols in your current document.
- -- Symbols are things like variables, functions, types, etc.
- map('ds', require('telescope.builtin').lsp_document_symbols, '[D]ocument [S]ymbols')
-
- -- Fuzzy find all the symbols in your current workspace.
- -- Similar to document symbols, except searches over your entire project.
- map('ws', require('telescope.builtin').lsp_dynamic_workspace_symbols, '[W]orkspace [S]ymbols')
-
- -- Rename the variable under your cursor.
- -- Most Language Servers support renaming across files, etc.
- map('rn', vim.lsp.buf.rename, '[R]e[n]ame')
-
- -- Execute a code action, usually your cursor needs to be on top of an error
- -- or a suggestion from your LSP for this to activate.
- map('ca', vim.lsp.buf.code_action, '[C]ode [A]ction', { 'n', 'x' })
-
- -- WARN: This is not Goto Definition, this is Goto Declaration.
- -- For example, in C this would take you to the header.
- map('gD', vim.lsp.buf.declaration, '[G]oto [D]eclaration')
-
- -- The following two autocommands are used to highlight references of the
- -- word under your cursor when your cursor rests there for a little while.
- -- See `:help CursorHold` for information about when this is executed
- --
- -- When you move your cursor, the highlights will be cleared (the second autocommand).
- local client = vim.lsp.get_client_by_id(event.data.client_id)
- if client and client.supports_method(vim.lsp.protocol.Methods.textDocument_documentHighlight) then
- local highlight_augroup = vim.api.nvim_create_augroup('kickstart-lsp-highlight', { clear = false })
- vim.api.nvim_create_autocmd({ 'CursorHold', 'CursorHoldI' }, {
- buffer = event.buf,
- group = highlight_augroup,
- callback = vim.lsp.buf.document_highlight,
- })
-
- vim.api.nvim_create_autocmd({ 'CursorMoved', 'CursorMovedI' }, {
- buffer = event.buf,
- group = highlight_augroup,
- callback = vim.lsp.buf.clear_references,
- })
-
- vim.api.nvim_create_autocmd('LspDetach', {
- group = vim.api.nvim_create_augroup('kickstart-lsp-detach', { clear = true }),
- callback = function(event2)
- vim.lsp.buf.clear_references()
- vim.api.nvim_clear_autocmds { group = 'kickstart-lsp-highlight', buffer = event2.buf }
- end,
- })
- end
-
- -- The following code creates a keymap to toggle inlay hints in your
- -- code, if the language server you are using supports them
- --
- -- This may be unwanted, since they displace some of your code
- if client and client.supports_method(vim.lsp.protocol.Methods.textDocument_inlayHint) then
- map('th', function()
- vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled { bufnr = event.buf })
- end, '[T]oggle Inlay [H]ints')
- end
- end,
- })
-
- -- Change diagnostic symbols in the sign column (gutter)
- -- if vim.g.have_nerd_font then
- -- local signs = { ERROR = '', WARN = '', INFO = '', HINT = '' }
- -- local diagnostic_signs = {}
- -- for type, icon in pairs(signs) do
- -- diagnostic_signs[vim.diagnostic.severity[type]] = icon
- -- end
- -- vim.diagnostic.config { signs = { text = diagnostic_signs } }
- -- end
-
- local capabilities = vim.lsp.protocol.make_client_capabilities()
- capabilities = vim.tbl_deep_extend('force', capabilities, require('cmp_nvim_lsp').default_capabilities())
-
- local servers = {
- clangd = {},
- -- gopls = {},
- -- pyright = {},
- -- rust_analyzer = {},
- -- ... etc. See `:help lspconfig-all` for a list of all the pre-configured LSPs
- --
- -- Some languages (like typescript) have entire language plugins that can be useful:
- -- https://github.com/pmizio/typescript-tools.nvim
- --
- -- But for many setups, the LSP (`ts_ls`) will work just fine
- -- ts_ls = {},
- --
-
- lua_ls = {
- settings = {
- Lua = {
- completion = {
- callSnippet = 'Replace',
- },
- -- You can toggle below to ignore Lua_LS's noisy `missing-fields` warnings
- -- diagnostics = { disable = { 'missing-fields' } },
- },
- },
- },
- }
-
- -- Ensure the servers and tools above are installed
- --
- -- To check the current status of installed tools and/or manually install
- -- other tools, you can run
- -- :Mason
- --
- -- You can press `g?` for help in this menu.
- --
- -- `mason` had to be setup earlier: to configure its options see the
- -- `dependencies` table for `nvim-lspconfig` above.
- --
- -- You can add other tools here that you want Mason to install
- -- for you, so that they are available from within Neovim.
- local ensure_installed = vim.tbl_keys(servers or {})
- vim.list_extend(ensure_installed, {
- 'stylua', -- Used to format Lua code
- })
- require('mason-tool-installer').setup { ensure_installed = ensure_installed }
-
- require('mason-lspconfig').setup {
- handlers = {
- function(server_name)
- local server = servers[server_name] or {}
- -- This handles overriding only values explicitly passed
- -- by the server configuration above. Useful when disabling
- -- certain features of an LSP (for example, turning off formatting for ts_ls)
- server.capabilities = vim.tbl_deep_extend('force', {}, capabilities, server.capabilities or {})
- require('lspconfig')[server_name].setup(server)
- end,
- },
- }
- end,
- },
-
- { -- Autoformat
- 'stevearc/conform.nvim',
- event = { 'BufWritePre' },
- cmd = { 'ConformInfo' },
- keys = {
- {
- 'f',
- function()
- require('conform').format { async = true, lsp_format = 'fallback' }
- end,
- mode = '',
- desc = '[F]ormat buffer',
- },
- },
- opts = {
- notify_on_error = false,
- format_on_save = function(bufnr)
- -- Disable "format_on_save lsp_fallback" for languages that don't
- -- have a well standardized coding style. You can add additional
- -- languages here or re-enable it for the disabled ones.
- local disable_filetypes = { c = true, cpp = true }
- local lsp_format_opt
- if disable_filetypes[vim.bo[bufnr].filetype] then
- lsp_format_opt = 'never'
- else
- lsp_format_opt = 'fallback'
- end
- return {
- timeout_ms = 500,
- lsp_format = lsp_format_opt,
- }
- end,
- formatters_by_ft = {
- lua = { 'stylua' },
- -- Conform can also run multiple formatters sequentially
- -- python = { "isort", "black" },
- --
- -- You can use 'stop_after_first' to run the first available formatter from the list
- -- javascript = { "prettierd", "prettier", stop_after_first = true },
- },
- },
- },
-
- { -- Autocompletion
- 'hrsh7th/nvim-cmp',
- event = 'InsertEnter',
- dependencies = {
- -- Snippet Engine & its associated nvim-cmp source
- {
- 'L3MON4D3/LuaSnip',
- build = (function()
- -- Build Step is needed for regex support in snippets.
- -- This step is not supported in many windows environments.
- -- Remove the below condition to re-enable on windows.
- if vim.fn.has 'win32' == 1 or vim.fn.executable 'make' == 0 then
- return
- end
- return 'make install_jsregexp'
- end)(),
- dependencies = {
- -- `friendly-snippets` contains a variety of premade snippets.
- -- See the README about individual language/framework/plugin snippets:
- -- https://github.com/rafamadriz/friendly-snippets
- {
- 'rafamadriz/friendly-snippets',
- config = function()
- require('luasnip.loaders.from_vscode').lazy_load()
- end,
- },
- },
- },
- 'saadparwaiz1/cmp_luasnip',
-
- -- Adds other completion capabilities.
- -- nvim-cmp does not ship with all sources by default. They are split
- -- into multiple repos for maintenance purposes.
- 'hrsh7th/cmp-nvim-lsp',
- 'hrsh7th/cmp-path',
- },
- config = function()
- -- See `:help cmp`
- local cmp = require 'cmp'
- local luasnip = require 'luasnip'
- luasnip.config.setup {}
-
- cmp.setup {
- snippet = {
- expand = function(args)
- luasnip.lsp_expand(args.body)
- end,
- },
- completion = { completeopt = 'menu,menuone,noinsert' },
-
- -- For an understanding of why these mappings were
- -- chosen, you will need to read `:help ins-completion`
- --
- -- No, but seriously. Please read `:help ins-completion`, it is really good!
- mapping = cmp.mapping.preset.insert {
- -- Select the [n]ext item
- [''] = cmp.mapping.select_next_item(),
- -- Select the [p]revious item
- [''] = cmp.mapping.select_prev_item(),
-
- -- Scroll the documentation window [b]ack / [f]orward
- [''] = cmp.mapping.scroll_docs(-4),
- [''] = cmp.mapping.scroll_docs(4),
-
- -- Accept ([y]es) the completion.
- -- This will auto-import if your LSP supports it.
- -- This will expand snippets if the LSP sent a snippet.
- [''] = cmp.mapping.confirm { select = true },
-
- -- If you prefer more traditional completion keymaps,
- -- you can uncomment the following lines
- [''] = cmp.mapping.confirm { select = true },
- [''] = cmp.mapping.select_next_item(),
- [''] = cmp.mapping.select_prev_item(),
-
- -- Manually trigger a completion from nvim-cmp.
- -- Generally you don't need this, because nvim-cmp will display
- -- completions whenever it has completion options available.
- [''] = cmp.mapping.complete {},
-
- -- Think of as moving to the right of your snippet expansion.
- -- So if you have a snippet that's like:
- -- function $name($args)
- -- $body
- -- end
- --
- -- will move you to the right of each of the expansion locations.
- -- is similar, except moving you backwards.
- [''] = cmp.mapping(function()
- if luasnip.expand_or_locally_jumpable() then
- luasnip.expand_or_jump()
- end
- end, { 'i', 's' }),
- [''] = cmp.mapping(function()
- if luasnip.locally_jumpable(-1) then
- luasnip.jump(-1)
- end
- end, { 'i', 's' }),
-
- -- For more advanced Luasnip keymaps (e.g. selecting choice nodes, expansion) see:
- -- https://github.com/L3MON4D3/LuaSnip?tab=readme-ov-file#keymaps
- },
- sources = {
- {
- name = 'lazydev',
- -- set group index to 0 to skip loading LuaLS completions as lazydev recommends it
- group_index = 0,
- },
- { name = 'nvim_lsp' },
- { name = 'luasnip' },
- { name = 'path' },
- },
- }
- end,
- },
-
- { -- You can easily change to a different colorscheme.
- -- Change the name of the colorscheme plugin below, and then
- -- change the command in the config to whatever the name of that colorscheme is.
- --
- -- If you want to see what colorschemes are already installed, you can use `:Telescope colorscheme`.
- 'Mofiqul/adwaita.nvim',
- priority = 1000, -- Make sure to load this before all the other start plugins.
- init = function()
- -- Load the colorscheme here.
- -- Like many other themes, this one has different styles, and you could load
- -- any other, such as 'tokyonight-storm', 'tokyonight-moon', or 'tokyonight-day'.
- vim.cmd.colorscheme 'adwaita'
-
- -- You can configure highlights by doing something like:
- vim.cmd.hi 'Comment gui=none'
- end,
- },
-
- -- Highlight todo, notes, etc in comments
- { 'folke/todo-comments.nvim', event = 'VimEnter', dependencies = { 'nvim-lua/plenary.nvim' }, opts = { signs = false } },
-
- { -- Collection of various small independent plugins/modules
- 'echasnovski/mini.nvim',
- config = function()
- -- Better Around/Inside textobjects
- --
- -- Examples:
- -- - va) - [V]isually select [A]round [)]paren
- -- - yinq - [Y]ank [I]nside [N]ext [Q]uote
- -- - ci' - [C]hange [I]nside [']quote
- require('mini.ai').setup { n_lines = 500 }
-
- -- Add/delete/replace surroundings (brackets, quotes, etc.)
- --
- -- - saiw) - [S]urround [A]dd [I]nner [W]ord [)]Paren
- -- - sd' - [S]urround [D]elete [']quotes
- -- - sr)' - [S]urround [R]eplace [)] [']
- require('mini.surround').setup()
-
- -- Simple and easy statusline.
- -- You could remove this setup call if you don't like it,
- -- and try some other statusline plugin
- local statusline = require 'mini.statusline'
- -- set use_icons to true if you have a Nerd Font
- statusline.setup { use_icons = vim.g.have_nerd_font }
-
- -- You can configure sections in the statusline by overriding their
- -- default behavior. For example, here we set the section for
- -- cursor location to LINE:COLUMN
- ---@diagnostic disable-next-line: duplicate-set-field
- statusline.section_location = function()
- return '%2l:%-2v'
- end
-
- -- ... and there is more!
- -- Check out: https://github.com/echasnovski/mini.nvim
- end,
- },
- { -- Highlight, edit, and navigate code
- 'nvim-treesitter/nvim-treesitter',
- build = ':TSUpdate',
- main = 'nvim-treesitter.configs', -- Sets main module to use for opts
- -- [[ Configure Treesitter ]] See `:help nvim-treesitter`
- opts = {
- ensure_installed = { 'bash', 'c', 'diff', 'html', 'lua', 'luadoc', 'markdown', 'markdown_inline', 'query', 'vim', 'vimdoc' },
- -- Autoinstall languages that are not installed
- auto_install = true,
- highlight = {
- enable = true,
- -- Some languages depend on vim's regex highlighting system (such as Ruby) for indent rules.
- -- If you are experiencing weird indenting issues, add the language to
- -- the list of additional_vim_regex_highlighting and disabled languages for indent.
- additional_vim_regex_highlighting = { 'ruby' },
- },
- indent = { enable = true, disable = { 'ruby' } },
- },
- -- There are additional nvim-treesitter modules that you can use to interact
- -- with nvim-treesitter. You should go explore a few and see what interests you:
- --
- -- - Incremental selection: Included, see `:help nvim-treesitter-incremental-selection-mod`
- -- - Show your current context: https://github.com/nvim-treesitter/nvim-treesitter-context
- -- - Treesitter + textobjects: https://github.com/nvim-treesitter/nvim-treesitter-textobjects
- },
-})
-
--- The line beneath this is called `modeline`. See `:help modeline`
--- vim: ts=2 sts=2 sw=2 et
\ No newline at end of file
diff --git a/home/.config/rofi/config.rasi b/home/.config/rofi/config.rasi
deleted file mode 100644
index 55c13759..00000000
--- a/home/.config/rofi/config.rasi
+++ /dev/null
@@ -1,151 +0,0 @@
-configuration {
-/* modes: "window,drun,run,ssh";*/
-/* font: "mono 12";*/
-/* location: 0;*/
-/* yoffset: 0;*/
-/* xoffset: 0;*/
-/* fixed-num-lines: true;*/
-/* show-icons: false;*/
-/* terminal: "rofi-sensible-terminal";*/
-/* ssh-client: "ssh";*/
-/* ssh-command: "{terminal} -e {ssh-client} {host} [-p {port}]";*/
-/* run-command: "{cmd}";*/
-/* run-list-command: "";*/
-/* run-shell-command: "{terminal} -e {cmd}";*/
-/* window-command: "wmctrl -i -R {window}";*/
-/* window-match-fields: "all";*/
-/* icon-theme: ;*/
-/* drun-match-fields: "name,generic,exec,categories,keywords";*/
-/* drun-categories: ;*/
-/* drun-show-actions: false;*/
-/* drun-display-format: "{name} [({generic})]";*/
-/* drun-url-launcher: "xdg-open";*/
-/* disable-history: false;*/
-/* ignored-prefixes: "";*/
-/* sort: false;*/
-/* sorting-method: "normal";*/
-/* case-sensitive: false;*/
-/* cycle: true;*/
-/* sidebar-mode: false;*/
-/* hover-select: false;*/
-/* eh: 1;*/
-/* auto-select: false;*/
-/* parse-hosts: false;*/
-/* parse-known-hosts: true;*/
-/* combi-modes: "window,run";*/
-/* matching: "normal";*/
-/* tokenize: true;*/
-/* m: "-5";*/
-/* filter: ;*/
-/* dpi: -1;*/
-/* threads: 0;*/
-/* scroll-method: 0;*/
-/* window-format: "{w} {c} {t}";*/
-/* click-to-exit: true;*/
-/* max-history-size: 25;*/
-/* combi-hide-mode-prefix: false;*/
-/* combi-display-format: "{mode} {text}";*/
-/* matching-negate-char: '-' /* unsupported */;*/
-/* cache-dir: ;*/
-/* window-thumbnail: false;*/
-/* drun-use-desktop-cache: false;*/
-/* drun-reload-desktop-cache: false;*/
-/* normalize-match: false;*/
-/* steal-focus: false;*/
-/* application-fallback-icon: ;*/
-/* refilter-timeout-limit: 8192;*/
-/* xserver-i300-workaround: false;*/
-/* pid: "/run/user/1000/rofi.pid";*/
-/* display-window: ;*/
-/* display-windowcd: ;*/
-/* display-run: ;*/
-/* display-ssh: ;*/
-/* display-drun: ;*/
-/* display-combi: ;*/
-/* display-keys: ;*/
-/* display-filebrowser: ;*/
-/* kb-primary-paste: "Control+V,Shift+Insert";*/
-/* kb-secondary-paste: "Control+v,Insert";*/
-/* kb-clear-line: "Control+w";*/
-/* kb-move-front: "Control+a";*/
-/* kb-move-end: "Control+e";*/
-/* kb-move-word-back: "Alt+b,Control+Left";*/
-/* kb-move-word-forward: "Alt+f,Control+Right";*/
-/* kb-move-char-back: "Left,Control+b";*/
-/* kb-move-char-forward: "Right,Control+f";*/
-/* kb-remove-word-back: "Control+Alt+h,Control+BackSpace";*/
-/* kb-remove-word-forward: "Control+Alt+d";*/
-/* kb-remove-char-forward: "Delete,Control+d";*/
-/* kb-remove-char-back: "BackSpace,Shift+BackSpace,Control+h";*/
-/* kb-remove-to-eol: "Control+k";*/
-/* kb-remove-to-sol: "Control+u";*/
-/* kb-accept-entry: "Control+j,Control+m,Return,KP_Enter";*/
-/* kb-accept-custom: "Control+Return";*/
-/* kb-accept-custom-alt: "Control+Shift+Return";*/
-/* kb-accept-alt: "Shift+Return";*/
-/* kb-delete-entry: "Shift+Delete";*/
-/* kb-mode-next: "Shift+Right,Control+Tab";*/
-/* kb-mode-previous: "Shift+Left,Control+ISO_Left_Tab";*/
-/* kb-mode-complete: "Control+l";*/
-/* kb-row-left: "Control+Page_Up";*/
-/* kb-row-right: "Control+Page_Down";*/
-/* kb-row-up: "Up,Control+p";*/
-/* kb-row-down: "Down,Control+n";*/
-/* kb-row-tab: "";*/
-/* kb-element-next: "Tab";*/
-/* kb-element-prev: "ISO_Left_Tab";*/
-/* kb-page-prev: "Page_Up";*/
-/* kb-page-next: "Page_Down";*/
-/* kb-row-first: "Home,KP_Home";*/
-/* kb-row-last: "End,KP_End";*/
-/* kb-row-select: "Control+space";*/
-/* kb-screenshot: "Alt+S";*/
-/* kb-ellipsize: "Alt+period";*/
-/* kb-toggle-case-sensitivity: "grave,dead_grave";*/
-/* kb-toggle-sort: "Alt+grave";*/
-/* kb-cancel: "Escape,Control+g,Control+bracketleft";*/
-/* kb-custom-1: "Alt+1";*/
-/* kb-custom-2: "Alt+2";*/
-/* kb-custom-3: "Alt+3";*/
-/* kb-custom-4: "Alt+4";*/
-/* kb-custom-5: "Alt+5";*/
-/* kb-custom-6: "Alt+6";*/
-/* kb-custom-7: "Alt+7";*/
-/* kb-custom-8: "Alt+8";*/
-/* kb-custom-9: "Alt+9";*/
-/* kb-custom-10: "Alt+0";*/
-/* kb-custom-11: "Alt+exclam";*/
-/* kb-custom-12: "Alt+at";*/
-/* kb-custom-13: "Alt+numbersign";*/
-/* kb-custom-14: "Alt+dollar";*/
-/* kb-custom-15: "Alt+percent";*/
-/* kb-custom-16: "Alt+dead_circumflex";*/
-/* kb-custom-17: "Alt+ampersand";*/
-/* kb-custom-18: "Alt+asterisk";*/
-/* kb-custom-19: "Alt+parenleft";*/
-/* kb-select-1: "Super+1";*/
-/* kb-select-2: "Super+2";*/
-/* kb-select-3: "Super+3";*/
-/* kb-select-4: "Super+4";*/
-/* kb-select-5: "Super+5";*/
-/* kb-select-6: "Super+6";*/
-/* kb-select-7: "Super+7";*/
-/* kb-select-8: "Super+8";*/
-/* kb-select-9: "Super+9";*/
-/* kb-select-10: "Super+0";*/
-/* ml-row-left: "ScrollLeft";*/
-/* ml-row-right: "ScrollRight";*/
-/* ml-row-up: "ScrollUp";*/
-/* ml-row-down: "ScrollDown";*/
-/* me-select-entry: "MousePrimary";*/
-/* me-accept-entry: "MouseDPrimary";*/
-/* me-accept-custom: "Control+MouseDPrimary";*/
- timeout {
- action: "kb-cancel";
- delay: 0;
- }
- filebrowser {
- directories-first: true;
- sorting-method: "name";
- }
-}
diff --git a/home/.config/wofi/config b/home/.config/wofi/config
deleted file mode 100644
index df51ef16..00000000
--- a/home/.config/wofi/config
+++ /dev/null
@@ -1 +0,0 @@
-width=450
\ No newline at end of file
diff --git a/home/.config/wofi/style.css b/home/.config/wofi/style.css
deleted file mode 100644
index 4ef3d187..00000000
--- a/home/.config/wofi/style.css
+++ /dev/null
@@ -1,83 +0,0 @@
-@define-color darkbase #1d2021;
-@define-color base #282828;
-@define-color foreground #ebdbb2;
-@define-color cyan #83a598;
-@define-color green #8ec07c;
-@define-color orange #fe8019;
-@define-color pink #d3869b;
-@define-color purple #d3869b;
-@define-color red #fb4934;
-@define-color yellow #fabd2f;
-
-window {
- margin: 0px;
- border: 3px solid @foreground;
- background-color: @base;
- border-radius: 8px;
- outline-style: none;
-}
-
-#input {
- margin: 5px;
- border: none;
- border-radius: 8px;
- color: @foreground;
- background-color: @darkbase;
- outline-style: none;
-}
-
-#inner-box {
- margin: 5px;
- border: none;
- background-color: @base;
- outline-style: none;
-}
-
-#outer-box {
- margin: 5px;
- border: none;
- background-color: @base;
- outline-style: none;
-}
-
-#scroll {
- margin: 0px;
- border: none;
- outline-style: none;
-}
-
-#text {
- margin: 5px;
- border: none;
- color: @foreground;
-}
-
-#entry {
- border-radius: 50px;
- outline-style: none;
-}
-
-#entry.activatable #text {
- color: @darkbase;
-}
-
-#entry > * {
- color: @base;
-}
-
-#entry:selected {
- background-color: @darkbase;
- border: none;
- border-radius: 8px;
- outline-style: none;
-}
-
-#entry:selected #text {
- font-weight: bold;
- color: @foreground;
- background-color: @darkbase;
-}
-
-#img:selected {
- background: none;
-}
diff --git a/install.sh b/install.sh
index 3e7e7b20..a3b2683c 100755
--- a/install.sh
+++ b/install.sh
@@ -46,13 +46,9 @@ for arg in "$@"; do
if [ "$arg" = "-r" ]; then
reload=true
fi
- if [ "$arg" = "-t" ]; then
- tiling=true
- fi
if [ "$arg" = "-h" ]; then
- echo "Usage: $0 [-r][-t][-h]"
+ echo "Usage: $0 [-r][-h]"
echo " -r: Reload config"
- echo " -t: Install window manager"
echo " -h: Show help message"
exit 0
fi
@@ -131,17 +127,12 @@ if [ "$reload" = false ]; then
gir1.2-gtop-2.0 lm-sensors # Vitals Extension deps
sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
- if [ "$tiling" = true ]; then
- echo "${YELLOW}Installing Hyprland...${NC}"
- sudo apt install hyprland dunst pipewire wireplumber xdg-desktop-portal-gnome polkit-kde-agent-1 waybar swaybg rofi nautilus udiskie foot
- else
- echo "${YELLOW}Installing GNOME...${NC}"
- sudo apt install gnome-core gnome-software-plugin-flatpak
+ echo "${YELLOW}Installing GNOME...${NC}"
+ sudo apt install gnome-core gnome-software-plugin-flatpak
- # Remove Firefox (Epiphany installed instead)
- echo "${YELLOW}Removing Firefox...${NC}"
- sudo apt purge firefox-esr
- fi
+ # Remove Firefox (Epiphany installed instead)
+ echo "${YELLOW}Removing Firefox...${NC}"
+ sudo apt purge firefox-esr
# Enable Network Manager
echo "${YELLOW}Enabling Network Manager...${NC}"