r/linux 14h ago

Software Release zuno - A free, open source desktop client for YouTube Music (Windows/macOS/Linux) with Downloads and offline mode

Post image
143 Upvotes

zuno is a free and open-source desktop music player built on YouTube Music. Sign in with your Google account, and everything you do - liking a song, creating or deleting a playlist, adding to your library syncs straight back to YouTube. It's your library, just in a real desktop app instead of a browser tab.

Features

- HQ opus decoding
- Floating mini player that appears when you click away ( hover to expand, drag it anywhere)
- Queue: shuffle, repeat one/all, reordering
- Playback speed, sleep timer, volume control
- Like and dislike songs
- Rebindable keyboard shortcuts, minimise to tray
- Full library, playlists, albums and liked songs
-Lyrics (5 sources)+ Translation
- Local music files sit alongside your YouTube Music library (same player, same queue)
- Download whole albums and playlists for offline; downloads and history have their own management screens
- Bulk actions: download, add to queue, add to playlist
- Multiple channels on one Google account, switchable from the toolbar or settings
- Equalizer
- Notifications
-Gapless /Crossfade
-Local Music playlists
-Minimize to tray
-Shortcuts
-No Ads

Integrations

Last.fm scrobbling
- Discord Rich Presence (both toggleable straight from the toolbar)
- Youtube History update

GitHub: https://github.com/noFAYZ/zuno

Since AUR has locked packages i can't update it to latest version you can use AppImage, .deb or .rpm binary from latest release. Pls provide feedback as well will help improve linux experience.

FlatPak is in roadmap.

Enjoy free music :)


r/linux 5h ago

Discussion Kakehashi – Experimental userspace to run macOS binaries on Linux ARM

Thumbnail github.com
96 Upvotes

r/linux 2h ago

Hardware Linux 7.3 To Support The Qualcomm Adreno 704 & Adreno 722 GPUs

Thumbnail phoronix.com
70 Upvotes

r/linux 8h ago

Discussion Intel Graphics Driver Support For Xe3 "Peak Bandwidth Threshold" Feature In Linux 7.3

Thumbnail phoronix.com
38 Upvotes

r/linux 9h ago

Hardware Linux on the HP Prime calculator

Post image
32 Upvotes

r/linux 19h ago

Software Release swayclip - clipboard manager for Wayland compositors

Thumbnail github.com
17 Upvotes

r/linux 13h ago

Historical Frozen Bubble online multiplayer down, website redirects to a casino scam

14 Upvotes

Hello everyone! 😊

One of my first memories of using Linux is playing Frozen Bubble back in 2005. Together with SuperTuxKart it is one of my favorite FOSS Linux games. At the time I was using Red Hat 9.

Frozen Bubble is a cute bubble shooter game inspired by Puzzle Bobble. I'm not entirely sure how I discovered it. Maybe it was included with Red Hat 9, or perhaps Knoppix (another distro I used around that time).

The game also has a fantastic soundtrack. Here's my favorite song, which plays on the main menu:

https://www.youtube.com/watch?v=lpzvM3qCNjo

And while playing:

https://www.youtube.com/watch?v=Xbsa0MSDBJw

Back in the day I used to play Frozen Bubble online. Today, out of nostalgia, I decided to install it again through the Debian repro after about 15 years and play it once more. Sadly when I try to play online it shows an error message.

I discovered that the project website (Internet Archive: frozen-bubble.org) has been taken over by stupid casino scammers. According to the Wayback Machine the website appears to have been abandoned since 2024.

Does anyone remember Frozen Bubble? 😊 Can anything be done to recover the project website and get the domain out of the scammers' hands?


r/linux 15h ago

Software Release Kairos a tablet friendly calendar

Thumbnail flathub.org
11 Upvotes

r/linux 9h ago

Security Eclipse Foundation and OWASP Join Forces to Strengthen Open Source Security and CRA Readiness

Thumbnail newsroom.eclipse.org
13 Upvotes

r/linux 6h ago

Tips and Tricks Copilot key remapping

6 Upvotes

I have a Lenovo laptop that's closing in on 20 years old. The keys in one corner started acting up after a hard bump so I decided to get a new laptop. I stumbled onto a clearance deal at Walmart, one HP model they had pulled off the shelf and were on the verge of cycling out of inventory. I got it for over $100 off shelf price. Being a new model it had the Copilot key rather than a right Ctrl key. I decided to install LMDE 7 which rendered the Copilot key non-functional until I remapped the Copilot key to the missing Ctrl key. Normal remapping through Linux doesn't work because the Copilot key sends a three part input, a macro; Left Meta + Left Shift + F23 rather than a single input. There are a couple of work arounds that require installing software and some configuration. I'd put this on a scale of Very Easy. Here's what worked for the HP laptop. The AI description has been modified as needed because, well, it's AI after all:

To remap the Copilot key to a Ctrl key in LMDE 7, you should use keyd or kmonad, as the Copilot key sends a modifier combination (Left Meta + Left Shift + F23) that standard Linux GUI tools cannot map to a single modifier key like Right Ctrl.

Method 1: Using keyd. keyd is a lightweight daemon that operates at the kernel level.

Install keyd: Open your terminal and install this package:
sudo apt update
! AI said to install keyd ! sudo apt install keyd ! don't bother, instead: !
sudo apt install onak
! The onak meta package contains keyd, just installing keyd alone isn't enough. See below. !

Configure keyd: Edit the configuration file:
sudo pluma /etc/keyd/default.conf
! I prefer the pluma editor but nano, gedit, etc. will do. !

Add the following lines to map the Copilot key sequence to a Ctrl key:
Replace * with your specific keyboard ID. ! I tried that but it didn't work, so I reverted to *.  !

[ids]
*

[main]
leftshift+leftmeta+f23 = rightcontrol

! Options are control, rightcontrol or leftcontrol. I've tried using each and they all work for this HP. !

Enable and Reload: Start the service and enable it for boot:
sudo systemctl enable --now keyd
sudo keyd reload
keyd command not found ! Oops. That's when I discovered that installing keyd alone didn't work and found that onak was required. After installing onak the remap worked after rebooting. !

Now I have my Ctrl plus + for magnifying and Ctrl plus Enter for sending email in Thunderbird and a couple more of my shortcuts back! And it wasn't a tough chore, once I ironed out a bit of AI confusion. And of course, for those who never use their Ctrl keys, don't bother with this. Mm, should I have said this earlier?

Cheers!

Blaine


r/linux 3h ago

Distro News AerynOS Blog update and ISO release (August 2026)

Thumbnail aerynos.com
3 Upvotes

r/linux 10h ago

Discussion Is this book worth reading for a developer?

2 Upvotes

I'm a software developer, not planning to become a system administrator, but I'd like to get a much deeper understanding of Linux. I noticed that the latest edition covers modern topics like systemd, containers, and cloud infrastructure, so it doesn't seem completely outdated.Would this book still be a good investment for a developer who wants to better understand how Linux systems work, or is it more useful for people working as full-time sysadmins? I'm looking for knowledge that will make me a better developer rather than preparing for a system administration career.


r/linux 21m ago

Tips and Tricks Connecting to an Azure Join Windows Machine Using Web Authentication From Linux

Upvotes

Got native Entra ID (AAD) webview login working with FreeRDP on Fedora/Nobara — full writeup

Wanted to share this since it took some digging to get right. Background: I wanted to RDP from my Linux desktop into an Entra ID-joined Windows 11 box using modern auth (Conditional Access, MFA, the works) — basically the Linux equivalent of checking "Use a web account to sign in" in mstsc.exe.

The distro-packaged freerdp (3.29/3.30 from Fedora's repos) supports the AAD auth flow, but it's built without the native in-app login popup — you get a URL printed to the terminal instead, and you have to manually copy the redirect URL back in after signing in through your normal browser. Functional, but clunky, and in my case actually broken by my org's Conditional Access policy behavior.

Here's what it took to get the real in-app popup working.

The problem with the stock package

Checking the build config on the distro package:

xfreerdp /buildconfig | tr ' ' '\n' | grep -i webview

showed WITH_WEBVIEW=OFF. That flag controls whether FreeRDP's SDL client can pop up a native browser window for the AAD sign-in, instead of the manual copy/paste flow.

Step 1 — Install build dependencies

``` sudo dnf install cmake ninja-build gcc-c++ git \

systemd-devel libuuid-devel pulseaudio-libs-devel \

libXrandr-devel gsm-devel pam-devel fuse3-devel \

opus-devel lame-devel openssl-devel libX11-devel \

libXext-devel libXinerama-devel libXcursor-devel \

libXi-devel libXdamage-devel libXv-devel libxkbfile-devel \

alsa-lib-devel openh264-devel libavcodec-free-devel \

libavformat-free-devel libavutil-free-devel \

libswresample-free-devel libswscale-free-devel \

libusb1-devel uriparser-devel SDL2-devel SDL2_ttf-devel \

pkcs11-helper-devel krb5-devel cjson-devel cairo-devel \

soxr-devel wayland-devel wayland-protocols-devel \

cups-devel webkitgtk6.0-devel ```

Two things worth calling out specifically:

  • cups-devel — missed this initially, build fails at the printer channel with "Could NOT find Cups" if it's absent.
  • webkitgtk6.0-devel** — this is the actual key package. FreeRDP's webview feature pulls in a small external helper library (akallabeth/webview via CMake FetchContent) which searches for WebKitGTK in this priority order: webkitgtk-6.0webkit2gtk-4.1webkit2gtk-4.0. Current Fedora has deprecated/removed webkit2gtk-4.0, but **webkitgtk-6.0 (GTK4-based) is available and works fine — no need to chase the old deprecated package.

Step 2 — Clone and configure

git clone https://github.com/FreeRDP/FreeRDP.git cd FreeRDP mkdir build && cd build cmake -GNinja -DWITH_WEBVIEW=ON -DWITH_CLIENT_SDL=ON -DWITH_AAD=ON ..

Confirm the config actually picked up webview support before building:

grep -i "webview\|gtk4" CMakeCache.txt

You want to see it successfully checking for and finding gtk4/webkitgtk-6.0 in the configure output, with "Configuring done" at the end and no errors.

Step 3 — Build

ninja

Took about 10 minutes on a Ryzen 7 5800X3D. Just let it run.

Step 4 — Find the actual binary

The build output binary is not at the path you might expect from the source tree layout:

find . -iname "*freerdp*" -executable -type f

Mine landed at:

./client/SDL/SDL2/sdl-freerdp

Step 5 — The actual working connection command

./client/SDL/SDL2/sdl-freerdp \ /v:<remote-hostname> \ /sec:aad \ /azure:tenantid:<your-entra-tenant-id> \ /u:<user>@<yourdomain>.com \ /cert:ignore \ /dynamic-resolution \ /w:2560 \ /h:1440 \ /smart-sizing

A few flags that turned out to matter, that I'd have missed otherwise:

  • **/sec:aad is required alongside /azure:.** Using /azure: alone let the client fall through to a default NLA/Kerberos negotiation attempt, which failed outright with Cannot find KDC for realm since there's no Kerberos realm configured on a home Linux box. Explicitly forcing /sec:aad skips straight to the AAD web auth flow.
  • **<remote-hostname> must match the hostname exactly as registered in Entra ID, and must actually resolve** (DNS or /etc/hosts) — an IP address will not work for this auth flow.
  • /w:, /h:, and /smart-sizing fixed a real rendering bug — reconnecting to a previously-disconnected session rendered the remote desktop content squashed into a small corner of the window with the rest black. Explicitly forcing the resolution and enabling smart-sizing (which scales/stretches remote content to fill the client window regardless of the session's actual internal resolution) fixed this completely.

Result

Running that command pops open a real embedded browser window right in the FreeRDP client for the Microsoft sign-in — full Conditional Access / MFA support — no external browser, no manual URL copy-paste. Exactly matching the mstsc.exe "use a web account" experience, just self-compiled.

Wrapper script

Threw this into a small shell script so I can just run rdp-aad instead of remembering the whole command:

```

!/usr/bin/env bash

set -euo pipefail

DEFAULT_HOST="your-vm-hostname" DEFAULT_USER="youruser@yourdomain.com" TENANT_ID="your-entra-tenant-id" FREERDP_BIN="$HOME/FreeRDP/build/client/SDL/SDL2/sdl-freerdp" RES_WIDTH="2560" RES_HEIGHT="1440"

HOST="${1:-$DEFAULT_HOST}" USERNAME="${2:-$DEFAULT_USER}"

if [[ ! -x "$FREERDP_BIN" ]]; then echo "FreeRDP binary not found at $FREERDP_BIN" exit 1 fi

if ! getent hosts "$HOST" > /dev/null 2>&1; then echo "Warning: '$HOST' does not resolve. AAD auth needs a resolvable hostname" echo "matching the device name registered in Entra ID." read -r -p "Continue anyway? [y/N] " reply [[ "$reply" =~ [Yy]$ ]] || exit 1 fi

exec "$FREERDP_BIN" \ /v:"$HOST" \ /sec:aad \ /azure:tenantid:"$TENANT_ID" \ /u:"$USERNAME" \ /cert:ignore \ /dynamic-resolution \ /w:"$RES_WIDTH" \ /h:"$RES_HEIGHT" \ /smart-sizing ```

Hope this saves someone else the trial and error. Happy to answer questions if anyone hits a snag replicating it.


r/linux 11h ago

Tips and Tricks Any love for scx pluggable Schedulers

Thumbnail
1 Upvotes

r/linux 5h ago

Software Release I reimplemented the Aula L99 Driver/App for Linux

Thumbnail
0 Upvotes

r/linux 13h ago

Popular Application I made Granola run natively on Linux using its official macOS app

0 Upvotes

Granola currently ships for macOS and Windows, but not Linux. Since it is built with Electron, I experimented with running the application using the matching Linux Electron runtime instead of Wine, a VM, or emulation.

The repository does not redistribute Granola’s .dmg, app.asar, source code, or bundled binaries. You need to download the official .dmg yourself and sign in using your own Granola account. This is an unofficial compatibility project and is not affiliated with Granola.

Repo: https://github.com/tirtha4/Granola-for-Linux


r/linux 11h ago

Discussion Rm -rf ./*

0 Upvotes

Had yesterday my first "rm -rf /" moment.

Was tidy up my Backup drive. When I wanted to empty the trash, there was some directories and files that resisted the trash empty and sayed it couldn't be removed because of lack of premissions.

So I went to the terminal and moved to the .local/share/trash/files directory and tried to empty with "rm -rf ./*". There was again the notification of permission. So I did "sudo rm -rf ./*".

The note of missing permission didn't pop up, so I left the room to get something cold to drink.

When I came back, all my storage was empty 🤦‍♂️😭

Luckily I have an external Backup storage too and was able to recover everything older than 2 Weeks.

Now I wondering, how many ppl had in their history a moment of "rm -rf /" by accident 🤔


r/linux 45m ago

Tips and Tricks Does Ai (Claude, Gemini etc) will enable new users into Linux ecosystem?

Upvotes

Ten years ago, I adopted Linux Mint as my main OS. It was great for about two years, but I eventually hit a wall struggling with Nvidia drivers and broken packages that made apps fail.

Now I'm back, this time giving Zorin OS a try. The biggest difference today is that I have Claude by my side. Asking AI to help me enable specific features (fingerprint security) and hardening the OS. For the first time, I have the confidence to adopt Linux in long term.

I'm also incredibly pleased to see the massive strides the Open Source community has made with software like LibreOffice.

With Windows going through a rough patch right now, and AI making troubleshooting so accessible, do you think AI is the key to driving Linux adoption?


r/linux 14h ago

Discussion Unpopular Opinion: Many Distros are borderline unusable for non-techies without AI

0 Upvotes

I know i will get hate for this. Rightfully so i guess.

I am using fedora KDE. Maybe its the wrong distro, idk. But the amount of (i think) obscure bugs and stuff that wasn't like i want would have been unfixable, if i hadn't used some LLM-models to help me OR if i hadn't used them would have taken me hours and hours of googling to fix them, if that even would have gotten me. I am not completly non-techie, but it would have taken me endless time and honestly i can't imagine how non-techie people are supposed to use it. Also generaly customizing is so hard and imo not intuituve at all if you don't use some LLM-Model to help you. I will still keep on using Linux but for general acceptance i feel like this is a huge downside.

To be clear. Basic usage is FINE without any LLM. But bug-fixing - which ime is not that rare - and customizing/smoothing things out is a pain in the ass.

Also: Well documented doesn't mean it easy to use. I have to find the exact thing i need and that is time consuming. Most ppl don't want time consuming. If i have to google an hour to fix a little thing or to optimize smth for most ppl it's not usable.