Merge branch 'dev' into prevent-screenshot-stacking
This commit is contained in:
59 files changed
+189
-273
No files matched your search
+6
-4
@@ -4,7 +4,8 @@ OMARCHY_VERSION=$(git -C ~/.local/share/omarchy describe --tags --abbrev=0 2>/de
|
|||||||
PATH="$PATH:$HOME/.local/share/omarchy/bin"
|
PATH="$PATH:$HOME/.local/share/omarchy/bin"
|
||||||
|
|
||||||
show_ascii_art() {
|
show_ascii_art() {
|
||||||
source ~/.local/share/omarchy/ansi.sh
|
clear
|
||||||
|
tte -i ~/.local/share/omarchy/logo.txt --frame-rate 640 expand
|
||||||
echo " $OMARCHY_VERSION"
|
echo " $OMARCHY_VERSION"
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -95,9 +96,10 @@ remove_theme_prompt() {
|
|||||||
|
|
||||||
setup_menu() {
|
setup_menu() {
|
||||||
show_ascii_art
|
show_ascii_art
|
||||||
local menu=("Dropbox" "Docker DBs" "Fingerprint sensor" "Fido2 device" "Back")
|
local menu=("Dropbox" "Steam" "Docker DBs" "Fingerprint sensor" "Fido2 device" "Back")
|
||||||
local commands=(
|
local commands=(
|
||||||
"omarchy-setup-dropbox"
|
"omarchy-setup-dropbox"
|
||||||
|
"omarchy-setup-steam"
|
||||||
"setup_docker_dbs"
|
"setup_docker_dbs"
|
||||||
"omarchy-setup-fingerprint"
|
"omarchy-setup-fingerprint"
|
||||||
"omarchy-setup-fido2"
|
"omarchy-setup-fido2"
|
||||||
@@ -126,10 +128,10 @@ setup_docker_dbs() {
|
|||||||
if [[ -n "$choices" ]]; then
|
if [[ -n "$choices" ]]; then
|
||||||
for db in $choices; do
|
for db in $choices; do
|
||||||
case $db in
|
case $db in
|
||||||
MariaDB) sudo docker run -d --restart unless-stopped -p "127.0.0.1:3306:3306" --name=mariadb11 -e MARIADB_ROOT_PASSWORD= -e MARIADB_ALLOW_EMPTY_ROOT_PASSWORD=true mariadb:11.8 ;;
|
|
||||||
MySQL) sudo docker run -d --restart unless-stopped -p "127.0.0.1:3306:3306" --name=mysql8 -e MYSQL_ROOT_PASSWORD= -e MYSQL_ALLOW_EMPTY_PASSWORD=true mysql:8.4 ;;
|
MySQL) sudo docker run -d --restart unless-stopped -p "127.0.0.1:3306:3306" --name=mysql8 -e MYSQL_ROOT_PASSWORD= -e MYSQL_ALLOW_EMPTY_PASSWORD=true mysql:8.4 ;;
|
||||||
Redis) sudo docker run -d --restart unless-stopped -p "127.0.0.1:6379:6379" --name=redis redis:7 ;;
|
|
||||||
PostgreSQL) sudo docker run -d --restart unless-stopped -p "127.0.0.1:5432:5432" --name=postgres16 -e POSTGRES_HOST_AUTH_METHOD=trust postgres:16 ;;
|
PostgreSQL) sudo docker run -d --restart unless-stopped -p "127.0.0.1:5432:5432" --name=postgres16 -e POSTGRES_HOST_AUTH_METHOD=trust postgres:16 ;;
|
||||||
|
MariaDB) sudo docker run -d --restart unless-stopped -p "127.0.0.1:3306:3306" --name=mariadb11 -e MARIADB_ROOT_PASSWORD= -e MARIADB_ALLOW_EMPTY_ROOT_PASSWORD=true mariadb:11.8 ;;
|
||||||
|
Redis) sudo docker run -d --restart unless-stopped -p "127.0.0.1:6379:6379" --name=redis redis:7 ;;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
|||||||
@@ -2,8 +2,10 @@
|
|||||||
|
|
||||||
# Set recorder based on GPU
|
# Set recorder based on GPU
|
||||||
|
|
||||||
|
OUTPUT_DIR="${OMARCHY_SCREENRECORD_DIR:-$HOME/Videos}"
|
||||||
|
|
||||||
screenrecording() {
|
screenrecording() {
|
||||||
filename="$HOME/Videos/screenrecording-$(date +'%Y-%m-%d_%H-%M-%S').mp4"
|
filename="$OUTPUT_DIR/screenrecording-$(date +'%Y-%m-%d_%H-%M-%S').mp4"
|
||||||
notify-send "Screen recording starting..." -t 1000
|
notify-send "Screen recording starting..." -t 1000
|
||||||
sleep 1
|
sleep 1
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,10 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
|
OUTPUT_DIR="${OMARCHY_SCREENSHOT_DIR:-$HOME/Pictures}"
|
||||||
|
|
||||||
pkill slurp || hyprshot -m ${1:-region} --raw |
|
pkill slurp || hyprshot -m ${1:-region} --raw |
|
||||||
satty --filename - \
|
satty --filename - \
|
||||||
--output-filename ~/Pictures/screenshot-$(date +'%Y-%m-%d_%H-%M-%S').png \
|
--output-filename "$OUTPUT_DIR/screenshot-$(date +'%Y-%m-%d_%H-%M-%S').png" \
|
||||||
--early-exit \
|
--early-exit \
|
||||||
--actions-on-enter save-to-clipboard \
|
--actions-on-enter save-to-clipboard \
|
||||||
--save-after-copy \
|
--save-after-copy \
|
||||||
|
|||||||
Executable
+9
@@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
echo "Adding multilib repository for 32-bit compatibility"
|
||||||
|
sudo sed -i '/^\s*#\[multilib\]/,/^$/{s/^\s*#//}' /etc/pacman.conf
|
||||||
|
sudo pacman -Sy
|
||||||
|
|
||||||
|
echo "Now pick dependencies matching your graphics card"
|
||||||
|
yay -S steam
|
||||||
|
gtk-launch steam >/dev/null 2>&1 &
|
||||||
@@ -12,9 +12,6 @@ REPO_URL="$1"
|
|||||||
THEMES_DIR="$HOME/.config/omarchy/themes"
|
THEMES_DIR="$HOME/.config/omarchy/themes"
|
||||||
THEME_NAME=$(basename "$REPO_URL" .git | sed -E 's/^omarchy-//; s/-theme$//')
|
THEME_NAME=$(basename "$REPO_URL" .git | sed -E 's/^omarchy-//; s/-theme$//')
|
||||||
THEME_PATH="$THEMES_DIR/$THEME_NAME"
|
THEME_PATH="$THEMES_DIR/$THEME_NAME"
|
||||||
THEME_BACKGROUND_PATH="$THEME_PATH/backgrounds"
|
|
||||||
BACKGROUNDS_PATH="$HOME/.config/omarchy/backgrounds"
|
|
||||||
BACKGROUNDS_THEME_PATH="$BACKGROUNDS_PATH/$THEME_NAME"
|
|
||||||
|
|
||||||
# Remove existing theme if present
|
# Remove existing theme if present
|
||||||
if [ -d "$THEME_PATH" ]; then
|
if [ -d "$THEME_PATH" ]; then
|
||||||
@@ -27,10 +24,5 @@ if ! git clone "$REPO_URL" "$THEME_PATH"; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Link backgrounds if present
|
|
||||||
if [ -d $THEME_BACKGROUND_PATH ]; then
|
|
||||||
ln -snf $THEME_BACKGROUND_PATH $BACKGROUNDS_THEME_PATH
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Apply the new theme with omarchy-theme-set
|
# Apply the new theme with omarchy-theme-set
|
||||||
omarchy-theme-set $THEME_NAME
|
omarchy-theme-set $THEME_NAME
|
||||||
@@ -10,6 +10,7 @@ ansi_art=' ▄██████▄ ▄▄▄▄███▄▄▄▄
|
|||||||
▀██████▀ ▀█ ███ █▀ ███ █▀ ███ ███ ████████▀ ███ █▀ ▀█████▀
|
▀██████▀ ▀█ ███ █▀ ███ █▀ ███ ███ ████████▀ ███ █▀ ▀█████▀
|
||||||
███ ███ '
|
███ ███ '
|
||||||
|
|
||||||
|
clear
|
||||||
echo -e "\n$ansi_art\n"
|
echo -e "\n$ansi_art\n"
|
||||||
|
|
||||||
sudo pacman -Sy --noconfirm --needed git
|
sudo pacman -Sy --noconfirm --needed git
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ general {
|
|||||||
lock_cmd = pidof hyprlock || hyprlock # avoid starting multiple hyprlock instances.
|
lock_cmd = pidof hyprlock || hyprlock # avoid starting multiple hyprlock instances.
|
||||||
before_sleep_cmd = loginctl lock-session # lock before suspend.
|
before_sleep_cmd = loginctl lock-session # lock before suspend.
|
||||||
after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key twice to turn on the display.
|
after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key twice to turn on the display.
|
||||||
|
on_unlock_cmd = pkill -SIGUSR2 waybar # prevent stacking of waybar when waking
|
||||||
}
|
}
|
||||||
|
|
||||||
listener {
|
listener {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ bind = SUPER, W, killactive,
|
|||||||
bind = SUPER, J, togglesplit, # dwindle
|
bind = SUPER, J, togglesplit, # dwindle
|
||||||
bind = SUPER, P, pseudo, # dwindle
|
bind = SUPER, P, pseudo, # dwindle
|
||||||
bind = SUPER, V, togglefloating,
|
bind = SUPER, V, togglefloating,
|
||||||
bind = , F11, fullscreen, 0
|
bind = SHIFT, F11, fullscreen, 0
|
||||||
|
|
||||||
# Move focus with mainMod + arrow keys
|
# Move focus with mainMod + arrow keys
|
||||||
bind = SUPER, left, movefocus, l
|
bind = SUPER, left, movefocus, l
|
||||||
|
|||||||
@@ -15,7 +15,8 @@ windowrule = float, class:xdg-desktop-portal-gtk, title:^(Open.*Files?|Save.*Fil
|
|||||||
windowrule = center, class:xdg-desktop-portal-gtk, title:^(Open.*Files?|Save.*Files?|All Files|Save)
|
windowrule = center, class:xdg-desktop-portal-gtk, title:^(Open.*Files?|Save.*Files?|All Files|Save)
|
||||||
|
|
||||||
# Float Steam, fullscreen RetroArch
|
# Float Steam, fullscreen RetroArch
|
||||||
windowrule = float, class:^(steam)$
|
windowrule = float, class:steam
|
||||||
|
windowrule = center, class:steam
|
||||||
windowrule = fullscreen, class:^(com.libretro.RetroArch)$
|
windowrule = fullscreen, class:^(com.libretro.RetroArch)$
|
||||||
|
|
||||||
# Just dash of opacity
|
# Just dash of opacity
|
||||||
|
|||||||
+65
-9
@@ -3,6 +3,8 @@
|
|||||||
# Exit immediately if a command exits with a non-zero status
|
# Exit immediately if a command exits with a non-zero status
|
||||||
set -e
|
set -e
|
||||||
|
|
||||||
|
OMARCHY_INSTALL=~/.local/share/omarchy/install
|
||||||
|
|
||||||
# Give people a chance to retry running the installation
|
# Give people a chance to retry running the installation
|
||||||
catch_errors() {
|
catch_errors() {
|
||||||
echo -e "\n\e[31mOmarchy installation failed!\e[0m"
|
echo -e "\n\e[31mOmarchy installation failed!\e[0m"
|
||||||
@@ -12,16 +14,70 @@ catch_errors() {
|
|||||||
|
|
||||||
trap catch_errors ERR
|
trap catch_errors ERR
|
||||||
|
|
||||||
# Install everything
|
show_logo() {
|
||||||
for f in ~/.local/share/omarchy/install/*.sh; do
|
clear
|
||||||
echo -e "\nRunning installer: $f"
|
tte -i ~/.local/share/omarchy/logo.txt --frame-rate ${2:-120} ${1:-expand}
|
||||||
source "$f"
|
echo
|
||||||
done
|
}
|
||||||
|
|
||||||
# Ensure locate is up to date now that everything has been installed
|
show_subtext() {
|
||||||
|
echo "$1" | tte --frame-rate ${3:-640} ${2:-wipe}
|
||||||
|
echo
|
||||||
|
}
|
||||||
|
|
||||||
|
# Install prerequisites
|
||||||
|
source $OMARCHY_INSTALL/preflight/aur.sh
|
||||||
|
source $OMARCHY_INSTALL/preflight/presentation.sh
|
||||||
|
|
||||||
|
# Configuration
|
||||||
|
show_logo beams 240
|
||||||
|
show_subtext "Let's install Omarchy! [1/5]"
|
||||||
|
source $OMARCHY_INSTALL/config/identification.sh
|
||||||
|
source $OMARCHY_INSTALL/config/config.sh
|
||||||
|
source $OMARCHY_INSTALL/config/detect-keyboard-layout.sh
|
||||||
|
source $OMARCHY_INSTALL/config/fix-fkeys.sh
|
||||||
|
source $OMARCHY_INSTALL/config/network.sh
|
||||||
|
source $OMARCHY_INSTALL/config/power.sh
|
||||||
|
source $OMARCHY_INSTALL/config/login.sh
|
||||||
|
source $OMARCHY_INSTALL/config/plymouth.sh
|
||||||
|
source $OMARCHY_INSTALL/config/nvidia.sh
|
||||||
|
|
||||||
|
# Development
|
||||||
|
show_logo decrypt 920
|
||||||
|
show_subtext "Installing terminal tools [2/10]"
|
||||||
|
source $OMARCHY_INSTALL/development/terminal.sh
|
||||||
|
source $OMARCHY_INSTALL/development/developent.sh
|
||||||
|
source $OMARCHY_INSTALL/development/nvim.sh
|
||||||
|
source $OMARCHY_INSTALL/development/ruby.sh
|
||||||
|
source $OMARCHY_INSTALL/development/docker.sh
|
||||||
|
source $OMARCHY_INSTALL/development/firewall.sh
|
||||||
|
|
||||||
|
# Desktop
|
||||||
|
show_logo slice
|
||||||
|
show_subtext "Installing desktop tools [3/10]"
|
||||||
|
source $OMARCHY_INSTALL/desktop/desktop.sh
|
||||||
|
source $OMARCHY_INSTALL/desktop/hyprlandia.sh
|
||||||
|
source $OMARCHY_INSTALL/dekstop/theme.sh
|
||||||
|
source $OMARCHY_INSTALL/desktop/bluetooth.sh
|
||||||
|
source $OMARCHY_INSTALL/desktop/asdcontrol.sh
|
||||||
|
source $OMARCHY_INSTALL/desktop/fonts.sh
|
||||||
|
source $OMARCHY_INSTALL/desktop/printer.sh
|
||||||
|
|
||||||
|
# Apps
|
||||||
|
show_logo expand
|
||||||
|
show_subtext "Installing default applications [4/5]"
|
||||||
|
source $OMARCHY_INSTALL/apps/webapps.sh
|
||||||
|
source $OMARCHY_INSTALL/apps/xtras.sh
|
||||||
|
source $OMARCHY_INSTALL/apps/mimetypes.sh
|
||||||
|
|
||||||
|
# Updates
|
||||||
|
show_logo highlight
|
||||||
|
show_subtext "Updating system packages [5/5]"
|
||||||
sudo updatedb
|
sudo updatedb
|
||||||
|
|
||||||
# Update all built-in packages
|
|
||||||
sudo pacman -Syu --noconfirm
|
sudo pacman -Syu --noconfirm
|
||||||
|
|
||||||
gum confirm "Reboot to apply all settings?" && reboot
|
# Reboot
|
||||||
|
show_logo laseretch 920
|
||||||
|
show_subtext "You're done! So we'll be rebooting now..."
|
||||||
|
sleep 2
|
||||||
|
reboot
|
||||||
@@ -1,16 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
sudo pacman -S --needed --noconfirm base-devel
|
|
||||||
|
|
||||||
if ! command -v yay &>/dev/null; then
|
|
||||||
cd /tmp
|
|
||||||
git clone https://aur.archlinux.org/yay-bin.git
|
|
||||||
cd yay-bin
|
|
||||||
makepkg -si --noconfirm
|
|
||||||
cd -
|
|
||||||
rm -rf yay-bin
|
|
||||||
cd ~
|
|
||||||
|
|
||||||
# Add fun and color to the pacman installer
|
|
||||||
sudo sed -i '/^\[options\]/a Color\nILoveCandy' /etc/pacman.conf
|
|
||||||
fi
|
|
||||||
File renamed without changes.
@@ -12,5 +12,5 @@ if [ -z "$OMARCHY_BARE" ]; then
|
|||||||
web2app "YouTube" https://youtube.com/ https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/youtube.png
|
web2app "YouTube" https://youtube.com/ https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/youtube.png
|
||||||
web2app "GitHub" https://github.com/ https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/github-light.png
|
web2app "GitHub" https://github.com/ https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/github-light.png
|
||||||
web2app "X" https://x.com/ https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/x-light.png
|
web2app "X" https://x.com/ https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/x-light.png
|
||||||
web2app "Omarchy Manual" https://manuals.omamix.org/2/the-omarchy-manual https://manuals.omamix.org/rails/active_storage/blobs/redirect/eyJfcmFpbHMiOnsiZGF0YSI6NDgsInB1ciI6ImJsb2JfaWQifX0=--c26606490139480f5bcb3cf91b09fc45825007f6/omarchy.jpg?disposition=attachment
|
web2app "Omarchy Manual" https://manuals.omamix.org/2/the-omarchy-manual https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/png/arch-linux.png
|
||||||
fi
|
fi
|
||||||
@@ -1,6 +1,9 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
if [ -z "$OMARCHY_BARE" ]; then
|
if [ -z "$OMARCHY_BARE" ]; then
|
||||||
|
show_logo
|
||||||
|
show_subtext "Installing default applications..."
|
||||||
|
|
||||||
yay -S --noconfirm --needed \
|
yay -S --noconfirm --needed \
|
||||||
gnome-calculator gnome-keyring signal-desktop \
|
gnome-calculator gnome-keyring signal-desktop \
|
||||||
obsidian-bin libreoffice obs-studio kdenlive \
|
obsidian-bin libreoffice obs-studio kdenlive \
|
||||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -1,10 +1,4 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# Need gum to query for input
|
|
||||||
yay -S --noconfirm --needed gum
|
|
||||||
|
|
||||||
# Configure identification
|
|
||||||
source ~/.local/share/omarchy/ansi.sh
|
|
||||||
echo -e "\nEnter identification for git and autocomplete..."
|
|
||||||
export OMARCHY_USER_NAME=$(gum input --placeholder "Enter full name" --prompt "Name> ")
|
export OMARCHY_USER_NAME=$(gum input --placeholder "Enter full name" --prompt "Name> ")
|
||||||
export OMARCHY_USER_EMAIL=$(gum input --placeholder "Enter email address" --prompt "Email> ")
|
export OMARCHY_USER_EMAIL=$(gum input --placeholder "Enter email address" --prompt "Email> ")
|
||||||
@@ -1,6 +1,5 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
# Hyprland launched via UWSM and login directly as user, rely on disk encryption + hyprlock for security
|
|
||||||
yay -S --noconfirm --needed uwsm
|
yay -S --noconfirm --needed uwsm
|
||||||
|
|
||||||
# Compile the seamless login helper -- needed to prevent seeing terminal between loader and desktop
|
# Compile the seamless login helper -- needed to prevent seeing terminal between loader and desktop
|
||||||
File renamed without changes.
@@ -12,6 +12,9 @@
|
|||||||
|
|
||||||
# --- GPU Detection ---
|
# --- GPU Detection ---
|
||||||
if [ -n "$(lspci | grep -i 'nvidia')" ]; then
|
if [ -n "$(lspci | grep -i 'nvidia')" ]; then
|
||||||
|
show_logo
|
||||||
|
show_subtext "Install NVIDIA drivers..."
|
||||||
|
|
||||||
# --- Driver Selection ---
|
# --- Driver Selection ---
|
||||||
# Turing (16xx, 20xx), Ampere (30xx), Ada (40xx), and newer recommend the open-source kernel modules
|
# Turing (16xx, 20xx), Ampere (30xx), Ada (40xx), and newer recommend the open-source kernel modules
|
||||||
if echo "$(lspci | grep -i 'nvidia')" | grep -q -E "RTX [2-9][0-9]|GTX 16"; then
|
if echo "$(lspci | grep -i 'nvidia')" | grep -q -E "RTX [2-9][0-9]|GTX 16"; then
|
||||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -0,0 +1,37 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Only add Chaotic-AUR if the architecture is x86_64 so ARM users can build the packages
|
||||||
|
if [[ "$(uname -m)" == "x86_64" ]]; then
|
||||||
|
# Import Chaotic-AUR key
|
||||||
|
sudo pacman-key --recv-key 3056513887B78AEB --keyserver keyserver.ubuntu.com
|
||||||
|
sudo pacman-key --lsign-key 3056513887B78AEB
|
||||||
|
|
||||||
|
# Install Chaotic-AUR keyring and mirrorlist
|
||||||
|
sudo pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-keyring.pkg.tar.zst'
|
||||||
|
sudo pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-mirrorlist.pkg.tar.zst'
|
||||||
|
|
||||||
|
# Add Chaotic-AUR repo to pacman config
|
||||||
|
echo -e '\n[chaotic-aur]\nInclude = /etc/pacman.d/chaotic-mirrorlist' | sudo tee -a /etc/pacman.conf >/dev/null
|
||||||
|
|
||||||
|
# Refresh pacman package databases
|
||||||
|
sudo pacman -Sy
|
||||||
|
|
||||||
|
# Install yay
|
||||||
|
sudo pacman -S --needed --noconfirm yay
|
||||||
|
else
|
||||||
|
sudo pacman -S --needed --noconfirm base-devel
|
||||||
|
|
||||||
|
if ! command -v yay &>/dev/null; then
|
||||||
|
cd /tmp
|
||||||
|
git clone https://aur.archlinux.org/yay-bin.git
|
||||||
|
cd yay-bin
|
||||||
|
makepkg -si --noconfirm
|
||||||
|
cd -
|
||||||
|
rm -rf yay-bin
|
||||||
|
cd ~
|
||||||
|
fi
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Add fun and color to the pacman installer
|
||||||
|
sudo sed -i '/^\[options\]/a Color\nILoveCandy' /etc/pacman.conf
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
yay -S --noconfirm --needed gum python-terminaltexteffects
|
||||||
+2
-7
@@ -1,6 +1,4 @@
|
|||||||
#!/bin/bash
|
▄██████▄ ▄▄▄▄███▄▄▄▄ ▄████████ ▄████████ ▄████████ ▄█ █▄ ▄██ ▄
|
||||||
|
|
||||||
ansi_art=' ▄██████▄ ▄▄▄▄███▄▄▄▄ ▄████████ ▄████████ ▄████████ ▄█ █▄ ▄██ ▄
|
|
||||||
███ ███ ▄██▀▀▀███▀▀▀██▄ ███ ███ ███ ███ ███ ███ ███ ███ ███ ██▄
|
███ ███ ▄██▀▀▀███▀▀▀██▄ ███ ███ ███ ███ ███ ███ ███ ███ ███ ██▄
|
||||||
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ █▀ ███ ███ ███▄▄▄███
|
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ █▀ ███ ███ ███▄▄▄███
|
||||||
███ ███ ███ ███ ███ ███ ███ ▄███▄▄▄▄██▀ ███ ▄███▄▄▄▄███▄▄ ▀▀▀▀▀▀███
|
███ ███ ███ ███ ███ ███ ███ ▄███▄▄▄▄██▀ ███ ▄███▄▄▄▄███▄▄ ▀▀▀▀▀▀███
|
||||||
@@ -8,7 +6,4 @@ ansi_art=' ▄██████▄ ▄▄▄▄███▄▄▄▄
|
|||||||
███ ███ ███ ███ ███ ███ ███ ▀███████████ ███ █▄ ███ ███ ███ ███
|
███ ███ ███ ███ ███ ███ ███ ▀███████████ ███ █▄ ███ ███ ███ ███
|
||||||
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
|
███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███ ███
|
||||||
▀██████▀ ▀█ ███ █▀ ███ █▀ ███ ███ ████████▀ ███ █▀ ▀█████▀
|
▀██████▀ ▀█ ███ █▀ ███ █▀ ███ ███ ████████▀ ███ █▀ ▀█████▀
|
||||||
███ ███ '
|
███ ███
|
||||||
|
|
||||||
clear
|
|
||||||
echo -e "\n$ansi_art\n"
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
echo "Install swayOSD to show volume status"
|
echo "Install swayOSD to show volume status"
|
||||||
|
|
||||||
if ! command -v swayosd &>/dev/null; then
|
if ! command -v swayosd-server &>/dev/null; then
|
||||||
yay -S --noconfirm --needed swayosd
|
yay -S --noconfirm --needed swayosd
|
||||||
setsid uwsm app -- swayosd-server &>/dev/null &
|
setsid uwsm app -- swayosd-server &>/dev/null &
|
||||||
fi
|
fi
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
echo "Reload Waybar on unlock to prevent stacking"
|
||||||
|
|
||||||
|
if ! grep -q 'on_unlock_cmd *= *pkill -SIGUSR2 waybar' ~/.config/hypr/hypridle.conf; then
|
||||||
|
sed -i '/^general[[:space:]]*{/,/^}/ {
|
||||||
|
/on_unlock_cmd *=/d
|
||||||
|
/^}$/ i\ on_unlock_cmd = pkill -SIGUSR2 waybar # prevent stacking of waybar when waking
|
||||||
|
}' ~/.config/hypr/hypridle.conf
|
||||||
|
fi
|
||||||
Executable
+17
@@ -0,0 +1,17 @@
|
|||||||
|
echo "Add Chaotic-AUR to get compiled binaries"
|
||||||
|
|
||||||
|
if [[ "$(uname -m)" == "x86_64" ]] && ! grep -q '^\[chaotic-aur\]' /etc/pacman.conf; then
|
||||||
|
# Import Chaotic-AUR key
|
||||||
|
sudo pacman-key --recv-key 3056513887B78AEB --keyserver keyserver.ubuntu.com
|
||||||
|
sudo pacman-key --lsign-key 3056513887B78AEB
|
||||||
|
|
||||||
|
# Install Chaotic-AUR keyring and mirrorlist
|
||||||
|
sudo pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-keyring.pkg.tar.zst'
|
||||||
|
sudo pacman -U --noconfirm 'https://cdn-mirror.chaotic.cx/chaotic-aur/chaotic-mirrorlist.pkg.tar.zst'
|
||||||
|
|
||||||
|
# Add Chaotic-AUR repo to pacman config
|
||||||
|
echo -e '\n[chaotic-aur]\nInclude = /etc/pacman.d/chaotic-mirrorlist' | sudo tee -a /etc/pacman.conf >/dev/null
|
||||||
|
|
||||||
|
# Refresh pacman package databases
|
||||||
|
sudo pacman -Sy
|
||||||
|
fi
|
||||||
@@ -0,0 +1,4 @@
|
|||||||
|
echo "Add Terminal Text Effects for rizzing Omarchy"
|
||||||
|
if yay -Qe python-terminaltexteffects &>/dev/null; then
|
||||||
|
yay -S --noconfirm --needed python-terminaltexteffects
|
||||||
|
fi
|
||||||
@@ -1,8 +1,4 @@
|
|||||||
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
|
||||||
|
|
||||||
$latte_blue = rgb(1e66f5)
|
|
||||||
|
|
||||||
general {
|
general {
|
||||||
col.active_border = $latte_blue
|
col.active_border = rgb(1e66f5)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
text-color=#4c4f69
|
text-color=#4c4f69
|
||||||
border-color=#dce0e8
|
border-color=#1e66f5
|
||||||
background-color=#eff1f5
|
background-color=#eff1f5
|
||||||
width=420
|
width=420
|
||||||
height=110
|
height=110
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
@define-color background-color #eff1f5;
|
@define-color background-color #eff1f5;
|
||||||
@define-color border-color #4c4f69;
|
@define-color border-color #1e66f5;
|
||||||
@define-color label #4c4f69;
|
@define-color label #4c4f69;
|
||||||
@define-color image #4c4f69;
|
@define-color image #4c4f69;
|
||||||
@define-color progress #4c4f69;
|
@define-color progress #4c4f69;
|
||||||
|
|
||||||
@@ -1,4 +1,3 @@
|
|||||||
general {
|
general {
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
|
||||||
col.active_border = rgb(c6d0f5)
|
col.active_border = rgb(c6d0f5)
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,5 @@
|
|||||||
@define-color background-color #24273a;
|
@define-color background-color #24273a;
|
||||||
@define-color border-color #c6d0f5;
|
@define-color border-color #c6d0f5;
|
||||||
@define-color label #c6d0f5;
|
@define-color label #cad3f5;
|
||||||
@define-color image #c6d0f5;
|
@define-color image #cad3f5;
|
||||||
@define-color progress #c6d0f5;
|
@define-color progress #cad3f5;
|
||||||
|
|
||||||
@@ -1,4 +1,3 @@
|
|||||||
general {
|
general {
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
|
||||||
col.active_border = rgb(d3c6aa)
|
col.active_border = rgb(d3c6aa)
|
||||||
}
|
}
|
||||||
@@ -1,4 +1,3 @@
|
|||||||
general {
|
general {
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
|
||||||
col.active_border = rgb(a89984)
|
col.active_border = rgb(a89984)
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
@define-color background-color #282828;
|
@define-color background-color #282828;
|
||||||
@define-color border-color #ebdbb2;
|
@define-color border-color #a89984;
|
||||||
@define-color label #ebdbb2;
|
@define-color label #ebdbb2;
|
||||||
@define-color image #ebdbb2;
|
@define-color image #ebdbb2;
|
||||||
@define-color progress #ebdbb2;
|
@define-color progress #ebdbb2;
|
||||||
|
|||||||
@@ -1,4 +1,3 @@
|
|||||||
general {
|
general {
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
|
||||||
col.active_border = rgb(dcd7ba)
|
col.active_border = rgb(dcd7ba)
|
||||||
}
|
}
|
||||||
@@ -1,4 +1,3 @@
|
|||||||
general {
|
general {
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
|
||||||
col.active_border = rgb(8A8A8D)
|
col.active_border = rgb(8A8A8D)
|
||||||
}
|
}
|
||||||
@@ -1,192 +1,9 @@
|
|||||||
return {
|
return {
|
||||||
"EdenEast/nightfox.nvim",
|
{ "tahayvr/matteblack.nvim", lazy = false, priority = 1000 },
|
||||||
lazy = false,
|
{
|
||||||
priority = 1000,
|
"LazyVim/LazyVim",
|
||||||
dependencies = {
|
opts = {
|
||||||
"folke/snacks.nvim",
|
colorscheme = "matteblack",
|
||||||
"nvim-tree/nvim-web-devicons",
|
|
||||||
"nvim-lualine/lualine.nvim",
|
|
||||||
},
|
|
||||||
|
|
||||||
config = function()
|
|
||||||
local nightfox = require('nightfox')
|
|
||||||
local Shade = require('nightfox.lib.shade')
|
|
||||||
local c = require('nightfox.lib.color')
|
|
||||||
|
|
||||||
local matte_black_palette = {
|
|
||||||
-- Base "Matte Black" Palette Overrides
|
|
||||||
bg0 = "#0D0D0D", bg1 = "#121212", bg2 = "#1E1E1E", bg3 = "#2C2C2C", bg4 = "#333333",
|
|
||||||
fg0 = "#FFFFFF", fg1 = "#EAEAEA", fg2 = "#BEBEBE", fg3 = "#8A8A8D",
|
|
||||||
sel0 = "#2C2C2C",
|
|
||||||
sel1 = c.from_hex("#2C2C2C"):blend(c.from_hex("#F59E0B"), 0.2):to_css(),
|
|
||||||
comment = "#8A8A8D",
|
|
||||||
red = Shade.new("#D35F5F", c.from_hex("#D35F5F"):lighten(8):to_css(), "#B91C1C"),
|
|
||||||
orange = Shade.new("#F59E0B", "#FFC107", c.from_hex("#F59E0B"):lighten(-8):to_css()),
|
|
||||||
yellow = Shade.new("#FFC107", c.from_hex("#FFC107"):lighten(10):to_css(), "#F59E0B"),
|
|
||||||
white = Shade.new("#EAEAEA", "#FFFFFF", "#BEBEBE"),
|
|
||||||
black = Shade.new("#333333", "#8A8A8D", "#1E1E1E"),
|
|
||||||
green = Shade.new("#8A9A7B", "#A5B799", "#6F7C62"),
|
|
||||||
cyan = Shade.new("#88AABB", "#A2C4D3", "#6E8A99"),
|
|
||||||
blue = Shade.new("#8A9FBE", "#A4BBDD", "#7084A1"),
|
|
||||||
magenta = Shade.new("#C1A1C1", "#D9B9D9", "#A989A9"),
|
|
||||||
pink = Shade.new("#D398A7", "#EBC0CB", "#B97E8D"),
|
|
||||||
|
|
||||||
-- Lualine Palette Extensions
|
|
||||||
lualine_normal_bg = "#F59E0B",
|
|
||||||
lualine_insert_bg = "#B91C1C",
|
|
||||||
lualine_visual_bg = "#C1A1C1",
|
|
||||||
lualine_command_bg = "#F59E0B",
|
|
||||||
lualine_inactive_bg = c.from_hex("#121212"):lighten(5):to_css(),
|
|
||||||
|
|
||||||
-- Treesitter Palette Extensions
|
|
||||||
ts_parameter = "#D398A7",
|
|
||||||
ts_property = "#EAEAEA",
|
|
||||||
}
|
|
||||||
|
|
||||||
local final_palettes = {
|
|
||||||
carbonfox = require('nightfox.lib.collect').deep_extend(
|
|
||||||
require('nightfox.palette').load('carbonfox'),
|
|
||||||
matte_black_palette
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
local specs = {
|
|
||||||
carbonfox = {
|
|
||||||
syntax = {
|
|
||||||
keyword = "red", -- "local", "function", "if"
|
|
||||||
conditional = "red",
|
|
||||||
statement = "red",
|
|
||||||
func = "orange",
|
|
||||||
string = "orange.dim",
|
|
||||||
number = "orange",
|
|
||||||
operator = "yellow",
|
|
||||||
variable = "white",
|
|
||||||
ident = "white.dim",
|
|
||||||
const = "white",
|
|
||||||
type = "white",
|
|
||||||
field = "white.dim",
|
|
||||||
comment = "comment",
|
|
||||||
},
|
|
||||||
diag = {
|
|
||||||
error = "red",
|
|
||||||
warn = "red",
|
|
||||||
info = "cyan",
|
|
||||||
hint = "magenta",
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
local groups = {
|
|
||||||
all = {
|
|
||||||
-- Base Groups
|
|
||||||
Whitespace = { fg = "palette.black.bright" },
|
|
||||||
NonText = { fg = "palette.black.bright" },
|
|
||||||
IncSearch = { bg = "palette.sel1" },
|
|
||||||
CursorLine = { bg = "palette.bg2" },
|
|
||||||
Normal = { fg = "palette.fg1" },
|
|
||||||
|
|
||||||
-- Noice Cmdline Overrides
|
|
||||||
NoiceCmdlinePopupBorder = { fg = "palette.fg3" },
|
|
||||||
NoiceCmdlinePopupTitle = { fg = "palette.fg3", style = "bold" },
|
|
||||||
NoiceCmdlinePopupBorderSearch = { fg = "palette.fg3" },
|
|
||||||
NoiceCmdlinePopupTitleSearch = { fg = "palette.fg3", style = "bold" },
|
|
||||||
NoiceCmdLineIcon = { fg = "palette.red" },
|
|
||||||
|
|
||||||
-- Neo-tree overrides
|
|
||||||
NeoTreeNormal = { bg = "palette.bg0" },
|
|
||||||
NeoTreeNormalNC = { link = "NeoTreeNormal" },
|
|
||||||
NeoTreeDirectoryName = { fg = "palette.fg3" },
|
|
||||||
NeoTreeDirectoryIcon = { fg = "palette.fg3" },
|
|
||||||
NeoTreeRootName = { fg = "palette.orange", style = "bold" },
|
|
||||||
NeoTreeGitAdded = { fg = "palette.green" },
|
|
||||||
NeoTreeGitModified = { fg = "palette.yellow" },
|
|
||||||
NeoTreeGitDeleted = { fg = "palette.red" },
|
|
||||||
NeoTreeGitIgnored = { fg = "palette.comment" },
|
|
||||||
NeoTreeC = { fg = "palette.orange", bg = "palette.sel0" },
|
|
||||||
|
|
||||||
-- Dashboard overrides
|
|
||||||
SnacksDashboardHeader = { fg = "palette.fg3" },
|
|
||||||
SnacksDashboardIcon = { fg = "palette.fg1" },
|
|
||||||
SnacksDashboardDir = { fg = "palette.orange" },
|
|
||||||
SnacksDashboardFile = { fg = "palette.fg3" },
|
|
||||||
SnacksDashboardFooter = { fg = "palette.fg3" },
|
|
||||||
SnacksDashboardKey = { fg = "palette.orange" },
|
|
||||||
SnacksDashboardDesc = { fg = "palette.fg1" },
|
|
||||||
SnacksDashboardSpecial = { fg = "palette.fg1" },
|
|
||||||
|
|
||||||
-- Treesitter overrides
|
|
||||||
["@comment"] = { fg = "palette.comment", style = "italic" },
|
|
||||||
["@keyword"] = { fg = "palette.red", style = "bold" },
|
|
||||||
["@keyword.function"] = { fg = "palette.red", style = "bold" },
|
|
||||||
["@keyword.operator"] = { fg = "palette.red", style = "bold" },
|
|
||||||
["@function"] = { fg = "palette.orange", style = "bold" },
|
|
||||||
["@function.builtin"] = { fg = "palette.orange", style = "bold" },
|
|
||||||
["@function.call"] = { fg = "palette.orange" },
|
|
||||||
["@string"] = { fg = "palette.orange" },
|
|
||||||
["@number"] = { fg = "palette.orange" },
|
|
||||||
["@operator"] = { fg = "palette.yellow" },
|
|
||||||
["@variable"] = { fg = "palette.white" },
|
|
||||||
["@constant"] = { fg = "palette.white" },
|
|
||||||
["@type"] = { fg = "palette.white.dim" },
|
|
||||||
["@variable.parameter"] = { fg = "palette.ts_parameter", style = "italic" },
|
|
||||||
["@property"] = { fg = "palette.ts_property" },
|
|
||||||
["@field"] = { fg = "palette.ts_property" },
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
nightfox.setup({
|
|
||||||
options = {
|
|
||||||
style = "carbonfox",
|
|
||||||
terminal_colors = true,
|
|
||||||
dim_inactive = true,
|
|
||||||
styles = { comments = "italic", functions = "bold", keywords = "bold" },
|
|
||||||
modules = {
|
|
||||||
neotree = true,
|
|
||||||
treesitter = true,
|
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
palettes = final_palettes,
|
|
||||||
specs = specs,
|
|
||||||
groups = groups
|
|
||||||
})
|
|
||||||
|
|
||||||
vim.cmd("colorscheme carbonfox")
|
|
||||||
|
|
||||||
-- Lualine overrides
|
|
||||||
local lualine_theme = {
|
|
||||||
normal = {
|
|
||||||
a = { fg = matte_black_palette.bg0, bg = matte_black_palette.lualine_normal_bg, gui = "bold" },
|
|
||||||
b = { fg = matte_black_palette.fg1, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
c = { fg = matte_black_palette.fg2, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
},
|
|
||||||
insert = {
|
|
||||||
a = { fg = matte_black_palette.bg0, bg = matte_black_palette.lualine_insert_bg, gui = "bold" },
|
|
||||||
b = { fg = matte_black_palette.fg1, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
c = { fg = matte_black_palette.fg2, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
},
|
|
||||||
visual = {
|
|
||||||
a = { fg = matte_black_palette.bg0, bg = matte_black_palette.lualine_visual_bg, gui = "bold" },
|
|
||||||
b = { fg = matte_black_palette.fg1, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
c = { fg = matte_black_palette.fg2, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
},
|
|
||||||
command = {
|
|
||||||
a = { fg = matte_black_palette.bg0, bg = matte_black_palette.lualine_command_bg, gui = "bold" },
|
|
||||||
b = { fg = matte_black_palette.fg1, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
c = { fg = matte_black_palette.fg2, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
},
|
|
||||||
inactive = {
|
|
||||||
a = { fg = matte_black_palette.fg3, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
b = { fg = matte_black_palette.fg3, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
c = { fg = matte_black_palette.comment, bg = matte_black_palette.lualine_inactive_bg },
|
|
||||||
},
|
|
||||||
}
|
|
||||||
|
|
||||||
require('lualine').setup({
|
|
||||||
options = {
|
|
||||||
theme = lualine_theme,
|
|
||||||
},
|
|
||||||
})
|
|
||||||
|
|
||||||
end,
|
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
@define-color background-color #121212;
|
@define-color background-color #121212;
|
||||||
@define-color border-color #EAEAEA;
|
@define-color border-color #8A8A8D;
|
||||||
@define-color label #EAEAEA;
|
@define-color label #8A8A8D;
|
||||||
@define-color image #EAEAEA;
|
@define-color image #8A8A8D;
|
||||||
@define-color progress #EAEAEA;
|
@define-color progress #8A8A8D;
|
||||||
|
|
||||||
@@ -1,4 +1,3 @@
|
|||||||
general {
|
general {
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
|
||||||
col.active_border = rgb(D8DEE9)
|
col.active_border = rgb(D8DEE9)
|
||||||
}
|
}
|
||||||
@@ -1,4 +1,3 @@
|
|||||||
general {
|
general {
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
|
||||||
col.active_border = rgb(575279)
|
col.active_border = rgb(575279)
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,4 @@
|
|||||||
general {
|
general {
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
|
||||||
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
@define-color background-color #1a1b26;
|
@define-color background-color #1a1b26;
|
||||||
@define-color border-color #33ccff;
|
@define-color border-color #33ccff;
|
||||||
@define-color label #33ccff;
|
@define-color label #a9b1d6;
|
||||||
@define-color image #33ccff;
|
@define-color image #a9b1d6;
|
||||||
@define-color progress #33ccff;
|
@define-color progress #a9b1d6;
|
||||||
|
|
||||||
Reference in new issue
Block a user