subida de archivos

This commit is contained in:
2026-03-30 15:31:11 -06:00
commit bd334342df
81 changed files with 4480 additions and 0 deletions

30
aplicaciones.txt Executable file
View File

@@ -0,0 +1,30 @@
| Notion firefox -P no-tabs-profile --new-window https://www.notion.so/Journal-2025-5d0ec750856e45b3af1364c0088acdc0
| Apple-Music firefox -P no-tabs-profile --new-window https://music.apple.com/sv/new
| YouTube firefox -P no-tabs-profile --new-window https://www.youtube.com/
| REDDIT firefox -P no-tabs-profile --new-window https://www.reddit.com/
| Facebook firefox -P no-tabs-profile --new-window https://www.facebook.com/
| Konachan firefox -P no-tabs-profile --new-window https://konachan.com/post
|󰎁 CrunchyRoll firefox -P no-tabs-profile --new-window https://www.crunchyroll.com/es
|󰎁 AnimeFLV firefox -P no-tabs-profile --new-window https://www3.animeflv.net/
|󰸉 WallHaven firefox -P no-tabs-profile --new-window https://wallhaven.cc/toplist?page=2
|󰸉 CHAT.GPT firefox -P no-tabs-profile --new-window https://chatgpt.com/
|󰸉 CODELLAMA firefox -P no-tabs-profile --new-window http://localhost:8080/
| Discord discord &
| EMAIL thunderbird &
| Bashtop kitty bashtop
| HTOP kitty htop
| Waybar waybar &
| NVtop kitty nvtop
|󰇥 HomePage firefox -P no-tabs-profile --new-window http://192.168.1.131:3000
|󰇥 Deluged firefox -P no-tabs-profile --new-window http://192.168.1.131:8112
| Ranger kitty ranger /home/arthur/
| WaybarConfig kitty nvim -c "NERDTree" /home/arthur/.config/waybar/
| RangerConfig kitty --directory /home/arthur/.config/ranger nvim /home/arthur/.config/ranger/rc.conf -c "NERDTree"
| EWWConfig kitty --directory /home/arthur/.config/eww nvim /home/arthur/.config/eww/eww.yuck -c "NERDTree"
| HYPRConfig kitty --directory /home/arthur/.config/hypr/ nvim /home/arthur/.config/hypr/hyprland.conf -c "NERDTree"
| WallpaperDB kitty nvim /home/arthur/scripts/wallpapers_list.txt
| AppsDB kitty nvim /home/arthur/scripts/aplicaciones.txt
| Ranger_colorscheme ranger /home/arthur/.cache/wal/schemes/
| Scripts kitty nvim -c "NERDTree"
| Scripts kitty --directory /home/arthur/scripts/ nvim /home/arthur/scripts/ -c "NERDTree"
|_ ______________________________________ ________________________________________________________

30
aplicaciones.txt.bk Executable file
View File

@@ -0,0 +1,30 @@
| Notion firefox -P no-tabs-profile --new-window https://www.notion.so/Journal-2025-5d0ec750856e45b3af1364c0088acdc0
| Apple-Music firefox -P no-tabs-profile --new-window https://music.apple.com/sv/new
| YouTube firefox -P no-tabs-profile --new-window https://www.youtube.com/
| REDDIT firefox -P no-tabs-profile --new-window https://www.reddit.com/
| Facebook firefox -P no-tabs-profile --new-window https://www.facebook.com/
| Konachan firefox -P no-tabs-profile --new-window https://konachan.com/post
|󰎁 CrunchyRoll firefox -P no-tabs-profile --new-window https://www.crunchyroll.com/es
|󰎁 AnimeFLV firefox -P no-tabs-profile --new-window https://www3.animeflv.net/
|󰸉 WallHaven firefox -P no-tabs-profile --new-window https://wallhaven.cc/toplist?page=2
|󰸉 CHAT.GPT firefox -P no-tabs-profile --new-window https://chatgpt.com/
|󰸉 CODELLAMA firefox -P no-tabs-profile --new-window http://localhost:8080/
| Discord discord &
| EMAIL thunderbird &
| Bashtop kitty bashtop
| HTOP kitty htop
| Waybar waybar &
| NVtop kitty nvtop
|󰇥 HomePage firefox -P no-tabs-profile --new-window http://192.168.1.131:3000
|󰇥 Deluged firefox -P no-tabs-profile --new-window http://192.168.1.131:8112
| Ranger kitty ranger /home/arthur/
| WaybarConfig kitty nvim -c "NERDTree" /home/arthur/.config/waybar/
| RangerConfig kitty --directory /home/arthur/.config/ranger nvim /home/arthur/.config/ranger/rc.conf -c "NERDTree"
| EWWConfig kitty --directory /home/arthur/.config/eww nvim /home/arthur/.config/eww/eww.yuck -c "NERDTree"
| HYPRConfig kitty --directory /home/arthur/.config/hypr/ nvim /home/arthur/.config/hypr/hyprland.conf -c "NERDTree"
| WallpaperDB kitty nvim /home/arthur/scripts/wallpapers_list.txt
| AppsDB kitty nvim /home/arthur/scripts/aplicaciones.txt
| Ranger_colorscheme ranger /home/arthur/.cache/wal/schemes/
| Scripts kitty nvim -c "NERDTree"
| Scripts kitty --directory /home/arthur/scripts/ nvim /home/arthur/scripts/ -c "NERDTree"
|_ ______________________________________ ________________________________________________________

27
backup_shutdow.sh Executable file
View File

@@ -0,0 +1,27 @@
#!/bin/bash
# Ruta al repositorio Borg
REPO="/mnt/UNO/borg-repo"
# Nombre del nuevo backup
ARCHIVE="arch-backup-$(date +%Y-%m-%d_%H-%M)"
echo ">>> Apagando MOUNT CIFS"
mount | grep cifs | awk '{print $3}' | xargs -n1 sudo umount
echo ">>> Iniciando backup a las $(date)"
sudo borg create --verbose --filter AME --list --stats \
--exclude /proc --exclude /dev --exclude /sys --exclude /tmp \
--exclude /run --exclude /mnt --exclude /media --exclude /lost+found \
--exclude '**/.cache' \
--compression zstd,10 \
"$REPO::$ARCHIVE" /
# Limpieza: conserva últimos 7 diarios, 4 semanales y 6 mensuales
echo ">>> Limpiando backups antiguos"
borg prune -v --list "$REPO" \
--keep-daily=7 --keep-weekly=4 --keep-monthly=6
echo ">>> Montando nuevamente"
sudo mount -a
echo ">>> Backup completado."

BIN
c-scripts/a.out Executable file

Binary file not shown.

36
c-scripts/image_list.txt Executable file
View File

@@ -0,0 +1,36 @@
2025-05-01-181919_hyprshot.png
7731792.jpg
wallhaven-5ydwp7.jpg
wallhaven-2yp7kx.jpg
wallhaven-ly93ry.png
hm2.jpg
wallhaven-vpx9d8.jpg
2025-05-01-181934_hyprshot.png
wallhaven-3qo72y.jpg
wallhaven-w58xxr.jpg
wallhaven-d8xrxj.png
wallhaven-p2zoqp.jpg
wallhaven-oxolyp.png
tetris.png
wallhaven-2k1wlg.jpg
wallhaven-9ox888.png
wallhaven-zpg2jo.jpg
wallhaven-5g2gp1.png
2025-05-01-181246_hyprshot.png
2025-05-01-180922_hyprshot.png
2025-05-17-122055_hyprshot.png
wallhaven-9oxg98.jpg
2025-05-28-112241_hyprshot.png
wallhaven-3qkggv.jpg
wallhaven-w5ojd6.jpg
w2.jpg
wallhaven-6ozg3x.jpg
KOHAKUNUSHI_katana_pistol_teeth_Nord_Theme_gun_anime_anime_girls-2228190-1141462850.png
wallhaven-p9zjrj.png
w8.jpg
arch-rainbow-1920x1080.png
5748270.png
wallhaven-e8o9zk.jpg
2025-06-26-153933_hyprshot.png
2025-05-01-182047_.png
wallhaven-9o5xr1.jpg

44
c-scripts/list_images.c Executable file
View File

@@ -0,0 +1,44 @@
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/types.h>
#include <dirent.h>
int main() {
DIR *dir;
struct dirent *entry;
char filepath[1024];
FILE *fp;
// Open the directory
dir = opendir("/home/arthur/Pictures");
if (dir == NULL) {
perror("opendir");
return 1;
}
// Create a new text file to save the list of images
fp = fopen("image_list.txt", "w");
if (fp == NULL) {
perror("fopen");
return 1;
}
while ((entry = readdir(dir)) != NULL) {
// Check if the entry is a file and ends with ".jpg" or ".jpeg"
if (entry->d_type == DT_REG && strstr(entry->d_name, ".jpg") != NULL) {
printf("Found image: %s\n", entry->d_name);
fprintf(fp, "%s\n", entry->d_name);
}
if (entry->d_type == DT_REG && strstr(entry->d_name, ".png") != NULL) {
printf("Found image: %s\n", entry->d_name);
fprintf(fp, "%s\n", entry->d_name);
}
}
// Close the directory and text file
closedir(dir);
fclose(fp);
return 0;
}

19
cache_generator.sh Executable file
View File

@@ -0,0 +1,19 @@
#!/bin/bash
DOC_DIR="$HOME/Documents"
CACHE="$DOC_DIR/Docs/rofi_documentos.txt"
mkdir -p "$(dirname "$CACHE")"
# Buscar archivos relevantes y escribirlos en el caché
find "$DOC_DIR" -type f \( -iname '*.pdf' \) > "$CACHE"
#-iname '*.txt' -o \
#-iname '*.docx' -o \
#-iname '*.doc' -o \
#-iname '*.xls' -o \
#-iname '*.xlsx' -o \
#-iname '*.ppt' -o \
#-iname '*.pptx' -o \
#-iname '*.md' \

8
constantlib.sh Executable file
View File

@@ -0,0 +1,8 @@
#!/bin/bash
nb_color="#1D2021"
nf_color="#f9f5d7"
sb_color="#9c563c"
sf_color="#1e1d2e"
fn_text="FiraCode Nerd Font:size=12"

8
constantlib.sh.catpu Executable file
View File

@@ -0,0 +1,8 @@
#!/bin/bash
nb_color="#414559"
nf_color="#c6d0f5"
sb_color="#ca9ee6"
sf_color="#232634"
fn_text="FiraCode Nerd Font:size=12"

8
constantlib.sh.gruvbox Executable file
View File

@@ -0,0 +1,8 @@
#!/bin/bash
nb_color="#1D2021"
nf_color="#f9f5d7"
sb_color="#9c563c"
sf_color="#1e1d2e"
fn_text="FiraCode Nerd Font:size=12"

8
constantlib.sh.nord Executable file
View File

@@ -0,0 +1,8 @@
#!/bin/bash
nb_color="#1D2021"
nf_color="#f9f5d7"
sb_color="#9c563c"
sf_color="#1e1d2e"
fn_text="FiraCode Nerd Font:size=12"

25
dmenu_run_script.sh Executable file
View File

@@ -0,0 +1,25 @@
#!/bin/bash
source ~/scripts/constantlib.sh
scripts=$(ls ~/scripts/*.sh)
label="󰆍 Ejecutar comando:"
lines=$( ls ~/scripts/*.sh 2>/dev/null | wc -l )
echo "LINEAS:"$lines
script=$(echo -e "$scripts" | dmenu -l $(( lines )) -p "$label" -nb "$nb_color" -nf "$nf_color" -sb "$sb_color" -sf "$sf_color" -fn "$fn_text")
if grep -q "sudo" "$script"; then
password=$( echo -e "contraseña de sudo" | dmenu -l 1 -p "󰟵 Contraseña sudo:" -nb "$nb_color" -nf "$nf_color" -sb "$sb_color" -sf "$sf_color" -fn "$fn_text" )
if [[ -z "$password" ]]; then
notify-send "Cancelado" "No se ejecutó el script"
exit 1
fi
# Ejecutar el script con la contraseña usando sudo -S
echo "$password" | sudo -S sh "$script"
else
sh "$script"
fi

59
dmenu_set_image.sh Executable file
View File

@@ -0,0 +1,59 @@
#!/bin/bash
dir="$HOME/.config/rofi/launchers/type-7"
theme='style-9w'
wengine_setter='/home/arthur/.config/themes/wallpaper-engine.sh'
wengine_setter_tema='/home/arthur/.config/themes/wallpaper-engine.sh'
setwallpaper='/home/arthur/scripts/set-wallpaperengine.sh'
hyprpaper="$HOME/.config/hypr/hyprpaper.conf"
wallpaper_dir="$HOME/Pictures/wallpapers/"
opciones_wallpapers=""
while IFS= read -r line
do
img=$wallpaper_dir$line
if [ -e "$img" ]; then
opciones_wallpapers=$opciones_wallpapers$line" ~ "$wallpaper_dir$line"\0icon\x1f$img\n"
fi
done <<< $( ls -1 $wallpaper_dir )
wallpaper=$(echo -e "$opciones_wallpapers" | rofi -dmenu -p "$label_w" -theme ${dir}/${theme}.rasi )
if [ -z "$wallpaper" ]; then
echo -e "No hubo seleccion"
exit 1
fi
IFS='~' read -r -a partes <<< "$wallpaper"
wallpaper=${partes[1]}
wallpaper=$(echo "$wallpaper" | sed 's/^[ \t]*//;s/[ \t]*$//')
echo -e $wallpaper
killall linux-wallpaperengine
sed -i "/^sh /c\sh ${setwallpaper} > /dev/null \&" "$wengine_setter"
sed -i "/^sh /c\sh ${setwallpaper} > /dev/null \&" "$wengine_setter_tema"
temp_mon=$( hyprctl monitors -j | jq -r '.[].name' )
while IFS= read -r line
do
ruta=$(grep "wallpaper = $line," $hyprpaper | cut -d',' -f2)
opciones_monitors="$opciones_monitors$line""\0icon\x1f$ruta\n"
done <<< "$temp_mon"
monitor=$( echo -e "$opciones_monitors" |rofi -dmenu -p "$label" -theme ${dir}/${theme}.rasi )
IFS='\0icon' read -r -a partes <<< "$monitor"
monitor=${partes[0]}
echo "MONITORES: "$monitor
if [ -z "$monitor" ]; then
exit 1
fi
echo "HACIENDO SED DE :>>>>>>>"$monitor
sed -i "/#${monitor} preload/{n;s|^sh .*|sh ${setwallpaper} ${wallpaper} ${monitor} ${scaling} > /dev/null \& |}" "$wengine_setter"
sh $HOME/.config/ranger/set_wallpaper.sh $wallpaper $monitor

111
dmenu_set_wallpaper.sh Executable file
View File

@@ -0,0 +1,111 @@
#!/bin/bash/
#SE ENCARGA DE DESPLEGAR EN UN DMENU CON LA LISTA DE WALLPAPERS QUE HAY EN /scripts/wallpapers_list.txt
#Y AL SELECCIONAR UNO MODIFICA EL ARCHIVO
source ~/scripts/constantlib.sh
#modifica el wallpaper recibe 3 parametros el link de steam, el monitor y el ajuste de pantalla
setwallpaper='/home/arthur/scripts/set-wallpaperengine.sh'
wengine_setter='/home/arthur/.config/themes/wallpaper-engine.sh'
wengine_setter_tema='/home/arthur/.config/themes/wallpaper-engine.sh.'
not_found="$HOME/Pictures/.cache_wgengine/not_found.jpg"
hyprpaper="$HOME/.config/hypr/hyprpaper.conf"
dir="$HOME/.config/rofi/launchers/type-7"
theme='style-9'
wallpapers_dir="$HOME/Pictures/wallpapers"
opciones_monitors=""
opciones_wallpapers=""
lineas_wallpapers=0
label="󰍹_Monitor: "
label_w="_Wallpaper: "
linea4=$( sed -n '4p' ~/.bashrc )
valor_tem=$(echo $linea4 | cut -d '=' -f2)
wengine_setter_tema=$wengine_setter_tema$valor_tem
opciones_wallpapers=$opciones_wallpapers"kill ~ none\n"
while read -r nombre url scaling; do
ID=$(cut -c 56-$lenght <<< $url)
img="$HOME/Pictures/.cache_wgengine/$ID.png"
nombre=$(printf '%-35s' "$nombre")
if [ -e "$img" ]; then
opciones_wallpapers=$opciones_wallpapers$nombre" ~ "$url" ~ "$scaling"\0icon\x1f$img\n"
else
opciones_wallpapers=$opciones_wallpapers$nombre" ~ "$url" ~ "$scaling"\0icon\x1f$not_found\n"
fi
done < ~/scripts/wallpapers_list.txt
wallpaper=$(echo -e "$opciones_wallpapers" | rofi -dmenu -p "$label_w" -theme ${dir}/${theme}.rasi )
if [ -z "$wallpaper" ]; then
exit 1
fi
IFS='~' read -r -a partes <<< "$wallpaper"
wallpaper=${partes[1]}
opc=${partes[0]}
scaling=${partes[2]}
wallpaper=$(echo "$wallpaper" | sed 's/^[ \t]*//;s/[ \t]*$//')
opc=$(echo "$opc" | sed 's/^[ \t]*//;s/[ \t]*$//')
#poner wallpaper al inicio del archivo de wallpapers
#primero eliminar fila
sed -i "/^$opc[[:space:]]/d" ~/scripts/wallpapers_list.txt
sed -i "1i$opc $wallpaper $scaling" ~/scripts/wallpapers_list.txt
if [ $opc == 'kill' ]; then
killall linux-wallpaperengine
sed -i "/^sh /c\sh ${setwallpaper} > /dev/null \&" "$wengine_setter"
sed -i "/^sh /c\sh ${setwallpaper} > /dev/null \&" "$wengine_setter_tema"
else
temp_mon=$( hyprctl monitors -j | jq -r '.[].name' )
while IFS= read -r line
do
ruta=$(grep "wallpaper = $line," $hyprpaper | cut -d',' -f2)
opciones_monitors="$opciones_monitors$line""\0icon\x1f$ruta\n"
done <<< "$temp_mon"
monitor=$( echo -e "$opciones_monitors" |rofi -dmenu -p "$label" -theme ${dir}/${theme}.rasi )
IFS='\0icon' read -r -a partes <<< "$monitor"
monitor=${partes[0]}
echo "MONITORES: "$monitor
if [ -z "$monitor" ]; then
exit 1
fi
echo "HACIENDO SED DE :>>>>>>>"$monitor
sed -i "/#${monitor} preload/{n;s|^sh .*|sh ${setwallpaper} ${wallpaper} ${monitor} ${scaling} > /dev/null \& |}" "$wengine_setter"
#sed -i "/#${monitor} preload/{n;s|^sh .*|sh ${setwallpaper} ${wallpaper} ${monitor} ${scaling} |}" "$wengine_setter_tema"
#PYWAL GENERATE
lenght=$(echo $wallpaper| wc -c)
workspace_ID=$(cut -c 56-$lenght <<< $wallpaper)
IMG_PATH=$HOME'/Pictures/.cache_wgengine/'$workspace_ID'.png'
if [ -e "$IMG_PATH" ]; then
echo "El archivo existe"
else
linux-wallpaperengine --bg $workspace_ID --screenshot $IMG_PATH > /dev/null &
sleep 3
echo "El archivo no existe"
echo "archivo creado>>>"$IMG_PATH
fi
sh $HOME/.config/ranger/set_wallpaper.sh $IMG_PATH $monitor
fi
killall linux-wallpaperengine
sh $wengine_setter

51
document_finder.sh Executable file
View File

@@ -0,0 +1,51 @@
#!/bin/bash
# Ruta a tu carpeta de documentos
DOC_DIR="$HOME/Documents"
CACHE="$DOC_DIR/Docs/rofi_documentos.txt"
# Mapeo de íconos Nerd Fonts por extensión
get_icon() {
case "${1##*.}" in
pdf) echo "" ;; # ícono de PDF (nf-mdi-file_pdf_box)
txt|md|log) echo "" ;; # ícono de texto
doc|docx) echo "" ;; # ícono de Word
xls|xlsx) echo "" ;; # Excel
ppt|pptx) echo "" ;; # PowerPoint
*) echo "" ;; # genérico
esac
}
# Si el caché no existe o tiene más de 60 segundos, actualízalo
if [[ ! -f "$CACHE" ]]; then
find "$DOC_DIR" -type f \( -iname '*.pdf' \) > "$CACHE"
fi
# Crear lista formateada con íconos
list=""
while IFS= read -r file; do
icon=$(get_icon "$file")
base=$(basename "$file")
list+="$icon $base ::$file\n"
done < "$CACHE"
# Mostrar menú con rofi
seleccion=$(echo -e "$list" | rofi -dmenu -markup-rows -p " Documentos")
# Extraer solo el nombre del archivo
archivo=$(echo "$seleccion" | cut -d' ' -f2-)
echo "SELECCION :>>>"$seleccion
echo "ARCHIVO :>>>"$archivo
# Abrir si se seleccionó algo
[[ -z "$archivo" ]] && exit
# Buscar la ruta completa del archivo
#ruta=$(find "$DOC_DIR" -type f -name "$archivo" | head -n 1)
ruta="${seleccion##*::}"
firefox -P default-release "$ruta" &

7
fan_scripts/fan_auto.sh Executable file
View File

@@ -0,0 +1,7 @@
#!/bin/bash
# Establecer configuración automática (como la que configuraste inicialmente)
sudo sed -i 's/MINTEMP=45/MINTEMP=36/' /etc/fancontrol
sudo sed -i 's/MAXTEMP=50/MAXTEMP=82/' /etc/fancontrol
sudo systemctl restart fancontrol

7
fan_scripts/fan_silent.sh Executable file
View File

@@ -0,0 +1,7 @@
#!/bin/bash
# Establecer configuración silenciosa
sudo sed -i 's/MINTEMP=36/MINTEMP=45/' /etc/fancontrol
sudo sed -i 's/MAXTEMP=82/MAXTEMP=50/' /etc/fancontrol
sudo systemctl restart fancontrol

7
fan_scripts/fan_turbo.sh Executable file
View File

@@ -0,0 +1,7 @@
#!/bin/bash
# Establecer configuración turbo
sudo sed -i 's/MINTEMP=36/MINTEMP=30/' /etc/fancontrol
sudo sed -i 's/MAXTEMP=82/MAXTEMP=90/' /etc/fancontrol
sudo systemctl restart fancontrol

28
fzfz.sh Executable file
View File

@@ -0,0 +1,28 @@
#!/bin/bash
# Cambia esto por el directorio que quieras explorar
SEARCH_DIR="$HOME"
# Buscar archivos y pasarlos a fzf
file=$(find "$SEARCH_DIR" -type f | fzf --height=40% --reverse --prompt="Abrir archivo: ")
# Si no se seleccionó nada, salir
[[ -z "$file" ]] && exit
# Obtener extensión
ext="${file##*.}"
# Abrir según extensión
case "$ext" in
jpg|jpeg|png|gif)
imv "$file" & ;;
pdf)
firefox -P default-release "$file" & ;;
mp4|mkv)
mpv "$file" & ;;
txt|md|log|sh)
alacritty -e nvim "$file" & ;;
*)
xdg-open "$file" & ;;
esac

9
get_flag.sh Executable file
View File

@@ -0,0 +1,9 @@
#!/bin/bash
country_code=$(curl -s http://ip-api.com/json/ | jq -r '.countryCode')
#python3 -c "code='$country_code'; print(''.join([chr(127397 + ord(c)) for c in code]))"
echo $country_code

17
get_raspi_info.sh Executable file
View File

@@ -0,0 +1,17 @@
#!/bin/bash
temp_hdd=$(ssh arthur@192.168.1.131 "sudo smartctl -A /dev/sdb | grep -i temperature")
temp_cpu=$(ssh arthur@192.168.1.131 "vcgencmd measure_temp")
used_mem=$(ssh arthur@192.168.1.131 "free -gth| grep Mem")
used_disk=$(ssh arthur@192.168.1.131 "df -h| grep /dev/sdb2")
temp_hdd_f=$(cut -c 85-90 <<< $temp_hdd)
temp_cpu_f=$(cut -c 6-11 <<< $temp_cpu)
total_mem_f=$(cut -c 16-19 <<< $used_mem)
used_mem_f=$(cut -c 28-31 <<< $used_mem)
used_disk_f1=$(cut -c 29-37 <<< $used_disk)
output="HDD:"$temp_hdd_f"'C "$used_disk_f1"\n""CPU: "$temp_cpu_f"\n""MEM: "$used_mem_f/""$total_mem_f"\n"
echo $output
notify-send -t 15000 -i /home/arthur/scripts/pngegg.png "Raspberry pi" "$output"

8
hypr-sleep.sh Executable file
View File

@@ -0,0 +1,8 @@
#!/bin/bash
# Bloquear pantalla (opcional)
# hyprlock & sleep 1
openrgb -p /home/arthur/.config/OpenRGB/alloff.orp
hyprctl dispatch exit
# Suspend
systemctl suspend

4
hypr-wakeup.sh Executable file
View File

@@ -0,0 +1,4 @@
#!/bin/bash
hyprland
echo "Se reanudó del suspend" >> /tmp/resume.log
sleep 3

18
launcher_apps.sh Executable file
View File

@@ -0,0 +1,18 @@
#!/bin/bash
apps=""
opciones_apps=""
while read -r icono nombre comando ; do
nombre=$( printf '%-40s' "$nombre" )
opciones_apps=$opciones_apps$icono" |"$nombre"|"$comando"\n"
done < ~/scripts/aplicaciones.txt
dir="$HOME/.config/rofi/launchers/type-7"
theme='style-2'
app=$( echo -e "$opciones_apps" | rofi -show -dmenu -p "Ejecutar aplicacion" )
IFS='|' read -r -a partes <<< "$app"
command=${partes[3]}
$command &

2
mount.sh Executable file
View File

@@ -0,0 +1,2 @@
#!/bin/bash
echo bryan2423 | sudo mount -t cifs //192.168.1.131/ROOMS /home/arthur/rooms -o username=arthur,password=bryan2423,uid=1000,gid=1000,vers=3.0

2
mountDo.sh Executable file
View File

@@ -0,0 +1,2 @@
sudo mount -t cifs //192.168.1.131/Music /home/arthur/Music -o username=arthur,password=bryan2423,uid=1000,gid=1000,vers=3.0
ers=3.0

0
mountMusic.sh Executable file
View File

1
mountPx.sh Executable file
View File

@@ -0,0 +1 @@
sudo mount -t cifs //192.168.1.131/Pictures /home/arthur/Px -o username=arthur,password=bryan2423,uid=1000,gid=1000,vers=3.0

1
moutOT.sh Executable file
View File

@@ -0,0 +1 @@
sudo mount -t cifs //192.168.1.131/OT /home/arthur/PROJ -o username=arthur,password=bryan2423,uid=1000,gid=1000,vers=3.0

11
move_all_wkspce.sh Executable file
View File

@@ -0,0 +1,11 @@
#!/bin/bash
for ws in 1 2; do
hyprctl dispatch workspace "$ws"
sleep 0.1 # espera breve para el cambio de workspace
while hyprctl activewindow | grep -q 'class'; do
hyprctl dispatch killactive
sleep 0.1
done
done

6
off-all-screens.sh Executable file
View File

@@ -0,0 +1,6 @@
#!/bin/bash
hyprctl dispatch dpms off DP-3
hyprctl dispatch dpms off DP-2
hyprctl dispatch dpms on HDMI-A-1

6
on-all-screens.sh Executable file
View File

@@ -0,0 +1,6 @@
#!/bin/bash
hyprctl dispatch dpms on DP-3
hyprctl dispatch dpms on DP-2
hyprctl dispatch dpms on HDMI-A-1

BIN
pngegg.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 196 KiB

40
pulseaudio.sh Executable file
View File

@@ -0,0 +1,40 @@
#!/bin/bash
# Obtener el índice del sink actual
CURRENT_SINK=$(pactl info | grep 'Default Sink' | awk '{print $3}')
# Obtener la lista de sinks disponibles
SINKS=($(pactl list short sinks | awk '{print $2}'))
# Buscar el índice actual en la lista
for i in "${!SINKS[@]}"; do
if [[ "${SINKS[$i]}" = "$CURRENT_SINK" ]]; then
CURRENT_INDEX=$i
break
fi
done
# Calcular el siguiente sink
NEXT_INDEX=$(( (CURRENT_INDEX + 1) % ${#SINKS[@]} ))
NEXT_SINK=${SINKS[$NEXT_INDEX]}
# Cambiar el sink por defecto
pactl set-default-sink "$NEXT_SINK"
# Mover todas las entradas de audio al nuevo sink
for INPUT in $(pactl list short sink-inputs | awk '{print $1}'); do
pactl move-sink-input "$INPUT" "$NEXT_SINK"
done
# Obtener el nombre legible del nuevo sink
SINK_DESCRIPTION=$(pactl list sinks | awk -v sink="$NEXT_SINK" '
$0 ~ "Name: "sink {
found=1
}
found && $0 ~ /Description:/ {
print substr($0, index($0,$2))
exit
}')
# Enviar notificación con swaync
notify-send -a "Audio Switcher" -i audio-speakers "Salida de audio cambiada" "$SINK_DESCRIPTION"

18
pyprojs/xbox-buttons-test.py Executable file
View File

@@ -0,0 +1,18 @@
import pygame
pygame.init()
pygame.joystick.init()
joystick = pygame.joystick.Joystick(0)
joystick.init()
print(f"Control detectado: {joystick.get_name()}")
print("Presiona botones, Ctrl+C para salir.")
while True:
pygame.event.pump()
for i in range(joystick.get_numbuttons()):
if joystick.get_button(i):
print(f"Botón {i} presionado")
pygame.time.wait(100)

75
pyprojs/xbox_control.py Executable file
View File

@@ -0,0 +1,75 @@
import pyudev
import subprocess
def procesar_dispositivo_conectado(device, inicial=False):
vendor_id = device.get('ID_VENDOR_ID', '')
model_id = device.get('ID_MODEL_ID', '')
name = device.get('NAME', '')
device_str = f"{vendor_id}:{model_id} - {name}"
if "Xbox" in name:
print(f"{'🔍' if inicial else '🎮'} Xbox detectado: {device_str}")
if not inicial:
subprocess.run(["hyprctl", "dispatch", "dpms", "off", "HDMI-A-1"])
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "DP-1"])
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "DP-2"])
elif vendor_id.lower() == '2dc8':
print(f"{'🔍' if inicial else '🎮'} 8BitDo detectado: {device_str}")
if not inicial:
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "HDMI-A-1"])
subprocess.run(["hyprctl", "dispatch", "dpms", "off", "DP-1"])
subprocess.run(["hyprctl", "dispatch", "dpms", "off", "DP-2"])
if not vendor_id:
return # Ignorar dispositivos sin vendor_id
def evento_callback(device):
if device.subsystem != 'input':
return
if device.action == 'add':
procesar_dispositivo_conectado(device)
elif device.action == 'remove':
print(f"❌ Dispositivo desconectado: {device.device_path}")
# --------------------------
# 🔍 Detectar dispositivos ya conectados
# --------------------------
context = pyudev.Context()
print(context.list_devices)
print("🔍 Buscando controles ya conectados...")
subprocess.run(["hyprctl", "dispatch", "dpms", "off", "HDMI-A-1"])
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "DP-1"])
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "DP-2"])
for device in context.list_devices(subsystem='input'):
vendor_id = device.get('ID_VENDOR_ID', '')
model_id = device.get('ID_MODEL_ID', '')
name = device.get('NAME', '')
device_str = f"{vendor_id}:{model_id} - {name}"
print(device_str)
if "8Bit" in name:
print("LOGRE DETECTAR EL CONTROL DE 8BIT")
positivo_conectado(device, inicial = False)
if "Xbox" in name:
print("LOGRE DETECTAR EL CONTROL DE XBOX")
procesar_dispositivo_conectado(device, inicial=True)
# --------------------------
# 👂 Escuchar nuevos eventos
# --------------------------
monitor = pyudev.Monitor.from_netlink(context)
monitor.filter_by(subsystem='input')
observer = pyudev.MonitorObserver(monitor, callback=evento_callback)
observer.start()
print("👀 Escuchando eventos de controles...")
import signal
signal.pause()

347
pyprojs/xbox_py_screen.py Executable file
View File

@@ -0,0 +1,347 @@
import pygame
import os
import pyautogui
import time
import subprocess
import math
import time
class Timer:
def __init__(self):
self.last_time = time.time()
def elapsed_time(self):
current_time = time.time()
elapsed = current_time - self.last_time
self.last_time = current_time
return elapsed
# Inicializa pygame
#variable que indica si ya se conecto el mando y ya se cambio de pantalla
pantalla_pp = False
pygame.init()
pygame.joystick.init()
hay_mando = False
# Inicializa el mando de Xbox
# Define los códigos de los botones que deseas detectar
BOTON_A = 0
BOTON_B = 1
BOTON_X = 3
BOTON_Y = 4
BOTON_START = 11
BOTON_SELECT = 10
BOTON_L1 = 6
BOTON_R1 = 7
BOTON_L3 = 13
BOTON_R3 = 14
HOME = 12
flag_display = True
#CEMU PATHS
path_8bitdo_CEMU = "/home/arthur/.var/app/info.cemu.Cemu/config/Cemu/controllerProfiles/8bit.xml"
path_Sunshine_CEMU = "/home/arthur/.var/app/info.cemu.Cemu/config/Cemu/controllerProfiles/sunshine.xml"
path_switch_CEMU = "/home/arthur/.var/app/info.cemu.Cemu/config/Cemu/controllerProfiles/switch.xml"
path_xbox_CEMU = "/home/arthur/.var/app/info.cemu.Cemu/config/Cemu/controllerProfiles/xbox.xml"
path_ps4_CEMU = "/home/arthur/.var/app/info.cemu.Cemu/config/Cemu/controllerProfiles/ps4.xml"
path_controller0 = "/home/arthur/.var/app/info.cemu.Cemu/config/Cemu/controllerProfiles/controller0.xml"
path_controller1 = "/home/arthur/.var/app/info.cemu.Cemu/config/Cemu/controllerProfiles/controller1.xml"
path_controller2 = "/home/arthur/.var/app/info.cemu.Cemu/config/Cemu/controllerProfiles/controller2.xml"
path_controller3 = "/home/arthur/.var/app/info.cemu.Cemu/config/Cemu/controllerProfiles/controller3.xml"
#RIUJINX PATHS
path_xbox_RYUJINX = "/home/arthur/.var/app/io.github.ryubing.Ryujinx/config/Ryujinx/xbox.json"
path_8bitdo_RYUJINX = "/home/arthur/.var/app/io.github.ryubing.Ryujinx/config/Ryujinx/8bit.json"
path_sunshine_RYUJINX = "/home/arthur/.var/app/io.github.ryubing.Ryujinx/config/Ryujinx/sunshine.json"
path_ps4_RYUJINX = "/home/arthur/.var/app/io.github.ryubing.Ryujinx/config/Ryujinx/ps4.json"
path_switch_RYUJINX = "/home/arthur/.var/app/io.github.ryubing.Ryujinx/config/Ryujinx/switch.json"
path_config_RYUJINX = "/home/arthur/.var/app/io.github.ryubing.Ryujinx/config/Ryujinx/Config.json"
# Función para cambiar al modo de pantalla principal
def salida():
return
def cambiar_ventana():
pyautogui.hotkey("alt", "tab")
def cambiar_ventana2():
pyautogui.keyDown("alt")
pyautogui.hotkey("tab", "tab","Enter")
pyautogui.keyUp("alt")
def ctrl_alt_sprm():
pyautogui.hotkey("ctrl","alt","del")
def f11():
pyautogui.hotkey("F11")
def WinLeft():
pyautogui.hotkey("win","shift","left")
def WinRight():
pyautogui.hotkey("win","shift","right")
def Up():
pyautogui.hotkey("up", "up")
def Down():
pyautogui.hotkey("down","down")
def Enter():
pyautogui.hotkey("enter")
def TAB():
pyautogui.hotkey("tab")
def Space():
pyautogui.hotkey("space")
def Kill():
pyautogui.hotkey("alt","F4")
def Esc():
#pyautogui.hotkey("win","shift","1")
subprocess.run(["xdotool", "key", "Super_L+Shift+1"])
def Insert():
pyautogui.hotkey("insert")
def NextDevice():
pyautogui.hotkey('ctrl','o')
def PrevDevice():
pyautogui.hotkey('ctrl','p')
def Click():
pyautogui.click()
def Minimize():
pyautogui.hotkey("win","m")
def SwitchScreens1():
print("switchScreen1")
#TurnScreen('Disable',1)
#T#urnScreen('Disable',2)
#TurnScreen('Enable',3)
def SwitchScreens2():
print("switchScreen2")
#TurnScreen('Enable',1)
#TurnScreen('Enable',2)
#TurnScreen('Disable',3)
def TurnScreen(mode,display):
print("TurnScreen")
#os.system(f'powershell {mode}-Display {display}')
def main():
timer = Timer()
# Función para detectar la conexión del mando de Xbox
while not hay_mando:
pygame.event.get()
pygame.time.delay(935)
num_joysticks = pygame.joystick.get_count()
num_joysticks_b = num_joysticks
if num_joysticks >= 1:
name_control = "-"
print(name_control)
try:
joystick = pygame.joystick.Joystick(0)
joystick.init()
name_control = joystick.get_name()
print("Mando detectado:", name_control)
except pygame.error as e:
print("Error al inicializar el joystick:", e)
joystick = None
indexi = name_control.find("8BitDo")
if indexi != -1:
print("FLUJO 8BITDO ***")
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "HDMI-A-1"])
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "DP-2"])
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "DP-3"])
subprocess.run(["cp", path_8bitdo_CEMU, path_controller0])
subprocess.run(["cp", path_xbox_CEMU, path_controller1])
subprocess.run(["cp", path_ps4_CEMU, path_controller2])
subprocess.run(["cp", path_8bitdo_RYUJINX, path_config_RYUJINX])
# Define los códigos de los botones que deseas detectar
BOTON_A = 0
BOTON_B = 1
BOTON_X = 2
BOTON_Y = 3
BOTON_START = 7
BOTON_SELECT = 6
BOTON_L1 = 4
BOTON_R1 = 5
BOTON_L3 = 9
BOTON_R3 = 10
HOME = 8
indexi = name_control.find("One")
if indexi != -1:
print("FLUJO SUNSHINE ***")
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "HDMI-A-1"])
subprocess.run(["hyprctl", "dispatch", "dpms", "off", "DP-2"])
subprocess.run(["hyprctl", "dispatch", "dpms", "off", "DP-3"])
subprocess.run(["cp", path_Sunshine_CEMU, path_controller0])
subprocess.run(["cp", path_sunshine_RYUJINX, path_config_RYUJINX])
# Define los códigos de los botones que deseas detectar
BOTON_A = 0
BOTON_B = 1
BOTON_X = 2
BOTON_Y = 3
BOTON_START = 7
BOTON_SELECT = 6
BOTON_L1 = 4
BOTON_R1 = 5
BOTON_L3 = 9
BOTON_R3 = 10
HOME = 8
indexi = name_control.find("Nintendo")
if indexi != -1:
print("FLUJO SUNSHINE N.SWITCH ***")
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "HDMI-A-1"])
subprocess.run(["hyprctl", "dispatch", "dpms", "off", "DP-2"])
subprocess.run(["hyprctl", "dispatch", "dpms", "off", "DP-3"])
subprocess.run(["cp", path_switch_CEMU, path_controller0])
subprocess.run(["cp", path_switch_RYUJINX, path_config_RYUJINX])
# Define los códigos de los botones que deseas detectar
BOTON_A = 0
BOTON_B = 1
BOTON_X = 2
BOTON_Y = 3
BOTON_START = 10
BOTON_SELECT = 9
BOTON_L1 = 5
BOTON_R1 = 6
BOTON_L3 = 12
BOTON_R3 = 13
HOME = 11
indexi = name_control.find("Series")
if indexi != -1:
print("FLUJO XBOX ***" )
print(name_control)
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "HDMI-A-1"])
subprocess.run(["hyprctl", "dispatch", "dpms", "off", "DP-2"])
subprocess.run(["hyprctl", "dispatch", "dpms", "off", "DP-3"])
subprocess.run(["cp", path_8bitdo_CEMU, path_controller1])
subprocess.run(["cp", path_xbox_CEMU, path_controller0])
subprocess.run(["cp", path_ps4_CEMU, path_controller2])
subprocess.run(["cp", path_xbox_RYUJINX, path_config_RYUJINX])
BOTON_A = 0
BOTON_B = 1
BOTON_X = 3
BOTON_Y = 4
BOTON_START = 11
BOTON_SELECT = 10
BOTON_L1 = 6
BOTON_R1 = 7
BOTON_L3 = 13
BOTON_R3 = 14
HOME = 12
indexi = name_control.find("PS4")
if indexi != -1:
print("FLUJO PS4 ***" )
print(name_control)
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "HDMI-A-1"])
subprocess.run(["hyprctl", "dispatch", "dpms", "off", "DP-2"])
subprocess.run(["hyprctl", "dispatch", "dpms", "off", "DP-3"])
subprocess.run(["cp", path_8bitdo_CEMU, path_controller2])
subprocess.run(["cp", path_xbox_CEMU, path_controller1])
subprocess.run(["cp", path_ps4_CEMU, path_controller0])
subprocess.run(["cp", path_ps4_RYUJINX, path_config_RYUJINX])
BOTON_A = 0
BOTON_B = 1
BOTON_X = 2
BOTON_Y = 3
BOTON_START = 6
BOTON_SELECT = 4
BOTON_L1 = 9
BOTON_R1 = 10
BOTON_L3 = 7
BOTON_R3 = 8
HOME = 5
sensitivity = 10
elapsed_time = 0.0
elapsed_time_past = 0.0
while True:
#for event in pygame.event.get():
event = pygame.event.wait()
############ START BOTON ################
#PREVIOS VOLUME DEVICE
if (joystick.get_button(BOTON_START) and
joystick.get_button(BOTON_A)):
subprocess.run(["hyprctl", "dispatch", "movetoworkspace", "8"])
if (joystick.get_button(BOTON_START) and
joystick.get_button(BOTON_L1)):
subprocess.run(["killall", "pcsx2-qt"])
subprocess.run(["hyprctl", "dispatch", "killactive"])
if (joystick.get_button(BOTON_START) and
joystick.get_button(BOTON_R1)):
subprocess.run(["hyprctl", "dispatch", "togglefloating"])
if (joystick.get_button(BOTON_START) and
joystick.get_button(BOTON_X)):
subprocess.run(["hyprctl", "dispatch", "workspace", "8"])
if (joystick.get_button(BOTON_START) and
joystick.get_button(BOTON_B)):
subprocess.run(["sh", "/home/arthur/scripts/pulseaudio.sh"])
############ SELECT BOTON ################
if (joystick.get_button(BOTON_SELECT) and
joystick.get_button(BOTON_L1)):
subprocess.run(["hyprctl", "dispatch","fullscreen"])
if (joystick.get_button(BOTON_SELECT) and
joystick.get_button(BOTON_Y)):
subprocess.run(["wofi", "--show","drun"])
if (joystick.get_button(BOTON_SELECT) and
joystick.get_button(BOTON_X)):
subprocess.run(["hyprctl","dispatch","exec", "firefox","default-release", "http://192.168.1.131:3000", "&"])
num_joysticks = pygame.joystick.get_count()
if num_joysticks <=0:
print("discornected")
break
def is_joystick_disconnected(joystick):
# Verificar si el joystick está inicializado
return not joystick.get_init()
if __name__ == "__main__":
main()

284
pyprojs/xbox_py_screen.py.bk1 Executable file
View File

@@ -0,0 +1,284 @@
import pygame
import os
import pyautogui
import time
import subprocess
import math
import time
class Timer:
def __init__(self):
self.last_time = time.time()
def elapsed_time(self):
current_time = time.time()
elapsed = current_time - self.last_time
self.last_time = current_time
return elapsed
# Inicializa pygame
#variable que indica si ya se conecto el mando y ya se cambio de pantalla
pantalla_pp = False
pygame.init()
pygame.joystick.init()
hay_mando = False
# Inicializa el mando de Xbox
# Define los códigos de los botones que deseas detectar
BOTON_A = 0
BOTON_B = 1
BOTON_X = 3
BOTON_Y = 4
BOTON_START = 11
BOTON_SELECT = 10
BOTON_L1 = 6
BOTON_R1 = 7
BOTON_L3 = 13
BOTON_R3 = 14
HOME = 12
flag_display = True
#CEMU PATHS
path_8bitdo_CEMU = "/home/arthur/.var/app/info.cemu.Cemu/config/Cemu/controllerProfiles/8bit.xml"
path_Sunshine_CEMU = "/home/arthur/.var/app/info.cemu.Cemu/config/Cemu/controllerProfiles/sunshine.xml"
path_xbox_CEMU = "/home/arthur/.var/app/info.cemu.Cemu/config/Cemu/controllerProfiles/xbox.xml"
path_controller0 = "/home/arthur/.var/app/info.cemu.Cemu/config/Cemu/controllerProfiles/controller0.xml"
path_controller1 = "/home/arthur/.var/app/info.cemu.Cemu/config/Cemu/controllerProfiles/controller1.xml"
#RIUJINX PATHS
path_xbox_RYUJINX = "/home/arthur/.var/app/io.github.ryubing.Ryujinx/config/Ryujinx/xbox.json"
path_8bitdo_RYUJINX = "/home/arthur/.var/app/io.github.ryubing.Ryujinx/config/Ryujinx/8bit.json"
path_sunshine_RYUJINX = "/home/arthur/.var/app/io.github.ryubing.Ryujinx/config/Ryujinx/sunshine.json"
path_config_RYUJINX = "/home/arthur/.var/app/io.github.ryubing.Ryujinx/config/Ryujinx/Config.json"
# Función para cambiar al modo de pantalla principal
def salida():
return
def cambiar_ventana():
pyautogui.hotkey("alt", "tab")
def cambiar_ventana2():
pyautogui.keyDown("alt")
pyautogui.hotkey("tab", "tab","Enter")
pyautogui.keyUp("alt")
def ctrl_alt_sprm():
pyautogui.hotkey("ctrl","alt","del")
def f11():
pyautogui.hotkey("F11")
def WinLeft():
pyautogui.hotkey("win","shift","left")
def WinRight():
pyautogui.hotkey("win","shift","right")
def Up():
pyautogui.hotkey("up", "up")
def Down():
pyautogui.hotkey("down","down")
def Enter():
pyautogui.hotkey("enter")
def TAB():
pyautogui.hotkey("tab")
def Space():
pyautogui.hotkey("space")
def Kill():
pyautogui.hotkey("alt","F4")
def Esc():
#pyautogui.hotkey("win","shift","1")
subprocess.run(["xdotool", "key", "Super_L+Shift+1"])
def Insert():
pyautogui.hotkey("insert")
def NextDevice():
pyautogui.hotkey('ctrl','o')
def PrevDevice():
pyautogui.hotkey('ctrl','p')
def Click():
pyautogui.click()
def Minimize():
pyautogui.hotkey("win","m")
def SwitchScreens1():
print("switchScreen1")
#TurnScreen('Disable',1)
#T#urnScreen('Disable',2)
#TurnScreen('Enable',3)
def SwitchScreens2():
print("switchScreen2")
#TurnScreen('Enable',1)
#TurnScreen('Enable',2)
#TurnScreen('Disable',3)
def TurnScreen(mode,display):
print("TurnScreen")
#os.system(f'powershell {mode}-Display {display}')
def main():
timer = Timer()
# Función para detectar la conexión del mando de Xbox
while not hay_mando:
pygame.event.get()
pygame.time.delay(535)
num_joysticks = pygame.joystick.get_count()
num_joysticks_b = num_joysticks
if num_joysticks >= 1:
name_control = "-"
print(name_control)
try:
joystick = pygame.joystick.Joystick(0)
joystick.init()
name_control = joystick.get_name()
print("Mando detectado:", name_control)
except pygame.error as e:
print("Error al inicializar el joystick:", e)
joystick = None
indexi = name_control.find("8BitDo")
if indexi != -1:
print("FLUJO 8BITDO ***")
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "HDMI-A-1"])
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "DP-2"])
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "DP-3"])
subprocess.run(["cp", path_8bitdo_CEMU, path_controller0])
subprocess.run(["cp", path_xbox_CEMU, path_controller1])
subprocess.run(["cp", path_8bitdo_RYUJINX, path_config_RYUJINX])
# Define los códigos de los botones que deseas detectar
BOTON_A = 0
BOTON_B = 1
BOTON_X = 2
BOTON_Y = 3
BOTON_START = 7
BOTON_SELECT = 6
BOTON_L1 = 4
BOTON_R1 = 5
BOTON_L3 = 9
BOTON_R3 = 10
HOME = 8
else:
indexi = name_control.find("One")
if indexi != -1:
print("FLUJO SUNSHINE ***")
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "HDMI-A-1"])
subprocess.run(["hyprctl", "dispatch", "dpms", "off", "DP-2"])
subprocess.run(["hyprctl", "dispatch", "dpms", "off", "DP-3"])
subprocess.run(["cp", path_Sunshine_CEMU, path_controller0])
subprocess.run(["cp", path_sunshine_RYUJINX, path_config_RYUJINX])
# Define los códigos de los botones que deseas detectar
BOTON_A = 0
BOTON_B = 1
BOTON_X = 2
BOTON_Y = 3
BOTON_START = 7
BOTON_SELECT = 6
BOTON_L1 = 4
BOTON_R1 = 5
BOTON_L3 = 9
BOTON_R3 = 10
HOME = 8
else:
print("FLUJO XBOX ELSE ***" )
print(name_control)
subprocess.run(["hyprctl", "dispatch", "dpms", "on", "HDMI-A-1"])
subprocess.run(["hyprctl", "dispatch", "dpms", "off", "DP-2"])
subprocess.run(["hyprctl", "dispatch", "dpms", "off", "DP-3"])
subprocess.run(["cp", path_8bitdo_CEMU, path_controller1])
subprocess.run(["cp", path_xbox_CEMU, path_controller0])
subprocess.run(["cp", path_xbox_RYUJINX, path_config_RYUJINX])
BOTON_A = 0
BOTON_B = 1
BOTON_X = 3
BOTON_Y = 4
BOTON_START = 11
BOTON_SELECT = 10
BOTON_L1 = 6
BOTON_R1 = 7
BOTON_L3 = 13
BOTON_R3 = 14
HOME = 12
sensitivity = 10
elapsed_time = 0.0
elapsed_time_past = 0.0
while True:
#for event in pygame.event.get():
event = pygame.event.wait()
############ START BOTON ################
#PREVIOS VOLUME DEVICE
if (joystick.get_button(BOTON_START) and
joystick.get_button(BOTON_A)):
subprocess.run(["hyprctl", "dispatch", "movetoworkspace", "8"])
if (joystick.get_button(BOTON_START) and
joystick.get_button(BOTON_L1)):
subprocess.run(["hyprctl", "dispatch", "killactive"])
subprocess.run(["killall", "Ryujinx"])
subprocess.run(["killall", "pcsx2-qt"])
if (joystick.get_button(BOTON_START) and
joystick.get_button(BOTON_R1)):
subprocess.run(["hyprctl", "dispatch", "togglefloating"])
if (joystick.get_button(BOTON_START) and
joystick.get_button(BOTON_X)):
subprocess.run(["hyprctl", "dispatch", "workspace", "8"])
#if (joystick.get_button(BOTON_START) and
# joystick.get_button(BOTON_B)):
#subprocess.run(["sh", "/home/arthur/scripts/pulseaudio.sh"])
############ SELECT BOTON ################
if (joystick.get_button(BOTON_SELECT) and
joystick.get_button(BOTON_L1)):
subprocess.run(["hyprctl", "dispatch","fullscreen"])
num_joysticks = pygame.joystick.get_count()
if num_joysticks <=0:
print("discornected")
break
def is_joystick_disconnected(joystick):
# Verificar si el joystick está inicializado
return not joystick.get_init()
if __name__ == "__main__":
main()

26
rofi_run_script.sh Executable file
View File

@@ -0,0 +1,26 @@
#!/bin/bash
source ~/scripts/constantlib.sh
scripts=$(ls ~/scripts/*.sh)
label="Ejecutar_comando_󰆍"
lines=$( ls ~/scripts/*.sh 2>/dev/null | wc -l )
echo "LINEAS:"$lines
#script=$(echo -e "$scripts" | dmenu -l $(( lines )) -p "$label" -nb "$nb_color" -nf "$nf_color" -sb "$sb_color" -sf "$sf_color" -fn "$fn_text")
script=$(echo -e "$scripts" | rofi -dmenu -p $label)
if grep -q "sudo" "$script"; then
password=$( echo -e "contraseña de sudo" |rofi -dmenu -l 1 -p "󰟵 Contraseña sudo:" )
if [[ -z "$password" ]]; then
notify-send "Cancelado" "No se ejecutó el script"
exit 1
fi
# Ejecutar el script con la contraseña usando sudo -S
echo "$password" | sudo -S sh "$script"
else
sh "$script"
fi

16
set-wallpaperengine.sh Executable file
View File

@@ -0,0 +1,16 @@
#!/bin/bash
workspace_URL=$1
monitor=$2
scaling=$3
lenght=$(echo $workspace_URL| wc -c)
workspace_ID=$(cut -c 56-$lenght <<< $workspace_URL)
echo "ID: "$workspace_ID
echo "URL: "$workspace_URL
echo "MONITOR: "$monitor
if [ "$scaling" == '' ]; then
scaling='default'
fi
linux-wallpaperengine --fps 30 --scaling $scaling -s --disable-parallax --screen-root $monitor --bg $workspace_ID

7
showfps.sh Executable file
View File

@@ -0,0 +1,7 @@
#!/bin/bash
while true; do
FPS=$(hyprctl -j activeworkspace | jq '.monitorID' | xargs -I {} hyprctl -j monitors | jq ".[] | select(.id=={}) | .lastFrameTime" | awk '{ printf "%.0f", 1000 / $1 }')
echo "{\"text\":\"🎮 ${FPS} FPS\"}"
sleep 1
done

12
sv-vpn-call.sh Executable file
View File

@@ -0,0 +1,12 @@
#!/bin/bash
INTERFAZ=$1
output=$(sudo /home/arthur/scripts/sv-vpn.sh $INTERFAZ)
echo $output
if [ "$output" = 'Activando' ]; then
FLAG=$(sh /home/arthur/scripts/get_flag.sh)
notify-send "VPN Activada $FLAG" "Interfaz $INTERFAZ activada "
else
FLAG=$(sh /home/arthur/scripts/get_flag.sh)
notify-send "VPN Desactivada $FLAG" "Interfaz $INTERFAZ Desactivada "
fi

19
sv-vpn.sh Executable file
View File

@@ -0,0 +1,19 @@
#!/bin/bash
# Verificar si se pasó un parámetro
if [ -z "$1" ]; then
echo "Uso: $0 <interfaz>"
exit 1
fi
INTERFAZ="$1"
# Verificar si la interfaz está activa
if sudo wg show $INTERFAZ > /dev/null 2>&1; then
echo "Desactivando"
sudo wg-quick down "$INTERFAZ"
else
echo "Activando"
sudo wg-quick up "$INTERFAZ"
fi

2
temp.sh Executable file
View File

@@ -0,0 +1,2 @@
sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \
https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'

38
timer.sh Executable file
View File

@@ -0,0 +1,38 @@
#!/bin/bash
source ~/scripts/constantlib.sh
# Archivo donde se guarda el estado del timer
STATE_FILE="/tmp/waybar_timer"
OPCIONES="1\n5\n10\n20\n30\n60"
LABEL="⏲️ Timer (min):"
# Pedimos minutos con dmenu
minutes=$(echo -e $OPCIONES | rofi -dmenu -p "$LABEL" )
# Validamos si es un número
if ! [[ "$minutes" =~ ^[0-9]+$ ]]; then
exit 1
fi
# Convertimos a segundos
total_seconds=$((minutes * 60))
end_time=$(( $(date +%s) + total_seconds ))
# Guardamos el tiempo de finalización
echo "$end_time" > "$STATE_FILE"
# Ejecutamos el timer en segundo plano
(
while [ $(date +%s) -lt "$end_time" ]; do
sleep 1
done
notify-send -t 2000 -i /home/arthur/scripts/pngegg.png " Timer terminado" "se acabo' el tiempo"
notify-send -t 2000 -i /home/arthur/scripts/pngegg.png " Timer terminado" "se acabo' el tiempo"
paplay /usr/share/sounds/freedesktop/stereo/complete.oga
paplay /usr/share/sounds/freedesktop/stereo/complete.oga
paplay /usr/share/sounds/freedesktop/stereo/complete.oga
paplay /usr/share/sounds/freedesktop/stereo/complete.oga
paplay /usr/share/sounds/freedesktop/stereo/complete.oga
rm -f "$STATE_FILE"
) &

22
timer_module.sh Executable file
View File

@@ -0,0 +1,22 @@
#!/bin/bash
STATE_FILE="/tmp/waybar_timer"
if [ ! -f "$STATE_FILE" ]; then
exit 0
fi
end_time=$(cat "$STATE_FILE")
now=$(date +%s)
remaining=$((end_time - now))
if [ "$remaining" -le 0 ]; then
exit 0
fi
# Formateamos tiempo como MM:SS
minutes=$((remaining / 60))
seconds=$((remaining % 60))
printf '{"text": "⏳ %02d:%02d", "tooltip": "Timer"}\n' "$minutes" "$seconds"

106
toggle-theme-v2.sh Executable file
View File

@@ -0,0 +1,106 @@
#!/bin/bash
scope=$1
themes=(gruvbox catpu nord)
kitty_config_path='/home/arthur/.config/kitty/'
dmenu_config_path='/home/arthur/scripts/constantlib.sh'
waybar_config_path='/home/arthur/.config/waybar/'
nvim_config_path='/home/arthur/.vimrc'
wofi_config_path='/home/arthur/.config/wofi/'
hyprpaper_config_path='/home/arthur/.config/hypr/'
starship_config_path='/home/arthur/.config/'
wengine_setter='/home/arthur/.config/themes/wallpaper-engine.sh'
setwallpaper_path='/home/arthur/.config/themes/wallpaper-engine.sh'
firefox_prefs='/home/arthur/.mozilla/firefox/8gto1yy4.default-release/user.js'
nwg_look_path='/home/arthur/.local/share/nwg-look/gsettings'
bashtop_path='/home/arthur/.config/bashtop/themes/theme.theme'
bashrc='/home/arthur/.bashrc'
rofi_path='/home/arthur/.config/rofi/config.rasi'
catpu_wengine_dp3='https://steamcommunity.com/sharedfiles/filedetails/?id=3371368351'
gruvbox_wengine_dp2='https://steamcommunity.com/sharedfiles/filedetails/?id=3318790923'
for tem in ${themes[@]}
do
if [ "$scope" = $tem ]; then
#variable de entorno
sed -i "/^export TEM/c\export TEM=$tem" "$bashrc"
export TEM=$tem
#bashtop
cp $bashtop_path"."$tem $bashtop_path
#ROFI
cp $rofi_path"."$tem $rofi_path
#firefox
cp $firefox_prefs"."$tem $firefox_prefs
#GTK-CONFIG
cp $nwg_look_path"."$tem $nwg_look_path
nwg-look -a
#MODIFICAR KITTY
cp $kitty_config_path"kitty.conf."$tem $kitty_config_path"kitty.conf"
#MODIFICAR DMENU
cp $dmenu_config_path"."$tem $dmenu_config_path
#MODIFICAR WAYBAR
cp $waybar_config_path"style.css."$tem $waybar_config_path"style.css"
cp $waybar_config_path"config.jsonc."$tem $waybar_config_path"config.jsonc"
cp $waybar_config_path"modules.jsonc."$tem $waybar_config_path"modules.jsonc"
killall waybar
#MODIFICAR WOFI
cp $wofi_config_path"style.css."$tem $wofi_config_path"style.css"
#MODIFICAR STARSHIP
cp $starship_config_path"starship.toml."$tem $starship_config_path"starship.toml"
#MODIFICAR HYPRPAPER
cp $hyprpaper_config_path"hyprpaper.conf."$tem $hyprpaper_config_path"hyprpaper.conf"
killall hyprpaper
hyprpaper &
#MODIFICAR HYPRLAND
if [ "$tem" = 'catpu' ]; then
#modificar nvim
sed -i "/^colorscheme /c\colorscheme catppuccin" "$nvim_config_path"
#modificar hyprland
sed -i "/^ col.active_border =/c\ col.active_border = rgb(98c379) rgb(61afef) 90deg" "$hyprpaper_config_path""hyprland.conf"
sed -i "/^ col.inactive_border =/c\ col.inactive_border = rgb(edbbb2) rgb(665c54) 90deg" "$hyprpaper_config_path""hyprland.conf"
fi
if [ "$tem" = 'gruvbox' ]; then
#modificar neovim
sed -i "/^colorscheme /c\colorscheme melange" "$nvim_config_path"
#modificar hyprland
sed -i "/^ col.active_border =/c\ col.active_border = rgb(fbf1c7) rgb(fbf1c7) 270deg" "$hyprpaper_config_path""hyprland.conf"
sed -i "/^ col.inactive_border =/c\ col.inactive_border = rgb(282828) rgb(282828) 270deg" "$hyprpaper_config_path""hyprland.conf"
fi
if [ "$tem" = 'nord' ]; then
#modificar nvim
sed -i "/^colorscheme /c\colorscheme $tem" "$nvim_config_path"
#modificar hyprland
sed -i "/^ col.active_border =/c\ col.active_border = rgb(a3be8c) rgb(88c0d0) 90deg" "$hyprpaper_config_path""hyprland.conf"
sed -i "/^ col.inactive_border =/c\ col.inactive_border = rgb(d8dee9) rgb(3b4252) 90deg" "$hyprpaper_config_path""hyprland.conf"
fi
#persistir al reinicio el openrgb
sed -i "/^exec-once = openrgb/c\exec-once = openrgb -p /home/arthur/.config/OpenRGB/$tem.orp" "$hyprpaper_config_path""hyprland.conf"
#wallpaperengine
killall linux-wallpaperengine
cp $setwallpaper_path"."$tem $setwallpaper_path
hyprctl dispatch exec sh ${setwallpaper_path}
waybar & /usr/bin/kitty @ load-config
openrgb -p /home/arthur/.config/OpenRGB/$tem.orp
notify-send -t 12000 -i /home/arthur/scripts/pngegg.png " Tema $tem aplicado" "todas las tareas han sido completadas > v O"
paplay /usr/share/sounds/freedesktop/stereo/complete.oga
fi
done

57
toggle-theme.sh Executable file
View File

@@ -0,0 +1,57 @@
#!/bin/bash
scope=$1
themes=(gruvbox catpu)
kitty_config_path='/home/arthur/.config/kitty/'
waybar_config_path='/home/arthur/.config/waybar/'
nvim_config_path='/home/arthur/.vimrc'
wofi_config_path='/home/arthur/.config/wofi/'
hyprpaper_config_path='/home/arthur/.config/hypr/'
for tem in ${themes[@]}
do
if [ "$scope" = $tem ]; then
#MODIFICAR KITTY
cp $kitty_config_path"kitty.conf."$tem $kitty_config_path"kitty.conf"
kitty @ load-config
#MODIFICAR NVIM
if [ "$tem" = 'catpu' ]; then
echo "cambiando a catpuchin"
sed -i "/^colorscheme /c\colorscheme catppuccin" "$nvim_config_path"
else
echo "cambiando a $tem"
sed -i "/^colorscheme /c\colorscheme $tem" "$nvim_config_path"
fi
#MODIFICAR WAYBAR
cp $waybar_config_path"style.css."$tem $waybar_config_path"style.css"
killall waybar
waybar &
#MODIFICAR WOFI
cp $wofi_config_path"style.css."$tem $wofi_config_path"style.css"
#MODIFICAR HYPRPAPER
cp $hyprpaper_config_path"hyprpaper.conf."$tem $hyprpaper_config_path"hyprpaper.conf"
killall hyprpaper
hyprpaper &
#MODIFICAR HYPRLAND
if [ "$tem" = 'catpu' ]; then
sed -i "/^ col.active_border =/c\col.active_border = rgb(98c379) rgb(61afef) 90deg" "$hyprpaper_config_path""hyprland.conf"
sed -i "/^ col.inactive_border =/c\col.inactive_border = rgb(d19a66) rgb(c678dd) 90deg" "$hyprpaper_config_path""hyprland.conf"
fi
if [ "$tem" = 'gruvbox' ]; then
sed -i "/^ col.active_border =/c\col.active_border = rgb(458588) rgb(d65d0e) 90deg" "$hyprpaper_config_path""hyprland.conf"
sed -i "/^ col.inactive_border =/c\col.inactive_border = rgb(fadb2f) rgb(458588) 90deg" "$hyprpaper_config_path""hyprland.conf"
fi
fi
done

6
user.js Executable file
View File

@@ -0,0 +1,6 @@
user_pref("browser.anchor_color", "#bec1cb");
user_pref("browser.display.background_color", "#0a0b13");
user_pref("browser.display.foreground_color", "#bec1cb");
user_pref("browser.visited_color", "#5A6E86");
user_pref("extensions.activeThemeID", "{eb8c4a94-e603-49ef-8e81-73d3c4cc04ff}");

24
userChrome.css Executable file
View File

@@ -0,0 +1,24 @@
#statuspanel {display:none!important;}
#urlpanel {display:none!important;}
#TabsToolbar {
visibility: collapse !important;
}
#nav-bar {
background-color: rgba(0, 0, 0, 0.3) !important;
backdrop-filter: blur(6px);
-moz-backdrop-filter: blur(6px);
}
#navigator-toolbox:not(:hover) #nav-bar {
visibility: collapse !important;
}
/* Hide that 1px border to make the background
* between tab and a normal web page looks "seamless"
*/
#navigator-toolbox:not(:hover) {
border-bottom: none !important;
}

105
wallpapers_list.txt Executable file
View File

@@ -0,0 +1,105 @@
pokemon_waterfall https://steamcommunity.com/sharedfiles/filedetails/?id=3371368351
dragon_black_white https://steamcommunity.com/sharedfiles/filedetails/?id=3028090166
miku_chinesse_drees https://steamcommunity.com/sharedfiles/filedetails/?id=2835142671
hu-tao https://steamcommunity.com/sharedfiles/filedetails/?id=2928144981
feet_girl_blue https://steamcommunity.com/sharedfiles/filedetails/?id=3439275639
kill none
akane https://steamcommunity.com/sharedfiles/filedetails/?id=2874332345
xxx_schoolgirl_phose https://steamcommunity.com/sharedfiles/filedetails/?id=2606383837
demon-bikini https://steamcommunity.com/sharedfiles/filedetails/?id=2951453609
dxd1 https://steamcommunity.com/sharedfiles/filedetails/?id=1396406451
grass https://steamcommunity.com/sharedfiles/filedetails/?id=3109356538
ellen_joe https://steamcommunity.com/sharedfiles/filedetails/?id=3352163652
neru https://steamcommunity.com/sharedfiles/filedetails/?id=2653162798
keqing_pantyhose_busty https://steamcommunity.com/sharedfiles/filedetails/?id=3025295290
catpu_waterfall https://steamcommunity.com/sharedfiles/filedetails/?id=1569030610
vert_kiriko https://steamcommunity.com/sharedfiles/filedetails/?id=2272455283
karutamo https://steamcommunity.com/sharedfiles/filedetails/?id=2881801000
vert_sakurajima https://steamcommunity.com/sharedfiles/filedetails/?id=2865223250
vert_purple_bunny https://steamcommunity.com/sharedfiles/filedetails/?id=2279267541
vert_white_bunny https://steamcommunity.com/sharedfiles/filedetails/?id=1865025974
liqueaur https://steamcommunity.com/sharedfiles/filedetails/?id=2189051803
asuna https://steamcommunity.com/sharedfiles/filedetails/?id=2838761906
astolfo https://steamcommunity.com/sharedfiles/filedetails/?id=3373907816
sakurajima_2 https://steamcommunity.com/sharedfiles/filedetails/?id=2278970534
sakurajima https://steamcommunity.com/sharedfiles/filedetails/?id=2073629157
vert_bunny_girl https://steamcommunity.com/sharedfiles/filedetails/?id=2407093443
bunny_girl2 https://steamcommunity.com/sharedfiles/filedetails/?id=2862334119
futari https://steamcommunity.com/sharedfiles/filedetails/?id=1143394477
yun-jin https://steamcommunity.com/sharedfiles/filedetails/?id=2948485996
nino_bakery https://steamcommunity.com/sharedfiles/filedetails/?id=3351383784
fett_makima https://steamcommunity.com/sharedfiles/filedetails/?id=3006015715
cofee_girl_momoka https://steamcommunity.com/sharedfiles/filedetails/?id=3376556685
yor_pinksc https://steamcommunity.com/sharedfiles/filedetails/?id=3338492499
yor_minimal https://steamcommunity.com/sharedfiles/filedetails/?id=2836852625
rin_tohsaka_city_gruv https://steamcommunity.com/sharedfiles/filedetails/?id=2996110961
vert_frieren_xray https://steamcommunity.com/sharedfiles/filedetails/?id=3157130809
ninja_pixel_white https://steamcommunity.com/sharedfiles/filedetails/?id=2471631797
samurai_girl https://steamcommunity.com/sharedfiles/filedetails/?id=3026085319
frieren_blue_flowers https://steamcommunity.com/sharedfiles/filedetails/?id=3119426941
fern_flowers_garden https://steamcommunity.com/sharedfiles/filedetails/?id=3149410070
frieren_vs_frieren https://steamcommunity.com/sharedfiles/filedetails/?id=3325729912
frieren_blue_flowers_2 https://steamcommunity.com/sharedfiles/filedetails/?id=3385278535
bunny_girl https://steamcommunity.com/sharedfiles/filedetails/?id=3143573951
licorys_recoil https://steamcommunity.com/sharedfiles/filedetails/?id=3360200028
lumin https://steamcommunity.com/sharedfiles/filedetails/?id=2919394683
lumin https://steamcommunity.com/sharedfiles/filedetails/?id=2851454062
pikachu_hub https://steamcommunity.com/sharedfiles/filedetails/?id=3335196205
feet_witch_purple https://steamcommunity.com/sharedfiles/filedetails/?id=3412195474
feet_white_pantyhose_blonde https://steamcommunity.com/sharedfiles/filedetails/?id=3412207033
girl_effeil_tower https://steamcommunity.com/sharedfiles/filedetails/?id=3314492008
ryza_bedroom https://steamcommunity.com/sharedfiles/filedetails/?id=2964778792 fill
office_lady https://steamcommunity.com/sharedfiles/filedetails/?id=3331519329
komi_san_manga https://steamcommunity.com/sharedfiles/filedetails/?id=3137201684
komi_san_simpl https://steamcommunity.com/sharedfiles/filedetails/?id=2531447527
keqing https://steamcommunity.com/sharedfiles/filedetails/?id=2818870173
miku_face https://steamcommunity.com/sharedfiles/filedetails/?id=3415297400 fill
Ender_Acher https://steamcommunity.com/sharedfiles/filedetails/?id=3397136701 fill
fern https://steamcommunity.com/sharedfiles/filedetails/?id=3396444455
grace https://steamcommunity.com/sharedfiles/filedetails/?id=3302288165
Genshin_nord https://steamcommunity.com/sharedfiles/filedetails/?id=3280845181 fill
2B_black_white https://steamcommunity.com/sharedfiles/filedetails/?id=3259946859 fill
ak74_black_blonde https://steamcommunity.com/sharedfiles/filedetails/?id=2893507114
pink_girl_face https://steamcommunity.com/sharedfiles/filedetails/?id=2872896078
miyabi https://steamcommunity.com/sharedfiles/filedetails/?id=2873424178
feet_pixel_kisaki https://steamcommunity.com/sharedfiles/filedetails/?id=2961703542
keqing_black_bra https://steamcommunity.com/sharedfiles/filedetails/?id=3390200344
water_girl https://steamcommunity.com/sharedfiles/filedetails/?id=3269856466
blue_hat_girl_nord https://steamcommunity.com/sharedfiles/filedetails/?id=3305687727
pixel_drunk_catgirl https://steamcommunity.com/sharedfiles/filedetails/?id=2459477453
nino_clouds https://steamcommunity.com/sharedfiles/filedetails/?id=3289999095
miku_nakano_sit_hose https://steamcommunity.com/sharedfiles/filedetails/?id=1697933312
raiden_sakura https://steamcommunity.com/sharedfiles/filedetails/?id=3468454547 fill
yor_red_rose https://steamcommunity.com/sharedfiles/filedetails/?id=2813843465
yor_green https://steamcommunity.com/sharedfiles/filedetails/?id=2798970877
rin_tohsaka_sky https://steamcommunity.com/sharedfiles/filedetails/?id=3142540852
rin_tohsaka_library_feet https://steamcommunity.com/sharedfiles/filedetails/?id=2618728721
rin_tohsaka_saver_feet_lick https://steamcommunity.com/sharedfiles/filedetails/?id=3083068851
rin_tohsaka_pillow_shy https://steamcommunity.com/sharedfiles/filedetails/?id=3311776339
rin_tohsaka_saver_maid_costume https://steamcommunity.com/sharedfiles/filedetails/?id=1982667491
vert_blonde_white_pantyhose https://steamcommunity.com/sharedfiles/filedetails/?id=2383822928
vert_stray_cat https://steamcommunity.com/sharedfiles/filedetails/?id=3142174104
vert_fern_pantyhose_leg https://steamcommunity.com/sharedfiles/filedetails/?id=3502467779
vert_keqing_pantyhose_white https://steamcommunity.com/sharedfiles/filedetails/?id=2279557494
vert_keqing_catpu https://steamcommunity.com/sharedfiles/filedetails/?id=2371633093
vert_keqing_dress https://steamcommunity.com/sharedfiles/filedetails/?id=2847154152
vert_keqing_nuding_pantyhose https://steamcommunity.com/sharedfiles/filedetails/?id=2896686391 fill
vert_keqing_ready_bra https://steamcommunity.com/sharedfiles/filedetails/?id=2953381732 fill
vert_keqing_upskirt_p https://steamcommunity.com/sharedfiles/filedetails/?id=2279558280 fill
coffee_road https://steamcommunity.com/sharedfiles/filedetails/?id=1415834125
dark_tanjiro_red https://steamcommunity.com/sharedfiles/filedetails/?id=2911147551
k-on_azu https://steamcommunity.com/sharedfiles/filedetails/?id=2588159369
k-on https://steamcommunity.com/sharedfiles/filedetails/?id=1715706779
k-on https://steamcommunity.com/sharedfiles/filedetails/?id=2974907283
k-on_mio https://steamcommunity.com/sharedfiles/filedetails/?id=2251566714
pantyhose_schoolgirl_sit https://steamcommunity.com/sharedfiles/filedetails/?id=2141107185
xxx_schoolgirl https://steamcommunity.com/sharedfiles/filedetails/?id=2487471092
xxx_schoolgirl https://steamcommunity.com/sharedfiles/filedetails/?id=3248307947
xxx_schoolgirl https://steamcommunity.com/sharedfiles/filedetails/?id=2279002243
xxx_schoolgirl https://steamcommunity.com/sharedfiles/filedetails/?id=2354665505
pantyhose_schoolgirl_cables https://steamcommunity.com/sharedfiles/filedetails/?id=3008912809
vert_xxx_schoolgirl https://steamcommunity.com/sharedfiles/filedetails/?id=2279010298 fill
vert_nagatoro https://steamcommunity.com/sharedfiles/filedetails/?id=2746883764
bikini_nino https://steamcommunity.com/sharedfiles/filedetails/?id=2570243780
miku_bed https://steamcommunity.com/sharedfiles/filedetails/?id=1643534614
vert_miku https://steamcommunity.com/sharedfiles/filedetails/?id=2953551734

87
wallpapers_list.txt.b1 Executable file
View File

@@ -0,0 +1,87 @@
frieren_blue_flowers https://steamcommunity.com/sharedfiles/filedetails/?id=3119426941
fern_flowers_garden https://steamcommunity.com/sharedfiles/filedetails/?id=3149410070
frieren_vs_frieren https://steamcommunity.com/sharedfiles/filedetails/?id=3325729912
frieren_blue_flowers_2 https://steamcommunity.com/sharedfiles/filedetails/?id=3385278535
vert_frieren_xray https://steamcommunity.com/sharedfiles/filedetails/?id=3157130809
bunny_girl https://steamcommunity.com/sharedfiles/filedetails/?id=3143573951
licorys_recoil https://steamcommunity.com/sharedfiles/filedetails/?id=3360200028
samurai_girl https://steamcommunity.com/sharedfiles/filedetails/?id=3026085319
hu-tao https://steamcommunity.com/sharedfiles/filedetails/?id=2955731510
hu-tao https://steamcommunity.com/sharedfiles/filedetails/?id=2928144981
yun-jin https://steamcommunity.com/sharedfiles/filedetails/?id=2948485996
lumin https://steamcommunity.com/sharedfiles/filedetails/?id=2919394683
lumin https://steamcommunity.com/sharedfiles/filedetails/?id=2851454062
demon-bikini https://steamcommunity.com/sharedfiles/filedetails/?id=2951453609
pikachu_hub https://steamcommunity.com/sharedfiles/filedetails/?id=3335196205
feet_witch_purple https://steamcommunity.com/sharedfiles/filedetails/?id=3412195474
feet_girl_blue https://steamcommunity.com/sharedfiles/filedetails/?id=3439275639
feet_white_pantyhose_blonde https://steamcommunity.com/sharedfiles/filedetails/?id=3412207033
cofee_girl_momoka https://steamcommunity.com/sharedfiles/filedetails/?id=3376556685
girl_effeil_tower https://steamcommunity.com/sharedfiles/filedetails/?id=3314492008
ryza_bedroom https://steamcommunity.com/sharedfiles/filedetails/?id=2964778792 fill
pokemon_waterfall https://steamcommunity.com/sharedfiles/filedetails/?id=3371368351
office_lady https://steamcommunity.com/sharedfiles/filedetails/?id=3331519329
komi_san_manga https://steamcommunity.com/sharedfiles/filedetails/?id=3137201684
komi_san_simpl https://steamcommunity.com/sharedfiles/filedetails/?id=2531447527
keqing https://steamcommunity.com/sharedfiles/filedetails/?id=2818870173
grass https://steamcommunity.com/sharedfiles/filedetails/?id=3109356538
miku_face https://steamcommunity.com/sharedfiles/filedetails/?id=3415297400 fill
Ender_Acher https://steamcommunity.com/sharedfiles/filedetails/?id=3397136701 fill
fern https://steamcommunity.com/sharedfiles/filedetails/?id=3396444455
grace https://steamcommunity.com/sharedfiles/filedetails/?id=3302288165
Genshin_nord https://steamcommunity.com/sharedfiles/filedetails/?id=3280845181 fill
dragon_black_white https://steamcommunity.com/sharedfiles/filedetails/?id=3028090166
2B_black_white https://steamcommunity.com/sharedfiles/filedetails/?id=3259946859 fill
ak74_black_blonde https://steamcommunity.com/sharedfiles/filedetails/?id=2893507114
ninja_pixel_white https://steamcommunity.com/sharedfiles/filedetails/?id=2471631797
pink_girl_face https://steamcommunity.com/sharedfiles/filedetails/?id=2872896078
miyabi https://steamcommunity.com/sharedfiles/filedetails/?id=2873424178
feet_pixel_kisaki https://steamcommunity.com/sharedfiles/filedetails/?id=2961703542
fett_makima https://steamcommunity.com/sharedfiles/filedetails/?id=3006015715
keqing_black_bra https://steamcommunity.com/sharedfiles/filedetails/?id=3390200344
water_girl https://steamcommunity.com/sharedfiles/filedetails/?id=3269856466
blue_hat_girl_nord https://steamcommunity.com/sharedfiles/filedetails/?id=3305687727
catpu_waterfall https://steamcommunity.com/sharedfiles/filedetails/?id=1569030610
miku_chinesse_drees https://steamcommunity.com/sharedfiles/filedetails/?id=2835142671
pixel_drunk_catgirl https://steamcommunity.com/sharedfiles/filedetails/?id=2459477453
keqing_pantyhose_busty https://steamcommunity.com/sharedfiles/filedetails/?id=3025295290
nino_clouds https://steamcommunity.com/sharedfiles/filedetails/?id=3289999095
miku_nakano_sit_hose https://steamcommunity.com/sharedfiles/filedetails/?id=1697933312
raiden_sakura https://steamcommunity.com/sharedfiles/filedetails/?id=3468454547 fill
yor_pinksc https://steamcommunity.com/sharedfiles/filedetails/?id=3338492499
yor_red_rose https://steamcommunity.com/sharedfiles/filedetails/?id=2813843465
yor_minimal https://steamcommunity.com/sharedfiles/filedetails/?id=2836852625
yor_green https://steamcommunity.com/sharedfiles/filedetails/?id=2798970877
rin_tohsaka_sky https://steamcommunity.com/sharedfiles/filedetails/?id=3142540852
rin_tohsaka_library_feet https://steamcommunity.com/sharedfiles/filedetails/?id=2618728721
rin_tohsaka_saver_feet_lick https://steamcommunity.com/sharedfiles/filedetails/?id=3083068851
rin_tohsaka_pillow_shy https://steamcommunity.com/sharedfiles/filedetails/?id=3311776339
rin_tohsaka_city_gruv https://steamcommunity.com/sharedfiles/filedetails/?id=2996110961
rin_tohsaka_saver_maid_costume https://steamcommunity.com/sharedfiles/filedetails/?id=1982667491
vert_blonde_white_pantyhose https://steamcommunity.com/sharedfiles/filedetails/?id=2383822928
vert_nagatoro https://steamcommunity.com/sharedfiles/filedetails/?id=2746883764
vert_stray_cat https://steamcommunity.com/sharedfiles/filedetails/?id=3142174104
vert_fern_pantyhose_leg https://steamcommunity.com/sharedfiles/filedetails/?id=3502467779
vert_keqing_pantyhose_white https://steamcommunity.com/sharedfiles/filedetails/?id=2279557494
vert_keqing_catpu https://steamcommunity.com/sharedfiles/filedetails/?id=2371633093
vert_keqing_dress https://steamcommunity.com/sharedfiles/filedetails/?id=2847154152
vert_keqing_nuding_pantyhose https://steamcommunity.com/sharedfiles/filedetails/?id=2896686391 fill
vert_keqing_ready_bra https://steamcommunity.com/sharedfiles/filedetails/?id=2953381732 fill
vert_keqing_upskirt_p https://steamcommunity.com/sharedfiles/filedetails/?id=2279558280 fill
coffee_road https://steamcommunity.com/sharedfiles/filedetails/?id=1415834125
dark_tanjiro_red https://steamcommunity.com/sharedfiles/filedetails/?id=2911147551
k-on_azu https://steamcommunity.com/sharedfiles/filedetails/?id=2588159369
k-on https://steamcommunity.com/sharedfiles/filedetails/?id=1715706779
k-on https://steamcommunity.com/sharedfiles/filedetails/?id=2974907283
k-on_mio https://steamcommunity.com/sharedfiles/filedetails/?id=2251566714
ellen_joe https://steamcommunity.com/sharedfiles/filedetails/?id=3352163652
pantyhose_schoolgirl_sit https://steamcommunity.com/sharedfiles/filedetails/?id=2141107185
xxx_schoolgirl https://steamcommunity.com/sharedfiles/filedetails/?id=2487471092
xxx_schoolgirl https://steamcommunity.com/sharedfiles/filedetails/?id=3248307947
xxx_schoolgirl https://steamcommunity.com/sharedfiles/filedetails/?id=2279002243
xxx_schoolgirl https://steamcommunity.com/sharedfiles/filedetails/?id=2354665505
xxx_schoolgirl_phose https://steamcommunity.com/sharedfiles/filedetails/?id=2606383837
pantyhose_schoolgirl_cables https://steamcommunity.com/sharedfiles/filedetails/?id=3008912809
vert_xxx_schoolgirl https://steamcommunity.com/sharedfiles/filedetails/?id=2278981539
vert_xxx_schoolgirl https://steamcommunity.com/sharedfiles/filedetails/?id=2279010298
vert_xxx_schoolgirl https://steamcommunity.com/sharedfiles/filedetails/?id=2570306292

12
waybar/buscar_archivos.sh Executable file
View File

@@ -0,0 +1,12 @@
#!/bin/bash
# Puedes usar locate, find o fd aquí
file=$(fd . ~/Documentos ~/Descargas ~/Proyectos \
--type f --hidden --exclude .git 2>/dev/null | \
wofi --dmenu --prompt "Buscar archivo")
# Si se seleccionó algo, ábrelo
if [[ -n "$file" ]]; then
xdg-open "$file" &
fi

21
waybar/config.jsonc Executable file
View File

@@ -0,0 +1,21 @@
[
{
"include":"~/.config/waybar/modules.jsonc",
"output": "DP-3",
"position": "top",
"modules-center": ["clock"],
"modules-left": ["hyprland/workspaces", "hyprland/window"]
},
{
"include":"~/.config/waybar/modules.jsonc",
"output": "DP-2",
"margin-top":5,
"margin-left":15,
"margin-right":15,
"name":"dp2_top",
"position": "top",
"modules-left": ["hyprland/workspaces", "hyprland/window"],
"modules-right": [ "clock","custom/weather", "custom/cpuinfo", "custom/gpu", "network", "custom/flagvpn","battery", "bluetooth", "pulseaudio", "custom/notification"]
}
]

22
waybar/config.jsonc.bk2 Executable file
View File

@@ -0,0 +1,22 @@
[
{
"include":"~/.config/waybar/modules.jsonc",
"output": "DP-3",
"position": "top",
"modules-center": ["clock"],
"modules-left": ["hyprland/workspaces", "hyprland/window"]
},
{
"include":"~/.config/waybar/modules.jsonc",
"output": "DP-2",
"margin-top":5,
"margin-left":15,
"margin-right":15,
"name":"dp2_top",
"position": "top",
"modules-left": ["hyprland/workspaces", "hyprland/window"],
"modules-center": ["clock"],
"modules-right": [ "custom/weather", "custom/cpuinfo", "custom/gpu", "network", "custom/flagvpn","battery", "bluetooth", "pulseaudio", "custom/notification"]
}
]

27
waybar/config.jsonc.catpu Executable file
View File

@@ -0,0 +1,27 @@
[
{
"include":"~/.config/waybar/modules.jsonc",
"output": "DP-3",
"position": "top",
"modules-center": ["clock"],
"modules-left": ["custom/uptime"],
"modules-right": ["custom/timer", "custom/cpuinfo", "custom/gpu", "network"]
},
{
"include":"~/.config/waybar/modules.jsonc",
"output": "DP-2",
"position": "top",
"modules-left": ["hyprland/workspaces", "hyprland/window"],
"modules-center": ["clock"],
"modules-right": ["custom/weather", "custom/cpuinfo", "custom/gpu", "network", "custom/flagvpn","pulseaudio","battery"]
},
{
"include":"~/.config/waybar/modules.jsonc",
"output": "HDMI-A-1",
"position": "top",
"modules-left": ["hyprland/workspaces", "hyprland/window"],
"modules-center": ["clock"],
"modules-right": ["mpris", "custom/weather", "custom/cpuinfo", "custom/gpu", "network", "pulseaudio", "battery"]
}
]

34
waybar/config.jsonc.gruvbox Executable file
View File

@@ -0,0 +1,34 @@
[
{
"include":"~/.config/waybar/modules.jsonc",
"output": "DP-3",
"position": "top",
"modules-center": ["clock"],
"modules-left": ["hyprland/workspaces", "hyprland/window"]
},
{
"include":"~/.config/waybar/modules.jsonc",
"output": "DP-3",
"position": "bottom",
"modules-left": [ "custom/uptime"],
"modules-right": [ "custom/weather","custom/timer", "custom/cpuinfo", "custom/gpu", "network"]
},
{
"include":"~/.config/waybar/modules.jsonc",
"output": "DP-2",
"position": "top",
"modules-left": ["hyprland/workspaces", "hyprland/window", "custom/menu1"],
"modules-center": ["clock"],
"modules-right": [ "custom/weather", "custom/cpuinfo", "custom/gpu", "network", "custom/flagvpn","pulseaudio","battery"]
},
{
"include":"~/.config/waybar/modules.jsonc",
"output": "HDMI-A-1",
"position": "top",
"modules-left": ["hyprland/workspaces", "hyprland/window"],
"modules-center": ["clock"],
"modules-right": [ "custom/weather", "custom/cpuinfo", "custom/gpu", "network", "custom/flagvpn","pulseaudio","battery"]
}
]

29
waybar/config.jsonc.nord Executable file
View File

@@ -0,0 +1,29 @@
[
{
"include":"~/.config/waybar/modules.jsonc",
"output": "DP-3",
"position": "top",
"modules-left": [ "clock", "hyprland/workspaces","hyprland/window" ],
"modules-right": [ "custom/timer", "temperature","cpu", "custom/gpu", "pulseaudio", "bluetooth", "custom/flagvpn", "network"]
},
{
"include":"~/.config/waybar/modules.jsonc",
"output": "DP-2",
"position": "top",
"modules-left": [ "clock", "hyprland/workspaces","hyprland/window" ],
"modules-right": [ "temperature","cpu", "custom/gpu", "pulseaudio", "bluetooth", "custom/flagvpn", "network"]
},
{
"include":"~/.config/waybar/modules.jsonc",
"output": "HDMI-A-1",
"position": "top",
"modules-left": [ "clock", "hyprland/workspaces","hyprland/window" ],
"modules-right": [ "temperature","cpu", "custom/gpu", "pulseaudio", "bluetooth", "custom/flagvpn", "network"]
}
]

147
waybar/modules.jsonc Executable file
View File

@@ -0,0 +1,147 @@
{
"hyprland/workspaces": {
"active-only": false,
"format": "{icon}",
"disable-scroll": true,
"on-click": "activate"
},
"clock": {
"format": "  {:%a %d/%m  %H:%M} ",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small> {calendar} </small></tt>"
},
"network": {
"interface": "enp111s0",
"format": "↗{bandwidthUpBytes} ↘ {bandwidthDownBytes} |"
},
"pulseaudio": {
"format": " {icon} {volume}% ",
"format-muted": "",
"format-icons": {
"default": ["", "", " "]
},
"on-click": "pavucontrol"
},
"custom/cpuinfo": {
"exec": "~/.config/waybar/scripts/cpu_info.sh",
"interval": 12,
"format": "{}"
},
"custom/gpu": {
"exec": "~/.config/waybar/scripts/gpu_temp.sh",
"interval": 12,
"format": "{}"
},
"custom/xpuinfo": {
"exec": "~/.config/waybar/scripts/xpu_info.sh",
"interval": 15,
"format": "{}"
},
"mpris": {
"format": "{player_icon} [{title} - {artist}]",
"format-paused": " [ {title} - {artist}] ",
"player-icons": {
"default": " ",
"firefox": " "
},
"max-length": 70,
"scroll": true
},
"custom/weather": {
"exec": "~/.config/waybar/scripts/weather.sh",
"interval": 600,
"return-type": "text"
},
"custom/uptime": {
"exec": "~/.config/waybar/scripts/uptime.sh",
"interval": 300,
"format": "時間 {}"
},
"custom/flagvpn": {
"exec": "~/scripts/get_flag.sh",
"interval": 60,
"format":"{}",
"tooltip" : true,
"tooltip-format": "{}"
},
"custom/steamhdd": {
"exec": "~/.config/waybar/scripts/hdd_info.sh",
"interval": 3600,
"format":"{}",
"tooltip" : true,
"tooltip-format": "{}"
},
"custom/timer": {
"exec": "/home/arthur/scripts/timer_module.sh",
"interval": 1,
"format":"{}",
"return-type": "json"
},
"custom/appicons": {
"format": "{}",
"exec": "~/.config/waybar/scripts/app-icons.sh",
"interval": 5,
"tooltip":"false"
},
"custom/workspaces-icons": {
"exec": "python ~/.config/waybar/scripts/workspaces_icons.py",
"interval": 5,
"format": "{}"
},
"custom/menu1": {
"format" : "⏻ ",
"tooltip": false,
"menu": "on-click",
"menu-actions": {
"shutdown": "shutdown",
"reboot": "reboot",
"suspend": "systemctl suspend",
"hibernate": "systemctl hibernate"
}
}
,"bluetooth": {
"interval": 30,
"format": "BT {icon} ",
"format-icons": {
"enabled": "",
"disabled": ""
},
"on-click": "blueberry"
},
"custom/notification": {
"tooltip": false,
"format": "| {icon} ~",
"format-icons": {
"notification": "<span foreground='red'><sup></sup></span>",
"none": "",
"dnd-notification": "<span foreground='red'><sup></sup></span>",
"dnd-none": "",
"inhibited-notification": "<span foreground='red'><sup></sup></span>",
"inhibited-none": "",
"dnd-inhibited-notification": "<span foreground='red'><sup></sup></span>",
"dnd-inhibited-none": ""
},
"return-type": "json",
"exec-if": "which swaync-client",
"exec": "swaync-client -swb",
"on-click": "swaync-client -t -sw",
"on-click-right": "swaync-client -d -sw",
"escape": true
},
"tray": {
"icon-size": 21,
"spacing": 10
}
}

147
waybar/modules.jsonc.bk2 Executable file
View File

@@ -0,0 +1,147 @@
{
"hyprland/workspaces": {
"active-only": false,
"format": "{icon}",
"disable-scroll": true,
"on-click": "activate"
},
"clock": {
"format": "~  {:%a [%d/%m]  [%H:%M]} ~",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small> {calendar} </small></tt>"
},
"network": {
"interface": "enp111s0",
"format": "↗{bandwidthUpBytes} ↘ {bandwidthDownBytes} |"
},
"pulseaudio": {
"format": " {icon} {volume}% ",
"format-muted": "",
"format-icons": {
"default": ["", "", " "]
},
"on-click": "pavucontrol"
},
"custom/cpuinfo": {
"exec": "~/.config/waybar/scripts/cpu_info.sh",
"interval": 12,
"format": "{}"
},
"custom/gpu": {
"exec": "~/.config/waybar/scripts/gpu_temp.sh",
"interval": 12,
"format": "{}"
},
"custom/xpuinfo": {
"exec": "~/.config/waybar/scripts/xpu_info.sh",
"interval": 15,
"format": "{}"
},
"mpris": {
"format": "{player_icon} [{title} - {artist}]",
"format-paused": " [ {title} - {artist}] ",
"player-icons": {
"default": " ",
"firefox": " "
},
"max-length": 70,
"scroll": true
},
"custom/weather": {
"exec": "~/.config/waybar/scripts/weather.sh",
"interval": 600,
"return-type": "text"
},
"custom/uptime": {
"exec": "~/.config/waybar/scripts/uptime.sh",
"interval": 300,
"format": "時間 {}"
},
"custom/flagvpn": {
"exec": "~/scripts/get_flag.sh",
"interval": 60,
"format":"{}",
"tooltip" : true,
"tooltip-format": "{}"
},
"custom/steamhdd": {
"exec": "~/.config/waybar/scripts/hdd_info.sh",
"interval": 3600,
"format":"{}",
"tooltip" : true,
"tooltip-format": "{}"
},
"custom/timer": {
"exec": "/home/arthur/scripts/timer_module.sh",
"interval": 1,
"format":"{}",
"return-type": "json"
},
"custom/appicons": {
"format": "{}",
"exec": "~/.config/waybar/scripts/app-icons.sh",
"interval": 5,
"tooltip":"false"
},
"custom/workspaces-icons": {
"exec": "python ~/.config/waybar/scripts/workspaces_icons.py",
"interval": 5,
"format": "{}"
},
"custom/menu1": {
"format" : "⏻ ",
"tooltip": false,
"menu": "on-click",
"menu-actions": {
"shutdown": "shutdown",
"reboot": "reboot",
"suspend": "systemctl suspend",
"hibernate": "systemctl hibernate"
}
}
,"bluetooth": {
"interval": 30,
"format": "BT {icon} ",
"format-icons": {
"enabled": "",
"disabled": ""
},
"on-click": "blueberry"
},
"custom/notification": {
"tooltip": false,
"format": "| {icon} ~",
"format-icons": {
"notification": "<span foreground='red'><sup></sup></span>",
"none": "",
"dnd-notification": "<span foreground='red'><sup></sup></span>",
"dnd-none": "",
"inhibited-notification": "<span foreground='red'><sup></sup></span>",
"inhibited-none": "",
"dnd-inhibited-notification": "<span foreground='red'><sup></sup></span>",
"dnd-inhibited-none": ""
},
"return-type": "json",
"exec-if": "which swaync-client",
"exec": "swaync-client -swb",
"on-click": "swaync-client -t -sw",
"on-click-right": "swaync-client -d -sw",
"escape": true
},
"tray": {
"icon-size": 21,
"spacing": 10
}
}

79
waybar/modules.jsonc.catpu Executable file
View File

@@ -0,0 +1,79 @@
{
"hyprland/workspaces": {
"active-only": false,
"all-outputs": false,
"format": "{icon}",
"persistent_workspaces": {
"2": [],
"3": [],
"4": [],
"5": []
},
"disable-scroll": true,
"on-click": "activate"
},
"clock": {
"format": "<span foreground='#f9f5d7'>  </span>{:%a [%d/%m] ~ [%H:%M]} ~",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small> {calendar} </small></tt>"
},
"network": {
"interface": "enp111s0",
"format": "↗{bandwidthUpBytes} ↘ {bandwidthDownBytes}"
},
"pulseaudio": {
"format": " {icon} {volume}% ",
"format-muted": "",
"format-icons": {
"default": ["", "", " "]
},
"on-click": "pavucontrol"
},
"custom/cpuinfo": {
"exec": "~/.config/waybar/scripts/cpu_info.sh",
"interval": 2,
"format": "{}"
},
"custom/gpu": {
"exec": "~/.config/waybar/scripts/gpu_temp.sh",
"interval": 2,
"format": "{}"
},
"mpris": {
"format": "{player_icon} [{title} - {artist}]",
"format-paused": " [ {title} - {artist}] ",
"player-icons": {
"default": " ",
"firefox": " "
},
"max-length": 70,
"scroll": true
},
"custom/weather": {
"exec": "~/.config/waybar/scripts/weather.sh",
"interval": 600,
"return-type": "text"
},
"custom/uptime": {
"exec": "~/.config/waybar/scripts/uptime.sh",
"interval": 60,
"format": "時間 {}"
},
"custom/flagvpn": {
"exec": "~/scripts/get_flag.sh",
"interval": 60,
"format": "{}"
},
"custom/timer": {
"exec": "/home/arthur/scripts/timer_module.sh",
"interval": 1,
"format":"{}",
"return-type": "json"
}
}

105
waybar/modules.jsonc.gruvbox Executable file
View File

@@ -0,0 +1,105 @@
{
"hyprland/workspaces": {
"active-only": false,
"all-outputs": false,
"format": "{icon}",
"persistent_workspaces": {
"2": [],
"3": [],
"4": [],
"5": []
},
"disable-scroll": true,
"on-click": "activate"
},
"clock": {
"format": "<span foreground='#f9f5d7'>  </span>{:%a [%d/%m] ~ [%H:%M]} ~",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small> {calendar} </small></tt>"
},
"network": {
"interface": "enp111s0",
"format": "↗{bandwidthUpBytes} ↘ {bandwidthDownBytes} |"
},
"pulseaudio": {
"format": " {icon} {volume}% ",
"format-muted": "",
"format-icons": {
"default": ["", "", " "]
},
"on-click": "pavucontrol"
},
"custom/cpuinfo": {
"exec": "~/.config/waybar/scripts/cpu_info.sh",
"interval": 2,
"format": "{}"
},
"custom/gpu": {
"exec": "~/.config/waybar/scripts/gpu_temp.sh",
"interval": 2,
"format": "{}"
},
"mpris": {
"format": "{player_icon} [{title} - {artist}]",
"format-paused": " [ {title} - {artist}] ",
"player-icons": {
"default": " ",
"firefox": " "
},
"max-length": 70,
"scroll": true
},
"custom/weather": {
"exec": "~/.config/waybar/scripts/weather.sh",
"interval": 600,
"return-type": "text"
},
"custom/uptime": {
"exec": "~/.config/waybar/scripts/uptime.sh",
"interval": 60,
"format": "時間 {}"
},
"custom/flagvpn": {
"exec": "~/scripts/get_flag.sh",
"interval": 60,
"format":"{}",
"tooltip" : true,
"tooltip-format": "{}"
},
"custom/timer": {
"exec": "/home/arthur/scripts/timer_module.sh",
"interval": 1,
"format":"{}",
"return-type": "json"
},
"custom/appicons": {
"format": "{}",
"exec": "~/.config/waybar/scripts/app-icons.sh",
"interval": 5,
"tooltip":"false"
},
"custom/workspaces-icons": {
"exec": "python ~/.config/waybar/scripts/workspaces_icons.py",
"interval": 5,
"format": "{}"
},
"custom/menu1": {
"format" : "⏻ ",
"tooltip": false,
"menu": "on-click",
"menu-file": "~/.config/waybar/power_menu.xml",
"menu-actions": {
"shutdown": "shutdown",
"reboot": "reboot",
"suspend": "systemctl suspend",
"hibernate": "systemctl hibernate"
}
}
}

165
waybar/modules.jsonc.nord Executable file
View File

@@ -0,0 +1,165 @@
{
// Modules configuration
"hyprland/workspaces": {
"active-only": false,
"all-outputs": false,
"format": "{icon}",
"persistent_workspaces": {
"2": [],
"3": [],
"4": [],
"5": []
},
"disable-scroll": true,
"on-click": "activate"
},
"hyprland/window": {
"format": "{}",
"max-length": 50,
"tooltip": false
},
"bluetooth": {
"interval": 30,
"format": "{icon}",
"format-icons": {
"enabled": "",
"disabled": ""
},
"on-click": "blueberry"
},
"hyprland/language": {
"format": "<big></big> {}",
"max-length": 5,
"min-length": 5
},
"idle_inhibitor": {
"format": "{icon}",
"format-icons": {
"activated": "",
"deactivated": ""
},
"tooltip": "true"
},
"tray": {
//"icon-size": 11,
"spacing": 5
},
"clock": {
"format": " {:%H:%M  %e %b}",
"tooltip-format": "<big>{:%Y %B}</big>\n<tt><small>{calendar}</small></tt>",
"today-format": "<b>{}</b>",
"on-click": "gnome-calendar"
},
"cpu": {
"interval": "1",
"format": " {max_frequency}GHz <span color=\"darkgray\">| {usage}%</span>",
"max-length": 13,
"min-length": 13,
"on-click": "kitty -e htop --sort-key PERCENT_CPU",
"tooltip": false
},
"temperature": {
//"thermal-zone": 1,
"interval": "4",
"hwmon-path": "/sys/class/hwmon/hwmon3/temp1_input",
"critical-threshold": 74,
"format-critical": " {temperatureC}°C",
"format": "{icon} {temperatureC}°C",
"format-icons": ["", "", ""],
"max-length": 7,
"min-length": 7
},
"network": {
"interface": "enp111s0",
"format": "↗{bandwidthUpBytes} ↘ {bandwidthDownBytes}"
},
"pulseaudio": {
"scroll-step": 3, // %, can be a float
"format": "{icon} {volume}% {format_source}",
"format-bluetooth": "{volume}% {icon} {format_source}",
"format-bluetooth-muted": " {icon} {format_source}",
"format-muted": " {format_source}",
"format-source": "",
"format-source-muted": "",
"format-icons": {
"headphone": "",
"hands-free": "",
"headset": "",
"phone": "",
"portable": "",
"car": "",
"default": ["", "", ""]
},
"on-click": "pavucontrol",
"on-click-right": "pactl set-source-mute @DEFAULT_SOURCE@ toggle"
},
"custom/pacman": {
"format": "<big>􏆲</big> {}",
"interval": 3600, // every hour
"exec": "checkupdates | wc -l", // # of updates
"exec-if": "exit 0", // always run; consider advanced run conditions
"on-click": "kitty -e 'yay'; pkill -SIGRTMIN+8 waybar", // update system
"signal": 8,
"max-length": 5,
"min-length": 3
},
"custom/weather": {
"exec": "~/.config/waybar/scripts/weather.sh",
"interval": 3600,
"return-type": "text"
},
"custom/gpu": {
"exec": "$HOME/.config/waybar/scripts/gpu_temp.sh",
"format": " {}",
"interval": 2,
"tooltip": "{tooltip}",
"max-length": 19,
"min-length": 19,
"on-click": "powerupp"
},
"custom/cpugovernor": {
"format": "{icon}",
"interval": "30",
"exec": "$HOME/.config/waybar/scripts/cpu_info.sh",
"min-length": 2,
"max-length": 2,
"format-icons": {
"perf": "",
"sched": ""
}
},
"mpris": {
"format": "{player_icon} [{title} - {artist}]",
"format-paused": " [ {title} - {artist}] ",
"player-icons": {
"default": " ",
"firefox": " "
},
"max-length": 70,
"scroll": true
},
"custom/flagvpn": {
"exec": "~/scripts/get_flag.sh",
"interval": 60,
"format": "{}"
},
"custom/timer": {
"exec": "/home/arthur/scripts/timer_module.sh",
"interval": 1,
"format":"{}",
"return-type": "json"
}
}

28
waybar/power_menu.xml Executable file
View File

@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<interface>
<object class="GtkMenu" id="menu">
<child>
<object class="GtkMenuItem" id="suspend">
<property name="label">Suspend</property>
</object>
</child>
<child>
<object class="GtkMenuItem" id="hibernat">
<property name="label">Hibernate</property>
</object>
</child>
<child>
<object class="GtkMenuItem" id="shutdown">
<property name="label">Shutdown</property>
</object>
</child>
<child>
<object class="GtkSeparatorMenuItem" id="delimiter1"/>
</child>
<child>
<object class="GtkMenuItem" id="reboot">
<property name="label">Reboot</property>
</object>
</child>
</object>
</interface>

29
waybar/scripts/app-icons.sh Executable file
View File

@@ -0,0 +1,29 @@
#!/bin/bash
# Define tus apps favoritas y su ícono Unicode (usa Font Awesome u otra)
declare -A apps=(
["zen"]=""
["kitty"]=""
["nvim"]=""
["ranger"]=""
["steam"]=""
)
# Colores (puedes personalizarlos desde CSS también)
active_color="#b8bb26"
inactive_color="#bdae93"
output=""
for app in "${!apps[@]}"; do
icon="${apps[$app]}"
# Detectar si el proceso está corriendo
if pgrep -x "$app" > /dev/null; then
output+="<span color='$active_color'>$icon</span> "
else
output+="<span color='$inactive_color'>$icon</span> "
fi
done
echo -e "$output"

21
waybar/scripts/cpu_info.sh Executable file
View File

@@ -0,0 +1,21 @@
#!/bin/bash
# Obtener temperatura desde sysfs
temp_raw=$(cat /sys/class/hwmon/hwmon2/temp1_input)
temp_c=$((temp_raw / 1000))
# Obtener uso de CPU
usage=$(grep 'cpu ' /proc/stat | awk '{u=$2+$4; t=$2+$4+$5; print u, t}')
sleep 0.5
usage2=$(grep 'cpu ' /proc/stat | awk '{u=$2+$4; t=$2+$4+$5; print u, t}')
u1=$(echo $usage | awk '{print $1}')
t1=$(echo $usage | awk '{print $2}')
u2=$(echo $usage2 | awk '{print $1}')
t2=$(echo $usage2 | awk '{print $2}')
cpu_usage=$((100 * (u2 - u1) / (t2 - t1)))
cpu_usage_formated=$(printf "%02d\n" $cpu_usage)
temp_c_formated=$(printf "%02d\n" $temp_c)
progress=$(sh ~/.config/waybar/scripts/status_bar.sh $cpu_usage)
# Imprimir formato
echo " CPU ${temp_c}°C / ${cpu_usage_formated}% ${progress}"

4
waybar/scripts/get_flag.py Executable file
View File

@@ -0,0 +1,4 @@
#!/bin/bash
flag=$(sh ~/scripts/get_flag.sh)
echo " ${flag}"

12
waybar/scripts/gpu_temp.sh Executable file
View File

@@ -0,0 +1,12 @@
#!/bin/bash
# Obtener uso de la GPU con nvidia-smi
usage=$(nvidia-smi --query-gpu=utilization.gpu --format=csv,noheader,nounits | head -n 1)
temp=$(nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader,nounits | head -n 1)
temp_formated=$(printf "%02d\n" $temp)
usage_formated=$(printf "%02d\n" $usage)
progress=$(sh ~/.config/waybar/scripts/status_bar.sh $usage)
echo " GPU ${temp_formated}°C / ${usage_formated}% $progress"

28
waybar/scripts/hdd_info.sh Executable file
View File

@@ -0,0 +1,28 @@
#!/bin/bash
local_hdd=$( df -h | grep /mnt/STEAM )
IFS=' ' read -r -a partes <<< "$local_hdd"
local_hdd=$( cut -c 1-2 <<< ${partes[4]} )
local_hdd="[steam_"$local_hdd"%]"$( sh /home/arthur/.config/waybar/scripts/status_bar.sh $((local_hdd)))
system_hdd=$( df -h | grep nvme1n1p2)
if [ -z $system_hdd ]; then
system_hdd=$( df -h | grep nvme0n1p2)
fi
IFS=' ' read -r -a partes <<< "$system_hdd"
system_hdd=$( cut -c 1-2 <<< ${partes[4]} )
system_hdd="[sys_____"$system_hdd"%]"$( sh /home/arthur/.config/waybar/scripts/status_bar.sh $((system_hdd)))
#raspberry info
hdd2=$( ssh arthur@192.168.1.131 "df -h" | grep /media/HDD2 )
if [ -z "$hdd2" ]; then
echo "|.:" $local_hdd ":.|&#013;|.:" $system_hdd ":.|"
else
IFS=' ' read -r -a partes <<< "$hdd2"
hdd2=$( cut -c 1-2 <<< ${partes[4]})
hdd2="[hdd2___"$hdd2"%]"$( sh /home/arthur/.config/waybar/scripts/status_bar.sh $((hdd2)))
echo "|.:" $local_hdd ":.|&#013;|.:" $system_hdd ":.|&#013;|.: "$hdd2" :.|"
fi

34
waybar/scripts/status_bar.sh Executable file
View File

@@ -0,0 +1,34 @@
totalval=$1
usage_10=$((totalval/10))
progress=""
max=8
for (( i=1; (( i <= max )); i++ )); do
if (( i == 1 )); then
if (( usage_10 >= i )); then
progress=""
else
progress=""
break;
fi
fi
if (( usage_10 <= i )); then
progress=$progress""
else
progress=$progress""
fi
if (( i==max )); then
if (( usage_10 >= max+2 )); then
progress=$progress""
break;
else
progress=$progress""
break;
fi
fi
done
echo $progress

5
waybar/scripts/uptime.sh Executable file
View File

@@ -0,0 +1,5 @@
#!/bin/bash
# Devuelve el tiempo encendido del sistema en formato legible
uptime -p | sed 's/up //'

15
waybar/scripts/weather.sh Executable file
View File

@@ -0,0 +1,15 @@
#!/bin/bash
API_KEY="bc07f366f9c10599a7700f80cc66e0d6"
CITY_ID="3583361" # Puedes encontrarlo en https://openweathermap.org/find?q=San+Salvador
UNITS="metric" # o "imperial" para Fahrenheit
WEATHER=$(curl -sf "https://api.openweathermap.org/data/2.5/weather?id=${CITY_ID}&appid=${API_KEY}&units=${UNITS}")
if [ "$WEATHER" != "" ]; then
TEMP=$(echo "$WEATHER" | jq '.main.temp' | cut -d "." -f 1)
ICON=$(echo "$WEATHER" | jq -r '.weather[0].icon')
echo ".:  ${TEMP}󰔄 :."
else
echo ".: Weather unavailable :."
fi

View File

@@ -0,0 +1,47 @@
#!/usr/bin/env python3
import json
import subprocess
icons = {
"firefox": "",
"kitty": "",
"code": "",
"nemo": "",
"discord": "",
"spotify": "",
}
def get_windows():
result = subprocess.run(["hyprctl", "clients", "-j"], stdout=subprocess.PIPE)
return json.loads(result.stdout)
def get_workspaces():
result = subprocess.run(["hyprctl", "workspaces", "-j"], stdout=subprocess.PIPE)
return json.loads(result.stdout)
def main():
windows = get_windows()
workspaces = get_workspaces()
ws_icons = {}
for ws in workspaces:
ws_id = ws["id"]
ws_icons[ws_id] = []
for win in windows:
app = win["class"].lower()
ws_id = win["workspace"]["id"]
icon = icons.get(app, "?")
if icon not in ws_icons[ws_id]:
ws_icons[ws_id].append(icon)
output = " ".join(
f"{ws}:{''.join(ws_icons[ws])}" for ws in sorted(ws_icons.keys())
)
print(output)
if __name__ == "__main__":
main()

30
waybar/scripts/xpu_info.sh Executable file
View File

@@ -0,0 +1,30 @@
#!/bin/bash
# Obtener uso de la GPU con nvidia-smi
usage=$(nvidia-smi --query-gpu=utilization.gpu --format=csv,noheader,nounits | head -n 1)
temp=$(nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader,nounits | head -n 1)
temp_formated=$(printf "%02d\n" $temp)
usage_formated=$(printf "%02d\n" $usage)
progress_gpu=$(sh ~/.config/waybar/scripts/status_bar.sh $usage)
# Obtener temperatura desde sysfs
temp_raw=$(cat /sys/class/hwmon/hwmon2/temp1_input)
temp_c=$((temp_raw / 1000))
# Obtener uso de CPU
usage=$(grep 'cpu ' /proc/stat | awk '{u=$2+$4; t=$2+$4+$5; print u, t}')
sleep 0.5
usage2=$(grep 'cpu ' /proc/stat | awk '{u=$2+$4; t=$2+$4+$5; print u, t}')
u1=$(echo $usage | awk '{print $1}')
t1=$(echo $usage | awk '{print $2}')
u2=$(echo $usage2 | awk '{print $1}')
t2=$(echo $usage2 | awk '{print $2}')
cpu_usage=$((100 * (u2 - u1) / (t2 - t1)))
cpu_usage_formated=$(printf "%02d\n" $cpu_usage)
temp_c_formated=$(printf "%02d\n" $temp_c)
progress=$(sh ~/.config/waybar/scripts/status_bar.sh $cpu_usage)
# Imprimir formato
echo "  CPU ${temp_c}°C / ${cpu_usage_formated}% ${progress} &#013; ""  GPU ${temp_formated}°C / ${usage_formated}% $progress_gpu"

259
waybar/style.css Executable file
View File

@@ -0,0 +1,259 @@
@define-color fondo_color rgba(10, 11, 19, 0.6);
@define-color fore_color #bec1cb;
@define-color borde_color #bec1cb;
* {
font-family: "Mononoki Nerd Font Bold";
font-size: 13px;
min-height: 0;
font-weight: bold;
/*color: @fore_color;*/ /* Cambiar color de texto a blanco */
}
window#waybar {
background: transparent;
background-color: @fondo_color;
border-radius : 15px;
color: @fore_color;
transition-property: background-color;
transition-duration: 0.1s;
border: 2px solid @borde_color; /* Borde de color blanco semi-transparente */
}
#window {
border-radius: 5px;
margin: 8px;
padding-left: 8px;
padding-right: 8px;
background-color: transparent;
}
button {
box-shadow: inset 0 -3px transparent;
border: none;
border-radius: 5px; /* Borde redondeado */
padding: 6px 12px; /* Ajusta el padding para que se vea más ovalado */
background-color: @fondo_color;
color: @fore_color; /* Color de texto blanco */
transition: background-color 0.3s, color 0.3s;
border: 2px solid @borde_color; /* Borde de color blanco semi-transparente */
}
button:hover {
background: inherit;
color: #32302f;
border-top: 2px solid @fondo_color;
}
#workspaces button {
border-radius: 5px; /* Borde redondeado */
padding: 0 4px;
border-radius: 20px; /* Borde redondeado */
color: @fore_color; /* Color de texto blanco */
border: 2px solid @borde_color /* Borde de color blanco semi-transparente */
}
#
#workspaces button.focused {
/*border-radius: 5px;*/ /* Borde redondeado */
background-color: rgba(0, 0, 0, 0.3);
color: @rosewater;
/* border: 2px solid @rosewater; *//* Borde color rosa */
}
#workspaces button.active {
/*border-radius: 5px; *//* Borde redondeado */
background-color: @fore_color;
color: @fondo_color;
border: 2px solid @borde_color;/* Borde color rosa */
}
#workspaces button.urgent {
border-radius: 5px; /* Borde redondeado */
background-color: #eb4d4b;
color: @fore_color;
border: 2px solid #eb4d4b; /* Borde rojo */
}
/* Estilos generales para otros módulos */
#puleaudio,
#custom-gpu
#custom-cpuinfo
#clock,
#battery,
cpu,
#memory,
#disk,
temperature,
#backlight,
#wireplumber,
#tray,
#network,
#mode,
#scratchpad {
margin-top: 2px;
margin-bottom: 2px;
margin-left: 2px;
margin-right: 4px;
padding-left: 1px;
padding-right: 1px;
/*border-radius: 5px; *//* Borde redondeado */
/*background-color: rgba(0, 0, 0, 0.3);*/ /* Fondo ligeramente oscuro */
color: @fore_color;
/*border: 2px solid #32302f; *//* Borde de color blanco */
}
#network {
margin-right: 8px;
/* border:2px solid #d8a657 ; */
}
#pulseaudio {
/*border:2px solid #ea6962 */;
/* border-radius: 5px; *//* Borde redondeado */
}
#clock{
/* border:2px solid #7daea3; */
/* border-radius: 5px;*/ /* Borde redondeado */
}
#temperature.cpu,
#temperature.gpu {
padding: 0 8px;
border: 2px solid @green;
border-radius: 5px;
color: white;
background-color: rgba(0, 0, 0, 0.3);
}
#temperature.cpu.critical,
#temperature.gpu.critical {
border-color: @red;
color: @red;
}
#custom-gpu {
margin-right: 8px;
padding: 0 1px;
/*border: 2px solid #458588; */
/*border-radius: 5px; */
color: @fore_color;
/*background-color: rgba(0, 0, 0, 0.3);*/
}
#custom-gpu.critical {
border-color: red;
color: red;
}
#custom-cpuinfo {
padding: 8px;
margin-right: 8px;
/*border: 2px solid #a9b665; */
/*border-radius: 5px; */
color: @fore_color;
/*background-color: rgba(0, 0, 0, 0.3);*/
}
#custom-cpuinfo.critical {
border-color: red;
color: red;
}
#mpris {
margin-right: 8px;
padding: 20px;
border: 2px solid #d65d0e;
border-radius: 5px;
color: @fore_color;
background-color: rgba(0, 0, 0, 0.3);
}
#mpris.paused {
border-color: #a89984;
color: @borde_color;
}
#custom-weather {
margin-right: 2px;
padding: 0 2px;
/*border: 2px solid #d3869b;*/
/*border-radius: 5px;*/
color: @fore_color;
/*background-color: rgba(0, 0, 0, 0.3);*/
}
#custom-uptime {
padding: 0 8px;
/*border: 2px solid #d3869b;*/
/*border-radius: 5px;*/
color: @fore_color;
}
#custom-flagvpn {
margin-right: 8px;
padding: 0 8px;
/*border: 2px solid #d3869b;*/
/*border-radius: 5px;*/
color: @fore_color;
/*background-color: rgba(0, 0, 0, 0.3);*/
}
#custom-timer {
margin-right: 8px;
padding: 0 8px;
/*border: 2px solid #d3869b;*/
/*border-radius: 5px;*/
color: @fore_color;
/*background-color: rgba(0, 0, 0, 0.3);*/
}
/* If workspaces is the leftmost module, omit left margin */
.modules-left>widget:first-child>#workspaces {
border-radius: 5px;
margin-left: 1;
}
/* If workspaces is the rightmost module, omit right margin */
.modules-right>widget:last-child>#workspaces {
border-radius: 5px;
margin-right: 0;
}
#custom-vpn {
margin-right: 8px;
color: @lavender;
border-radius: 15px;
padding-left: 6px;
padding-right: 6px;
}
#custom-appicons {
font-size: 30px;
margin-right: 8px;
color: @lavender;
border-radius: 15px;
padding-left: 6px;
padding-right: 6px;
}
menu {
background: transparent;
background-color: @fondo_color;
border-radius: 15px;
color: @fore_color;
border: 1px solid @borde_color; /* Borde de color blanco semi-transparente */
}
menuitem {
border-radius: 15px;
background: transparent;
background-color: @fondo_color;
color: @fore_color;
border: 1px solid @borde_color; /* Borde de color blanco semi-transparente */
}

261
waybar/style.css.bk2 Executable file
View File

@@ -0,0 +1,261 @@
@define-color fondo_color rgba(12, 8, 10, 0.6);
@define-color fore_color #ded4d8;
@define-color borde_color #ded4d8;
* {
font-family: "Mononoki Nerd Font Bold";
font-size: 13px;
min-height: 0;
font-weight: bold;
/*color: @fore_color;*/ /* Cambiar color de texto a blanco */
}
window#waybar {
background: transparent;
background-color: @fondo_color;
border-radius : 15px;
color: @fore_color;
transition-property: background-color;
transition-duration: 0.1s;
border: 2px solid @borde_color; /* Borde de color blanco semi-transparente */
}
#window {
border-radius: 5px;
margin: 8px;
padding-left: 8px;
padding-right: 8px;
background-color: transparent;
}
button {
box-shadow: inset 0 -3px transparent;
border: none;
border-radius: 5px; /* Borde redondeado */
padding: 6px 12px; /* Ajusta el padding para que se vea más ovalado */
background-color: @fondo_color;
color: @fore_color; /* Color de texto blanco */
transition: background-color 0.3s, color 0.3s;
border: 2px solid @borde_color; /* Borde de color blanco semi-transparente */
}
button:hover {
background: inherit;
color: #32302f;
border-top: 2px solid @fondo_color;
}
#workspaces button {
border-radius: 5px; /* Borde redondeado */
padding: 0 4px;
border-radius: 20px; /* Borde redondeado */
color: @fore_color; /* Color de texto blanco */
border: 2px solid @borde_color /* Borde de color blanco semi-transparente */
}
#
#workspaces button.focused {
/*border-radius: 5px;*/ /* Borde redondeado */
background-color: rgba(0, 0, 0, 0.3);
color: @rosewater;
/* border: 2px solid @rosewater; *//* Borde color rosa */
}
#workspaces button.active {
/*border-radius: 5px; *//* Borde redondeado */
background-color: @fore_color;
color: @fondo_color;
border: 2px solid @borde_color;/* Borde color rosa */
}
#workspaces button.urgent {
border-radius: 5px; /* Borde redondeado */
background-color: #eb4d4b;
color: @fore_color;
border: 2px solid #eb4d4b; /* Borde rojo */
}
/* Estilos generales para otros módulos */
#puleaudio,
#custom-gpu
#custom-cpuinfo
#clock,
#battery,
cpu,
#memory,
#disk,
temperature,
#backlight,
#wireplumber,
#tray,
#network,
#mode,
#scratchpad {
margin-top: 2px;
margin-bottom: 2px;
margin-left: 2px;
margin-right: 4px;
padding-left: 1px;
padding-right: 1px;
/*border-radius: 5px; *//* Borde redondeado */
/*background-color: rgba(0, 0, 0, 0.3);*/ /* Fondo ligeramente oscuro */
color: @fore_color;
/*border: 2px solid #32302f; *//* Borde de color blanco */
}
#network {
margin-right: 8px;
/* border:2px solid #d8a657 ; */
}
#pulseaudio {
/*border:2px solid #ea6962 */;
/* border-radius: 5px; *//* Borde redondeado */
}
#clock{
/* border:2px solid #7daea3; */
/* border-radius: 5px;*/ /* Borde redondeado */
}
#temperature.cpu,
#temperature.gpu {
padding: 0 8px;
border: 2px solid @green;
border-radius: 5px;
color: white;
background-color: rgba(0, 0, 0, 0.3);
}
#temperature.cpu.critical,
#temperature.gpu.critical {
border-color: @red;
color: @red;
}
#custom-gpu {
margin-right: 8px;
padding: 0 1px;
/*border: 2px solid #458588; */
/*border-radius: 5px; */
color: @fore_color;
/*background-color: rgba(0, 0, 0, 0.3);*/
}
#custom-gpu.critical {
border-color: red;
color: red;
}
#custom-cpuinfo {
padding: 8px;
margin-right: 8px;
/*border: 2px solid #a9b665; */
/*border-radius: 5px; */
color: @fore_color;
/*background-color: rgba(0, 0, 0, 0.3);*/
}
#custom-cpuinfo.critical {
border-color: red;
color: red;
}
#mpris {
margin-right: 8px;
padding: 20px;
border: 2px solid #d65d0e;
border-radius: 5px;
color: @fore_color;
background-color: rgba(0, 0, 0, 0.3);
}
#mpris.paused {
border-color: #a89984;
color: @borde_color;
}
#custom-weather {
margin-right: 2px;
padding: 0 2px;
/*border: 2px solid #d3869b;*/
/*border-radius: 5px;*/
color: @fore_color;
/*background-color: rgba(0, 0, 0, 0.3);*/
}
#custom-uptime {
padding: 0 8px;
/*border: 2px solid #d3869b;*/
/*border-radius: 5px;*/
color: @fore_color;
}
#custom-flagvpn {
margin-right: 8px;
padding: 0 8px;
/*border: 2px solid #d3869b;*/
/*border-radius: 5px;*/
color: @fore_color;
/*background-color: rgba(0, 0, 0, 0.3);*/
}
#custom-timer {
margin-right: 8px;
padding: 0 8px;
/*border: 2px solid #d3869b;*/
/*border-radius: 5px;*/
color: @fore_color;
/*background-color: rgba(0, 0, 0, 0.3);*/
}
/* If workspaces is the leftmost module, omit left margin */
.modules-left>widget:first-child>#workspaces {
border-radius: 5px;
margin-left: 1;
}
/* If workspaces is the rightmost module, omit right margin */
.modules-right>widget:last-child>#workspaces {
border-radius: 5px;
margin-right: 0;
}
#custom-vpn {
margin-right: 8px;
color: @lavender;
border-radius: 15px;
padding-left: 6px;
padding-right: 6px;
}
#custom-appicons {
font-size: 30px;
margin-right: 8px;
color: @lavender;
border-radius: 15px;
padding-left: 6px;
padding-right: 6px;
}
menu {
background: transparent;
background-color: @fondo_color;
border-radius: 15px;
color: @fore_color;
border: 1px solid @borde_color; /* Borde de color blanco semi-transparente */
}
menuitem {
border-radius: 15px;
background: transparent;
background-color: @fondo_color;
color: @fore_color;
border: 1px solid @borde_color; /* Borde de color blanco semi-transparente */
}

214
waybar/style.css.catpu Executable file
View File

@@ -0,0 +1,214 @@
@import "mocha.css";
* {
font-family: "MesloLGS Nerd Font Mono Bold";
font-size: 13px;
min-height: 0;
font-weight: bold;
color: white; /* Cambiar color de texto a blanco */
}
window#waybar {
background: transparent;
background-color: rgba(30, 30, 46, 0.6);;
color: @overlay0;
transition-property: background-color;
transition-duration: 0.1s;
border: 1px solid @rosewater;
border-radius: 15px;
padding-left: 8px;
}
tooltip {
background: transparent;
background-color: rgba(30, 30, 46, 0.6);;
color: @overlay0;
transition-property: background-color;
transition-duration: 0.1s;
border: 1px solid @rosewater;
border-radius: 35px;
padding-left: 8px;
}
#window {
margin: 8px;
padding-left: 8px;
padding-right: 8px;
background-color: transparent;
}
button {
box-shadow: inset 0 -3px transparent;
border: none;
padding: 6px 12px; /* Ajusta el padding para que se vea más ovalado */
color: white; /* Color de texto blanco */
transition: background-color 0.3s, color 0.3s;
}
button:hover {
background: inherit;
color: @mauve;
border-top: 2px solid @mauve;
}
#workspaces button {
padding: 0 4px;
color: white; /* Color de texto blanco */
}
#workspaces button.focused {
color: @rosewater;
}
#workspaces button.active {
color: @mauve;
border: 1px solid @mauve;
}
#workspaces button.urgent {
color: white;
}
/* Estilos generales para otros módulos */
#pulseaudio,
#clock,
#battery,
cpu,
#memory,
#disk,
temperature,
#backlight,
#wireplumber,
#tray,
#network,
#mode,
#scratchpad {
margin-top: 2px;
margin-bottom: 2px;
margin-left: 4px;
margin-right: 4px;
padding-left: 4px;
padding-right: 4px;
/*color: white; Texto blanco */
}
#network {
color: @rosewater;
}
#pulseaudio {
color: @mauve;
}
#clock{
color: @yellow;
}
#temperature.cpu,
#temperature.gpu {
padding: 0 8px;
border: 2px solid @green;
border-radius: 15px;
color: white;
background-color: rgba(0, 0, 0, 0.3);
}
#temperature.cpu.critical,
#temperature.gpu.critical {
border-color: @red;
color: @red;
}
#custom-gpu {
padding: 0 8px;
color: @blue;
}
#custom-gpu.critical {
border-color: red;
color: red;
}
#custom-cpuinfo {
padding: 0 8px;
color: @green;
}
#custom-cpuinfo.critical {
border-color: red;
color: red;
}
#mpris {
padding: 1 20px;
border: 2px solid @mauve;
border-radius: 15px;
color: white;
background-color: rgba(0, 0, 0, 0.3);
}
#mpris.paused {
border-color: @gray;
color: @gray;
}
#custom-gpu {
margin-right: 8px;
color: @blue;
}
#custom-gpu.critical {
border-color: red;
color: red;
}
#custom-weather {
margin-right: 8px;
padding: 0 8px;
color: @sky;
}
#custom-uptime {
color: #d3869b;
}
#custom-flagvpn {
color: #d3869b;
}
/* If workspaces is the leftmost module, omit left margin */
.modules-left>widget:first-child>#workspaces {
margin-left: 0;
}
/* If workspaces is the rightmost module, omit right margin */
.modules-right>widget:last-child>#workspaces {
margin-right: 0;
}
#custom-vpn {
color: @lavender;
border-radius: 15px;
padding-left: 6px;
padding-right: 6px;
}
#custom-timer {
margin-right: 8px;
padding: 0 8px;
border: 2px solid @lavender;
border-radius: 15px;
color: #f9f5d7;
background-color: rgba(0, 0, 0, 0.3);
}

266
waybar/style.css.gruvbox Executable file
View File

@@ -0,0 +1,266 @@
@define-color fondo_color rgba(40, 33, 31, 0.6);
@define-color fore_color #ede9e3;
@define-color borde_color #ede9e3;
* {
font-family: "Mononoki Nerd Font Bold";
font-size: 13px;
min-height: 0;
font-weight: bold;
/*color: @fore_color;*/ /* Cambiar color de texto a blanco */
}
window#waybar {
background: transparent;
background-color: @fondo_color;
border-radius : 15px;
color: @fore_color;
transition-property: background-color;
transition-duration: 0.1s;
border: 1px solid @borde_color; /* Borde de color blanco semi-transparente */
padding-left: 8;
padding-right: 8;
padding-top: 8;
padding-bottom: 8;
}
#window {
border-radius: 5px;
margin: 8px;
padding-left: 8;
padding-right: 8;
background-color: transparent;
}
button {
box-shadow: inset 0 -3px transparent;
border: none;
border-radius: 5px; /* Borde redondeado */
padding: 6px 12px; /* Ajusta el padding para que se vea más ovalado */
background-color: @fondo_color;
color: @fore_color; /* Color de texto blanco */
transition: background-color 0.3s, color 0.3s;
border: 2px solid @borde_color; /* Borde de color blanco semi-transparente */
}
button:hover {
background: inherit;
color: #32302f;
border-top: 2px solid @fondo_color;
}
#workspaces button {
border-radius: 5px; /* Borde redondeado */
padding: 0 4px;
border-radius: 20px; /* Borde redondeado */
color: @fore_color; /* Color de texto blanco */
border: 2px solid @borde_color /* Borde de color blanco semi-transparente */
}
#
#workspaces button.focused {
/*border-radius: 5px;*/ /* Borde redondeado */
background-color: rgba(0, 0, 0, 0.3);
color: @rosewater;
/* border: 2px solid @rosewater; *//* Borde color rosa */
}
#workspaces button.active {
/*border-radius: 5px; *//* Borde redondeado */
background-color: @fore_color;
color: @fondo_color;
border: 2px solid @borde_color;/* Borde color rosa */
}
#workspaces button.urgent {
border-radius: 5px; /* Borde redondeado */
background-color: #eb4d4b;
color: @fore_color;
border: 2px solid #eb4d4b; /* Borde rojo */
}
/* Estilos generales para otros módulos */
#puleaudio,
#custom-gpu
#custom-cpuinfo
#clock,
#battery,
cpu,
#memory,
#disk,
temperature,
#backlight,
#wireplumber,
#tray,
#network,
#mode,
#scratchpad {
margin-top: 2px;
margin-bottom: 2px;
margin-left: 2px;
margin-right: 4px;
padding-left: 1px;
padding-right: 1px;
/*border-radius: 5px; *//* Borde redondeado */
/*background-color: rgba(0, 0, 0, 0.3);*/ /* Fondo ligeramente oscuro */
color: @fore_color;
/*border: 2px solid #32302f; *//* Borde de color blanco */
}
#network {
margin-right: 8px;
/* border:2px solid #d8a657 ; */
}
#pulseaudio {
/*border:2px solid #ea6962 */;
/* border-radius: 5px; *//* Borde redondeado */
}
#clock{
/* border:2px solid #7daea3; */
/* border-radius: 5px;*/ /* Borde redondeado */
}
#temperature.cpu,
#temperature.gpu {
padding: 0 8px;
border: 2px solid @green;
border-radius: 5px;
color: white;
background-color: rgba(0, 0, 0, 0.3);
}
#temperature.cpu.critical,
#temperature.gpu.critical {
border-color: @red;
color: @red;
}
#custom-gpu {
margin-right: 8px;
padding: 0 1px;
/*border: 2px solid #458588; */
/*border-radius: 5px; */
color: @fore_color;
/*background-color: rgba(0, 0, 0, 0.3);*/
}
#custom-gpu.critical {
border-color: red;
color: red;
}
#custom-cpuinfo {
padding: 1 8px;
margin-right: 8px;
/*border: 2px solid #a9b665; */
/*border-radius: 5px; */
color: @fore_color;
/*background-color: rgba(0, 0, 0, 0.3);*/
}
#custom-cpuinfo.critical {
border-color: red;
color: red;
}
#mpris {
margin-right: 8px;
padding: 1 20px;
border: 2px solid #d65d0e;
border-radius: 5px;
color: @fore_color;
background-color: rgba(0, 0, 0, 0.3);
}
#mpris.paused {
border-color: #a89984;
color: @borde_color;
}
#custom-weather {
margin-right: 2px;
padding: 0 2px;
/*border: 2px solid #d3869b;*/
/*border-radius: 5px;*/
color: @fore_color;
/*background-color: rgba(0, 0, 0, 0.3);*/
}
#custom-uptime {
padding: 0 8px;
/*border: 2px solid #d3869b;*/
/*border-radius: 5px;*/
color: @fore_color;
}
#custom-flagvpn {
margin-right: 8px;
padding: 0 8px;
/*border: 2px solid #d3869b;*/
/*border-radius: 5px;*/
color: @fore_color;
/*background-color: rgba(0, 0, 0, 0.3);*/
}
#custom-timer {
margin-right: 8px;
padding: 0 8px;
/*border: 2px solid #d3869b;*/
/*border-radius: 5px;*/
color: @fore_color;
/*background-color: rgba(0, 0, 0, 0.3);*/
}
/* If workspaces is the leftmost module, omit left margin */
.modules-left>widget:first-child>#workspaces {
border-radius: 5px;
margin-left: 0;
}
/* If workspaces is the rightmost module, omit right margin */
.modules-right>widget:last-child>#workspaces {
border-radius: 5px;
margin-right: 0;
}
#custom-vpn {
margin-right: 8px;
color: @lavender;
border-radius: 15px;
padding-left: 6px;
padding-right: 6px;
}
#custom-appicons {
font-size: 30px;
margin-right: 8px;
color: @lavender;
border-radius: 15px;
padding-left: 6px;
padding-right: 6px;
}
menu {
background: transparent;
background-color: @fondo_color;
border-radius: 15px;
color: @fore_color;
border: 1px solid @borde_color; /* Borde de color blanco semi-transparente */
}
menuitem {
border-radius: 15px;
background: transparent;
background-color: @fondo_color;
color: @fore_color;
border: 1px solid @borde_color; /* Borde de color blanco semi-transparente */
}

229
waybar/style.css.gruvbox.bk1 Executable file
View File

@@ -0,0 +1,229 @@
@import "mocha.css";
* {
font-family: "Mononoki Nerd Font Bold";
font-size: 9px;
min-height: 0;
font-weight: bold;
color: #f9f5d7; /* Cambiar color de texto a blanco */
}
window#waybar {
background: transparent;
background-color: rgba(29, 32, 33, 0.6);;
color: @overlay0;
transition-property: background-color;
transition-duration: 0.1s;
}
#window {
border-radius: 5px;
margin: 8px;
padding-left: 8;
padding-right: 8;
background-color: transparent;
}
button {
box-shadow: inset 0 -3px transparent;
border: none;
border-radius: 5px; /* Borde redondeado */
padding: 6px 12px; /* Ajusta el padding para que se vea más ovalado */
background-color: #32302f;
color: #f9f5d7; /* Color de texto blanco */
transition: background-color 0.3s, color 0.3s;
border: 2px solid #46413e; /* Borde de color blanco semi-transparente */
}
button:hover {
background: inherit;
color: #32302f;
border-top: 2px solid #46413e;
}
#workspaces button {
border-radius: 5px; /* Borde redondeado */
padding: 0 4px;
border-radius: 20px; /* Borde redondeado */
color: #f9f5d7; /* Color de texto blanco */
border: 2px solid rgba(255, 255, 255, 0.6); /* Borde de color blanco semi-transparente */
}
#
#workspaces button.focused {
border-radius: 5px; /* Borde redondeado */
background-color: rgba(0, 0, 0, 0.3);
color: @rosewater;
border: 2px solid @rosewater; /* Borde color rosa */
}
#workspaces button.active {
border-radius: 5px; /* Borde redondeado */
background-color: rgba(0, 0, 0, 0.3);
color: @mauve;
border: 2px solid #8ec07c; /* Borde color mauve */
}
#workspaces button.urgent {
border-radius: 5px; /* Borde redondeado */
background-color: #eb4d4b;
color: #f9f5d7;
border: 2px solid #eb4d4b; /* Borde rojo */
}
/* Estilos generales para otros módulos */
#puleaudio,
#custom-gpu
#custom-cpuinfo
#clock,
#battery,
cpu,
#memory,
#disk,
temperature,
#backlight,
#wireplumber,
#tray,
#network,
#mode,
#scratchpad {
margin-top: 2px;
margin-bottom: 2px;
margin-left: 4px;
margin-right: 4px;
padding-left: 4px;
padding-right: 4px;
border-radius: 5px; /* Borde redondeado */
background-color: rgba(0, 0, 0, 0.3); /* Fondo ligeramente oscuro */
/*color: white; Texto blanco */
/* border: 2px solid #32302f; /* Borde de color blanco */ */
}
#network {
margin-right: 8px;
border:2px solid #d8a657 ;
}
#pulseaudio {
border:2px solid #ea6962 ;
border-radius: 5px; /* Borde redondeado */
}
#clock{
/* border:2px solid #7daea3; */
/* border-radius: 5px; */ /* Borde redondeado */
}
#temperature.cpu,
#temperature.gpu {
padding: 0 8px;
border: 2px solid @green;
border-radius: 5px;
color: white;
background-color: rgba(0, 0, 0, 0.3);
}
#temperature.cpu.critical,
#temperature.gpu.critical {
border-color: @red;
color: @red;
}
#custom-gpu {
margin-right: 8px;
padding: 0 8px;
border: 2px solid #458588;
border-radius: 5px;
color: #f9f5d7;
background-color: rgba(0, 0, 0, 0.3);
}
#custom-gpu.critical {
border-color: red;
color: red;
}
#custom-cpuinfo {
padding: 1 8px;
margin-right: 8px;
border: 2px solid #a9b665;
border-radius: 5px;
color: #f9f5d7;
background-color: rgba(0, 0, 0, 0.3);
}
#custom-cpuinfo.critical {
border-color: red;
color: red;
}
#mpris {
margin-right: 8px;
padding: 1 20px;
border: 2px solid #d65d0e;
border-radius: 5px;
color: #f9f5d7;
background-color: rgba(0, 0, 0, 0.3);
}
#mpris.paused {
border-color: #a89984;
color: #fbf1c7;
}
#custom-weather {
margin-right: 8px;
padding: 0 8px;
border: 2px solid #d3869b;
border-radius: 5px;
color: #f9f5d7;
background-color: rgba(0, 0, 0, 0.3);
}
#custom-uptime {
padding: 0 8px;
border: 2px solid #d3869b;
border-radius: 5px;
color: #f9f5d7;
}
#custom-flagvpn {
margin-right: 8px;
padding: 0 8px;
border: 2px solid #d3869b;
border-radius: 5px;
color: #f9f5d7;
background-color: rgba(0, 0, 0, 0.3);
}
#custom-timer {
margin-right: 8px;
padding: 0 8px;
border: 2px solid #d3869b;
border-radius: 5px;
color: #f9f5d7;
background-color: rgba(0, 0, 0, 0.3);
}
/* If workspaces is the leftmost module, omit left margin */
.modules-left>widget:first-child>#workspaces {
border-radius: 5px;
margin-left: 0;
}
/* If workspaces is the rightmost module, omit right margin */
.modules-right>widget:last-child>#workspaces {
border-radius: 5px;
margin-right: 0;
}
#custom-vpn {
margin-right: 8px;
color: @lavender;
border-radius: 15px;
padding-left: 6px;
padding-right: 6px;
}

318
waybar/style.css.nord Executable file
View File

@@ -0,0 +1,318 @@
@keyframes blink-warning {
70% {
color: @light;
}
to {
color: @light;
background-color: @warning;
}
}
@keyframes blink-critical {
70% {
color: @light;
}
to {
color: @light;
background-color: @critical;
}
}
/* -----------------------------------------------------------------------------
* Styles
* -------------------------------------------------------------------------- */
/* COLORS */
/* Nord */
@define-color bg #2E3440;
/*@define-color bg #353C4A;*/
@define-color light #D8DEE9;
/*@define-color dark @nord_dark_font;*/
@define-color warning #ebcb8b;
@define-color critical #BF616A;
@define-color mode #434C5E;
/*@define-color workspaces @bg;*/
/*@define-color workspaces @nord_dark_font;*/
/*@define-color workspacesfocused #434C5E;*/
@define-color workspacesfocused #4C566A;
@define-color tray @workspacesfocused;
@define-color sound #EBCB8B;
@define-color network #5D7096;
@define-color memory #546484;
@define-color cpu #596A8D;
@define-color temp #4D5C78;
@define-color layout #5e81ac;
@define-color battery #88c0d0;
@define-color date #434C5E;
@define-color time #434C5E;
@define-color backlight #434C5E;
@define-color nord_bg #434C5E;
@define-color nord_bg_blue #546484;
@define-color nord_light #D8DEE9;
@define-color nord_light_font #D8DEE9;
@define-color nord_dark_font #434C5E;
@define-color nord_bg_blue_obscure #4c566a;
/* Reset all styles */
* {
border: none;
border-radius: 3px;
min-height: 0;
margin: 0.2em 0.3em 0.2em 0.3em;
}
/* The whole bar */
#waybar {
background: transparent;
background-color: rgba(29, 32, 33, 0.6);
color: @light;
font-family: "Cantarell", "Font Awesome 5 Pro";
font-size: 12px;
transition-property: background-color;
font-weight: bold;
}
/* Each module */
#battery,
#clock,
#cpu,
#custom-layout,
#memory,
#mode,
#network,
#pulseaudio,
#temperature,
#custom-alsa,
#custom-pacman,
#custom-weather,
#custom-gpu,
#custom-timer
#tray,
#backlight,
#language,
#custom-cpugovernor {
padding-left: 0.6em;
padding-right: 0.6em;
}
/* Each module that should blink */
#mode,
#memory,
#temperature,
#battery {
animation-timing-function: linear;
animation-iteration-count: infinite;
animation-direction: alternate;
}
/* Each critical module */
#memory.critical,
#cpu.critical,
#temperature.critical,
#battery.critical {
color: @critical;
}
/* Each critical that should blink */
#mode,
#memory.critical,
#temperature.critical,
#battery.critical.discharging {
animation-name: blink-critical;
animation-duration: 2s;
}
/* Each warning */
#network.disconnected,
#memory.warning,
#cpu.warning,
#temperature.warning,
#battery.warning {
background: @warning;
color: @nord_dark_font;
}
/* Each warning that should blink */
#battery.warning.discharging {
animation-name: blink-warning;
animation-duration: 3s;
}
/* And now modules themselves in their respective order */
#mode { /* Shown current Sway mode (resize etc.) */
color: @light;
background: @mode;
}
/* Workspaces stuff */
/*new*/
#workspaces button {
padding : 0 4px;
border-radius: 0px; /* Borde redondeado */
color: white; /* Color de texto blanco */
border: 2px solid rgba(255, 255, 255, 0.6); /* Borde de color blanco semi-transparente */
}
#workspaces button.focused {
color: white;
border: 2px solid red; /* Borde color rosa */
}
#workspaces button.active {
background-color: @nord_bg_blue;
color: white;
border: 2px solid @light; /* Borde color mauve */
}
#workspaces button.urgent {
background-color: #eb4d4b;
color: white;
border: 2px solid #eb4d4b; /* Borde rojo */
}
#window {
margin-right: 40px;
margin-left: 40px;
font-weight: normal;
}
#bluetooth {
background: @nord_bg_blue;
font-size: 1.2em;
font-weight: bold;
padding: 0 0.6em;
}
#custom-flagvpn {
background: @nord_bg_blue;
font-size: 1.2em;
font-weight: bold;
padding: 0 0.6em;
}
#custom-gpu {
background: @nord_bg_blue_obscure;
font-weight: bold;
padding: 0 0.6em;
}
#custom-timer {
background: @nord_bg_blue_obscure;
font-weight: bold;
padding: 0 0.6em;
}
#custom-weather {
background: @mode;
font-weight: bold;
padding: 0 0.6em;
}
#custom-pacman {
background: @nord_light;
color: @nord_dark_font;
font-weight: bold;
padding: 0 0.6em;
}
#custom-scratchpad-indicator {
background: @nord_light;
color: @nord_dark_font;
font-weight: bold;
padding: 0 0.6em;
}
#idle_inhibitor {
background: @mode;
/*font-size: 1.6em;*/
font-weight: bold;
padding: 0 0.6em;
}
#custom-alsa {
background: @sound;
}
#network {
background: @nord_bg_blue;
}
#memory {
background: @memory;
}
#cpu {
background: @nord_bg;
color: #D8DEE9;
}
#cpu.critical {
color: @nord_dark_font;
}
#language {
background: @nord_bg_blue;
color: #D8DEE9;
padding: 0 0.4em;
}
#custom-cpugovernor {
background-color: @nord_light;
color: @nord_dark_font;
}
#custom-cpugovernor.perf {
}
#temperature {
background-color: @nord_bg;
color: #D8DEE9;
}
#temperature.critical {
background: @critical;
}
#custom-layout {
background: @layout;
}
#battery {
background: @battery;
}
#backlight {
background: @backlight;
}
#clock {
background: @nord_bg_blue;
color: #D8DEE9;
}
#clock.date {
background: @date;
}
#clock.time {
background: @mode;
}
#pulseaudio { /* Unsused but kept for those who needs it */
background: @nord_bg_blue;
color: #D8DEE9;
}
#pulseaudio.muted {
background: #BF616A;
color: #BF616A;
/* No styles */
}
#pulseaudio.source-muted {
background: #D08770;
color: #D8DEE9;
/* No styles */
}
#tray {
background: #434C5E;
}

3
window_options Executable file
View File

@@ -0,0 +1,3 @@
#!/bin/bash