diff --git a/dotfiles/.bashrc b/dotfiles/.bashrc
index b98416f4..6e06d0df 100644
--- a/dotfiles/.bashrc
+++ b/dotfiles/.bashrc
@@ -22,17 +22,6 @@ extract() {
fi
}
-ncs() {
- if [[ -z "$1" ]]; then
- server="trude.store"
- else
- server=$1
- fi
- echo "+ Syncing ~/Nextcloud/SYNC @ $server"
- mkdir -p ~/Nextcloud/SYNC &> /dev/null
- nextcloudcmd -u $USER --path "/SYNC" ~/Nextcloud/SYNC "https://$server"
-}
-
pushall() {
if [[ -z "$1" ]]; then
echo "Usage: pushall \"commit message\""
@@ -42,7 +31,6 @@ pushall() {
read -p "Press ENTER to continue..."
git add -A
git commit -m "$@"
- pass show github/token &> /dev/null
git push
fi
}
@@ -92,17 +80,19 @@ shopt -s extglob
shopt -s globstar
shopt -s checkjobs
-alias cat='bat'
alias l='ls -alh'
alias ls='ls --color=auto'
alias grep='grep --color=auto'
alias ll='ls -lhi'
alias ta='tmux attach'
alias t='tmux'
-alias v='nvim'
+alias v='vim'
alias mp='ncmpcpp' #Music Player
-alias vim='nvim'
set completion-ignore-case On
export OFLAGS="--ozone-platform-hint=auto"
+
+export NVM_DIR="$HOME/.config/nvm"
+[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm
+[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion
diff --git a/dotfiles/.config/dunst/dunstrc b/dotfiles/.config/dunst/dunstrc
deleted file mode 100644
index e278c550..00000000
--- a/dotfiles/.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 = 300
-
- # The maximum height of a single notification, excluding the frame.
- height = 300
-
- # 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 = 3
-
- # 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 = off
-
- # 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 = /usr/bin/dmenu -p dunst:
-
- # Browser for opening urls in context menu.
- browser = /usr/bin/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 = 8
-
- # 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/dotfiles/.config/foot/foot.ini b/dotfiles/.config/foot/foot.ini
deleted file mode 100644
index 7f81e735..00000000
--- a/dotfiles/.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
diff --git a/dotfiles/.config/iamb/config.toml b/dotfiles/.config/iamb/config.toml
deleted file mode 100644
index b2738f48..00000000
--- a/dotfiles/.config/iamb/config.toml
+++ /dev/null
@@ -1,19 +0,0 @@
-[profiles.user]
-user_id = "@ehtrude:matrix.org"
-
-[settings]
-request_timeout = 180
-
-[settings.image_preview]
-protocol.type = "halfblocks"
-protocol.font_size = [ 11, 26 ]
-size = { height = 10, width = 66 }
-
-[settings.notifications]
-enabled = true
-
-[layout]
-style = "restore"
-
-[settings.users]
-"@ehtrude:matrix.org" = { name = "Trude", color = "light-red" }
diff --git a/dotfiles/.config/pass-git-helper/git-pass-mapping.ini b/dotfiles/.config/pass-git-helper/git-pass-mapping.ini
deleted file mode 100644
index 6ed0c5ee..00000000
--- a/dotfiles/.config/pass-git-helper/git-pass-mapping.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[github.com*]
-target=github/token
diff --git a/dotfiles/.config/sway/config b/dotfiles/.config/sway/config
deleted file mode 100644
index e65f4a99..00000000
--- a/dotfiles/.config/sway/config
+++ /dev/null
@@ -1,246 +0,0 @@
-#---------------#
-# Main Settings #
-#---------------#
-set $mod Mod4
-set $term foot
-font pango: JetBrainsMono Nerd Font Medium 10
-
-gaps inner 5
-gaps outer 0
-smart_gaps off
-
-include /etc/sway/config-vars.d/*
-
-#--------------#
-# Key Bindings #
-#--------------#
-
-# Home row direction keys, like vim
-set $left h
-set $down j
-set $up k
-set $right l
-
-# Application launcher
-set $menu wofi --show run
-
-# Start a terminal
-bindsym $mod+Return exec $term
-
-# Start brave with wayland
-bindsym $mod+shift+b exec brave --ozone-platform-hint=auto
-
-# Kill focused window
-bindsym $mod+c kill
-
-# Lock Screen
-bindsym $mod+shift+q exec swaylock -f
-
-# Start app launcher
-bindsym $mod+d exec $menu
-
-# take screenshot
-bindsym $mod+p exec grim -g "$(slurp)" - | wl-copy
-
-# Drag floating windows by holding down $mod and left mouse button.
-# Resize them with right mouse button + $mod.
-# Despite the name, also works for non-floating windows.
-# Change normal to inverse to use left mouse button for resizing and right
-# mouse button for dragging.
-floating_modifier $mod normal
-
-# Reload the configuration file
-bindsym $mod+Shift+r reload
-
-# Exit sway (logs you out of your Wayland session)
-bindsym $mod+Shift+x 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
- # Note: workspaces can have any name you want, not just numbers.
- # We just use 1-10 as the default.
-#
-# 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+v splith
- bindsym $mod+b 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+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"
-
-#--------#
-# Output #
-#--------#
-
-# Background
-output * bg /usr/share/backgrounds/bg.png fill
-
-# Monitors
-# output HDMI-A-3 mode 1920x1080@74.973Hz
-output DP-1 scale 2
-
-# Monitor names: swaymsg -t get_outputs
-
-# Idle configuration
-exec swayidle -w \
- timeout 150 'swaylock -f -c 000000' \
- timeout 600 'swaymsg "output * dpms off"' resume 'swaymsg "output * dpms on"' \
- before-sleep 'swaylock -f -c 000000'
-
-#-------#
-# Input #
-#-------#
-
-# Keyboard layout toggle
-input type:keyboard {
- xkb_layout pt,us
- xkb_options grp:rctrl_toggle
-}
-
-input type:touchpad {
- dwt enabled
- tap enabled
- middle_emulation enabled
- natural_scroll enabled
-}
-
-# Input names: swaymsg -t get_inputs
-
-#------------#
-# Status Bar #
-#------------#
-
-bar {
- swaybar_command waybar
-}
-
-#---------#
-# Borders #
-#---------#
-
-default_border pixel 3
-default_floating_border pixel 3
-smart_borders on
-
-# Border colors
-client.focused #ebdbb2 #ebdbb2 #1d2021 #fe8019
-client.unfocused #282828 #282828 #83a598 #1d2021
-client.focused_inactive #282828 #282828 #282828
-client.placeholder #fabd2f #fabd2f #1d2021
-client.urgent #d3869b #d3869b #1d2021
-client.background #282828
-
-focus_follows_mouse no
-
-#-----------#
-# Autostart #
-#-----------#
-exec --no-startup-id nextcloud --background &
-exec --no-startup-id /usr/libexec/xdg-desktop-portal -r
-exec --no-startup-id /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
-exec --no-startup-id mpd
-
-xwayland enable
-for_window [shell="xwayland"] title_format "[XWayland] %title"
-
-include /etc/sway/config.d/*
diff --git a/dotfiles/.config/swaylock/config b/dotfiles/.config/swaylock/config
deleted file mode 100644
index cab85b63..00000000
--- a/dotfiles/.config/swaylock/config
+++ /dev/null
@@ -1,30 +0,0 @@
-font="JetBrainsMono Nerd Font"
-color=000000
-bs-hl-color=fe8019
-caps-lock-bs-hl-color=cc241d
-caps-lock-key-hl-color=cc241d
-inside-color=282828
-inside-clear-color=282828
-inside-caps-lock-color=282828
-inside-ver-color=282828
-inside-wrong-color=282828
-key-hl-color=fe8019
-layout-bg-color=00000000
-layout-border-color=00000000
-layout-text-color=ebdbb2
-line-color=00000000
-line-clear-color=00000000
-line-caps-lock-color=00000000
-line-ver-color=00000000
-line-wrong-color=00000000
-ring-color=ebdbb2
-ring-clear-color=8ec07c
-ring-caps-lock-color=fb4934
-ring-ver-color=8ec07c
-ring-wrong-color=cc241d
-separator-color=00000000
-text-color=ebdbb2
-text-clear-color=ebdbb2
-text-caps-lock-color=fb4934
-text-ver-color=8ec07c
-text-wrong-color=cc241d
diff --git a/dotfiles/.config/waybar/config b/dotfiles/.config/waybar/config
deleted file mode 100644
index c030d7a2..00000000
--- a/dotfiles/.config/waybar/config
+++ /dev/null
@@ -1,192 +0,0 @@
-{
- "layer": "top", // Waybar at top layer
- // "position": "bottom", // Waybar position (top|bottom|left|right)
- "height": 30, // Waybar height (to be removed for auto height)
- // "width": 1280, // Waybar width
- "spacing": 5, // Gaps between modules (4px)
- "margin-top": 5,
- "margin-right": 5,
- "margin-left": 5,
- "margin-bottom": 0,
- // Choose the order of the modules
- "modules-left": ["clock", "backlight", "battery", "sway/scratchpad", "mpd", "tray"],
- "modules-center": ["sway/workspaces"],
- "modules-right": ["wireplumber", "network", "cpu", "memory", "temperature"],
- // Modules configuration
- "custom/power": {
- "format": "",
- "on-click": "",
- },
- "sway/workspaces": {
- "disable-scroll": true,
- "all-outputs": true,
- "format": "{icon}",
- "format-icons": {
- "focused": "",
- "default": ""
- }
- },
- "keyboard-state": {
- "numlock": true,
- "capslock": true,
- "format": "{name} {icon}",
- "format-icons": {
- "locked": "",
- "unlocked": ""
- }
- },
- "sway/mode": {
- "format": "{}"
- },
- "sway/scratchpad": {
- "format": "{icon} {count}",
- "show-empty": false,
- "format-icons": ["", ""],
- "tooltip": true,
- "tooltip-format": "{app}: {title}"
- },
- "mpd": {
- "format": "{stateIcon} {consumeIcon}{randomIcon}{repeatIcon}{singleIcon}{artist} - {album} - {title} ({elapsedTime:%M:%S}/{totalTime:%M:%S}) ⸨{songPosition}|{queueLength}⸩ {volume}% ",
- "format-disconnected": "Disconnected ",
- "format-stopped": "{consumeIcon}{randomIcon}{repeatIcon}{singleIcon} Stopped ",
- "unknown-tag": "N/A",
- "interval": 2,
- "consume-icons": {
- "on": " "
- },
- "random-icons": {
- "off": " ",
- "on": " "
- },
- "repeat-icons": {
- "on": " "
- },
- "single-icons": {
- "on": "1 "
- },
- "state-icons": {
- "paused": "",
- "playing": ""
- },
- "tooltip-format": "MPD (connected)",
- "tooltip-format-disconnected": "MPD (disconnected)"
- },
- "idle_inhibitor": {
- "format": "{icon}",
- "format-icons": {
- "activated": "",
- "deactivated": ""
- }
- },
- "tray": {
- // "icon-size": 21,
- "spacing": 10
- },
- //"clock": {
- // // "timezone": "America/New_York",
- // "tooltip-format": "{:%Y %B}\n{calendar}",
- // "format-alt": "{:%Y-%m-%d}"
- //},
- "clock": {
- "format": "{:%H:%M} ",
- "format-alt": "{:%A, %B %d, %Y (%R)} ",
- "tooltip-format": "{calendar}",
- "calendar": {
- "mode" : "year",
- "mode-mon-col" : 3,
- "weeks-pos" : "right",
- "on-scroll" : 1,
- "on-click-right": "mode",
- "format": {
- "months": "{}",
- "days": "{}",
- "weeks": "W{}",
- "weekdays": "{}",
- "today": "{}"
- }
- },
- "actions": {
- "on-click-right": "mode",
- "on-click-forward": "tz_up",
- "on-click-backward": "tz_down",
- "on-scroll-up": "shift_up",
- "on-scroll-down": "shift_down"
- }
- },
- "cpu": {
- "interval": 1,
- "format": "{usage}% ",
- "tooltip": false
- },
- "memory": {
- "interval": 2,
- "format": "{}% "
- },
- "temperature": {
- // "thermal-zone": 2,
- "hwmon-path": "/sys/class/hwmon/hwmon3/temp1_input",
- "critical-threshold": 80,
- "format-critical": "{temperatureC}°C ",
- "format": "{temperatureC}°C {icon}",
- "format-icons": ["", ""],
- "interval": 1
- },
- "temperature#gpu": {
- // "thermal-zone": 2,
- "hwmon-path": "/sys/class/hwmon/hwmon5/temp1_input",
- "critical-threshold": 80,
- "format-critical": " {temperatureC}°C ",
- "format": " {temperatureC}°C {icon}",
- "format-icons": ["", ""],
- "interval": 1
- },
- "backlight": {
- // "device": "acpi_video1",
- "format": "{percent}% {icon}",
- "format-icons": ["", "", "", "", "", "", "", "", ""]
- },
- "battery": {
- "states": {
- // "good": 95,
- "warning": 30,
- "critical": 15
- },
- "format": "{capacity}% {icon}",
- "format-charging": "{capacity}% ",
- "format-plugged": "{capacity}% ",
- "format-alt": "{time} {icon}",
- // "format-good": "", // An empty format will hide the module
- // "format-full": "",
- "format-icons": ["", "", "", "", ""]
- },
- "battery#bat2": {
- "bat": "BAT2"
- },
- "network": {
- // "interface": "wlp2*", // (Optional) To force the use of this interface
- "format-wifi": "{essid} ({signalStrength}%) ",
- "format-ethernet": "{ipaddr}/{cidr} ",
- "tooltip-format": "{ifname} via {gwaddr} ",
- "format-linked": "{ifname} (No IP) ",
- "format-disconnected": "Disconnected ",
- "format-alt": "{ifname}: {ipaddr}/{cidr}"
- },
- "wireplumber": {
- "format": "{volume}% {icon}",
- "format-muted": "",
- "on-click": "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle",
- "format-icons": ["", "", ""]
- },
- "custom/media": {
- "format": "{icon} {}",
- "return-type": "json",
- "max-length": 40,
- "format-icons": {
- "spotify": "",
- "default": "🎜"
- },
- "escape": true,
- "exec": "$HOME/.config/waybar/mediaplayer.py 2> /dev/null" // Script in resources folder
- // "exec": "$HOME/.config/waybar/mediaplayer.py --player spotify 2> /dev/null" // Filter player based on name
- }
-}
diff --git a/dotfiles/.config/waybar/style.css b/dotfiles/.config/waybar/style.css
deleted file mode 100644
index f3b377af..00000000
--- a/dotfiles/.config/waybar/style.css
+++ /dev/null
@@ -1,308 +0,0 @@
-@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 #b16286;
-@define-color red #fb4934;
-@define-color yellow #fabd2f;
-
-* {
- /* `otf-font-awesome` is required to be installed for icons */
- font-family: "JetBrainsMono Nerd Font", "Material Design Icons";
- font-size: 14px;
- color: @foreground;
-}
-
-#window {
- color: @pink;
- background: @base;
- transition-property: background-color;
- border-radius: 100px;
- padding: 0 10px;
-}
-
-#waybar.empty #window {
- background: none;
-}
-
-window#waybar {
- background-color: transparent;
-}
-
-/*
-window#waybar.empty {
- background-color: transparent;
-}
-
-
-window#waybar.solo {
- background-color: #FFFFFF;
-}
-*/
-
-button {
- margin-right: 5px;
- /* Avoid rounded borders under each button name */
- border: none;
- border-radius: 0;
- background: @base;
- box-shadow: none;
- text-shadow: none;
-}
-
-button:hover {
- color: @pink;
- border: none;
- box-shadow: none;
- text-shadow: none;
-}
-
-#workspaces {
- border-radius: 100px;
- background: @base;
- padding: 0 15px;
-}
-
-#workspaces button {
- border: none;
- background-color: @base;
- color: @foreground;
- transition: 0.2s;
- padding-left: 0;
- padding-right: 4px;
- margin-left: 2px;
- margin-right: 2px;
-}
-
-#workspaces button:hover {
- color: @orange;
- background: @base;
- transition: 0.2s;
-}
-
-#workspaces button.focused {
- background: @base;
-}
-
-#workspaces button.urgent {
- color: @red;
-}
-
-#mode {
- background: @base;
- box-shadow: none;
- text-shadow: none;
-}
-
-#clock,
-#battery,
-#cpu,
-#memory,
-#disk,
-#temperature,
-#backlight,
-#network,
-#pulseaudio,
-#wireplumber,
-#custom-media,
-#tray,
-#mode,
-#idle_inhibitor,
-#scratchpad,
-#mpd,
-#language,
-#keyboard-state,
-#custom-power {
- padding-left: 15px;
- padding-right: 18px;
- background-color: @base;
- border-radius: 100px;
-}
-
-#window,
-#workspaces {
- margin: 0 5px;
-}
-
-/* If workspaces is the leftmost module, omit left margin */
-.modules-left>widget:first-child>#workspaces {
- margin-left: 0;
-}
-
-/* If workspaces is the rightmost module, omit right margin */
-.modules-right>widget:last-child>#workspaces {
- margin-right: 0;
-}
-
-#clock {
- color: @orange;
-}
-
-#temperature {
- color: @orange;
-}
-
-#battery {
- color: @purple;
-}
-
-#battery.charging,
-#battery.plugged {
- color: @orange;
-}
-
-@keyframes blink {
- to {
- background-color: @base;
- color: #000000;
- }
-}
-
-#battery.critical:not(.charging) {
- background-color: @red;
- animation-name: blink;
- animation-duration: 0.5s;
- animation-timing-function: linear;
- animation-iteration-count: infinite;
- animation-direction: alternate;
-}
-
-label:focus {
- color: @foreground;
-}
-
-#cpu {
- color: @purple;
-}
-
-#memory {
- color: @purple;
-}
-
-#disk {
- color: @purple;
-}
-
-#backlight {
- color: @yellow;
-}
-
-#network {
- color: @pink;
-}
-
-#network.disconnected {
- color: @red;
-}
-
-#pulseaudio {
- color: @cyan;
-}
-
-#pulseaudio.muted {
- color: @red;
-}
-
-#wireplumber {
- color: @cyan;
-}
-
-#wireplumber.muted {
- color: @red;
-}
-
-#custom-media {
- color: @purple;
- min-width: 100px;
-}
-
-#custom-media.custom-spotify {
- color: @purple;
-}
-
-#custom-media.custom-vlc {
- color: @purple;
-}
-
-#temperature {
- color: @purple;
-}
-
-#temperature.critical {
- color: @base;
- background: @red;
- box-shadow: inset 0px 0px 0px 3px @base;
-}
-
-#tray {
- color: @foreground;
-}
-
-#tray>.passive {
- -gtk-icon-effect: dim;
-}
-
-#tray>.needs-attention {
- -gtk-icon-effect: highlight;
- background-color: @base;
-}
-
-#tray * {
- background: @base;
-}
-
-#idle_inhibitor {
- color: @yellow;
-}
-
-#idle_inhibitor.activated {
- background-color: @red;
- box-shadow: inset 0px 0px 0px 3px @base;
- color: @base;
-}
-
-#mpd {
- color: @purple;
-}
-
-#mpd.disconnected {
- background-color: @red;
- color: @base;
- box-shadow: inset 0px 0px 0px 3px @base;
-}
-
-#mpd.stopped {
- color: @red;
-}
-
-#mpd.paused {
- color: @yellow;
-}
-
-#language {
- color: @orange;
- min-width: 16px;
-}
-
-#keyboard-state {
- color: @orange;
- min-width: 16px;
-}
-
-#keyboard-state>label {
- padding: 0 5px;
-}
-
-#keyboard-state>label.locked {
- color: @red;
-}
-
-#scratchpad {
- color: @yellow;
-}
-
-#scratchpad.empty {
- color: @cyan;
-}
diff --git a/dotfiles/.config/wofi/config b/dotfiles/.config/wofi/config
deleted file mode 100644
index 0fd327fb..00000000
--- a/dotfiles/.config/wofi/config
+++ /dev/null
@@ -1 +0,0 @@
-width=450
diff --git a/dotfiles/.config/wofi/style.css b/dotfiles/.config/wofi/style.css
deleted file mode 100644
index 6341b2a8..00000000
--- a/dotfiles/.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/dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-Bold.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFont-Bold.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-Bold.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFont-Bold.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-BoldItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFont-BoldItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-BoldItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFont-BoldItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-ExtraBold.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFont-ExtraBold.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-ExtraBold.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFont-ExtraBold.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-ExtraBoldItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFont-ExtraBoldItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-ExtraBoldItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFont-ExtraBoldItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-ExtraLight.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFont-ExtraLight.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-ExtraLight.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFont-ExtraLight.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-ExtraLightItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFont-ExtraLightItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-ExtraLightItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFont-ExtraLightItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-Italic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFont-Italic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-Italic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFont-Italic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-Light.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFont-Light.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-Light.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFont-Light.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-LightItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFont-LightItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-LightItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFont-LightItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-Medium.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFont-Medium.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-Medium.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFont-Medium.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-MediumItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFont-MediumItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-MediumItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFont-MediumItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-Regular.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFont-Regular.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-Regular.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFont-Regular.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-SemiBold.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFont-SemiBold.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-SemiBold.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFont-SemiBold.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-SemiBoldItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFont-SemiBoldItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-SemiBoldItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFont-SemiBoldItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-Thin.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFont-Thin.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-Thin.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFont-Thin.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-ThinItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFont-ThinItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFont-ThinItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFont-ThinItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-Bold.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontMono-Bold.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-Bold.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontMono-Bold.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-BoldItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontMono-BoldItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-BoldItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontMono-BoldItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-ExtraBold.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontMono-ExtraBold.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-ExtraBold.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontMono-ExtraBold.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-ExtraBoldItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontMono-ExtraBoldItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-ExtraBoldItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontMono-ExtraBoldItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-ExtraLight.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontMono-ExtraLight.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-ExtraLight.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontMono-ExtraLight.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-ExtraLightItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontMono-ExtraLightItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-ExtraLightItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontMono-ExtraLightItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-Italic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontMono-Italic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-Italic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontMono-Italic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-Light.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontMono-Light.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-Light.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontMono-Light.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-LightItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontMono-LightItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-LightItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontMono-LightItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-Medium.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontMono-Medium.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-Medium.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontMono-Medium.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-MediumItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontMono-MediumItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-MediumItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontMono-MediumItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-Regular.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontMono-Regular.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-Regular.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontMono-Regular.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-SemiBold.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontMono-SemiBold.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-SemiBold.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontMono-SemiBold.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-SemiBoldItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontMono-SemiBoldItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-SemiBoldItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontMono-SemiBoldItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-Thin.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontMono-Thin.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-Thin.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontMono-Thin.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-ThinItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontMono-ThinItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontMono-ThinItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontMono-ThinItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-Bold.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontPropo-Bold.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-Bold.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontPropo-Bold.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-BoldItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontPropo-BoldItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-BoldItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontPropo-BoldItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-ExtraBold.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontPropo-ExtraBold.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-ExtraBold.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontPropo-ExtraBold.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-ExtraBoldItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontPropo-ExtraBoldItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-ExtraBoldItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontPropo-ExtraBoldItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-ExtraLight.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontPropo-ExtraLight.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-ExtraLight.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontPropo-ExtraLight.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-ExtraLightItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontPropo-ExtraLightItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-ExtraLightItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontPropo-ExtraLightItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-Italic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontPropo-Italic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-Italic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontPropo-Italic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-Light.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontPropo-Light.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-Light.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontPropo-Light.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-LightItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontPropo-LightItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-LightItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontPropo-LightItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-Medium.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontPropo-Medium.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-Medium.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontPropo-Medium.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-MediumItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontPropo-MediumItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-MediumItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontPropo-MediumItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-Regular.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontPropo-Regular.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-Regular.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontPropo-Regular.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-SemiBold.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontPropo-SemiBold.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-SemiBold.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontPropo-SemiBold.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-SemiBoldItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontPropo-SemiBoldItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-SemiBoldItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontPropo-SemiBoldItalic.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-Thin.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontPropo-Thin.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-Thin.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontPropo-Thin.ttf
diff --git a/dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-ThinItalic.ttf b/dotfiles/.fonts/JetBrainsMonoNerdFontPropo-ThinItalic.ttf
similarity index 100%
rename from dotfiles/.local/share/fonts/JetBrainsMonoNerdFontPropo-ThinItalic.ttf
rename to dotfiles/.fonts/JetBrainsMonoNerdFontPropo-ThinItalic.ttf
diff --git a/dotfiles/.local/share/fonts/.uuid b/dotfiles/.local/share/fonts/.uuid
deleted file mode 100644
index fc6cdfd0..00000000
--- a/dotfiles/.local/share/fonts/.uuid
+++ /dev/null
@@ -1 +0,0 @@
-bf7e32ff-eab7-47c6-a821-2159283ad38b
\ No newline at end of file
diff --git a/dotfiles/.mutt/muttrc b/dotfiles/.mutt/muttrc
deleted file mode 100644
index 69eeb675..00000000
--- a/dotfiles/.mutt/muttrc
+++ /dev/null
@@ -1,23 +0,0 @@
-set ssl_starttls=yes
-set ssl_force_tls=yes
-
-set imap_pass="`pass show gmail/mutt`"
-set smtp_pass="`pass show gmail/mutt`"
-
-set imap_user = 'ehtrude@gmail.com'
-
-set from='ehtrude@gmail.com'
-set realname='TrudeEH'
-
-set folder = imaps://imap.gmail.com/
-set spoolfile = imaps://imap.gmail.com/INBOX
-set postponed="imaps://imap.gmail.com/[Gmail]/Drafts"
-
-set header_cache = "~/.mutt/cache/headers"
-set message_cachedir = "~/.mutt/cache/bodies"
-set certificate_file = "~/.mutt/certificates"
-
-set smtp_url = 'smtps://ehtrude@gmail.com@smtp.gmail.com:465/'
-
-set move = no
-set imap_keepalive = 900
\ No newline at end of file
diff --git a/install.sh b/install.sh
index 0bfe0e9d..9485c627 100755
--- a/install.sh
+++ b/install.sh
@@ -1,55 +1,34 @@
#! /bin/bash
-sudo timedatectl set-timezone Europe/Lisbon
-# Install Paru
-if [ ! $(command -v paru) ]; then
- sudo pacman -S --needed base-devel
- git clone https://aur.archlinux.org/paru.git
- cd paru
- makepkg -si
- cd ..
- rm -rf paru
-fi
+# Update base OS and install programs
+sudo apt install nala -y
+sudo nala update
+sudo nala upgrade
+sudo nala install htop fzf tmux git stow vim
-# Install script dependencies
-paru -Sy curl git stow bat fzf less nextcloud-client
-
-# Install DE
-paru -Sy mpd ncmpcpp dunst xdg-desktop-portal-wlr xdg-desktop-portal sway swaybg swaylock waybar wofi foot grim slurp wl-clipboard xorg-xwayland polkit-gnome
-
-# Install GUI Apps
-paru -Sy brave gnome-podcasts r-quick-share
-
-# Install CLI Apps
-paru -Sy gdu toipe bottom w3m newsboat iamb tmux ollama neovim transmission-cli mutt pass pass-git-helper
-
-if [ $(pwd) != "$HOME/dotfiles" ]; then
+# Clone repo if needed
+if [ $(pwd) != "$HOME/cros" ]; then
cd $HOME
- git clone https://github.com/TrudeEH/dotfiles --depth=1
- cd dotfiles
+ git clone https://github.com/TrudeEH/cros --depth=1
+ cd cros
fi
-echo -e "${GREEN}[+] Symlinking dotfiles...${ENDCOLOR}"
+# Install Github CLI
+(type -p wget >/dev/null || (sudo apt update && sudo apt-get install wget -y)) \
+&& sudo mkdir -p -m 755 /etc/apt/keyrings \
+&& wget -qO- https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo tee /etc/apt/keyrings/githubcli-archive-keyring.gpg > /dev/null \
+&& sudo chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg \
+&& echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null \
+&& sudo apt update \
+&& sudo apt install gh -y
+
+# Use GithubCLI to log in
+gh auth login
+
+# Link dotfiles
stow -v -t $HOME dotfiles --adopt
git diff
git reset --hard
-# Reload fonts
+# Fonts
fc-cache -fv
-
-# link wallpaper
-mkdir -p "/usr/share/backgrounds"
-sudo cp -f ~/dotfiles/bg.png /usr/share/backgrounds/bg.png
-
-xdg-settings set default-web-browser brave-browser.desktop
-
-# Import Files, Passwords and Keys
-source dotfiles/.bashrc
-ncs
-gpg --import ~/Nextcloud/SYNC/exported-keys/private.pgp
-gpg --import ~/Nextcloud/SYNC/exported-keys/public.pgp
-gpg --import-ownertrust < ~/Nextcloud/SYNC/exported-keys/trustlevel.txt
-ln -s ~/Nextcloud/SYNC/password-store ~/.password-store
-
-echo
-echo -e "${GREEN}[I] Done.${ENDCOLOR}"
diff --git a/scripts/desktop.sh b/scripts/desktop.sh
new file mode 100755
index 00000000..b9b499e6
--- /dev/null
+++ b/scripts/desktop.sh
@@ -0,0 +1,2 @@
+sudo nala install gnome-core
+sudo rm -rf /etc/network/interfaces
diff --git a/scripts/install-games.sh b/scripts/install-games.sh
new file mode 100755
index 00000000..7c21ea2a
--- /dev/null
+++ b/scripts/install-games.sh
@@ -0,0 +1,25 @@
+#! /bin/bash
+
+sudo apt install flatpak || {
+ echo "Failed to install flatpak. Try: \"sudo apt update\" and run the script again."
+ exit 1
+}
+
+flatpak --user remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo || {
+ echo "Failed to add flathub remote."
+ exit 1
+}
+
+flatpak install flathub com.valvesoftware.Steam || {
+ echo "Failed to install Steam."
+ exit 1
+}
+
+flatpak install flathub com.github.Anuken.Mindustry || {
+ echo "Failed to install Mindustry."
+ exit 1
+}
+
+echo
+echo "Done."
+echo
diff --git a/scripts/install-minecraft-bedrock.sh b/scripts/install-minecraft-bedrock.sh
new file mode 100755
index 00000000..53012194
--- /dev/null
+++ b/scripts/install-minecraft-bedrock.sh
@@ -0,0 +1,3 @@
+curl -sS https://minecraft-linux.github.io/pkg/deb/pubkey.gpg | sudo tee -a /etc/apt/trusted.gpg.d/minecraft-linux-pkg.asc
+echo "deb [arch=amd64,arm64,armhf] https://minecraft-linux.github.io/pkg/deb bookworm-nightly main" | sudo tee /etc/apt/sources.list.d/minecraft-linux-pkg.list
+sudo apt install mcpelauncher-manifest mcpelauncher-ui-manifest msa-manifest
diff --git a/scripts/install-multimc.sh b/scripts/install-multimc.sh
new file mode 100755
index 00000000..8e1b4d97
--- /dev/null
+++ b/scripts/install-multimc.sh
@@ -0,0 +1,13 @@
+# Install multimc
+sudo apt update
+sudo apt install libqt5core5a libqt5network5 libqt5gui5
+wget https://files.multimc.org/downloads/multimc_1.6-1.deb
+sudo apt install ./multimc_1.6-1.deb
+rm multimc_1.6-1.deb
+
+# Install java
+sudo mkdir -p /etc/apt/keyrings
+wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public | sudo tee /etc/apt/keyrings/adoptium.asc
+echo "deb [signed-by=/etc/apt/keyrings/adoptium.asc] https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" | sudo tee /etc/apt/sources.list.d/adoptium.list
+sudo apt update
+sudo apt install temurin-8-jdk temurin-21-jdk temurin-17-jdk
diff --git a/scripts/install-ollama.sh b/scripts/install-ollama.sh
new file mode 100755
index 00000000..138ec502
--- /dev/null
+++ b/scripts/install-ollama.sh
@@ -0,0 +1 @@
+curl -fsSL https://ollama.com/install.sh | sh
diff --git a/scripts/p.sh b/scripts/p.sh
deleted file mode 100755
index 34740db4..00000000
--- a/scripts/p.sh
+++ /dev/null
@@ -1,255 +0,0 @@
-#! /bin/bash
-# Cross-distro package manager UI
-
-RED="\e[31m"
-GREEN="\e[32m"
-YELLOW="\e[33m"
-BLUE="\e[34m"
-MAGENTA="\e[35m"
-CYAN="\e[36m"
-GRAY="\e[90m"
-
-BOLD="\e[1m"
-FAINT="\e[2m"
-ITALIC="\e[3m"
-UNDERLINE="\e[4m"
-
-ENDCOLOR="\e[0m"
-
-p() (
- packageManagers=()
- if [ "$(command -v flatpak)" ]; then
- packageManagers+=("flatpak")
- fi
- if [ "$(command -v nix)" ]; then
- packageManagers+=("nix")
- fi
- if [ "$(command -v brew)" ]; then
- packageManagers+=("brew")
- fi
- if [ "$(command -v apt)" ]; then
- packageManagers+=("apt")
- elif [ "$(command -v pacman)" ]; then
- packageManagers+=("pacman")
- elif [ "$(command -v dnf)" ]; then
- packageManagers+=("dnf")
- fi
-
- updateP() {
- if [[ ${packageManagers[@]} =~ "flatpak" ]]; then
- flatpak update
- flatpak uninstall --unused --delete-data
- fi
- if [[ ${packageManagers[@]} =~ "nix" ]]; then
- nix-channel --update
- sudo nix-channel --update
- nix-collect-garbage --delete-older-than 7d
- fi
- if [[ ${packageManagers[@]} =~ "brew" ]]; then
- brew update
- brew doctor
- brew upgrade
- fi
- if [[ ${packageManagers[@]} =~ "apt" ]]; then
- sudo apt update
- sudo apt upgrade
- sudo apt dist-upgrade
- sudo apt autoremove
- sudo apt autoclean
- elif [[ ${packageManagers[@]} =~ "pacman" ]]; then
- sudo sed -i 's/^#ParallelDownloads/ParallelDownloads/' /etc/pacman.conf
- sudo pacman -Syu
- sudo pacman -Rsn $(pacman -Qdtq)
- if [ ! "$(command -v reflector)" ]; then
- sudo pacman -Sy --noconfirm reflector rsync curl
- fi
- iso=$(curl -4 ifconfig.co/country-iso)
- extra="FR"
- sudo reflector -a 48 -c $iso -c $extra -f 5 -l 30 --verbose --sort rate --save /etc/pacman.d/mirrorlist
- if [ ! "$(command -v paccache)" ]; then
- sudo pacman -Sy --noconfirm pacman-contrib
- fi
- paccache -rk1
- elif [[ ${packageManagers[@]} =~ "dnf" ]]; then
- sudo dnf upgrade --refresh
- sudo dnf autoremove
- fi
- }
-
- checkP() {
- app_name=$(echo "$1" | tr '[:upper:]' '[:lower:]')
- app_name=$(echo "$app_name" | tr " " -)
-
- if [[ ${packageManagers[@]} =~ "flatpak" ]]; then
- flatpak_apps=$(flatpak list --columns=application)
- echo $flatpak_apps | grep -iq $app_name
- flatpak_success=$?
- if [[ $flatpak_success == 0 ]]; then
- echo -e "${GREEN}${BOLD}Flatpak:${ENDCOLOR}${GREEN} $(echo $flatpak_apps | tr ' ' '\n' | grep -i $app_name)${ENDCOLOR}"
- fi
- fi
- if [[ ${packageManagers[@]} =~ "nix" ]]; then
- nix_apps=$(nix-env -q)
- echo $nix_apps | grep -iq $app_name
- nix_success=$?
- if [[ $nix_success == 0 ]]; then
- echo -e "${GREEN}${BOLD}Nix:${ENDCOLOR}${GREEN} $(echo $nix_apps | tr ' ' '\n' | grep -i $app_name)${ENDCOLOR}"
- fi
- fi
- if [[ ${packageManagers[@]} =~ "brew" ]]; then
- brew_apps=$(brew list)
- echo $brew_apps | grep -iq $app_name
- brew_success=$?
- if [[ $brew_success == 0 ]]; then
- echo -e "${GREEN}${BOLD}Brew:${ENDCOLOR}${GREEN} $(echo $brew_apps | tr ' ' '\n' | grep -i $app_name)${ENDCOLOR}"
- fi
- fi
- if [[ ${packageManagers[@]} =~ "apt" ]]; then
- distro_apps=$(dpkg-query -l | grep '^ii' | awk '{print $2}')
- elif [[ ${packageManagers[@]} =~ "pacman" ]]; then
- distro_apps=$(pacman -Q)
- elif [[ ${packageManagers[@]} =~ "dnf" ]]; then
- distro_apps=$(dnf list)
- fi
-
- echo $distro_apps | grep -Eiq "(^|\s)$app_name($|\s)"
- distro_success=$?
- if [[ $distro_success == 0 ]]; then
- echo -e "${GREEN}${BOLD}Distro:${ENDCOLOR}${GREEN} $(echo $distro_apps | tr ' ' '\n' | grep -Ei "(^|\s)$app_name($|\s)")${ENDCOLOR}"
- fi
-
- if [[ $flatpak_success != 0 && $nix_success != 0 && $brew_success != 0 && $distro_success != 0 ]]; then
- echo -e "${YELLOW}$app_name not installed.${ENDCOLOR}"
- return 1
- fi
- }
-
- installP() {
- checkP $1
- if [[ $? != 1 ]]; then
- echo "$1 is already installed."
- return 0
- fi
- if [[ ${packageManagers[@]} =~ "nix" ]]; then
- echo "Attempting nix install..."
- nix-env -iA nixpkgs.$1
- if [[ $? == 0 ]]; then
- return 0
- fi
- fi
- if [[ ${packageManagers[@]} =~ "brew" ]]; then
- echo "Attempting brew install..."
- brew install $1
- if [[ $? == 0 ]]; then
- return 0
- fi
- fi
- if [[ ${packageManagers[@]} =~ "apt" ]]; then
- echo "Attempting apt install..."
- sudo apt install $1
- if [[ $? == 0 ]]; then
- return 0
- fi
- elif [[ ${packageManagers[@]} =~ "pacman" ]]; then
- echo "Attempting pacman install..."
- sudo pacman -Sy $1
- if [[ $? == 0 ]]; then
- return 0
- fi
- elif [[ ${packageManagers[@]} =~ "dnf" ]]; then
- echo "Attempting dnf install..."
- sudo dnf install $1
- if [[ $? == 0 ]]; then
- return 0
- fi
- fi
- if [[ ${packageManagers[@]} =~ "flatpak" ]]; then
- echo "Attempting flatpak install..."
- flatpak install $1
- if [[ $? == 0 ]]; then
- return 0
- fi
- fi
- echo "ERROR - $1 not found."
- return 1
- }
-
- removeP() {
- checkP $1
- if [[ $? != 0 ]]; then
- echo "$1 is not installed."
- return 0
- fi
- if [[ ${packageManagers[@]} =~ "flatpak" ]]; then
- echo "Attempting flatpak uninstall..."
- flatpak uninstall $1
- if [[ $? == 0 ]]; then
- return 0
- fi
- fi
- if [[ ${packageManagers[@]} =~ "nix" ]]; then
- echo "Attempting nix uninstall..."
- nix-env --uninstall $1
- fi
- if [[ ${packageManagers[@]} =~ "brew" ]]; then
- echo "Attempting brew uninstall..."
- brew uninstall $1
- if [[ $? == 0 ]]; then
- return 0
- fi
- fi
- if [[ ${packageManagers[@]} =~ "apt" ]]; then
- echo "Attempting apt uninstall..."
- sudo apt remove $1
- if [[ $? == 0 ]]; then
- return 0
- fi
- elif [[ ${packageManagers[@]} =~ "pacman" ]]; then
- echo "Attempting pacman uninstall..."
- sudo pacman -Rs $1
- if [[ $? == 0 ]]; then
- return 0
- fi
- elif [[ ${packageManagers[@]} =~ "dnf" ]]; then
- echo "Attempting dnf uninstall..."
- sudo dnf remove $1
- if [[ $? == 0 ]]; then
- return 0
- fi
- fi
- echo "ERROR - Failed to uninstall $1."
- return 1
- }
-
- # If no parameter or u
- echo "Available package managers: ${packageManagers[@]}"
- if [ -z $1 ] || [ $1 = "u" ]; then
- updateP
- return 0
- elif [ $1 = "i" ]; then # If first parameter is i (install)
- shift
- for package in "$@"
- do
- installP $package
- done
- elif [ $1 = "r" ]; then # If first parameter is r (remove)
- shift
- for package in "$@"
- do
- removeP $package
- done
- elif [ $1 = "c" ]; then # If first parameter is c (check)
- shift
- for package in "$@"
- do
- checkP $package
- done
- else
- echo -e "${YELLOW}${UNDERLINE}[i] Usage:${ENDCOLOR}"
- echo -e "p (u) ${FAINT}- update os${ENDCOLOR}"
- echo -e "p i package ${FAINT}- install package${ENDCOLOR}"
- echo -e "p r package ${FAINT}- remove package${ENDCOLOR}"
- echo -e "p c package ${FAINT}- check if package is installed${ENDCOLOR}"
- return 1
- fi
-)
diff --git a/scripts/wine-arch.sh b/scripts/wine-arch.sh
deleted file mode 100755
index b73b06bb..00000000
--- a/scripts/wine-arch.sh
+++ /dev/null
@@ -1,7 +0,0 @@
-# INSTALL WINE ON ARCH
-sudo pacman -S --needed wine-staging giflib lib32-giflib libpng lib32-libpng libldap lib32-libldap gnutls lib32-gnutls \
-mpg123 lib32-mpg123 openal lib32-openal v4l-utils lib32-v4l-utils libpulse lib32-libpulse libgpg-error \
-lib32-libgpg-error alsa-plugins lib32-alsa-plugins alsa-lib lib32-alsa-lib libjpeg-turbo lib32-libjpeg-turbo \
-sqlite lib32-sqlite libxcomposite lib32-libxcomposite libxinerama lib32-libgcrypt libgcrypt lib32-libxinerama \
-ncurses lib32-ncurses ocl-icd lib32-ocl-icd libxslt lib32-libxslt libva lib32-libva gtk3 \
-lib32-gtk3 gst-plugins-base-libs lib32-gst-plugins-base-libs vulkan-icd-loader lib32-vulkan-icd-loader