diff --git a/modules/ryan-packages/freedesktop.scm b/modules/ryan-packages/freedesktop.scm
new file mode 100644
index 0000000..6c0770a
--- /dev/null
+++ b/modules/ryan-packages/freedesktop.scm
@@ -0,0 +1,24 @@
+(define-module (ryan-packages freedesktop)
+ #:use-module (guix download)
+ #:use-module (guix packages)
+ #:use-module (guix git-download)
+ #:use-module (guix utils)
+ #:use-module (gnu packages)
+ #:use-module (gnu packages freedesktop)
+ #:use-module (gnu packages wm))
+
+(define-public xdg-desktop-portal-wlr-new
+ (package
+ (inherit xdg-desktop-portal-wlr)
+ (version "0.7.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/emersion/xdg-desktop-portal-wlr")
+ (commit (string-append "v" version))))
+ (sha256
+ (base32
+ "1b3hpp3ybjgnnmnwsyb5bsnvz9q5nr3zz0j1alh02g24f68lf00k"))
+ (patches (search-patches "xdg-desktop-portal-wlr-harcoded-length.patch"))))
+ (native-inputs (modify-inputs (package-native-inputs xdg-desktop-portal-wlr)
+ (append wlroots)))))
diff --git a/system.scm b/system.scm
index 3450770..c4a22cf 100644
--- a/system.scm
+++ b/system.scm
@@ -18,6 +18,7 @@
(use-modules (guix licenses))
(use-modules (gnu packages tls))
(use-modules (srfi srfi-1))
+(use-modules (ryan-packages freedesktop))
(use-package-modules security-token)
(use-service-modules cups desktop networking xorg ssh sound security-token docker virtualization)
@@ -124,7 +125,7 @@
"libfreeaptx"
"libfdk"
"opendoas"
- "xdg-desktop-portal-wlr"
+ ;"xdg-desktop-portal-wlr"
"xdg-desktop-portal"
"pipewire"
"docker"
@@ -132,7 +133,7 @@
"virt-manager"
"wireplumber"
"zsh"))
- (list my-ca-certs)
+ (list my-ca-certs xdg-desktop-portal-wlr-new)
%my-base-packages ))
;; Below is the list of system services. To search for available