Conclave Linux author Dan Williams has passed away
https://lwn.net/Articles/1084545/
https://redd.it/1veb0ba
@r_linux
https://lwn.net/Articles/1084545/
https://redd.it/1veb0ba
@r_linux
LWN.net
Mourning Dan Williams
I have just received the shocking news that Dan Williams, a longtime, high-profile kernel dev [...]
Connecting to an Azure Join Windows Machine Using Web Authentication From Linux
# 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
The distro-packaged
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:
showed
## Step 1 — Install build dependencies
Two things worth calling out specifically:
-
-
## Step 2 — Clone and configure
Confirm the config actually picked up webview support before building:
You want to see it successfully checking for and finding
## Step 3 — Build
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:
Mine landed at:
## Step 5 — The actual working connection command
A few flags that turned out to matter, that I'd have missed otherwise:
-
# 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.0 → webkit2gtk-4.1 → webkit2gtk-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 skipsstraight to the AAD web auth flow.
-
-
## 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
## Wrapper script
Threw this into a small shell script so I can just run
Hope this saves someone else the trial and error. Happy to answer questions if anyone hits a snag replicating it.
https://redd.it/1vdzgqd
@r_linux
-
<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="[email protected]"
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.
https://redd.it/1vdzgqd
@r_linux
Reddit
From the linux community on Reddit
Explore this post and more from the linux community
Benchmarking Six Linux Distributions On The Framework Laptop 13 Pro
https://www.phoronix.com/review/framework-laptop-13-pro-linux
https://redd.it/1vej28n
@r_linux
https://www.phoronix.com/review/framework-laptop-13-pro-linux
https://redd.it/1vej28n
@r_linux
Phoronix
Benchmarking Six Linux Distributions On The Framework Laptop 13 Pro
With the new Framework Laptop 13 Pro now shipping powered by Intel Core Ultra Series 3 (Panther Lake) and a brand new hardware design, I have spent the past week testing out various Linux distributions on this very nice high-end laptop.
Linux in a Enterprise Environment.
I work for a fairly large Tech company that does tech support. Someone mentioned today that while we support Linux systems, we won't get many tickets over it. Due to the fact that most sysadmins of Linux are better equipped to handle issues themselves, compared to sysadmins of other OS.
Do you believe it stems from the whole idea and culture of Linux?
Edit: I guess I should have been more clear that I was referring more to the server side over the end user systems.
https://redd.it/1vefucu
@r_linux
I work for a fairly large Tech company that does tech support. Someone mentioned today that while we support Linux systems, we won't get many tickets over it. Due to the fact that most sysadmins of Linux are better equipped to handle issues themselves, compared to sysadmins of other OS.
Do you believe it stems from the whole idea and culture of Linux?
Edit: I guess I should have been more clear that I was referring more to the server side over the end user systems.
https://redd.it/1vefucu
@r_linux
Reddit
From the linux community on Reddit
Explore this post and more from the linux community
Some thoughts on declarative package management
https://github.com/vasi/declarative-package-management
https://redd.it/1vep1g6
@r_linux
https://github.com/vasi/declarative-package-management
https://redd.it/1vep1g6
@r_linux
GitHub
GitHub - vasi/declarative-package-management: Tools for keeping package lists declarative, editable, and syncable
Tools for keeping package lists declarative, editable, and syncable - vasi/declarative-package-management
What do you use to switch between different "contexts" on your computer?
I'm looking for inspiration on new ways to organize my PC and separate different activities, stuff like coding projects, studying, gaming and personal use.
Do you use anything to automate, customize or simplify switching between these contexts? I find it quite annoying to reopen everything and organize the windows and everything again and again.
I'm interested in anything, from scripts and keyboard shortcuts to workspace managers, browser extensions, unique apps or even mods like Vencord.
https://redd.it/1vetsxy
@r_linux
I'm looking for inspiration on new ways to organize my PC and separate different activities, stuff like coding projects, studying, gaming and personal use.
Do you use anything to automate, customize or simplify switching between these contexts? I find it quite annoying to reopen everything and organize the windows and everything again and again.
I'm interested in anything, from scripts and keyboard shortcuts to workspace managers, browser extensions, unique apps or even mods like Vencord.
https://redd.it/1vetsxy
@r_linux
Reddit
From the linux community on Reddit
Explore this post and more from the linux community
To any KDE Flatpak users
If you are like me, you use KDE and Flatpak apps.
For a long time now, whenever I had to change some app's permissions, I used a dedicated tool called Flatseal. It works. However, KDE has a native alternative.
System Settings -> Security & Privacy -> Application Permissions -> Application Permissions -> (search and choose an app) -> optional: Manage Flatpak Settings -> optional: Advanced Permissions
It does exactly the same thing as Kubeseal, it's just native KDE/Qt instead of being Gnome/GTK. The one functionality Kubeseal has over it is the ability to set globals. But I think that's it.
If this is common knowledge, then disregard this. I didn't know about it, so I'm sharing it. KDE is awesome.
https://redd.it/1vf1q7r
@r_linux
If you are like me, you use KDE and Flatpak apps.
For a long time now, whenever I had to change some app's permissions, I used a dedicated tool called Flatseal. It works. However, KDE has a native alternative.
System Settings -> Security & Privacy -> Application Permissions -> Application Permissions -> (search and choose an app) -> optional: Manage Flatpak Settings -> optional: Advanced Permissions
It does exactly the same thing as Kubeseal, it's just native KDE/Qt instead of being Gnome/GTK. The one functionality Kubeseal has over it is the ability to set globals. But I think that's it.
If this is common knowledge, then disregard this. I didn't know about it, so I'm sharing it. KDE is awesome.
https://redd.it/1vf1q7r
@r_linux
Reddit
From the linux community on Reddit
Explore this post and more from the linux community
NVIDIA is now supporting the LVFS
https://blogs.gnome.org/hughsie/2026/08/04/nvidia-is-now-supporting-the-lvfs/
https://redd.it/1vfbmk7
@r_linux
https://blogs.gnome.org/hughsie/2026/08/04/nvidia-is-now-supporting-the-lvfs/
https://redd.it/1vfbmk7
@r_linux
Technical Blog of Richard Hughes
NVIDIA is now supporting the LVFS
I'm pleased to announce that NVIDIA is now supporting the LVFS as a premier sponsor. The rollout of the NVIDIA DGX Spark firmware using fwupd is going very well indeed, with downloads continuing to...
Lazyjournal: TUI for viewing logs from journald, auditd, file system, Docker and Podman containers, Compose stacks and Kubernetes pods
https://github.com/Lifailon/lazyjournal
https://redd.it/1vfentw
@r_linux
https://github.com/Lifailon/lazyjournal
https://redd.it/1vfentw
@r_linux
GitHub
GitHub - Lifailon/lazyjournal: TUI for viewing logs from journald, auditd, file system, Docker and Podman containers, Compose stacks…
TUI for viewing logs from journald, auditd, file system, Docker and Podman containers, Compose stacks and Kubernetes pods with support for log highlighting and several filtering modes. - Lifailon/l...
I've been daily-driving Linux and wondering: if I wanted to build a local tool to fix my own desktop friction, what would actually work?
I’ve been thinking about this a lot lately. I love Linux, but whenever I hit some weird driver snag or a legacy app issue, I find myself wishing I had a smart local assistant that could actually untangle my config files or trace system logs for me instead of me spending two hours digging through old forum threads.
I'm curious what other people here do. If you were building or using a local tool to automate away the annoying, repetitive desktop headaches, what would you want it to target first?
Has anyone actually set up local agents or scripts that handle system troubleshooting well, or is it still more trouble than it's worth?
https://redd.it/1vfg558
@r_linux
I’ve been thinking about this a lot lately. I love Linux, but whenever I hit some weird driver snag or a legacy app issue, I find myself wishing I had a smart local assistant that could actually untangle my config files or trace system logs for me instead of me spending two hours digging through old forum threads.
I'm curious what other people here do. If you were building or using a local tool to automate away the annoying, repetitive desktop headaches, what would you want it to target first?
Has anyone actually set up local agents or scripts that handle system troubleshooting well, or is it still more trouble than it's worth?
https://redd.it/1vfg558
@r_linux
Reddit
From the linux community on Reddit
Explore this post and more from the linux community
EU Age Verification Project Mandates Hardware-Bound Attestation
https://linuxiac.com/eu-age-verification-project-mandates-hardware-bound-attestation/
https://redd.it/1vfl2nq
@r_linux
https://linuxiac.com/eu-age-verification-project-mandates-hardware-bound-attestation/
https://redd.it/1vfl2nq
@r_linux
Linuxiac
EU Age Verification Project Mandates Hardware-Bound Attestation
The EU’s age verification project confirms hardware-bound attestation is mandatory, raising concerns over Linux, custom ROMs, and open-source access.
Linux's Staging Area To Now Reject LLM-Generated Patches, Except For Real Security Fixes
https://www.phoronix.com/news/Linux-Staging-Reject-LLMs
https://redd.it/1vfnhcs
@r_linux
https://www.phoronix.com/news/Linux-Staging-Reject-LLMs
https://redd.it/1vfnhcs
@r_linux
Phoronix
Linux's Staging Area To Now Reject LLM-Generated Patches, Except For Real Security Fixes
While Linux's second-in-command Greg Kroah-Hartman does use AI / LLMs himself to success in the Linux kernel, given the 'onslaught' of kernel patches produced by large language models and the intent on the Linux kernel's staging area being an area for newcomers…
Is baeldung.com garbage?
Every now and then when I'm researching something linux related I'll see guides from baeldung.com pop up in the results. Today, I clicked one.
I was looking for some information on the keyring in fedora/gnome and came across what turned out to be a suspicious article.
https://www.baeldung.com/linux/unlock-keyring-fix
There's a section in there on disabling the keyring. The guide tells you to remove the password from your keyring, skip the warning that this means your passwords will be stored in cleartext, then says - Hey! You don't get prompted for a password anymore, the keyring is disabled!
Um....
> If we wish, we can disable the keyring feature by removing its password.
> By leaving the password blank, we disable the keyring feature
Sorry, but that isn't how it works. They do state that doing this "raises security concerns" but don't seem to make the connection that those concerns arise because the keyring is still enabled and doing its job, except now your passwords are stored in cleartext.
So not only do they not describe how to disable the keyring, they seem to think it's OK to guide people to doing this without much warning.
This was supposedly written by a human and reviewed by another human. I haven't looked into the author or reviewer much, but there's at least something there to indicate a real person. Even if it is a website that no longer exists, another website with an invalid ssl cert. There at least is an X account with posts going back a few years, though very rare.
However, don't think I'll be checking out any more of their articles.
Should I be willing to give them another shot?
https://redd.it/1vg3kn5
@r_linux
Every now and then when I'm researching something linux related I'll see guides from baeldung.com pop up in the results. Today, I clicked one.
I was looking for some information on the keyring in fedora/gnome and came across what turned out to be a suspicious article.
https://www.baeldung.com/linux/unlock-keyring-fix
There's a section in there on disabling the keyring. The guide tells you to remove the password from your keyring, skip the warning that this means your passwords will be stored in cleartext, then says - Hey! You don't get prompted for a password anymore, the keyring is disabled!
Um....
> If we wish, we can disable the keyring feature by removing its password.
> By leaving the password blank, we disable the keyring feature
Sorry, but that isn't how it works. They do state that doing this "raises security concerns" but don't seem to make the connection that those concerns arise because the keyring is still enabled and doing its job, except now your passwords are stored in cleartext.
So not only do they not describe how to disable the keyring, they seem to think it's OK to guide people to doing this without much warning.
This was supposedly written by a human and reviewed by another human. I haven't looked into the author or reviewer much, but there's at least something there to indicate a real person. Even if it is a website that no longer exists, another website with an invalid ssl cert. There at least is an X account with posts going back a few years, though very rare.
However, don't think I'll be checking out any more of their articles.
Should I be willing to give them another shot?
https://redd.it/1vg3kn5
@r_linux
Baeldung on Linux
What Is Unlock Keyring and How to Fix It | Baeldung on Linux
Learn about keyrings and why we encounter and how to fix the message that the login key did not get unlocked.
rust-lang/rust is adopting an LLM policy
https://blog.rust-lang.org/inside-rust/2026/08/05/rust-langrust-is-adopting-an-llm-policy/
Second post I recently made about LLM usage policies but it's really just that I find the process of open source finding its way and adjusting to new realities rather interesting.
The "too long, didn't read" (Taken directly from the blog):
>What does the policy say?
>
>The policy summarizes itself this way:
>> It's fine to use LLMs to answer questions, analyze, distill, refine, check, suggest, review. But not to create.
>Uses in the first category are allowed, sometimes requiring disclosure. Uses in the second category are heavily restricted.
(Edit: but I recommend reading the blog...it's a bit more nuanced than the summery)
Edit2: messed up the link, added now
https://redd.it/1vg23x0
@r_linux
https://blog.rust-lang.org/inside-rust/2026/08/05/rust-langrust-is-adopting-an-llm-policy/
Second post I recently made about LLM usage policies but it's really just that I find the process of open source finding its way and adjusting to new realities rather interesting.
The "too long, didn't read" (Taken directly from the blog):
>What does the policy say?
>
>The policy summarizes itself this way:
>> It's fine to use LLMs to answer questions, analyze, distill, refine, check, suggest, review. But not to create.
>Uses in the first category are allowed, sometimes requiring disclosure. Uses in the second category are heavily restricted.
(Edit: but I recommend reading the blog...it's a bit more nuanced than the summery)
Edit2: messed up the link, added now
https://redd.it/1vg23x0
@r_linux
blog.rust-lang.org
rust-lang/rust is adopting an LLM policy | Inside Rust Blog
Want to follow along with Rust development? Curious how you might get involved? Take a look!