Sticking with Hyprland adventure
A little less cycling this week so I can rest the muscles in my legs (which have noticably grown). I will focus more on weights, walking and most importantly streatching, i.e. yoga.
I continue to use Garuda Linux Hyprland variant as my daily operating system. Hyprland has always felt a very natural to use, especially coming from i3 with Regolith Desktop.
Garuda Linuxλ︎
I am becoming more comfortable and trusting of Garuda Linux, expecially as it is running on the computer hardware I use the most.
OS Snapshotsλ︎
By default Garuda Linux formats the disc partition for the operating system using Btrfs, a modern copy on write (COW) file system for Linux providing advanced fault tolerance, file system repair and administration.
Using BtrFS allows Garuda Linux to take regular snapshots of the OS before important changes are made, e.g. when adding, removing or updating Arch Linux packages.
Snapshots are managed by the Garuda Linux BTFS Assistant, which shows the history of snapshots taken.
This tool is also useful when you see a notification about older snapshots.
Garuda Linux also provides a boot option to restore operating system snapshots, means that even when the I cant login to Hyprland or Arch packages break I can restore to a previously working snapshot right from the boot menu. It is important to remember to delete older snapshots when not required, especially when running low on file space.
There is still a lot to learn and as much to try out, although there feels like very few obstacles remaining (famous last words).
There are minor aspects such as taking a screen grab which feel a bit basic (compared to flameshot on Debian Linux).
Video playerλ︎
VLC media player is excellent for playing many different video and audio formats (codecs and containers).
I have use VLC on Debian Linux and Android for many years and haven't found any formats it could not playback well.
On Garuda (Arch) Linux I have had several playback issues. The VLC Arch package is a 'split' package and only include a sub-set of codecs
The VLC-git AUR package is a monolithic version of the VLC package from the latest commit, including all codecs and plugins. Unfortunately this version of VLC seems less reliable, especially playing files from a Network Attached Storage (NAS) device. VLC-git does not show on-screen display in Garuda Linux Hyprland (not sure if VLC does either).
Arch Linux Wiki: Codecs and containers
Music tagsλ︎
Puddletag is a useful desktop tool for adding and modifying tags on digital music.
I use it to:
- add year and genre to music
- add meta data tags for music song titles, track number, album and artist, usually from the file names.
A pattern can be used to derive meta data from the file name of each song to update that files tag.
I added a custom pattern in Edit > Preferences > Patterns that expresses a common pattern for all my music files.
In the Puddletag Patterns list, I changed the sort order so this custom pattern is at the top and therefore automatically used.
NOTE: On Debian Linux I use Ex Falso which is a very nice music tag editor and I find simple to use
Challenges tagging WebM containers
Although the WebM container is a derivative of the well established Matraskov container, ExFalso and other tag tools do not seem to work with this format.
Material for MkDocsλ︎
Material for MkDocs is an important environment to establish within Arch Linux if I am to continue using Garuda Linux.
The Practicalli books and websites all include the following information, tested out on a Debian Linux operating system
Local developmentλ︎
Install mkdocs version 9 using the Python pip package manager
Install the plugins used by the Practicalli site using Pip (these are also installed in the GitHub Action workflow)
pip3 install mkdocs-material mkdocs-callouts mkdocs-glightbox mkdocs-git-revision-date-localized-plugin mkdocs-redirects pillow cairosvg
pillow and cairosvg python packages are required for Social Cards
Fork the GitHub repository and clone that fork to your computer,
Run a local server from the root of the cloned project
The website will open at http://localhost:8000
If making smaller changes, then only rebuild the content that changes, speeding up the local development process
NOTE: navigation changes may not be correctly reflected without reloading the page in the web browser or carrying out a full
make docsbuild
Floating windowsλ︎
Thunar file manager has popup windows that should be set to float
Show details of currently open windows
❯ hyprctl clients in 15s557ms 23:28 practicalli🦅
Window 564db29980c0 -> *[garuda-linux-snapshots-old-notification] (exported)-1.0 (RGB colour 8-bit non-linear integer, GIMP built-in sRGB, 1 layer) 358x88 – GIMP:
mapped: 1
hidden: 0
at: 2874,2172
size: 1844,1013
workspace: 7 (7)
floating: 0
pseudo: 0
monitor: 0
class: gimp
title: *[garuda-linux-snapshots-old-notification] (exported)-1.0 (RGB colour 8-bit non-linear integer, GIMP built-in sRGB, 1 layer) 358x88 – GIMP
initialClass: gimp
initialTitle: GNU Image Manipulation Program
pid: 7887
xwayland: 0
pinned: 0
fullscreen: 0
fullscreenClient: 0
grouped: 0
tags:
swallowing: 0
focusHistoryID: 9
inhibitingIdle: 0
xdgTag:
xdgDescription:
Window 564db2885330 -> Gatchaman, Battle of the Planets, G-Force, Eagle Riders : Free Download, Borrow, and Streaming : Internet Archive — Mozilla Firefox:
mapped: 1
hidden: 0
at: 12,12
size: 5096,2093
workspace: 3 (3)
floating: 0
pseudo: 0
monitor: 1
class: firefox
title: Gatchaman, Battle of the Planets, G-Force, Eagle Riders : Free Download, Borrow, and Streaming : Internet Archive — Mozilla Firefox
initialClass: firefox
initialTitle: Mozilla Firefox
pid: 2226
xwayland: 0
pinned: 0
fullscreen: 0
fullscreenClient: 0
grouped: 0
tags:
swallowing: 0
focusHistoryID: 8
inhibitingIdle: 0
xdgTag:
xdgDescription:
Window 564db2974890 -> Movies - Thunar:
mapped: 1
hidden: 0
at: 2874,2172
size: 1844,1013
workspace: 4 (4)
floating: 0
pseudo: 0
monitor: 0
class: thunar
title: Movies - Thunar
initialClass: thunar
initialTitle: practicalli - Thunar
pid: 7568
xwayland: 0
pinned: 0
fullscreen: 0
fullscreenClient: 0
grouped: 0
tags:
swallowing: 0
focusHistoryID: 7
inhibitingIdle: 0
xdgTag:
xdgDescription:
Window 564db2866080 -> MkDocs - Practicalli Engineering Playbook — Mozilla Firefox:
mapped: 1
hidden: 0
at: 12,12
size: 2797,2093
workspace: 2 (2)
floating: 0
pseudo: 0
monitor: 1
class: firefox
title: MkDocs - Practicalli Engineering Playbook — Mozilla Firefox
initialClass: firefox
initialTitle: Mozilla Firefox
pid: 2226
xwayland: 0
pinned: 0
fullscreen: 0
fullscreenClient: 0
grouped: 0
tags:
swallowing: 0
focusHistoryID: 5
inhibitingIdle: 0
xdgTag:
xdgDescription:
Window 564db2740da0 -> Makefile (~/projects/practicalli/journal) - Nvim:
mapped: 1
hidden: 0
at: 2823,12
size: 2285,1040
workspace: 2 (2)
floating: 0
pseudo: 0
monitor: 1
class: kitty
title: Makefile (~/projects/practicalli/journal) - Nvim
initialClass: kitty
initialTitle: kitty
pid: 2046
xwayland: 0
pinned: 0
fullscreen: 0
fullscreenClient: 0
grouped: 0
tags:
swallowing: 0
focusHistoryID: 6
inhibitingIdle: 0
xdgTag:
xdgDescription:
Window 564db2941fa0 -> Chaturbate - Free Adult Webcams, Live Sex, Free Sex Chat, Exhibitionist & Pornstar Free Cams - Chromium:
mapped: 1
hidden: 0
at: 2823,12
size: 2285,687
workspace: 9 (9)
floating: 0
pseudo: 0
monitor: 1
class: Chromium
title: Chaturbate - Free Adult Webcams, Live Sex, Free Sex Chat, Exhibitionist & Pornstar Free Cams - Chromium
initialClass: Chromium
initialTitle: New tab - Chromium
pid: 541201
xwayland: 1
pinned: 0
fullscreen: 0
fullscreenClient: 0
grouped: 0
tags:
swallowing: 0
focusHistoryID: 2
inhibitingIdle: 0
xdgTag:
xdgDescription:
Window 564db256f320 -> Series - Thunar:
mapped: 1
hidden: 0
at: 2823,713
size: 2285,691
workspace: 9 (9)
floating: 0
pseudo: 0
monitor: 1
class: thunar
title: Series - Thunar
initialClass: thunar
initialTitle: practicalli - Thunar
pid: 7568
xwayland: 0
pinned: 0
fullscreen: 0
fullscreenClient: 0
grouped: 0
tags:
swallowing: 0
focusHistoryID: 3
inhibitingIdle: 0
xdgTag:
xdgDescription:
Window 564db2938450 -> hyprctl clients ~:
mapped: 1
hidden: 0
at: 2823,1418
size: 2285,687
workspace: 9 (9)
floating: 0
pseudo: 0
monitor: 1
class: kitty
title: hyprctl clients ~
initialClass: kitty
initialTitle: kitty
pid: 142227
xwayland: 0
pinned: 0
fullscreen: 0
fullscreenClient: 0
grouped: 0
tags:
swallowing: 0
focusHistoryID: 0
inhibitingIdle: 0
xdgTag:
xdgDescription:
Window 564db28840c0 -> Float the thunar rename file dialogue : r/hyprland — Mozilla Firefox:
mapped: 1
hidden: 0
at: 2823,1066
size: 2285,1039
workspace: 2 (2)
floating: 0
pseudo: 0
monitor: 1
class: firefox
title: Float the thunar rename file dialogue : r/hyprland — Mozilla Firefox
initialClass: firefox
initialTitle: Mozilla Firefox
pid: 2226
xwayland: 0
pinned: 0
fullscreen: 0
fullscreenClient: 0
grouped: 0
tags:
swallowing: 0
focusHistoryID: 4
inhibitingIdle: 0
xdgTag:
xdgDescription:
Window 564db2a53990 -> File Operation Progress:
mapped: 1
hidden: 0
at: 12,12
size: 2797,2093
workspace: 9 (9)
floating: 0
pseudo: 0
monitor: 1
class: thunar
title: File Operation Progress
initialClass: thunar
initialTitle: File Operation Progress
pid: 7568
xwayland: 0
pinned: 0
fullscreen: 0
fullscreenClient: 0
grouped: 0
tags:
swallowing: 0
focusHistoryID: 1
inhibitingIdle: 0
xdgTag:
xdgDescription:
Set float for rename and file transfer progress
TODO: try this
windowrule = float, initialClass: thunar, title: Rename: .*
windowrule = float, initialClass: thunar, title: File Operation Progress: .*
If that doesnt work, try this
Windowrule version 2 seems to work although I dont like the position (center of current display)
windowrule = float,class:^(thunar)$,title:(Rename.*)$
windowrule = float,class:^(thunar)$,title:(File Operation Progress.*)$
G-Hyprlandλ︎
G-Hyprland is an optional tool in Garuda Linux, used to customise the hyprland configuration (monitors, tiling windows, etc) and select waybar themes.
Install...
++Super+"s"+ starts the G-Hyprland tool and shows a menu.
TODO: insert menu
++Super+"w"+ reloads the configuration and updates the hyprland desktop.
I added a monitor > practicalli.config setup for the Lenovo AMD laptop & Dell 5k2k monitor.
Waybarλ︎
I prefer the default waybar theme as it includes the number on each desktop.
There are some items on the default theme that I do not use, so ideally I will customise it and create a themes > practicalli.config variant.
Wallpapersλ︎
Garuda Linux uses wpaperd, which dynamically changes wallpaper
The Wallpaper Archive for Linux window managers and desktops has an excellent collection of backgrounds for the desktop, including animated images.
After cloning the repository I browsed the dynamic wallpapers to see which I liked, using the thunar file browser and pressing enter on each file. The file launches in mpv Movie Player as that was the last application used to view video.
.config/wpaperd/config.toml has a weird location as the default directory, $HOME/custom-wallpaper. I updated the directory location inside the ~/Pictures/ directory.
I believe the operating system needs to be rebooted or at least logout of the desktop session.
Thank you.

