commit 62f344a83d141558113d0b0b8d709174091e8441 Author: eneller Date: Thu Mar 21 12:35:55 2024 +0100 Initial Commit diff --git a/.config/rofi/config.rasi b/.config/rofi/config.rasi new file mode 100644 index 0000000..75e2e33 --- /dev/null +++ b/.config/rofi/config.rasi @@ -0,0 +1,153 @@ +configuration { +modi: "window,drun,ssh,run"; +/* width: 50;*/ +/* lines: 15;*/ +/* columns: 2;*/ +/* font: "mono 12";*/ +/* bw: 1;*/ +/* location: 0;*/ +/* padding: 5;*/ +/* yoffset: 0;*/ +/* xoffset: 0;*/ +/* fixed-num-lines: true;*/ +/* show-icons: false;*/ +/* terminal: "rofi-sensible-terminal";*/ +/* ssh-client: "ssh";*/ +/* ssh-command: "{terminal} -e {ssh-client} {host} [-p {port}]";*/ +/* run-command: "{cmd}";*/ +/* run-list-command: "";*/ +/* run-shell-command: "{terminal} -e {cmd}";*/ +/* window-command: "wmctrl -i -R {window}";*/ +/* window-match-fields: "all";*/ +/* icon-theme: ;*/ +/* drun-match-fields: "name,generic,exec,categories,keywords";*/ +/* drun-categories: ;*/ +/* drun-show-actions: false;*/ +/* drun-display-format: "{name} [({generic})]";*/ +/* drun-url-launcher: "xdg-open";*/ +/* disable-history: false;*/ +/* ignored-prefixes: "";*/ +/* sort: false;*/ +/* sorting-method: "normal";*/ +/* case-sensitive: false;*/ +/* cycle: true;*/ +/* sidebar-mode: false;*/ +/* eh: 1;*/ +/* auto-select: false;*/ +/* parse-hosts: false;*/ +/* parse-known-hosts: true;*/ +/* combi-modi: "window,run";*/ +/* matching: "normal";*/ +/* tokenize: true;*/ +/* m: "-5";*/ +/* line-margin: 2;*/ +/* line-padding: 1;*/ +/* filter: ;*/ +/* separator-style: "dash";*/ +/* hide-scrollbar: false;*/ +/* fullscreen: false;*/ +/* fake-transparency: false;*/ +/* dpi: -1;*/ +/* threads: 0;*/ +/* scrollbar-width: 8;*/ +/* scroll-method: 0;*/ +/* fake-background: "screenshot";*/ +/* window-format: "{w} {c} {t}";*/ +/* click-to-exit: true;*/ +/* show-match: true;*/ +/* color-normal: ;*/ +/* color-urgent: ;*/ +/* color-active: ;*/ +/* color-window: ;*/ +/* max-history-size: 25;*/ +/* combi-hide-mode-prefix: false;*/ +/* matching-negate-char: '-' /* unsupported */;*/ +/* cache-dir: ;*/ +/* window-thumbnail: false;*/ +/* drun-use-desktop-cache: false;*/ +/* drun-reload-desktop-cache: false;*/ +/* normalize-match: false;*/ +/* pid: "/run/user/1000/rofi.pid";*/ +/* display-window: ;*/ +/* display-windowcd: ;*/ +/* display-run: ;*/ +/* display-ssh: ;*/ +/* display-drun: ;*/ +/* display-combi: ;*/ +/* display-keys: ;*/ +/* display-file-browser: ;*/ +/* kb-primary-paste: "Control+V,Shift+Insert";*/ +/* kb-secondary-paste: "Control+v,Insert";*/ +/* kb-clear-line: "Control+w";*/ +/* kb-move-front: "Control+a";*/ +/* kb-move-end: "Control+e";*/ +/* kb-move-word-back: "Alt+b,Control+Left";*/ +/* kb-move-word-forward: "Alt+f,Control+Right";*/ +/* kb-move-char-back: "Left,Control+b";*/ +/* kb-move-char-forward: "Right,Control+f";*/ +/* kb-remove-word-back: "Control+Alt+h,Control+BackSpace";*/ +/* kb-remove-word-forward: "Control+Alt+d";*/ +/* kb-remove-char-forward: "Delete,Control+d";*/ +/* kb-remove-char-back: "BackSpace,Shift+BackSpace,Control+h";*/ +/* kb-remove-to-eol: "Control+k";*/ +/* kb-remove-to-sol: "Control+u";*/ +/* kb-accept-entry: "Control+j,Control+m,Return,KP_Enter";*/ +/* kb-accept-custom: "Control+Return";*/ +/* kb-accept-alt: "Shift+Return";*/ +/* kb-delete-entry: "Shift+Delete";*/ +/* kb-mode-next: "Shift+Right,Control+Tab";*/ +/* kb-mode-previous: "Shift+Left,Control+ISO_Left_Tab";*/ +/* kb-row-left: "Control+Page_Up";*/ +/* kb-row-right: "Control+Page_Down";*/ +/* kb-row-up: "Up,Control+p,ISO_Left_Tab";*/ +/* kb-row-down: "Down,Control+n";*/ +/* kb-row-tab: "Tab";*/ +/* kb-page-prev: "Page_Up";*/ +/* kb-page-next: "Page_Down";*/ +/* kb-row-first: "Home,KP_Home";*/ +/* kb-row-last: "End,KP_End";*/ +/* kb-row-select: "Control+space";*/ +/* kb-screenshot: "Alt+S";*/ +/* kb-ellipsize: "Alt+period";*/ +/* kb-toggle-case-sensitivity: "grave,dead_grave";*/ +/* kb-toggle-sort: "Alt+grave";*/ +/* kb-cancel: "Escape,Control+g,Control+bracketleft";*/ +/* kb-custom-1: "Alt+1";*/ +/* kb-custom-2: "Alt+2";*/ +/* kb-custom-3: "Alt+3";*/ +/* kb-custom-4: "Alt+4";*/ +/* kb-custom-5: "Alt+5";*/ +/* kb-custom-6: "Alt+6";*/ +/* kb-custom-7: "Alt+7";*/ +/* kb-custom-8: "Alt+8";*/ +/* kb-custom-9: "Alt+9";*/ +/* kb-custom-10: "Alt+0";*/ +/* kb-custom-11: "Alt+exclam";*/ +/* kb-custom-12: "Alt+at";*/ +/* kb-custom-13: "Alt+numbersign";*/ +/* kb-custom-14: "Alt+dollar";*/ +/* kb-custom-15: "Alt+percent";*/ +/* kb-custom-16: "Alt+dead_circumflex";*/ +/* kb-custom-17: "Alt+ampersand";*/ +/* kb-custom-18: "Alt+asterisk";*/ +/* kb-custom-19: "Alt+parenleft";*/ +/* kb-select-1: "Super+1";*/ +/* kb-select-2: "Super+2";*/ +/* kb-select-3: "Super+3";*/ +/* kb-select-4: "Super+4";*/ +/* kb-select-5: "Super+5";*/ +/* kb-select-6: "Super+6";*/ +/* kb-select-7: "Super+7";*/ +/* kb-select-8: "Super+8";*/ +/* kb-select-9: "Super+9";*/ +/* kb-select-10: "Super+0";*/ +/* ml-row-left: "ScrollLeft";*/ +/* ml-row-right: "ScrollRight";*/ +/* ml-row-up: "ScrollUp";*/ +/* ml-row-down: "ScrollDown";*/ +/* me-select-entry: "MousePrimary";*/ +/* me-accept-entry: "MouseDPrimary";*/ +/* me-accept-custom: "Control+MouseDPrimary";*/ +} +@theme "/usr/share/rofi/themes/android_notification.rasi" +/* window { fullscreen: true; } */ \ No newline at end of file diff --git a/.config/sway/config b/.config/sway/config new file mode 100644 index 0000000..bca82f7 --- /dev/null +++ b/.config/sway/config @@ -0,0 +1,9 @@ +# Config for sway +# +# Read `man 5 sway` for a complete reference. + +# user config directory +include $HOME/.config/sway/config.d/* + +# only enable this if every app you use is compatible with wayland +# xwayland disable diff --git a/.config/sway/config.d/autostart_applications b/.config/sway/config.d/autostart_applications new file mode 100644 index 0000000..f34acbb --- /dev/null +++ b/.config/sway/config.d/autostart_applications @@ -0,0 +1,44 @@ +# sway does not set DISPLAY/WAYLAND_DISPLAY in the systemd user environment +# See FS#63021 +# Adapted from xorg's 50-systemd-user.sh, which achieves a similar goal. + +# default greeting background +output "*" bg /usr/share/backgrounds/arcolinux/arco-wallpaper.jpg fill + +exec systemctl --user import-environment DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP +exec hash dbus-update-activation-environment 2>/dev/null && \ + dbus-update-activation-environment --systemd DISPLAY WAYLAND_DISPLAY SWAYSOCK XDG_CURRENT_DESKTOP + +# Auth with polkit-gnome: +exec /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 + +# Desktop notifications +exec mako -c ~/.config/sway/mako/config + +# Autotiling +exec autotiling + +# Wlsunset - night colors - install this application +# exec ~/.config/sway/scripts/light.sh + +# Welcome +exec dex -a -s /etc/xdg/autostart/:~/.config/autostart/ + +# nm-applet +exec nm-applet --indicator + +# Clipman wl-paste +# exec clipman restore +# exec wl-paste -t text --watch clipman store + +# Gnome Keyring +exec gnome-keyring-daemon --daemonize --start --components=gpg,pkcs11,secrets,ssh + +# for Touchpad gestures - laptop +# exec libinput-gestures-setup start + +# Xdg Desktop Portal +# exec /usr/libexec/xdg-desktop-portal + +# nwg-drawer +exec_always nwg-drawer -r \ No newline at end of file diff --git a/.config/sway/config.d/clamshell b/.config/sway/config.d/clamshell new file mode 100644 index 0000000..0f7abd9 --- /dev/null +++ b/.config/sway/config.d/clamshell @@ -0,0 +1,6 @@ +# Clamshell Mode +set $laptop +bindswitch --reload --locked lid:on output $laptop disable +bindswitch --reload --locked lid:off output $laptop enable + +exec_always ~/.config/sway/scripts/clamshell.sh \ No newline at end of file diff --git a/.config/sway/config.d/default b/.config/sway/config.d/default new file mode 100644 index 0000000..6d3cb16 --- /dev/null +++ b/.config/sway/config.d/default @@ -0,0 +1,296 @@ +# Logo key. Use Mod1 for Alt. +set $mod Mod4 + +# Variables to set +set $terminal alacritty +set $browser firefox +set $files thunar +set $editor code + +# Your preferred application launcher +# Note: pass the final command to swaymsg so that the resulting window can be opened +# on the original workspace that the command was run on. +set $smallmenu rofi -no-config -no-lazy-grab -show drun -modi drun -theme ~/.config/sway/rofi/launcher1.rasi + +set $grandmenu rofi -no-config -no-lazy-grab -show drun -modi drun -theme ~/.config/sway/rofi/launcher2.rasi + +set $cheat kitty -e micro ~/.config/sway/cheatsheet.md + +### Idle configuration + +#with lock + +#exec swayidle -w\ +# timeout 1200 'swaylock -f -C ~/.config/sway/swaylock/config'\ +# timeout 1200 'swaymsg "output * dpms off"' \ +# resume 'swaymsg "output * dpms on"' \ +# before-sleep 'swaylock -C ~/.config/sway/swaylock/config' + +# without lock +#exec swayidle -w\ +# timeout 1200 'swaymsg "output * dpms off"' \ +# resume 'swaymsg "output * dpms on"' + +# This will lock your screen after 300 seconds of inactivity, then turn off +# your displays after another 300 seconds, and turn your screens back on when +# resumed. It will also lock your screen before your computer goes to sleep. + + +### Key bindings + +## Function keys +bindsym $mod+F1 exec $browser +bindsym $mod+F2 exec $editor +bindsym $mod+F3 exec inkscape +bindsym $mod+F4 exec gimp +bindsym $mod+F5 exec meld +bindsym $mod+F6 exec vlc +bindsym $mod+F7 exec virtualbox +bindsym $mod+F8 exec $files +bindsym $mod+F9 exec lollypop +bindsym $mod+F10 exec spotify +bindsym $mod+F11 exec rofi -show drun +bindsym $mod+F12 exec rofi -show drun + +## xfce4-terminal +bindsym f12 exec xfce4-terminal --drop-down +bindsym $mod+Shift+Return exec thunar + +# Start a terminal +bindsym $mod+Return exec kitty +bindsym $mod+t exec kitty +bindsym Ctrl+Alt+Return exec foot +bindsym Ctrl+Alt+t exec $terminal + +# archlinux tweak tool +bindsym Ctrl+Alt+e archlinux-tweak-tool + +# archlinux-logout +bindsym $mod+x exec archlinux-logout +bindsym $mod+Shift+x exec archlinux-logout + +## Lock Screen +bindsym Ctrl+Alt+l exec ~/.config/sway/scripts/lockman.sh + +# Kill focused window +bindsym $mod+q kill +bindsym $mod+Shift+q kill + +# Launcher menu +bindsym $mod+d exec $grandmenu + +# Launcher menu +bindsym $mod+Shift+d exec $smallmenu + +# Cheatsheet +bindsym $mod+Shift+i exec $cheat + +# 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 + +# conky +bindsym $mod+c exec conky-toggle +bindsym $mod+Ctrl+c exec killall conky +bindsym Ctrl+Alt+Next exec conky-rotate -n +bindsym Ctrl+Alt+Prior exec conky-rotate -p + +# Variety +# trash wallpaper +bindsym Alt+t exec variety -t +# next wallpaper +bindsym Alt+n exec variety -n +bindsym Shift+Alt+n exec variety -n && wal -i $(cat $HOME/.config/variety/wallpaper/wallpaper.jpg.txt) +bindsym Alt+Right exec variety -n +# previous wallpaper +bindsym Alt+p exec variety -p +bindsym Alt+Left exec variety -p +# favorite wallpaper +bindsym Alt+f exec variety -f +# pause wallpaper +bindsym Alt+Up exec variety --pause +# resume wallpaper +bindsym Alt+Down exec variety --resume + +# task manager +bindsym Ctrl+Shift+Escape exec kitty -e btop +bindsym Ctrl+Alt+End exec kitty -e btop + +bindsym $mod+Escape exec ~/.config/sway/scripts/wkill.sh + +# CONTROL + ALT +bindsym Ctrl+Alt+b exec thunar +bindsym Ctrl+Alt+f exec firefox +bindsym Ctrl+Alt+g exec chromium +bindsym Ctrl+Alt+p exec pamac-manager +bindsym Ctrl+Alt+u exec pavucontrol +bindsym Ctrl+Alt+w exec arcolinux-welcome-app +bindsym Ctrl+Alt+s exec spotify + +# +# 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 + + # 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 +# +# Workspaces: +# + # Qwerty + # 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. + + # Azerty + # Switch to workspace + #bindsym $mod+Ampersand workspace number 1 + #bindsym $mod+Eacute workspace number 2 + #bindsym $mod+Quotedbl workspace number 3 + #bindsym $mod+Apostrophe workspace number 4 + #bindsym $mod+Parenleft workspace number 5 + #bindsym $mod+Section workspace number 6 + #bindsym $mod+Egrave workspace number 7 + #bindsym $mod+Exclam workspace number 8 + #bindsym $mod+ccedilla workspace number 9 + #bindsym $mod+agrave workspace number 10 + + # Move focused container to workspace + #bindsym $mod+Shift+Ampersand move container to workspace number 1 + #bindsym $mod+Shift+Eacute move container to workspace number 2 + #bindsym $mod+Shift+Quotedbl move container to workspace number 3 + #bindsym $mod+Shift+Apostrophe move container to workspace number 4 + #bindsym $mod+Shift+Parenleft move container to workspace number 5 + #bindsym $mod+Shift+Section move container to workspace number 6 + #bindsym $mod+Shift+Egrave move container to workspace number 7 + #bindsym $mod+Shift+Exclam move container to workspace number 8 + #bindsym $mod+Shift+ccedilla move container to workspace number 9 + #bindsym $mod+Shift+agrave 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+b splith + bindsym $mod+v splitv + + # Switch the current container between different layout styles + bindsym $mod+s layout stacking + bindsym $mod+w layout tabbed + bindsym $mod+e layout toggle split + + # Make the current focus fullscreen + bindsym $mod+f fullscreen + + # Toggle the current focus between tiling and floating mode + bindsym $mod+Shift+space floating toggle + + # Swap focus between the tiling area and the floating area + bindsym $mod+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 + + # Return to default mode + bindsym Return mode "default" + bindsym Escape mode "default" + bindsym $mod+r mode "default" +} +bindsym $mod+r mode "resize" + +# Resize floating windows with mouse scroll: +bindsym --whole-window --border $mod+button4 resize shrink height 5 px or 5 ppt +bindsym --whole-window --border $mod+button5 resize grow height 5 px or 5 ppt +bindsym --whole-window --border $mod+shift+button4 resize shrink width 5 px or 5 ppt +bindsym --whole-window --border $mod+shift+button5 resize grow width 5 px or 5 ppt + +# +# Volume +# +bindsym XF86AudioRaiseVolume exec pamixer -ui 2 && pamixer --get-volume > $SWAYSOCK.wob +bindsym XF86AudioLowerVolume exec pamixer -ud 2 && pamixer --get-volume > $SWAYSOCK.wob +bindsym XF86AudioMute exec pamixer --toggle-mute && ( pamixer --get-mute && echo 0 > $SWAYSOCK.wob ) || pamixer --get-volume > $SWAYSOCK.wob + +# +# Player +# + bindsym XF86AudioPlay exec playerctl play-pause + bindsym XF86AudioNext exec playerctl next + bindsym XF86AudioPrev exec playerctl previous + bindsym XF86AudioStop exec playerctl stop +# +# Backlight +# install light if needed +# bindsym XF86MonBrightnessUp exec light -A 5 && light -G | cut -d'.' -f1 > $SWAYSOCK.wob +# bindsym XF86MonBrightnessDown exec light -U 5 && light -G | cut -d'.' -f1 > $SWAYSOCK.wob + +# +# Screenshots +# +bindsym print exec grimshot --notify save output +bindsym Shift+print exec grimshot --notify save active +bindsym Ctrl+print exec grimshot --notify save area +bindsym Ctrl+$mod+print exec flameshot gui + diff --git a/.config/sway/config.d/input b/.config/sway/config.d/input new file mode 100644 index 0000000..d5df32a --- /dev/null +++ b/.config/sway/config.d/input @@ -0,0 +1,31 @@ +### Input configuration +# +# Example configuration: +# You can get the names of your inputs by running: swaymsg -t get_inputs +# Put your touchpad's ID to replace "Touchpad-ID" (keep the quotation marks) + +input type:touchpad { + dwt enabled + tap enabled + natural_scroll enabled +} + +# Read `man 5 sway-input` for more information about this section. +# +# Change or switch the next setting +input type:keyboard { + xkb_layout "de" + xkb_numlock enabled + repeat_delay 200 + repeat_rate 35 + +} + +exec_always { + 'swaymsg input type:keyboard xkb_layout "$(localectl status | grep "X11 Layout" | sed -e "s/^.*X11 Layout://")"' + 'swaymsg input type:keyboard xkb_variant "$(localectl status | grep "X11 Variant" | sed -e "s/^.*X11 Variant://")"' +} + +input "5824:10203:MoErgo_Glove80_Left_Keyboard" { + xkb_layout "us" +} diff --git a/.config/sway/config.d/output b/.config/sway/config.d/output new file mode 100644 index 0000000..e7db8e5 --- /dev/null +++ b/.config/sway/config.d/output @@ -0,0 +1,33 @@ +### Output configuration +# +# Example configuration: +# +# output HDMI-A-1 resolution 1920x1080 position 1920,0 +# +# You can get the names of your outputs by running: swaymsg -t get_outputs +# +# Wacom Tablet - Example +# input "1386:884:Wacom_Intuos_S_Pad" map_to_output HDMI-A-1 +# input "1386:884:Wacom_Intuos_S_Pen" map_to_output HDMI-A-1 + +# Example dual monitor + +#output HDMI-A-1 pos 0 0 +#output HDMI-A-2 pos 1920 0 + +# Define outputs +#set $output-primary HDMI-A-1 +#set $output-secondary HDMI-A-2 + + +#workspace 1 output $output-primary +#workspace 2 output $output-primary +#workspace 3 output $output-primary +#workspace 4 output $output-primary +#workspace 5 output $output-primary + +#workspace 6 output $output-secondary +#workspace 7 output $output-secondary +#workspace 8 output $output-secondary +#workspace 9 output $output-secondary +#workspace 10 output $output-secondary diff --git a/.config/sway/config.d/rules b/.config/sway/config.d/rules new file mode 100644 index 0000000..61904d8 --- /dev/null +++ b/.config/sway/config.d/rules @@ -0,0 +1,30 @@ +# set floating (nontiling)for apps needing it: +#for_window [class="Yad" instance="yad"] floating enable +#for_window [app_id="yad"] floating enable +#for_window [app_id="blueman-manager"] floating enable, resize set width 40 ppt height 30 ppt + +# set floating (nontiling) for special apps: +#for_window [class="Xsane" instance="xsane"] floating enable +#for_window [app_id="pavucontrol" ] floating enable, resize set width 40 ppt height 30 ppt +#for_window [class="qt5ct" instance="qt5ct"] floating enable, resize set width 60 ppt height 50 ppt +#for_window [class="Bluetooth-sendto" instance="bluetooth-sendto"] floating enable +#for_window [app_id="pamac-manager"] floating enable, resize set width 80 ppt height 70 ppt +#for_window [class="Lxappearance"] floating enable, resize set width 60 ppt height 50 ppt + +# set floating for window roles +for_window [window_role="pop-up"] floating enable +for_window [window_role="bubble"] floating enable +for_window [window_role="task_dialog"] floating enable +for_window [window_role="Preferences"] floating enable +for_window [window_type="dialog"] floating enable +for_window [window_type="menu"] floating enable +for_window [window_role="About"] floating enable +for_window [title="File Operation Progress"] floating enable, border pixel 1, sticky enable, resize set width 40 ppt height 30 ppt +for_window [title="Picture in picture"] floating enable, sticky enable +for_window [title="nmtui"] floating enable, resize set width 50 ppt height 70 ppt +for_window [title="htop"] floating enable, resize set width 50 ppt height 70 ppt +for_window [app_id="xsensors"] floating enable +for_window [title="Save File"] floating enable + +# Inhibit idle +for_window [app_id="Chromium"] inhibit_idle fullscreen diff --git a/.config/sway/config.d/theme b/.config/sway/config.d/theme new file mode 100644 index 0000000..7399a96 --- /dev/null +++ b/.config/sway/config.d/theme @@ -0,0 +1,30 @@ +# Apply gtk theming +# exec_always ~/.config/sway/scripts/import-gsettings +# exec_always ~/.config/sway/scripts/ricing +exec_always ~/.config/sway/scripts/gtkthemes + +# Set inner/outer gaps +gaps inner 5 +gaps outer 5 + +# Hide titlebar on windows: +default_border pixel 2 + +# Default Font +font pango:Noto Sans Regular 10 + +# Thin borders: +smart_borders off + +# Title format for windows +for_window [shell="xdg_shell"] title_format "%title (%app_id)" +for_window [shell="x_wayland"] title_format "%class - %title" + +## Window decoration +# class border backgr. text indicator child_border +client.focused #88c0d0 #434c5e #eceff4 #8fbcbb #88c0d0 +client.focused_inactive #88c0d0 #2e3440 #d8dee9 #4c566a #4c566a +client.unfocused #88c0d0 #2e3440 #d8dee9 #4c566a #4c566a +client.urgent #ebcb8b #ebcb8b #2e3440 #8fbcbb #ebcb8b + +exec $HOME/.config/sway/scripts/statusbar diff --git a/.config/sway/mako/config b/.config/sway/mako/config new file mode 100644 index 0000000..0e66e41 --- /dev/null +++ b/.config/sway/mako/config @@ -0,0 +1,15 @@ +anchor=bottom-right +font=monospace 10 +background-color=#3b4252 +text-color=#eceff4 +width=350 +margin=0,20,20 +padding=10 +border-size=2 +border-color=#4c566a +border-radius=5 +default-timeout=10000 +group-by=summary + +[grouped] +format=%s\n%b diff --git a/.config/sway/rofi/colors.rasi b/.config/sway/rofi/colors.rasi new file mode 100644 index 0000000..1255159 --- /dev/null +++ b/.config/sway/rofi/colors.rasi @@ -0,0 +1,10 @@ +/* colors */ + +* { + al: #00000000; + bg: #1F1F1FFF; + bga: #ffb30033; + bar: #1F1F1FFF; + fg: #FFFFFFFF; + ac: #f15495ff; +} diff --git a/.config/sway/rofi/config.rasi b/.config/sway/rofi/config.rasi new file mode 100644 index 0000000..bae4142 --- /dev/null +++ b/.config/sway/rofi/config.rasi @@ -0,0 +1,98 @@ +configuration{ + modi: "run,drun,window"; + lines: 5; + font: "Iosevka 12"; + show-icons: true; + icon-theme: "Paper Mono"; + terminal: "st"; + drun-display-format: "{icon} {name}"; + location: 0; + disable-history: false; + hide-scrollbar: true; + display-drun: "  Apps "; +} + +@theme "everblush" + +element-text, element-icon , mode-switcher { + background-color: inherit; + text-color: inherit; +} + +window { + height: 360px; + border: 3px; + border-color: @border-col; + background-color: @bg-col; +} + +mainbox { + background-color: @bg-col; +} + +inputbar { + children: [prompt,entry]; + background-color: @bg-col; + border-radius: 5px; + padding: 2px; +} + +prompt { + background-color: @blue; + padding: 6px; + text-color: @bg-col; + border-radius: 3px; + margin: 20px 0px 0px 20px; +} + +textbox-prompt-colon { + expand: false; + str: ":"; +} + +entry { + padding: 6px; + margin: 20px 0px 0px 10px; + text-color: @fg-col; + background-color: @bg-col; +} + +listview { + border: 0px 0px 0px; + padding: 6px 0px 0px; + margin: 10px 0px 0px 20px; + columns: 2; + background-color: @bg-col; +} + +element { + padding: 5px; + background-color: @bg-col; + text-color: @fg-col ; +} + +element-icon { + size: 25px; +} + +element selected { + background-color: @selected-col ; + text-color: @fg-col2 ; +} + +mode-switcher { + spacing: 0; + } + +button { + padding: 10px; + background-color: @bg-col-light; + text-color: @grey; + vertical-align: 0.5; + horizontal-align: 0.5; +} + +button selected { + background-color: @bg-col; + text-color: @blue; +} diff --git a/.config/sway/rofi/launcher1.rasi b/.config/sway/rofi/launcher1.rasi new file mode 100644 index 0000000..120562c --- /dev/null +++ b/.config/sway/rofi/launcher1.rasi @@ -0,0 +1,117 @@ +/* + * + * Original Author : Aditya Shakya + * Author : DN-debug + * + */ + +configuration { + font: "Noto sans 12"; + show-icons: true; + icon-theme: ""; + display-drun: ""; + drun-display-format: "{name}"; + disable-history: true; + fullscreen: false; + hide-scrollbar: true; + sidebar-mode: false; +} + +@import "colors.rasi" + +* { + background-color: @al; + text-color: #eeeeee; +} + + +window { + transparency: "real"; + background-color: #101010A9; + text-color: #eeeeee; + border: 0px; + border-color: @ac; + border-radius: 5px; + height: 60%; + width: 60%; + location: northwest; + x-offset: 20%; + y-offset: 20%; +} + + +entry { + background-color: #000000; + text-color: white; + expand: false; + horizontal-align: 50%; + placeholder: "Type to search"; + margin: 0% 0% 0% 20%; + padding: 1.5% 5.5%; + blink: true; +} + +inputbar { + children: [ entry ]; + background-color: #00000000; + text-color: @bg; + expand: false; + border: 0% 0% 0% 0%; + border-radius: 0px; + border-color: @ac; + margin: 0% 0% 0% 0%; + padding: 1.5%; +} + +listview { + background-color: @al; + padding: 0px; + columns: 5; + lines: 5; + spacing: 0%; + cycle: false; + dynamic: true; + layout: vertical; +} + +mainbox { + background-color: @al; + border: 0% 0% 0% 0%; + border-radius: 0% 0% 0% 0%; + border-color: @al; + children: [ inputbar, listview ]; + spacing: 0%; + padding: 0%; +} + +element { + background-color: @al; + text-color: #eeeeee; + orientation: horizontal; + border-radius: 5%; + padding: 2% 1% 2% 1%; +} + +element-icon { + size: 48px; + border: 0px; +} + +element-text { + expand: true; + horizontal-align: 0.5; + vertical-align: 0.5; + margin: 0.5% 0.5% -0.5% 0.5%; +} + +element selected { + background-color: @sa; + text-color: #ffffff; + border: 0% 0% 0% 0%; + border-radius: 12px; + border-color: @al; +} + +element-text selected { + text-color: @ac; +} diff --git a/.config/sway/rofi/launcher2.rasi b/.config/sway/rofi/launcher2.rasi new file mode 100644 index 0000000..011e631 --- /dev/null +++ b/.config/sway/rofi/launcher2.rasi @@ -0,0 +1,117 @@ +/* + * + * Original Author : Aditya Shakya + * Author : DN-debug + * + */ + +configuration { + font: "Noto sans 12"; + show-icons: true; + icon-theme: ""; + display-drun: ""; + drun-display-format: "{name}"; + disable-history: true; + fullscreen: false; + hide-scrollbar: true; + sidebar-mode: false; +} + +@import "colors.rasi" + +* { + background-color: @al; + text-color: #eeeeee; +} + + +window { + transparency: "real"; + background-color: #101010A9; + text-color: #eeeeee; + border: 0px; + border-color: @ac; + border-radius: 5px; + height: 90%; + width: 96%; + location: northwest; + x-offset: 2%; + y-offset: 5%; +} + + +entry { + background-color: #000000; + text-color: white; + expand: false; + horizontal-align: 50%; + placeholder: "Type to search"; + margin: 0% 0% 0% 37%; + padding: 1.5% 5.5%; + blink: true; +} + +inputbar { + children: [ entry ]; + background-color: #00000000; + text-color: @bg; + expand: false; + border: 0% 0% 0% 0%; + border-radius: 0px; + border-color: @ac; + margin: 0% 0% 0% 0%; + padding: 1.5%; +} + +listview { + background-color: @al; + padding: 0px; + columns: 5; + lines: 5; + spacing: 0%; + cycle: false; + dynamic: true; + layout: vertical; +} + +mainbox { + background-color: @al; + border: 0% 0% 0% 0%; + border-radius: 0% 0% 0% 0%; + border-color: @al; + children: [ inputbar, listview ]; + spacing: 0%; + padding: 0%; +} + +element { + background-color: @al; + text-color: #eeeeee; + orientation: horizontal; + border-radius: 5%; + padding: 2% 1% 2% 1%; +} + +element-icon { + size: 48px; + border: 0px; +} + +element-text { + expand: true; + horizontal-align: 0.5; + vertical-align: 0.5; + margin: 0.5% 0.5% -0.5% 0.5%; +} + +element selected { + background-color: @sa; + text-color: #ffffff; + border: 0% 0% 0% 0%; + border-radius: 12px; + border-color: @al; +} + +element-text selected { + text-color: @ac; +} diff --git a/.config/sway/scripts/clamshell.sh b/.config/sway/scripts/clamshell.sh new file mode 100755 index 0000000..96a494b --- /dev/null +++ b/.config/sway/scripts/clamshell.sh @@ -0,0 +1,7 @@ +#!/usr/bin/bash +# change output +if cat /proc/acpi/button/lid/LID/state | grep -q open; then + swaymsg output enable +else + swaymsg output disable +fi diff --git a/.config/sway/scripts/gtkthemes b/.config/sway/scripts/gtkthemes new file mode 100755 index 0000000..3dda94f --- /dev/null +++ b/.config/sway/scripts/gtkthemes @@ -0,0 +1,31 @@ +#!/usr/bin/env bash + +## Copyright (C) 2020-2022 Aditya Shakya +## Everyone is permitted to copy and distribute copies of this file under GNU-GPL3 + +## Set GTK Themes, Icons, Cursor and Fonts + +# you can set your icons, themes and cursor via +# dconf editor + +# cursor is also in wayfire.ini + +# /org/gnome/desktop/interface + +# or run these commands + +# https://github.com/WayfireWM/wayfire/wiki/Tips-&-Tricks#gtk-theme-not-working + +# usage: import-gsettings +config="${XDG_CONFIG_HOME:-$HOME/.config}/gtk-3.0/settings.ini" +if [ ! -f "$config" ]; then exit 1; fi + +gnome_schema="org.gnome.desktop.interface" +gtk_theme="$(grep 'gtk-theme-name' "$config" | sed 's/.*\s*=\s*//')" +icon_theme="$(grep 'gtk-icon-theme-name' "$config" | sed 's/.*\s*=\s*//')" +cursor_theme="$(grep 'gtk-cursor-theme-name' "$config" | sed 's/.*\s*=\s*//')" +font_name="$(grep 'gtk-font-name' "$config" | sed 's/.*\s*=\s*//')" +gsettings set "$gnome_schema" gtk-theme "$gtk_theme" +gsettings set "$gnome_schema" icon-theme "$icon_theme" +gsettings set "$gnome_schema" cursor-theme "$cursor_theme" +gsettings set "$gnome_schema" font-name "$font_name" diff --git a/.config/sway/scripts/import-gsettings b/.config/sway/scripts/import-gsettings new file mode 100755 index 0000000..e1257df --- /dev/null +++ b/.config/sway/scripts/import-gsettings @@ -0,0 +1,15 @@ +#!/bin/sh + +# usage: import-gsettings +config="${XDG_CONFIG_HOME:-$HOME/.config}/gtk-3.0/settings.ini" +if [ ! -f "$config" ]; then exit 1; fi + +gnome_schema="org.gnome.desktop.interface" +gtk_theme="$(grep 'gtk-theme-name' "$config" | cut -d'=' -f2)" +icon_theme="$(grep 'gtk-icon-theme-name' "$config" | cut -d'=' -f2)" +cursor_theme="$(grep 'gtk-cursor-theme-name' "$config" | cut -d'=' -f2)" +font_name="$(grep 'gtk-font-name' "$config" | cut -d'=' -f2)" +gsettings set "$gnome_schema" gtk-theme "$gtk_theme" +gsettings set "$gnome_schema" icon-theme "$icon_theme" +gsettings set "$gnome_schema" cursor-theme "$cursor_theme" +gsettings set "$gnome_schema" font-name "$font_name" diff --git a/.config/sway/scripts/light.sh b/.config/sway/scripts/light.sh new file mode 100755 index 0000000..af4d6ed --- /dev/null +++ b/.config/sway/scripts/light.sh @@ -0,0 +1,6 @@ +#!/bin/sh +# install wlsunset +CONTENT=$(curl -s https://freegeoip.app/json/) +longitude=$(echo $CONTENT | jq .longitude) +latitude=$(echo $CONTENT | jq .latitude) +wlsunset -l $latitude -L $longitude diff --git a/.config/sway/scripts/lockman.sh b/.config/sway/scripts/lockman.sh new file mode 100755 index 0000000..0ebafbc --- /dev/null +++ b/.config/sway/scripts/lockman.sh @@ -0,0 +1,9 @@ +#!/bin/sh +# Times the screen off and puts it to background +swayidle \ + timeout 5 'swaymsg "output * dpms off"' \ + resume 'swaymsg "output * dpms on"' & +# Locks the screen immediately +swaylock -C ~/.config/sway/swaylock/config +# Kills last background task so idle timer doesn't keep running +kill %% diff --git a/.config/sway/scripts/ricing b/.config/sway/scripts/ricing new file mode 100755 index 0000000..6697b4f --- /dev/null +++ b/.config/sway/scripts/ricing @@ -0,0 +1,8 @@ +#!/bin/sh + +gsettings set org.gnome.desktop.interface gtk-theme Arc-Dark +gsettings set org.gnome.desktop.interface icon-theme a-candy-beauty-icon-theme +gsettings set org.gnome.desktop.interface cursor-theme Bibata-Modern-Ice +gsettings set org.gnome.desktop.interface font-name "Noto Sans 11" +gsettings set org.gnome.desktop.interface document-font-name "Noto Sans 11" +gsettings set org.gnome.desktop.interface font-hinting slight \ No newline at end of file diff --git a/.config/sway/scripts/statusbar b/.config/sway/scripts/statusbar new file mode 100755 index 0000000..a72816e --- /dev/null +++ b/.config/sway/scripts/statusbar @@ -0,0 +1,19 @@ +#!/usr/bin/env bash + +## Copyright (C) 2020-2022 Aditya Shakya +## Everyone is permitted to copy and distribute copies of this file under GNU-GPL3 + +## launch waybar with alt config + +# Terminate already running bar instances +killall -q waybar + +# Wait until the processes have been shut down +while pgrep -x waybar >/dev/null; do sleep 1; done + +CONFIG="$HOME/.config/sway/waybar/config.ini" +STYLE="$HOME/.config/sway/waybar/style.css" + +if [[ ! `pidof waybar` ]]; then + waybar --bar main-bar --log-level error --config ${CONFIG} --style ${STYLE} & +fi diff --git a/.config/sway/scripts/wkill.sh b/.config/sway/scripts/wkill.sh new file mode 100755 index 0000000..583c270 --- /dev/null +++ b/.config/sway/scripts/wkill.sh @@ -0,0 +1,4 @@ +#!/bin/sh + +FOCUSED_APP_ID=$(swaymsg -t get_tree | jq '.. | select(.type?) | select(.focused==true).pid') +kill -9 $FOCUSED_APP_ID diff --git a/.config/sway/swaylock/config b/.config/sway/swaylock/config new file mode 100644 index 0000000..0efa2a4 --- /dev/null +++ b/.config/sway/swaylock/config @@ -0,0 +1,25 @@ +# indicator +# no-unlock-indicator +# daemonize +indicator-caps-lock +# datestr=%A +image=$HOME/.config/sway/swaylock/swaylock.jpg +scaling=fill +font=Noto Sans +font-size=20 + + +# Ring +indicator-radius=360 +# line-uses-ring +line-color=#3b4252 +text-color=#d8dee9 +inside-color=#2e344098 +inside-ver-color=#5e81ac +line-ver-color=#5e81ac +ring-ver-color=#5e81ac98 +ring-color=#4c566a +key-hl-color=#5e81ac +separator-color=#4c566a +layout-text-color=#eceff4 +line-wrong-color=#d08770 diff --git a/.config/sway/swaylock/swaylock.jpg b/.config/sway/swaylock/swaylock.jpg new file mode 100644 index 0000000..471b954 Binary files /dev/null and b/.config/sway/swaylock/swaylock.jpg differ diff --git a/.config/sway/waybar/config.ini b/.config/sway/waybar/config.ini new file mode 100755 index 0000000..a3c41c1 --- /dev/null +++ b/.config/sway/waybar/config.ini @@ -0,0 +1,150 @@ +// https://github.com/Alexays/Waybar/wiki +{ + "layer": "bottom", // Waybar at top layer + "position": "top", // Waybar position (top|bottom|left|right) + "height": 24, + //"width": 1350, // Waybar width + // Choose the order of the modules idle_inhibitor + "modules-left": ["custom/launcher","sway/workspaces", "sway/mode", "sway/window"], + "modules-right": ["backlight", "cpu", "memory", "battery", "pulseaudio", "idle_inhibitor", "clock","tray", "custom/keybindings", "custom/archlinuxlogout"], + + // Modules configuration + + "sway/workspaces": { + "disable-scroll": false, + //"all-outputs": true, + "format": "{icon}", + "format-icons": { + "3": "3", + "4": "4", + "5": "5", + "6": "6", + "7": "7", + "8": "8", + "9": "9", + "10": "10", + } + }, + "sway/mode": { + "format": "{}" + }, + "sway/window": { + "format": "{}" + }, + "idle_inhibitor": { + "format": "{icon}", + "format-icons": { + "activated": "", + "deactivated": "" + } + }, + "tray": { + "icon-size": 14, + "spacing": 5 + }, + "clock": { + "tooltip-format": "{:%A %B %d %Y | %H:%M}", + "format": " {:%a %d %b %I:%M %p}", //12 hour format + //"format": " {:%a %d %b %H:%M}", //24 hour format + "format-alt": " {:%d/%m/%Y %H:%M:%S}", + //"timezones": [ "$TZ" ], + //"max-length": 200 + "interval": 1 + }, + "cpu": { + "format": "cpu: {usage: >3}%", + "on-click": "alacritty -e bashtop" + }, + "memory": { + "format": "mem: {: >3}%", + "on-click": "alacritty -e bashtop" + }, + "temperature": { + // "thermal-zone": 2, + // "hwmon-path": "/sys/class/hwmon/hwmon2/temp1_input", + "critical-threshold": 80, + // "format-critical": "{temperatureC}°C ", + "format": "{temperatureC}°C " + }, + "backlight": { + // "device": "acpi_video1", + "format": "{icon} {percent: >3}%", + "format-icons": ["", ""], + "on-scroll-down": "brightnessctl -c backlight set 5%-", + "on-scroll-up": "brightnessctl -c backlight set +5%" + }, + "battery": { + "states": { + // "good": 95, + "warning": 30, + "critical": 15 + }, + "format": "{icon} {capacity: >3}%", + // "format-good": "", // An empty format will hide the module + // "format-full": "", + "format-icons": ["", "", "", "", ""] + //"format-icons": ["", "", "", "", "", "", "", "", "", ""] + }, + "network": { + // "interface": "wlp2s0", // (Optional) To force the use of this interface + "format": "⚠ Disabled", + "format-wifi": " {essid}", + "format-ethernet": " {ifname}: {ipaddr}/{cidr}", + "format-disconnected": "⚠ Disconnected", + "on-click": "alacritty -e nmtui" + }, + "pulseaudio": { + "scroll-step": 5, + "format": "{icon} {volume: >3}%", + "format-bluetooth": "{icon} {volume: >3}%", + "format-muted":"󰖁 muted", + "format-icons": { + "headphones": "󰕾", + "handsfree": "󰕾", + "headset": "󰕾", + "phone": "", + "portable": "", + "car": "", + "default": ["󰕾", "󰕾"] + }, + "on-click": "pavucontrol" + }, + "custom/pacman": { + "format": " {}", + "interval": 7200, // every two hours + "exec": "i=$(checkupdates); echo \"$i\" |wc -l; echo \"$i\" |column -t |tr '\n' '\r'", // # of updates and tooltip details + "exec-if": "exit 0", // always run; consider advanced run conditions + "on-click": "alacritty -e sudo pacman -Syu", // update system + "signal": 8 + }, + "custom/power": { + "format":" ⏻ ", + "on-click": "nwg-bar", + "tooltip": false, + }, + "custom/archlinuxlogout": { + "format":" ⏻ ", + "on-click": "archlinux-logout", + "tooltip": false, + }, + "custom/keyboard-layout": { + "exec": "swaymsg -t get_inputs | grep -m1 'xkb_active_layout_name' | cut -d '\"' -f4", + // Interval set only as a fallback, as the value is updated by signal + "interval": 30, + "format": " {}", // Icon: keyboard + // Signal sent by Sway key binding (~/.config/sway/key-bindings) + "signal": 1, // SIGHUP + "tooltip": false, + "on-click": "~/.config/waybar/scripts/keyhint", +}, + "custom/keybindings": { + "format":"  ", + "tooltip": false, + "on-click": "~/.config/sway/waybar/scripts/keyhint", +}, + "custom/launcher": { + "format":" ", + "on-click": "exec nwg-drawer -c 7 -is 70 -spacing 23", + "tooltip": false, +}, +} diff --git a/.config/sway/waybar/scripts/check_updates b/.config/sway/waybar/scripts/check_updates new file mode 100755 index 0000000..e050f40 --- /dev/null +++ b/.config/sway/waybar/scripts/check_updates @@ -0,0 +1,3 @@ +#!/bin/bash +i="$(checkupdates)" +printf "%b%b" "$i" "${i:+\n}" |wc -l; echo "$i" |column -t #|tr '\n' '\r' diff --git a/.config/sway/waybar/scripts/keyhint b/.config/sway/waybar/scripts/keyhint new file mode 100755 index 0000000..fa570c6 --- /dev/null +++ b/.config/sway/waybar/scripts/keyhint @@ -0,0 +1,2 @@ +#!/bin/sh +kitty -e micro ~/.config/sway/cheatsheet.md diff --git a/.config/sway/waybar/style.css b/.config/sway/waybar/style.css new file mode 100644 index 0000000..9bbe76a --- /dev/null +++ b/.config/sway/waybar/style.css @@ -0,0 +1,195 @@ +/* ============================================================================= + * + * Waybar configuration + * + * Configuration reference: https://github.com/Alexays/Waybar/wiki/Configuration + * + * =========================================================================== */ + +/* ----------------------------------------------------------------------------- + * Keyframes + * -------------------------------------------------------------------------- */ + + +/* +Polar Night +nord0 #2e3440 +nord1 #3b4252 +nord2 #434c5e +nord3 #4c566a +Snow Storm +nord4 #d8dee9 +nord5 #e5e9f0 +nord6 #eceff4 +Frost +nord7 #8fbcbb +nord8 #88c0d0 +nord9 #81a1c1 +nord10 #5e81ac +Aurora +nord11 #bf616a +nord12 #d08770 +nord13 #ebcb8b +nord14 #a3be8c +nord15 #b48ead +*/ + +/* ----------------------------------------------------------------------------- + * Base styles + * -------------------------------------------------------------------------- */ + +/* Reset all styles */ + +* { + color: #eceff4; + border: 0; + border-radius: 0; + padding: 0 0; + font-family:Noto Sans; + font-size: 12px; + margin-right: 5px; + margin-left: 5px; + padding-bottom:3px; + } + +window#waybar { + /* background:#2e3440;*/ + background:rgba(33, 33, 33, 0.8); +} + +#workspaces button { + padding: 2px 0px; + border-bottom: 2px; + color: #eceff4; + border-color: #d8dee9; + border-style: solid; + margin-top:2px; +} + +#workspaces button.focused { + border-color: #81a1c1; +} + +#mode { + color: #ebcb8b; +} + +#clock, #battery, #cpu, #memory,#idle_inhibitor, #temperature,#custom-keyboard-layout, #backlight, #network, #pulseaudio, #mode, #tray, #window,#custom-launcher,#custom-power,#custom-pacman { + padding: 0 3px; + border-bottom: 2px; + border-style: solid; +} + +/* ----------------------------------------------------------------------------- + * Module styles + * -------------------------------------------------------------------------- */ + + +#clock { + color:#a3be8c; +} + +#backlight { + color: #ebcb8b; +} + +#battery { + color: #d8dee9; +} + +#battery.charging { + color: #81a1c1; +} + +@keyframes blink { + to { + color: #4c566a; + background-color: #eceff4; + } +} + +#battery.critical:not(.charging) { + background: #bf616a; + color: #eceff4; + animation-name: blink; + animation-duration: 0.5s; + animation-timing-function: linear; + animation-iteration-count: infinite; + animation-direction: alternate; +} + +#cpu { + color:#a3be8c ; +} + +#memory { + color: #d3869b; +} + +#network.disabled { + color:#bf616a; +} + +#network{ + color:#a3be8c; +} + +#network.disconnected { + color: #bf616a; +} + +#pulseaudio { + color: #b48ead; +} + +#pulseaudio.muted { + color: #3b4252; +} + +#temperature { + color: #8fbcbb; +} + +#temperature.critical { + color: #bf616a; +} + +#idle_inhibitor { + color: #ebcb8b; +} + +#tray { +} + +#custom-launcher,#custom-power,#custom-archlinuxlogout{ + border-style: hidden; + margin-top:2px; + font-size: 20px; +} + +#custom-archlinuxlogout{ + border-style: hidden; + margin-top:2px; + font-size: 20px; +} + +#custom-keybindings{ + border-style: hidden; + margin-top:2px; + font-size: 20px; +} + +#window{ + border-style: hidden; + margin-top:1px; +} +#mode{ + margin-bottom:3px; +} + +#custom-keyboard-layout{ + color:#d08770; +} + + + diff --git a/.screenrc b/.screenrc new file mode 100644 index 0000000..ca6561d --- /dev/null +++ b/.screenrc @@ -0,0 +1,153 @@ +# +# Example of a user's .screenrc file +# + +# This is how one can set a reattach password: +# password ODSJQf.4IJN7E # "1234" + +# no annoying audible bell, please +vbell on + +# detach on hangup +autodetach on + +# don't display the copyright page +startup_message off + +# emulate .logout message +pow_detach_msg "Screen session of \$LOGNAME \$:cr:\$:nl:ended." + +# advertise hardstatus support to $TERMCAP +# termcapinfo * '' 'hs:ts=\E_:fs=\E\\:ds=\E_\E\\' + +# make the shell in every window a login shell +#shell -$SHELL + +# autoaka testing +# shellaka '> |tcsh' +# shellaka '$ |sh' + +# set every new windows hardstatus line to somenthing descriptive +# defhstatus "screen: ^En (^Et)" + +defscrollback 1000 + +# don't kill window after the process died +# zombie "^[" + +# enable support for the "alternate screen" capability in all windows +# altscreen on + +################ +# +# xterm tweaks +# + +#xterm understands both im/ic and doesn't have a status line. +#Note: Do not specify im and ic in the real termcap/info file as +#some programs (e.g. vi) will not work anymore. +termcap xterm hs@:cs=\E[%i%d;%dr:im=\E[4h:ei=\E[4l +terminfo xterm hs@:cs=\E[%i%p1%d;%p2%dr:im=\E[4h:ei=\E[4l + +#80/132 column switching must be enabled for ^AW to work +#change init sequence to not switch width +termcapinfo xterm Z0=\E[?3h:Z1=\E[?3l:is=\E[r\E[m\E[2J\E[H\E[?7h\E[?1;4;6l + +# Make the output buffer large for (fast) xterms. +#termcapinfo xterm* OL=10000 +termcapinfo xterm* OL=100 + +# tell screen that xterm can switch to dark background and has function +# keys. +termcapinfo xterm 'VR=\E[?5h:VN=\E[?5l' +termcapinfo xterm 'k1=\E[11~:k2=\E[12~:k3=\E[13~:k4=\E[14~' +termcapinfo xterm 'kh=\EOH:kI=\E[2~:kD=\E[3~:kH=\EOF:kP=\E[5~:kN=\E[6~' + +# special xterm hardstatus: use the window title. +termcapinfo xterm 'hs:ts=\E]2;:fs=\007:ds=\E]2;screen\007' + +#terminfo xterm 'vb=\E[?5h$<200/>\E[?5l' +termcapinfo xterm 'vi=\E[?25l:ve=\E[34h\E[?25h:vs=\E[34l' + +# emulate part of the 'K' charset +termcapinfo xterm 'XC=K%,%\E(B,[\304,\\\\\326,]\334,{\344,|\366,}\374,~\337' + +# xterm-52 tweaks: +# - uses background color for delete operations +termcapinfo xterm* be + +################ +# +# wyse terminals +# + +#wyse-75-42 must have flow control (xo = "terminal uses xon/xoff") +#essential to have it here, as this is a slow terminal. +termcapinfo wy75-42 xo:hs@ + +# New termcap sequences for cursor application mode. +termcapinfo wy* CS=\E[?1h:CE=\E[?1l:vi=\E[?25l:ve=\E[?25h:VR=\E[?5h:VN=\E[?5l:cb=\E[1K:CD=\E[1J + +################ +# +# other terminals +# + +# make hp700 termcap/info better +termcapinfo hp700 'Z0=\E[?3h:Z1=\E[?3l:hs:ts=\E[62"p\E[0$~\E[2$~\E[1$}:fs=\E[0}\E[61"p:ds=\E[62"p\E[1$~\E[61"p:ic@' + +# Extend the vt100 desciption by some sequences. +termcap vt100* ms:AL=\E[%dL:DL=\E[%dM:UP=\E[%dA:DO=\E[%dB:LE=\E[%dD:RI=\E[%dC +terminfo vt100* ms:AL=\E[%p1%dL:DL=\E[%p1%dM:UP=\E[%p1%dA:DO=\E[%p1%dB:LE=\E[%p1%dD:RI=\E[%p1%dC +termcapinfo linux C8 +# old rxvt versions also need this +# termcapinfo rxvt C8 + + +################ +# +# keybindings +# + +#remove some stupid / dangerous key bindings +bind k +bind ^k +bind . +bind ^\ +bind \\ +bind ^h +bind h +#make them better +bind 'K' kill +bind 'I' login on +bind 'O' login off +bind '}' history + +# Yet another hack: +# Prepend/append register [/] to the paste if ^a^] is pressed. +# This lets me have autoindent mode in vi. +register [ "\033:se noai\015a" +register ] "\033:se ai\015a" +bind ^] paste [.] + +################ +# +# default windows +# + +# screen -t local 0 +# screen -t mail 1 mutt +# screen -t 40 2 rlogin server + +# caption always "%3n %t%? @%u%?%? [%h]%?%=%c" +# hardstatus alwaysignore +# hardstatus alwayslastline "%Lw" + +# bind = resize = +# bind + resize +1 +# bind - resize -1 +# bind _ resize max +# +# defnonblock 1 +# blankerprg rain -d 100 +# idle 30 blanker diff --git a/.zshrc b/.zshrc new file mode 100644 index 0000000..5f74e46 --- /dev/null +++ b/.zshrc @@ -0,0 +1,530 @@ +### +# If you come from bash you might have to change your $PATH. +# export PATH=$HOME/bin:/usr/local/bin:$PATH + +# Path to your oh-my-zsh installation. +#installation via script from github +#export ZSH="/home/$USER/.oh-my-zsh" +#installation via paru -S oh-my-zsh-git +export ZSH=/usr/share/oh-my-zsh/ + +# Set name of the theme to load --- if set to "random", it will +# load a random theme each time oh-my-zsh is loaded, in which case, +# to know which specific one was loaded, run: echo $RANDOM_THEME +# See https://github.com/ohmyzsh/ohmyzsh/wiki/Themes +# if you installed the package oh-my-zsh-powerline-theme-git then you type here "powerline" as zsh theme +ZSH_THEME="random" + +# Set list of themes to pick from when loading at random +# Setting this variable when ZSH_THEME=random will cause zsh to load +# a theme from this variable instead of looking in ~/.oh-my-zsh/themes/ +# If set to an empty array, this variable will have no effect. + +# ZSH_THEME_RANDOM_CANDIDATES=( "robbyrussell" "agnoster" ) + +# ZSH_THEME_RANDOM_IGNORED=(pygmalion tjkirch_mod) + +# Uncomment the following line to use case-sensitive completion. +# CASE_SENSITIVE="true" + +# Uncomment the following line to use hyphen-insensitive completion. +# Case-sensitive completion must be off. _ and - will be interchangeable. +# HYPHEN_INSENSITIVE="true" + +# Uncomment the following line to disable bi-weekly auto-update checks. +# DISABLE_AUTO_UPDATE="true" + +# Uncomment the following line to automatically update without prompting. +# DISABLE_UPDATE_PROMPT="true" + +# Uncomment the following line to change how often to auto-update (in days). +# export UPDATE_ZSH_DAYS=13 + +# Uncomment the following line if pasting URLs and other text is messed up. +# DISABLE_MAGIC_FUNCTIONS=true + +# Uncomment the following line to disable colors in ls. +# DISABLE_LS_COLORS="true" + +# Uncomment the following line to disable auto-setting terminal title. +# DISABLE_AUTO_TITLE="true" + +# Uncomment the following line to enable command auto-correction. +# ENABLE_CORRECTION="true" + +# Uncomment the following line to display red dots whilst waiting for completion. +# COMPLETION_WAITING_DOTS="true" + +# Uncomment the following line if you want to disable marking untracked files +# under VCS as dirty. This makes repository status check for large repositories +# much, much faster. +# DISABLE_UNTRACKED_FILES_DIRTY="true" + +# Uncomment the following line if you want to change the command execution time +# stamp shown in the history command output. +# You can set one of the optional three formats: +# "mm/dd/yyyy"|"dd.mm.yyyy"|"yyyy-mm-dd" +# or set a custom format using the strftime function format specifications, +# see 'man strftime' for details. +# HIST_STAMPS="mm/dd/yyyy" + +# Would you like to use another custom folder than $ZSH/custom? +# ZSH_CUSTOM=/path/to/new-custom-folder + +# Which plugins would you like to load? +# Standard plugins can be found in ~/.oh-my-zsh/plugins/* +# Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/ +# Example format: plugins=(rails git textmate ruby lighthouse) +# Add wisely, as too many plugins slow down shell startup. +plugins=(git) + +if [ -f $ZSH/oh-my-zsh.sh ]; then + source $ZSH/oh-my-zsh.sh +fi + +# User configuration + +# export MANPATH="/usr/local/man:$MANPATH" + +# You may need to manually set your language environment +# export LANG=en_US.UTF-8 + +# Preferred editor for local and remote sessions +# if [[ -n $SSH_CONNECTION ]]; then +# export EDITOR='vim' +# else +# export EDITOR='mvim' +# fi + +# Compilation flags +# export ARCHFLAGS="-arch x86_64" + + +#### ARCOLINUX SETTINGS #### +export PAGER='most' + +if [ -f /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh ]; then + source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh +fi + +setopt GLOB_DOTS +#share commands between terminal instances or not +unsetopt SHARE_HISTORY +#setopt SHARE_HISTORY + +# If not running interactively, don't do anything +[[ $- != *i* ]] && return + +export HISTCONTROL=ignoreboth:erasedups + +# Make nano the default editor + +export EDITOR='nano' +export VISUAL='nano' + +#PS1='[\u@\h \W]\$ ' + +if [ -d "$HOME/.bin" ] ; + then PATH="$HOME/.bin:$PATH" +fi + +if [ -d "$HOME/.local/bin" ] ; + then PATH="$HOME/.local/bin:$PATH" +fi + +### ALIASES ### + +#list +alias ls='ls --color=auto' +alias la='ls -a' +alias ll='ls -alFh' +alias l='ls' +alias l.="ls -A | egrep '^\.'" +alias listdir="ls -d */ > list" + +#pacman +alias sps='sudo pacman -S' +alias spr='sudo pacman -R' +alias sprs='sudo pacman -Rs' +alias sprdd='sudo pacman -Rdd' +alias spqo='sudo pacman -Qo' +alias spsii='sudo pacman -Sii' + +# show the list of packages that need this package - depends mpv as example +function_depends() { + search=$(echo "$1") + sudo pacman -Sii $search | grep "Required" | sed -e "s/Required By : //g" | sed -e "s/ /\n/g" + } + +alias depends='function_depends' + +#fix obvious typo's +alias cd..='cd ..' +alias pdw='pwd' +alias udpate='sudo pacman -Syyu' +alias upate='sudo pacman -Syyu' +alias updte='sudo pacman -Syyu' +alias updqte='sudo pacman -Syyu' +alias upqll='paru -Syu --noconfirm' +alias upal='paru -Syu --noconfirm' + +## Colorize the grep command output for ease of use (good for log files)## +alias grep='grep --color=auto' +alias egrep='egrep --color=auto' +alias fgrep='fgrep --color=auto' + +#readable output +alias df='df -h' + +#keyboard +alias give-me-azerty-be="sudo localectl set-x11-keymap be" +alias give-me-qwerty-us="sudo localectl set-x11-keymap us" + +#setlocale +alias setlocale="sudo localectl set-locale LANG=en_US.UTF-8" +alias setlocales="sudo localectl set-x11-keymap be && sudo localectl set-locale LANG=en_US.UTF-8" + +#pacman unlock +alias unlock="sudo rm /var/lib/pacman/db.lck" +alias rmpacmanlock="sudo rm /var/lib/pacman/db.lck" + +#arcolinux logout unlock +alias rmlogoutlock="sudo rm /tmp/arcologout.lock" + +#which graphical card is working +alias whichvga="/usr/local/bin/arcolinux-which-vga" + +#free +alias free="free -mt" + +#continue download +alias wget="wget -c" + +#userlist +alias userlist="cut -d: -f1 /etc/passwd | sort" + +#merge new settings +alias merge="xrdb -merge ~/.Xresources" + +# Aliases for software managment +# pacman +alias pacman="sudo pacman --color auto" +alias update="sudo pacman -Syyu" +alias upd="sudo pacman -Syyu" + +# paru as aur helper - updates everything +alias pksyua="paru -Syu --noconfirm" +alias upall="paru -Syu --noconfirm" +alias upa="paru -Syu --noconfirm" + +#ps +alias psa="ps auxf" +alias psgrep="ps aux | grep -v grep | grep -i -e VSZ -e" + +#grub update +alias update-grub="sudo grub-mkconfig -o /boot/grub/grub.cfg" +alias grub-update="sudo grub-mkconfig -o /boot/grub/grub.cfg" +#grub issue 08/2022 +alias install-grub-efi="sudo grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=ArcoLinux" + +#add new fonts +alias update-fc='sudo fc-cache -fv' + +#copy/paste all content of /etc/skel over to home folder - backup of config created - beware +#skel alias has been replaced with a script at /usr/local/bin/skel + +#backup contents of /etc/skel to hidden backup folder in home/user +alias bupskel='cp -Rf /etc/skel ~/.skel-backup-$(date +%Y.%m.%d-%H.%M.%S)' + +#copy shell configs +alias cb='cp /etc/skel/.bashrc ~/.bashrc && echo "Copied."' +alias cz='cp /etc/skel/.zshrc ~/.zshrc && exec zsh' +alias cf='cp /etc/skel/.config/fish/config.fish ~/.config/fish/config.fish && echo "Copied."' + +#switch between bash and zsh +alias tobash="sudo chsh $USER -s /bin/bash && echo 'Now log out.'" +alias tozsh="sudo chsh $USER -s /bin/zsh && echo 'Now log out.'" +alias tofish="sudo chsh $USER -s /bin/fish && echo 'Now log out.'" + +#switch between displaymanager or bootsystem +alias toboot="sudo /usr/local/bin/arcolinux-toboot" +alias togrub="sudo /usr/local/bin/arcolinux-togrub" +alias tolightdm="sudo pacman -S lightdm lightdm-gtk-greeter lightdm-gtk-greeter-settings --noconfirm --needed ; sudo systemctl enable lightdm.service -f ; echo 'Lightm is active - reboot now'" +alias tosddm="sudo pacman -S sddm --noconfirm --needed ; sudo systemctl enable sddm.service -f ; echo 'Sddm is active - reboot now'" +alias toly="sudo pacman -S ly --noconfirm --needed ; sudo systemctl enable ly.service -f ; echo 'Ly is active - reboot now'" +alias togdm="sudo pacman -S gdm --noconfirm --needed ; sudo systemctl enable gdm.service -f ; echo 'Gdm is active - reboot now'" +alias tolxdm="sudo pacman -S lxdm --noconfirm --needed ; sudo systemctl enable lxdm.service -f ; echo 'Lxdm is active - reboot now'" + +# kill commands +# quickly kill conkies +alias kc='killall conky' +# quickly kill polybar +alias kp='killall polybar' +# quickly kill picom +alias kpi='killall picom' + +#hardware info --short +alias hw="hwinfo --short" + +#audio check pulseaudio or pipewire +alias audio="pactl info | grep 'Server Name'" + +#skip integrity check +alias paruskip='paru -S --mflags --skipinteg' +alias yayskip='yay -S --mflags --skipinteg' +alias trizenskip='trizen -S --skipinteg' + +#check vulnerabilities microcode +alias microcode='grep . /sys/devices/system/cpu/vulnerabilities/*' + +#check cpu +alias cpu="cpuid -i | grep uarch | head -n 1" + +#get fastest mirrors in your neighborhood +alias mirror="sudo reflector -f 30 -l 30 --number 10 --verbose --save /etc/pacman.d/mirrorlist" +alias mirrord="sudo reflector --latest 30 --number 10 --sort delay --save /etc/pacman.d/mirrorlist" +alias mirrors="sudo reflector --latest 30 --number 10 --sort score --save /etc/pacman.d/mirrorlist" +alias mirrora="sudo reflector --latest 30 --number 10 --sort age --save /etc/pacman.d/mirrorlist" +#our experimental - best option for the moment +alias mirrorx="sudo reflector --age 6 --latest 20 --fastest 20 --threads 5 --sort rate --protocol https --save /etc/pacman.d/mirrorlist" +alias mirrorxx="sudo reflector --age 6 --latest 20 --fastest 20 --threads 20 --sort rate --protocol https --save /etc/pacman.d/mirrorlist" +alias ram='rate-mirrors --allow-root --disable-comments arch | sudo tee /etc/pacman.d/mirrorlist' +alias rams='rate-mirrors --allow-root --disable-comments --protocol https arch | sudo tee /etc/pacman.d/mirrorlist' + +#mounting the folder Public for exchange between host and guest on virtualbox +alias vbm="sudo /usr/local/bin/arcolinux-vbox-share" + +#enabling vmware services +alias start-vmware="sudo systemctl enable --now vmtoolsd.service" +alias vmware-start="sudo systemctl enable --now vmtoolsd.service" +alias sv="sudo systemctl enable --now vmtoolsd.service" + +#shopt +#shopt -s autocd # change to named directory +#shopt -s cdspell # autocorrects cd misspellings +#shopt -s cmdhist # save multi-line commands in history as single line +#shopt -s dotglob +#shopt -s histappend # do not overwrite history +#shopt -s expand_aliases # expand aliases + +#youtube download +alias yta-aac="yt-dlp --extract-audio --audio-format aac " +alias yta-best="yt-dlp --extract-audio --audio-format best " +alias yta-flac="yt-dlp --extract-audio --audio-format flac " +alias yta-mp3="yt-dlp --extract-audio --audio-format mp3 " +alias ytv-best="yt-dlp -f 'bestvideo[ext=mp4]+bestaudio[ext=m4a]/bestvideo+bestaudio' --merge-output-format mp4 " + +#Recent Installed Packages +alias rip="expac --timefmt='%Y-%m-%d %T' '%l\t%n %v' | sort | tail -200 | nl" +alias riplong="expac --timefmt='%Y-%m-%d %T' '%l\t%n %v' | sort | tail -3000 | nl" + +#iso and version used to install ArcoLinux +alias iso="cat /etc/dev-rel | awk -F '=' '/ISO/ {print $2}'" +alias isoo="cat /etc/dev-rel" + +#Cleanup orphaned packages +alias cleanup='sudo pacman -Rns $(pacman -Qtdq)' + +# This will generate a list of explicitly installed packages +alias list="sudo pacman -Qqe" +#This will generate a list of explicitly installed packages without dependencies +alias listt="sudo pacman -Qqet" +# list of AUR packages +alias listaur="sudo pacman -Qqem" +# add > list at the end to write to a file + +# install packages from list +# pacman -S --needed - < my-list-of-packages.txt + +#clear +alias clean="clear; seq 1 $(tput cols) | sort -R | sparklines | lolcat" + +#search content with ripgrep +alias rg="rg --sort path" + +#get the error messages from journalctl +alias jctl="journalctl -p 3 -xb" + +#nano for important configuration files +#know what you do in these files +alias nlxdm="sudo $EDITOR /etc/lxdm/lxdm.conf" +alias nlightdm="sudo $EDITOR /etc/lightdm/lightdm.conf" +alias npacman="sudo $EDITOR /etc/pacman.conf" +alias ngrub="sudo $EDITOR /etc/default/grub" +alias nconfgrub="sudo $EDITOR /boot/grub/grub.cfg" +alias nmkinitcpio="sudo $EDITOR /etc/mkinitcpio.conf" +alias nmirrorlist="sudo $EDITOR /etc/pacman.d/mirrorlist" +alias narcomirrorlist="sudo $EDITOR /etc/pacman.d/arcolinux-mirrorlist" +alias nsddm="sudo $EDITOR /etc/sddm.conf" +alias nsddmk="sudo $EDITOR /etc/sddm.conf.d/kde_settings.conf" +alias nfstab="sudo $EDITOR /etc/fstab" +alias nnsswitch="sudo $EDITOR /etc/nsswitch.conf" +alias nsamba="sudo $EDITOR /etc/samba/smb.conf" +alias ngnupgconf="sudo $EDITOR /etc/pacman.d/gnupg/gpg.conf" +alias nhosts="sudo $EDITOR /etc/hosts" +alias nhostname="sudo $EDITOR /etc/hostname" +alias nresolv="sudo $EDITOR /etc/resolv.conf" +alias nb="$EDITOR ~/.bashrc" +alias nz="$EDITOR ~/.zshrc" +alias nf="$EDITOR ~/.config/fish/config.fish" +alias nneofetch="$EDITOR ~/.config/neofetch/config.conf" +alias nplymouth="sudo $EDITOR /etc/plymouth/plymouthd.conf" +alias nvconsole="sudo $EDITOR /etc/vconsole.conf" +alias nenvironment="sudo $EDITOR /etc/environment" +alias nloader="sudo $EDITOR /boot/efi/loader/loader.conf" + + +#reading logs with bat +alias lcalamares="bat /var/log/Calamares.log" +alias lpacman="bat /var/log/pacman.log" +alias lxorg="bat /var/log/Xorg.0.log" +alias lxorgo="bat /var/log/Xorg.0.log.old" + +#gpg +#verify signature for isos +alias gpg-check="gpg2 --keyserver-options auto-key-retrieve --verify" +alias fix-gpg-check="gpg2 --keyserver-options auto-key-retrieve --verify" +#receive the key of a developer +alias gpg-retrieve="gpg2 --keyserver-options auto-key-retrieve --receive-keys" +alias fix-gpg-retrieve="gpg2 --keyserver-options auto-key-retrieve --receive-keys" +alias fix-keyserver="[ -d ~/.gnupg ] || mkdir ~/.gnupg ; cp /etc/pacman.d/gnupg/gpg.conf ~/.gnupg/ ; echo 'done'" + +#fixes +alias fix-permissions="sudo chown -R $USER:$USER ~/.config ~/.local" +alias keyfix="/usr/local/bin/arcolinux-fix-pacman-databases-and-keys" +alias key-fix="/usr/local/bin/arcolinux-fix-pacman-databases-and-keys" +alias keys-fix="/usr/local/bin/arcolinux-fix-pacman-databases-and-keys" +alias fixkey="/usr/local/bin/arcolinux-fix-pacman-databases-and-keys" +alias fixkeys="/usr/local/bin/arcolinux-fix-pacman-databases-and-keys" +alias fix-key="/usr/local/bin/arcolinux-fix-pacman-databases-and-keys" +alias fix-keys="/usr/local/bin/arcolinux-fix-pacman-databases-and-keys" +#fix-sddm-config is no longer an alias but an application - part of ATT +#alias fix-sddm-config="/usr/local/bin/arcolinux-fix-sddm-config" +alias fix-pacman-conf="/usr/local/bin/arcolinux-fix-pacman-conf" +alias fix-pacman-keyserver="/usr/local/bin/arcolinux-fix-pacman-gpg-conf" +alias fix-grub="/usr/local/bin/arcolinux-fix-grub" +alias fixgrub="/usr/local/bin/arcolinux-fix-grub" + +#maintenance +alias big="expac -H M '%m\t%n' | sort -h | nl" +alias downgrada="sudo downgrade --ala-url https://ant.seedhost.eu/arcolinux/" + +#hblock (stop tracking with hblock) +#use unhblock to stop using hblock +alias unhblock="hblock -S none -D none" + +#systeminfo +alias probe="sudo -E hw-probe -all -upload" +alias sysfailed="systemctl list-units --failed" + +#shutdown or reboot +alias ssn="sudo shutdown now" +alias sr="reboot" + +#update betterlockscreen images +alias bls="betterlockscreen -u /usr/share/backgrounds/arcolinux/" + +#give the list of all installed desktops - xsessions desktops +alias xd="ls /usr/share/xsessions" +alias xdw="ls /usr/share/wayland-sessions" + +#give a list of the kernels installed +alias kernel="ls /usr/lib/modules" +alias kernels="ls /usr/lib/modules" + +#am I on grub or systemd-boot +alias boot="sudo bootctl status | grep Product" + +# # ex = EXtractor for all kinds of archives +# # usage: ex +ex () +{ + if [ -f $1 ] ; then + case $1 in + *.tar.bz2) tar xjf $1 ;; + *.tar.gz) tar xzf $1 ;; + *.bz2) bunzip2 $1 ;; + *.rar) unrar x $1 ;; + *.gz) gunzip $1 ;; + *.tar) tar xf $1 ;; + *.tbz2) tar xjf $1 ;; + *.tgz) tar xzf $1 ;; + *.zip) unzip $1 ;; + *.Z) uncompress $1;; + *.7z) 7z x $1 ;; + *.deb) ar x $1 ;; + *.tar.xz) tar xf $1 ;; + *.tar.zst) tar xf $1 ;; + *) echo "'$1' cannot be extracted via ex()" ;; + esac + else + echo "'$1' is not a valid file" + fi +} + +#wayland aliases +alias wsimplescreen="wf-recorder -a" +alias wsimplescreenrecorder="wf-recorder -a -c h264_vaapi -C aac -d /dev/dri/renderD128 --file=recording.mp4" + +#btrfs aliases +alias btrfsfs="sudo btrfs filesystem df /" +alias btrfsli="sudo btrfs su li / -t" + +#snapper aliases +alias snapcroot="sudo snapper -c root create-config /" +alias snapchome="sudo snapper -c home create-config /home" +alias snapli="sudo snapper list" +alias snapcr="sudo snapper -c root create" +alias snapch="sudo snapper -c home create" + +#Leftwm aliases +alias lti="leftwm-theme install" +alias ltu="leftwm-theme uninstall" +alias lta="leftwm-theme apply" +alias ltupd="leftwm-theme update" +alias ltupg="leftwm-theme upgrade" + +#arcolinux applications +#att is a symbolic link now +#alias att="archlinux-tweak-tool" +alias adt="arcolinux-desktop-trasher" +alias abl="arcolinux-betterlockscreen" +alias agm="arcolinux-get-mirrors" +alias amr="arcolinux-mirrorlist-rank-info" +alias aom="arcolinux-osbeck-as-mirror" +alias ars="arcolinux-reflector-simple" +alias atm="arcolinux-tellme" +alias avs="arcolinux-vbox-share" +alias awa="arcolinux-welcome-app" + +#git +alias rmgitcache="rm -r ~/.cache/git" +alias grh="git reset --hard" + +#pamac +alias pamac-unlock="sudo rm /var/tmp/pamac/dbs/db.lock" + +#moving your personal files and folders from /personal to ~ +alias personal='cp -Rf /personal/* ~' + +#create a file called .zshrc-personal and put all your personal aliases +#in there. They will not be overwritten by skel. + +[[ -f ~/.zshrc-personal ]] && . ~/.zshrc-personal + +# reporting tools - install when not installed +#neofetch +#screenfetch +#alsi +#paleofetch +#fetch +#hfetch +#sfetch +#ufetch +#ufetch-arco +#pfetch +#sysinfo +#sysinfo-retro +#cpufetch +#colorscript random +#hyfetch