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