mirror of
https://github.com/basecamp/omarchy.git
synced 2026-02-17 15:25:37 +00:00
Compare commits
25 Commits
restart-wa
...
7bd5bf25cd
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7bd5bf25cd | ||
|
|
0c9b38e507 | ||
|
|
0e2ed5439e | ||
|
|
75a0ee6149 | ||
|
|
2c9c0f883a | ||
|
|
8a58b8153c | ||
|
|
badd1f8495 | ||
|
|
67ee1450f0 | ||
|
|
c289cd0730 | ||
|
|
cbcd0e49be | ||
|
|
ae45f06847 | ||
|
|
1070a87a47 | ||
|
|
9741b29a7c | ||
|
|
ea24b0dc68 | ||
|
|
3bbb57b54d | ||
|
|
ebfb7f16e8 | ||
|
|
347afae8c0 | ||
|
|
ebfcefa553 | ||
|
|
2087d96ad8 | ||
|
|
b638cbc57a | ||
|
|
636a7cefda | ||
|
|
f7e22fcfd8 | ||
|
|
b0e8a4dcea | ||
|
|
f57234b991 | ||
|
|
a8ce084460 |
@@ -1,5 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Returns true if a battery is present on the system.
|
||||
# Used by the battery monitor and other battery-related checks.
|
||||
|
||||
for bat in /sys/class/power_supply/BAT*; do
|
||||
[[ -r "$bat/present" ]] &&
|
||||
[[ "$(cat "$bat/present")" == "1" ]] &&
|
||||
|
||||
@@ -17,9 +17,11 @@ if [ -f "$MKINITCPIO_CONF" ] && grep -q "^HOOKS+=(resume)$" "$MKINITCPIO_CONF";
|
||||
exit 0
|
||||
fi
|
||||
|
||||
MEM_TOTAL_HUMAN=$(free --human | awk '/Mem/ {print $2}')
|
||||
if ! gum confirm "Use $MEM_TOTAL_HUMAN on boot drive to make hibernation available?"; then
|
||||
exit 0
|
||||
if [[ $1 != "--force" ]]; then
|
||||
MEM_TOTAL_HUMAN=$(free --human | awk '/Mem/ {print $2}')
|
||||
if ! gum confirm "Use $MEM_TOTAL_HUMAN on boot drive to make hibernation available?"; then
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
|
||||
SWAP_SUBVOLUME="/swap"
|
||||
@@ -70,6 +72,6 @@ sudo limine-mkinitcpio
|
||||
|
||||
echo
|
||||
|
||||
if gum confirm "Reboot to enable hiberation?"; then
|
||||
if [[ $1 != "--force" ]] && gum confirm "Reboot to enable hibernation?"; then
|
||||
omarchy-cmd-reboot
|
||||
fi
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Launch the Walker application launcher while ensuring that it's data provider (called elephant) is runnig first.
|
||||
# Launch the Walker application launcher while ensuring that it's data provider (called elephant) is running first.
|
||||
|
||||
# Ensure elephant is running before launching walker
|
||||
if ! pgrep -x elephant > /dev/null; then
|
||||
|
||||
@@ -431,11 +431,12 @@ show_install_elixir_menu() {
|
||||
}
|
||||
|
||||
show_remove_menu() {
|
||||
case $(menu "Remove" " Package\n Web App\n TUI\n Development\n Dictation\n Theme\n Windows\n Fingerprint\n Fido2") in
|
||||
case $(menu "Remove" " Package\n Web App\n TUI\n Development\n Preinstalls\n Dictation\n Theme\n Windows\n Fingerprint\n Fido2") in
|
||||
*Package*) terminal omarchy-pkg-remove ;;
|
||||
*Web*) present_terminal omarchy-webapp-remove ;;
|
||||
*TUI*) present_terminal omarchy-tui-remove ;;
|
||||
*Development*) show_remove_development_menu ;;
|
||||
*Preinstalls*) present_terminal omarchy-remove-all ;;
|
||||
*Dictation*) present_terminal omarchy-voxtype-remove ;;
|
||||
*Theme*) present_terminal omarchy-theme-remove ;;
|
||||
*Windows*) present_terminal "omarchy-windows-vm remove" ;;
|
||||
|
||||
25
bin/omarchy-remove-all
Executable file
25
bin/omarchy-remove-all
Executable file
@@ -0,0 +1,25 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Remove preinstalled Omarchy applications (web apps, TUIs, and selected packages).
|
||||
# This removes all web apps, TUIs, plus specific desktop applications.
|
||||
|
||||
if gum confirm "Are you sure you want to remove all preinstalled web apps, TUI wrappers, and desktop applications?"; then
|
||||
echo -e "Removing preinstalled Omarchy applications...\n"
|
||||
|
||||
omarchy-webapp-remove-all
|
||||
omarchy-tui-remove-all
|
||||
|
||||
omarchy-pkg-drop \
|
||||
aether \
|
||||
typora \
|
||||
spotify \
|
||||
libreoffice-fresh \
|
||||
1password-beta \
|
||||
1password-cli \
|
||||
xournalpp \
|
||||
signal-desktop \
|
||||
pinta \
|
||||
obsidian \
|
||||
obs-studio \
|
||||
kdenlive
|
||||
fi
|
||||
@@ -1,5 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Remove a development environment that was previously installed via omarchy-install-dev-env.
|
||||
# Usage: omarchy-remove-dev-env <ruby|node|bun|deno|go|php|laravel|symfony|python|elixir|phoenix|zig|rust|java|dotnet|ocaml|clojure>
|
||||
|
||||
if [[ -z "$1" ]]; then
|
||||
echo "Usage: omarchy-remove-dev-env <ruby|node|bun|deno|go|php|laravel|symfony|python|elixir|phoenix|zig|rust|java|dotnet|ocaml|clojure>" >&2
|
||||
exit 1
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Reset the sudo lockout/faillock for the current user.
|
||||
# This clears any failed authentication attempts that may have locked the user out.
|
||||
|
||||
# Resetting sudo lockout for user
|
||||
su -c "faillock --reset --user $USER"
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Restart an application by killing it and relaunching via uwsm.
|
||||
# Usage: omarchy-restart-app <application-name>
|
||||
|
||||
pkill -x $1
|
||||
setsid uwsm-app -- $1 >/dev/null 2>&1 &
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Unblock and restart the bluetooth service.
|
||||
|
||||
echo -e "Unblocking bluetooth...\n"
|
||||
rfkill unblock bluetooth
|
||||
rfkill list bluetooth
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Restart the hypridle service (used for idle detection and auto-lock).
|
||||
|
||||
omarchy-restart-app hypridle
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Restart the hyprsunset service (used for blue light filtering/night light).
|
||||
|
||||
omarchy-restart-app hyprsunset
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Restart the PipeWire audio service to fix audio issues or apply new configuration.
|
||||
|
||||
echo -e "Restarting pipewire audio service...\n"
|
||||
systemctl --user restart pipewire.service
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Unblock and restart the Wi-Fi service.
|
||||
|
||||
echo -e "Unblocking wifi...\n"
|
||||
rfkill unblock wifi
|
||||
rfkill list wifi
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Restart the XCompose input method service (fcitx5) to apply new compose key settings.
|
||||
|
||||
omarchy-restart-app fcitx5
|
||||
|
||||
@@ -1,4 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Display a "Done!" message with a spinner and wait for user to press any key.
|
||||
# Used by various install scripts to indicate completion.
|
||||
|
||||
echo
|
||||
gum spin --spinner "globe" --title "Done! Press any key to close..." -- bash -c 'read -n 1 -s'
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Display the Omarchy logo in the terminal using green color.
|
||||
# Used by various presentation scripts to show branding.
|
||||
|
||||
clear
|
||||
echo -e "\033[32m"
|
||||
cat <~/.local/share/omarchy/logo.txt
|
||||
|
||||
@@ -31,4 +31,6 @@ create)
|
||||
restore)
|
||||
sudo limine-snapper-restore
|
||||
;;
|
||||
delete)
|
||||
sudo snapper -c "$config" delete 0
|
||||
esac
|
||||
|
||||
@@ -1,5 +1,9 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Manage persistent state files for Omarchy toggles and settings.
|
||||
# Usage: omarchy-state <set|clear> <state-name-or-pattern>
|
||||
# Used to track whether features like suspend, idle lock, etc are enabled or disabled.
|
||||
|
||||
STATE_DIR="$HOME/.local/state/omarchy"
|
||||
mkdir -p "$STATE_DIR"
|
||||
|
||||
|
||||
36
bin/omarchy-tui-remove-all
Executable file
36
bin/omarchy-tui-remove-all
Executable file
@@ -0,0 +1,36 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Remove all TUIs installed via omarchy-tui-install.
|
||||
# Identifies TUIs by their Exec pattern (xdg-terminal-exec --app-id=TUI.).
|
||||
|
||||
set -e
|
||||
|
||||
APP_DIR="${1:-$HOME/.local/share/applications}"
|
||||
ICON_DIR="$HOME/.local/share/applications/icons"
|
||||
|
||||
echo "Scanning for TUIs in $APP_DIR..."
|
||||
|
||||
tui_desktop_files=()
|
||||
while IFS= read -r -d '' file; do
|
||||
if grep -q "Exec=xdg-terminal-exec --app-id=TUI\." "$file" 2>/dev/null; then
|
||||
tui_desktop_files+=("$file")
|
||||
fi
|
||||
done < <(find "$APP_DIR" -maxdepth 1 -name "*.desktop" -print0 2>/dev/null)
|
||||
|
||||
if [[ ${#tui_desktop_files[@]} -eq 0 ]]; then
|
||||
echo "No TUIs found."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
for file in "${tui_desktop_files[@]}"; do
|
||||
app_name=$(basename "$file" .desktop)
|
||||
echo "Removing TUI: $app_name"
|
||||
rm -f "$file"
|
||||
rm -f "$ICON_DIR/$app_name.png"
|
||||
done
|
||||
|
||||
if command -v update-desktop-database &>/dev/null; then
|
||||
update-desktop-database "$APP_DIR" &>/dev/null || true
|
||||
fi
|
||||
|
||||
echo "TUIs removed successfully."
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
set -e
|
||||
|
||||
trap 'echo ""; echo -e "\033[0;31mSomething went wrong during the update!\n\nPlease review the output above carefully, correct the error, and retry the update.\n\nIf you need assistance, get help from the community at https://omarchy.org/discord\033[0m"' ERR
|
||||
trap 'echo ""; echo -e "\033[0;31mSomething went wrong during the update!\n\nPlease review the output above carefully, correct the error, and retry the update.\n\nIf you need assistance, get help from the community at https://omarchy.org/discord\033[0m";omarchy-snapshot delete' ERR
|
||||
|
||||
if [[ $1 == "-y" ]] || omarchy-update-confirm; then
|
||||
omarchy-snapshot create || [ $? -eq 127 ]
|
||||
|
||||
36
bin/omarchy-webapp-remove-all
Executable file
36
bin/omarchy-webapp-remove-all
Executable file
@@ -0,0 +1,36 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Remove all web apps installed via omarchy-webapp-install.
|
||||
# Identifies web apps by their Exec pattern (omarchy-launch-webapp or omarchy-webapp-handler).
|
||||
|
||||
set -e
|
||||
|
||||
APP_DIR="${1:-$HOME/.local/share/applications}"
|
||||
ICON_DIR="$HOME/.local/share/applications/icons"
|
||||
|
||||
echo "Scanning for web apps in $APP_DIR..."
|
||||
|
||||
webapp_desktop_files=()
|
||||
while IFS= read -r -d '' file; do
|
||||
if grep -q "Exec=omarchy-launch-webapp\|Exec=omarchy-webapp-handler" "$file" 2>/dev/null; then
|
||||
webapp_desktop_files+=("$file")
|
||||
fi
|
||||
done < <(find "$APP_DIR" -maxdepth 1 -name "*.desktop" -print0 2>/dev/null)
|
||||
|
||||
if [[ ${#webapp_desktop_files[@]} -eq 0 ]]; then
|
||||
echo "No web apps found."
|
||||
exit 0
|
||||
fi
|
||||
|
||||
for file in "${webapp_desktop_files[@]}"; do
|
||||
app_name=$(basename "$file" .desktop)
|
||||
echo "Removing web app: $app_name"
|
||||
rm -f "$file"
|
||||
rm -f "$ICON_DIR/$app_name.png"
|
||||
done
|
||||
|
||||
if command -v update-desktop-database &>/dev/null; then
|
||||
update-desktop-database "$APP_DIR" &>/dev/null || true
|
||||
fi
|
||||
|
||||
echo "Web apps removed successfully."
|
||||
@@ -32,3 +32,6 @@ keybind = super+control+shift+alt+arrow_right=resize_split:right,100
|
||||
|
||||
# Slowdown mouse scrolling
|
||||
mouse-scroll-multiplier = 0.95
|
||||
|
||||
# Fix general slowness on hyprland (https://github.com/ghostty-org/ghostty/discussions/3224)
|
||||
async-backend = epoll
|
||||
|
||||
@@ -9,3 +9,4 @@ source ~/.local/share/omarchy/default/bash/rc
|
||||
#
|
||||
# Make an alias for invoking commands you use constantly
|
||||
# alias p='python'
|
||||
# alias cc="claude --permission-mode=plan --allow-dangerously-skip-permissions"
|
||||
|
||||
@@ -140,5 +140,5 @@ binds {
|
||||
env = GUM_CONFIRM_PROMPT_FOREGROUND,6 # Cyan
|
||||
env = GUM_CONFIRM_SELECTED_FOREGROUND,0 # Black
|
||||
env = GUM_CONFIRM_SELECTED_BACKGROUND,2 # Green
|
||||
env = GUM_CONFIRM_UNSELECTED_FOREGROUND,0 # Black
|
||||
env = GUM_CONFIRM_UNSELECTED_FOREGROUND,7 # White
|
||||
env = GUM_CONFIRM_UNSELECTED_BACKGROUND,8 # Dark grey
|
||||
|
||||
2
default/systemd/faster-shutdown.conf
Normal file
2
default/systemd/faster-shutdown.conf
Normal file
@@ -0,0 +1,2 @@
|
||||
[Manager]
|
||||
DefaultTimeoutStopSec=5s
|
||||
@@ -1,3 +1,3 @@
|
||||
[Sleep]
|
||||
HibernateDelaySec=30min
|
||||
HibernateDelaySec=90min
|
||||
HibernateOnACPower=no
|
||||
|
||||
0
default/systemd/system-sleep/keyboard-backlight
Executable file → Normal file
0
default/systemd/system-sleep/keyboard-backlight
Executable file → Normal file
@@ -20,6 +20,7 @@ run_logged $OMARCHY_INSTALL/config/sudoless-asdcontrol.sh
|
||||
run_logged $OMARCHY_INSTALL/config/input-group.sh
|
||||
run_logged $OMARCHY_INSTALL/config/omarchy-ai-skill.sh
|
||||
run_logged $OMARCHY_INSTALL/config/powerprofilesctl-rules.sh
|
||||
run_logged $OMARCHY_INSTALL/config/hibernation.sh
|
||||
run_logged $OMARCHY_INSTALL/config/hardware/network.sh
|
||||
run_logged $OMARCHY_INSTALL/config/hardware/set-wireless-regdom.sh
|
||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-fkeys.sh
|
||||
@@ -37,4 +38,5 @@ run_logged $OMARCHY_INSTALL/config/hardware/fix-apple-t2.sh
|
||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-surface-keyboard.sh
|
||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-asus-rog-audio-mixer.sh
|
||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-asus-rog-mic.sh
|
||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-realtek-r8168.sh
|
||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-yt6801-ethernet-adapter.sh
|
||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-synaptic-touchpad.sh
|
||||
|
||||
@@ -1,7 +1,3 @@
|
||||
sudo mkdir -p /etc/systemd/system.conf.d
|
||||
|
||||
cat <<EOF | sudo tee /etc/systemd/system.conf.d/10-faster-shutdown.conf
|
||||
[Manager]
|
||||
DefaultTimeoutStopSec=5s
|
||||
EOF
|
||||
sudo cp "$OMARCHY_PATH/default/systemd/faster-shutdown.conf" /etc/systemd/system.conf.d/10-faster-shutdown.conf
|
||||
sudo systemctl daemon-reload
|
||||
|
||||
@@ -1,11 +0,0 @@
|
||||
# Install r8168 driver for Realtek RTL8111/8168/8211/8411 ethernet adapters
|
||||
# Common in ASUS TUF Gaming laptops and other modern systems
|
||||
if lspci | grep -i "RTL8111\|RTL8168\|RTL8211\|RTL8411"; then
|
||||
omarchy-pkg-add linux-headers r8168-lts
|
||||
|
||||
# Blacklist problematic r8169 driver
|
||||
echo "blacklist r8169" | sudo tee /etc/modprobe.d/blacklist-r8169.conf
|
||||
|
||||
# Regenerate initramfs to ensure r8168 loads on boot
|
||||
sudo mkinitcpio -P
|
||||
fi
|
||||
6
install/config/hardware/fix-synaptic-touchpad.sh
Executable file
6
install/config/hardware/fix-synaptic-touchpad.sh
Executable file
@@ -0,0 +1,6 @@
|
||||
# Enable Synaptics InterTouch for confirmed touchpads if not already loaded
|
||||
|
||||
if grep -qi synaptics /proc/bus/input/devices \
|
||||
&& ! lsmod | grep -q '^psmouse'; then
|
||||
modprobe psmouse synaptics_intertouch=1
|
||||
fi
|
||||
@@ -4,12 +4,14 @@ if [ -n "$NVIDIA" ]; then
|
||||
# Check which kernel is installed and set appropriate headers package
|
||||
KERNEL_HEADERS="$(pacman -Qqs '^linux(-zen|-lts|-hardened)?$' | head -1)-headers"
|
||||
|
||||
if echo "$NVIDIA" | grep -qE "RTX [2-9][0-9]|GTX 16"; then
|
||||
# Turing (16xx, 20xx), Ampere (30xx), Ada (40xx), and newer recommend the open-source kernel modules
|
||||
# Turing+ (GTX 16xx, RTX 20xx-50xx, Quadro RTX, datacenter A/H/T/L series) have GSP firmware
|
||||
if echo "$NVIDIA" | grep -qE "GTX 16[0-9]{2}|RTX [2-5][0-9]{3}|Quadro RTX|RTX A[0-9]{4}|A[1-9][0-9]{2}|H[1-9][0-9]{2}|T4|L[0-9]+"; then
|
||||
PACKAGES=(nvidia-open-dkms nvidia-utils lib32-nvidia-utils libva-nvidia-driver)
|
||||
elif echo "$NVIDIA" | grep -qE "GTX 9|GTX 10|Quadro P|MX1|MX2|MX3"; then
|
||||
# Pascal (10xx, Quadro Pxxx, MX150, MX2xx, and MX3xx) and Maxwell (9xx, MX110, and MX130) use legacy branch that can only be installed from AUR
|
||||
GPU_ARCH="turing_plus"
|
||||
# Maxwell (GTX 9xx), Pascal (GT/GTX 10xx, Quadro P, MX series), Volta (Titan V, Tesla V100, Quadro GV100) lack GSP
|
||||
elif echo "$NVIDIA" | grep -qE "GTX (9[0-9]{2}|10[0-9]{2})|GT 10[0-9]{2}|Quadro [PM][0-9]{3,4}|Quadro GV100|MX *[0-9]+|Titan (X|Xp|V)|Tesla V100"; then
|
||||
PACKAGES=(nvidia-580xx-dkms nvidia-580xx-utils lib32-nvidia-580xx-utils)
|
||||
GPU_ARCH="maxwell_pascal_volta"
|
||||
fi
|
||||
# Bail if no supported GPU
|
||||
if [ -z "${PACKAGES+x}" ]; then
|
||||
@@ -29,12 +31,23 @@ EOF
|
||||
MODULES+=(nvidia nvidia_modeset nvidia_uvm nvidia_drm)
|
||||
EOF
|
||||
|
||||
# Add NVIDIA environment variables
|
||||
cat >>$HOME/.config/hypr/envs.conf <<'EOF'
|
||||
# Add NVIDIA environment variables based on GPU architecture
|
||||
if [ "$GPU_ARCH" = "turing_plus" ]; then
|
||||
# Turing+ (RTX 20xx, GTX 16xx, and newer) with GSP firmware support
|
||||
cat >>"$HOME/.config/hypr/envs.conf" <<'EOF'
|
||||
|
||||
# NVIDIA
|
||||
# NVIDIA (Turing+ with GSP firmware)
|
||||
env = NVD_BACKEND,direct
|
||||
env = LIBVA_DRIVER_NAME,nvidia
|
||||
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
|
||||
EOF
|
||||
elif [ "$GPU_ARCH" = "maxwell_pascal_volta" ]; then
|
||||
# Maxwell/Pascal/Volta (GTX 9xx/10xx, GT 10xx, Quadro P/M/GV, MX series, Titan X/Xp/V) lack GSP firmware
|
||||
cat >>"$HOME/.config/hypr/envs.conf" <<'EOF'
|
||||
|
||||
# NVIDIA (Maxwell/Pascal/Volta without GSP firmware)
|
||||
env = NVD_BACKEND,egl
|
||||
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
|
||||
EOF
|
||||
fi
|
||||
fi
|
||||
|
||||
2
install/config/hibernation.sh
Normal file
2
install/config/hibernation.sh
Normal file
@@ -0,0 +1,2 @@
|
||||
# Enable hibernation
|
||||
omarchy-hibernation-setup --force
|
||||
@@ -147,4 +147,3 @@ xournalpp
|
||||
yaru-icon-theme
|
||||
yay
|
||||
zoxide
|
||||
r8168-lts
|
||||
32
migrations/1770159912.sh
Normal file
32
migrations/1770159912.sh
Normal file
@@ -0,0 +1,32 @@
|
||||
echo "Fix NVIDIA environment variables for Maxwell/Pascal/Volta GPUs"
|
||||
|
||||
# Detect if user has Maxwell/Pascal/Volta GPU (pre-Turing cards without GSP firmware)
|
||||
# Maxwell (GTX 9xx), Pascal (GT/GTX 10xx, Quadro P, MX series), Volta (Titan V, Tesla V100, Quadro GV100)
|
||||
NVIDIA="$(lspci | grep -i 'nvidia')"
|
||||
if echo "$NVIDIA" | grep -qE "GTX (9[0-9]{2}|10[0-9]{2})|GT 10[0-9]{2}|Quadro [PM][0-9]{3,4}|Quadro GV100|MX *[0-9]+|Titan (X|Xp|V)|Tesla V100"; then
|
||||
ENVS_CONF="$HOME/.config/hypr/envs.conf"
|
||||
|
||||
if [ -f "$ENVS_CONF" ]; then
|
||||
# Check if file contains problematic variables
|
||||
if grep -qE "env = (NVD_BACKEND,direct|LIBVA_DRIVER_NAME,nvidia)" "$ENVS_CONF"; then
|
||||
echo "Removing incompatible NVIDIA environment variables for legacy GPU..."
|
||||
|
||||
# Create backup
|
||||
cp "$ENVS_CONF" "$ENVS_CONF.bak.$(date +%s)"
|
||||
|
||||
# Remove all NVIDIA env lines and section headers (we re-add the correct ones below)
|
||||
sed -i '/^env = \(NVD_BACKEND\|LIBVA_DRIVER_NAME\|__GLX_VENDOR_LIBRARY_NAME\),/d; /^# NVIDIA/d' "$ENVS_CONF"
|
||||
|
||||
# Add correct environment variables for legacy GPUs
|
||||
cat >>"$ENVS_CONF" <<'EOF'
|
||||
|
||||
# NVIDIA (Maxwell/Pascal/Volta without GSP firmware)
|
||||
env = NVD_BACKEND,egl
|
||||
env = __GLX_VENDOR_LIBRARY_NAME,nvidia
|
||||
EOF
|
||||
|
||||
echo "NVIDIA environment variables updated. A backup was saved to $ENVS_CONF.bak.*"
|
||||
echo "Please restart Hyprland for changes to take effect."
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
@@ -1,6 +0,0 @@
|
||||
echo "Fix Realtek RTL8111/8168/8211/8411 ethernet adapter support for ASUS TUF and other laptops"
|
||||
|
||||
# Run the hardware detection script for existing installations
|
||||
if [ -f "$OMARCHY_INSTALL/config/hardware/fix-realtek-r8168.sh" ]; then
|
||||
run_logged $OMARCHY_INSTALL/config/hardware/fix-realtek-r8168.sh
|
||||
fi
|
||||
7
migrations/1770393078.sh
Normal file
7
migrations/1770393078.sh
Normal file
@@ -0,0 +1,7 @@
|
||||
echo "Add async-backend = epoll to ghostty config to fix high IO pressure"
|
||||
|
||||
if [[ -f ~/.config/ghostty/config ]] && ! grep -q "^async-backend" ~/.config/ghostty/config; then
|
||||
echo "" >> ~/.config/ghostty/config
|
||||
echo "# Fix general slowness on hyprland (https://github.com/ghostty-org/ghostty/discussions/3224)" >> ~/.config/ghostty/config
|
||||
echo "async-backend = epoll" >> ~/.config/ghostty/config
|
||||
fi
|
||||
@@ -10,79 +10,3 @@ return {
|
||||
},
|
||||
},
|
||||
}
|
||||
-- local function has_miasma_in_user_plugins()
|
||||
-- local plugins_dir = vim.fn.expand("~/.config/nvim/lua/plugins")
|
||||
-- if vim.fn.isdirectory(plugins_dir) ~= 1 then
|
||||
-- return false
|
||||
-- end
|
||||
-- local plugin_files = vim.fn.glob(plugins_dir .. "/**/*.lua", true, true)
|
||||
-- for _, file in ipairs(plugin_files) do
|
||||
-- local ok, lines = pcall(vim.fn.readfile, file)
|
||||
-- if ok then
|
||||
-- for _, line in ipairs(lines) do
|
||||
-- if line:find("xero/miasma.nvim", 1, true) then
|
||||
-- return true
|
||||
-- end
|
||||
-- end
|
||||
-- end
|
||||
-- end
|
||||
-- return false
|
||||
-- end
|
||||
--
|
||||
-- if has_miasma_in_user_plugins() then
|
||||
-- return {
|
||||
-- {
|
||||
-- "xero/miasma.nvim",
|
||||
-- lazy = false,
|
||||
-- priority = 1000,
|
||||
-- config = function()
|
||||
-- vim.cmd("colorscheme miasma")
|
||||
-- end,
|
||||
-- },
|
||||
-- }
|
||||
-- end
|
||||
--
|
||||
-- return {
|
||||
-- {
|
||||
-- "bjarneo/aether.nvim",
|
||||
-- name = "aether",
|
||||
-- priority = 1000,
|
||||
-- opts = {
|
||||
-- disable_italics = false,
|
||||
-- colors = {
|
||||
-- -- Monotone shades (base00-base07)
|
||||
-- base00 = "#222222", -- Default background
|
||||
-- base01 = "#666666", -- Lighter background (status bars)
|
||||
-- base02 = "#e4c47a", -- Selection background
|
||||
-- base03 = "#666666", -- Comments, invisibles
|
||||
-- base04 = "#c2c2b0", -- Dark foreground
|
||||
-- base05 = "#c2c2b0", -- Default foreground
|
||||
-- base06 = "#d7c483", -- Light foreground
|
||||
-- base07 = "#d7c483", -- Light background
|
||||
--
|
||||
-- -- Accent colors (base08-base0F)
|
||||
-- base08 = "#685742", -- Variables, errors, red
|
||||
-- base09 = "#685742", -- Integers, constants, orange
|
||||
-- base0A = "#b36d43", -- Classes, types, yellow
|
||||
-- base0B = "#5f875f", -- Strings, green
|
||||
-- base0C = "#c9a554", -- Support, regex, cyan
|
||||
-- base0D = "#78824b", -- Functions, keywords, blue
|
||||
-- base0E = "#bb7744", -- Keywords, storage, magenta
|
||||
-- base0F = "#b36d43", -- Deprecated, brown/yellow
|
||||
-- },
|
||||
-- },
|
||||
-- config = function(_, opts)
|
||||
-- require("aether").setup(opts)
|
||||
-- vim.cmd.colorscheme("aether")
|
||||
--
|
||||
-- -- Enable hot reload
|
||||
-- require("aether.hotreload").setup()
|
||||
-- end,
|
||||
-- },
|
||||
-- {
|
||||
-- "LazyVim/LazyVim",
|
||||
-- opts = {
|
||||
-- colorscheme = "aether",
|
||||
-- },
|
||||
-- },
|
||||
-- }
|
||||
|
||||
BIN
themes/vantablack/backgrounds/1-vantablack.jpg
Normal file
BIN
themes/vantablack/backgrounds/1-vantablack.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.1 MiB |
BIN
themes/vantablack/backgrounds/2-vantablack.jpg
Normal file
BIN
themes/vantablack/backgrounds/2-vantablack.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 955 KiB |
BIN
themes/vantablack/backgrounds/3-vantablack.jpg
Normal file
BIN
themes/vantablack/backgrounds/3-vantablack.jpg
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 444 KiB |
70
themes/vantablack/btop.theme
Normal file
70
themes/vantablack/btop.theme
Normal file
@@ -0,0 +1,70 @@
|
||||
# Main background, empty for terminal default, need to be empty if you want transparent background
|
||||
theme[main_bg]="#0d0d0d"
|
||||
|
||||
# Main text color
|
||||
theme[main_fg]="#ffffff"
|
||||
|
||||
# Title color for boxes
|
||||
theme[title]="#9b9b9b"
|
||||
|
||||
# Highlight color for keyboard shortcuts
|
||||
theme[hi_fg]="#b0b0b0"
|
||||
|
||||
# Background color of selected item in processes box
|
||||
theme[selected_bg]="#fdfdfd"
|
||||
|
||||
# Foreground color of selected item in processes box
|
||||
theme[selected_fg]="#ffffff"
|
||||
|
||||
# Color of inactive/disabled text
|
||||
theme[inactive_fg]="#fdfdfd"
|
||||
|
||||
# Misc colors for processes box including mini cpu graphs, details memory graph and details status text
|
||||
theme[proc_misc]="#9b9b9b"
|
||||
|
||||
# Box outline and divider line color
|
||||
theme[cpu_box]="#b6b6b6"
|
||||
theme[mem_box]="#b6b6b6"
|
||||
theme[net_box]="#b6b6b6"
|
||||
theme[proc_box]="#b6b6b6"
|
||||
theme[div_line]="#fdfdfd"
|
||||
|
||||
# Gradient for all meters and graphs
|
||||
theme[temp_start]="#b0b0b0"
|
||||
theme[temp_mid]="#8d8d8d"
|
||||
theme[temp_end]="#b6b6b6"
|
||||
|
||||
|
||||
theme[cpu_start]="#b0b0b0"
|
||||
theme[cpu_mid]="#8d8d8d"
|
||||
theme[cpu_end]="#b6b6b6"
|
||||
|
||||
|
||||
theme[free_start]="#8d8d8d"
|
||||
theme[free_mid]="#cecece"
|
||||
theme[free_end]="#cecece"
|
||||
|
||||
|
||||
theme[cached_start]="#cecece"
|
||||
theme[cached_mid]="#cecece"
|
||||
theme[cached_end]="#cecece"
|
||||
|
||||
|
||||
theme[available_start]="#b0b0b0"
|
||||
theme[available_mid]="#b0b0b0"
|
||||
theme[available_end]="#b0b0b0"
|
||||
|
||||
|
||||
theme[used_start]="#b6b6b6"
|
||||
theme[used_mid]="#b6b6b6"
|
||||
theme[used_end]="#b6b6b6"
|
||||
|
||||
|
||||
theme[download_start]="#cecece"
|
||||
theme[download_mid]="#b0b0b0"
|
||||
theme[download_end]="#8d8d8d"
|
||||
|
||||
|
||||
theme[upload_start]="#cecece"
|
||||
theme[upload_mid]="#b0b0b0"
|
||||
theme[upload_end]="#8d8d8d"
|
||||
31
themes/vantablack/colors.toml
Normal file
31
themes/vantablack/colors.toml
Normal file
@@ -0,0 +1,31 @@
|
||||
# UI Colors (extended)
|
||||
accent = "#8d8d8d"
|
||||
cursor = "#ffffff"
|
||||
|
||||
# Primary colors
|
||||
foreground = "#ffffff"
|
||||
background = "#0d0d0d"
|
||||
|
||||
# Selection colors
|
||||
selection_foreground = "#0d0d0d"
|
||||
selection_background = "#ffffff"
|
||||
|
||||
# Normal colors (ANSI 0-7)
|
||||
color0 = "#0d0d0d"
|
||||
color1 = "#a4a4a4"
|
||||
color2 = "#b6b6b6"
|
||||
color3 = "#cecece"
|
||||
color4 = "#8d8d8d"
|
||||
color5 = "#9b9b9b"
|
||||
color6 = "#b0b0b0"
|
||||
color7 = "#ececec"
|
||||
|
||||
# Bright colors (ANSI 8-15)
|
||||
color8 = "#fdfdfd"
|
||||
color9 = "#a4a4a4"
|
||||
color10 = "#b6b6b6"
|
||||
color11 = "#cecece"
|
||||
color12 = "#8d8d8d"
|
||||
color13 = "#9b9b9b"
|
||||
color14 = "#b0b0b0"
|
||||
color15 = "#ffffff"
|
||||
1
themes/vantablack/icons.theme
Normal file
1
themes/vantablack/icons.theme
Normal file
@@ -0,0 +1 @@
|
||||
Yaru-gray
|
||||
12
themes/vantablack/neovim.lua
Normal file
12
themes/vantablack/neovim.lua
Normal file
@@ -0,0 +1,12 @@
|
||||
return {
|
||||
{
|
||||
"bjarneo/vantablack.nvim",
|
||||
priority = 1000,
|
||||
},
|
||||
{
|
||||
"LazyVim/LazyVim",
|
||||
opts = {
|
||||
colorscheme = "vantablack",
|
||||
},
|
||||
},
|
||||
}
|
||||
BIN
themes/vantablack/preview.png
Normal file
BIN
themes/vantablack/preview.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 552 KiB |
4
themes/vantablack/vscode.json
Normal file
4
themes/vantablack/vscode.json
Normal file
@@ -0,0 +1,4 @@
|
||||
{
|
||||
"name": "Vantablack",
|
||||
"extension": "Bjarne.vantablack-omarchy"
|
||||
}
|
||||
Reference in New Issue
Block a user