Warning
Some code may be written in a hurry, so it has not been tested enough and may lead to unexpected behavior. DO NOT USE this repository (especially scripts) if you are not sure what you are doing.
| Type | Name | Links |
|---|---|---|
| OS | Arch Linux |
website |
| Display manager (TUI) | ly |
GitHub |
| Lock screen | hyprlock |
GitHub, config |
| Composer (Wayland) | niri |
GitHub, config |
| Status bar | Waybar |
GitHub, config |
| Terminal emulator | Alacritty |
GitHub, config |
| Command shell | fish |
GitHub, config |
| Editor | Neovim |
GitHub, config |
| App launcher | Rofi |
GitHub, config |
| Notifications | dunst |
GitHub, config |
| Idle manager | swayidle |
GitHub, script |
| Document viewer | zathura |
GitHub, config |
| Image viewer | imv |
GitHub |
| Video player | mpv |
GitHub |
| System monitor | Btop |
GitHub, config |
| System info tool | Fastfetch |
GitHub, config |
There is also a configuration for the kitty
(GitHub,
config)
- Create new directory for wallpapers, e. g.,
$HOME/wallpapersand put wallpapers in it. - Make backup of the wallpapers, because you may lose them as a result of the script :)
- Edit
.scripts/wallpapers.pyfrom this repo: specify full path to the created wallpapers directory (you can use theHOMEenv variable, see the code) in themain()function (directly in the script) - Create Python virtual environment and install
Pillow, e. g.:python -m venv env . ./env/bin/activate pip install Pillow - Run
wallpapers.pyscript. It will rename wallpapers with ordered numbers, then it will create blurred dimmed copies of the wallpapers for the lock screen. Now, after each time you add a new wallpaper, run this script.
Tip
You can use uv instead of Python venv. Simply run the script with
uv run --with pillow wallpapers.py
-
This script uses
swaybgby default. If you are using something else, e. g., replace the following line in the script, where$PATH_TO_RANDOM_WALLPAPERis the image:swaybg -m fill -i $PATH_TO_RANDOM_WALLPAPER -
Make
.scripts/set_random_wallpaper.shexecutable, e. g.:chmod u+x .scripts/set_random_wallpaper.sh
-
Add this script to the autostart, e. g. (for
niri):spawn-at-startup "~/.scripts/set_random_wallpaper.sh"
Note
This script creates lock_screen/current in the wallpapers directory, so
this is the blurred dimmed version of the current desktop wallpaper and you
can use it, for example, in hyprlock. Just specify this file as the lock
screen wallpaper:
background {
color = rgb(0, 0, 0)
path = $HOME/wallpapers/lock_screen/current
}In conclusion, to add new wallpapers, you just need to put them in the
wallpapers directory and run the wallpapers.py script (don't forget to
activate the virtual environment if you use it).
Warning
This script in some cases leads to unexpected behavior. For example, if you
removed some wallpapers and ran wallpapers.py, their lock screen copies
will not be deleted.
This happens because the script, during normal operation, simply overwrites the lock screen wallpaper, but does not delete it.
Just delete all lock screen wallpapers, and the script will create them from scratch.
- YaLTeR/niri#325 — examples of
nirisetups - https://github.com/shelepuginivan/dotfiles — good dotfiles