initial
This commit is contained in:
commit
32c61ec63a
4 changed files with 152 additions and 0 deletions
51
README.md
Normal file
51
README.md
Normal file
|
|
@ -0,0 +1,51 @@
|
||||||
|
## Script para mudar o wallpaper no [Hyprland](https://github.com/hyprwm/Hyprland) com o comando `wallpaper`
|
||||||
|
|
||||||
|
|
||||||
|
### Pré-requisitos
|
||||||
|
|
||||||
|
* [FuzzyFinder](https://github.com/junegunn/fzf)
|
||||||
|
* [Hyprland](https://github.com/hyprwm/Hyprland)
|
||||||
|
* [Hyprpaper](https://github.com/hyprwm/hyprpaper)
|
||||||
|
* [Mpvpaper](https://github.com/GhostNaN/mpvpaper)
|
||||||
|
|
||||||
|
|
||||||
|
### Instalação
|
||||||
|
|
||||||
|
Para instalar o script, execute o seguinte comando:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sh <(curl -s https://git.lucasf.xyz/public/wallpaper/raw/branch/master/install.sh)
|
||||||
|
```
|
||||||
|
|
||||||
|
A instalação irá clonar o repositório na pasta `~/.local/share/wallpaper` e criar links simbolicos na pasta `~/.local/bin`.
|
||||||
|
|
||||||
|
|
||||||
|
### Uso
|
||||||
|
|
||||||
|
Adicione a seguinte linha no arquivo de configuração do Hyprland `~/.config/hypr/hypr.conf`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
exec-once = bash ~/.local/bin/wallp
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
### Escolhendo um wallpaper
|
||||||
|
|
||||||
|
Para escolher um wallpaper, execute o comando `wallpaper` e escolha o wallpaper desejado.
|
||||||
|
Serão exibidos os wallpapers disponíveis na pasta `~/.local/share/wallpaper`.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
wallpaper
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
### Desinstalação
|
||||||
|
|
||||||
|
Para desinstalar o script, execute os seguintes comandos:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
rm -rf ~/.local/share/wallpaper ~/.local/bin/wallp ~/.local/bin/wallpaper
|
||||||
|
if [ -f ~/.config/hypr/hyprland.conf ]; then
|
||||||
|
sed -i '/\/bin\/wallp/d' ~/.config/hypr/hyprland.conf
|
||||||
|
fi
|
||||||
|
```
|
||||||
16
install.sh
Normal file
16
install.sh
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
main() {
|
||||||
|
local INSTALLDIR="$HOME/.local/share/wallpaper"
|
||||||
|
local EXECDIR="$HOME/.local/bin"
|
||||||
|
|
||||||
|
git clone https://git.lucasf.xyz/public/wallpaper "$INSTALLDIR" > /dev/null 2>&1
|
||||||
|
|
||||||
|
ln -s "$INSTALLDIR/wallpaper.sh" "$EXECDIR/wallpaper"
|
||||||
|
ln -s "$INSTALLDIR/wallp.sh" "$EXECDIR/wallp"
|
||||||
|
}
|
||||||
|
|
||||||
|
main
|
||||||
|
if [[ $? -eq 0 ]];then echo "Wallpaper installed!!"; fi
|
||||||
|
|
||||||
|
# vim: ft=bash:ts=4:sts=4:sw=4
|
||||||
43
wallp.sh
Executable file
43
wallp.sh
Executable file
|
|
@ -0,0 +1,43 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
WALL_TEMP_CONF_PATH="$HOME/.config/hypr/hyprp.conf"
|
||||||
|
MONITOR=$(hyprctl monitors | awk '/^Monitor/ {print $2}')
|
||||||
|
|
||||||
|
if ! command -v fzf &> /dev/null; then
|
||||||
|
echo "fzf not found, please install it to proceed"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! command -v hyprpaper &> /dev/null; then
|
||||||
|
echo "hyprpaper not found, please install it to proceed"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! command -v mpvpaper &> /dev/null; then
|
||||||
|
echo "mpvpaper not found, please install it to proceed"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if pgrep -f hyprpaper > /dev/null; then
|
||||||
|
killall hyprpaper
|
||||||
|
fi
|
||||||
|
|
||||||
|
if pgrep -f mpvpaper > /dev/null; then
|
||||||
|
killall mpvpaper
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -f "$WALL_TEMP_CONF_PATH" ]]; then
|
||||||
|
source "$WALL_TEMP_CONF_PATH"
|
||||||
|
if [[ -n "$preload" ]]; then
|
||||||
|
if [[ $preload == *mp4 ]]; then
|
||||||
|
mpvpaper -o "--loop" $MONITOR $preload &> /dev/null &
|
||||||
|
else
|
||||||
|
hyprpaper --config $WALL_TEMP_CONF_PATH &> /dev/null &
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
disown
|
||||||
|
else
|
||||||
|
hyprpaper
|
||||||
|
fi
|
||||||
|
|
||||||
|
# vim: ft=bash:ts=4:sts=4:sw=4
|
||||||
42
wallpaper.sh
Executable file
42
wallpaper.sh
Executable file
|
|
@ -0,0 +1,42 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
WALL_PATH="$HOME/.local/share/backgrounds/"
|
||||||
|
WALL_TEMP_CONF="$HOME/.config/hypr/hyprp.conf"
|
||||||
|
MONITOR=$(hyprctl monitors | awk '/^Monitor/ {print $2}')
|
||||||
|
|
||||||
|
function wallpaper(){
|
||||||
|
if ! command -v fzf &> /dev/null; then
|
||||||
|
echo "fzf not found, please install it to proceed"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
if ! command -v hyprpaper &> /dev/null; then
|
||||||
|
echo "hyprpaper not found, please install it to proceed"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
if ! command -v mpvpaper &> /dev/null; then
|
||||||
|
echo "mpvpaper not found, please install it to proceed"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
SELECTED=$(find "$WALL_PATH" -maxdepth 1 -type f -printf '%f\n' | fzf)
|
||||||
|
if [[ ! -n "$SELECTED" ]]; then
|
||||||
|
echo "No wallpaper selected"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo -e > $WALL_TEMP_CONF "preload=$WALL_PATH$SELECTED\nwallpaper=$MONITOR,$WALL_PATH$SELECTED\nsplash=false\nipc=off"
|
||||||
|
if pgrep -f hyprpaper > /dev/null; then
|
||||||
|
killall hyprpaper
|
||||||
|
fi
|
||||||
|
if pgrep -f mpvpaper > /dev/null; then
|
||||||
|
killall mpvpaper
|
||||||
|
fi
|
||||||
|
if [[ $SELECTED == *mp4 ]]; then
|
||||||
|
mpvpaper -o "--loop" $MONITOR "$WALL_PATH$SELECTED" &> /dev/null &
|
||||||
|
else
|
||||||
|
hyprpaper --config "$WALL_TEMP_CONF" &> /dev/null &
|
||||||
|
fi
|
||||||
|
disown
|
||||||
|
}
|
||||||
|
|
||||||
|
wallpaper
|
||||||
|
|
||||||
|
# vim: ft=bash:ts=4:sts=4:sw=4
|
||||||
Loading…
Add table
Add a link
Reference in a new issue