<?xml version="1.0"?>
<rdf:RDF
	xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:foaf="http://xmlns.com/foaf/0.1/"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns="http://purl.org/rss/1.0/"
>
<channel rdf:about="https://planet.debian.org/deriv/">
	<title>Planet Debian Derivatives</title>
	<link>https://planet.debian.org/deriv/</link>
	<description>Planet Debian Derivatives - https://planet.debian.org/deriv/</description>

	<items>
		<rdf:Seq> 
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38759"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38744"/>
		  <rdf:li rdf:resource="https://www.skudonet.com/?p=77009"/>
		  <rdf:li rdf:resource="https://www.deepin.org.cn/?p=38733"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38722"/>
		  <rdf:li rdf:resource="https://www.greenbone.net/?p=66061"/>
		  <rdf:li rdf:resource="https://www.deepin.org.cn/?p=38708"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38694"/>
		  <rdf:li rdf:resource="https://www.greenbone.net/?p=65987"/>
		  <rdf:li rdf:resource="https://tails.net/news/version_7.6.1/"/>
		  <rdf:li rdf:resource="https://blog.armbian.com/rss/69d3be9b73b8520001057443"/>
		  <rdf:li rdf:resource="https://www.bunsenlabs.org/feed/news/2f42555b-1f31-5a60-ba61-a172ccd4e907"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38682"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38665"/>
		  <rdf:li rdf:resource="https://sparkylinux.org/?p=14053"/>
		  <rdf:li rdf:resource="https://blog.armbian.com/rss/69c3f66e3316030001e10e36"/>
		  <rdf:li rdf:resource="https://blog.armbian.com/rss/69c28cec4c791000017be643"/>
		  <rdf:li rdf:resource="https://blog.armbian.com/rss/69c5619a73b8520001050f4b"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38650"/>
		  <rdf:li rdf:resource="https://pardus.org.tr/?p=25960"/>
		  <rdf:li rdf:resource="https://blog.armbian.com/rss/69cb345e73b8520001050f67"/>
		  <rdf:li rdf:resource="https://blog.vyos.io/vyos-1.5.0-ga-release"/>
		  <rdf:li rdf:resource="https://www.elivecd.org/?p=16575"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38635"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38627"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38618"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38611"/>
		  <rdf:li rdf:resource="https://www.die-welt.net/2026/03/converting-dovecot-password-schemes-on-the-fly-without-too-much-cursing/"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38582"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38561"/>
		  <rdf:li rdf:resource="https://tails.net/news/version_7.6/"/>
		  <rdf:li rdf:resource="https://blog.armbian.com/rss/6932f6a393dc3200011812c0"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38544"/>
		  <rdf:li rdf:resource="https://www.skudonet.com/?p=76960"/>
		  <rdf:li rdf:resource="https://blog.armbian.com/rss/69c1e1854c791000017be634"/>
		  <rdf:li rdf:resource="https://www.qubes-os.org/news/2026/03/24/xsas-released-on-2026-03-24/"/>
		  <rdf:li rdf:resource="https://puri.sm/?p=85307"/>
		  <rdf:li rdf:resource="https://sparkylinux.org/?p=14049"/>
		  <rdf:li rdf:resource="https://www.skudonet.com/?p=76954"/>
		  <rdf:li rdf:resource="https://blog.vyos.io/vyos-stream-2026.03-is-available-for-download"/>
		  <rdf:li rdf:resource="https://www.greenbone.net/blog/jetzt-patchen-7-neue-kritische-schwachstellen-in-veeam-backup-replication/"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38530"/>
		  <rdf:li rdf:resource="https://www.skudonet.com/?p=76861"/>
		  <rdf:li rdf:resource="https://www.skudonet.com/?p=76893"/>
		  <rdf:li rdf:resource="https://www.univention.de/?p=85733"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38501"/>
		  <rdf:li rdf:resource="https://blog.armbian.com/rss/69b8bb4bb9cecb000150ea0a"/>
		  <rdf:li rdf:resource="https://www.qubes-os.org/news/2026/03/17/xsas-released-on-2026-03-17/"/>
		  <rdf:li rdf:resource="https://www.qubes-os.org/news/2026/03/17/qsb-110/"/>
		  <rdf:li rdf:resource="https://puri.sm/?p=85268"/>
		  <rdf:li rdf:resource="https://www.greenbone.net/?p=65237"/>
		  <rdf:li rdf:resource="https://www.qubes-os.org/news/2026/03/16/fedora-43-templates-available-for-qubes-os-4-2/"/>
		  <rdf:li rdf:resource="https://sparkylinux.org/?p=14041"/>
		  <rdf:li rdf:resource="http://sinfallas.wordpress.com/?p=5355"/>
		  <rdf:li rdf:resource="https://pardus.org.tr/?p=25940"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38472"/>
		  <rdf:li rdf:resource="https://www.qubes-os.org/news/2026/03/13/fedora-42-approaching-end-of-life/"/>
		  <rdf:li rdf:resource="https://www.qubes-os.org/news/2026/03/13/canary-046/"/>
		  <rdf:li rdf:resource="https://www.univention.de/?p=85710"/>
		  <rdf:li rdf:resource="https://www.deepin.org/?p=38457"/>
		</rdf:Seq>
	</items>
</channel>


<item rdf:about="https://www.deepin.org/?p=38759">
	<title>Deepin: deepin 25.1.0 Released: AI-Powered, Smooth as Silk to the Core</title>
	<link>https://www.deepin.org/en/deepin-25-1-announcement/</link>
     <content:encoded>Dear deepin Community: As an open-source operating system that shines in the global rankings on DistroWatch and is widely recognized by users worldwide, deepin has been continuously listening to your feedback since the release of deepin 25. We’ve been refining details, fixing issues, and introducing innovations. Today, we are excited to announce that the deepin 25.1.0 images are officially released! Release Highlights Major Evolution of UOS AI: The writing agent has been fully reconstructed, supporting outline-first generation and source tracing. A new system-level &quot;Claw Mode&quot; has been added, supporting automatic computer control via natural language commands. The Skills Center is ...&lt;a href=&quot;https://www.deepin.org/en/deepin-25-1-announcement/&quot;&gt;Read more&lt;/a&gt;</content:encoded> 
	<dc:date>2026-04-10T05:21:32+00:00</dc:date>
	<dc:creator>sun, ruonan</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38744">
	<title>Deepin: deepin 25.1.0 Release Note</title>
	<link>https://www.deepin.org/en/deepin-25-1-release/</link>
     <content:encoded>As an open-source operating system that shines in the global rankings on DistroWatch and is widely recognized by users worldwide, deepin has been continuously listening to your feedback since the release of deepin 25. We’ve been refining details, fixing issues, and introducing innovations. Today, we are excited to announce that the deepin 25.1.0 images are officially released! I. Major Updates UOS AI Evolution This update deeply empowers productivity, bringing a system-level reconstruction and ecological expansion to UOS AI. System-level Claw Mode: The newly launched system-level native Claw mode fully integrates with mainstream IM application interfaces such as Lark, DingTalk, and ...&lt;a href=&quot;https://www.deepin.org/en/deepin-25-1-release/&quot;&gt;Read more&lt;/a&gt;</content:encoded> 
	<dc:date>2026-04-10T04:53:34+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 
<item rdf:about="https://www.skudonet.com/?p=77009">
	<title>ZEVENET: How to Choose a Cybersecurity Provider in 2026: Why Most Can’t Be Trusted</title>
	<link>https://www.skudonet.com/blog/how-to-choose-cybersecurity-provider/</link>
     <content:encoded>&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;&lt;strong&gt;Cybersecurity&lt;/strong&gt; is no longer just a technical problem. &lt;strong&gt;It’s a trust problem&lt;/strong&gt;.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;Only&lt;strong&gt; 5% of IT decision-makers say that both they and their organization fully trust their cybersecurity providers&lt;/strong&gt;, according to the &lt;a href=&quot;https://www.sophos.com/es-es/blog/the-cybersecurity-trust-reality-in-2026&quot; rel=&quot;noopener nofollow&quot; target=&quot;_blank&quot;&gt;Cybersecurity Trust Reality 2026 report by Sophos&lt;/a&gt;, based on responses from 5,000 organizations across 17 countries.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;A remarkably low figure and a deeply concerning one, especially in a context where attacks on digital infrastructure are growing in both sophistication and frequency, where AI is amplifying existing threats, and where virtually any actor can launch a devastating cyberattack.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;Blindly trusting a provider you cannot evaluate has itself become a vulnerability.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;This article won’t give you a vendor ranking. It will tell you &lt;strong&gt;what to look for to determine whether your current provider — or one you’re evaluating — is actually protecting your business.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 class=&quot;text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold&quot;&gt;The Trust Crisis Nobody Wants to Talk About&lt;/h2&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;The data points clearly in one direction: most organizations work with cybersecurity providers they don’t fully trust.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;This isn’t a matter of subjective perception.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;According to the Sophos report:&lt;/p&gt;
&lt;ul class=&quot;[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3&quot;&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;&lt;strong&gt;79%&lt;/strong&gt; say it is difficult to assess the reliability of new cybersecurity providers or partners.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;&lt;strong&gt;62%&lt;/strong&gt; also struggle to trust the providers they already work with.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;&lt;strong&gt;47%&lt;/strong&gt; say the information provided by vendors is not sufficiently objective or detailed.&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;And the consequences are tangible:&lt;/p&gt;
&lt;ul class=&quot;[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3&quot;&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;&lt;strong&gt;51%&lt;/strong&gt; say they are more concerned about the possibility of their organization suffering a serious cyber incident.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;&lt;strong&gt;45%&lt;/strong&gt; say it makes them more likely to switch providers — a costly and disruptive process for most organizations.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;&lt;strong&gt;42%&lt;/strong&gt; report an increase in oversight requirements.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;&lt;strong&gt;41%&lt;/strong&gt; say they have less peace of mind about their cybersecurity posture.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;&lt;strong&gt;38%&lt;/strong&gt; express concern that they or their organization may have chosen the wrong provider.&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;The underlying problem is structural: &lt;strong&gt;trust in cybersecurity has historically been built on commercial promises, not verifiable mechanisms.&lt;/strong&gt;&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;Certifications, audits, and service level agreements provide a framework, but they don’t replace the ability to independently verify what your provider is actually doing inside your infrastructure.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;For &lt;strong&gt;security teams, this creates constant friction&lt;/strong&gt;: slower decision-making, higher provider turnover, and a risk posture that depends more on faith than on real knowledge.&lt;/p&gt;
&lt;h2 class=&quot;text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold&quot;&gt;Why This Is Urgent&lt;/h2&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;The trust problem doesn’t exist in isolation. It becomes critical because the threat landscape has changed substantially in recent years.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;&lt;strong&gt;Attacks on digital infrastructure are more frequent, more sophisticated&lt;/strong&gt;, and harder to attribute.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;Ransomware remains the dominant threat in enterprise environments, with organized groups operating with their own business models: affiliates, technical support, distribution channels.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;According &lt;a href=&quot;https://www.lisanews.org/ciberseguridad/codigo-rojo-por-que-la-ciberseguridad-es-la-frontera-mas-critica-del-futuro/&quot; rel=&quot;noopener nofollow&quot; target=&quot;_blank&quot;&gt;to data reported by Lisa News&lt;/a&gt;, the World Bank estimates that &lt;strong&gt;92% of the world’s critical infrastructure has known vulnerabilities&lt;/strong&gt;.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;And artificial intelligence is reshaping the threat landscape significantly: it doesn’t create new attack categories, but it dramatically lowers the barrier to entry. It enables highly personalized social engineering attacks at scale, automated vulnerability scanning, and the development of malware with autonomous adaptation capabilities.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;The result is an environment where &lt;strong&gt;any organization, regardless of size or sector, is a potential target.&lt;/strong&gt; The question is no longer whether you will be attacked, but whether your infrastructure is in a position to detect, contain, and recover from it.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;In that context, working with a provider whose real capabilities you cannot verify is not just a trust problem. It’s an active vulnerability.&lt;/p&gt;
&lt;h2 class=&quot;text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold&quot;&gt;Why Trusting Cybersecurity Providers Is So Difficult&lt;/h2&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;The problem isn’t that providers are bad. The problem is structural.&lt;/p&gt;
&lt;h3 class=&quot;text-text-100 mt-2 -mb-1 text-base font-bold&quot;&gt;Lack of Real Visibility&lt;/h3&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;Many market solutions operate as black boxes. They promise protection, but:&lt;/p&gt;
&lt;ul class=&quot;[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3&quot;&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;They don’t let you inspect which rules are active in your WAF.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;They don’t show you what traffic is being blocked or why.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;They don’t offer traceability that you can audit independently.&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;Without visibility, security is an assumption. And an assumption protects no one.&lt;/p&gt;
&lt;h3 class=&quot;text-text-100 mt-2 -mb-1 text-base font-bold&quot;&gt;Vendor Lock-in&lt;/h3&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;The rise of SaaS and cloud-only solutions has brought operational advantages. But it has also created a structural problem: in many cases, your security infrastructure is outside your control.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;This translates into:&lt;/p&gt;
&lt;ul class=&quot;[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3&quot;&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;Security policies you cannot customize.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;Rules you cannot review.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;Data flowing through third-party infrastructure.&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;And when an incident occurs, you depend on the provider’s response capacity, not your own.&lt;/p&gt;
&lt;h3 class=&quot;text-text-100 mt-2 -mb-1 text-base font-bold&quot;&gt;Fragmented Security&lt;/h3&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;In a typical 2026 infrastructure, security is often distributed across multiple tools: a reverse proxy here, an external WAF there, third-party DDoS protection, another vendor for monitoring.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;The result is not greater protection. It’s greater complexity, more points of failure, and reduced capacity to respond to incidents.&lt;/p&gt;
&lt;h2 class=&quot;text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold&quot;&gt;What Makes a Cybersecurity Solution Truly Trustworthy&lt;/h2&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;Trust in cybersecurity is not a matter of brand or marketing. It’s a matter of architecture.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;A trustworthy solution must offer:&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;&lt;strong&gt;Full traffic visibility&lt;/strong&gt; Layer 7 inspection (HTTP/HTTPS), detailed logs with real traceability, and the ability to precisely identify what is being blocked and why. Not a marketing dashboard (auditable data).&lt;/li&gt;
&lt;li class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;&lt;strong&gt;Control over security rules&lt;/strong&gt; Real access to WAF rules (OWASP, custom, per application) and the ability to adjust them to your environment. If you can’t touch the rules, you don’t have control. And without control, there is no trust.&lt;/li&gt;
&lt;li class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;&lt;strong&gt;Integrated security, not stacked&lt;/strong&gt; WAF, DDoS protection, and traffic management in a single layer reduces complexity, eliminates blind spots, and accelerates incident response. Fragmented architectures multiply the attack surface.&lt;/li&gt;
&lt;li class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;&lt;strong&gt;Transparency in costs and features&lt;/strong&gt; No hidden modules, no per-feature licensing, no surprises when scaling. Opaque models make evaluation harder and erode trust over time.&lt;/li&gt;
&lt;li class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;&lt;strong&gt;Deployment flexibility&lt;/strong&gt; On-premises, cloud, virtual, dedicated hardware, or hybrid environments. Because every infrastructure is different, and security cannot depend on a single deployment model.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 class=&quot;text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold&quot;&gt;The Problem with Many Current Solutions&lt;/h2&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;Platforms like F5 or Netscaler offer solid technical capabilities, but carry structural problems that make it harder to achieve exactly what you need most today: transparency and control.&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;&lt;strong&gt;High complexity and cost: &lt;/strong&gt;multiple modules, additional per-feature licenses, and complex configurations increase TCO and create dependency on the vendor’s own professional services.&lt;/li&gt;
&lt;li class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;&lt;strong&gt;Closed ecosystems: &lt;/strong&gt;limited customization, restricted access to critical configurations, and reliance on proprietary ecosystems that make independent auditing difficult.&lt;/li&gt;
&lt;li class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;&lt;strong&gt;Loss of control in cloud-only models:&lt;/strong&gt; in purely SaaS solutions, the infrastructure is not yours. You cannot fully audit what happens, and you depend on external decisions about updates, policy changes, or service availability.&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;This doesn’t mean these solutions don’t work. It means that &lt;strong&gt;if what you’re looking for is trust based on control and visibility, your architecture matters as much as the vendor you choose.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 class=&quot;text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold&quot;&gt;How to Regain Control: Integrated ADC + WAF as the First Line of Defense&lt;/h2&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;The trend gaining traction among the most mature organizations is not adding more tools. It’s simplifying and unifying the delivery and security layer.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;This is where the concept of an &lt;strong&gt;Application Delivery Controller (ADC)&lt;/strong&gt; with &lt;strong&gt;integrated WAF&lt;/strong&gt; changes the equation.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;A modern ADC is not just a load balancer. It’s the layer that:&lt;/p&gt;
&lt;ul class=&quot;[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3&quot;&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;Manages and optimizes application traffic.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;Inspects requests in real time before they reach the backend.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;Applies security rules — WAF, bot control, DDoS protection — in an integrated and auditable way.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;Provides full visibility into what is happening across your HTTP/HTTPS traffic.&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;When this layer is transparent, configurable, and deployable within your own infrastructure, &lt;strong&gt;security stops being a black box and becomes a system you can understand, audit, and control.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 class=&quot;text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold&quot;&gt;Practical Case: From Fragmented Infrastructure to Full Control&lt;/h2&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;A&lt;a href=&quot;https://www.skudonet.com/load-balancing-examples/industrial-success-case/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt; company running several exposed digital services&lt;/a&gt; operated with NGINX as a proxy, a third-party external WAF, and separate tools for monitoring and DDoS protection.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;The problem wasn’t a lack of tools. It was a lack of visibility across them.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;When an incident occurred, diagnosis time spiked because each tool’s logs were independent. There was no unified view of traffic.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;After migrating to an ADC architecture with integrated WAF:&lt;/p&gt;
&lt;ul class=&quot;[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3&quot;&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;Traffic inspection and control were centralized into a single layer.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;Incident response times decreased significantly.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;The security team shifted from reacting to having proactive visibility.&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;The result wasn’t just more security. It was more control. And more control means more trust.&lt;/p&gt;
&lt;h2 class=&quot;text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold&quot;&gt;How SKUDONET Fits Into This Picture&lt;/h2&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;SKUDONET is a European Application Delivery and Security platform designed for environments where control, visibility, and deployment flexibility are not optional.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;Its architecture integrates into a single platform:&lt;/p&gt;
&lt;ul class=&quot;[li_&amp;amp;]:mb-0 [li_&amp;amp;]:mt-1 [li_&amp;amp;]:gap-1 [&amp;amp;:not(:last-child)_ul]:pb-1 [&amp;amp;:not(:last-child)_ol]:pb-1 list-disc flex flex-col gap-1 pl-8 mb-3&quot;&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;&lt;strong&gt;ADC with advanced load balancing&lt;/strong&gt; and high availability.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;&lt;strong&gt;WAF with IPDS&lt;/strong&gt; (Intrusion Prevention and Detection System): deep Layer 7 inspection, OWASP rules, and full customization capability.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;&lt;strong&gt;Integrated DDoS protection&lt;/strong&gt;, without relying on external services.&lt;/li&gt;
&lt;li class=&quot;whitespace-normal break-words pl-2&quot;&gt;&lt;strong&gt;Real traffic visibility&lt;/strong&gt;: auditable logs, full traceability, no black boxes.&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;And unlike cloud-only solutions, SKUDONET can be deployed on dedicated hardware, bare metal, virtual machines, cloud, or hybrid environments.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;This means the infrastructure can be wherever you decide it should be. And the rules are yours to control.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;&lt;strong&gt;Trust doesn’t come from trusting the vendor. It comes from being able to verify what it does.&lt;/strong&gt;&lt;/p&gt;
&lt;h2 class=&quot;text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold&quot;&gt;Trust in Cybersecurity Is Architecture, Not Promises&lt;/h2&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;In a context where 95% of companies don’t fully trust their providers, where attacks on digital infrastructure keep growing, and where AI is amplifying risk significantly, the relevant question is not which vendor has the best marketing.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;The questions are:&lt;/p&gt;
&lt;ul&gt;
&lt;li class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;&lt;strong&gt;Can you see what’s happening in your infrastructure? &lt;/strong&gt;&lt;/li&gt;
&lt;li class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;&lt;strong&gt;Can you control it? &lt;/strong&gt;&lt;/li&gt;
&lt;li class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;&lt;strong&gt;Can you audit it independently?&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;If the answer is no, you have a vulnerability that no SLA contract will cover.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;&lt;strong&gt;Real trust in cybersecurity is not purchased&lt;/strong&gt;. It is built on visibility, control, and architectures you can understand.&lt;/p&gt;
&lt;h2 class=&quot;text-text-100 mt-3 -mb-1 text-[1.125rem] font-bold&quot;&gt;Where to Start&lt;/h2&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;If you are assessing whether your application infrastructure is truly protected, the first step is not switching providers.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;It’s understanding how your traffic is managed today, what level of visibility you have over it, and whether the security rules being applied are auditable and under your control.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;SKUDONET offers an ADC + WAF platform you can deploy within your own infrastructure, with full visibility and no opaque dependencies.&lt;/p&gt;
&lt;p class=&quot;font-claude-response-body break-words whitespace-normal leading-[1.7]&quot;&gt;&lt;a class=&quot;brxe-button bricks-button red-btn&quot; href=&quot;https://www.skudonet.com/try-skudonet/&quot;&gt;Discover how it works&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;/p&gt;</content:encoded> 
	<dc:date>2026-04-09T15:28:40+00:00</dc:date>
	<dc:creator>Isabel Perez</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org.cn/?p=38733">
	<title>Deepin: deepin 25.1 Acknowledgments: Thank You</title>
	<link>https://www.deepin.org/en/deepin25-thankyoulist/</link>
     <content:encoded>During the development and refinement cycle of deepin 25.1, hundreds of community members participated in code writing, issue feedback, multi-language translation, community building, and ecosystem promotion. Below is the complete list of contributors for this release cycle. Every line of code and every piece of feedback is the core driving force behind deepin. 💻 Code Contributions (PR &amp;amp; Commits &amp;amp; Issues) Thank you to the following developers for contributing valuable code to the system core, desktop environment, and various applications (sorted by count descending, June 2025 – April 2026): Statistics source: https://www.deepin.org/index/datastat PR Contributions Commits Contributions Issues Contributions mhduiy opsiff ...&lt;a href=&quot;https://www.deepin.org/en/deepin25-thankyoulist/&quot;&gt;Read more&lt;/a&gt;</content:encoded> 
	<dc:date>2026-04-09T11:18:19+00:00</dc:date>
	<dc:creator>徐, 小龙</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38722">
	<title>Deepin: (中文) 极客浪漫！deepin人共建的终端音乐播放器来了！</title>
	<link>https://www.deepin.org/en/deepin-termusic/</link>
     <content:encoded>Sorry, this entry is only available in 中文.</content:encoded> 
	<dc:date>2026-04-09T02:23:19+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 
<item rdf:about="https://www.greenbone.net/?p=66061">
	<title>GreenboneOS: Patch Now! CVE-2026-35616 and CVE-2026-21643: Fortinet EMS Actively Exploited</title>
	<link>https://www.greenbone.net/en/blog/patch-now-2026-35616-and-cve-2026-21643/</link>
     <content:encoded>Fortinet FortiClient EMS faces immediate risk from two critical severity CVEs: CVE-2026-35616 in versions 7.4.5-7.4.6 and CVE-2026-21643 in 7.4.4. CVE-2026-35616 (CVSS 9.8) is an actively exploited vulnerability in Fortinet FortiClient Enterprise Management Server (EMS) 7.4.5 through 7.4.6, published on April 4, 2026. The flaw is an improper access control [CWE-284] that can be exploited for […]</content:encoded> 
	<dc:date>2026-04-08T13:46:23+00:00</dc:date>
	<dc:creator>Joseph Lee</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org.cn/?p=38708">
	<title>Deepin: deepin 25 Operating System User Installation &amp; Usage FAQ</title>
	<link>https://www.deepin.org/en/deepin25-user-qa/</link>
     <content:encoded>1. Download &amp;amp; Image Selection Q1: Where can I download the official deepin 25 ISO image? A: Visit the official download page: https://www.deepin.org/en/download/ Q2: How do I choose the correct image for my computer? A: Select the image according to your processor architecture: Architecture Supported Processors (Examples) Notes AMD64 (x86_64) Intel Core, AMD Ryzen Most common; suitable for the vast majority of personal computers ARM64 Phytium D2000/D3000/E2000/S2500/S5000C, Kunpeng 920 For Chinese ARM platforms Loong64 Loongson 3A5000 (requires New World firmware) or newer Must use balenaEtcher or the dd command to create bootable media RISC-V Specific RISC-V development boards only Technology ...&lt;a href=&quot;https://www.deepin.org/en/deepin25-user-qa/&quot;&gt;Read more&lt;/a&gt;</content:encoded> 
	<dc:date>2026-04-08T07:43:33+00:00</dc:date>
	<dc:creator>徐, 小龙</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38694">
	<title>Deepin: (中文) 应用更新| 三款开源设计软件升级，没有Adobe也能做设计</title>
	<link>https://www.deepin.org/en/app-recommendations-26-4-8/</link>
     <content:encoded>Sorry, this entry is only available in 中文.</content:encoded> 
	<dc:date>2026-04-08T03:18:57+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 
<item rdf:about="https://www.greenbone.net/?p=65987">
	<title>GreenboneOS: March 2026 Threat Report: New Critical Risks Span the Enterprise Attack Surface</title>
	<link>https://www.greenbone.net/en/blog/march-2026-threat-report-new-critical-risks-span-the-enterprise-attack-surface/</link>
     <content:encoded>This month exposed new cyber security risks at all levels of enterprise IT infrastructure. New critical vulnerability exposure emerged in perimeter networking gear and core network appliances. Other risks included actively exploited flaws in major browsers, enterprise email clients, agentic workflow platforms, core OS components, and virtually every other aspect of the enterprise IT ecosystem. […]</content:encoded> 
	<dc:date>2026-04-07T11:02:57+00:00</dc:date>
	<dc:creator>Joseph Lee</dc:creator>
</item> 
<item rdf:about="https://tails.net/news/version_7.6.1/">
	<title>Tails: Tails 7.6.1</title>
	<link>https://tails.net/news/version_7.6.1/</link>
     <content:encoded>&lt;p&gt;This release is an emergency release to fix important security
vulnerabilities in &lt;em&gt;Tor Browser&lt;/em&gt;.&lt;/p&gt;

&lt;h1 id=&quot;changes&quot;&gt;Changes and updates&lt;/h1&gt;


&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Update &lt;em&gt;Tor Browser&lt;/em&gt; to
&lt;a href=&quot;https://blog.torproject.org/new-release-tor-browser-1509&quot;&gt;15.0.9&lt;/a&gt;, which
fixes &lt;a href=&quot;https://www.mozilla.org/en-US/security/advisories/mfsa2026-27/&quot;&gt;several vulnerabilities in &lt;em&gt;Firefox&lt;/em&gt;
140.9.1&lt;/a&gt;.&lt;/p&gt;

&lt;div class=&quot;attack&quot;&gt;

&lt;p&gt;We are not aware of these vulnerabilities being exploited in practice.&lt;/p&gt;

&lt;/div&gt;
&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Update the &lt;em&gt;Tor&lt;/em&gt; client to 0.4.9.6.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Update &lt;em&gt;Thunderbird&lt;/em&gt; to &lt;a href=&quot;https://www.thunderbird.net/en-US/thunderbird/140.9.0esr/releasenotes/&quot;&gt;140.9.0&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Update some firmware packages. This improves support for newer hardware:
graphics, Wi-Fi, and so on.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;For more details, read our &lt;a href=&quot;https://gitlab.tails.boum.org/tails/tails/-/blob/master/debian/changelog&quot;&gt;changelog&lt;/a&gt;.&lt;/p&gt;

&lt;h1 id=&quot;get&quot;&gt;Get Tails 7.6.1&lt;/h1&gt;


&lt;h2&gt;To upgrade your Tails USB stick and keep your Persistent Storage&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Automatic upgrades are available from Tails 7.0 or later to 7.6.1.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If you cannot do an automatic upgrade or if Tails fails to start after an
automatic upgrade, please try to do a &lt;a href=&quot;https://tails.net/doc/upgrade/index.en.html#manual&quot;&gt;manual upgrade&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;To install Tails 7.6.1 on a new USB stick&lt;/h2&gt;

&lt;p&gt;Follow our installation instructions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://tails.net/install/windows/index.en.html&quot;&gt;Install from Windows&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://tails.net/install/mac/index.en.html&quot;&gt;Install from macOS&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://tails.net/install/linux/index.en.html&quot;&gt;Install from Linux&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://tails.net/install/expert/index.en.html&quot;&gt;Install from Debian or Ubuntu using the command line and GnuPG&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;div class=&quot;caution&quot;&gt;&lt;p&gt;The Persistent Storage on the USB stick will be lost if
you install instead of upgrading.&lt;/p&gt;&lt;/div&gt;


&lt;h2&gt;To download only&lt;/h2&gt;

&lt;p&gt;If you don&#39;t need installation or upgrade instructions, you can download
Tails 7.6.1 directly:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://tails.net/install/download/index.en.html&quot;&gt;For USB sticks (USB image)&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://tails.net/install/download-iso/index.en.html&quot;&gt;For DVDs and virtual machines (ISO image)&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;</content:encoded> 
	<dc:date>2026-04-07T00:00:00+00:00</dc:date>
	<dc:creator>Tails</dc:creator>
</item> 
<item rdf:about="https://blog.armbian.com/rss/69d3be9b73b8520001057443">
	<title>ARMBIAN: Github Highlights</title>
	<link>https://blog.armbian.com/github-highlights-20/</link>
     <content:encoded>&lt;img alt=&quot;Github Highlights&quot; src=&quot;https://blog.armbian.com/content/images/2026/04/githubhighlights-2.webp&quot; /&gt;&lt;p&gt;This week’s Armbian development saw significant enhancements across hardware support and system functionality. The Arduino UNO Q was officially added, along with new firmware and flash binaries for the QRB2210 and QCM2290 variants. HDMI CEC support was introduced for Rockchip RK3588/RK3576 SoCs, while panel compatibility expanded with updates for Raspberry Pi and Hardkernel ODROID-Vu8S. Key kernel improvements included a bump to version 7.0-rc6 and rewritten patches for Rockchip64-6.18. The release also featured workflow hardening, exclusion of unsupported boards, and fixes for USB-C OTG mode on Odroid-M2. These updates collectively strengthen Armbian’s platform stability and broaden its device coverage.&lt;/p&gt;&lt;h2 id=&quot;changes&quot;&gt;Changes&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;Add Arduino UNO Q. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/268?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#268&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add firmware for Arduino UNO Q (QRB2210/QCM2290). by &lt;a href=&quot;https://github.com/SuperKali?ref=blog.armbian.com&quot;&gt;@SuperKali&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/firmware/pull/123?ref=blog.armbian.com&quot;&gt;armbian/firmware#123&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add HDMI CEC support to Rockchip RK3588/RK3576 SoCs. by &lt;a href=&quot;https://github.com/chaitan3?ref=blog.armbian.com&quot;&gt;@chaitan3&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9622?ref=blog.armbian.com&quot;&gt;armbian/build#9622&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Agatti: add flash binaries for Arduino UNO Q (QRB2210). by &lt;a href=&quot;https://github.com/SuperKali?ref=blog.armbian.com&quot;&gt;@SuperKali&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/qcombin/pull/1?ref=blog.armbian.com&quot;&gt;armbian/qcombin#1&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Arduino logo. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/269?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#269&lt;/a&gt;&lt;/li&gt;&lt;li&gt;ch13726a: Added missing MIPI_DSI_MODE_VIDEO. by &lt;a href=&quot;https://github.com/kay-lambdadelta?ref=blog.armbian.com&quot;&gt;@kay-lambdadelta&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9621?ref=blog.armbian.com&quot;&gt;armbian/build#9621&lt;/a&gt;&lt;/li&gt;&lt;li&gt;config: rockchip64: build Motorcomm YT6801 drivers built-in for OOB Ethernet. by &lt;a href=&quot;https://github.com/c127dev?ref=blog.armbian.com&quot;&gt;@c127dev&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9625?ref=blog.armbian.com&quot;&gt;armbian/build#9625&lt;/a&gt;&lt;/li&gt;&lt;li&gt;drm: add support for rpi panel v2. by &lt;a href=&quot;https://github.com/ackPeng?ref=blog.armbian.com&quot;&gt;@ackPeng&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/linux-rockchip/pull/465?ref=blog.armbian.com&quot;&gt;armbian/linux-rockchip#465&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Exclude end-of-support boards from armbian-images.json. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/271?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#271&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Harden data-update-partners workflow. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/270?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#270&lt;/a&gt;&lt;/li&gt;&lt;li&gt;mainline: bump &lt;code&gt;edge&lt;/code&gt; to 7.0-rc6. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9618?ref=blog.armbian.com&quot;&gt;armbian/build#9618&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Odroid-M2: Add support for Hardkernel ODROID-Vu8S panel. by &lt;a href=&quot;https://github.com/mlegenovic?ref=blog.armbian.com&quot;&gt;@mlegenovic&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9627?ref=blog.armbian.com&quot;&gt;armbian/build#9627&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Odroid-M2: Fix USB-C port in OTG mode. by &lt;a href=&quot;https://github.com/mlegenovic?ref=blog.armbian.com&quot;&gt;@mlegenovic&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9633?ref=blog.armbian.com&quot;&gt;armbian/build#9633&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Remove radxa-dragon-q6a from targets-release-nightly blacklist. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/267?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#267&lt;/a&gt;&lt;/li&gt;&lt;li&gt;rockchip-vendor: CONFIG_BT_HCIBTUSB=m. by &lt;a href=&quot;https://github.com/vidplace7?ref=blog.armbian.com&quot;&gt;@vidplace7&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9628?ref=blog.armbian.com&quot;&gt;armbian/build#9628&lt;/a&gt;&lt;/li&gt;&lt;li&gt;rockchip64-6.18: rewrite kernel patches against 6.18.21. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9629?ref=blog.armbian.com&quot;&gt;armbian/build#9629&lt;/a&gt;&lt;/li&gt;&lt;li&gt;SpacemiT: Disable k1-usb: add disconnect function support. by &lt;a href=&quot;https://github.com/pyavitz?ref=blog.armbian.com&quot;&gt;@pyavitz&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9620?ref=blog.armbian.com&quot;&gt;armbian/build#9620&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;</content:encoded> 
	<dc:date>2026-04-06T14:10:37+00:00</dc:date>
	<dc:creator>Michael Robinson</dc:creator>
</item> 
<item rdf:about="https://www.bunsenlabs.org/feed/news/2f42555b-1f31-5a60-ba61-a172ccd4e907">
	<title>BunsenLabs Linux: Forum Reorganizing</title>
	<link>https://forums.bunsenlabs.org/viewtopic.php?id=9761</link>
     <content:encoded>&lt;div class=&quot;postmsg&quot;&gt;
 &lt;p&gt;
  Now that carbon has been released, the forums are bit out of date. The Death Star is needed. As a test, we will use it on... ArchLabs &amp;amp; Friends! You&#39;re far too trusting.
 &lt;/p&gt;
 &lt;p&gt;
  &lt;a href=&quot;https://forums.bunsenlabs.org/viewtopic.php?id=9760&quot; rel=&quot;nofollow&quot;&gt;
   https://forums.bunsenlabs.org/viewtopic.php?id=9760
  &lt;/a&gt;
 &lt;/p&gt;
 &lt;p&gt;
  Vote now to destroy or save. It&#39;s a barbaric system but, George Lucas, you know...
 &lt;/p&gt;
&lt;/div&gt;</content:encoded> 
	<dc:date>2026-04-05T00:00:00+00:00</dc:date>
	<dc:creator>BunsenLabs Linux</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38682">
	<title>Deepin: deepin Community Monthly Report for March 2026</title>
	<link>https://www.deepin.org/en/deepin-community-monthly-report-2026-3/</link>
     <content:encoded>Learn more about deepin details, historical versions, user reviews, etc.: https://distrowatch.com/table.php?distribution=deepin I. March Community Data Overview   II. Community Products 1. deepin 25.0.13 Internal Testing Released: Stability Enhancements and Multi-Scenario Fixes In March, deepin 25 internal test version 25.0.13 was pushed, focusing on fixing high-frequency community feedback issues, further improving overall system stability: Security &amp;amp; Stability Enhancements: Fixed multiple kernel security vulnerabilities; optimized system exception logs in scenarios such as suspend/resume, hibernation, and reboot stress testing, improving long-term operational reliability. Desktop &amp;amp; Window Management Optimizations: Fixed anomalies and crashes in X11/Treeland during multi-screen switching, lock screen, auto-hide taskbar, and Alt+Tab switching scenarios. Application ...&lt;a href=&quot;https://www.deepin.org/en/deepin-community-monthly-report-2026-3/&quot;&gt;Read more&lt;/a&gt;</content:encoded> 
	<dc:date>2026-04-03T07:46:10+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38665">
	<title>Deepin: (中文) 免费开源！deepin 用户自研字体管理器，现已上架应用商店</title>
	<link>https://www.deepin.org/en/deepin-typevault-v0-8/</link>
     <content:encoded>Sorry, this entry is only available in 中文.</content:encoded> 
	<dc:date>2026-04-03T02:54:22+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 
<item rdf:about="https://sparkylinux.org/?p=14053">
	<title>SparkyLinux: Sparky news 2026/03</title>
	<link>https://sparkylinux.org/sparky-news-2026-03/</link>
     <content:encoded>&lt;p&gt;The 3rd monthly Sparky project and donate report of the 2026: – Linux kernel updated up to 6.19.10, 6.18.20-LTS, 6.12.79-LTS – added to repos: Electron-Mail, Opera GX – the CLI sparky-installer got an option to install 32 grub-efi on 64bit machines; sparky testing (9) only – Sparky 2026.03 &amp;amp; Special Editions of the testing/rolling line released – according of change the nitrogen wallpaper…&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://sparkylinux.org/sparky-news-2026-03/&quot; rel=&quot;nofollow&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;</content:encoded> 
	<dc:date>2026-04-01T18:24:15+00:00</dc:date>
	<dc:creator>pavroo</dc:creator>
</item> 
<item rdf:about="https://blog.armbian.com/rss/69c3f66e3316030001e10e36">
	<title>ARMBIAN: Armbian Newsletter</title>
	<link>https://blog.armbian.com/armbian-newsletter-templa/</link>
     <content:encoded>&lt;img alt=&quot;Armbian Newsletter&quot; src=&quot;https://blog.armbian.com/content/images/2026/04/Neimenovano.png&quot; /&gt;&lt;p&gt;Welcome to the latest Armbian Newsletter: your source for the latest developments, community highlights, and behind-the-scenes updates from the world of open-source ARM and RISC-V computing.&lt;/p&gt;&lt;p&gt;The past two months have been particularly active for the embedded ecosystem. At &lt;strong&gt;EMBEDDED WORLD 2026&lt;/strong&gt;, developers, hardware vendors, and open-source communities gathered to showcase the latest innovations shaping the future of embedded computing. In parallel, the Armbian project continues to evolve with new releases, expanded board support, and ongoing improvements to the build framework driven by the contributions of its global community and the growing demand for reliable Linux on ARM and RISC-V platforms.&lt;/p&gt;&lt;hr /&gt;&lt;div class=&quot;kg-card kg-cta-card kg-cta-bg-grey kg-cta-minimal  kg-cta-has-img  &quot;&gt;
            
                &lt;div class=&quot;kg-cta-sponsor-label-wrapper&quot;&gt;
                    &lt;div class=&quot;kg-cta-sponsor-label&quot;&gt;
                        &lt;span style=&quot;white-space: pre-wrap;&quot;&gt;SPONSORED&lt;/span&gt;
                    &lt;/div&gt;
                &lt;/div&gt;
            
            &lt;div class=&quot;kg-cta-content&quot;&gt;
                
                    &lt;div class=&quot;kg-cta-image-container&quot;&gt;
                        &lt;img alt=&quot;Armbian Newsletter&quot; src=&quot;https://blog.armbian.com/content/images/2025/10/ChatGPT-Image-Oct-17--2025--07_29_49-AM.png&quot; /&gt;
                    &lt;/div&gt;
                
                
                    &lt;div class=&quot;kg-cta-content-inner&quot;&gt;
                    
                        &lt;div class=&quot;kg-cta-text&quot;&gt;
                            &lt;p&gt;&lt;a class=&quot;cta-link-color&quot; href=&quot;https://www.armbian.com/donate/?ref=blog.armbian.com&quot; rel=&quot;noreferrer&quot;&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;Join us in making open source better&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;! Every donation helps Armbian improve &lt;/span&gt;&lt;b&gt;&lt;strong style=&quot;white-space: pre-wrap;&quot;&gt;security&lt;/strong&gt;&lt;/b&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;, &lt;/span&gt;&lt;b&gt;&lt;strong style=&quot;white-space: pre-wrap;&quot;&gt;performance&lt;/strong&gt;&lt;/b&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;, and &lt;/span&gt;&lt;b&gt;&lt;strong style=&quot;white-space: pre-wrap;&quot;&gt;reliability&lt;/strong&gt;&lt;/b&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt; — so everyone can enjoy a solid foundation for their devices.&lt;/span&gt;&lt;/p&gt;
                        &lt;/div&gt;
                    
                    
                    &lt;/div&gt;
                
            &lt;/div&gt;
        &lt;/div&gt;&lt;figure class=&quot;kg-card kg-bookmark-card&quot;&gt;&lt;a class=&quot;kg-bookmark-container&quot; href=&quot;https://blog.armbian.com/github-highlights-19/&quot;&gt;&lt;div class=&quot;kg-bookmark-content&quot;&gt;&lt;div class=&quot;kg-bookmark-title&quot;&gt;Github Highlights&lt;/div&gt;&lt;div class=&quot;kg-bookmark-description&quot;&gt;This week in Armbian development saw a significant expansion of hardware support, including new board images and compatibility for devices such as the Ariaboard Photonicat 2, SpacemiT MUSE Book, NanoPC T6 Plus, and Mekotronics R58S2. Kernel patches were updated across multiple platforms, notably for Rockchip and Sunxi families, enhancing stability&lt;/div&gt;&lt;div class=&quot;kg-bookmark-metadata&quot;&gt;&lt;img alt=&quot;Armbian Newsletter&quot; class=&quot;kg-bookmark-icon&quot; src=&quot;https://blog.armbian.com/content/images/icon/favicon-49.ico&quot; /&gt;&lt;span class=&quot;kg-bookmark-author&quot;&gt;Armbian blog&lt;/span&gt;&lt;span class=&quot;kg-bookmark-publisher&quot;&gt;Michael Robinson&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;kg-bookmark-thumbnail&quot;&gt;&lt;img alt=&quot;Armbian Newsletter&quot; src=&quot;https://blog.armbian.com/content/images/thumbnail/optimized_laptop.jpg&quot; /&gt;&lt;/div&gt;&lt;/a&gt;&lt;/figure&gt;&lt;figure class=&quot;kg-card kg-bookmark-card&quot;&gt;&lt;a class=&quot;kg-bookmark-container&quot; href=&quot;https://blog.armbian.com/my-first-embedded-world-and-i-already-cant-wait-for-the-next/&quot;&gt;&lt;div class=&quot;kg-bookmark-content&quot;&gt;&lt;div class=&quot;kg-bookmark-title&quot;&gt;My First embedded world and I Already Can’t Wait for the Next&lt;/div&gt;&lt;div class=&quot;kg-bookmark-description&quot;&gt;I’d been putting this off for years. Every March, I’d read someone else’s embedded world recap, tell myself “next year”, and go back to my terminal. This year I actually went and I’m still processing everything I saw. First things first: the team Before I talk about any stand or&lt;/div&gt;&lt;div class=&quot;kg-bookmark-metadata&quot;&gt;&lt;img alt=&quot;Armbian Newsletter&quot; class=&quot;kg-bookmark-icon&quot; src=&quot;https://blog.armbian.com/content/images/icon/favicon-50.ico&quot; /&gt;&lt;span class=&quot;kg-bookmark-author&quot;&gt;Armbian blog&lt;/span&gt;&lt;span class=&quot;kg-bookmark-publisher&quot;&gt;Daniele Briguglio&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;kg-bookmark-thumbnail&quot;&gt;&lt;img alt=&quot;Armbian Newsletter&quot; src=&quot;https://blog.armbian.com/content/images/thumbnail/emb.jpg&quot; /&gt;&lt;/div&gt;&lt;/a&gt;&lt;/figure&gt;&lt;figure class=&quot;kg-card kg-bookmark-card&quot;&gt;&lt;a class=&quot;kg-bookmark-container&quot; href=&quot;https://blog.armbian.com/armbian-q1-2026-technical-milestones-and-the-road-to-embedded-world/&quot;&gt;&lt;div class=&quot;kg-bookmark-content&quot;&gt;&lt;div class=&quot;kg-bookmark-title&quot;&gt;Armbian Q1 2026: Technical Milestones and the Road to Embedded World&lt;/div&gt;&lt;div class=&quot;kg-bookmark-description&quot;&gt;The first quarter of 2026 has been a period of significant technical consolidation for the Armbian project. Driven by the v26.02 (Goa) release cycle, the project has focused on three core pillars: aggressive framework refactoring, the stable rollout of the Linux 6.18 LTS kernel, and the maturation of&lt;/div&gt;&lt;div class=&quot;kg-bookmark-metadata&quot;&gt;&lt;img alt=&quot;Armbian Newsletter&quot; class=&quot;kg-bookmark-icon&quot; src=&quot;https://blog.armbian.com/content/images/icon/favicon-51.ico&quot; /&gt;&lt;span class=&quot;kg-bookmark-author&quot;&gt;Armbian blog&lt;/span&gt;&lt;span class=&quot;kg-bookmark-publisher&quot;&gt;Michael Robinson&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;kg-bookmark-thumbnail&quot;&gt;&lt;img alt=&quot;Armbian Newsletter&quot; src=&quot;https://blog.armbian.com/content/images/thumbnail/q1_repot.jpeg&quot; /&gt;&lt;/div&gt;&lt;/a&gt;&lt;/figure&gt;</content:encoded> 
	<dc:date>2026-04-01T16:25:06+00:00</dc:date>
	<dc:creator>Michael Robinson</dc:creator>
</item> 
<item rdf:about="https://blog.armbian.com/rss/69c28cec4c791000017be643">
	<title>ARMBIAN: Armbian Q1 2026: Technical Milestones and the Road to Embedded World</title>
	<link>https://blog.armbian.com/armbian-q1-2026-technical-milestones-and-the-road-to-embedded-world/</link>
     <content:encoded>&lt;h2 id=&quot;id&quot;&gt;&lt;/h2&gt;&lt;img alt=&quot;Armbian Q1 2026: Technical Milestones and the Road to Embedded World&quot; src=&quot;https://blog.armbian.com/content/images/2026/04/q1_repot.jpeg&quot; /&gt;&lt;p&gt;The first quarter of 2026 has been a period of significant technical consolidation for the Armbian project. Driven by the &lt;strong&gt;v26.02 (Goa)&lt;/strong&gt; release cycle, the project has focused on three core pillars: aggressive framework refactoring, the stable rollout of the &lt;strong&gt;Linux 6.18 LTS&lt;/strong&gt; kernel, and the maturation of the &lt;strong&gt;Armbian Imager&lt;/strong&gt; utility.&lt;/p&gt;&lt;hr /&gt;&lt;h3 id=&quot;core-framework-refactoring&quot;&gt;Core Framework Refactoring&lt;/h3&gt;&lt;p&gt;A primary objective this quarter was the reduction of technical debt within the &lt;code&gt;armbian/build&lt;/code&gt; repository. The development team initiated a systematic cleanup to improve build reliability and maintenance.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Toolchain Optimization:&lt;/strong&gt; Through a series of pull requests, including &lt;a href=&quot;https://github.com/armbian/build/pull/9218?ref=blog.armbian.com&quot; rel=&quot;noreferrer&quot;&gt;&lt;strong&gt;#9218&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;, &lt;/strong&gt;&lt;a href=&quot;https://github.com/armbian/build/pull/9252?ref=blog.armbian.com&quot; rel=&quot;noreferrer&quot;&gt;&lt;strong&gt;#9252&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;, and &lt;/strong&gt;&lt;a href=&quot;https://github.com/armbian/build/pull/9256?ref=blog.armbian.com&quot; rel=&quot;noreferrer&quot;&gt;&lt;strong&gt;#9256&lt;/strong&gt;&lt;/a&gt;, significant &quot;dead code&quot; was removed from the internal toolchain. This refactoring simplifies the logic required to support a diversifying array of ARM and RISC-V architectures.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;mmdebstrap Transition:&lt;/strong&gt; The framework has officially transitioned to &lt;strong&gt;mmdebstrap&lt;/strong&gt; as the exclusive engine for rootfs creation (&lt;a href=&quot;https://github.com/armbian/build/pull/9512?ref=blog.armbian.com&quot; rel=&quot;noreferrer&quot;&gt;&lt;strong&gt;#9512&lt;/strong&gt;&lt;/a&gt;). By deprecating the legacy debootstrap method, the project ensures faster, more consistent, and reproducible builds across varied host environments.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Bash Modernization:&lt;/strong&gt; Internal build scripts have been transitioned from POSIX to Bash syntax to leverage modern shell features and enhance overall script reliability.&lt;/li&gt;&lt;/ul&gt;&lt;h3 id=&quot;kernel-and-hardware-integration&quot;&gt;Kernel and Hardware Integration&lt;/h3&gt;&lt;p&gt;Q1 marked the broad adoption of the &lt;strong&gt;Linux 6.18 LTS&lt;/strong&gt; kernel series, providing improved driver support and hardware abstraction for tier-1 platforms.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Linux 6.18 LTS Rollout:&lt;/strong&gt; Stable support for the 6.18.y kernel was merged for major families, including &lt;strong&gt;meson64&lt;/strong&gt;, &lt;strong&gt;rockchip64&lt;/strong&gt;, and &lt;strong&gt;UEFI&lt;/strong&gt; targets (&lt;a href=&quot;https://github.com/armbian/build/pull/9069?ref=blog.armbian.com&quot; rel=&quot;noreferrer&quot;&gt;&lt;strong&gt;#9069&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt;, &lt;/strong&gt;&lt;a href=&quot;https://github.com/armbian/build/pull/9086?ref=blog.armbian.com&quot; rel=&quot;noreferrer&quot;&gt;&lt;strong&gt;#9086&lt;/strong&gt;&lt;/a&gt;).&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Hardware Support Expansion:&lt;/strong&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;SpacemiT MusePi Pro:&lt;/strong&gt; Full integration and kernel patching were completed (&lt;a href=&quot;https://github.com/armbian/build/pull/9422?ref=blog.armbian.com&quot; rel=&quot;noreferrer&quot;&gt;&lt;strong&gt;#9422&lt;/strong&gt;&lt;/a&gt;).&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Orange Pi RV2:&lt;/strong&gt; Initial support and nightly build availability were established for this RISC-V target.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Radxa Rock 4D &amp;amp; ODROID M2:&lt;/strong&gt; These boards were elevated to the stable support tier within the 26.02 release.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Firmware Updates:&lt;/strong&gt; U-Boot was bumped to &lt;strong&gt;v2026.01&lt;/strong&gt; for several platforms. Notably, boot delays on the Orange Pi 5 series were addressed via updated U-Boot candidates (&lt;a href=&quot;https://github.com/armbian/build/pull/9450?ref=blog.armbian.com&quot; rel=&quot;noreferrer&quot;&gt;&lt;strong&gt;#9450&lt;/strong&gt;&lt;/a&gt;).&lt;/li&gt;&lt;/ul&gt;&lt;h3 id=&quot;ecosystem-tools-armbian-imager&quot;&gt;Ecosystem Tools: Armbian Imager&lt;/h3&gt;&lt;p&gt;The &lt;strong&gt;Armbian Imager&lt;/strong&gt; has transitioned from a utility to a cornerstone of the project’s user experience, with a focus on security and onboarding efficiency.&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Cross-Platform Security:&lt;/strong&gt; Code signing was implemented for both macOS and Windows artifacts to reduce installation friction for non-Linux users (&lt;strong&gt;imager#87&lt;/strong&gt;).&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Performance Improvements:&lt;/strong&gt; The utility now features optimized image decompression and enhanced device disconnect detection (&lt;a href=&quot;https://github.com/armbian/imager/pull/28?ref=blog.armbian.com&quot; rel=&quot;noreferrer&quot;&gt;&lt;strong&gt;imager#28&lt;/strong&gt;&lt;/a&gt;).&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Automated Reporting:&lt;/strong&gt; A new &lt;strong&gt;AI Actions Report&lt;/strong&gt; workflow (&lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/165?ref=blog.armbian.com&quot; rel=&quot;noreferrer&quot;&gt;&lt;strong&gt;armbian.github.io#165&lt;/strong&gt;&lt;/a&gt;) was implemented to automate development highlights, providing greater transparency into the commit history for the community.&lt;/li&gt;&lt;/ul&gt;&lt;h3 id=&quot;strategic-industry-alignment&quot;&gt;Strategic Industry Alignment&lt;/h3&gt;&lt;p&gt;The technical trajectory of Q1 was intentionally aligned with Armbian’s presence at &lt;strong&gt;Embedded World 2026&lt;/strong&gt; in Nuremberg.&lt;/p&gt;&lt;p&gt;By showcasing the framework and Imager as guests of &lt;strong&gt;Seeed Studio&lt;/strong&gt;, the project demonstrated its readiness for industrial-scale deployment. The shift toward mainline kernel and U-Boot support—specifically targeting the retirement of vendor-specific bootloaders—remains a priority for long-term security and professional-grade stability.&lt;/p&gt;&lt;hr /&gt;&lt;p&gt;&lt;strong&gt;Contributors &amp;amp; Credits&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;The progress in Q1 2026 is the result of sustained contributions from the Armbian Dev team and the wider community. Detailed changelogs and commit histories are available at &lt;a href=&quot;https://github.com/armbian/build?ref=blog.armbian.com&quot; rel=&quot;noopener&quot;&gt;github.com/armbian/build&lt;/a&gt;.&lt;/p&gt;</content:encoded> 
	<dc:date>2026-04-01T16:06:48+00:00</dc:date>
	<dc:creator>Michael Robinson</dc:creator>
</item> 
<item rdf:about="https://blog.armbian.com/rss/69c5619a73b8520001050f4b">
	<title>ARMBIAN: My first embedded world and I already can&#39;t wait for the next</title>
	<link>https://blog.armbian.com/my-first-embedded-world-and-i-already-cant-wait-for-the-next/</link>
     <content:encoded>&lt;img alt=&quot;My first embedded world and I already can&#39;t wait for the next&quot; src=&quot;https://blog.armbian.com/content/images/2026/04/emb.jpg&quot; /&gt;&lt;p&gt;I&amp;amp;aposd been putting this off for years. Every March, I&amp;amp;aposd read someone else&amp;amp;aposs embedded world recap, tell myself &lt;em&gt;&quot;next year&quot;&lt;/em&gt;, and go back to my terminal. This year I actually went and I&amp;amp;aposm still processing everything I saw.&lt;/p&gt;&lt;h2 id=&quot;first-things-first-the-team&quot;&gt;First things first: the team&lt;/h2&gt;&lt;p&gt;Before I talk about any stand or chip, I need to tell you what made this trip different from anything I&amp;amp;aposve done before. There were five of us from the Armbian team at the show: Igor, Werner, Meko, amazingfate, and me. Five people. Four countries. Some of us had worked together for years and never met in person.&lt;/p&gt;&lt;p&gt;You know how it is in open-source, you collaborate through GitHub, you argue about patches on the mailing list, you review each other&amp;amp;aposs code at odd hours. But you don&amp;amp;apost always know the face behind the username. Meeting those people for real, shaking their hand, having a coffee together, that&amp;amp;aposs something no pull request can replicate. And honestly, it was worth the trip on its own.&lt;/p&gt;&lt;h2 id=&quot;the-show-itself-i-wasnt-ready-for-this&quot;&gt;The show itself: I wasn&amp;amp;apost ready for this&lt;/h2&gt;&lt;p&gt;Arriving at the Nuremberg Messe for the first time is a genuine shock. I knew embedded world was big. I did not know it was &lt;em&gt;this&lt;/em&gt; big. Enormous halls, thousands of exhibitors, tens of thousands of attendees. On day one I got genuinely lost between the pavilions spent a solid half hour wandering with no idea where I was. I&amp;amp;aposm told this is a rite of passage.&lt;/p&gt;&lt;p&gt;What surprised me most about the atmosphere is how &lt;em&gt;concrete&lt;/em&gt; everything felt. This isn&amp;amp;apost a conference where people pitch vaporware from behind polished booths. Engineers and developers everywhere, talking about real problems, showing real hardware. You can walk from a giant like Qualcomm to a small team doing something fascinating with a handful of sensors and both conversations feel equally substantive.&lt;/p&gt;&lt;h2 id=&quot;what-we-saw-on-the-floor&quot;&gt;What we saw on the floor&lt;/h2&gt;&lt;p&gt;&lt;strong&gt;Rockchip&lt;/strong&gt; was a mandatory stop for us, and they didn&amp;amp;apost disappoint. On their stand: the &lt;strong&gt;RK3572 EVB&lt;/strong&gt;  an evaluation board we hadn&amp;amp;apost seen in person before. Reading specs in a datasheet is one thing. Seeing the board running, understanding its real-world size, its connectors, how it behaves, that&amp;amp;aposs a completely different kind of knowledge. The kind you can only get by showing up.&lt;/p&gt;&lt;figure class=&quot;kg-card kg-image-card kg-card-hascaption&quot;&gt;&lt;img alt=&quot;My first embedded world and I already can&#39;t wait for the next&quot; class=&quot;kg-image&quot; height=&quot;1280&quot; src=&quot;https://blog.armbian.com/content/images/2026/03/EW26-Armbian-Rockchip-3.jpg&quot; width=&quot;1920&quot; /&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;Rockchip Employees (Most left and right) and Jianfeng Liu, Mecid Urganci &amp;amp; Igor Pecovnik&lt;/span&gt;&lt;/figure&gt;&lt;p&gt;&lt;strong&gt;Seeed Studio&lt;/strong&gt; had live demos of &lt;strong&gt;AI Vision and AI Sound&lt;/strong&gt;, and the one that genuinely impressed me was their AI camera with a built-in NPU doing real-time object recognition. I&amp;amp;aposm not talking about laggy, stuttering inference, it was smooth. Fluid. The kind of performance that makes you stop walking and just stare for a minute. Seeing that level of real-time AI running on a compact edge device was one of those moments where the future stops feeling abstract.&lt;/p&gt;&lt;figure class=&quot;kg-card kg-image-card kg-card-hascaption&quot;&gt;&lt;img alt=&quot;My first embedded world and I already can&#39;t wait for the next&quot; class=&quot;kg-image&quot; height=&quot;720&quot; src=&quot;https://blog.armbian.com/content/images/2026/04/image.png&quot; width=&quot;1280&quot; /&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;Seedstudio x Armbian (Maximilian Riedl , Igor Pecovnik, Jianfeng Liu, Daniele Briguglio)&lt;/span&gt;&lt;/figure&gt;&lt;p&gt;&lt;strong&gt;Qualcomm&lt;/strong&gt; brought the &lt;strong&gt;Arduino Ventuno Q&lt;/strong&gt;, and this is where things got interesting and a little funny. meko had already run his benchmarks on the board when amazingfate noticed something: Chromium&amp;amp;aposs hardware acceleration wasn&amp;amp;apost enabled. So he enabled it. Right there. Directly on the board. In front of the stand staff.&lt;/p&gt;&lt;p&gt;The reaction from the Qualcomm team? Complete, genuine astonishment. They didn&amp;amp;apost see it coming. That&amp;amp;aposs what happens when you bring a group of Armbian developers to a trade show, we don&amp;amp;apost just look at things, we poke at them.&lt;/p&gt;&lt;figure class=&quot;kg-card kg-image-card kg-card-hascaption&quot;&gt;&lt;img alt=&quot;My first embedded world and I already can&#39;t wait for the next&quot; class=&quot;kg-image&quot; height=&quot;1333&quot; src=&quot;https://blog.armbian.com/content/images/2026/03/Foundries-Armbian.jpeg&quot; width=&quot;2000&quot; /&gt;&lt;span style=&quot;white-space: pre-wrap;&quot;&gt;Armbian at the Foundries.io booth&lt;/span&gt;&lt;/figure&gt;&lt;p&gt;&lt;strong&gt;Collabora&lt;/strong&gt; was present at the show, and amazingfate got to meet some of the team. Their kernel and GPU driver work is always relevant to what we do, so that conversation mattered even if I wasn&amp;amp;apost there for it personally.&lt;/p&gt;&lt;h2 id=&quot;the-moment-that-hit-hardest-armbian-on-the-beaglebadge&quot;&gt;The moment that hit hardest: Armbian on the BeagleBadge&lt;/h2&gt;&lt;p&gt;During a meeting with the &lt;strong&gt;BeagleBoard.org&lt;/strong&gt; team inside the show, they showed us their brand new project: the &lt;strong&gt;BeagleBadge&lt;/strong&gt;. Launched right there at embedded world 2026, it won Best in Show in the Wearables category; a Linux-powered wearable badge with a 4.2&quot; ePaper display, dual-core ARM Cortex-A53, Wi-Fi 6, LoRa, and more sensors than I can list here. Built around the Texas Instruments AM62L32, manufactured by Seeed Studio.&lt;/p&gt;&lt;p&gt;Impressive hardware. But here&amp;amp;aposs the part that actually stopped me in my tracks: &lt;strong&gt;Armbian was running on it.&lt;/strong&gt; There&amp;amp;aposs an official &lt;em&gt;&quot;Armbian BeagleBadge demo for EW2026&quot;&lt;/em&gt; image — Debian Trixie, Linux 6.12 — listed right on the BeagleBoard.org site.&lt;/p&gt;&lt;p&gt;Our OS. On a Best-in-Show winning badge. At the world&amp;amp;aposs biggest embedded show.&lt;/p&gt;&lt;p&gt;That&amp;amp;aposs not a small thing. That&amp;amp;aposs the community&amp;amp;aposs work showing up exactly where it matters.&lt;/p&gt;&lt;figure class=&quot;kg-card kg-image-card&quot;&gt;&lt;img alt=&quot;My first embedded world and I already can&#39;t wait for the next&quot; class=&quot;kg-image&quot; height=&quot;563&quot; src=&quot;https://blog.armbian.com/content/images/2026/04/image-2.png&quot; width=&quot;1000&quot; /&gt;&lt;/figure&gt;&lt;h2 id=&quot;what-embedded-world-taught-me-about-where-this-industry-is-going&quot;&gt;What embedded world taught me about where this industry is going&lt;/h2&gt;&lt;p&gt;Three days of walking, talking, and observing gives you a pretty clear picture of the currents moving through the embedded world right now.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Edge AI is not a trend anymore, it&amp;amp;aposs infrastructure.&lt;/strong&gt; Every major vendor had something running inference locally, without cloud, on modest hardware. This is real, it&amp;amp;aposs shipping, and it&amp;amp;aposs going to reshape what we expect embedded systems to do.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;Open-source has earned its seat at the table.&lt;/strong&gt; I half-expected it to be the hobbyist corner of the show. It wasn&amp;amp;apost. Companies are building on Linux, on open stacks, on ecosystems maintained by communities like ours. That&amp;amp;aposs not charity, it&amp;amp;aposs strategy. And it means the work we do in Armbian matters more than we sometimes give ourselves credit for.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;The line between prototype and product is razor thin.&lt;/strong&gt; At most stands you&amp;amp;aposd see a mix: shipping products, reference designs, things that will exist in six months. That gap is where the interesting information lives; what&amp;amp;aposs coming, which platforms are getting serious investment, which vendors are committed to mainline Linux support. You don&amp;amp;apost learn that from a datasheet. You learn it by being there.&lt;/p&gt;&lt;h2 id=&quot;would-i-go-back&quot;&gt;Would I go back?&lt;/h2&gt;&lt;p&gt;Without a second thought.&lt;/p&gt;&lt;p&gt;If you&amp;amp;aposre an Armbian community member who&amp;amp;aposs been putting this off the same way I was stop putting it off. The technical exposure is valuable. The networking is real. And meeting the people you build things with, face to face, is something that doesn&amp;amp;apost have a substitute.&lt;/p&gt;&lt;p&gt;The show runs every year in Nuremberg. I&amp;amp;aposll be there.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;See you in 2027. 🇩🇪&lt;/strong&gt;&lt;/p&gt;</content:encoded> 
	<dc:date>2026-04-01T16:05:59+00:00</dc:date>
	<dc:creator>Daniele Briguglio</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38650">
	<title>Deepin: (中文) 470+次投递，390+人参与：这场 Wine 生态共建，我们一起创造了什么？</title>
	<link>https://www.deepin.org/en/deepin-wine-ecosystem-co-construction/</link>
     <content:encoded>Sorry, this entry is only available in 中文.</content:encoded> 
	<dc:date>2026-04-01T10:24:51+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 
<item rdf:about="https://pardus.org.tr/?p=25960">
	<title>Pardus: Pardus 25.1 Sürümü Yayımlandı</title>
	<link>https://pardus.org.tr/pardus-25-1-surumu-yayimlandi/</link>
     <content:encoded>TÜBİTAK tarafından geliştirilmeye devam edilen Pardus’un 25.1 sürümü yayımlandı. Pardus 25.1; Pardus 25 ailesinin ilk ara sürümüdür.</content:encoded> 
	<dc:date>2026-04-01T05:53:50+00:00</dc:date>
	<dc:creator>Mohammad Niaei</dc:creator>
</item> 
<item rdf:about="https://blog.armbian.com/rss/69cb345e73b8520001050f67">
	<title>ARMBIAN: Github Highlights</title>
	<link>https://blog.armbian.com/github-highlights-19/</link>
     <content:encoded>&lt;img alt=&quot;Github Highlights&quot; src=&quot;https://blog.armbian.com/content/images/2026/03/optimized_laptop.jpg&quot; /&gt;&lt;p&gt;This week in Armbian development saw a significant expansion of hardware support, including new board images and compatibility for devices such as the Ariaboard Photonicat 2, SpacemiT MUSE Book, NanoPC T6 Plus, and Mekotronics R58S2. Kernel patches were updated across multiple platforms, notably for Rockchip and Sunxi families, enhancing stability and performance. Several new modules were introduced in the configuration framework, including browser-based code-server, memory management, Docker log viewing, and subscription tracking. Improvements to documentation, security hardening, and code formatting were also implemented. Notable fixes addressed USB, Ethernet, and device-specific issues, while ZFS functionality and tuning interfaces received updates. The release continues Armbian’s commitment to broad hardware support and robust system features.&lt;/p&gt;&lt;p&gt;&lt;a href=&quot;https://private-user-images.githubusercontent.com/6281704/571252956-6a6254c2-8041-477f-8276-8258ce2903fa.JPG?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NzQ5MjU2ODUsIm5iZiI6MTc3NDkyNTM4NSwicGF0aCI6Ii82MjgxNzA0LzU3MTI1Mjk1Ni02YTYyNTRjMi04MDQxLTQ3N2YtODI3Ni04MjU4Y2UyOTAzZmEuSlBHP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI2MDMzMSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNjAzMzFUMDI0OTQ1WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MDZkNmUzNjE5MjQ2MjgxNzQ3NGFmZGY1MGQ1NDFmMjEzMWIxNjJlMjY4ZTk2ZDAzYjE3NDM3ZGMyOTU4MjIxYSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.j7_AFXlgF-5zj1uIJIrmyPVeUoOX9L7xgqYo5NXXshM&amp;amp;ref=blog.armbian.com&quot; rel=&quot;noopener noreferrer&quot;&gt;&lt;/a&gt;&lt;/p&gt;&lt;h2 id=&quot;changes&quot;&gt;Changes&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;action: fix typos, update defaults, and harden GPG signing. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9613?ref=blog.armbian.com&quot;&gt;armbian/build#9613&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add Ariaboard Photonicat 2 support for rockchip64-6.18. by &lt;a href=&quot;https://github.com/HackingGate?ref=blog.armbian.com&quot;&gt;@HackingGate&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9535?ref=blog.armbian.com&quot;&gt;armbian/build#9535&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add container_type field to Uptime Kuma config. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/776?ref=blog.armbian.com&quot;&gt;armbian/configng#776&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add image and reusable slug for Qidi X-4. by &lt;a href=&quot;https://github.com/Shadowrom2020?ref=blog.armbian.com&quot;&gt;@Shadowrom2020&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/262?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#262&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add Laptop SpacemiT MUSE Book. by &lt;a href=&quot;https://github.com/pyavitz?ref=blog.armbian.com&quot;&gt;@pyavitz&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9591?ref=blog.armbian.com&quot;&gt;armbian/build#9591&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add line breaks to improve .md rendering. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/784?ref=blog.armbian.com&quot;&gt;armbian/configng#784&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add NanoPC T6 plus image. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/266?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#266&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add radxa-dragon-q6a to nightly release blacklist. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/260?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#260&lt;/a&gt;&lt;/li&gt;&lt;li&gt;add recomputer rk3588-devkit support. by &lt;a href=&quot;https://github.com/ackPeng?ref=blog.armbian.com&quot;&gt;@ackPeng&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/linux-rockchip/pull/460?ref=blog.armbian.com&quot;&gt;armbian/linux-rockchip#460&lt;/a&gt;&lt;/li&gt;&lt;li&gt;add rockchip patch for fusb302 to support aw3561. by &lt;a href=&quot;https://github.com/ackPeng?ref=blog.armbian.com&quot;&gt;@ackPeng&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/linux-rockchip/pull/456?ref=blog.armbian.com&quot;&gt;armbian/linux-rockchip#456&lt;/a&gt;&lt;/li&gt;&lt;li&gt;add rockchip zbit mtd spi flash support. by &lt;a href=&quot;https://github.com/ackPeng?ref=blog.armbian.com&quot;&gt;@ackPeng&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/linux-rockchip/pull/464?ref=blog.armbian.com&quot;&gt;armbian/linux-rockchip#464&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add rtl8710bufw_SMIC.bin for RTL8188GU WiFi USB. by &lt;a href=&quot;https://github.com/Shadowrom2020?ref=blog.armbian.com&quot;&gt;@Shadowrom2020&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/firmware/pull/121?ref=blog.armbian.com&quot;&gt;armbian/firmware#121&lt;/a&gt;&lt;/li&gt;&lt;li&gt;add support for imx708 raspberry pi v3 camera. by &lt;a href=&quot;https://github.com/ackPeng?ref=blog.armbian.com&quot;&gt;@ackPeng&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/linux-rockchip/pull/457?ref=blog.armbian.com&quot;&gt;armbian/linux-rockchip#457&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add trixie and noble to nightly manual targets. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/263?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#263&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add xfce desktop for riscv64 legacy branch in stable builds. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/264?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#264&lt;/a&gt;&lt;/li&gt;&lt;li&gt;aic8800-dkms extension. by &lt;a href=&quot;https://github.com/Shadowrom2020?ref=blog.armbian.com&quot;&gt;@Shadowrom2020&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9578?ref=blog.armbian.com&quot;&gt;armbian/build#9578&lt;/a&gt;&lt;/li&gt;&lt;li&gt;arm64: dts: rockchip: add Mekotronics R58S2. by &lt;a href=&quot;https://github.com/HeyMeco?ref=blog.armbian.com&quot;&gt;@HeyMeco&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/linux-rockchip/pull/461?ref=blog.armbian.com&quot;&gt;armbian/linux-rockchip#461&lt;/a&gt;&lt;/li&gt;&lt;li&gt;armbian-kernel: improve code documentation and formatting. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9559?ref=blog.armbian.com&quot;&gt;armbian/build#9559&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Board image: Add Mekotronics R58S2. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/265?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#265&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Board: Add Mekotronics R58S2. by &lt;a href=&quot;https://github.com/HeyMeco?ref=blog.armbian.com&quot;&gt;@HeyMeco&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9610?ref=blog.armbian.com&quot;&gt;armbian/build#9610&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Bump geekyeggo/delete-artifact from 5 to 6. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/os/pull/443?ref=blog.armbian.com&quot;&gt;armbian/os#443&lt;/a&gt;&lt;/li&gt;&lt;li&gt;docs: expand GitHub Actions section with examples and inputs reference. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/documentation/pull/900?ref=blog.armbian.com&quot;&gt;armbian/documentation#900&lt;/a&gt;&lt;/li&gt;&lt;li&gt;docs: reorganize ZFS documentation with proper tab formatting. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/779?ref=blog.armbian.com&quot;&gt;armbian/configng#779&lt;/a&gt;&lt;/li&gt;&lt;li&gt;docs: simplify code-server documentation footer. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/792?ref=blog.armbian.com&quot;&gt;armbian/configng#792&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Dozzle: Proper image. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/775?ref=blog.armbian.com&quot;&gt;armbian/configng#775&lt;/a&gt;&lt;/li&gt;&lt;li&gt;families: sm8550: Limit kernel version to 6.18.18. by &lt;a href=&quot;https://github.com/kasimling?ref=blog.armbian.com&quot;&gt;@kasimling&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9604?ref=blog.armbian.com&quot;&gt;armbian/build#9604&lt;/a&gt;&lt;/li&gt;&lt;li&gt;feat: add code-server module for browser-based VS Code. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/790?ref=blog.armbian.com&quot;&gt;armbian/configng#790&lt;/a&gt;&lt;/li&gt;&lt;li&gt;feat: add comprehensive memory management module. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/781?ref=blog.armbian.com&quot;&gt;armbian/configng#781&lt;/a&gt;&lt;/li&gt;&lt;li&gt;feat: add Dozzle Docker log viewer module. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/773?ref=blog.armbian.com&quot;&gt;armbian/configng#773&lt;/a&gt;&lt;/li&gt;&lt;li&gt;feat: add Wallos subscription tracker module. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/785?ref=blog.armbian.com&quot;&gt;armbian/configng#785&lt;/a&gt;&lt;/li&gt;&lt;li&gt;feat: ZFS pool import and scan functionality. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/782?ref=blog.armbian.com&quot;&gt;armbian/configng#782&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Fix Docker image configuration for GitHub Actions. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/docker-armbian-build/pull/12?ref=blog.armbian.com&quot;&gt;armbian/docker-armbian-build#12&lt;/a&gt;&lt;/li&gt;&lt;li&gt;fix: force destroy VMs when graceful shutdown fails. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/793?ref=blog.armbian.com&quot;&gt;armbian/configng#793&lt;/a&gt;&lt;/li&gt;&lt;li&gt;fix: improve kvmtest module security, UI, and add channel selection. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/789?ref=blog.armbian.com&quot;&gt;armbian/configng#789&lt;/a&gt;&lt;/li&gt;&lt;li&gt;fix: resolve mixed indentation in prometheus heredoc. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/794?ref=blog.armbian.com&quot;&gt;armbian/configng#794&lt;/a&gt;&lt;/li&gt;&lt;li&gt;framework artifact-rootfs - remove the last vestige of LEGACY_DEBOOTSTRAP. by &lt;a href=&quot;https://github.com/tabrisnet?ref=blog.armbian.com&quot;&gt;@tabrisnet&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9599?ref=blog.armbian.com&quot;&gt;armbian/build#9599&lt;/a&gt;&lt;/li&gt;&lt;li&gt;HACK: Enable PCIe switch on RK3399. by &lt;a href=&quot;https://github.com/retro98boy?ref=blog.armbian.com&quot;&gt;@retro98boy&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9574?ref=blog.armbian.com&quot;&gt;armbian/build#9574&lt;/a&gt;&lt;/li&gt;&lt;li&gt;KDE Neon: add more packages for touchscreen devices. by &lt;a href=&quot;https://github.com/kasimling?ref=blog.armbian.com&quot;&gt;@kasimling&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9551?ref=blog.armbian.com&quot;&gt;armbian/build#9551&lt;/a&gt;&lt;/li&gt;&lt;li&gt;mkspi: fix devicetree opp voltage settings. by &lt;a href=&quot;https://github.com/redrathnure?ref=blog.armbian.com&quot;&gt;@redrathnure&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9603?ref=blog.armbian.com&quot;&gt;armbian/build#9603&lt;/a&gt;&lt;/li&gt;&lt;li&gt;nanopi-zero2: add USB support for RK3528 (current + edge). by &lt;a href=&quot;https://github.com/rubycomm?ref=blog.armbian.com&quot;&gt;@rubycomm&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9500?ref=blog.armbian.com&quot;&gt;armbian/build#9500&lt;/a&gt;&lt;/li&gt;&lt;li&gt;OrangePi5Pro: Comprehensive HW Support: YT6801 PCIe-Eth, Codec ES8388 Audio, eFUSE &amp;amp; U-Boot v2025.10. by &lt;a href=&quot;https://github.com/c127dev?ref=blog.armbian.com&quot;&gt;@c127dev&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9600?ref=blog.armbian.com&quot;&gt;armbian/build#9600&lt;/a&gt;&lt;/li&gt;&lt;li&gt;qcom/sc8280xp: sync microsoft blackrock (windows dev kit 2023) latest firmware for mainline kernel. by &lt;a href=&quot;https://github.com/rbqvq?ref=blog.armbian.com&quot;&gt;@rbqvq&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/firmware/pull/122?ref=blog.armbian.com&quot;&gt;armbian/firmware#122&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Qidi X-6: fix devicetree opp voltage settings. by &lt;a href=&quot;https://github.com/Shadowrom2020?ref=blog.armbian.com&quot;&gt;@Shadowrom2020&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9577?ref=blog.armbian.com&quot;&gt;armbian/build#9577&lt;/a&gt;&lt;/li&gt;&lt;li&gt;refactor: update KVM test images to latest releases. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/783?ref=blog.armbian.com&quot;&gt;armbian/configng#783&lt;/a&gt;&lt;/li&gt;&lt;li&gt;rock-3a: bump uboot to v2026.04-rc4. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9576?ref=blog.armbian.com&quot;&gt;armbian/build#9576&lt;/a&gt;&lt;/li&gt;&lt;li&gt;rockchip-rv1106: Enable (=m) Realtek 8188EU wifi. by &lt;a href=&quot;https://github.com/vidplace7?ref=blog.armbian.com&quot;&gt;@vidplace7&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9607?ref=blog.armbian.com&quot;&gt;armbian/build#9607&lt;/a&gt;&lt;/li&gt;&lt;li&gt;rockchip64-6.18: rewrite kernel patches against 6.18.20. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9587?ref=blog.armbian.com&quot;&gt;armbian/build#9587&lt;/a&gt;&lt;/li&gt;&lt;li&gt;rockchip64: rk3528: fix USB OTG and ethernet for NanoPi Zero2. by &lt;a href=&quot;https://github.com/rubycomm?ref=blog.armbian.com&quot;&gt;@rubycomm&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9597?ref=blog.armbian.com&quot;&gt;armbian/build#9597&lt;/a&gt;&lt;/li&gt;&lt;li&gt;sm8550-6.18: Fix TF card IO performance regression. by &lt;a href=&quot;https://github.com/kasimling?ref=blog.armbian.com&quot;&gt;@kasimling&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9546?ref=blog.armbian.com&quot;&gt;armbian/build#9546&lt;/a&gt;&lt;/li&gt;&lt;li&gt;SpacemiT MUSE Book: Fixup SRC_CMDLINE var. by &lt;a href=&quot;https://github.com/pyavitz?ref=blog.armbian.com&quot;&gt;@pyavitz&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9612?ref=blog.armbian.com&quot;&gt;armbian/build#9612&lt;/a&gt;&lt;/li&gt;&lt;li&gt;stmmac: Refactor Phytium ethernet patches into modular components. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9585?ref=blog.armbian.com&quot;&gt;armbian/build#9585&lt;/a&gt;&lt;/li&gt;&lt;li&gt;style: simplify markdown formatting in Wallos footer. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/787?ref=blog.armbian.com&quot;&gt;armbian/configng#787&lt;/a&gt;&lt;/li&gt;&lt;li&gt;sunxi-6.18: rewrite kernel patches against 6.18.20. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9611?ref=blog.armbian.com&quot;&gt;armbian/build#9611&lt;/a&gt;&lt;/li&gt;&lt;li&gt;sunxi: drm/gem-dma: Support dedicated DMA device for allocation. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9605?ref=blog.armbian.com&quot;&gt;armbian/build#9605&lt;/a&gt;&lt;/li&gt;&lt;li&gt;sunxi: edge: bump to 7.0. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9549?ref=blog.armbian.com&quot;&gt;armbian/build#9549&lt;/a&gt;&lt;/li&gt;&lt;li&gt;sunxi: Enable device mapper snapshot support. by &lt;a href=&quot;https://github.com/frank-f?ref=blog.armbian.com&quot;&gt;@frank-f&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9590?ref=blog.armbian.com&quot;&gt;armbian/build#9590&lt;/a&gt;&lt;/li&gt;&lt;li&gt;sunxi: fix iommu driver patch to allow compilation. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9592?ref=blog.armbian.com&quot;&gt;armbian/build#9592&lt;/a&gt;&lt;/li&gt;&lt;li&gt;sunxi: fix &lt;code&gt;Unhandled Exception in EL3.&lt;/code&gt; and/causing secondary cpus not coming online. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9586?ref=blog.armbian.com&quot;&gt;armbian/build#9586&lt;/a&gt;&lt;/li&gt;&lt;li&gt;sunxi: remove BSP GMAC/EPHY patch that breaks H6 internal EMAC. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9609?ref=blog.armbian.com&quot;&gt;armbian/build#9609&lt;/a&gt;&lt;/li&gt;&lt;li&gt;uefi edge: bump to 7.0. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9547?ref=blog.armbian.com&quot;&gt;armbian/build#9547&lt;/a&gt;&lt;/li&gt;&lt;li&gt;uefi-arm64-6.12: fix stmmac compilation errors. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9596?ref=blog.armbian.com&quot;&gt;armbian/build#9596&lt;/a&gt;&lt;/li&gt;&lt;li&gt;uefi-x86-6.18: rewrite kernel patches against 6.18.20. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9588?ref=blog.armbian.com&quot;&gt;armbian/build#9588&lt;/a&gt;&lt;/li&gt;&lt;li&gt;update seeed studio rk3576 devkit camera and dp overlay. by &lt;a href=&quot;https://github.com/ackPeng?ref=blog.armbian.com&quot;&gt;@ackPeng&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/linux-rockchip/pull/463?ref=blog.armbian.com&quot;&gt;armbian/linux-rockchip#463&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Update some board csc file. by &lt;a href=&quot;https://github.com/retro98boy?ref=blog.armbian.com&quot;&gt;@retro98boy&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9573?ref=blog.armbian.com&quot;&gt;armbian/build#9573&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Update ZFS tuning recommendations and remove settings view. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/780?ref=blog.armbian.com&quot;&gt;armbian/configng#780&lt;/a&gt;&lt;/li&gt;&lt;li&gt;ZFS Performance Tuning Interface. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/777?ref=blog.armbian.com&quot;&gt;armbian/configng#777&lt;/a&gt;&lt;/li&gt;&lt;li&gt;[2026.5] - framework rootfs-create: remove LEGACY_DEBOOTSTRAP, use only the upstream mmdebstrap. by &lt;a href=&quot;https://github.com/tabrisnet?ref=blog.armbian.com&quot;&gt;@tabrisnet&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9512?ref=blog.armbian.com&quot;&gt;armbian/build#9512&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;</content:encoded> 
	<dc:date>2026-03-31T02:52:23+00:00</dc:date>
	<dc:creator>Michael Robinson</dc:creator>
</item> 
<item rdf:about="https://blog.vyos.io/vyos-1.5.0-ga-release">
	<title>VyOS: VyOS 1.5.0 GA release</title>
	<link>https://blog.vyos.io/vyos-1.5.0-ga-release</link>
     <content:encoded>&lt;div class=&quot;hs-featured-image-wrapper&quot;&gt; 
 &lt;a class=&quot;hs-featured-image-link&quot; href=&quot;https://blog.vyos.io/vyos-1.5.0-ga-release&quot; title=&quot;&quot;&gt; &lt;img alt=&quot;VyOS 1.5.0 GA release&quot; class=&quot;hs-featured-image&quot; src=&quot;https://blog.vyos.io/hubfs/vyos_datasheet_lts_1.5_linkedin-1.png&quot; style=&quot;width: auto !important; float: left; margin: 0 15px 15px 0;&quot; /&gt; &lt;/a&gt; 
&lt;/div&gt; 
&lt;p&gt;Hello, Community!&lt;/p&gt; 
&lt;p&gt;VyOS 1.5.0 LTS release is now finalized and its CLI is frozen for any non-compatible changes. Right now subscribers can already download the generic ISO and other on-premises flavors for x86-64 systems. If you are contributing to VyOS and want LTS release images for personal use, remember that we are happy to share them through &lt;a href=&quot;https://vyos.net/get/contributor-subscriptions/&quot;&gt;contributor subscriptions&lt;/a&gt;.&lt;/p&gt; 
&lt;p&gt;Its development started in 2024 and followed the usual two-year LTS release cycle. In those two years we introduced multiple big features including a long-awaited accelerated dataplane and a huge amount of bug fixes.&lt;/p&gt; 
&lt;h3 style=&quot;font-weight: bold; text-align: center;&quot;&gt;&lt;a href=&quot;https://blog.vyos.io/hubfs/VyOS%201.5.0%20Circinus%20-%20Release%20Notes.pdf&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;span style=&quot;color: #ff9902; text-decoration: underline;&quot;&gt;Download the full release notes&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;/h3&gt;</content:encoded> 
	<dc:date>2026-03-31T00:30:00+00:00</dc:date>
	<dc:creator>Daniil Baturin</dc:creator>
</item> 
<item rdf:about="https://www.elivecd.org/?p=16575">
	<title>Elive: Elive 3.8.50 Stable ‘Retrowave’ is released!</title>
	<link>https://www.elivecd.org/releases/stable/elive-3-8-50-stable-retrowave-released/?pk_campaign=feed&amp;pk_kwd=elive-3-8-50-stable-retrowave-released</link>
     <content:encoded>&lt;p&gt;The Elive Team is pleased to announce a new stable release: Elive Retrowave 3.8.50 LTS, featuring a fully Synthwave‑inspired OS. This version has many months of strong testing to ensure stability and improvements keep the system lightweight, efficient, and extremely reliable. We are happy to offer this release in both 32‑bit and 64‑bit versions, absolutely free of charge, now and in the future. For those who prefer to keep the classic look and feel, the installer includes an option to switch to the default desktop designs, making this variant fully&lt;a class=&quot;more-link&quot; href=&quot;https://www.elivecd.org/releases/stable/elive-3-8-50-stable-retrowave-released/?pk_campaign=feed&amp;amp;pk_kwd=elive-3-8-50-stable-retrowave-released&quot;&gt;SEE DETAILS &lt;span class=&quot;more-link-image&quot;&gt;&lt;/span&gt;&lt;span class=&quot;more-link-hover-image&quot;&gt;&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Check more in the &lt;a href=&quot;https://www.elivecd.org&quot;&gt;Elive Linux&lt;/a&gt; website.&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-30T19:32:58+00:00</dc:date>
	<dc:creator>Thanatermesis</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38635">
	<title>Deepin: (中文) WHLUG 仲春茶叙，共话开源与 AI 新趋势</title>
	<link>https://www.deepin.org/en/whlug-2603/</link>
     <content:encoded>Sorry, this entry is only available in 中文.</content:encoded> 
	<dc:date>2026-03-30T09:09:27+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38627">
	<title>Deepin: (中文) deepin 亮相 OS2ATC，斩获“最具影响力桌面及服务器操作系统”奖</title>
	<link>https://www.deepin.org/en/deepin-os2atc-13th/</link>
     <content:encoded>Sorry, this entry is only available in 中文.</content:encoded> 
	<dc:date>2026-03-30T02:38:03+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38618">
	<title>Deepin: (中文) 飞桨黑客松第十期文心合作伙伴赛道启动！丰厚奖金等着你！</title>
	<link>https://www.deepin.org/en/paddle-hackathon-10th-deepin/</link>
     <content:encoded>Sorry, this entry is only available in 中文.</content:encoded> 
	<dc:date>2026-03-30T02:29:42+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38611">
	<title>Deepin: (中文) 聚力“如意” | deepin 共推 RISC-V 生态高质量发展</title>
	<link>https://www.deepin.org/en/deepin-openruyi/</link>
     <content:encoded>Sorry, this entry is only available in 中文.</content:encoded> 
	<dc:date>2026-03-30T01:59:13+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 
<item rdf:about="https://www.die-welt.net/2026/03/converting-dovecot-password-schemes-on-the-fly-without-too-much-cursing/">
	<title>Grml developers: Evgeni Golov: Converting Dovecot password schemes on the fly without (too much) cursing</title>
	<link>https://www.die-welt.net/2026/03/converting-dovecot-password-schemes-on-the-fly-without-too-much-cursing/</link>
     <content:encoded>&lt;p&gt;I finally upgraded my mail server to Debian 13 and, as expected, the Dovecot part was quite a ride.&lt;/p&gt;
&lt;p&gt;The configuration syntax changed between Dovecot 2.3 (Debian 12) and Dovecot 2.4 (Debian 13),
so I started first with diffing my configuration against a vanilla Debian 12 one (this setup is slightly old) and then applied the same (logical) changes to a vanilla Debian 13 one.
This mostly went well.
Mostly because my user database is stored in SQL and while the &lt;a href=&quot;https://dovecot.org/upgrader/&quot;&gt;Dovecot Configuration Upgrader&lt;/a&gt; says it can convert old &lt;code&gt;dovecot-auth-sql.conf.ext&lt;/code&gt; files to the new syntax,
it only does so for the structure, not the SQL queries themselves.
While I don&#39;t expect it to be able to parse the queries and adopt them correctly,
at least a hint that the field names in &lt;a href=&quot;https://doc.dovecot.org/2.4.3/core/config/auth/userdb.html&quot;&gt;userdb&lt;/a&gt; changed and might require adjustment would&#39;ve been cool.&lt;/p&gt;
&lt;p&gt;Once I got that all sorted, Dovecot would still refuse to let me in:&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;code literal-block&quot;&gt;Error: sql: Invalid password in passdb: Weak password scheme &#39;MD5-CRYPT&#39; used and refused
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;Yeah, right.
Did I mention that this setup is old?&lt;/p&gt;
&lt;p&gt;The quick cure against this is a &lt;code&gt;auth_allow_weak_schemes = yes&lt;/code&gt; in &lt;code&gt;/etc/dovecot/conf.d/10-auth.conf&lt;/code&gt;,
but long term I really should upgrade the password hashes in the database to something more modern.&lt;/p&gt;
&lt;p&gt;And this is what this post is about.&lt;/p&gt;
&lt;p&gt;My database only contains hashed (and salted) passwords,
so I can&#39;t just update them without changing the password.
And while there are only 9 users in total,
I wanted to play nice and professional.
(LOL)&lt;/p&gt;
&lt;p&gt;There is a &lt;a href=&quot;https://doc.dovecot.org/2.4.3/howto/convert_password_schemes.html&quot;&gt;Converting Password Schemes&lt;/a&gt; howto in the Dovecot documentation,
but it uses a rather odd looking PHP script, wrapped in a shell script which leaks the plaintext password to the process list,
and I really didn&#39;t want to remember how to write PHP to complete this task.&lt;/p&gt;
&lt;p&gt;Luckily, &lt;a href=&quot;https://xkcd.com/208/&quot;&gt;I know Python&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The general idea is:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;As we&#39;re using plaintext authentication (&lt;code&gt;auth_mechanisms = plain login&lt;/code&gt;),
  the plaintext password is available during login.&lt;/li&gt;
&lt;li&gt;After Dovecot&#39;s &lt;code&gt;imap-login&lt;/code&gt; has verified the password against the old (insecure) hash in the database,
  we can &lt;a href=&quot;https://doc.dovecot.org/2.4.3/core/config/post_login_scripting.html&quot;&gt;execute a post-login script&lt;/a&gt;,
  which will connect to the database and update it with a new hash of the plaintext password.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To make the plaintext password available to the post-login script,
we add &lt;code&gt;&#39;%{password}&#39; as userdb_plain_pass&lt;/code&gt; to the &lt;code&gt;SELECT&lt;/code&gt; statement of our &lt;code&gt;passdb&lt;/code&gt; query.
The original howto also says to add a &lt;code&gt;prefetch&lt;/code&gt; &lt;code&gt;userdb&lt;/code&gt;, which we do.
The &lt;code&gt;sql&lt;/code&gt; &lt;code&gt;userdb&lt;/code&gt; remains, as otherwise Postfix can&#39;t use Dovecot to deliver mail.&lt;/p&gt;
&lt;p&gt;Now comes the interesting part.
We need to write a script that is executed by Dovecot&#39;s &lt;code&gt;script-login&lt;/code&gt; and that will update the database for us.
Thanks to Python&#39;s &lt;a href=&quot;https://passlib.readthedocs.io/&quot;&gt;&lt;code&gt;passlib&lt;/code&gt;&lt;/a&gt; and &lt;a href=&quot;https://github.com/PyMySQL/mysqlclient&quot;&gt;&lt;code&gt;mysqlclient&lt;/code&gt;&lt;/a&gt;,
the database and hashing parts are relatively straight forward:&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;code literal-block&quot;&gt;&lt;span class=&quot;ch&quot;&gt;#!/usr/bin/env python3&lt;/span&gt;

&lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nn&quot;&gt;os&lt;/span&gt;

&lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nn&quot;&gt;MySQLdb&lt;/span&gt;
&lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nn&quot;&gt;passlib.hash&lt;/span&gt;

&lt;span class=&quot;n&quot;&gt;DB_SETTINGS&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;host&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;127.0.0.1&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;user&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;user&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;password&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;password&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;database&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;mail&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;SELECT_QUERY&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;SELECT password_enc FROM mail_users WHERE username=&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;%(username)s&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;UPDATE_QUERY&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;UPDATE mail_users SET password_enc=&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;%(pwhash)s&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt; WHERE username=&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;%(username)s&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;

&lt;span class=&quot;n&quot;&gt;SCHEME&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;bcrypt&quot;&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;EXPECTED_PREFIX&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;$2b$&quot;&lt;/span&gt;


&lt;span class=&quot;k&quot;&gt;def&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nf&quot;&gt;main&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;():&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;# https://doc.dovecot.org/2.4.3/core/config/post_login_scripting.html&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;# https://doc.dovecot.org/2.4.3/howto/convert_password_schemes.html&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;user&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;os&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;environ&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;get&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;USER&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

    &lt;span class=&quot;n&quot;&gt;plain_pass&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;os&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;environ&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;get&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;PLAIN_PASS&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;plain_pass&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;is&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;not&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;None&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;db&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;MySQLdb&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;connect&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;**&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;DB_SETTINGS&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;cursor&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;db&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;cursor&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;cursor&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;execute&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;SELECT_QUERY&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;username&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;user&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;})&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;result&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;cursor&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;fetchone&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;current_pwhash&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;result&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt;

        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;not&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;current_pwhash&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;startswith&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;EXPECTED_PREFIX&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;):&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;hash_module&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;getattr&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;passlib&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;hash&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;SCHEME&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;pwhash&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;hash_module&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;hash&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;plain_pass&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;data&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;pwhash&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;pwhash&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;username&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;user&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;cursor&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;execute&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;UPDATE_QUERY&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;data&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;cursor&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;close&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;db&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;close&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;


&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;vm&quot;&gt;__name__&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;__main__&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;main&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;But if we add that as &lt;code&gt;executable = script-login /etc/dovecot/dpsu.py&lt;/code&gt; to our &lt;code&gt;imap-postlogin&lt;/code&gt; &lt;code&gt;service&lt;/code&gt;,
as the howto suggests, the users won&#39;t be able to login anymore:&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;code literal-block&quot;&gt;Error: Post-login script denied access to user
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;WAT?&lt;/p&gt;
&lt;p&gt;Remember that shell script I wanted to avoid?
It ends with &lt;code&gt;exec &quot;$@&quot;&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Turns out the &lt;code&gt;script-login&lt;/code&gt; &quot;API&quot; is rather interesting.
It&#39;s not &quot;pass in a list of scripts to call and I&#39;ll call all of them&quot;.
It&#39;s &quot;pass a list of scripts, I&#39;ll &lt;a href=&quot;https://linux.die.net/man/3/execv&quot;&gt;&lt;code&gt;execv&lt;/code&gt;&lt;/a&gt; the first item and pass the rest as args, and every item is expected to &lt;code&gt;execv&lt;/code&gt; the next one again&quot;. 🤯&lt;/p&gt;
&lt;p&gt;With that (cursed) knowledge, the script becomes:&lt;/p&gt;
&lt;div class=&quot;code&quot;&gt;&lt;pre class=&quot;code literal-block&quot;&gt;&lt;span class=&quot;ch&quot;&gt;#!/usr/bin/env python3&lt;/span&gt;

&lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nn&quot;&gt;os&lt;/span&gt;
&lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nn&quot;&gt;sys&lt;/span&gt;

&lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nn&quot;&gt;MySQLdb&lt;/span&gt;
&lt;span class=&quot;kn&quot;&gt;import&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nn&quot;&gt;passlib.hash&lt;/span&gt;

&lt;span class=&quot;n&quot;&gt;DB_SETTINGS&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;host&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;127.0.0.1&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;user&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;user&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;password&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;password&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;database&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;mail&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;SELECT_QUERY&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;SELECT password_enc FROM mail_users WHERE username=&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;%(username)s&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;UPDATE_QUERY&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;UPDATE mail_users SET password_enc=&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;%(pwhash)s&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt; WHERE username=&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;%(username)s&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;

&lt;span class=&quot;n&quot;&gt;SCHEME&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;bcrypt&quot;&lt;/span&gt;
&lt;span class=&quot;n&quot;&gt;EXPECTED_PREFIX&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;$2b$&quot;&lt;/span&gt;


&lt;span class=&quot;k&quot;&gt;def&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nf&quot;&gt;main&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;():&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;# https://doc.dovecot.org/2.4.3/core/config/post_login_scripting.html&lt;/span&gt;
    &lt;span class=&quot;c1&quot;&gt;# https://doc.dovecot.org/2.4.3/howto/convert_password_schemes.html&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;user&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;os&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;environ&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;get&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;USER&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;

    &lt;span class=&quot;n&quot;&gt;plain_pass&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;os&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;environ&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;get&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;PLAIN_PASS&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;plain_pass&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;is&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;not&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;None&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;db&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;MySQLdb&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;connect&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;**&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;DB_SETTINGS&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;cursor&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;db&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;cursor&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;cursor&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;execute&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;SELECT_QUERY&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;username&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;user&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;})&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;result&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;cursor&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;fetchone&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;current_pwhash&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;result&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]&lt;/span&gt;

        &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;ow&quot;&gt;not&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;current_pwhash&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;startswith&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;EXPECTED_PREFIX&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;):&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;hash_module&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;nb&quot;&gt;getattr&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;passlib&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;hash&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;SCHEME&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;pwhash&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;hash_module&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;hash&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;plain_pass&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;data&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;=&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;pwhash&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;pwhash&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;username&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;user&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
            &lt;span class=&quot;n&quot;&gt;cursor&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;execute&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;UPDATE_QUERY&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;data&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;cursor&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;close&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
        &lt;span class=&quot;n&quot;&gt;db&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;close&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;

    &lt;span class=&quot;n&quot;&gt;os&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;execv&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;sys&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;argv&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;],&lt;/span&gt; &lt;span class=&quot;n&quot;&gt;sys&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;argv&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:])&lt;/span&gt;


&lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;vm&quot;&gt;__name__&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;==&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;__main__&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;:&lt;/span&gt;
    &lt;span class=&quot;n&quot;&gt;main&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;

&lt;p&gt;And the passwords are getting gradually updated as the users log in.
Once all are updated, we can remove the post-login script and drop the &lt;code&gt;auth_allow_weak_schemes = yes&lt;/code&gt;.&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-28T22:11:57+00:00</dc:date>
	<dc:creator>Grml developers</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38582">
	<title>Deepin: (中文) 我用 UOS AI 开发了一款 deepin 专属磁盘清理工具</title>
	<link>https://www.deepin.org/en/lz-disk-cleaner/</link>
     <content:encoded>Sorry, this entry is only available in 中文.</content:encoded> 
	<dc:date>2026-03-27T02:38:15+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38561">
	<title>Deepin: (中文) 从用户反馈出发｜Wine 11.0 + 新手友好，打造更优质的 Windows 应用兼容体验</title>
	<link>https://www.deepin.org/en/deepin-wine-v3-5-0/</link>
     <content:encoded>Sorry, this entry is only available in 中文.</content:encoded> 
	<dc:date>2026-03-26T06:17:15+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 
<item rdf:about="https://tails.net/news/version_7.6/">
	<title>Tails: Tails 7.6</title>
	<link>https://tails.net/news/version_7.6/</link>
     <content:encoded>&lt;h1 id=&quot;features&quot;&gt;New features&lt;/h1&gt;


&lt;h2&gt;Automatic Tor bridges&lt;/h2&gt;

&lt;p&gt;You can now learn about Tor bridges directly from the &lt;em&gt;Tor Connection&lt;/em&gt;
assistant in Tails.&lt;/p&gt;

&lt;p&gt;Tor bridges are secret Tor relays that hide that you are connecting to Tor.
If connecting to Tor is blocked from where you are, you can use a
bridge as your first Tor relay to circumvent this censorship.&lt;/p&gt;

&lt;p&gt;In Tails 7.6, choose &lt;strong&gt;Connect to Tor automatically&lt;/strong&gt; when opening &lt;em&gt;Tor
Connection&lt;/em&gt;. If access to the Tor network is blocked, the bridge configuration
screen offers a new option called &lt;strong&gt;Ask for a Tor bridge based on your
region&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://tails.net/doc/anonymous_internet/tor/bridge.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;screenshot&quot; height=&quot;759&quot; src=&quot;https://tails.net/doc/anonymous_internet/tor/bridge.png&quot; width=&quot;1093&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This feature uses the same technology as the connection assistant in &lt;em&gt;Tor
Browser&lt;/em&gt; outside of Tails, which was introduced in &lt;a href=&quot;https://blog.torproject.org/new-release-tor-browser-115/&quot;&gt;Tor Browser
11.5&lt;/a&gt; (July 2022).&lt;/p&gt;

&lt;p&gt;Tails downloads information about bridges that are most likely to work in
your region from the &lt;a href=&quot;https://gitlab.torproject.org/tpo/anti-censorship/rdsys/-/blob/main/doc/moat.md&quot;&gt;Moat
API&lt;/a&gt;
of the Tor Project. To circumvent censorship, this connection is disguised as
a connection to another website using &lt;a href=&quot;https://en.wikipedia.org/wiki/domain%20fronting&quot;&gt;domain fronting&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;GNOME Secrets&lt;/h2&gt;

&lt;p&gt;In Tails 7.6, the &lt;a href=&quot;https://gitlab.gnome.org/World/secrets&quot;&gt;&lt;em&gt;Secrets&lt;/em&gt;&lt;/a&gt; password
manager replaces &lt;a href=&quot;https://keepassxc.org/&quot;&gt;&lt;em&gt;KeePassXC&lt;/em&gt;&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Secrets&lt;/em&gt; has a simpler interface and is better integrated in the GNOME
desktop. For example, accessibility features, such as the screen keyboard and
cursor size, are working again with &lt;em&gt;Secrets&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Secrets&lt;/em&gt; offers to unlock your previous &lt;em&gt;KeePassXC&lt;/em&gt; database automatically,
because both &lt;em&gt;Secrets&lt;/em&gt; and &lt;em&gt;KeePassXC&lt;/em&gt; use the same file format to store
passwords.&lt;/p&gt;

&lt;p&gt;If you miss more advanced features from &lt;em&gt;KeePassXC&lt;/em&gt;, you can install
&lt;em&gt;KeePassXC&lt;/em&gt; as &lt;a href=&quot;https://tails.net/doc/persistent_storage/additional_software/index.en.html&quot;&gt;additional
software&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://tails.net/news/version_7.6/secrets.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;screenshot&quot; height=&quot;605&quot; src=&quot;https://tails.net/news/version_7.6/secrets.png&quot; width=&quot;913&quot; /&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class=&quot;tip&quot;&gt;

  &lt;p&gt;The main keyboard shortcuts of &lt;i&gt;Secrets&lt;/i&gt; are similar to the ones of
  &lt;i&gt;KeePassXC&lt;/i&gt;, with &lt;b&gt;Shift&lt;/b&gt; in addition to &lt;b&gt;Ctrl&lt;/b&gt;:&lt;/p&gt;

  &lt;ul&gt;
    &lt;li&gt;&lt;b&gt;Shift+Ctrl+C&lt;/b&gt;: copy password&lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Shift+Ctrl+V&lt;/b&gt;: copy address&lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Shift+Ctrl+B&lt;/b&gt;: copy username&lt;/li&gt;
    &lt;li&gt;&lt;b&gt;Shift+Ctrl+T&lt;/b&gt;: copy one-time password&lt;/li&gt;
  &lt;/ul&gt;

  &lt;p&gt;To see the full list of keyboard shortcuts of &lt;i&gt;Secrets&lt;/i&gt;, press
  &lt;b&gt;Ctrl+?&lt;/b&gt;.&lt;/p&gt;

&lt;/div&gt;




&lt;h1 id=&quot;changes&quot;&gt;Changes and updates&lt;/h1&gt;


&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Update &lt;em&gt;Electrum&lt;/em&gt; from 4.5.8 to &lt;a href=&quot;https://github.com/spesmilo/electrum/blob/master/RELEASE-NOTES&quot;&gt;4.7.0&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Update &lt;em&gt;Tor Browser&lt;/em&gt; to &lt;a href=&quot;https://blog.torproject.org/new-release-tor-browser-1508/&quot;&gt;15.0.8&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Update &lt;em&gt;Thunderbird&lt;/em&gt; to &lt;a href=&quot;https://www.thunderbird.net/en-US/thunderbird/140.8.0esr/releasenotes/&quot;&gt;140.8.0&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Update most firmware packages. This improves support for newer hardware:
graphics, Wi-Fi, and so on.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;h1 id=&quot;fixes&quot;&gt;Fixed problems&lt;/h1&gt;


&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Translate the confirmation dialog that appears before saving the language and
keyboard layout on the USB stick. (&lt;a href=&quot;https://gitlab.tails.boum.org/tails/tails/-/issues/21448&quot;&gt;#21448&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://tails.net/news/version_7.6/save.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;screenshot&quot; height=&quot;296&quot; src=&quot;https://tails.net/news/version_7.6/save.png&quot; width=&quot;661&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Fix the &lt;strong&gt;Learn More&lt;/strong&gt; button in the &lt;em&gt;Thunderbird&lt;/em&gt; migration notification. (&lt;a href=&quot;https://gitlab.tails.boum.org/tails/tails/-/issues/21455&quot;&gt;#21455&lt;/a&gt;)&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://tails.net/doc/anonymous_internet/thunderbird/additional_software/manual.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;screenshot&quot; height=&quot;228&quot; src=&quot;https://tails.net/doc/anonymous_internet/thunderbird/additional_software/manual.png&quot; width=&quot;585&quot; /&gt;&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Fix automated upgrades in Turkish. (&lt;a href=&quot;https://gitlab.tails.boum.org/tails/tails/-/issues/21466&quot;&gt;#21466&lt;/a&gt;)&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;For more details, read our &lt;a href=&quot;https://gitlab.tails.boum.org/tails/tails/-/blob/master/debian/changelog&quot;&gt;changelog&lt;/a&gt;.&lt;/p&gt;

&lt;h1 id=&quot;get&quot;&gt;Get Tails 7.6&lt;/h1&gt;


&lt;h2&gt;To upgrade your Tails USB stick and keep your Persistent Storage&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Automatic upgrades are available from Tails 7.0 or later to 7.6.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;If you cannot do an automatic upgrade or if Tails fails to start after an
automatic upgrade, please try to do a &lt;a href=&quot;https://tails.net/doc/upgrade/index.en.html#manual&quot;&gt;manual upgrade&lt;/a&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;To install Tails 7.6 on a new USB stick&lt;/h2&gt;

&lt;p&gt;Follow our installation instructions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://tails.net/install/windows/index.en.html&quot;&gt;Install from Windows&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://tails.net/install/mac/index.en.html&quot;&gt;Install from macOS&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://tails.net/install/linux/index.en.html&quot;&gt;Install from Linux&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://tails.net/install/expert/index.en.html&quot;&gt;Install from Debian or Ubuntu using the command line and GnuPG&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;div class=&quot;caution&quot;&gt;&lt;p&gt;The Persistent Storage on the USB stick will be lost if
you install instead of upgrading.&lt;/p&gt;&lt;/div&gt;


&lt;h2&gt;To download only&lt;/h2&gt;

&lt;p&gt;If you don&#39;t need installation or upgrade instructions, you can download
Tails 7.6 directly:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://tails.net/install/download/index.en.html&quot;&gt;For USB sticks (USB image)&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;a href=&quot;https://tails.net/install/download-iso/index.en.html&quot;&gt;For DVDs and virtual machines (ISO image)&lt;/a&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;</content:encoded> 
	<dc:date>2026-03-26T00:00:00+00:00</dc:date>
	<dc:creator>Tails</dc:creator>
</item> 
<item rdf:about="https://blog.armbian.com/rss/6932f6a393dc3200011812c0">
	<title>ARMBIAN: Armbianmonitor saves the day!</title>
	<link>https://blog.armbian.com/armbianmonitor-saves-the-day/</link>
     <content:encoded>&lt;h2 id=&quot;diagnosing-system-issues-and-getting-support-with-armbianmonitor&quot;&gt;Diagnosing System Issues and Getting Support with Armbianmonitor&lt;/h2&gt;&lt;img alt=&quot;Armbianmonitor saves the day!&quot; src=&quot;https://blog.armbian.com/content/images/2026/03/first_aid.png&quot; /&gt;&lt;p&gt;Armbian is a lightweight operating system based on Debian/Ubuntu, highly optimized for single-board computers (SBCs) like the Raspberry Pi, Orange Pi, and many others. When facing system problems on an SBC running Armbian, the built-in utility &lt;strong&gt;&lt;code&gt;armbianmonitor&lt;/code&gt;&lt;/strong&gt; is an essential diagnostic tool. It quickly gathers crucial system data, making troubleshooting faster and more accurate for both the user and the community providing support.&lt;/p&gt;&lt;hr /&gt;&lt;h3 id=&quot;key-diagnostic-functions&quot;&gt;Key Diagnostic Functions&lt;/h3&gt;&lt;p&gt;The primary use of &lt;code&gt;armbianmonitor&lt;/code&gt; is to generate real-time performance and system configuration reports. By running the command without any arguments, you get a menu of options, but the most vital functions for diagnosis are:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;System Status (&lt;code&gt;armbianmonitor -m&lt;/code&gt;):&lt;/strong&gt; This provides a &lt;strong&gt;live monitoring dashboard&lt;/strong&gt;. It displays key metrics like CPU frequency, load average, temperature, memory usage, and disk I/O. By watching this output while a problem (like a system freeze or slowdown) occurs, you can often pinpoint the bottleneck—for instance, a sudden spike in CPU temperature indicating a cooling problem, or sustained high memory usage pointing to a resource leak.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;System Information (&lt;code&gt;armbianmonitor -u&lt;/code&gt; or &lt;code&gt;-d&lt;/code&gt;):&lt;/strong&gt; This is the most crucial function for seeking online support. It gathers a comprehensive, anonymized report including details about the kernel version, device model, installed packages, boot logs, and hardware configuration. This data is essential because the performance and stability of SBCs are often highly dependent on the specific kernel and hardware drivers used for that model.&lt;/li&gt;&lt;/ul&gt;&lt;hr /&gt;&lt;h3 id=&quot;getting-support-online&quot;&gt;Getting Support Online&lt;/h3&gt;&lt;p&gt;When seeking help on platforms like the &lt;strong&gt;Armbian forum&lt;/strong&gt; or GitHub, simply describing the symptoms is rarely enough. The person helping you needs to know the exact state of your system.&lt;/p&gt;&lt;p&gt;By running &lt;strong&gt;&lt;code&gt;armbianmonitor -u&lt;/code&gt;&lt;/strong&gt;, the utility uploads the detailed diagnostic report to a public pastebin service (like https://www.google.com/search?q=paste.armbian.com) and provides a &lt;strong&gt;unique, short URL&lt;/strong&gt;. You can then include this URL directly in your support request. This allows community members to instantly access the exact configuration, eliminating back-and-forth questions about device type, OS version, and log file locations. This standardized method is the fastest way to receive targeted, effective assistance and ensures your issue is diagnosed accurately.&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-25T15:40:32+00:00</dc:date>
	<dc:creator>Michael Robinson</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38544">
	<title>Deepin: (中文) 应用商店 | 4款超实用轻量应用，提升学习办公效率</title>
	<link>https://www.deepin.org/en/app-recommendations-26-1/</link>
     <content:encoded>Sorry, this entry is only available in 中文.</content:encoded> 
	<dc:date>2026-03-25T09:30:45+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 
<item rdf:about="https://www.skudonet.com/?p=76960">
	<title>ZEVENET: Top Netscaler Alternatives in Europe (2026 Guide)</title>
	<link>https://www.skudonet.com/blog/netscaler-alternatives/</link>
     <content:encoded>&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;For years, NetScaler has been one of the most widely used Application Delivery Controllers (ADCs) in enterprise environments.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Many organisations rely on NetScaler to ensure high availability, application security, and traffic management across critical infrastructures.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;However, in recent years, companies have started to evaluate alternative ADC platforms for several reasons, including:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;licensing complexity&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;vendor dependency&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;infrastructure modernization&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;the need for simplified operations&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;In addition, the growing importance of &lt;/span&gt;&lt;b&gt;digital sovereignty and infrastructure resilience&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt; has encouraged many European organisations to explore alternative platforms.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;In this guide, we review some of the most relevant alternatives to NetScaler available today.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;What is NetScaler?&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;NetScaler (Citrix ADC) is an Application Delivery Controller designed to optimise, secure, and control application traffic across enterprise infrastructures.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Typical capabilities include:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Layer 4 and Layer 7 load balancing&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;SSL/TLS offloading&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Web Application Firewall (WAF)&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;traffic optimization and routing&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;high availability clustering&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;These platforms are usually deployed in front of applications to ensure:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;performance&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;security&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;availability&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Because ADC platforms sit at the entry point of many critical systems, they play a key role in infrastructure reliability.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;Why Companies Are Looking for NetScaler Alternatives&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;While NetScaler remains a powerful platform, many organisations are currently evaluating alternatives.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Some of the most common reasons are as follows.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;Increasing Licensing Complexity&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Enterprise ADC solutions often require multiple licenses and additional modules to unlock advanced features.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This can lead to increased operational costs and licensing complexity.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Many infrastructure teams now prefer &lt;/span&gt;&lt;b&gt;all-in-one platforms&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt; that include advanced capabilities from the start.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;Vendor Lock-In Concerns&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Some organisations prefer to reduce their dependence on a single-vendor ecosystem.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Vendor lock-in can make infrastructure evolution more difficult, particularly when organisations need flexibility to deploy across hybrid environments.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;Infrastructure Modernization&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Modern infrastructures increasingly combine:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;on-premise environments&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;virtualization&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;public cloud&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;hybrid architectures&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Infrastructure teams, therefore, require solutions that can operate consistently across multiple environments.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;Infrastructure Sovereignty&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Another emerging topic is &lt;/span&gt;&lt;b&gt;infrastructure sovereignty&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Organisations operating critical services are evaluating whether key components of their infrastructure should rely on external technology providers.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This has led some companies to explore &lt;/span&gt;&lt;b&gt;European alternatives&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt; for their infrastructure stack.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;Top Netscaler Alternatives&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Below are several well-known ADC platforms used by enterprises today.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;SKUDONET&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;SKUDONET is a European Application Delivery Controller platform designed to provide high availability, load balancing, and advanced security in a single solution.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;The platform combines application delivery and cybersecurity features into a unified architecture that can be deployed across multiple environments.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Key capabilities include:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Layer 4 and Layer 7 load balancing&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Integrated Web Application Firewall&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;intelligent traffic routing&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;multi-protocol support&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;clustering and high availability&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;SKUDONET can be deployed across a wide range of infrastructures, including:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;bare metal environments&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;virtualized infrastructures&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;on-premise deployments&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;public and hybrid cloud environments&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Unlike some enterprise solutions, all advanced capabilities are included in the platform without requiring additional modules or extra costs.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Another differentiator is the platform’s focus on &lt;/span&gt;&lt;b&gt;ease of management&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;, allowing infrastructure teams to control load balancing and security from a centralised interface.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;F5 BIG-IP&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;F5 is one of the most established vendors in the ADC market.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Its BIG-IP platform offers advanced traffic management and security capabilities for complex enterprise environments.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Key strengths include:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;advanced traffic policies&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;broad enterprise ecosystem&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;extensive feature set&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;However, some organisations report that F5 deployments can become complex to manage and expensive to scale.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;HAProxy Enterprise&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;HAProxy is widely known for its high performance and reliability.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;The enterprise edition offers additional features designed for organisations that require professional support and enterprise-grade capabilities.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Strengths include:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;high performance&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;scalability&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;strong open-source ecosystem&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;HAProxy is commonly used in environments that require high throughput and strong customisation capabilities.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;NGINX Plus&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;NGINX Plus is a popular application delivery platform that evolved from the widely used NGINX open-source web server.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;It is frequently adopted in environments where DevOps teams prioritise automation and API-driven infrastructure.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Key strengths include:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;strong developer ecosystem&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;integration with modern application stacks&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;API gateway capabilities&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;NGINX is particularly common in cloud-native environments.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;Netscaler Alternatives Comparison&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;When evaluating ADC platforms, differences often go beyond feature lists.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Many organisations today face challenges related to:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;complex licensing structures&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;increasing operational overhead&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;limited visibility across the infrastructure&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;long-term dependency on specific vendors&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;As infrastructure environments evolve, these factors become increasingly relevant in platform selection.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;The comparison below outlines how different ADC platforms typically approach these challenges.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;a href=&quot;https://www.skudonet.com/wp-content/uploads/2026/03/skudonet_table_v2.jpg&quot;&gt;&lt;img alt=&quot;ADC platforms comparison&quot; class=&quot;borde-negro alignnone wp-image-76961 size-full&quot; height=&quot;823&quot; src=&quot;https://www.skudonet.com/wp-content/uploads/2026/03/skudonet_table_v2.jpg&quot; width=&quot;1100&quot; /&gt;&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;b&gt;Note:&lt;/b&gt;&lt;b&gt;&lt;br /&gt;
&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;The comparison reflects common patterns observed across ADC platforms. Specific capabilities and configurations may vary depending on vendor, deployment model, and use case.&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;For many teams, selecting an ADC platform is not only about technical capabilities.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;It often involves balancing factors such as:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;operational complexity&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;visibility and control&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;long-term flexibility&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;alignment with infrastructure strategy&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;&lt;b&gt;When Should You Consider Migrating from NetScaler?&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Organisations typically evaluate alternative ADC platforms during several key moments.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Common scenarios include:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;infrastructure modernisation projects&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;cloud migration initiatives&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;licensing renewal cycles&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;architecture redesigns&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;vendor diversification strategies&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;These transitions provide an opportunity to reassess infrastructure platforms and evaluate alternative technologies.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;Conclusion&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Application Delivery Controllers remain a critical component of modern infrastructure.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;As organisations continue to modernise their environments and prioritise resilience, flexibility, and security, many teams are exploring alternative ADC platforms.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;While NetScaler remains a widely used solution, a growing number of companies are evaluating alternatives that provide:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;simplified operations&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;flexible deployment models&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;transparent licensing&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;integrated security features&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;European platforms such as SKUDONET represent one of the options organisations can consider when designing their next-generation application delivery infrastructure.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;Explore Alternatives to Netscaler&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Organisations evaluating alternatives to NetScaler often start with a simple question:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;What would a different approach to application delivery look like in practice?&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;If your team is currently reviewing ADC platforms, exploring different architectures and deployment models can help clarify the right direction.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;At SKUDONET, we regularly work with infrastructure teams evaluating their current setup and exploring alternative approaches.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;If it’s useful, you can:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;explore how different deployment models work in practice&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Review migration considerations from existing ADC platforms&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Discuss specific infrastructure requirements with our engineering team&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;img alt=&quot;👉&quot; class=&quot;wp-smiley&quot; src=&quot;https://s.w.org/images/core/emoji/17.0.2/72x72/1f449.png&quot; style=&quot;height: 1em;&quot; /&gt; &lt;a href=&quot;https://www.skudonet.com/try-skudonet/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;Explore SKUDONET or request a technical walkthrough&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-25T08:00:12+00:00</dc:date>
	<dc:creator>Isabel Perez</dc:creator>
</item> 
<item rdf:about="https://blog.armbian.com/rss/69c1e1854c791000017be634">
	<title>ARMBIAN: Github Highlights</title>
	<link>https://blog.armbian.com/github-highlights-18/</link>
     <content:encoded>&lt;img alt=&quot;Github Highlights&quot; src=&quot;https://blog.armbian.com/content/images/2026/03/githubhighlights-2-2.webp&quot; /&gt;&lt;p&gt;This week in Armbian development saw significant enhancements across multiple areas, including expanded board support and improved hardware compatibility. Notable additions include new images and configurations for Qidi X-6, X-7, and Ariaboard Photonicat2 mainboards, as well as refined kernel patch maintenance and updates for various platforms. The build system received important fixes, such as resolving compilation errors and device tree issues, alongside improvements in Docker utilities and offline mode detection. Several refactoring efforts streamlined backend processes and enhanced user interface elements. The team also introduced automatic fallback mechanisms for Hetzner server types, optimizing runner scaling. Overall, these updates reinforce Armbian&amp;amp;aposs commitment to stability, broader hardware support, and a smoother user experience.&lt;/p&gt;&lt;h2 id=&quot;changes&quot;&gt;Changes&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;Add automatic fallback to smaller Hetzner server types with runner count scaling. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/actions/pull/15?ref=blog.armbian.com&quot;&gt;armbian/actions#15&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add board and board vendror image for Ariaboard Photonicat2. by &lt;a href=&quot;https://github.com/HackingGate?ref=blog.armbian.com&quot;&gt;@HackingGate&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/255?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#255&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add image for Qidi X-7 Mainboard. by &lt;a href=&quot;https://github.com/Shadowrom2020?ref=blog.armbian.com&quot;&gt;@Shadowrom2020&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/257?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#257&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add some board image. by &lt;a href=&quot;https://github.com/retro98boy?ref=blog.armbian.com&quot;&gt;@retro98boy&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/258?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#258&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add support for dialog via new wrapper functions. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/762?ref=blog.armbian.com&quot;&gt;armbian/configng#762&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add support for qidi x-* boards. by &lt;a href=&quot;https://github.com/Shadowrom2020?ref=blog.armbian.com&quot;&gt;@Shadowrom2020&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9564?ref=blog.armbian.com&quot;&gt;armbian/build#9564&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Change unit tests badge link in documentation. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/documentation/pull/885?ref=blog.armbian.com&quot;&gt;armbian/documentation#885&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Drop patches that landed upstream and fix two. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9544?ref=blog.armbian.com&quot;&gt;armbian/build#9544&lt;/a&gt;&lt;/li&gt;&lt;li&gt;edge: bump 7.0 to rc5. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9580?ref=blog.armbian.com&quot;&gt;armbian/build#9580&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Enable BCACHE on Raspberry Pi build. by &lt;a href=&quot;https://github.com/aulanov?ref=blog.armbian.com&quot;&gt;@aulanov&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9550?ref=blog.armbian.com&quot;&gt;armbian/build#9550&lt;/a&gt;&lt;/li&gt;&lt;li&gt;feat: offline mode detection with local asset cache. by &lt;a href=&quot;https://github.com/SuperKali?ref=blog.armbian.com&quot;&gt;@SuperKali&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/imager/pull/117?ref=blog.armbian.com&quot;&gt;armbian/imager#117&lt;/a&gt;&lt;/li&gt;&lt;li&gt;feat: settings refactoring, DiskArbitration device detection, and filename parser improvements. by &lt;a href=&quot;https://github.com/SuperKali?ref=blog.armbian.com&quot;&gt;@SuperKali&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/imager/pull/114?ref=blog.armbian.com&quot;&gt;armbian/imager#114&lt;/a&gt;&lt;/li&gt;&lt;li&gt;fix race condition and NULL ptr deref in PCIe threaded probe. by &lt;a href=&quot;https://github.com/AlomeProg?ref=blog.armbian.com&quot;&gt;@AlomeProg&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/linux-rockchip/pull/458?ref=blog.armbian.com&quot;&gt;armbian/linux-rockchip#458&lt;/a&gt;&lt;/li&gt;&lt;li&gt;fix(docker): add trixie support for upstream docker-ce to fix HomeAssistant installation. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/765?ref=blog.armbian.com&quot;&gt;armbian/configng#765&lt;/a&gt;&lt;/li&gt;&lt;li&gt;fix: correct dialog argument order causing box option errors. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/768?ref=blog.armbian.com&quot;&gt;armbian/configng#768&lt;/a&gt;&lt;/li&gt;&lt;li&gt;fix: resolve Phytium stmmac compilation errors for kernel 6.19. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9545?ref=blog.armbian.com&quot;&gt;armbian/build#9545&lt;/a&gt;&lt;/li&gt;&lt;li&gt;fix: settings modal reset, custom image manufacturer, and board detection setting. by &lt;a href=&quot;https://github.com/SuperKali?ref=blog.armbian.com&quot;&gt;@SuperKali&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/imager/pull/116?ref=blog.armbian.com&quot;&gt;armbian/imager#116&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Image for Qidi X-6 Mainboard. by &lt;a href=&quot;https://github.com/Shadowrom2020?ref=blog.armbian.com&quot;&gt;@Shadowrom2020&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/256?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#256&lt;/a&gt;&lt;/li&gt;&lt;li&gt;kernel patch maintenance. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9562?ref=blog.armbian.com&quot;&gt;armbian/build#9562&lt;/a&gt;&lt;/li&gt;&lt;li&gt;meson64-6.18: rewrite kernel config. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9581?ref=blog.armbian.com&quot;&gt;armbian/build#9581&lt;/a&gt;&lt;/li&gt;&lt;li&gt;mksklipad50: fix devicetree opp voltage settings. by &lt;a href=&quot;https://github.com/torte71?ref=blog.armbian.com&quot;&gt;@torte71&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9569?ref=blog.armbian.com&quot;&gt;armbian/build#9569&lt;/a&gt;&lt;/li&gt;&lt;li&gt;OrangePi-RV2/R2S: rename board config from wip to csc. by &lt;a href=&quot;https://github.com/sven-ola?ref=blog.armbian.com&quot;&gt;@sven-ola&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9560?ref=blog.armbian.com&quot;&gt;armbian/build#9560&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Qidi X-6: fix defconfig patch. by &lt;a href=&quot;https://github.com/Shadowrom2020?ref=blog.armbian.com&quot;&gt;@Shadowrom2020&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9567?ref=blog.armbian.com&quot;&gt;armbian/build#9567&lt;/a&gt;&lt;/li&gt;&lt;li&gt;refactor: add comprehensive Docker wrapper utilities with progress display. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/configng/pull/769?ref=blog.armbian.com&quot;&gt;armbian/configng#769&lt;/a&gt;&lt;/li&gt;&lt;li&gt;refactor: deduplicate hooks, add CSS design tokens, clean up backend. by &lt;a href=&quot;https://github.com/SuperKali?ref=blog.armbian.com&quot;&gt;@SuperKali&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/imager/pull/115?ref=blog.armbian.com&quot;&gt;armbian/imager#115&lt;/a&gt;&lt;/li&gt;&lt;li&gt;rockchip64-7.0: mekotronics-r58x-pro: analog sound: use SuperKali&amp;amp;aposs new clock. by &lt;a href=&quot;https://github.com/rpardini?ref=blog.armbian.com&quot;&gt;@rpardini&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9554?ref=blog.armbian.com&quot;&gt;armbian/build#9554&lt;/a&gt;&lt;/li&gt;&lt;li&gt;rockchip64: rk3588: add I2S MCLK output gate clocks for audio codec support. by &lt;a href=&quot;https://github.com/SuperKali?ref=blog.armbian.com&quot;&gt;@SuperKali&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9548?ref=blog.armbian.com&quot;&gt;armbian/build#9548&lt;/a&gt;&lt;/li&gt;&lt;li&gt;rockchip64: rk3588: update I2S MCLK gate patches to match upstream v3 and add u-boot clock IDs. by &lt;a href=&quot;https://github.com/SuperKali?ref=blog.armbian.com&quot;&gt;@SuperKali&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9568?ref=blog.armbian.com&quot;&gt;armbian/build#9568&lt;/a&gt;&lt;/li&gt;&lt;li&gt;sm8250: Fix application of Retroid Pocket 5/mini device trees. by &lt;a href=&quot;https://github.com/kay-lambdadelta?ref=blog.armbian.com&quot;&gt;@kay-lambdadelta&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9572?ref=blog.armbian.com&quot;&gt;armbian/build#9572&lt;/a&gt;&lt;/li&gt;&lt;li&gt;SpacemiT: Update ATFSOURCE, BOOTSOURCE and SD card support.. by &lt;a href=&quot;https://github.com/pyavitz?ref=blog.armbian.com&quot;&gt;@pyavitz&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9552?ref=blog.armbian.com&quot;&gt;armbian/build#9552&lt;/a&gt;&lt;/li&gt;&lt;li&gt;sunxi-6.18: remove stray commit from patch. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9556?ref=blog.armbian.com&quot;&gt;armbian/build#9556&lt;/a&gt;&lt;/li&gt;&lt;li&gt;sunxi: bump &lt;code&gt;edge&lt;/code&gt; to 6.19.y, &lt;code&gt;current&lt;/code&gt; to 6.18.y and &lt;code&gt;legacy&lt;/code&gt; to 6.12.y. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9381?ref=blog.armbian.com&quot;&gt;armbian/build#9381&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Update odroidxu4-current to 6.6.129. by &lt;a href=&quot;https://github.com/belegdol?ref=blog.armbian.com&quot;&gt;@belegdol&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9558?ref=blog.armbian.com&quot;&gt;armbian/build#9558&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Update VERSION. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9553?ref=blog.armbian.com&quot;&gt;armbian/build#9553&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;</content:encoded> 
	<dc:date>2026-03-24T00:59:07+00:00</dc:date>
	<dc:creator>Michael Robinson</dc:creator>
</item> 
<item rdf:about="https://www.qubes-os.org/news/2026/03/24/xsas-released-on-2026-03-24/">
	<title>Qubes: XSAs released on 2026-03-24</title>
	<link>https://www.qubes-os.org/news/2026/03/24/xsas-released-on-2026-03-24/</link>
     <content:encoded>&lt;p&gt;The &lt;a href=&quot;https://xenproject.org/&quot;&gt;Xen Project&lt;/a&gt; has released one or more &lt;a href=&quot;https://xenbits.xen.org/xsa/&quot;&gt;Xen security advisories (XSAs)&lt;/a&gt;.
The security of Qubes OS is &lt;strong&gt;not&lt;/strong&gt; affected.&lt;/p&gt;

&lt;h2 id=&quot;xsas-that-do-affect-the-security-of-qubes-os&quot;&gt;XSAs that DO affect the security of Qubes OS&lt;/h2&gt;

&lt;p&gt;The following XSAs &lt;strong&gt;do affect&lt;/strong&gt; the security of Qubes OS:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;(none)&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;xsas-that-do-not-affect-the-security-of-qubes-os&quot;&gt;XSAs that DO NOT affect the security of Qubes OS&lt;/h2&gt;

&lt;p&gt;The following XSAs &lt;strong&gt;do not affect&lt;/strong&gt; the security of Qubes OS, and no user action is necessary:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://xenbits.xen.org/xsa/advisory-482.html&quot;&gt;XSA-482&lt;/a&gt;
    &lt;ul&gt;
      &lt;li&gt;In-VM escalation only&lt;/li&gt;
      &lt;li&gt;Qubes OS does not support Secure Boot inside VMs.&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;about-this-announcement&quot;&gt;About this announcement&lt;/h2&gt;

&lt;p&gt;Qubes OS uses the &lt;a href=&quot;https://wiki.xenproject.org/wiki/Xen_Project_Software_Overview&quot;&gt;Xen hypervisor&lt;/a&gt; as part of its &lt;a href=&quot;https://doc.qubes-os.org/en/latest/developer/system/architecture.html&quot;&gt;architecture&lt;/a&gt;. When the &lt;a href=&quot;https://xenproject.org/&quot;&gt;Xen Project&lt;/a&gt; publicly discloses a vulnerability in the Xen hypervisor, they issue a notice called a &lt;a href=&quot;https://xenproject.org/developers/security-policy/&quot;&gt;Xen security advisory (XSA)&lt;/a&gt;. Vulnerabilities in the Xen hypervisor sometimes have security implications for Qubes OS. When they do, we issue a notice called a &lt;a href=&quot;https://www.qubes-os.org/security/qsb/&quot;&gt;Qubes security bulletin (QSB)&lt;/a&gt;. (QSBs are also issued for non-Xen vulnerabilities.) However, QSBs can provide only &lt;em&gt;positive&lt;/em&gt; confirmation that certain XSAs &lt;em&gt;do&lt;/em&gt; affect the security of Qubes OS. QSBs cannot provide &lt;em&gt;negative&lt;/em&gt; confirmation that other XSAs do &lt;em&gt;not&lt;/em&gt; affect the security of Qubes OS. Therefore, we also maintain an &lt;a href=&quot;https://www.qubes-os.org/security/xsa/&quot;&gt;XSA tracker&lt;/a&gt;, which is a comprehensive list of all XSAs publicly disclosed to date, including whether each one affects the security of Qubes OS. When new XSAs are published, we add them to the XSA tracker and publish a notice like this one in order to inform Qubes users that a new batch of XSAs has been released and whether each one affects the security of Qubes OS.&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-24T00:00:00+00:00</dc:date>
	<dc:creator>Qubes</dc:creator>
</item> 
<item rdf:about="https://puri.sm/?p=85307">
	<title>Purism PureOS: Wired Confirmed iPhone’s Worst-Kept Secret: Closed Systems Fail at Scale</title>
	<link>https://puri.sm/posts/wired-confirmed-iphones-worst-kept-secret-closed-systems-fail-at-scale/</link>
     <content:encoded>&lt;p&gt;For years, Apple has sold the myth of the “unhackable iPhone.” A walled garden. A fortress. A device so locked down that only nation-states could dream of breaking in. Wired’s latest reporting just blew that narrative apart.&lt;/p&gt;
&lt;p&gt;The post &lt;a href=&quot;https://puri.sm/posts/wired-confirmed-iphones-worst-kept-secret-closed-systems-fail-at-scale/&quot; rel=&quot;nofollow&quot;&gt;Wired Confirmed iPhone’s Worst-Kept Secret: Closed Systems Fail at Scale&lt;/a&gt; appeared first on &lt;a href=&quot;https://puri.sm/&quot; rel=&quot;nofollow&quot;&gt;Purism&lt;/a&gt;.&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-23T16:28:47+00:00</dc:date>
	<dc:creator>Purism</dc:creator>
</item> 
<item rdf:about="https://sparkylinux.org/?p=14049">
	<title>SparkyLinux: Sparky 2026.03 Special Editions</title>
	<link>https://sparkylinux.org/sparky-2026-03-special-editions/</link>
     <content:encoded>&lt;p&gt;There are new iso images of Sparky 2026.03 Special Editions out there: GameOver, Multimedia and Rescue. This release is based on Debian testing “Forky”. The March update of Sparky Special Edition iso images features Linux kernel 6.19.8, updated packages from Debian and Sparky testing repos as of March 21, 2026, and most changes introduced at the 2026.03 release. There is no need to reinstall…&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://sparkylinux.org/sparky-2026-03-special-editions/&quot; rel=&quot;nofollow&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-23T12:42:39+00:00</dc:date>
	<dc:creator>pavroo</dc:creator>
</item> 
<item rdf:about="https://www.skudonet.com/?p=76954">
	<title>ZEVENET: SKUDONET Enterprise Edition 10.1.5 Released: performance, stability, and operational management improvements</title>
	<link>https://www.skudonet.com/blog/skudonet-enterprise-edition-10-1-5-released/</link>
     <content:encoded>&lt;p&gt;Maintaining a stable application infrastructure isn’t just about major changes. In critical environments, incremental improvements in performance, resource management, and system behavior make a real difference in day-to-day operations.&lt;/p&gt;
&lt;p&gt;The new &lt;strong&gt;SKUDONET Enterprise Edition 10.1.5&lt;/strong&gt; introduces optimizations focused on efficiency, operational stability, and consistency in traffic and security management.&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Key improvements in this release&lt;/strong&gt;&lt;/h2&gt;
&lt;h3&gt;&lt;strong&gt;SSL memory optimization in HTTP/S farms&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;One of the most sensitive aspects of any ADC is managing encrypted connections.&lt;/p&gt;
&lt;p&gt;In this version, memory usage for SSL operations within HTTP/S farms has been optimized, improving efficiency in high encrypted traffic scenarios.&lt;/p&gt;
&lt;p&gt;Additionally, internal behavior has been streamlined by removing legacy memory reset functions, contributing to more predictable performance.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Impact:&lt;/strong&gt; better resource utilization and increased stability under load.&lt;/p&gt;
&lt;h3&gt;&lt;strong&gt;Enhanced logging and diagnostics&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;Logging mechanisms in HTTP/S farms have been improved, and core dump generation has been introduced, enabling deeper analysis when incidents occur.&lt;/p&gt;
&lt;p&gt;This allows technical teams to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;detect issues faster&lt;/li&gt;
&lt;li&gt;analyze complex behaviors&lt;/li&gt;
&lt;li&gt;reduce troubleshooting time&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Impact:&lt;/strong&gt; greater visibility and diagnostic capabilities in production environments.&lt;/p&gt;
&lt;h3&gt;&lt;strong&gt;Improved APT operations management&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;A wait-lock system has been introduced to prevent concurrent APT executions.&lt;/p&gt;
&lt;p&gt;In environments where tasks are automated or multiple operations are managed simultaneously, this avoids conflicts during package management.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Impact:&lt;/strong&gt; improved system stability and reduced risk of inconsistencies.&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Included fixes&lt;/strong&gt;&lt;/h2&gt;
&lt;h3&gt;&lt;strong&gt;WebGUI – HSTS configuration&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;An issue in the WebGUI template affecting HSTS configuration has been resolved.&lt;/p&gt;
&lt;p&gt;Behavior and rendering are now consistent with the defined configuration.&lt;/p&gt;
&lt;h3&gt;&lt;strong&gt;WAF – Ruleset management&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;The ruleset deactivation process in the WAF has been improved.&lt;/p&gt;
&lt;p&gt;The WebGUI now correctly updates the payload, ensuring that rule changes are consistently reflected.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Impact:&lt;/strong&gt; increased reliability in managing security policies.&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Why do these improvements matter?&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;In modern ADC platforms like SKUDONET, the challenge isn’t just distributing traffic—it’s doing so efficiently, securely, and with full observability.&lt;/p&gt;
&lt;p&gt;Small improvements in:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;memory management&lt;/li&gt;
&lt;li&gt;operational control&lt;/li&gt;
&lt;li&gt;configuration consistency&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;have a direct impact on:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;service availability&lt;/li&gt;
&lt;li&gt;user experience&lt;/li&gt;
&lt;li&gt;operational workload&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;As defined in SKUDONET’s architecture, the ADC acts as a central point for availability, security, and performance in application delivery.&lt;/p&gt;
&lt;h2&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;/h2&gt;
&lt;p&gt;Version 10.1.5 strengthens key aspects of day-to-day operations:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;more efficient resource usage&lt;/li&gt;
&lt;li&gt;improved diagnostic capabilities&lt;/li&gt;
&lt;li&gt;more predictable system behavior&lt;/li&gt;
&lt;li&gt;enhanced WAF management&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;It doesn’t introduce disruptive changes, but it does deliver meaningful improvements that reinforce stability and reliability in production environments.&lt;/p&gt;
&lt;p&gt;If you’re looking to improve the stability and security of your infrastructure without adding complexity, &lt;a href=&quot;https://www.skudonet.com/try-skudonet/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;discover how SKUDONET adapts to physical, virtual, and cloud environments with a unified approach to Application Delivery—try it free for 30 days.&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you work with SKUDONET Enterprise Edition or want to stay up to date with the latest technical updates, &lt;a href=&quot;https://www.skudonet.com/about-us/timeline/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;visit our Timeline.&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-23T11:13:09+00:00</dc:date>
	<dc:creator>Isabel Perez</dc:creator>
</item> 
<item rdf:about="https://blog.vyos.io/vyos-stream-2026.03-is-available-for-download">
	<title>VyOS: VyOS Stream 2026.03 is available for download</title>
	<link>https://blog.vyos.io/vyos-stream-2026.03-is-available-for-download</link>
     <content:encoded>&lt;div class=&quot;hs-featured-image-wrapper&quot;&gt; 
 &lt;a class=&quot;hs-featured-image-link&quot; href=&quot;https://blog.vyos.io/vyos-stream-2026.03-is-available-for-download&quot; title=&quot;&quot;&gt; &lt;img alt=&quot;VyOS Stream 2026.03 is available for download&quot; class=&quot;hs-featured-image&quot; src=&quot;https://blog.vyos.io/hubfs/vyos_stream_2026.03_blog_post%20(Light)-1.png&quot; style=&quot;width: auto !important; float: left; margin: 0 15px 15px 0;&quot; /&gt; &lt;/a&gt; 
&lt;/div&gt; 
&lt;p&gt;Hello, Community!&lt;/p&gt; 
&lt;p&gt;&lt;span&gt;VyOS Stream 2026.03 is available for download now. It features multiple backports from the rolling release, including restored ability to directly upgrade from VyOS 1.3.x, a big rework of the VPP CLI, post-quantum pre-shared key support for IPsec, and multiple bug fixes.&lt;/span&gt;&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-20T09:28:00+00:00</dc:date>
	<dc:creator>Daniil Baturin</dc:creator>
</item> 
<item rdf:about="https://www.greenbone.net/blog/jetzt-patchen-7-neue-kritische-schwachstellen-in-veeam-backup-replication/">
	<title>GreenboneOS: Patch Now! 7 New Critical Vulnerabilities in Veeam Backup &amp; Replication</title>
	<link>https://www.greenbone.net/en/blog/patch-now-7-new-critical-vulnerabilities-in-veeam-backup-replication/</link>
     <content:encoded>On March 12th, 2026, Veeam published two security advisories containing 7 critical and one high-severity vulnerability in its Backup &amp;amp; Replication server. The flaws cumulatively affect the version 12 and 13 builds. Although there are no reports of active exploitation or public proof-of-concept (PoC) exploits available yet, Veeam has appeared on CISA’s Known Exploited Vulnerabilities […]</content:encoded> 
	<dc:date>2026-03-19T09:07:49+00:00</dc:date>
	<dc:creator>Joseph Lee</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38530">
	<title>Deepin: (中文) 还在“养虾”？deepin 请你吃“虾”了</title>
	<link>https://www.deepin.org/en/uos-ai-2-13-605/</link>
     <content:encoded>Sorry, this entry is only available in 中文.</content:encoded> 
	<dc:date>2026-03-18T11:11:00+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 
<item rdf:about="https://www.skudonet.com/?p=76861">
	<title>ZEVENET: OWASP CRS and Fail Fast: Improving Attack Detection in WAFs and Reverse Proxies</title>
	<link>https://www.skudonet.com/blog/owasp-crs-and-fail-fast-improving-attack-detection-in-wafs-and-reverse-proxies/</link>
     <content:encoded>&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;In web application security, &lt;/span&gt;&lt;b&gt;detecting attacks as early as possible is critical&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt; Every millisecond that a malicious request travels through an infrastructure increases backend exposure and consumes unnecessary resources.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Web Application Firewalls (WAFs) based on the &lt;/span&gt;&lt;b&gt;OWASP Core Rule Set (CRS)&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt; have become one of the most widely used mechanisms to protect applications against attacks such as:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;SQL Injection&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Command Injection&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Path Traversal&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Remote Code Execution&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Cross-Site Scripting (XSS)&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;However, when these rules are integrated into &lt;/span&gt;&lt;b&gt;modern high-performance reverse proxies&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;, a limitation appears due to the historical processing model inherited from &lt;/span&gt;&lt;b&gt;ModSecurity&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;In this article we will analyze:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;how the OWASP CRS inspection pipeline works&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;what issue appears in modern reverse proxies&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;how applying the &lt;/span&gt;&lt;b&gt;fail fast principle&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt; can improve security&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;We will also explain how &lt;/span&gt;&lt;b&gt;SKUDONET has implemented this approach to stop attacks as early as possible in the WAF data path&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;In perimeter security, &lt;/span&gt;&lt;b&gt;stopping an attack one step earlier in the data flow can make a critical difference&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;Why OWASP CRS Remains the Standard for WAF Protection&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;The &lt;/span&gt;&lt;a href=&quot;https://github.com/coreruleset/coreruleset&quot; rel=&quot;noopener nofollow&quot; target=&quot;_blank&quot;&gt;&lt;b&gt;OWASP Core Rule Set (CRS)&lt;/b&gt;&lt;/a&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt; is one of the most widely used rule sets for Web Application Firewalls.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;It is built on &lt;/span&gt;&lt;b&gt;ModSecurity&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt; and provides predefined rules designed to detect patterns associated with common vulnerabilities, particularly those included in the &lt;/span&gt;&lt;b&gt;OWASP Top 10&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Among the threats it can detect are:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;SQL injection&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Cross-site scripting&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Remote command execution&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Path traversal&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;protocol anomalies&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;malicious bots&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;The goal of OWASP CRS is to &lt;/span&gt;&lt;b&gt;analyze every HTTP request before it reaches the backend&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;, blocking malicious patterns through an &lt;/span&gt;&lt;b&gt;anomaly scoring system&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This model has proven effective for years, but it was designed at a time when most proxies &lt;/span&gt;&lt;b&gt;did not operate in high-performance streaming mode&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;How the OWASP CRS Inspection Pipeline Works &lt;/b&gt;&lt;/h2&gt;
&lt;h3&gt;&lt;b&gt;The ModSecurity Phase Model&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;OWASP CRS follows the &lt;/span&gt;&lt;b&gt;ModSecurity inspection model&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;, which divides the analysis of an HTTP request into several phases.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Simplified pipeline:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://www.skudonet.com/wp-content/uploads/2026/03/Grafico-1-Como-funciona-el-pipeline-de-inspeccion-de-OWASP-CRS-1.jpg&quot;&gt;&lt;img alt=&quot;pipeline-de-inspección-de-OWASP-CRS&quot; class=&quot;borde-negro alignnone wp-image-76886 size-full&quot; height=&quot;787&quot; src=&quot;https://www.skudonet.com/wp-content/uploads/2026/03/Grafico-1-Como-funciona-el-pipeline-de-inspeccion-de-OWASP-CRS-1.jpg&quot; width=&quot;622&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Each phase analyzes a different part of the traffic.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;Phase 1&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Analyzes information available immediately:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;HTTP headers&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;URI&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;query string&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;request metadata&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;b&gt;Phase 2&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Analyzes the full content of the request:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;request body&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;POST parameters&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;JSON&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;XML&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;complex payloads&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This approach works well for deep inspection, but it introduces an important consequence.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;A Subtle Issue in OWASP CRS&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Within OWASP CRS there are rules that analyze variables available &lt;/span&gt;&lt;b&gt;from the very beginning of the request&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;, such as:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;ARGS_GET&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;REQUEST_URI&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;QUERY_STRING&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;However, many of these rules &lt;/span&gt;&lt;b&gt;are executed in Phase 2&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This means that a request such as:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;GET /login.php?user=admin’ OR ‘1’=’1 HTTP/1.1&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Host: example.com&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;contains a &lt;/span&gt;&lt;b&gt;SQL injection clearly visible in the URL&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;, yet it may not be evaluated until &lt;/span&gt;&lt;b&gt;Phase 2&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;From a security perspective, this raises an obvious question:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;If the attack is already detectable in Phase 1, why wait until Phase 2 to block it?&lt;/b&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;The Security Principle: Fail Fast&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;In system architecture there is a fundamental principle:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Fail Fast&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;A system should &lt;/span&gt;&lt;b&gt;detect invalid conditions as early as possible in the execution flow&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Applied to a WAF, this means:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;An attack should be stopped as soon as it becomes detectable.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Not later.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;How Modern High-Performance Reverse Proxies Work&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Modern reverse proxies are designed to reduce:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;latency&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;memory consumption&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;buffering&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;To achieve this, many proxies operate in &lt;/span&gt;&lt;b&gt;streaming mode&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;An efficient proxy may process a request in the following way:&lt;/span&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Receive HTTP headers&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Analyze them&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Immediately forward them to the backend&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Later receive the request body&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Analyze and forward it&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Simplified flow:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://www.skudonet.com/wp-content/uploads/2026/03/Grafico-2-Como-funcionan-los-proxies-inversos-modernos-de-alto-rendimiento.jpg&quot;&gt;&lt;img alt=&quot;REVERSE PROXY HIGH-PERFORMANCE PROCESSING PIPELINE&quot; class=&quot;borde-negro alignnone wp-image-76872 size-full&quot; height=&quot;787&quot; src=&quot;https://www.skudonet.com/wp-content/uploads/2026/03/Grafico-2-Como-funcionan-los-proxies-inversos-modernos-de-alto-rendimiento.jpg&quot; width=&quot;622&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;But when combined with OWASP CRS, a problem appears.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;The Conflict Between High-Performance Proxies and OWASP CRS&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;If the proxy operates in streaming mode while OWASP CRS follows its traditional model:&lt;/span&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;b&gt;WAF Phase 1 executes&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt; (but the full evaluation is completed in Phase 2)&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Headers are forwarded to the backend&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;The request body arrives later&lt;/span&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;b&gt;WAF Phase 2 executes&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;,&lt;/span&gt; (completing the evaluation started in Phase 1).&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;The body is forwarded to the backend&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This means the backend may receive part of the request &lt;/span&gt;&lt;b&gt;before the WAF has made the final decision&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;From a security perspective, this is &lt;/span&gt;&lt;b&gt;suboptimal&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;Architecture Comparison: Traditional Pipeline vs Fail Fast&lt;/b&gt;&lt;/h2&gt;
&lt;h3&gt;&lt;b&gt;High-Performance Proxy with Traditional CRS &lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&quot;https://www.skudonet.com/wp-content/uploads/2026/03/Grafico-3-Pipeline-tradicional-con-CRS.jpg&quot;&gt;&lt;img alt=&quot;TRADITIONAL WAF PIPELINE &quot; class=&quot;borde-negro alignnone wp-image-76873 size-full&quot; height=&quot;787&quot; src=&quot;https://www.skudonet.com/wp-content/uploads/2026/03/Grafico-3-Pipeline-tradicional-con-CRS.jpg&quot; width=&quot;622&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Result:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;the backend has already received traffic&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;part of the attack has already progressed through the infrastructure&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;b&gt;Fail Fast Pipeline &lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;a href=&quot;https://www.skudonet.com/wp-content/uploads/2026/03/Grafico-4-Pipeline-con-enfoque-Fail-Fast.jpg&quot;&gt;&lt;img alt=&quot;SKUDONET FAIL FAST WAF &quot; class=&quot;borde-negro alignnone wp-image-76874 size-full&quot; height=&quot;787&quot; src=&quot;https://www.skudonet.com/wp-content/uploads/2026/03/Grafico-4-Pipeline-con-enfoque-Fail-Fast.jpg&quot; width=&quot;622&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;In this model, the attack is stopped &lt;/span&gt;&lt;b&gt;at the earliest possible point in the data path&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;Applying the SKUDONET Fail Fast Approach to the WAF&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;To address this problem, &lt;/span&gt;&lt;b&gt;SKUDONET implemented an approach based on the fail fast principle&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;The idea is simple:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;If an attack can be detected in Phase 1, it should be evaluated in Phase 1.&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This requires partially reorganizing the logic of OWASP CRS rules.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;Technical Example: CRS Rules That Can Be Evaluated Earlier&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;A simplified CRS rule example might look like this:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;SecRule ARGS_GET “@detectSQLi” \&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;“id:942100,\&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;phase:2,\&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;block,\&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;msg:’SQL Injection Attack Detected&#39;”&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Here we see the key issue:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;phase:2&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Even if the attack pattern appears in the URL, the rule may execute later.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Conceptually, an early detection could be evaluated like this:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;SecRule REQUEST_URI “@detectSQLi” \&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;“id:942100,\&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;phase:1,\&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;block”&lt;/span&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This allows attacks to be detected &lt;/span&gt;&lt;b&gt;before the traffic progresses through the processing pipeline&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Want to see how this works in practice?&lt;/p&gt;
&lt;p&gt;&lt;a class=&quot;brxe-button bricks-button red-btn&quot; href=&quot;https://www.skudonet.com/try-skudonet/&quot;&gt;Try the SKUDONET WAF Demo&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;h2&gt;&lt;b&gt;Early Evaluation (Phase 1) &lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;At this stage the WAF analyzes elements available from the start of the request:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;headers&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;URL&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;query string&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Examples of early detection include:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;SQL injection in the URL&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;command injection&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;path traversal&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;header anomalies&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Simplified flow:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://www.skudonet.com/wp-content/uploads/2026/03/Grafico-5-Evaluacion-temprana-fase-1.jpg&quot;&gt;&lt;img alt=&quot;SKUDONET WAF PHASE 1&quot; class=&quot;borde-negro alignnone wp-image-76875 size-full&quot; height=&quot;787&quot; src=&quot;https://www.skudonet.com/wp-content/uploads/2026/03/Grafico-5-Evaluacion-temprana-fase-1.jpg&quot; width=&quot;622&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;If the attack is detected here, &lt;/span&gt;&lt;b&gt;the request never reaches the backend&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;Deep Evaluation (Phase 2) &lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;When the body arrives, the second inspection phase runs:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://www.skudonet.com/wp-content/uploads/2026/03/Grafico-6-Evaluacion-profunda-fase-2.jpg&quot;&gt;&lt;img alt=&quot;SKUDONET WAF PHASE 2&quot; class=&quot;borde-negro alignnone wp-image-76876 size-full&quot; height=&quot;787&quot; src=&quot;https://www.skudonet.com/wp-content/uploads/2026/03/Grafico-6-Evaluacion-profunda-fase-2.jpg&quot; width=&quot;622&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This phase enables the detection of &lt;/span&gt;&lt;b&gt;more complex attack patterns&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;Conclusion&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;OWASP CRS remains one of the most important tools for protecting web applications.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;However, when deployed in &lt;/span&gt;&lt;b&gt;modern high-performance architectures&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;, the traditional phase model may introduce certain limitations, particularly in environments where reverse proxies operate in streaming mode.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;The &lt;/span&gt;&lt;b&gt;fail fast principle&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt; offers a clear solution:&lt;/span&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt; detect attacks as early as possible in the processing flow and block them before they progress through the infrastructure.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This approach allows organizations to:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;identify threats in early stages of the request&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;reduce backend exposure&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;improve the overall efficiency of the security system&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;In modern infrastructures, &lt;/span&gt;&lt;b&gt;every millisecond matters&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt; And in perimeter security, &lt;/span&gt;&lt;b&gt;stopping an attack one step earlier can make all the difference&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Platforms like &lt;/span&gt;&lt;b&gt;SKUDONET apply this fail fast approach directly within the reverse proxy pipeline&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;, allowing attacks to be stopped as early as possible in the WAF data path.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;FAQ&lt;/h2&gt;
&lt;h3&gt;&lt;strong&gt;What is fail fast in cybersecurity?&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;Fail fast is a design principle where systems detect invalid or malicious conditions as early as possible. In WAF architectures, this means identifying and blocking malicious requests at the earliest stage of the inspection pipeline.&lt;/p&gt;
&lt;h3&gt;&lt;strong&gt;What is OWASP CRS?&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;OWASP Core Rule Set (CRS) is a collection of security rules used by Web Application Firewalls to detect common web attacks such as SQL injection, cross-site scripting (XSS), and command injection.&lt;/p&gt;
&lt;h3&gt;&lt;strong&gt;Why can OWASP CRS delay attack detection?&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;Some OWASP CRS rules analyze request parameters during Phase 2 of the ModSecurity inspection model, even when malicious patterns may already be visible earlier in the request lifecycle.&lt;/p&gt;
&lt;h3&gt;&lt;strong&gt;Why is the fail fast principle important for reverse proxies?&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;High-performance reverse proxies often forward HTTP headers to the backend before the full request body is received. Detecting attacks early prevents malicious requests from reaching backend services and reduces unnecessary resource consumption.&lt;/p&gt;
&lt;h3&gt;&lt;strong&gt;What role does a WAF play in an ADC?&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;In modern Application Delivery Controllers (ADC), the Web Application Firewall is integrated directly into the Layer-7 proxy pipeline, allowing malicious traffic to be inspected and blocked before it reaches application servers.&lt;/p&gt;
&lt;h3&gt;&lt;strong&gt;See Fail Fast WAF Protection in Action&lt;/strong&gt;&lt;/h3&gt;
&lt;p&gt;If you want to see how the fail fast approach works in a real reverse proxy environment, you can test the SKUDONET platform.&lt;/p&gt;
&lt;p&gt;&lt;a class=&quot;brxe-button bricks-button red-btn&quot; href=&quot;https://www.skudonet.com/try-skudonet/&quot;&gt;Start the SKUDONET Demo&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-18T09:23:03+00:00</dc:date>
	<dc:creator>Isabel Perez</dc:creator>
</item> 
<item rdf:about="https://www.skudonet.com/?p=76893">
	<title>ZEVENET: SKUDONET Enterprise Edition 10.1.4 Released: Full Control of Fail Fast, Improved WAF Accuracy, and Critical Fixes</title>
	<link>https://www.skudonet.com/blog/enterprise-edition-10-1-4-released/</link>
     <content:encoded>&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;SKUDONET Enterprise Edition &lt;/span&gt;&lt;b&gt;10.1.4&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt; is now available, consolidating the improvements introduced in version 10.1.3 and adding critical fixes and enhancements to ensure &lt;/span&gt;&lt;b&gt;greater stability, more accurate security processing, and better control over threat mitigation&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This release responds directly to issues identified after the previous version, delivering a more refined and reliable platform for production environments .&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;In addition to resolving bugs, version 10.1.4 introduces a key evolution of the &lt;/span&gt;&lt;b&gt;Fail Fast capability&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;, giving administrators full control over how and when malicious traffic is blocked.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;What’s new in SKUDONET EE 10.1.4&lt;/b&gt;&lt;/h2&gt;
&lt;h3&gt;&lt;b&gt;Full control of Fail Fast with SKD_FAIL_FAST&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Version 10.1.3 introduced the concept of &lt;/span&gt;&lt;b&gt;Fail Fast&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt; within the IPDS engine. Now, version 10.1.4 takes it a step further.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;A new variable, &lt;/span&gt;&lt;b&gt;SKD_FAIL_FAST&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;, allows administrators to &lt;/span&gt;&lt;b&gt;enable or disable early-stage request blocking&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt; during rule evaluation.&lt;/span&gt;&lt;/p&gt;
&lt;h4&gt;&lt;b&gt;What does this mean in practice?&lt;/b&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Malicious requests can be blocked &lt;/span&gt;&lt;b&gt;earlier in the inspection pipeline&lt;/b&gt; &lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Security decisions are applied &lt;/span&gt;&lt;b&gt;before full rule processing completes&lt;/b&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Unnecessary processing of suspicious traffic is reduced&lt;/span&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;&lt;b&gt;Why it matters&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;In high-traffic or attack scenarios:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Reduces CPU and memory consumption&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Improves response time under attack&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Prevents backend overload&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This gives teams &lt;/span&gt;&lt;b&gt;granular control over security behavior&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;, allowing them to adapt protection strategies depending on performance or security requirements.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;Improved OWASP CRS rule processing&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;The handling of &lt;/span&gt;&lt;b&gt;OWASP Core Rule Set (CRS)&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt; rules has been improved to ensure they are evaluated in the correct processing phases.&lt;/span&gt;&lt;/p&gt;
&lt;h4&gt;&lt;b&gt;Problem&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Incorrect rule evaluation phases can lead to:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;False positives&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Missed detections&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Inconsistent behavior&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;&lt;b&gt;Solution&lt;/b&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Rules are now executed in their &lt;/span&gt;&lt;b&gt;intended phases&lt;/b&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Detection accuracy is improved&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Alignment with OWASP standards is reinforced&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This results in a more reliable WAF behavior, especially in environments with:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;APIs&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Complex payloads&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Custom security rules&lt;/span&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h4&gt;&lt;b&gt;Improved WAF validation in HTTP/S farms&lt;/b&gt;&lt;/h4&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Version 10.1.4 introduces enhanced validation and consistency checks for &lt;/span&gt;&lt;b&gt;WAF rulesets applied to HTTP/S farms&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;h4&gt;&lt;b&gt;Impact&lt;/b&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Ensures correct rule configuration&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Prevents misconfigurations before deployment&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Improves reliability of applied security policies&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;For administrators, this means fewer unexpected behaviors and more predictable WAF enforcement in production.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;Bug fixes for production stability&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This release includes critical fixes that address issues detected in previous versions:&lt;/span&gt;&lt;/p&gt;
&lt;h4&gt;&lt;b&gt;Improved WAF reload behavior in HTTP/S farms&lt;/b&gt;&lt;/h4&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;WAF reload processes now ensure a more consistent application of changes&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Configuration updates are applied in a more reliable and predictable way&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Improved consistency across running farms during policy updates&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This enhancement provides administrators with &lt;/span&gt;&lt;b&gt;greater confidence when applying changes to active environments&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;, reducing variability and ensuring smoother WAF policy updates in production.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;Key improvements introduced in 10.1.3 (included in this release)&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Version 10.1.4 also includes all improvements from 10.1.3, ensuring a consolidated and stable release.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;System performance optimizations&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;System-level tuning improves:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Resource management&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Service scheduling&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Overall responsiveness&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This allows the ADC to maintain stability under &lt;/span&gt;&lt;b&gt;high traffic loads and intensive processing scenarios&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;Improved service management in the GUI&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;The services view now includes a &lt;/span&gt;&lt;b&gt;permanent sorting option&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;, making it easier to:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Navigate large service lists&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Manage multiple farms&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Operate complex infrastructures&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;A small UX improvement with a big operational impact.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;Introduction of Fail Fast in IPDS&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Version 10.1.3 introduced the &lt;/span&gt;&lt;b&gt;Fail Fast concept&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;, enabling:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Immediate blocking of malicious requests&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Reduced unnecessary processing&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Faster response to automated threats&lt;/span&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Version 10.1.4 builds on this by adding control through &lt;/span&gt;&lt;b&gt;SKD_FAIL_FAST&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;Why Fail Fast changes application security&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Fail Fast is not just a feature — it’s a change in how security is applied at the ADC level.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;Traditional approach&lt;/b&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Requests are fully processed&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Security rules are evaluated step by step&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Malicious traffic consumes resources before being blocked&lt;/span&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;&lt;b&gt;Fail Fast approach&lt;/b&gt;&lt;/h3&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Malicious patterns are detected early&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Requests are dropped immediately&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Backend and ADC resources are preserved&lt;/span&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This is especially critical in:&lt;/span&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;DDoS-like scenarios&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Bot attacks&lt;/span&gt;&lt;/li&gt;
&lt;li style=&quot;font-weight: 400;&quot;&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;API abuse&lt;/span&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Fail Fast turns the ADC into a &lt;/span&gt;&lt;b&gt;more proactive and efficient security layer&lt;/b&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;h2&gt;&lt;b&gt;Why this update matters for production environments&lt;/b&gt;&lt;/h2&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;This release directly impacts three key areas:&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;Stability&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Fixes ensure predictable behavior in WAF and routing-related operations.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;Security accuracy&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Better OWASP CRS handling and validation improve detection quality and reduce false positives.&lt;/span&gt;&lt;/p&gt;
&lt;h3&gt;&lt;b&gt;Performance efficiency&lt;/b&gt;&lt;/h3&gt;
&lt;p&gt;&lt;span style=&quot;font-weight: 400;&quot;&gt;Fail Fast and system optimizations reduce resource usage and improve response times under load.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;If you work with SKUDONET Enterprise Edition or want to stay up to date with the latest technical updates, &lt;a href=&quot;https://www.skudonet.com/about-us/timeline/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;visit our Timeline.&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;If you’d like to experience these improvements firsthand, &lt;a href=&quot;https://www.skudonet.com/try-skudonet/&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;&lt;strong&gt;try the SKUDONET Enterprise Edition 30-day trial.&lt;/strong&gt;&lt;/a&gt;&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-17T17:37:10+00:00</dc:date>
	<dc:creator>Isabel Perez</dc:creator>
</item> 
<item rdf:about="https://www.univention.de/?p=85733">
	<title>Univention Corporate Server: Separate Admin Accounts in UCS: Role-Based Delegation and Just-in-Time Authentication</title>
	<link>https://www.univention.com/blog-en/2026/03/ucs-separate-admin-accounts-delegation-just-in-time-authentication/</link>
     <content:encoded>&lt;div class=&quot;wpb-content-wrapper&quot;&gt;&lt;div class=&quot;uni-section uni-section--pt-0 uni-section--pb-8 &quot;&gt;&lt;div class=&quot;uni-container uni-container--sm&quot;&gt;&lt;div class=&quot;vc_row wpb_row vc_row-fluid&quot;&gt;&lt;div class=&quot;wpb_column vc_column_container vc_col-sm-12&quot;&gt;&lt;div class=&quot;vc_column-inner&quot;&gt;&lt;div class=&quot;wpb_wrapper&quot;&gt;
	&lt;div class=&quot;wpb_text_column wpb_content_element&quot;&gt;
		&lt;div class=&quot;wpb_wrapper&quot;&gt;
			&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;&lt;i&gt;Running administrative accounts and regular user accounts in the same directory is common in many environments – but separating them can significantly improve security. &lt;strong&gt;With Delegative Administration and Just-in-Time Authentication, UCS cleanly separates roles from identities.&lt;/strong&gt; The result: less ACL complexity, clearer structures, and a more modern approach to administration.&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;In many IT environments, this is still common practice: domain administrators are also regular users. The same account that reads email, logs into business applications, and accesses internal services may also hold full administrative privileges in the directory.&lt;/p&gt;
&lt;p&gt;Convenient? Absolutely. Risk-free? Not quite. If such an account is compromised, the impact goes far beyond a single user. A compromised admin account can potentially expose the entire infrastructure. That is why the &lt;a href=&quot;https://www.bsi.bund.de/EN/Themen/Unternehmen-und-Organisationen/Standards-und-Zertifizierung/IT-Grundschutz/it-grundschutz_node.html&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;German BSI IT-Grundschutz&lt;/a&gt; framework recommends clearly separating administrative accounts from regular user identities. In theory, that sounds pretty straightforward. In practice, the real question is: how do you actually implement that separation?&lt;/p&gt;
&lt;p&gt;&lt;span lang=&quot;en-US&quot;&gt;With &lt;a href=&quot;https://docs.software-univention.de/release-notes/5.2-4/en/index.html&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;UCS 5.2-4&lt;/a&gt;, released in December 2025, Univention introduces two new Nubus features designed to address exactly this challenge: Delegative Administration and Just-in-Time Authentication. Both &lt;/span&gt;&lt;span lang=&quot;en-US&quot;&gt;features&lt;/span&gt;&lt;span lang=&quot;en-US&quot;&gt; are currently available in preview. This article explains how they work and why they matter.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;uni-section uni-section--pt-0 uni-section--pb-8 &quot;&gt;&lt;div class=&quot;uni-container uni-container--sm&quot;&gt;&lt;div class=&quot;vc_row wpb_row vc_row-fluid&quot;&gt;&lt;div class=&quot;wpb_column vc_column_container vc_col-sm-12&quot;&gt;&lt;div class=&quot;vc_column-inner&quot;&gt;&lt;div class=&quot;wpb_wrapper&quot;&gt;

&lt;h2&gt;
  Delegative Administration in UCS: Rollen statt komplexer LDAP-ACLs&lt;/h2&gt;


	&lt;div class=&quot;wpb_text_column wpb_content_element&quot;&gt;
		&lt;div class=&quot;wpb_wrapper&quot;&gt;
			&lt;div id=&quot;meta-origin&quot;&gt;
&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;Anyone who wants to delegate administrative permissions in a directory service in a structured and transparent way sooner or later ends up dealing with LDAP Access Control Lists (ACLs). From a technical standpoint, they are extremely powerful. ACLs allow administrators to define very precisely who can read, modify, or delete specific objects. A new department can be placed in its own organizational unit (OU). A help desk team might receive permission to reset passwords. An external service provider could be granted temporary access to a specific part of the directory.&lt;/p&gt;
&lt;p&gt;All of this is possible with ACLs. But things tend to get messy quickly. With every additional rule or exception, the configuration becomes harder to understand. And at some point, figuring out why a certain access is allowed or denied means digging through increasingly complex rule logic. Delegation is possible, but transparency often suffers.&lt;/p&gt;
&lt;p&gt;&lt;span lang=&quot;en-US&quot;&gt;Delegative Administration in Nubus introduces a new approach to authorization in the directory service through the Univention Directory Manager (UDM). The idea is simple: administrators should be able to define clearly who is allowed to do what in the directory service, and under which conditions. Right now, the feature is still in preview.&lt;/span&gt; According to the &lt;a href=&quot;https://docs.software-univention.de/ext-delegative-administration/5.2/en/index.html&quot; rel=&quot;noopener&quot; target=&quot;_blank&quot;&gt;documentation&lt;/a&gt;, Delegative Administration is not yet intended for production use. Configuration and setup details may still change in upcoming releases.&lt;/p&gt;
&lt;p&gt;&lt;span lang=&quot;en-US&quot;&gt;One important limitation of the current preview is that Delegative Administration doesn&lt;/span&gt;&lt;span lang=&quot;en-US&quot;&gt;‘&lt;/span&gt;&lt;span lang=&quot;en-US&quot;&gt;t control which modules are visible in the Univention Management Console (UMC). Module visibility continues to be handled by the existing authorization mechanisms, primarily UCS policies. &lt;/span&gt;Delegative Administration operates at a different level. It evaluates authorization directly within UDM, checking whether a specific action in the directory service is allowed.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;uni-section uni-section--pt-0 uni-section--pb-8 &quot;&gt;&lt;div class=&quot;uni-container uni-container--sm&quot;&gt;&lt;div class=&quot;vc_row wpb_row vc_row-fluid&quot;&gt;&lt;div class=&quot;wpb_column vc_column_container vc_col-sm-12&quot;&gt;&lt;div class=&quot;vc_column-inner&quot;&gt;&lt;div class=&quot;wpb_wrapper&quot;&gt;

&lt;h2&gt;
  Role-Based Authorization in the Univention Directory Manager (UDM)&lt;/h2&gt;


	&lt;div class=&quot;wpb_text_column wpb_content_element&quot;&gt;
		&lt;div class=&quot;wpb_wrapper&quot;&gt;
			&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;Instead of deriving permissions indirectly from ACL rules, Delegative Administration uses explicit roles. A role specifies&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;which object types it applies to (e.g., users or groups),&lt;/li&gt;
&lt;li&gt;which part of the directory it covers (such as a specific OU),&lt;/li&gt;
&lt;li&gt;which actions are allowed (read, modify, create, delete),&lt;/li&gt;
&lt;li&gt;and which attributes can be accessed or modified.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Roles can be assigned directly to users or groups. When a role is assigned to a group, all members automatically inherit it. Authorization checks happen inside the UDM layer, where each requested operation is evaluated against the role definitions. The underlying LDAP ACLs stay exactly as they are.&lt;/p&gt;
&lt;p&gt;This example shows how straightforward this works:&lt;/p&gt;
&lt;pre&gt;access by role=&quot;myRole&quot;
   &lt;span lang=&quot;en-US&quot;&gt;to objecttype=&quot;users/user&quot; position.subtree=&quot;cn=users,{ldap/base}&quot;&lt;/span&gt;
   &lt;span lang=&quot;en-US&quot;&gt;grant actions=&quot;search,read&quot;&lt;/span&gt;
   &lt;span lang=&quot;en-US&quot;&gt;grant properties=&quot;*&quot; permission=&quot;read&quot;&lt;/span&gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;This definition grants the role &lt;span style=&quot;font-family: Liberation Mono, monospace;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;myRole&lt;/span&gt;&lt;/span&gt; read-only access to user objects of type &lt;span style=&quot;font-family: Liberation Mono, monospace;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;users/user&lt;/span&gt;&lt;/span&gt; within a specific subtree below &lt;span style=&quot;font-family: Liberation Mono, monospace;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;cn=users&lt;/span&gt;&lt;/span&gt;. Within that scope, the allowed actions are defined explicitly—in this case &lt;span style=&quot;font-family: Liberation Mono, monospace;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;search&lt;/span&gt;&lt;/span&gt; and &lt;span style=&quot;font-family: Liberation Mono, monospace;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;read&lt;/span&gt;&lt;/span&gt;. Other actions such as &lt;span style=&quot;font-family: Liberation Mono, monospace;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;create&lt;/span&gt;&lt;/span&gt; or &lt;span style=&quot;font-family: Liberation Mono, monospace;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;delete&lt;/span&gt;&lt;/span&gt; could be added as needed. Attribute access can also be controlled. In this example, all attributes may be read, but none can be modified.&lt;/p&gt;
&lt;/div&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;uni-section uni-section--pt-0 uni-section--pb-8 &quot;&gt;&lt;div class=&quot;uni-container uni-container--sm&quot;&gt;&lt;div class=&quot;vc_row wpb_row vc_row-fluid&quot;&gt;&lt;div class=&quot;wpb_column vc_column_container vc_col-sm-12&quot;&gt;&lt;div class=&quot;vc_column-inner&quot;&gt;&lt;div class=&quot;wpb_wrapper&quot;&gt;

&lt;h2&gt;
  How Delegative Administration Works for an Organizational Unit&lt;/h2&gt;


	&lt;div class=&quot;wpb_text_column wpb_content_element&quot;&gt;
		&lt;div class=&quot;wpb_wrapper&quot;&gt;
			&lt;div id=&quot;meta-origin&quot;&gt;
&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;The concept becomes easier to understand with a simple example. Imagine a user account called &lt;span style=&quot;font-family: Liberation Mono, monospace;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;ou1-admin&lt;/span&gt;&lt;/span&gt;. This account is assigned a role that grants administrative permissions only for the organizational unit &lt;span style=&quot;font-family: Liberation Mono, monospace;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;OU1&lt;/span&gt;&lt;/span&gt;. After logging in, the administrator only sees that part of the LDAP tree. The same applies to the user management module: it lists only the accounts located within that organizational unit.&lt;/p&gt;
&lt;p&gt;Within this scope, the administrator can modify certain attributes, for example, the description field of a user object. But the boundaries are strict. If the user tries to assign roles or work outside &lt;span style=&quot;font-family: Liberation Mono, monospace;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;OU1&lt;/span&gt;&lt;/span&gt;, the system returns a clear “Permission denied” message.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href=&quot;https://www.univention.de/wp-content/uploads/2026/03/ou1-admin-permission-denied-EN.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;image-no-border alignnone wp-image-85734&quot; height=&quot;425&quot; src=&quot;https://www.univention.de/wp-content/uploads/2026/03/ou1-admin-permission-denied-EN-1000x607.png&quot; width=&quot;700&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Now imagine assigning an additional administrative role for &lt;span style=&quot;font-family: Liberation Mono, monospace;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;OU2&lt;/span&gt;&lt;/span&gt; to the same account. After the next login, both organizational units appear in the directory tree. The administrative scope expands accordingly. Permissions are not extended implicitly or through hidden rule interactions. Instead, they grow in a transparent and predictable way through additional roles.&lt;/p&gt;
&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt; &lt;/p&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href=&quot;https://www.univention.de/wp-content/uploads/2026/03/ou1-admin-ou2-EN.png&quot;&gt;&lt;img alt=&quot;&quot; class=&quot;image-no-border alignnone wp-image-85735&quot; height=&quot;431&quot; src=&quot;https://www.univention.de/wp-content/uploads/2026/03/ou1-admin-ou2-EN-1000x615.png&quot; width=&quot;700&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;The result is a role-based model for administrative permissions that is easier to delegate, easier to configure, and far easier to understand than complex ACL structures. Please note, that Delegative Administration doesn’t replace LDAP ACLs. Instead, it adds a clearly structured authorization layer inside the Univention Directory Manager.&lt;/p&gt;
&lt;div id=&quot;meta-origin&quot;&gt;
&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;Defining roles, however, is only the first step. Even a perfectly configured OU administrator can become a risk if the administrative account lives in the same directory as all regular user accounts. This is exactly where Just-in-Time Authentication comes into play.&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;uni-section uni-section--pt-0 uni-section--pb-8 &quot;&gt;&lt;div class=&quot;uni-container uni-container--sm&quot;&gt;&lt;div class=&quot;vc_row wpb_row vc_row-fluid&quot;&gt;&lt;div class=&quot;wpb_column vc_column_container vc_col-sm-12&quot;&gt;&lt;div class=&quot;vc_column-inner&quot;&gt;&lt;div class=&quot;wpb_wrapper&quot;&gt;

&lt;h2&gt;
  Just-in-Time Authentication in Nubus: Separating Administrative Accounts&lt;/h2&gt;


	&lt;div class=&quot;wpb_text_column wpb_content_element&quot;&gt;
		&lt;div class=&quot;wpb_wrapper&quot;&gt;
			&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;The second feature is Just-in-Time Authentication. It works together with Delegative Administration and addresses another important question: where should administrative accounts actually live? The basic idea is simple: administrative accounts and regular user accounts should not be stored in the same directory. Instead, the two are separated:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;One directory service stores the managed accounts.&lt;/li&gt;
&lt;li&gt;A second directory service (e.g., Nubus or Active Directory) contains the administrative identities.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Administrators sign in with accounts from that external directory, but they still manage objects in the Nubus directory where the users actually reside. This creates a clear separation between managed identities and administrative identities. It follows established security best practices and aligns with the requirements defined in the BSI IT-Grundschutz, which recommend keeping administrative accounts separate.&lt;/p&gt;
&lt;/div&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;uni-section uni-section--pt-0 uni-section--pb-8 &quot;&gt;&lt;div class=&quot;uni-container uni-container--sm&quot;&gt;&lt;div class=&quot;vc_row wpb_row vc_row-fluid&quot;&gt;&lt;div class=&quot;wpb_column vc_column_container vc_col-sm-12&quot;&gt;&lt;div class=&quot;vc_column-inner&quot;&gt;&lt;div class=&quot;wpb_wrapper&quot;&gt;

&lt;h2&gt;
  How Just-in-Time Authentication Works with Keycloak and OIDC&lt;/h2&gt;


	&lt;div class=&quot;wpb_text_column wpb_content_element&quot;&gt;
		&lt;div class=&quot;wpb_wrapper&quot;&gt;
			&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;Technically, this mechanism is based on OpenID Connect (OIDC). When someone signs in to the Univention Management Console (UMC), authentication happens through the Nubus identity provider, Keycloak. For Just-in-Time Authentication, Keycloak is configured to trust the identity provider of the external management domain. This establishes a federation between the two systems:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Signing in to the UMC first redirects the request to Keycloak.&lt;/li&gt;
&lt;li&gt;Keycloak forwards the login request to the identity provider of the management domain.&lt;/li&gt;
&lt;li&gt;The user authenticates there, against the external directory.&lt;/li&gt;
&lt;li&gt;The external identity provider returns an OIDC token, which includes information such as:&lt;/li&gt;
&lt;/ol&gt;
&lt;ul&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Liberation Mono, monospace;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;nubus_id&lt;/span&gt;&lt;/span&gt;: a unique identifier for the management domain&lt;/li&gt;
&lt;li&gt;&lt;span style=&quot;font-family: Liberation Mono, monospace;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;nubus_roles&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: Liberation Mono, monospace;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;_from_groups&lt;/span&gt;&lt;/span&gt;: the roles used to authorize the account&lt;/li&gt;
&lt;/ul&gt;
&lt;ol start=&quot;5&quot;&gt;
&lt;li&gt;Nubus Keycloak passes this information on to the UMC.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;At that point, the UMC detects that the account doesn’t exist in the local LDAP directory. And this is where the key idea of Just-in-Time Authentication becomes visible. No local admin account is created. Nothing is synchronized or replicated. There is no shadow account in the directory. Instead, the roles contained in the token &lt;span style=&quot;font-family: Liberation Mono, monospace;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;nubus_roles&lt;/span&gt;&lt;/span&gt;&lt;span style=&quot;font-family: Liberation Mono, monospace;&quot;&gt;&lt;span style=&quot;font-size: small;&quot;&gt;_from_groups&lt;/span&gt;&lt;/span&gt; are applied only for the duration of that session.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://www.univention.de/wp-content/uploads/2026/03/nubus-keycloak.png&quot;&gt;&lt;img alt=&quot;nubus-keycloak&quot; class=&quot;image-no-border alignnone wp-image-85731&quot; height=&quot;469&quot; src=&quot;https://www.univention.de/wp-content/uploads/2026/03/nubus-keycloak-1000x671.png&quot; width=&quot;700&quot; /&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Think of it as a visitor badge. The identity remains in the external system. During the session, the permissions defined in the token are activated temporarily. Once the user logs out, those permissions disappear again.&lt;/p&gt;
&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;If the administrative account is disabled in the external system, access to the UMC stops immediately as well. Because no local copy of the account exists in the Nubus directory, the account status takes effect directly through the authentication flow. No additional status synchronization is required.&lt;/p&gt;
&lt;/div&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;uni-section uni-section--pt-0 uni-section--pb-8 &quot;&gt;&lt;div class=&quot;uni-container uni-container--sm&quot;&gt;&lt;div class=&quot;vc_row wpb_row vc_row-fluid&quot;&gt;&lt;div class=&quot;wpb_column vc_column_container vc_col-sm-12&quot;&gt;&lt;div class=&quot;vc_column-inner&quot;&gt;&lt;div class=&quot;wpb_wrapper&quot;&gt;

&lt;h2&gt;
  Delegative Administration and Just-in-Time Authentication: Two Pieces of the Same Model&lt;/h2&gt;


	&lt;div class=&quot;wpb_text_column wpb_content_element&quot;&gt;
		&lt;div class=&quot;wpb_wrapper&quot;&gt;
			&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;The real strength of these features becomes clear when you look at them together.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Delegative Administration defines what an account is allowed to do in the directory.&lt;/li&gt;
&lt;li&gt;Just-in-Time-Authentication defines where that account comes from.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If roles are defined but administrative accounts still live in the same directory as the managed user accounts, a structural risk remains. The admin account exists permanently inside the system. It’s technically part of the same directory and has to be protected there with additional safeguards. In that situation, the separation between administrative and regular identities may exist as a policy—but not as part of the architecture.&lt;/p&gt;
&lt;p&gt;Just-in-Time Authentication changes that. Administrative identities remain in a separate management domain, such as an Active Directory or another Nubus system. They don’t exist as local objects in the target directory. They are not replicated, synchronized, or stored there permanently. Only when an administrator signs in through OpenID Connect are the required roles applied temporarily for that session.&lt;/p&gt;
&lt;p&gt;Together, these two features make it possible to manage administrative access in a way that is structured, transparent, and easy to control—without adding more LDAP ACL complexity and without maintaining duplicate accounts.&lt;/p&gt;
&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;&lt;span lang=&quot;en-US&quot;&gt;Both features are currently available in preview with Nubus for UCS. If separating administrative accounts is something you’re working on, &lt;a href=&quot;https://www.univention.com/contact/&quot;&gt;let&lt;/a&gt;&lt;/span&gt;&lt;a href=&quot;https://www.univention.com/contact/&quot;&gt;&lt;span lang=&quot;en-US&quot;&gt;‘&lt;/span&gt;&lt;span lang=&quot;en-US&quot;&gt;s talk&lt;/span&gt;&lt;/a&gt;&lt;span lang=&quot;en-US&quot;&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;/div&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Der Beitrag &lt;a href=&quot;https://www.univention.com/blog-en/2026/03/ucs-separate-admin-accounts-delegation-just-in-time-authentication/&quot;&gt;Separate Admin Accounts in UCS: Role-Based Delegation and Just-in-Time Authentication&lt;/a&gt; erschien zuerst auf &lt;a href=&quot;https://www.univention.com&quot;&gt;Univention&lt;/a&gt;.&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-17T08:16:13+00:00</dc:date>
	<dc:creator>Felix Botner</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38501">
	<title>Deepin: (中文) 新手必看超详细教程！如何在deepin上运行Windows应用</title>
	<link>https://www.deepin.org/en/deepin-wine-usage-guide-1/</link>
     <content:encoded>Sorry, this entry is only available in 中文.</content:encoded> 
	<dc:date>2026-03-17T02:27:07+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 
<item rdf:about="https://blog.armbian.com/rss/69b8bb4bb9cecb000150ea0a">
	<title>ARMBIAN: Github Highlights</title>
	<link>https://blog.armbian.com/github-highlights-17/</link>
     <content:encoded>&lt;img alt=&quot;Github Highlights&quot; src=&quot;https://blog.armbian.com/content/images/2026/03/githubhighlights-2-1.webp&quot; /&gt;&lt;p&gt;This week in Armbian development saw significant progress across board support and kernel updates. New boards such as the Cainiao CNIOT Core, EByte ECB41-PGE, DG SVR 865 Tiny, and NORCO EMB-3531 received initial support, expanding hardware compatibility. Kernel patches were rewritten for the meson64 and rockchip64 platforms, aligning with version 6.18.18, while edge releases were bumped to 7.0-rc3 and rc4. Improvements included enhanced SD card and audio support for SpacemiT and Youyeetoo YY3588 boards, as well as refined configuration checks and display fixes. Several upstream patches were dropped or disabled, and the Dependabot schedule was updated for daily maintenance. Additional fixes addressed USB modes, Docker host-gateway resolution, and Xorg display issues, rounding out a productive week for the Armbian project.&lt;/p&gt;&lt;h2 id=&quot;changes&quot;&gt;Changes&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;Add cainiao-cniot-core board and cainiao vendor image. by &lt;a href=&quot;https://github.com/retro98boy?ref=blog.armbian.com&quot;&gt;@retro98boy&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/251?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#251&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add EByte Vendor // ECB41-PGE board. by &lt;a href=&quot;https://github.com/vidplace7?ref=blog.armbian.com&quot;&gt;@vidplace7&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/250?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#250&lt;/a&gt;&lt;/li&gt;&lt;li&gt;add recomputer rk3576-devkit dts. by &lt;a href=&quot;https://github.com/ackPeng?ref=blog.armbian.com&quot;&gt;@ackPeng&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/linux-rockchip/pull/451?ref=blog.armbian.com&quot;&gt;armbian/linux-rockchip#451&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Add support for the Radxa Display 10 FHD to the Rock 5B Plus. by &lt;a href=&quot;https://github.com/FlorianKohn?ref=blog.armbian.com&quot;&gt;@FlorianKohn&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/linux-rockchip/pull/453?ref=blog.armbian.com&quot;&gt;armbian/linux-rockchip#453&lt;/a&gt;&lt;/li&gt;&lt;li&gt;add: initial support for DG SVR 865 Tiny board (SM8250/QCS8250). by &lt;a href=&quot;https://github.com/Lemon1151?ref=blog.armbian.com&quot;&gt;@Lemon1151&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9423?ref=blog.armbian.com&quot;&gt;armbian/build#9423&lt;/a&gt;&lt;/li&gt;&lt;li&gt;arch: arm: dts: add EByte ECB41-PGE (RK3506g2). by &lt;a href=&quot;https://github.com/vidplace7?ref=blog.armbian.com&quot;&gt;@vidplace7&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/linux-rockchip/pull/454?ref=blog.armbian.com&quot;&gt;armbian/linux-rockchip#454&lt;/a&gt;&lt;/li&gt;&lt;li&gt;armbian-zram-config: refine check for existing /tmp mount. by &lt;a href=&quot;https://github.com/vidplace7?ref=blog.armbian.com&quot;&gt;@vidplace7&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9514?ref=blog.armbian.com&quot;&gt;armbian/build#9514&lt;/a&gt;&lt;/li&gt;&lt;li&gt;cainiao cniot core improve. by &lt;a href=&quot;https://github.com/retro98boy?ref=blog.armbian.com&quot;&gt;@retro98boy&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9526?ref=blog.armbian.com&quot;&gt;armbian/build#9526&lt;/a&gt;&lt;/li&gt;&lt;li&gt;chore: update Dependabot schedule to daily updates. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9537?ref=blog.armbian.com&quot;&gt;armbian/build#9537&lt;/a&gt;&lt;/li&gt;&lt;li&gt;csc board: Add NORCO EMB-3531 initial support. by &lt;a href=&quot;https://github.com/retro98boy?ref=blog.armbian.com&quot;&gt;@retro98boy&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9456?ref=blog.armbian.com&quot;&gt;armbian/build#9456&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Drop patches that landed upstream and fix two. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9544?ref=blog.armbian.com&quot;&gt;armbian/build#9544&lt;/a&gt;&lt;/li&gt;&lt;li&gt;edge: bump 7.0 to rc4. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9543?ref=blog.armbian.com&quot;&gt;armbian/build#9543&lt;/a&gt;&lt;/li&gt;&lt;li&gt;extension: ccache-remote: fix Docker host-gateway for hostnames resolving to loopback. by &lt;a href=&quot;https://github.com/iav?ref=blog.armbian.com&quot;&gt;@iav&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9505?ref=blog.armbian.com&quot;&gt;armbian/build#9505&lt;/a&gt;&lt;/li&gt;&lt;li&gt;fix(orangepi5max): change usbdrd_dwc3_0 mode from otg to host. by &lt;a href=&quot;https://github.com/Echoflare?ref=blog.armbian.com&quot;&gt;@Echoflare&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/linux-rockchip/pull/449?ref=blog.armbian.com&quot;&gt;armbian/linux-rockchip#449&lt;/a&gt;&lt;/li&gt;&lt;li&gt;fix: correct repository dispatch event type name. by &lt;a href=&quot;https://github.com/igorpecovnik?ref=blog.armbian.com&quot;&gt;@igorpecovnik&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/armbian.github.io/pull/254?ref=blog.armbian.com&quot;&gt;armbian/armbian.github.io#254&lt;/a&gt;&lt;/li&gt;&lt;li&gt;framework run_host_x86_binary_logged - support 32-bit x86. by &lt;a href=&quot;https://github.com/tabrisnet?ref=blog.armbian.com&quot;&gt;@tabrisnet&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9466?ref=blog.armbian.com&quot;&gt;armbian/build#9466&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Gateway AM-GZ80x: Update $board and meson-axg family conf. by &lt;a href=&quot;https://github.com/pyavitz?ref=blog.armbian.com&quot;&gt;@pyavitz&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9533?ref=blog.armbian.com&quot;&gt;armbian/build#9533&lt;/a&gt;&lt;/li&gt;&lt;li&gt;maint: meson64-current: rewrite patches against 6.18.18. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9528?ref=blog.armbian.com&quot;&gt;armbian/build#9528&lt;/a&gt;&lt;/li&gt;&lt;li&gt;maint: rockchip64-current: rewrite kernel patches against 6.18.18. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9527?ref=blog.armbian.com&quot;&gt;armbian/build#9527&lt;/a&gt;&lt;/li&gt;&lt;li&gt;meson64: a311d: Fix Xorg display when etnaviv enabled. by &lt;a href=&quot;https://github.com/retro98boy?ref=blog.armbian.com&quot;&gt;@retro98boy&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9524?ref=blog.armbian.com&quot;&gt;armbian/build#9524&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Odroid-M2: Support for weather board zero. by &lt;a href=&quot;https://github.com/mlegenovic?ref=blog.armbian.com&quot;&gt;@mlegenovic&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9523?ref=blog.armbian.com&quot;&gt;armbian/build#9523&lt;/a&gt;&lt;/li&gt;&lt;li&gt;odroidn2: u-boot: bump to v2026.04-rc3; make fancy, incl LWIP. by &lt;a href=&quot;https://github.com/rpardini?ref=blog.armbian.com&quot;&gt;@rpardini&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9507?ref=blog.armbian.com&quot;&gt;armbian/build#9507&lt;/a&gt;&lt;/li&gt;&lt;li&gt;OrangePi 3 LTS: Update $board.conf file. by &lt;a href=&quot;https://github.com/pyavitz?ref=blog.armbian.com&quot;&gt;@pyavitz&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9495?ref=blog.armbian.com&quot;&gt;armbian/build#9495&lt;/a&gt;&lt;/li&gt;&lt;li&gt;OrangePi-RV2/R2S: add sdcard and emmc for Linux-7.x. by &lt;a href=&quot;https://github.com/sven-ola?ref=blog.armbian.com&quot;&gt;@sven-ola&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9539?ref=blog.armbian.com&quot;&gt;armbian/build#9539&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Reword BTF memory check. by &lt;a href=&quot;https://github.com/x13-me?ref=blog.armbian.com&quot;&gt;@x13-me&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9502?ref=blog.armbian.com&quot;&gt;armbian/build#9502&lt;/a&gt;&lt;/li&gt;&lt;li&gt;RK3506: Add spidev overlays for RK3506 family. by &lt;a href=&quot;https://github.com/vidplace7?ref=blog.armbian.com&quot;&gt;@vidplace7&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/linux-rockchip/pull/450?ref=blog.armbian.com&quot;&gt;armbian/linux-rockchip#450&lt;/a&gt;&lt;/li&gt;&lt;li&gt;rockchip64: bump &lt;code&gt;edge&lt;/code&gt; to 7.0-rc3. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9445?ref=blog.armbian.com&quot;&gt;armbian/build#9445&lt;/a&gt;&lt;/li&gt;&lt;li&gt;rockchip64: cleanup old patchsets. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9498?ref=blog.armbian.com&quot;&gt;armbian/build#9498&lt;/a&gt;&lt;/li&gt;&lt;li&gt;rockchip: Add CSC board EByte ECB41-PGE (RK3506G). by &lt;a href=&quot;https://github.com/vidplace7?ref=blog.armbian.com&quot;&gt;@vidplace7&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9513?ref=blog.armbian.com&quot;&gt;armbian/build#9513&lt;/a&gt;&lt;/li&gt;&lt;li&gt;rockchip: refresh LibreELEC patch import for edge 6.19 kernel. by &lt;a href=&quot;https://github.com/paolosabatino?ref=blog.armbian.com&quot;&gt;@paolosabatino&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9506?ref=blog.armbian.com&quot;&gt;armbian/build#9506&lt;/a&gt;&lt;/li&gt;&lt;li&gt;rockchip: restore proper LE patches for rockchip armhf. by &lt;a href=&quot;https://github.com/paolosabatino?ref=blog.armbian.com&quot;&gt;@paolosabatino&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9530?ref=blog.armbian.com&quot;&gt;armbian/build#9530&lt;/a&gt;&lt;/li&gt;&lt;li&gt;rpi4b: bump edge to 7.0. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9529?ref=blog.armbian.com&quot;&gt;armbian/build#9529&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Spacemit rv2 rename dtb. by &lt;a href=&quot;https://github.com/sven-ola?ref=blog.armbian.com&quot;&gt;@sven-ola&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9531?ref=blog.armbian.com&quot;&gt;armbian/build#9531&lt;/a&gt;&lt;/li&gt;&lt;li&gt;SpacemiT: Add SD card support, CPU freq scaling and other fixups. by &lt;a href=&quot;https://github.com/pyavitz?ref=blog.armbian.com&quot;&gt;@pyavitz&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9518?ref=blog.armbian.com&quot;&gt;armbian/build#9518&lt;/a&gt;&lt;/li&gt;&lt;li&gt;SpacemiT: Disable patches that made it upstream (7.0-rc4). by &lt;a href=&quot;https://github.com/pyavitz?ref=blog.armbian.com&quot;&gt;@pyavitz&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9540?ref=blog.armbian.com&quot;&gt;armbian/build#9540&lt;/a&gt;&lt;/li&gt;&lt;li&gt;spacemit: enable powervr drm driver for current 6.18 kernels. by &lt;a href=&quot;https://github.com/sven-ola?ref=blog.armbian.com&quot;&gt;@sven-ola&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9515?ref=blog.armbian.com&quot;&gt;armbian/build#9515&lt;/a&gt;&lt;/li&gt;&lt;li&gt;sunxi: bump &lt;code&gt;edge&lt;/code&gt; to 6.19.y, &lt;code&gt;current&lt;/code&gt; to 6.18.y and &lt;code&gt;legacy&lt;/code&gt; to 6.12.y. by &lt;a href=&quot;https://github.com/EvilOlaf?ref=blog.armbian.com&quot;&gt;@EvilOlaf&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9381?ref=blog.armbian.com&quot;&gt;armbian/build#9381&lt;/a&gt;&lt;/li&gt;&lt;li&gt;Youyeetoo YY3588: Enable ES8388 audio support + RK3588 I2S MCLK gate fix . by &lt;a href=&quot;https://github.com/SuperKali?ref=blog.armbian.com&quot;&gt;@SuperKali&lt;/a&gt; in &lt;a href=&quot;https://github.com/armbian/build/pull/9534?ref=blog.armbian.com&quot;&gt;armbian/build#9534&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;</content:encoded> 
	<dc:date>2026-03-17T02:24:49+00:00</dc:date>
	<dc:creator>Michael Robinson</dc:creator>
</item> 
<item rdf:about="https://www.qubes-os.org/news/2026/03/17/xsas-released-on-2026-03-17/">
	<title>Qubes: XSAs released on 2026-03-17</title>
	<link>https://www.qubes-os.org/news/2026/03/17/xsas-released-on-2026-03-17/</link>
     <content:encoded>&lt;p&gt;The &lt;a href=&quot;https://xenproject.org/&quot;&gt;Xen Project&lt;/a&gt; has released one or more &lt;a href=&quot;https://xenbits.xen.org/xsa/&quot;&gt;Xen security advisories (XSAs)&lt;/a&gt;.
The security of Qubes OS &lt;strong&gt;is affected&lt;/strong&gt;.&lt;/p&gt;

&lt;h2 id=&quot;xsas-that-do-affect-the-security-of-qubes-os&quot;&gt;XSAs that DO affect the security of Qubes OS&lt;/h2&gt;

&lt;p&gt;The following XSAs &lt;strong&gt;do affect&lt;/strong&gt; the security of Qubes OS:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://xenbits.xen.org/xsa/advisory-480.html&quot;&gt;XSA-480&lt;/a&gt;
    &lt;ul&gt;
      &lt;li&gt;See &lt;a href=&quot;https://www.qubes-os.org/news/2026/03/17/qsb-110/&quot;&gt;QSB-110&lt;/a&gt;&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;xsas-that-do-not-affect-the-security-of-qubes-os&quot;&gt;XSAs that DO NOT affect the security of Qubes OS&lt;/h2&gt;

&lt;p&gt;The following XSAs &lt;strong&gt;do not affect&lt;/strong&gt; the security of Qubes OS, and no user action is necessary:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://xenbits.xen.org/xsa/advisory-481.html&quot;&gt;XSA-481&lt;/a&gt;
    &lt;ul&gt;
      &lt;li&gt;Denial of service only&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;about-this-announcement&quot;&gt;About this announcement&lt;/h2&gt;

&lt;p&gt;Qubes OS uses the &lt;a href=&quot;https://wiki.xenproject.org/wiki/Xen_Project_Software_Overview&quot;&gt;Xen hypervisor&lt;/a&gt; as part of its &lt;a href=&quot;https://doc.qubes-os.org/en/latest/developer/system/architecture.html&quot;&gt;architecture&lt;/a&gt;. When the &lt;a href=&quot;https://xenproject.org/&quot;&gt;Xen Project&lt;/a&gt; publicly discloses a vulnerability in the Xen hypervisor, they issue a notice called a &lt;a href=&quot;https://xenproject.org/developers/security-policy/&quot;&gt;Xen security advisory (XSA)&lt;/a&gt;. Vulnerabilities in the Xen hypervisor sometimes have security implications for Qubes OS. When they do, we issue a notice called a &lt;a href=&quot;https://www.qubes-os.org/security/qsb/&quot;&gt;Qubes security bulletin (QSB)&lt;/a&gt;. (QSBs are also issued for non-Xen vulnerabilities.) However, QSBs can provide only &lt;em&gt;positive&lt;/em&gt; confirmation that certain XSAs &lt;em&gt;do&lt;/em&gt; affect the security of Qubes OS. QSBs cannot provide &lt;em&gt;negative&lt;/em&gt; confirmation that other XSAs do &lt;em&gt;not&lt;/em&gt; affect the security of Qubes OS. Therefore, we also maintain an &lt;a href=&quot;https://www.qubes-os.org/security/xsa/&quot;&gt;XSA tracker&lt;/a&gt;, which is a comprehensive list of all XSAs publicly disclosed to date, including whether each one affects the security of Qubes OS. When new XSAs are published, we add them to the XSA tracker and publish a notice like this one in order to inform Qubes users that a new batch of XSAs has been released and whether each one affects the security of Qubes OS.&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-17T00:00:00+00:00</dc:date>
	<dc:creator>Qubes</dc:creator>
</item> 
<item rdf:about="https://www.qubes-os.org/news/2026/03/17/qsb-110/">
	<title>Qubes: QSB-110: Use after free of paging structures in EPT (XSA-480)</title>
	<link>https://www.qubes-os.org/news/2026/03/17/qsb-110/</link>
     <content:encoded>&lt;p&gt;We have published &lt;a href=&quot;https://github.com/QubesOS/qubes-secpack/blob/66316e608830e0e186cf7f697eac951edfbce1a6/QSBs/qsb-110-2026.txt&quot;&gt;Qubes Security Bulletin (QSB) 110: Use after free of paging structures in EPT (XSA-480)&lt;/a&gt;. The text of this QSB and its accompanying cryptographic signatures are reproduced below, followed by a general explanation of this announcement and authentication instructions.&lt;/p&gt;

&lt;h2 id=&quot;qubes-security-bulletin-110&quot;&gt;Qubes Security Bulletin 110&lt;/h2&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;
             ---===[ Qubes Security Bulletin 110 ]===---

                              2026-03-17

         Use after free of paging structures in EPT (XSA-480)

User action
------------

Continue to update normally [1] in order to receive the security updates
described in the &quot;Patching&quot; section below. No other user action is
required in response to this QSB.

Summary
--------

On 2026-03-17, the Xen Project published XSA-480, &quot;Use after free of
paging structures in EPT&quot; [3]:
| The Intel EPT paging code uses an optimization to defer flushing of any cached
| EPT state until the p2m lock is dropped, so that multiple modifications done
| under the same locked region only issue a single flush.
| 
| Freeing of paging structures however is not deferred until the flushing is
| done, and can result in freed pages transiently being present in cached state.
| Such stale entries can point to memory ranges not owned by the guest, thus
| allowing access to unintended memory regions.

Impact
-------

On affected systems, an attacker controlling any PVH or HVM qube can attempt
to exploit this vulnerability in order to compromise Qubes OS.

Affected systems
-----------------

Only x86 Intel systems are affected.

Patching
---------

The following packages contain security updates that address the
vulnerabilities described in this bulletin:

  For Qubes 4.2, in dom0:
  - Xen packages version 4.17.6-3
  For Qubes 4.3, in dom0:
  - Xen packages version 4.19.4-5

These packages will migrate from the security-testing repository to the
current (stable) repository over the next two weeks after being tested
by the community. [2] Once available, the packages should be installed
via the Qubes Update tool or its command-line equivalents. [1]

Dom0 must be restarted afterward in order for the updates to take
effect.

If you use Anti Evil Maid, you will need to reseal your secret
passphrase to new PCR values, as PCR18+19 will change due to the new Xen
binaries.

Credits
--------

See the original Xen Security Advisory and linked publications.

References
-----------

[1] https://www.qubes-os.org/doc/how-to-update/
[2] https://www.qubes-os.org/doc/testing/
[3] https://xenbits.xen.org/xsa/advisory-480.html

--
The Qubes Security Team
https://www.qubes-os.org/security/

&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Source:&lt;/strong&gt; &lt;a href=&quot;https://github.com/QubesOS/qubes-secpack/blob/66316e608830e0e186cf7f697eac951edfbce1a6/QSBs/qsb-110-2026.txt&quot;&gt;qsb-110-2026.txt&lt;/a&gt;&lt;/p&gt;

&lt;h2 id=&quot;marek-marczykowski-góreckis-pgp-signature&quot;&gt;&lt;a href=&quot;https://www.qubes-os.org/team/#marek-marczykowski-górecki&quot;&gt;Marek Marczykowski-Górecki&lt;/a&gt;’s PGP signature&lt;/h2&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEELRdx/k12ftx2sIn61lWk8hgw4GoFAmm5Xt8ACgkQ1lWk8hgw
4GqnfA/+L8SZOiI5cB0uaak6ormCPESvKQD4Y1yRvY4XQMYOkvrDC8IF3bI6Q/mO
Xw4fIrwQ+j4lFQD/fn0exum+5/QZ0n7Wjx6oD1gfzKQvN55icRelt0opxbvyRCsz
Uzh14sUNn8D5hLWWflNP4BTIFuwUPvv3DnQv4Mq3jSYlhnzHwWKGh70D1HnDfhS0
cDhJtd1py5juLl2V5JdqnHNSzpjOgOhPEAlCAnndoRMDRGjT+CALx9/F53LBm+Sf
+W1M5ocTn816FXrLyInxiHJ1BfLsHz2gZtmg+hx/WXrgr+2XOT6UI5zbMLbkJmph
p1UVx53W+qH9zHd0nFd47ZEFTYAbQggFYlBWOzOmlDXjshk3kQ5OTzf+36u9iezC
fBdhHSiLE8HgR94c5Un8k0oJQsesYl/OvOGt3r1N4DirqFBpClXjoOTU+FI+8Xk4
RK77iaWuin/3Gz7cK8HmNSch/GRQZhJ9iZkOK/3a2+AXCFQs8AtZXUUxZ4Zr54gA
h1AAG8RppKA0oajQ93BL6nOHFIH9/5dYH58O7xbWloQuhxz+s6m3kFCUy9yoo8iE
uXaTpllF+5dV+g1Qn8TFC+IDrA75LF2j9vv8ll3KnvRoV31vB3TML7ECfkHtKqTA
/CFvUWEXwc4TmVIeymWxMnMS9IBitbq6KrWJjGaGyVS4j0OIHzY=
=gtVw
-----END PGP SIGNATURE-----
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Source:&lt;/strong&gt; &lt;a href=&quot;https://github.com/QubesOS/qubes-secpack/blob/66316e608830e0e186cf7f697eac951edfbce1a6/QSBs/qsb-110-2026.txt.sig.marmarek&quot;&gt;qsb-110-2026.txt.sig.marmarek&lt;/a&gt;&lt;/p&gt;

&lt;h2 id=&quot;simon-gaiser-aka-hw42s-pgp-signature&quot;&gt;&lt;a href=&quot;https://www.qubes-os.org/team/#simon-gaiser-aka-hw42&quot;&gt;Simon Gaiser (aka HW42)&lt;/a&gt;’s PGP signature&lt;/h2&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEE6hjn8EDEHdrv6aoPSsGN4REuFJAFAmm5YegACgkQSsGN4REu
FJC7iBAAhZRtb8L4QWTyGJerJdfhhqTshRnPxRX6MeQ3TEQQccsXby/h8eyHcm2M
zFpK9jBPaZCxpjvgoh2Yo4wu+2BVxlfPV40Z8lpBTdCjvZ3HhJXgDAKMGUQiimtG
cWvoH0MKkfExm7+fQlYVZ/yVzN+Gf/00mFPxZhmAI0NUVvP4AdaT/UAgHjf5EzHx
BkyX3cTbCkkzKrI5o973SoL4nNYQzVqFcUbsGb8uzZIPUTEMQmB+Sy7xrsUYJVKs
FRTZ4qQx0+UEjMHAKrRFqt4MzQR1LaHdGbcZ9eenPSECWTJzc6nEpuoz3LUfvTBo
rNrWJ+6vjdr4RBUj2VKhP7tNCGLGnLRVYyQ9vnLrHCKmYkQmH/opWh5j+VPXrhM9
fWRPMC39hdd9SYUOG78lSDf3Fu0FgD70b85kY5mYT4asliYaWBf3K9qN4xrGwJ/B
/ebUNsOXjXmp4msqenWAdg1yjEzyK/xkxFMYOq1ideF4Dbqgmm1Sc8xmVbYjdlon
lH3QfHqDDCDvASoGpPTCxybsmq5JEWMUvbkUSmVaKT/AeDikv9sSlMIjC4PfubKO
8UUyAe/4JOJO5np70d/zn0cEBVXYWeXd/71Bip29g9zpFBIKU96EJFdt0ynXzaHY
zmptnFnZr5pwaaxaCmceN1HnLqt2TSpQiFRv8GZK+tmrf5hma1Y=
=2DP5
-----END PGP SIGNATURE-----
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;&lt;strong&gt;Source:&lt;/strong&gt; &lt;a href=&quot;https://github.com/QubesOS/qubes-secpack/blob/66316e608830e0e186cf7f697eac951edfbce1a6/QSBs/qsb-110-2026.txt.sig.simon&quot;&gt;qsb-110-2026.txt.sig.simon&lt;/a&gt;&lt;/p&gt;

&lt;h2 id=&quot;what-is-the-purpose-of-this-announcement&quot;&gt;What is the purpose of this announcement?&lt;/h2&gt;

&lt;p&gt;The purpose of this announcement is to inform the Qubes community that a new Qubes security bulletin (QSB) has been published.&lt;/p&gt;

&lt;h2 id=&quot;what-is-a-qubes-security-bulletin-qsb&quot;&gt;What is a Qubes security bulletin (QSB)?&lt;/h2&gt;

&lt;p&gt;A &lt;a href=&quot;https://www.qubes-os.org/security/qsb/&quot;&gt;Qubes security bulletin (QSB)&lt;/a&gt; is a security announcement issued by the &lt;a href=&quot;https://doc.qubes-os.org/en/latest/project-security/security.html#qubes-security-team&quot;&gt;Qubes security team&lt;/a&gt;. A QSB typically provides a summary and impact analysis of one or more recently-discovered software vulnerabilities, including details about patching to address them.&lt;/p&gt;

&lt;h2 id=&quot;why-should-i-care-about-qsbs&quot;&gt;Why should I care about QSBs?&lt;/h2&gt;

&lt;p&gt;QSBs tell you what actions you must take in order to protect yourself from recently-discovered security vulnerabilities. In most cases, security vulnerabilities are addressed by &lt;a href=&quot;https://doc.qubes-os.org/en/latest/user/how-to-guides/how-to-update.html&quot;&gt;updating normally&lt;/a&gt;. However, in some cases, special user action is required. In all cases, the required actions are detailed in QSBs.&lt;/p&gt;

&lt;h2 id=&quot;what-are-the-pgp-signatures-that-accompany-qsbs&quot;&gt;What are the PGP signatures that accompany QSBs?&lt;/h2&gt;

&lt;p&gt;A &lt;a href=&quot;https://en.wikipedia.org/wiki/Pretty_Good_Privacy&quot;&gt;PGP&lt;/a&gt; signature is a cryptographic &lt;a href=&quot;https://en.wikipedia.org/wiki/Digital_signature&quot;&gt;digital signature&lt;/a&gt; made in accordance with the &lt;a href=&quot;https://en.wikipedia.org/wiki/Pretty_Good_Privacy#OpenPGP&quot;&gt;OpenPGP&lt;/a&gt; standard. PGP signatures can be cryptographically verified with programs like &lt;a href=&quot;https://gnupg.org/&quot;&gt;GNU Privacy Guard (GPG)&lt;/a&gt;. The Qubes security team cryptographically signs all QSBs so that Qubes users have a reliable way to check whether QSBs are genuine. The only way to be certain that a QSB is authentic is by verifying its PGP signatures.&lt;/p&gt;

&lt;h2 id=&quot;why-should-i-care-whether-a-qsb-is-authentic&quot;&gt;Why should I care whether a QSB is authentic?&lt;/h2&gt;

&lt;p&gt;A forged QSB could deceive you into taking actions that adversely affect the security of your Qubes OS system, such as installing malware or making configuration changes that render your system vulnerable to attack. Falsified QSBs could sow fear, uncertainty, and doubt about the security of Qubes OS or the status of the Qubes OS Project.&lt;/p&gt;

&lt;h2 id=&quot;how-do-i-verify-the-pgp-signatures-on-a-qsb&quot;&gt;How do I verify the PGP signatures on a QSB?&lt;/h2&gt;

&lt;p&gt;The following command-line instructions assume a Linux system with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;git&lt;/code&gt; and &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;gpg&lt;/code&gt; installed. (For Windows and Mac options, see &lt;a href=&quot;https://doc.qubes-os.org/en/latest/project-security/verifying-signatures.html#openpgp-software&quot;&gt;OpenPGP software&lt;/a&gt;.)&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;
    &lt;p&gt;Obtain the Qubes Master Signing Key (QMSK), e.g.:&lt;/p&gt;

    &lt;div class=&quot;language-shell_session highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;gpg &lt;span class=&quot;nt&quot;&gt;--fetch-keys&lt;/span&gt; https://keys.qubes-os.org/keys/qubes-master-signing-key.asc
&lt;span class=&quot;go&quot;&gt;gpg: directory &#39;/home/user/.gnupg&#39; created
gpg: keybox &#39;/home/user/.gnupg/pubring.kbx&#39; created
gpg: requesting key from &#39;https://keys.qubes-os.org/keys/qubes-master-signing-key.asc&#39;
gpg: /home/user/.gnupg/trustdb.gpg: trustdb created
gpg: key DDFA1A3E36879494: public key &quot;Qubes Master Signing Key&quot; imported
gpg: Total number processed: 1
gpg:               imported: 1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;

    &lt;p&gt;(For more ways to obtain the QMSK, see &lt;a href=&quot;https://doc.qubes-os.org/en/latest/project-security/verifying-signatures.html#how-to-import-and-authenticate-the-qubes-master-signing-key&quot;&gt;How to import and authenticate the Qubes Master Signing Key&lt;/a&gt;.)&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;View the fingerprint of the PGP key you just imported. (Note: &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;gpg&amp;gt;&lt;/code&gt; indicates a prompt inside of the GnuPG program. Type what appears after it when prompted.)&lt;/p&gt;

    &lt;div class=&quot;language-shell_session highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;gpg &lt;span class=&quot;nt&quot;&gt;--edit-key&lt;/span&gt; 0x427F11FD0FAA4B080123F01CDDFA1A3E36879494
&lt;span class=&quot;gp&quot;&gt;gpg (GnuPG) 2.2.27;&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;Copyright &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;C&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; 2021 Free Software Foundation, Inc.
&lt;span class=&quot;go&quot;&gt;This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
   
   
pub  rsa4096/DDFA1A3E36879494
     created: 2010-04-01  expires: never       usage: SC
     trust: unknown       validity: unknown
[ unknown] (1). Qubes Master Signing Key
   
&lt;/span&gt;&lt;span class=&quot;gp&quot;&gt;gpg&amp;gt;&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;fpr
&lt;span class=&quot;go&quot;&gt;pub   rsa4096/DDFA1A3E36879494 2010-04-01 Qubes Master Signing Key
 Primary key fingerprint: 427F 11FD 0FAA 4B08 0123  F01C DDFA 1A3E 3687 9494
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Important:&lt;/strong&gt; At this point, you still don’t know whether the key you just imported is the genuine QMSK or a forgery. In order for this entire procedure to provide meaningful security benefits, you &lt;em&gt;must&lt;/em&gt; authenticate the QMSK out-of-band. &lt;strong&gt;Do not skip this step!&lt;/strong&gt; The standard method is to obtain the QMSK fingerprint from &lt;em&gt;multiple independent sources in several different ways&lt;/em&gt; and check to see whether they match the key you just imported. For more information, see &lt;a href=&quot;https://doc.qubes-os.org/en/latest/project-security/verifying-signatures.html#how-to-import-and-authenticate-the-qubes-master-signing-key&quot;&gt;How to import and authenticate the Qubes Master Signing Key&lt;/a&gt;.&lt;/p&gt;

    &lt;p&gt;&lt;strong&gt;Tip:&lt;/strong&gt; After you have authenticated the QMSK out-of-band to your satisfaction, record the QMSK fingerprint in a safe place (or several) so that you don’t have to repeat this step in the future.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Once you are satisfied that you have the genuine QMSK, set its trust level to 5 (“ultimate”), then quit GnuPG with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;q&lt;/code&gt;.&lt;/p&gt;

    &lt;div class=&quot;language-shell_session highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;gp&quot;&gt;gpg&amp;gt;&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;trust
&lt;span class=&quot;go&quot;&gt;pub  rsa4096/DDFA1A3E36879494
     created: 2010-04-01  expires: never       usage: SC
     trust: unknown       validity: unknown
[ unknown] (1). Qubes Master Signing Key
   
Please decide how far you trust this user to correctly verify other users&#39; keys
(by looking at passports, checking fingerprints from different sources, etc.)
   
  1 = I don&#39;t know or won&#39;t say
  2 = I do NOT trust
  3 = I trust marginally
  4 = I trust fully
  5 = I trust ultimately
  m = back to the main menu
   
Your decision? 5
Do you really want to set this key to ultimate trust? (y/N) y
   
pub  rsa4096/DDFA1A3E36879494
     created: 2010-04-01  expires: never       usage: SC
     trust: ultimate      validity: unknown
[ unknown] (1). Qubes Master Signing Key
Please note that the shown key validity is not necessarily correct
unless you restart the program.
   
&lt;/span&gt;&lt;span class=&quot;gp&quot;&gt;gpg&amp;gt;&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;q
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Use Git to clone the qubes-secpack repo.&lt;/p&gt;

    &lt;div class=&quot;language-shell_session highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;git clone https://github.com/QubesOS/qubes-secpack.git
&lt;span class=&quot;go&quot;&gt;Cloning into &#39;qubes-secpack&#39;...
remote: Enumerating objects: 4065, done.
remote: Counting objects: 100% (1474/1474), done.
remote: Compressing objects: 100% (742/742), done.
remote: Total 4065 (delta 743), reused 1413 (delta 731), pack-reused 2591
Receiving objects: 100% (4065/4065), 1.64 MiB | 2.53 MiB/s, done.
Resolving deltas: 100% (1910/1910), done.
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Import the included PGP keys. (See our &lt;a href=&quot;https://doc.qubes-os.org/en/latest/project-security/security-pack.html#pgp-key-policies&quot;&gt;PGP key policies&lt;/a&gt; for important information about these keys.)&lt;/p&gt;

    &lt;div class=&quot;language-shell_session highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;gpg &lt;span class=&quot;nt&quot;&gt;--import&lt;/span&gt; qubes-secpack/keys/&lt;span class=&quot;k&quot;&gt;*&lt;/span&gt;/&lt;span class=&quot;k&quot;&gt;*&lt;/span&gt;
&lt;span class=&quot;go&quot;&gt;gpg: key 063938BA42CFA724: public key &quot;Marek Marczykowski-Górecki (Qubes OS signing key)&quot; imported
gpg: qubes-secpack/keys/core-devs/retired: read error: Is a directory
gpg: no valid OpenPGP data found.
gpg: key 8C05216CE09C093C: 1 signature not checked due to a missing key
gpg: key 8C05216CE09C093C: public key &quot;HW42 (Qubes Signing Key)&quot; imported
gpg: key DA0434BC706E1FCF: public key &quot;Simon Gaiser (Qubes OS signing key)&quot; imported
gpg: key 8CE137352A019A17: 2 signatures not checked due to missing keys
gpg: key 8CE137352A019A17: public key &quot;Andrew David Wong (Qubes Documentation Signing Key)&quot; imported
gpg: key AAA743B42FBC07A9: public key &quot;Brennan Novak (Qubes Website &amp;amp; Documentation Signing)&quot; imported
gpg: key B6A0BB95CA74A5C3: public key &quot;Joanna Rutkowska (Qubes Documentation Signing Key)&quot; imported
gpg: key F32894BE9684938A: public key &quot;Marek Marczykowski-Górecki (Qubes Documentation Signing Key)&quot; imported
gpg: key 6E7A27B909DAFB92: public key &quot;Hakisho Nukama (Qubes Documentation Signing Key)&quot; imported
gpg: key 485C7504F27D0A72: 1 signature not checked due to a missing key
gpg: key 485C7504F27D0A72: public key &quot;Sven Semmler (Qubes Documentation Signing Key)&quot; imported
gpg: key BB52274595B71262: public key &quot;unman (Qubes Documentation Signing Key)&quot; imported
gpg: key DC2F3678D272F2A8: 1 signature not checked due to a missing key
gpg: key DC2F3678D272F2A8: public key &quot;Wojtek Porczyk (Qubes OS documentation signing key)&quot; imported
gpg: key FD64F4F9E9720C4D: 1 signature not checked due to a missing key
gpg: key FD64F4F9E9720C4D: public key &quot;Zrubi (Qubes Documentation Signing Key)&quot; imported
gpg: key DDFA1A3E36879494: &quot;Qubes Master Signing Key&quot; not changed
gpg: key 1848792F9E2795E9: public key &quot;Qubes OS Release 4 Signing Key&quot; imported
gpg: qubes-secpack/keys/release-keys/retired: read error: Is a directory
gpg: no valid OpenPGP data found.
gpg: key D655A4F21830E06A: public key &quot;Marek Marczykowski-Górecki (Qubes security pack)&quot; imported
gpg: key ACC2602F3F48CB21: public key &quot;Qubes OS Security Team&quot; imported
gpg: qubes-secpack/keys/security-team/retired: read error: Is a directory
gpg: no valid OpenPGP data found.
gpg: key 4AC18DE1112E1490: public key &quot;Simon Gaiser (Qubes Security Pack signing key)&quot; imported
gpg: Total number processed: 17
gpg:               imported: 16
gpg:              unchanged: 1
gpg: marginals needed: 3  completes needed: 1  trust model: pgp
gpg: depth: 0  valid:   1  signed:   6  trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: depth: 1  valid:   6  signed:   0  trust: 6-, 0q, 0n, 0m, 0f, 0u
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Verify signed Git tags.&lt;/p&gt;

    &lt;div class=&quot;language-shell_session highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;cd &lt;/span&gt;qubes-secpack/
&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;git tag &lt;span class=&quot;nt&quot;&gt;-v&lt;/span&gt; &lt;span class=&quot;sb&quot;&gt;`&lt;/span&gt;git describe&lt;span class=&quot;sb&quot;&gt;`&lt;/span&gt;
&lt;span class=&quot;go&quot;&gt;object 266e14a6fae57c9a91362c9ac784d3a891f4d351
type commit
tag marmarek_sec_266e14a6
tagger Marek Marczykowski-Górecki 1677757924 +0100
   
Tag for commit 266e14a6fae57c9a91362c9ac784d3a891f4d351
gpg: Signature made Thu 02 Mar 2023 03:52:04 AM PST
gpg:                using RSA key 2D1771FE4D767EDC76B089FAD655A4F21830E06A
gpg: Good signature from &quot;Marek Marczykowski-Górecki (Qubes security pack)&quot; [full]
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;

    &lt;p&gt;The exact output will differ, but the final line should always start with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;gpg: Good signature from...&lt;/code&gt; followed by an appropriate key. The &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;[full]&lt;/code&gt; indicates full trust, which this key inherits in virtue of being validly signed by the QMSK.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Verify PGP signatures, e.g.:&lt;/p&gt;

    &lt;div class=&quot;language-shell_session highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;cd &lt;/span&gt;QSBs/
&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;gpg &lt;span class=&quot;nt&quot;&gt;--verify&lt;/span&gt; qsb-087-2022.txt.sig.marmarek qsb-087-2022.txt
&lt;span class=&quot;go&quot;&gt;gpg: Signature made Wed 23 Nov 2022 04:05:51 AM PST
gpg:                using RSA key 2D1771FE4D767EDC76B089FAD655A4F21830E06A
gpg: Good signature from &quot;Marek Marczykowski-Górecki (Qubes security pack)&quot; [full]
&lt;/span&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;gpg &lt;span class=&quot;nt&quot;&gt;--verify&lt;/span&gt; qsb-087-2022.txt.sig.simon qsb-087-2022.txt
&lt;span class=&quot;go&quot;&gt;gpg: Signature made Wed 23 Nov 2022 03:50:42 AM PST
gpg:                using RSA key EA18E7F040C41DDAEFE9AA0F4AC18DE1112E1490
gpg: Good signature from &quot;Simon Gaiser (Qubes Security Pack signing key)&quot; [full]
&lt;/span&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;cd&lt;/span&gt; ../canaries/
&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;gpg &lt;span class=&quot;nt&quot;&gt;--verify&lt;/span&gt; canary-034-2023.txt.sig.marmarek canary-034-2023.txt
&lt;span class=&quot;go&quot;&gt;gpg: Signature made Thu 02 Mar 2023 03:51:48 AM PST
gpg:                using RSA key 2D1771FE4D767EDC76B089FAD655A4F21830E06A
gpg: Good signature from &quot;Marek Marczykowski-Górecki (Qubes security pack)&quot; [full]
&lt;/span&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;gpg &lt;span class=&quot;nt&quot;&gt;--verify&lt;/span&gt; canary-034-2023.txt.sig.simon canary-034-2023.txt
&lt;span class=&quot;go&quot;&gt;gpg: Signature made Thu 02 Mar 2023 01:47:52 AM PST
gpg:                using RSA key EA18E7F040C41DDAEFE9AA0F4AC18DE1112E1490
gpg: Good signature from &quot;Simon Gaiser (Qubes Security Pack signing key)&quot; [full]
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;

    &lt;p&gt;Again, the exact output will differ, but the final line of output from each &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;gpg --verify&lt;/code&gt; command should always start with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;gpg: Good signature from...&lt;/code&gt; followed by an appropriate key.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;For this announcement (QSB-110), the commands are:&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;$ gpg --verify qsb-110-2026.txt.sig.marmarek qsb-110-2026.txt
$ gpg --verify qsb-110-2026.txt.sig.simon qsb-110-2026.txt
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;You can also verify the signatures directly from this announcement in addition to or instead of verifying the files from the qubes-secpack. Simply copy and paste the QSB-110 text into a plain text file and do the same for both signature files. Then, perform the same authentication steps as listed above, substituting the filenames above with the names of the files you just created.&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-17T00:00:00+00:00</dc:date>
	<dc:creator>Qubes</dc:creator>
</item> 
<item rdf:about="https://puri.sm/?p=85268">
	<title>Purism PureOS: PureOS Crimson Development Report: January and February 2026 – Beta Released</title>
	<link>https://puri.sm/posts/pureos-crimson-development-report-january-and-february-2026-beta-released/</link>
     <content:encoded>&lt;p&gt;We are very pleased to announce that the PureOS Crimson beta is released!  This means that we have a new set of install images for all devices - Librem 5, Librem 11, servers, and PCs - and we have a path to upgrade existing installations from Byzantium.&lt;/p&gt;
&lt;p&gt;The post &lt;a href=&quot;https://puri.sm/posts/pureos-crimson-development-report-january-and-february-2026-beta-released/&quot; rel=&quot;nofollow&quot;&gt;PureOS Crimson Development Report: January and February 2026 – Beta Released&lt;/a&gt; appeared first on &lt;a href=&quot;https://puri.sm/&quot; rel=&quot;nofollow&quot;&gt;Purism&lt;/a&gt;.&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-16T20:30:40+00:00</dc:date>
	<dc:creator>Purism</dc:creator>
</item> 
<item rdf:about="https://www.greenbone.net/?p=65237">
	<title>GreenboneOS: Peacocks and crows in IT security</title>
	<link>https://www.greenbone.net/en/blog/peacocks-and-crows-in-it-security/</link>
     <content:encoded>A field report on open source, competition, enforcement of rights, and the question of how to defend a fair and sustainable open source ecosystem. Summary This report describes a real case of misuse of open source software using the example of OPENVAS, the open source vulnerability management system we developed. A market participant had systematically […]</content:encoded> 
	<dc:date>2026-03-16T07:43:33+00:00</dc:date>
	<dc:creator>Greenbone AG</dc:creator>
</item> 
<item rdf:about="https://www.qubes-os.org/news/2026/03/16/fedora-43-templates-available-for-qubes-os-4-2/">
	<title>Qubes: Fedora 43 templates available for Qubes OS 4.2</title>
	<link>https://www.qubes-os.org/news/2026/03/16/fedora-43-templates-available-for-qubes-os-4-2/</link>
     <content:encoded>&lt;p&gt;The following new &lt;a href=&quot;https://doc.qubes-os.org/en/latest/user/templates/fedora/fedora.html&quot;&gt;Fedora 43 templates&lt;/a&gt; are now available for Qubes OS 4.2:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;fedora-43-xfce&lt;/code&gt; (default Fedora template with the &lt;a href=&quot;https://xfce.org/&quot;&gt;Xfce&lt;/a&gt; desktop environment)&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;fedora-43&lt;/code&gt; (alternative Fedora template with the &lt;a href=&quot;https://www.gnome.org/&quot;&gt;GNOME&lt;/a&gt; desktop environment)&lt;/li&gt;
  &lt;li&gt;&lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;fedora-43-minimal&lt;/code&gt; (&lt;a href=&quot;https://doc.qubes-os.org/en/latest/user/templates/minimal-templates.html&quot;&gt;minimal template&lt;/a&gt; for advanced users)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; These templates &lt;a href=&quot;https://www.qubes-os.org/news/2026/02/06/fedora-43-templates-available/&quot;&gt;have already been released for Qubes OS 4.3&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;There are two ways to upgrade a template to a new Fedora release:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Recommended:&lt;/strong&gt; &lt;a href=&quot;https://doc.qubes-os.org/en/latest/user/templates/fedora/fedora.html#installing&quot;&gt;Install a fresh template to replace an existing one.&lt;/a&gt; This option is simpler for less experienced users, but it won’t preserve any modifications you’ve made to your template. After you install the new template, you’ll have to redo your desired template modifications (if any) and &lt;a href=&quot;https://doc.qubes-os.org/en/latest/user/templates/templates.html#switching&quot;&gt;switch everything that was set to the old template to the new template&lt;/a&gt;. If you choose to modify your template, you may wish to write those modifications down so that you remember what to redo on each fresh install. To see a log of package manager actions, open a terminal in the template and use the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dnf history&lt;/code&gt; command.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Advanced:&lt;/strong&gt; &lt;a href=&quot;https://doc.qubes-os.org/en/latest/user/templates/fedora/fedora-upgrade.html&quot;&gt;Perform an in-place upgrade of an existing Fedora template.&lt;/a&gt; This option will preserve any modifications you’ve made to the template, but it may be more complicated for less experienced users.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; No user action is required regarding the OS version in dom0 (see our &lt;a href=&quot;https://doc.qubes-os.org/en/latest/user/downloading-installing-upgrading/supported-releases.html#note-on-dom0-and-eol&quot;&gt;note on dom0 and EOL&lt;/a&gt;).&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-16T00:00:00+00:00</dc:date>
	<dc:creator>Qubes</dc:creator>
</item> 
<item rdf:about="https://sparkylinux.org/?p=14041">
	<title>SparkyLinux: Sparky 2026.03</title>
	<link>https://sparkylinux.org/sparky-2026-03/</link>
     <content:encoded>&lt;p&gt;New SparkyLinux 2026.03 “Tiamat” ISO images are available of the semi-rolling line. This release is based on the Debian testing “Forky”. Main changes: – Packages updated from Debian and Sparky testing repositories as of March 14, 2026 – Linux kernel 6.19.6 (7.0-rc3, 6.19.8, 6.18.18-LTS, 6.12.77-LTS in Sparky repositories) – Firefox 140.8.0esr (148.0.2-latest in Sparky repositories) …&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://sparkylinux.org/sparky-2026-03/&quot; rel=&quot;nofollow&quot;&gt;Source&lt;/a&gt;&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-15T16:57:58+00:00</dc:date>
	<dc:creator>pavroo</dc:creator>
</item> 
<item rdf:about="http://sinfallas.wordpress.com/?p=5355">
	<title>Xanadu developers: Ubuntu en Modo Congelado Cambios que desaparecen al reiniciar</title>
	<link>https://sinfallas.wordpress.com/2026/03/14/ubuntu-en-modo-congelado-cambios-que-desaparecen-al-reiniciar/</link>
     <content:encoded>&lt;figure class=&quot;wp-block-embed is-type-rich is-provider-gestor-del-servicio wp-block-embed-gestor-del-servicio wp-embed-aspect-16-9 wp-has-aspect-ratio&quot;&gt;&lt;div class=&quot;wp-block-embed__wrapper&quot;&gt;

&lt;/div&gt;&lt;/figure&gt;</content:encoded> 
	<dc:date>2026-03-14T17:13:18+00:00</dc:date>
	<dc:creator>Jesus Palencia</dc:creator>
</item> 
<item rdf:about="https://pardus.org.tr/?p=25940">
	<title>Pardus: Bilim ve Teknoloji Haftası’nda Genç Bilişim Ekosistemi ile Bir Araya Geldik</title>
	<link>https://pardus.org.tr/bilim-ve-teknoloji-haftasinda-genc-bilisim-ekosistemi-ile-bir-araya-geldik/</link>
     <content:encoded>Bilim ve Teknoloji Haftası kapsamında MEB YEĞİTEK ETKİM ve TÜBİTAK BİLGEM YTE iş birliğiyle düzenlenen programda, Genç Bilişim Ekosistemi öğrencileriyle bir araya gelerek açık kaynak ve özgür yazılım dünyasını paylaştık. Pardus ekibi olarak, genç yeteneklerin yerli teknolojilerle tanıştığı ve sektör uzmanlarıyla doğrudan etkileşim kurduğu bu inovasyon dolu buluşmanın parçası olmaktan büyük mutluluk duyuyoruz.</content:encoded> 
	<dc:date>2026-03-13T11:00:00+00:00</dc:date>
	<dc:creator>Hace İbrahim Özbal</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38472">
	<title>Deepin: (中文) 告别熬夜憋稿！UOS AI 写作重磅上线，每个字都长在需求上</title>
	<link>https://www.deepin.org/en/uos-ai-2-13-600/</link>
     <content:encoded>Sorry, this entry is only available in 中文.</content:encoded> 
	<dc:date>2026-03-13T02:58:41+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 
<item rdf:about="https://www.qubes-os.org/news/2026/03/13/fedora-42-approaching-end-of-life/">
	<title>Qubes: Fedora 42 approaching end of life</title>
	<link>https://www.qubes-os.org/news/2026/03/13/fedora-42-approaching-end-of-life/</link>
     <content:encoded>&lt;p&gt;Fedora 42 is currently &lt;a href=&quot;https://fedorapeople.org/groups/schedule/f-42/f-42-key-tasks.html&quot;&gt;scheduled&lt;/a&gt; to reach &lt;a href=&quot;https://fedoraproject.org/wiki/End_of_life&quot;&gt;end of life (EOL)&lt;/a&gt; on 2026-05-13 (two months from the date of this announcement). Please upgrade all of your Fedora templates and standalones by that date. For more information, see &lt;a href=&quot;https://doc.qubes-os.org/en/latest/user/how-to-guides/how-to-update.html#upgrading-to-avoid-eol&quot;&gt;Upgrading to avoid EOL&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;There are two ways to upgrade a template to a new Fedora release:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Recommended:&lt;/strong&gt; &lt;a href=&quot;https://doc.qubes-os.org/en/latest/user/templates/fedora/fedora.html#installing&quot;&gt;Install a new template to replace an existing one.&lt;/a&gt; This option is simpler for less experienced users, but it won’t preserve any modifications you’ve made to your template. After you install the new template, you’ll have to redo your desired template modifications (if any) and &lt;a href=&quot;https://doc.qubes-os.org/en/latest/user/templates/templates.html#switching&quot;&gt;switch everything that was set to the old template to the new template&lt;/a&gt;. If you choose to modify your template, you may wish to write those modifications down so that you remember what to redo on each fresh install. To see a log of package manager actions, open a terminal in the old Fedora template and use the &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;dnf history&lt;/code&gt; command.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Advanced:&lt;/strong&gt; &lt;a href=&quot;https://doc.qubes-os.org/en/latest/user/templates/fedora/fedora-upgrade.html&quot;&gt;Perform an in-place upgrade of an existing Fedora template.&lt;/a&gt; This option will preserve any modifications you’ve made to the template, but it may be more complicated for less experienced users.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Please note that no user action is required regarding the OS version in dom0 (see our &lt;a href=&quot;https://doc.qubes-os.org/en/latest/user/downloading-installing-upgrading/supported-releases.html#note-on-dom0-and-eol&quot;&gt;note on dom0 and EOL&lt;/a&gt;).&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-13T00:00:00+00:00</dc:date>
	<dc:creator>Qubes</dc:creator>
</item> 
<item rdf:about="https://www.qubes-os.org/news/2026/03/13/canary-046/">
	<title>Qubes: Qubes Canary 046</title>
	<link>https://www.qubes-os.org/news/2026/03/13/canary-046/</link>
     <content:encoded>&lt;p&gt;We have published &lt;a href=&quot;https://github.com/QubesOS/qubes-secpack/blob/99de73321da9a2ce56a5d319bb1657fb30657fd5/canaries/canary-046-2026.txt&quot;&gt;Qubes Canary 046&lt;/a&gt;. The text of this canary and its accompanying cryptographic signatures are reproduced below. For an explanation of this announcement and instructions for authenticating this canary, please see the end of this announcement.&lt;/p&gt;

&lt;h2 id=&quot;qubes-canary-046&quot;&gt;Qubes Canary 046&lt;/h2&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;
                    ---===[ Qubes Canary 046 ]===---


Statements
-----------

The Qubes security team members who have digitally signed this file [1]
state the following:

1. The date of issue of this canary is March 12, 2026.

2. There have been 109 Qubes security bulletins published so far.

3. The Qubes Master Signing Key fingerprint is:

       427F 11FD 0FAA 4B08 0123  F01C DDFA 1A3E 3687 9494

4. No warrants have ever been served to us with regard to the Qubes OS
   Project (e.g. to hand out the private signing keys or to introduce
   backdoors).

5. We plan to publish the next of these canary statements in the first
   fourteen days of June 2026. Special note should be taken if no new
   canary is published by that time or if the list of statements changes
   without plausible explanation.


Special announcements
----------------------

None.


Disclaimers and notes
----------------------

We would like to remind you that Qubes OS has been designed under the
assumption that all relevant infrastructure is permanently compromised.
This means that we assume NO trust in any of the servers or services
which host or provide any Qubes-related data, in particular, software
updates, source code repositories, and Qubes ISO downloads.

This canary scheme is not infallible. Although signing the declaration
makes it very difficult for a third party to produce arbitrary
declarations, it does not prevent them from using force or other means,
like blackmail or compromising the signers&#39; laptops, to coerce us to
produce false declarations.

The proof of freshness provided below serves to demonstrate that this
canary could not have been created prior to the date stated. It shows
that a series of canaries was not created in advance.

This declaration is merely a best effort and is provided without any
guarantee or warranty. It is not legally binding in any way to anybody.
None of the signers should be ever held legally responsible for any of
the statements made here.


Proof of freshness
-------------------

Thu, 12 Mar 2026 11:22:20 +0000

Source: DER SPIEGEL - International (https://www.spiegel.de/international/index.rss)
Insta, TikTok and Co.: Is Australia&#39;s Social Media Ban for Children Actually Working?
&quot;Reckless, Suicidal Race&quot;: The Deadly Threat Posed by Artificial Intelligence
Portrait of a City after Four Years of War: The Courage of Kyiv
U.S. Historian Robert Kagan: &quot;We Are Watching a Country Fall Under Dictatorship Almost Without Resistance&quot;
Nord Stream: How Early Did the CIA Know about the Pipeline Attack?

Source: NYT &amp;gt; World News (https://rss.nytimes.com/services/xml/rss/nyt/World.xml)
Iran War Live Updates: Iraq Closes Oil Terminals Amid Growing Disruption to Global Supplies
Trump’s Iran War Is Causing Problems For His Ally in Italy, Giorgia Meloni
How Russia’s Scorched-Earth Attacks Put Ukraine’s Power Grid Near Collapse
China Wants Its Ethnic Minorities to Blend In. Now It’s the Law.
At China’s Big Political Meeting, a Rare Debate About Inequality

Source: BBC News (https://feeds.bbci.co.uk/news/world/rss.xml)
China approves &#39;ethnic unity&#39; law requiring minorities to learn Mandarin
Epstein used modelling agent to recruit girls, Brazilian women tell BBC
War in Ukraine spills into Hungarian election campaign
Noma head chef resigns from restaurant amid abuse allegations
Hozier, Jessie Buckley and Bruce Springsteen record Shane MacGowan tribute album

Source: Blockchain.info
000000000000000000017245ca11dddd962050ba2ce7fb38f0ab6a10d4a9cf00


Footnotes
----------

[1] This file should be signed in two ways: (1) via detached PGP
signatures by each of the signers, distributed together with this canary
in the qubes-secpack.git repo, and (2) via digital signatures on the
corresponding qubes-secpack.git repo tags. [2]

[2] Don&#39;t just trust the contents of this file blindly! Verify the
digital signatures! Instructions for doing so are documented here:
https://www.qubes-os.org/security/pack/

--
The Qubes Security Team
https://www.qubes-os.org/security/

&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Source: &lt;a href=&quot;https://github.com/QubesOS/qubes-secpack/blob/99de73321da9a2ce56a5d319bb1657fb30657fd5/canaries/canary-046-2026.txt&quot;&gt;canary-046-2026.txt&lt;/a&gt;&lt;/p&gt;

&lt;h2 id=&quot;marek-marczykowski-góreckis-pgp-signature&quot;&gt;&lt;a href=&quot;https://www.qubes-os.org/team/#marek-marczykowski-górecki&quot;&gt;Marek Marczykowski-Górecki&lt;/a&gt;’s PGP signature&lt;/h2&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEELRdx/k12ftx2sIn61lWk8hgw4GoFAmmyrAoACgkQ1lWk8hgw
4GrH6g/9E/VpqfONfKxsls2CTFmesP3f4wCwE06X9hl4A98avOD3akjXU3yr7x4d
1r9yQ8htbR7i7CPVAfhN2wFNco7Ne12npSh/pe77z6IpbYnshE5gARPUVMW3+Pxt
vLwSkAJOGybqk1l6kySAzVSJKMfnkqjwYM9N6JknXHDwF6b643vNaB1QXSGW3TVk
suNK0bgjGcdi2Kr7rb0A7k5hlYKA9VqSZ47LqBKI1LEwHIoWCtHLDs1bebQSSxyg
p7NgGvpRQ8LoUMYJ3zXRM6+LmQ+p67vYfmFNXLdH38GxVq2nlwZbEz8QrHhebdXT
bDCXbr+AYIvYQIwmCKhk14bzXPCII6CsjHIxvvoDOkhBX79gTnuTEFbWwVh+UqOV
IBzfW29/nBCylVorxgh0+N9W/XXg84aO4FWYREmUvOZ+vcJO/GjJtRQymZFeNvb1
hxj8Ny3Kj0hpfU8hRNagyrWzFhqVjcntUdJXSGEQ49FlDVmUNlEN7OJM/uBpu65T
/ljENLS5MO0YXOT0FItIc26Ntb9QiNi0sYtJWzyJ6i+1ugFfTGGkEpBmfh2HSS6c
zb8JU0RzBP2C5GN+ThMv+1KkCRWx6MCRG16YVfh0JAkCdezpSs0E3BaJ3zFK6gXb
IHEZffCXoJQNnCJGgFLGTOTGdMiITBhmYYoa20a/tc4huxnwt24=
=7wSH
-----END PGP SIGNATURE-----
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Source: &lt;a href=&quot;https://github.com/QubesOS/qubes-secpack/blob/99de73321da9a2ce56a5d319bb1657fb30657fd5/canaries/canary-046-2026.txt.sig.marmarek&quot;&gt;canary-046-2026.txt.sig.marmarek&lt;/a&gt;&lt;/p&gt;

&lt;h2 id=&quot;simon-gaiser-aka-hw42s-pgp-signature&quot;&gt;&lt;a href=&quot;https://www.qubes-os.org/team/#simon-gaiser-aka-hw42&quot;&gt;Simon Gaiser (aka HW42)&lt;/a&gt;’s PGP signature&lt;/h2&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;-----BEGIN PGP SIGNATURE-----

iQIzBAABCgAdFiEE6hjn8EDEHdrv6aoPSsGN4REuFJAFAmmyuFEACgkQSsGN4REu
FJDQfQ//WDz+9dBDn5Bs3g5wBb6kDPzWk7ws/pNQwqyCRQq6k7Np2ICR9uu+Hkbv
Oe5F7u0el+w8xrJlibAHm6ZYkZbr0KFeZFNt3rQnlGL2kERBKLvgJV1aMXPnNonx
vgod/hY5vgburQIs0Nz1X9wFQtaN6mJrbTiH7ixp7z3HGxKXeJPlpX8DDyAOEcP0
DWnU0mTuLpQtS601r46MWgG2t9uLpqyrIk5Bl+j9tdNvqsJrAscUYQovyi0T8JC8
Bwf7Q59ia5SCyIlOHxaKKhTGaqXXlr5scgn/+jB2TTkd3DKJVogUuAZ2oLdEbfdv
98tv7sBRpWtaPgK+PB5Y6Ese/3XSN7J5GmBKFM5l5Sw0kDlur47Q7maOirz941gX
TiP9Vla+qe7r4N0ZM6HYvJQfoUTmtHFKn39TcrEucYb2cvTGYLrYRGufSz3koLgt
MZTOyoS6xnT0lsvq9e7e7YqT1HPIJvHQD9LuG0gAukT5qqYR9GSlGc0f2InsLo1g
KLDL8q8q5n8pmx8OhRSff7gDbqLU7ISCe1UzLJ8Sej47uz0KVJEGnkZGFWVlqiaB
zJ4D9MqzWyQGIGHwS6FzE0DAQVDjyksTpchGzpmow3W6A2t3iE8iP8pCZCJ7CV1U
hWciQJDtBiFoaHqJ/3Xl8n5b9SM1DbiwodV+r3Z1eNyJK/7QaK8=
=DV9o
-----END PGP SIGNATURE-----
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Source: &lt;a href=&quot;https://github.com/QubesOS/qubes-secpack/blob/99de73321da9a2ce56a5d319bb1657fb30657fd5/canaries/canary-046-2026.txt.sig.simon&quot;&gt;canary-046-2026.txt.sig.simon&lt;/a&gt;&lt;/p&gt;

&lt;h2 id=&quot;what-is-the-purpose-of-this-announcement&quot;&gt;What is the purpose of this announcement?&lt;/h2&gt;

&lt;p&gt;The purpose of this announcement is to inform the Qubes community that a new Qubes canary has been published.&lt;/p&gt;

&lt;h2 id=&quot;what-is-a-qubes-canary&quot;&gt;What is a Qubes canary?&lt;/h2&gt;

&lt;p&gt;A &lt;a href=&quot;https://www.qubes-os.org/security/canary/&quot;&gt;Qubes canary&lt;/a&gt; is a security announcement periodically issued by the &lt;a href=&quot;https://doc.qubes-os.org/en/latest/project-security/security.html#qubes-security-team&quot;&gt;Qubes security team&lt;/a&gt; consisting of several statements to the effect that the signers of the canary have not been compromised. The idea is that, as long as signed canaries including such statements continue to be published, all is well. However, if the canaries should suddenly cease, if one or more signers begin declining to sign them, or if the included statements change significantly without plausible explanation, then this may indicate that something has gone wrong.&lt;/p&gt;

&lt;p&gt;The name originates from the practice in which miners would bring caged canaries into coal mines. If the level of methane gas in the mine reached a dangerous level, the canary would die, indicating to miners that they should evacuate. (See the &lt;a href=&quot;https://en.wikipedia.org/wiki/Warrant_canary&quot;&gt;Wikipedia article on warrant canaries&lt;/a&gt; for more information, but bear in mind that Qubes Canaries are not strictly limited to legal warrants.)&lt;/p&gt;

&lt;h2 id=&quot;why-should-i-care-about-canaries&quot;&gt;Why should I care about canaries?&lt;/h2&gt;

&lt;p&gt;Canaries provide an important indication about the security status of the project. If the canary is healthy, it’s a strong sign that things are running normally. However, if the canary is unhealthy, it could mean that the project or its members are being coerced in some way.&lt;/p&gt;

&lt;h2 id=&quot;what-are-some-signs-of-an-unhealthy-canary&quot;&gt;What are some signs of an unhealthy canary?&lt;/h2&gt;

&lt;p&gt;Here is a non-exhaustive list of examples:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;strong&gt;Dead canary.&lt;/strong&gt; In each canary, we state a window of time during which you should expect the next canary to be published. If no canary is published within that window of time and no good explanation is provided for missing the deadline, then the canary has died.&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Missing statement(s).&lt;/strong&gt; Canaries include a set of numbered statements at the top. These statements are generally the same across canaries, except for specific numbers and dates that have changed since the previous canary. If an important statement was present in older canaries but suddenly goes missing from new canaries with no correction or explanation, then this may be an indication that the signers can no longer truthfully make that statement.&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Missing signature(s).&lt;/strong&gt; Qubes canaries are signed by the members of the &lt;a href=&quot;https://doc.qubes-os.org/en/latest/project-security/security.html#qubes-security-team&quot;&gt;Qubes security team&lt;/a&gt; (see below). If one of them has been signing all canaries but suddenly and permanently stops signing new canaries without any explanation, then this may indicate that this person is under duress or can no longer truthfully sign the statements contained in the canary.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;does-every-unexpected-or-unusual-occurrence-related-to-a-canary-indicate-something-bad&quot;&gt;Does every unexpected or unusual occurrence related to a canary indicate something bad?&lt;/h2&gt;

&lt;p&gt;No, there are many canary-related possibilities that should &lt;em&gt;not&lt;/em&gt; worry you. Here is a non-exhaustive list of examples:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;strong&gt;Unusual reposts.&lt;/strong&gt; The only canaries that matter are the ones that are validly signed in the &lt;a href=&quot;https://doc.qubes-os.org/en/latest/project-security/security-pack.html&quot;&gt;Qubes security pack (qubes-secpack)&lt;/a&gt;. Reposts of canaries (like the one in this announcement) do not have any authority (except insofar as they reproduce validly-signed text from the qubes-secpack). If the actual canary in the qubes-secpack is healthy, but reposts are late, absent, or modified on the website, mailing lists, forum, or social media platforms, you should not be concerned about the canary.&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Last-minute signature(s).&lt;/strong&gt; If the canary is signed at the last minute but before the deadline, that’s okay. (People get busy and procrastinate sometimes.)&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Signatures at different times.&lt;/strong&gt; If one signature is earlier or later than the other, but both are present within a reasonable period of time, that’s okay. (For example, sometimes one signer is out of town, but we try to plan the deadlines around this.)&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Permitted changes.&lt;/strong&gt; If something about a canary changes without violating any of the statements in prior canaries, that’s okay. (For example, canaries are usually scheduled for the first fourteen days of a given month, but there’s no rule that says they have to be.)&lt;/li&gt;
  &lt;li&gt;&lt;strong&gt;Unusual but planned changes.&lt;/strong&gt; If something unusual happens, but it was announced in advance, and the appropriate statements are signed, that’s okay (e.g., when Joanna left the security team and Simon joined it).&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In general, it would not be realistic for an organization to exist that never changed, had zero turnover, and never made mistakes. Therefore, it would be reasonable to expect such events to occur periodically, and it would be unreasonable to regard &lt;em&gt;every&lt;/em&gt; unusual or unexpected canary-related event as a sign of compromise. For example, if something usual happens with a canary, and we say it was a mistake and correct it (with valid signatures), you will have to decide for yourself whether it’s more likely that it really was just a mistake or that something is wrong and that this is how we chose to send you a subtle signal about it. This will require you to think carefully about which among many possible scenarios is most likely given the evidence available to you. Since this is fundamentally a matter of judgment, canaries are ultimately a &lt;em&gt;social&lt;/em&gt; scheme, not a technical one.&lt;/p&gt;

&lt;h2 id=&quot;what-are-the-pgp-signatures-that-accompany-canaries&quot;&gt;What are the PGP signatures that accompany canaries?&lt;/h2&gt;

&lt;p&gt;A &lt;a href=&quot;https://en.wikipedia.org/wiki/Pretty_Good_Privacy&quot;&gt;PGP&lt;/a&gt; signature is a cryptographic &lt;a href=&quot;https://en.wikipedia.org/wiki/Digital_signature&quot;&gt;digital signature&lt;/a&gt; made in accordance with the &lt;a href=&quot;https://en.wikipedia.org/wiki/Pretty_Good_Privacy#OpenPGP&quot;&gt;OpenPGP&lt;/a&gt; standard. PGP signatures can be cryptographically verified with programs like &lt;a href=&quot;https://en.wikipedia.org/wiki/GNU_Privacy_Guard&quot;&gt;GNU Privacy Guard (GPG)&lt;/a&gt;. The Qubes security team cryptographically signs all canaries so that Qubes users have a reliable way to check whether canaries are genuine. The only way to be certain that a canary is authentic is by verifying its PGP signatures.&lt;/p&gt;

&lt;h2 id=&quot;why-should-i-care-whether-a-canary-is-authentic&quot;&gt;Why should I care whether a canary is authentic?&lt;/h2&gt;

&lt;p&gt;If you fail to notice that a canary is unhealthy or has died, you may continue to trust the Qubes security team even after they have signaled via the canary (or lack thereof) that they been compromised or coerced.&lt;/p&gt;

&lt;p&gt;Alternatively, an adversary could fabricate a canary in an attempt to deceive the public. Such a canary would not be validly signed, but users who neglect to check the signatures on the fake canary would not be aware of this, so they may mistakenly believe it to be genuine, especially if it closely mimics the language of authentic canaries. Such falsified canaries could include manipulated text designed to sow fear, uncertainty, and doubt about the security of Qubes OS or the status of the Qubes OS Project.&lt;/p&gt;

&lt;h2 id=&quot;how-do-i-verify-the-pgp-signatures-on-a-canary&quot;&gt;How do I verify the PGP signatures on a canary?&lt;/h2&gt;

&lt;p&gt;The following command-line instructions assume a Linux system with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;git&lt;/code&gt; and &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;gpg&lt;/code&gt; installed. (For Windows and Mac options, see &lt;a href=&quot;https://doc.qubes-os.org/en/latest/project-security/verifying-signatures.html#openpgp-software&quot;&gt;OpenPGP software&lt;/a&gt;.)&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;
    &lt;p&gt;Obtain the Qubes Master Signing Key (QMSK), e.g.:&lt;/p&gt;

    &lt;div class=&quot;language-shell_session highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;gpg &lt;span class=&quot;nt&quot;&gt;--fetch-keys&lt;/span&gt; https://keys.qubes-os.org/keys/qubes-master-signing-key.asc
&lt;span class=&quot;go&quot;&gt;gpg: directory &#39;/home/user/.gnupg&#39; created
gpg: keybox &#39;/home/user/.gnupg/pubring.kbx&#39; created
gpg: requesting key from &#39;https://keys.qubes-os.org/keys/qubes-master-signing-key.asc&#39;
gpg: /home/user/.gnupg/trustdb.gpg: trustdb created
gpg: key DDFA1A3E36879494: public key &quot;Qubes Master Signing Key&quot; imported
gpg: Total number processed: 1
gpg:               imported: 1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;

    &lt;p&gt;(For more ways to obtain the QMSK, see &lt;a href=&quot;https://doc.qubes-os.org/en/latest/project-security/verifying-signatures.html#how-to-import-and-authenticate-the-qubes-master-signing-key&quot;&gt;How to import and authenticate the Qubes Master Signing Key&lt;/a&gt;.)&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;View the fingerprint of the PGP key you just imported. (Note: &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;gpg&amp;gt;&lt;/code&gt; indicates a prompt inside of the GnuPG program. Type what appears after it when prompted.)&lt;/p&gt;

    &lt;div class=&quot;language-shell_session highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;gpg &lt;span class=&quot;nt&quot;&gt;--edit-key&lt;/span&gt; 0x427F11FD0FAA4B080123F01CDDFA1A3E36879494
&lt;span class=&quot;gp&quot;&gt;gpg (GnuPG) 2.2.27;&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;Copyright &lt;span class=&quot;o&quot;&gt;(&lt;/span&gt;C&lt;span class=&quot;o&quot;&gt;)&lt;/span&gt; 2021 Free Software Foundation, Inc.
&lt;span class=&quot;go&quot;&gt;This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
   
   
pub  rsa4096/DDFA1A3E36879494
     created: 2010-04-01  expires: never       usage: SC
     trust: unknown       validity: unknown
[ unknown] (1). Qubes Master Signing Key
   
&lt;/span&gt;&lt;span class=&quot;gp&quot;&gt;gpg&amp;gt;&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;fpr
&lt;span class=&quot;go&quot;&gt;pub   rsa4096/DDFA1A3E36879494 2010-04-01 Qubes Master Signing Key
 Primary key fingerprint: 427F 11FD 0FAA 4B08 0123  F01C DDFA 1A3E 3687 9494
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;strong&gt;Important:&lt;/strong&gt; At this point, you still don’t know whether the key you just imported is the genuine QMSK or a forgery. In order for this entire procedure to provide meaningful security benefits, you &lt;em&gt;must&lt;/em&gt; authenticate the QMSK out-of-band. &lt;strong&gt;Do not skip this step!&lt;/strong&gt; The standard method is to obtain the QMSK fingerprint from &lt;em&gt;multiple independent sources in several different ways&lt;/em&gt; and check to see whether they match the key you just imported. For more information, see &lt;a href=&quot;https://doc.qubes-os.org/en/latest/project-security/verifying-signatures.html#how-to-import-and-authenticate-the-qubes-master-signing-key&quot;&gt;How to import and authenticate the Qubes Master Signing Key&lt;/a&gt;.&lt;/p&gt;

    &lt;p&gt;&lt;strong&gt;Tip:&lt;/strong&gt; After you have authenticated the QMSK out-of-band to your satisfaction, record the QMSK fingerprint in a safe place (or several) so that you don’t have to repeat this step in the future.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Once you are satisfied that you have the genuine QMSK, set its trust level to 5 (“ultimate”), then quit GnuPG with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;q&lt;/code&gt;.&lt;/p&gt;

    &lt;div class=&quot;language-shell_session highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;gp&quot;&gt;gpg&amp;gt;&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;trust
&lt;span class=&quot;go&quot;&gt;pub  rsa4096/DDFA1A3E36879494
     created: 2010-04-01  expires: never       usage: SC
     trust: unknown       validity: unknown
[ unknown] (1). Qubes Master Signing Key
   
Please decide how far you trust this user to correctly verify other users&#39; keys
(by looking at passports, checking fingerprints from different sources, etc.)
   
  1 = I don&#39;t know or won&#39;t say
  2 = I do NOT trust
  3 = I trust marginally
  4 = I trust fully
  5 = I trust ultimately
  m = back to the main menu
   
Your decision? 5
Do you really want to set this key to ultimate trust? (y/N) y
   
pub  rsa4096/DDFA1A3E36879494
     created: 2010-04-01  expires: never       usage: SC
     trust: ultimate      validity: unknown
[ unknown] (1). Qubes Master Signing Key
Please note that the shown key validity is not necessarily correct
unless you restart the program.
   
&lt;/span&gt;&lt;span class=&quot;gp&quot;&gt;gpg&amp;gt;&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;q
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Use Git to clone the qubes-secpack repo.&lt;/p&gt;

    &lt;div class=&quot;language-shell_session highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;git clone https://github.com/QubesOS/qubes-secpack.git
&lt;span class=&quot;go&quot;&gt;Cloning into &#39;qubes-secpack&#39;...
remote: Enumerating objects: 4065, done.
remote: Counting objects: 100% (1474/1474), done.
remote: Compressing objects: 100% (742/742), done.
remote: Total 4065 (delta 743), reused 1413 (delta 731), pack-reused 2591
Receiving objects: 100% (4065/4065), 1.64 MiB | 2.53 MiB/s, done.
Resolving deltas: 100% (1910/1910), done.
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Import the included PGP keys. (See our &lt;a href=&quot;https://doc.qubes-os.org/en/latest/project-security/security-pack.html#pgp-key-policies&quot;&gt;PGP key policies&lt;/a&gt; for important information about these keys.)&lt;/p&gt;

    &lt;div class=&quot;language-shell_session highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;gpg &lt;span class=&quot;nt&quot;&gt;--import&lt;/span&gt; qubes-secpack/keys/&lt;span class=&quot;k&quot;&gt;*&lt;/span&gt;/&lt;span class=&quot;k&quot;&gt;*&lt;/span&gt;
&lt;span class=&quot;go&quot;&gt;gpg: key 063938BA42CFA724: public key &quot;Marek Marczykowski-Górecki (Qubes OS signing key)&quot; imported
gpg: qubes-secpack/keys/core-devs/retired: read error: Is a directory
gpg: no valid OpenPGP data found.
gpg: key 8C05216CE09C093C: 1 signature not checked due to a missing key
gpg: key 8C05216CE09C093C: public key &quot;HW42 (Qubes Signing Key)&quot; imported
gpg: key DA0434BC706E1FCF: public key &quot;Simon Gaiser (Qubes OS signing key)&quot; imported
gpg: key 8CE137352A019A17: 2 signatures not checked due to missing keys
gpg: key 8CE137352A019A17: public key &quot;Andrew David Wong (Qubes Documentation Signing Key)&quot; imported
gpg: key AAA743B42FBC07A9: public key &quot;Brennan Novak (Qubes Website &amp;amp; Documentation Signing)&quot; imported
gpg: key B6A0BB95CA74A5C3: public key &quot;Joanna Rutkowska (Qubes Documentation Signing Key)&quot; imported
gpg: key F32894BE9684938A: public key &quot;Marek Marczykowski-Górecki (Qubes Documentation Signing Key)&quot; imported
gpg: key 6E7A27B909DAFB92: public key &quot;Hakisho Nukama (Qubes Documentation Signing Key)&quot; imported
gpg: key 485C7504F27D0A72: 1 signature not checked due to a missing key
gpg: key 485C7504F27D0A72: public key &quot;Sven Semmler (Qubes Documentation Signing Key)&quot; imported
gpg: key BB52274595B71262: public key &quot;unman (Qubes Documentation Signing Key)&quot; imported
gpg: key DC2F3678D272F2A8: 1 signature not checked due to a missing key
gpg: key DC2F3678D272F2A8: public key &quot;Wojtek Porczyk (Qubes OS documentation signing key)&quot; imported
gpg: key FD64F4F9E9720C4D: 1 signature not checked due to a missing key
gpg: key FD64F4F9E9720C4D: public key &quot;Zrubi (Qubes Documentation Signing Key)&quot; imported
gpg: key DDFA1A3E36879494: &quot;Qubes Master Signing Key&quot; not changed
gpg: key 1848792F9E2795E9: public key &quot;Qubes OS Release 4 Signing Key&quot; imported
gpg: qubes-secpack/keys/release-keys/retired: read error: Is a directory
gpg: no valid OpenPGP data found.
gpg: key D655A4F21830E06A: public key &quot;Marek Marczykowski-Górecki (Qubes security pack)&quot; imported
gpg: key ACC2602F3F48CB21: public key &quot;Qubes OS Security Team&quot; imported
gpg: qubes-secpack/keys/security-team/retired: read error: Is a directory
gpg: no valid OpenPGP data found.
gpg: key 4AC18DE1112E1490: public key &quot;Simon Gaiser (Qubes Security Pack signing key)&quot; imported
gpg: Total number processed: 17
gpg:               imported: 16
gpg:              unchanged: 1
gpg: marginals needed: 3  completes needed: 1  trust model: pgp
gpg: depth: 0  valid:   1  signed:   6  trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: depth: 1  valid:   6  signed:   0  trust: 6-, 0q, 0n, 0m, 0f, 0u
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Verify signed Git tags.&lt;/p&gt;

    &lt;div class=&quot;language-shell_session highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;cd &lt;/span&gt;qubes-secpack/
&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;git tag &lt;span class=&quot;nt&quot;&gt;-v&lt;/span&gt; &lt;span class=&quot;sb&quot;&gt;`&lt;/span&gt;git describe&lt;span class=&quot;sb&quot;&gt;`&lt;/span&gt;
&lt;span class=&quot;go&quot;&gt;object 266e14a6fae57c9a91362c9ac784d3a891f4d351
type commit
tag marmarek_sec_266e14a6
tagger Marek Marczykowski-Górecki 1677757924 +0100
   
Tag for commit 266e14a6fae57c9a91362c9ac784d3a891f4d351
gpg: Signature made Thu 02 Mar 2023 03:52:04 AM PST
gpg:                using RSA key 2D1771FE4D767EDC76B089FAD655A4F21830E06A
gpg: Good signature from &quot;Marek Marczykowski-Górecki (Qubes security pack)&quot; [full]
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;

    &lt;p&gt;The exact output will differ, but the final line should always start with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;gpg: Good signature from...&lt;/code&gt; followed by an appropriate key. The &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;[full]&lt;/code&gt; indicates full trust, which this key inherits in virtue of being validly signed by the QMSK.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Verify PGP signatures, e.g.:&lt;/p&gt;

    &lt;div class=&quot;language-shell_session highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;cd &lt;/span&gt;QSBs/
&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;gpg &lt;span class=&quot;nt&quot;&gt;--verify&lt;/span&gt; qsb-087-2022.txt.sig.marmarek qsb-087-2022.txt
&lt;span class=&quot;go&quot;&gt;gpg: Signature made Wed 23 Nov 2022 04:05:51 AM PST
gpg:                using RSA key 2D1771FE4D767EDC76B089FAD655A4F21830E06A
gpg: Good signature from &quot;Marek Marczykowski-Górecki (Qubes security pack)&quot; [full]
&lt;/span&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;gpg &lt;span class=&quot;nt&quot;&gt;--verify&lt;/span&gt; qsb-087-2022.txt.sig.simon qsb-087-2022.txt
&lt;span class=&quot;go&quot;&gt;gpg: Signature made Wed 23 Nov 2022 03:50:42 AM PST
gpg:                using RSA key EA18E7F040C41DDAEFE9AA0F4AC18DE1112E1490
gpg: Good signature from &quot;Simon Gaiser (Qubes Security Pack signing key)&quot; [full]
&lt;/span&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;cd&lt;/span&gt; ../canaries/
&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;gpg &lt;span class=&quot;nt&quot;&gt;--verify&lt;/span&gt; canary-034-2023.txt.sig.marmarek canary-034-2023.txt
&lt;span class=&quot;go&quot;&gt;gpg: Signature made Thu 02 Mar 2023 03:51:48 AM PST
gpg:                using RSA key 2D1771FE4D767EDC76B089FAD655A4F21830E06A
gpg: Good signature from &quot;Marek Marczykowski-Górecki (Qubes security pack)&quot; [full]
&lt;/span&gt;&lt;span class=&quot;gp&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;gpg &lt;span class=&quot;nt&quot;&gt;--verify&lt;/span&gt; canary-034-2023.txt.sig.simon canary-034-2023.txt
&lt;span class=&quot;go&quot;&gt;gpg: Signature made Thu 02 Mar 2023 01:47:52 AM PST
gpg:                using RSA key EA18E7F040C41DDAEFE9AA0F4AC18DE1112E1490
gpg: Good signature from &quot;Simon Gaiser (Qubes Security Pack signing key)&quot; [full]
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;    &lt;/div&gt;

    &lt;p&gt;Again, the exact output will differ, but the final line of output from each &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;gpg --verify&lt;/code&gt; command should always start with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;gpg: Good signature from...&lt;/code&gt; followed by an appropriate key.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;For this announcement (Qubes Canary 046), the commands are:&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;$ gpg --verify canary-046-2026.txt.sig.marmarek canary-046-2026.txt
$ gpg --verify canary-046-2026.txt.sig.simon canary-046-2026.txt
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;You can also verify the signatures directly from this announcement in addition to or instead of verifying the files from the qubes-secpack. Simply copy and paste the Qubes Canary 046 text into a plain text file and do the same for both signature files. Then, perform the same authentication steps as listed above, substituting the filenames above with the names of the files you just created.&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-13T00:00:00+00:00</dc:date>
	<dc:creator>Qubes</dc:creator>
</item> 
<item rdf:about="https://www.univention.de/?p=85710">
	<title>Univention Corporate Server: Univention Nubus Brings Applications to Users</title>
	<link>https://www.univention.com/blog-en/2026/03/univention-nubus-iam-applications-to-users/</link>
     <content:encoded>&lt;div class=&quot;wpb-content-wrapper&quot;&gt;&lt;div class=&quot;uni-section uni-section--pt-0 uni-section--pb-8 &quot;&gt;&lt;div class=&quot;uni-container uni-container--sm&quot;&gt;&lt;div class=&quot;vc_row wpb_row vc_row-fluid&quot;&gt;&lt;div class=&quot;wpb_column vc_column_container vc_col-sm-12&quot;&gt;&lt;div class=&quot;vc_column-inner&quot;&gt;&lt;div class=&quot;wpb_wrapper&quot;&gt;
	&lt;div class=&quot;wpb_text_column wpb_content_element&quot;&gt;
		&lt;div class=&quot;wpb_wrapper&quot;&gt;
			&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;&lt;i&gt;The classic IAM task – simple, secure, and centrally managed&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Almost every organization faces the same challenge: employees work with a wide variety of applications – specialized software, collaboration tools, cloud services, and internal systems. Access should be as simple as possible for users, while the organization needs control over who can access which data and services.&lt;/p&gt;
&lt;p&gt;This is exactly where Identity &amp;amp; Access Management (IAM) comes in. With &lt;b&gt;Univention Nubus&lt;/b&gt;, applications and users can be connected centrally – securely, conveniently, and scalably.&lt;/p&gt;
&lt;/div&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;uni-section uni-section--pt-0 uni-section--pb-8 &quot;&gt;&lt;div class=&quot;uni-container uni-container--sm&quot;&gt;&lt;div class=&quot;vc_row wpb_row vc_row-fluid&quot;&gt;&lt;div class=&quot;wpb_column vc_column_container vc_col-sm-12&quot;&gt;&lt;div class=&quot;vc_column-inner&quot;&gt;&lt;div class=&quot;wpb_wrapper&quot;&gt;

&lt;h2&gt;
  Starting Point: Many Applications, Many Users – Many Requirements&lt;/h2&gt;


	&lt;div class=&quot;wpb_text_column wpb_content_element&quot;&gt;
		&lt;div class=&quot;wpb_wrapper&quot;&gt;
			&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;The needs of users and organizations may initially seem contradictory, but a well-designed IAM can bring them together:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Users want:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A single account instead of multiple login credentials&lt;/li&gt;
&lt;li&gt;Fast, seamless access to all applications&lt;/li&gt;
&lt;li&gt;A clear interface to quickly find the tools they need&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Organizations require:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Freedom to choose their applications&lt;/li&gt;
&lt;li&gt;Control over access and permissions&lt;/li&gt;
&lt;li&gt;Secure authentication, ideally with two-factor authentication (2FA)&lt;/li&gt;
&lt;li&gt;Transparent and traceable processes for onboarding and offboarding users&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;uni-section uni-section--pt-0 uni-section--pb-8 &quot;&gt;&lt;div class=&quot;uni-container uni-container--sm&quot;&gt;&lt;div class=&quot;vc_row wpb_row vc_row-fluid&quot;&gt;&lt;div class=&quot;wpb_column vc_column_container vc_col-sm-12&quot;&gt;&lt;div class=&quot;vc_column-inner&quot;&gt;&lt;div class=&quot;wpb_wrapper&quot;&gt;

&lt;h2&gt;
  IAM as a “Single Source of Truth”&lt;/h2&gt;


	&lt;div class=&quot;wpb_text_column wpb_content_element&quot;&gt;
		&lt;div class=&quot;wpb_wrapper&quot;&gt;
			&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;The foundation of a functional IAM is a central location where all identities and permissions are managed – the so-called &lt;b&gt;Single Source of Truth&lt;/b&gt;.&lt;/p&gt;
&lt;p&gt;In Nubus, this role is fulfilled by the central directory, which manages:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Identities&lt;/li&gt;
&lt;li&gt;Groups and roles&lt;/li&gt;
&lt;li&gt;Access rights&lt;/li&gt;
&lt;li&gt;Authentication methods (passwords, 2FA, etc.)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;At the same time, IAM covers the &lt;a href=&quot;https://www.univention.com/blog-en/2025/10/user-lifecycle-management-nubus/&quot;&gt;user lifecycle&lt;/a&gt;:&lt;br /&gt;
It controls who joins the organization, who leaves, and what changes are made to accounts and permissions. New employees automatically receive the appropriate access, role changes take effect immediately, and access is reliably revoked when someone leaves. This prevents orphaned accounts or uncontrolled permissions.&lt;/p&gt;
&lt;/div&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;uni-section uni-section--pt-0 uni-section--pb-8 &quot;&gt;&lt;div class=&quot;uni-container uni-container--sm&quot;&gt;&lt;div class=&quot;vc_row wpb_row vc_row-fluid&quot;&gt;&lt;div class=&quot;wpb_column vc_column_container vc_col-sm-12&quot;&gt;&lt;div class=&quot;vc_column-inner&quot;&gt;&lt;div class=&quot;wpb_wrapper&quot;&gt;

&lt;h2&gt;
  Application Integration: SSO and User Lifecycle&lt;/h2&gt;


	&lt;div class=&quot;wpb_text_column wpb_content_element&quot;&gt;
		&lt;div class=&quot;wpb_wrapper&quot;&gt;
			&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;An IAM only realizes its full potential when applications are seamlessly integrated. Nubus relies consistently on open and established standards.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Single Sign-on (SSO)&lt;/strong&gt;&lt;br /&gt;
SSO allows users to log in once and then access multiple applications. Depending on the type of application, different methods are used:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Kerberos&lt;/b&gt; for intranet applications&lt;/li&gt;
&lt;li&gt;&lt;b&gt;OpenID Connect (OIDC)&lt;/b&gt; or &lt;b&gt;SAML&lt;/b&gt; for web applications&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;In practice, this means one login in the morning is enough to access all relevant systems throughout the workday – without repeated password prompts. This not only improves convenience but also significantly reduces password issues and support requests.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;User Lifecycle Integration&lt;/strong&gt;&lt;br /&gt;
Beyond login, managing user accounts in connected applications is crucial. Nubus supports both common models:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Pull mechanisms&lt;/strong&gt;, where applications retrieve user data from the directory service (e.g., via LDAP)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Push mechanisms&lt;/strong&gt;, where accounts are actively provisioned in target systems (e.g., via APIs like SCIM)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Open interfaces are a core principle: they are documented, freely usable, and widely adopted. This allows organizations to flexibly integrate new applications and continue using existing systems.&lt;/p&gt;
&lt;p&gt;Groups serve as the unifying element, representing the smallest common denominator for roles and permissions. Once defined, groups can be consistently used across multiple applications – providing clarity and reducing complexity.&lt;/p&gt;
&lt;/div&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;uni-section uni-section--pt-0 uni-section--pb-8 &quot;&gt;&lt;div class=&quot;uni-container uni-container--sm&quot;&gt;&lt;div class=&quot;vc_row wpb_row vc_row-fluid&quot;&gt;&lt;div class=&quot;wpb_column vc_column_container vc_col-sm-12&quot;&gt;&lt;div class=&quot;vc_column-inner&quot;&gt;&lt;div class=&quot;wpb_wrapper&quot;&gt;

&lt;h2&gt;
  User Convenience: Easy Access and Clear Overview&lt;/h2&gt;


	&lt;div class=&quot;wpb_text_column wpb_content_element&quot;&gt;
		&lt;div class=&quot;wpb_wrapper&quot;&gt;
			&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;For end users, the benefits of IAM are most apparent in daily work. Instead of dealing with multiple credentials and entry points, they experience a consistent and easy-to-understand environment.&lt;/p&gt;
&lt;p&gt;With &lt;b&gt;seamless &lt;a href=&quot;https://www.univention.com/solutions/single-sign-on-for-public-administration/&quot;&gt;Single Sign-on&lt;/a&gt;&lt;/b&gt;, repeated logins are eliminated. Applications open directly, without additional hurdles. This saves time and reduces frustration – especially with frequently used systems.&lt;/p&gt;
&lt;p&gt;This is complemented by a &lt;a href=&quot;https://www.univention.com/products/functions/portal/&quot;&gt;&lt;b&gt;central web portal&lt;/b&gt;&lt;/a&gt; displaying all available applications and services in a clear overview. Users don’t have to remember which application serves which purpose or how to access it. Instead, all relevant tools are available in one place – structured, quickly accessible, and tailored to their role.&lt;/p&gt;
&lt;p&gt;Especially in organizations with many specialized applications, this results in a significantly better user experience and higher acceptance of the IT environment.&lt;/p&gt;
&lt;/div&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;uni-section uni-section--pt-0 uni-section--pb-8 &quot;&gt;&lt;div class=&quot;uni-container uni-container--sm&quot;&gt;&lt;div class=&quot;vc_row wpb_row vc_row-fluid&quot;&gt;&lt;div class=&quot;wpb_column vc_column_container vc_col-sm-12&quot;&gt;&lt;div class=&quot;vc_column-inner&quot;&gt;&lt;div class=&quot;wpb_wrapper&quot;&gt;

&lt;h2&gt;
  Efficient Administration: Automated and User-Friendly&lt;/h2&gt;


	&lt;div class=&quot;wpb_text_column wpb_content_element&quot;&gt;
		&lt;div class=&quot;wpb_wrapper&quot;&gt;
			&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;In addition to the user perspective, the administrative side is also crucial. An IAM must be powerful but also efficient to operate daily.&lt;/p&gt;
&lt;p&gt;With Nubus, repetitive tasks can be &lt;b&gt;automated&lt;/b&gt; – such as creating new users, assigning groups, or revoking permissions. Through interfaces like the UDM REST API, these processes can be integrated into existing HR or ITSM systems.&lt;/p&gt;
&lt;p&gt;At the same time, an &lt;b&gt;intuitive web interface&lt;/b&gt; is available for everyday work. Administrators can manage user accounts, adjust permissions, or configure two-factor authentication.&lt;/p&gt;
&lt;p&gt;This combination of automation and a user-friendly interface ensures that both large organizations with many users and smaller IT teams can work efficiently.&lt;/p&gt;
&lt;/div&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;uni-section uni-section--pt-0 uni-section--pb-8 &quot;&gt;&lt;div class=&quot;uni-container uni-container--sm&quot;&gt;&lt;div class=&quot;vc_row wpb_row vc_row-fluid&quot;&gt;&lt;div class=&quot;wpb_column vc_column_container vc_col-sm-12&quot;&gt;&lt;div class=&quot;vc_column-inner&quot;&gt;&lt;div class=&quot;wpb_wrapper&quot;&gt;

&lt;h2&gt;
  Extensibility and Integration: Open and Future-Proof&lt;/h2&gt;


	&lt;div class=&quot;wpb_text_column wpb_content_element&quot;&gt;
		&lt;div class=&quot;wpb_wrapper&quot;&gt;
			&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;IT environments are continuously evolving – new applications are added, others retired. An IAM must therefore be flexible and extensible.&lt;/p&gt;
&lt;p&gt;Nubus relies on &lt;a href=&quot;https://www.univention.com/products/functions/open-interfaces/&quot;&gt;&lt;b&gt;standardized APIs&lt;/b&gt;&lt;/a&gt; and &lt;b&gt;open integration mechanisms&lt;/b&gt;. New applications can be connected systematically without proprietary interfaces or costly custom development.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://www.univention.com/products/functions/integrations/&quot;&gt;&lt;b&gt;Pre-packaged integrations&lt;/b&gt;&lt;/a&gt; for widely used applications are particularly helpful. They allow a fast start, as many typical configuration steps are already prepared. Organizations can quickly generate value and gradually integrate their existing application landscape.&lt;/p&gt;
&lt;p&gt;Through automation and standardization, the environment remains manageable even as it grows.&lt;/p&gt;
&lt;/div&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;uni-section uni-section--pt-0 uni-section--pb-8 &quot;&gt;&lt;div class=&quot;uni-container uni-container--sm&quot;&gt;&lt;div class=&quot;vc_row wpb_row vc_row-fluid&quot;&gt;&lt;div class=&quot;wpb_column vc_column_container vc_col-sm-12&quot;&gt;&lt;div class=&quot;vc_column-inner&quot;&gt;&lt;div class=&quot;wpb_wrapper&quot;&gt;

&lt;h2&gt;
  Result: Control for Organizations, Convenience for Users&lt;/h2&gt;


	&lt;div class=&quot;wpb_text_column wpb_content_element&quot;&gt;
		&lt;div class=&quot;wpb_wrapper&quot;&gt;
			&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;Ultimately, both the organization and its users benefit significantly from a central IAM with Nubus.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;For organizations, this means:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;Transparency and control:&lt;/b&gt; knowing who has access to which systems, managing permissions, and reliably meeting security requirements&lt;/li&gt;
&lt;li&gt;Reduced administrative effort through automated processes&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;For users, this means:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;b&gt;A simplified work environment:&lt;/b&gt; one account, one login, one central entry point&lt;/li&gt;
&lt;li&gt;Quick access to applications that work seamlessly together&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This creates an IT environment that is both secure and user-friendly – a key foundation for productive work.&lt;/p&gt;
&lt;/div&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class=&quot;uni-section uni-section--pt-0 uni-section--pb-8 &quot;&gt;&lt;div class=&quot;uni-container uni-container--sm&quot;&gt;&lt;div class=&quot;vc_row wpb_row vc_row-fluid&quot;&gt;&lt;div class=&quot;wpb_column vc_column_container vc_col-sm-12&quot;&gt;&lt;div class=&quot;vc_column-inner&quot;&gt;&lt;div class=&quot;wpb_wrapper&quot;&gt;

&lt;h2&gt;
  Conclusion&lt;/h2&gt;


	&lt;div class=&quot;wpb_text_column wpb_content_element&quot;&gt;
		&lt;div class=&quot;wpb_wrapper&quot;&gt;
			&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;Connecting applications and users is the classic task of IAM – and one of the central prerequisites for a modern, high-performance IT infrastructure.&lt;/p&gt;
&lt;p&gt;With Univention Nubus, this task can be implemented holistically:&lt;br /&gt;
A central “Single Source of Truth,” open interfaces, integrated user lifecycle, and convenient Single Sign-On ensure that organizations retain control and users can work efficiently.&lt;/p&gt;
&lt;p&gt;IAM thus becomes not just a security tool but a real enabler for digital collaboration.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Next Step to Central IAM&lt;/strong&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;div id=&quot;meta-origin&quot;&gt;
&lt;p&gt;Discover how Univention Nubus brings your applications, identities, and access rights together in one platform – open, secure, and future-proof.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://www.univention.com/products/nubus/&quot;&gt;&lt;i&gt;Learn more about Nubus now&lt;/i&gt;&lt;/a&gt;&lt;/p&gt;
&lt;/div&gt;

		&lt;/div&gt;
	&lt;/div&gt;
&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Der Beitrag &lt;a href=&quot;https://www.univention.com/blog-en/2026/03/univention-nubus-iam-applications-to-users/&quot;&gt;Univention Nubus Brings Applications to Users&lt;/a&gt; erschien zuerst auf &lt;a href=&quot;https://www.univention.com&quot;&gt;Univention&lt;/a&gt;.&lt;/p&gt;</content:encoded> 
	<dc:date>2026-03-12T15:34:56+00:00</dc:date>
	<dc:creator>Ingo Steuwer</dc:creator>
</item> 
<item rdf:about="https://www.deepin.org/?p=38457">
	<title>Deepin: deepin App Store Upgraded!</title>
	<link>https://www.deepin.org/en/app-store-9-0-3/</link>
     <content:encoded>deepin, a prominent open-source operating system recognized globally with an impressive ranking on DistroWatch, consistently focuses on optimizing the desktop experience. Recently, the official App Store has completed a new round of upgrades. This all-in-one application management platform now features over 100,000 commonly used applications spanning scenarios like office work, daily life, and entertainment. These officially verified, reliable resources comprehensively meet the needs of both individual and enterprise users, ensuring safety and peace of mind. This upgrade focuses on practical features, visual experience, and bug fixes. It delivers comprehensive enhancements across operational experience, ecosystem integration, interface layout, and management efficiency, ...&lt;a href=&quot;https://www.deepin.org/en/app-store-9-0-3/&quot;&gt;Read more&lt;/a&gt;</content:encoded> 
	<dc:date>2026-03-12T02:54:12+00:00</dc:date>
	<dc:creator>xiaofei</dc:creator>
</item> 

</rdf:RDF>
