Improve waybar and custom scripts
This commit is contained in:
@@ -17,6 +17,7 @@
|
|||||||
df = "df -h";
|
df = "df -h";
|
||||||
du = "du -h";
|
du = "du -h";
|
||||||
};
|
};
|
||||||
|
# Defined in /etc/set-environnement. Require session restart
|
||||||
variables = {
|
variables = {
|
||||||
XDG_CONFIG_HOME = "$HOME/.config";
|
XDG_CONFIG_HOME = "$HOME/.config";
|
||||||
XDG_CACHE_HOME = "$HOME/.cache";
|
XDG_CACHE_HOME = "$HOME/.cache";
|
||||||
@@ -39,16 +40,6 @@
|
|||||||
setOptions = [
|
setOptions = [
|
||||||
"SHARE_HISTORY"
|
"SHARE_HISTORY"
|
||||||
];
|
];
|
||||||
# shellInit = ''
|
|
||||||
# export XDG_CONFIG_HOME=$HOME/.config
|
|
||||||
# export XDG_CACHE_HOME=$HOME/.cache
|
|
||||||
# export XDG_DATA_HOME=$HOME/.local/share
|
|
||||||
# export ZDOTDIR=$HOME/.config/zsh
|
|
||||||
# export TERMINAL=kitty
|
|
||||||
# export EDITOR=nvim
|
|
||||||
# export BROWSER=firefox
|
|
||||||
# export SAVEHIST=200000
|
|
||||||
# '';
|
|
||||||
promptInit = ''
|
promptInit = ''
|
||||||
stty stop undef # Disable ctrl+s to freeze terminal
|
stty stop undef # Disable ctrl+s to freeze terminal
|
||||||
|
|
||||||
|
|||||||
@@ -14,7 +14,6 @@ ecosystem {
|
|||||||
###################
|
###################
|
||||||
|
|
||||||
$terminal = kitty
|
$terminal = kitty
|
||||||
source = /etc/xdg/hypr/rofi.conf
|
|
||||||
|
|
||||||
#################
|
#################
|
||||||
### AUTOSTART ###
|
### AUTOSTART ###
|
||||||
@@ -211,9 +210,10 @@ device {
|
|||||||
|
|
||||||
$mainMod = SUPER # Sets "Windows" key as main modifier
|
$mainMod = SUPER # Sets "Windows" key as main modifier
|
||||||
# Apps shortcut
|
# Apps shortcut
|
||||||
bind = $mainMod, D, exec, $rofi
|
bind = $mainMod, D, exec, rofi -show drun -show-icons -config /etc/xdg/rofi/config.rasi
|
||||||
bind = $mainMod, L, exec, /etc/xdg/scripts/wayland-disconnect.sh
|
bind = $mainMod, L, exec, /etc/xdg/scripts/wayland-disconnect.sh
|
||||||
bind = $mainMod, M, exec, /etc/xdg/scripts/wayland-mpv.sh
|
bind = $mainMod, M, exec, /etc/xdg/scripts/wayland-mpv.sh
|
||||||
|
bind = $mainMod, K, exec, /etc/xdg/scripts/rofi-ssh.sh
|
||||||
bind = $mainMod SHIFT, P, exec, pavucontrol
|
bind = $mainMod SHIFT, P, exec, pavucontrol
|
||||||
bind = $mainMod SHIFT, T, exec, teams-for-linux
|
bind = $mainMod SHIFT, T, exec, teams-for-linux
|
||||||
bind = $mainMod SHIFT, D, exec, discord
|
bind = $mainMod SHIFT, D, exec, discord
|
||||||
|
|||||||
16
modules/optionnals/desktop/config/etc/xdg/rofi/mpv.rasi
Normal file
16
modules/optionnals/desktop/config/etc/xdg/rofi/mpv.rasi
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
@import "launcher.rasi"
|
||||||
|
window {
|
||||||
|
width: 50%;
|
||||||
|
height: 50%;
|
||||||
|
margin: 0px;
|
||||||
|
location: center;
|
||||||
|
anchor: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
mainbox {
|
||||||
|
children: [inputbar,listview];
|
||||||
|
}
|
||||||
|
|
||||||
|
listview {
|
||||||
|
columns: 1;
|
||||||
|
}
|
||||||
12
modules/optionnals/desktop/config/etc/xdg/rofi/ssh.rasi
Normal file
12
modules/optionnals/desktop/config/etc/xdg/rofi/ssh.rasi
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
@import "launcher.rasi"
|
||||||
|
window {
|
||||||
|
width: 50%;
|
||||||
|
height: 50%;
|
||||||
|
margin: 0px;
|
||||||
|
location: center;
|
||||||
|
anchor: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
mainbox {
|
||||||
|
children: [inputbar,listview];
|
||||||
|
}
|
||||||
7
modules/optionnals/desktop/config/etc/xdg/scripts/rofi-ssh.sh
Executable file
7
modules/optionnals/desktop/config/etc/xdg/scripts/rofi-ssh.sh
Executable file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
selected=$(cat ~/.config/zsh/.zsh_history | sed 's/^[ ]*[0-9]*[ ]*//' | grep '^ssh ' | rofi -dmenu -i -theme /etc/xdg/rofi/ssh.rasi -p SSH)
|
||||||
|
|
||||||
|
if [[ -n "$selected" ]]; then
|
||||||
|
kitty -e $selected
|
||||||
|
fi
|
||||||
26
modules/optionnals/desktop/config/etc/xdg/scripts/waybar-mailbox.sh
Executable file
26
modules/optionnals/desktop/config/etc/xdg/scripts/waybar-mailbox.sh
Executable file
@@ -0,0 +1,26 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
_USER=beastie
|
||||||
|
_PASSWD='}q6658JD~{}{oiRWsb~Q{P@SV=Qsy,ae'
|
||||||
|
_SERVER=unixyourbrain.org
|
||||||
|
_FOLDER=Admin
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
cd -- "$(dirname -- "$0")"
|
||||||
|
_DIRNAME="$(pwd)"
|
||||||
|
|
||||||
|
### Sourcer à partir des secrets
|
||||||
|
#source ~/.config/polybar/imap_creds
|
||||||
|
|
||||||
|
|
||||||
|
_COUNT=$(curl -u "$_USER:$_PASSWD" "imaps://$_SERVER" -X "STATUS $_FOLDER (UNSEEN)" 2>/dev/null | \
|
||||||
|
sed -e 's/)\r//' -e 's/.*UNSEEN //')
|
||||||
|
|
||||||
|
_UNSEEN=$(curl -u "$_USER:$_PASSWD" "imaps://$_SERVER/$_FOLDER" -X "SEARCH UNSEEN" 2>/dev/null | \
|
||||||
|
sed -e "s|\\r||" -e "s|* SEARCH ||" -e "s| |,|g")
|
||||||
|
|
||||||
|
_MAILS=$(curl -v -u "$_USER:$_PASSWD" "imaps://$_SERVER/$_FOLDER" -X "FETCH $_UNSEEN BODY.PEEK[HEADER.FIELDS (From Subject)]" 2>&1 | \
|
||||||
|
sed -e "s|\\r||" | awk '/< Subject|< From/ {sub(/^< /, ""); printf "%s\\n", $0}')
|
||||||
|
|
||||||
|
printf '{"text": "%s ", "tooltip": "%s"}' "$_COUNT" "$_MAILS"
|
||||||
31
modules/optionnals/desktop/config/etc/xdg/scripts/wayland-disconnect.sh
Executable file
31
modules/optionnals/desktop/config/etc/xdg/scripts/wayland-disconnect.sh
Executable file
@@ -0,0 +1,31 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
selected=$(printf "Lock\0icon\x1fsystem-lock-screen
|
||||||
|
Update\0icon\x1fsystem-software-update
|
||||||
|
Shutdown\0icon\x1fsystem-shutdown
|
||||||
|
Reboot\0icon\x1fsystem-reboot
|
||||||
|
Exit hyprland\0icon\x1fsystem-log-out
|
||||||
|
Reload hyprland\0icon\x1fsystem-log-out" | rofi -dmenu -show-icons -i -theme /etc/xdg/rofi/disconnect.rasi -p System)
|
||||||
|
|
||||||
|
echo "$selected"
|
||||||
|
|
||||||
|
case $selected in
|
||||||
|
"Lock")
|
||||||
|
/nix/store/4pwvyyjrc7frwkycbszakd7z6nf44qgv-hyprlock-0.9.2/bin/hyprlock
|
||||||
|
;;
|
||||||
|
"Update")
|
||||||
|
kitty /usr/local/share/dotfiles/scripts/update.sh
|
||||||
|
;;
|
||||||
|
"Shutdown")
|
||||||
|
systemctl poweroff
|
||||||
|
;;
|
||||||
|
"Reboot")
|
||||||
|
reboot
|
||||||
|
;;
|
||||||
|
"Exit hyprland")
|
||||||
|
hyprctl dispatch exit
|
||||||
|
;;
|
||||||
|
"Reload hyprland")
|
||||||
|
hyprctl reload
|
||||||
|
;;
|
||||||
|
esac
|
||||||
31
modules/optionnals/desktop/config/etc/xdg/scripts/wayland-mpv.sh
Executable file
31
modules/optionnals/desktop/config/etc/xdg/scripts/wayland-mpv.sh
Executable file
@@ -0,0 +1,31 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
cd -- "$(dirname -- "$0")" || exit
|
||||||
|
|
||||||
|
## if not $1
|
||||||
|
if [[ -z $1 ]]
|
||||||
|
then
|
||||||
|
_LINES=$(curl "http://10.0.0.1:2013" 2>/dev/null | sed -e "s|.*<a href=\"\([^\"]*\).*|$1\1|" -e "s/.*<.*\|.*C=D.*\|.*\/\/$\|.*.nfo//" -e "/^$/d")
|
||||||
|
else
|
||||||
|
_LINES="$(curl "http://10.0.0.1:2013/$1" 2>/dev/null | sed -e "s|.*<a href=\"\([^\"]*\).*|$1\1|" -e "s/.*<.*\|.*C=D.*\|.*\/\/$\|.*.nfo//" -e "/^$/d")"
|
||||||
|
fi
|
||||||
|
|
||||||
|
_RESULT=$(rofi -dmenu -i -theme /etc/xdg/rofi/mpv.rasi -p Mpv <<< "$_LINES")
|
||||||
|
|
||||||
|
# If no output
|
||||||
|
echo "$_RESULT"
|
||||||
|
if [[ -z $_RESULT ]]
|
||||||
|
then
|
||||||
|
echo "no output, exiting"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
#if line end vith /
|
||||||
|
if [[ "$_RESULT" =~ .*/$ ]]
|
||||||
|
then
|
||||||
|
echo "output is a directory"
|
||||||
|
./wayland-mpv.sh "$_RESULT"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
|
mpv "http://10.0.0.1:2013/$_RESULT"
|
||||||
@@ -7,12 +7,13 @@
|
|||||||
"memory",
|
"memory",
|
||||||
"disk",
|
"disk",
|
||||||
"network",
|
"network",
|
||||||
"pulseaudio",
|
"pulseaudio"
|
||||||
],
|
],
|
||||||
"modules-center": [
|
"modules-center": [
|
||||||
"hyprland/workspaces"
|
"hyprland/workspaces"
|
||||||
],
|
],
|
||||||
"modules-right": [
|
"modules-right": [
|
||||||
|
"custom/alert",
|
||||||
"custom/maj",
|
"custom/maj",
|
||||||
"clock",
|
"clock",
|
||||||
"tray"
|
"tray"
|
||||||
@@ -78,11 +79,20 @@
|
|||||||
},
|
},
|
||||||
"format": "{name}",
|
"format": "{name}",
|
||||||
"format-icons": {
|
"format-icons": {
|
||||||
"default": "",
|
"default": ""
|
||||||
},
|
}
|
||||||
|
},
|
||||||
|
"custom/alert": {
|
||||||
|
"exec": "/etc/xdg/scripts/waybar-mailbox.sh",
|
||||||
|
"interval": 300,
|
||||||
|
"return-type": "json",
|
||||||
|
"format": "{icon}{text}",
|
||||||
|
"format-icons": {
|
||||||
|
"default": " "
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"custom/maj": {
|
"custom/maj": {
|
||||||
"exec": "/etc/xdg/scripts/update.sh",
|
"exec": "/etc/xdg/scripts/waybar-update.sh",
|
||||||
"interval": 300,
|
"interval": 300,
|
||||||
"return-type": "json",
|
"return-type": "json",
|
||||||
"format": "{icon}{text}",
|
"format": "{icon}{text}",
|
||||||
|
|||||||
@@ -7,12 +7,13 @@
|
|||||||
"memory",
|
"memory",
|
||||||
"disk",
|
"disk",
|
||||||
"network",
|
"network",
|
||||||
"pulseaudio",
|
"pulseaudio"
|
||||||
],
|
],
|
||||||
"modules-center": [
|
"modules-center": [
|
||||||
"hyprland/workspaces"
|
"hyprland/workspaces"
|
||||||
],
|
],
|
||||||
"modules-right": [
|
"modules-right": [
|
||||||
|
"custom/alert",
|
||||||
"custom/maj",
|
"custom/maj",
|
||||||
"clock",
|
"clock",
|
||||||
"tray"
|
"tray"
|
||||||
@@ -79,11 +80,20 @@
|
|||||||
},
|
},
|
||||||
"format": "{name}",
|
"format": "{name}",
|
||||||
"format-icons": {
|
"format-icons": {
|
||||||
"default": "",
|
"default": ""
|
||||||
},
|
}
|
||||||
|
},
|
||||||
|
"custom/alert": {
|
||||||
|
"exec": "/etc/xdg/scripts/waybar-mailbox.sh",
|
||||||
|
"interval": 300,
|
||||||
|
"return-type": "json",
|
||||||
|
"format": "{icon}{text}",
|
||||||
|
"format-icons": {
|
||||||
|
"default": " "
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"custom/maj": {
|
"custom/maj": {
|
||||||
"exec": "/etc/xdg/scripts/update.sh",
|
"exec": "/etc/xdg/scripts/waybar-update.sh",
|
||||||
"interval": 300,
|
"interval": 300,
|
||||||
"return-type": "json",
|
"return-type": "json",
|
||||||
"format": "{icon}{text}",
|
"format": "{icon}{text}",
|
||||||
|
|||||||
@@ -24,6 +24,7 @@
|
|||||||
#disk,
|
#disk,
|
||||||
#network,
|
#network,
|
||||||
#workspaces,
|
#workspaces,
|
||||||
|
#custom-alert,
|
||||||
#custom-maj,
|
#custom-maj,
|
||||||
#pulseaudio,
|
#pulseaudio,
|
||||||
#memory,
|
#memory,
|
||||||
@@ -87,24 +88,40 @@
|
|||||||
background: @red;
|
background: @red;
|
||||||
}
|
}
|
||||||
|
|
||||||
#network {
|
#custom-logo {
|
||||||
|
color: @rosewater;
|
||||||
|
}
|
||||||
|
|
||||||
|
#cpu {
|
||||||
|
color: @flamingo;
|
||||||
|
}
|
||||||
|
|
||||||
|
#memory {
|
||||||
color: @pink;
|
color: @pink;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#disk {
|
||||||
|
color: @maroon;
|
||||||
|
}
|
||||||
|
|
||||||
|
#network {
|
||||||
|
color: @peach;
|
||||||
|
}
|
||||||
|
|
||||||
#pulseaudio {
|
#pulseaudio {
|
||||||
color: @yellow;
|
color: @yellow;
|
||||||
}
|
}
|
||||||
|
|
||||||
#cpu {
|
#custom-alert {
|
||||||
color: @blue;
|
color: @sky;
|
||||||
}
|
}
|
||||||
|
|
||||||
#memory {
|
#custom-maj {
|
||||||
color: @green;
|
color: @sapphire;
|
||||||
}
|
}
|
||||||
|
|
||||||
#clock {
|
#clock {
|
||||||
color: @red;
|
color: @blue;
|
||||||
}
|
}
|
||||||
|
|
||||||
#tray {
|
#tray {
|
||||||
|
|||||||
@@ -6,78 +6,6 @@
|
|||||||
environment = {
|
environment = {
|
||||||
etc = {
|
etc = {
|
||||||
"xdg/rofi".source = ./config/etc/xdg/rofi;
|
"xdg/rofi".source = ./config/etc/xdg/rofi;
|
||||||
"xdg/scripts/wayland-disconnect.sh" = {
|
|
||||||
text = ''
|
|
||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
selected=$(printf "Lock\0icon\x1fsystem-lock-screen
|
|
||||||
Update\0icon\x1fsystem-software-update
|
|
||||||
Shutdown\0icon\x1fsystem-shutdown
|
|
||||||
Reboot\0icon\x1fsystem-reboot
|
|
||||||
Exit hyprland\0icon\x1fsystem-log-out
|
|
||||||
Reload hyprland\0icon\x1fsystem-log-out" | ${pkgs.rofi}/bin/rofi -dmenu -show-icons -i -theme /etc/xdg/rofi/disconnect.rasi -p System)
|
|
||||||
|
|
||||||
echo "$selected"
|
|
||||||
|
|
||||||
case $selected in
|
|
||||||
"Lock")
|
|
||||||
${pkgs.hyprlock}/bin/hyprlock
|
|
||||||
;;
|
|
||||||
"Update")
|
|
||||||
kitty /usr/local/share/dotfiles/scripts/update.sh
|
|
||||||
;;
|
|
||||||
"Shutdown")
|
|
||||||
systemctl poweroff
|
|
||||||
;;
|
|
||||||
"Reboot")
|
|
||||||
reboot
|
|
||||||
;;
|
|
||||||
"Exit hyprland")
|
|
||||||
hyprctl dispatch exit
|
|
||||||
;;
|
|
||||||
"Reload hyprland")
|
|
||||||
hyprctl reload
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
'';
|
|
||||||
mode = "0755";
|
|
||||||
};
|
|
||||||
"xdg/scripts/wayland-mpv.sh" = {
|
|
||||||
text = ''
|
|
||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
cd -- "$(dirname -- "$0")" || exit
|
|
||||||
|
|
||||||
## if not $1
|
|
||||||
if [[ -z $1 ]]
|
|
||||||
then
|
|
||||||
_LINES=$(curl "http://10.0.0.1:2013" 2>/dev/null | sed -e "s|.*<a href=\"\([^\"]*\).*|$1\1|" -e "s/.*<.*\|.*C=D.*\|.*\/\/$\|.*.nfo//" -e "/^$/d")
|
|
||||||
else
|
|
||||||
_LINES="$(curl "http://10.0.0.1:2013/$1" 2>/dev/null | sed -e "s|.*<a href=\"\([^\"]*\).*|$1\1|" -e "s/.*<.*\|.*C=D.*\|.*\/\/$\|.*.nfo//" -e "/^$/d")"
|
|
||||||
fi
|
|
||||||
|
|
||||||
_RESULT=$(${pkgs.rofi}/bin/rofi -dmenu -config /etc/xdg/rofi/config.rasi -i <<< "$_LINES")
|
|
||||||
|
|
||||||
# If no output
|
|
||||||
echo "$_RESULT"
|
|
||||||
if [[ -z $_RESULT ]]
|
|
||||||
then
|
|
||||||
echo "no output, exiting"
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
#if line end vith /
|
|
||||||
if [[ "$_RESULT" =~ .*/$ ]]
|
|
||||||
then
|
|
||||||
echo "output is a directory"
|
|
||||||
./wayland-mpv.sh "$_RESULT"
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
mpv "http://10.0.0.1:2013/$_RESULT"
|
|
||||||
'';
|
|
||||||
mode = "0755";
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -28,16 +28,16 @@
|
|||||||
"xdg/hypr/hyprland-host.conf".source = ./config/etc/xdg/hypr/hyprland-${hostname}.conf;
|
"xdg/hypr/hyprland-host.conf".source = ./config/etc/xdg/hypr/hyprland-${hostname}.conf;
|
||||||
"xdg/hypr/hyprlock.conf".source = ./config/etc/xdg/hypr/hyprlock.conf;
|
"xdg/hypr/hyprlock.conf".source = ./config/etc/xdg/hypr/hyprlock.conf;
|
||||||
"xdg/hypr/hyprpaper.conf".source = ./config/etc/xdg/hypr/hyprpaper.conf;
|
"xdg/hypr/hyprpaper.conf".source = ./config/etc/xdg/hypr/hyprpaper.conf;
|
||||||
"xdg/hypr/rofi.conf" = {
|
|
||||||
text = ''
|
|
||||||
$rofi = ${pkgs.rofi}/bin/rofi -show drun -show-icons -config /etc/xdg/rofi/config.rasi
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
"xdg/waybar/colors.css".source = ./config/etc/xdg/waybar/colors.css;
|
"xdg/waybar/colors.css".source = ./config/etc/xdg/waybar/colors.css;
|
||||||
"xdg/waybar/config.jsonc".source = ./config/etc/xdg/waybar/config-${hostname}.jsonc;
|
"xdg/waybar/config.jsonc".source = ./config/etc/xdg/waybar/config-${hostname}.jsonc;
|
||||||
"xdg/waybar/style.css".source = ./config/etc/xdg/waybar/style.css;
|
"xdg/waybar/style.css".source = ./config/etc/xdg/waybar/style.css;
|
||||||
"xdg/waybar/custom.css".source = ./config/etc/xdg/waybar/custom-${hostname}.css;
|
"xdg/waybar/custom.css".source = ./config/etc/xdg/waybar/custom-${hostname}.css;
|
||||||
"xdg/scripts/update.sh".source = ./config/etc/xdg/scripts/update.sh;
|
|
||||||
|
"xdg/scripts/rofi-ssh.sh".source = ./config/etc/xdg/scripts/rofi-ssh.sh;
|
||||||
|
"xdg/scripts/waybar-mailbox.sh".source = ./config/etc/xdg/scripts/waybar-mailbox.sh;
|
||||||
|
"xdg/scripts/waybar-update.sh".source = ./config/etc/xdg/scripts/waybar-update.sh;
|
||||||
|
"xdg/scripts/wayland-disconnect.sh".source = ./config/etc/xdg/scripts/wayland-disconnect.sh;
|
||||||
|
"xdg/scripts/wayland-mpv.sh".source = ./config/etc/xdg/scripts/wayland-mpv.sh;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
sops = {
|
sops = {
|
||||||
|
|||||||
Reference in New Issue
Block a user