More plumbing to get thunar working

This commit is contained in:
Wildan M 2026-05-22 23:34:12 +07:00
parent c040d826c1
commit 82d250470a
No known key found for this signature in database
GPG Key ID: 01AC53185C679C79
9 changed files with 135 additions and 2 deletions

View File

@ -1,6 +1,7 @@
[package]
dependencies = [
"thunar",
"tumbler",
"xfconf",
"xfdashboard",
"xfdesktop",

View File

@ -18,5 +18,7 @@ script = """
DYNAMIC_INIT
cookbook_meson \
-Ddefault_library=shared \
-Dxattr=false
-Dxattr=false \
-Dtests=false \
-Dfile_monitor_backend=auto
"""

View File

@ -0,0 +1,8 @@
[source]
tar = "https://download.gnome.org/sources/gsettings-desktop-schemas/50/gsettings-desktop-schemas-50.1.tar.xz"
[build]
template = "meson"
mesonflags = [
"-Dintrospection=false"
]

View File

@ -2,6 +2,7 @@
[source]
tar = "https://www.gnupg.org/ftp/gcrypt/gnutls/v3.7/gnutls-3.7.10.tar.xz"
blake3 = "edcd8a505867226722ae50e0e9bb2bf57a1f38b5674a3028e26f69d2d61957e6"
patches = ["redox.patch"]
script = """
autotools_recursive_regenerate
"""

View File

@ -0,0 +1,93 @@
diff -ruwN source/lib/nettle/sysrng-linux.c source-new/lib/nettle/sysrng-linux.c
--- source/lib/nettle/sysrng-linux.c 2023-08-03 21:42:26.000000000 +0700
+++ source-new/lib/nettle/sysrng-linux.c 2026-05-22 14:49:54.913642701 +0700
@@ -48,7 +48,7 @@
get_entropy_func _rnd_get_system_entropy = NULL;
-#if defined(__linux__)
+#if defined(__linux__) || defined(__redox__)
# ifdef HAVE_GETRANDOM
# include <sys/random.h>
# else
@@ -107,7 +107,7 @@
if (ret == -1) {
int e = errno;
gnutls_assert();
- _gnutls_debug_log
+ printf
("Failed to use getrandom: %s\n",
strerror(e));
return GNUTLS_E_RANDOM_DEVICE_ERROR;
@@ -127,7 +127,7 @@
urandom_fd = open("/dev/urandom", O_RDONLY);
if (urandom_fd < 0) {
- _gnutls_debug_log("Cannot open /dev/urandom!\n");
+ printf("Cannot open /dev/urandom!\n");
return GNUTLS_E_RANDOM_DEVICE_ERROR;
}
@@ -140,11 +140,11 @@
if (res <= 0) {
int e = errno;
if (res < 0) {
- _gnutls_debug_log
+ printf
("Failed to read /dev/urandom: %s\n",
strerror(e));
} else {
- _gnutls_debug_log
+ printf
("Failed to read /dev/urandom: end of file\n");
}
@@ -159,18 +159,26 @@
return 0;
}
+static int _rnd_get_system_entropy_stub(void* _rnd, size_t size)
+{
+ if (_rnd != NULL && size > 0) {
+ memset(_rnd, 0, size);
+ }
+ return 0;
+}
+
int _rnd_system_entropy_init(void)
{
int urandom_fd;
-#if defined(__linux__)
+#if defined(__linux__) || defined(__redox__)
/* Enable getrandom() usage if available */
if (have_getrandom()) {
_rnd_get_system_entropy = _rnd_get_system_entropy_getrandom;
- _gnutls_debug_log("getrandom random generator was selected\n");
+ printf("getrandom random generator was selected\n");
return 0;
} else {
- _gnutls_debug_log("getrandom is not available\n");
+ printf("getrandom is not available\n");
}
#endif
@@ -179,13 +187,15 @@
/* Check that we can open it */
urandom_fd = open("/dev/urandom", O_RDONLY);
if (urandom_fd < 0) {
- _gnutls_debug_log("Cannot open /dev/urandom during initialization!\n");
- return gnutls_assert_val(GNUTLS_E_RANDOM_DEVICE_ERROR);
+ printf("Cannot open /dev/urandom during initialization!\n");
+ _rnd_get_system_entropy = _rnd_get_system_entropy_stub;
+ printf("USING VERY INSECURE NOT RANDOM ENTROPY!\n");
+ return 0;
}
close(urandom_fd);
_rnd_get_system_entropy = _rnd_get_system_entropy_urandom;
- _gnutls_debug_log("/dev/urandom random generator was selected\n");
+ printf("/dev/urandom random generator was selected\n");
return 0;
}

View File

@ -0,0 +1,8 @@
[source]
tar = "https://xorg.freedesktop.org/archive/individual/app/iceauth-1.0.11.tar.xz"
[build]
template = "meson"
dependencies = [
"x11proto",
"libice",
]

View File

@ -28,3 +28,8 @@ mesonflags = [
"-Dgudev=disabled",
"-Dintrospection=false"
]
[package]
dependencies = [
"gnome-desktop-schemas"
]

View File

@ -0,0 +1,15 @@
[source]
tar = "https://archive.xfce.org/src/xfce/tumbler/4.21/tumbler-4.21.1.tar.xz"
[build]
dependencies = [
"freetype2",
"gdk-pixbuf",
"gettext",
"glib",
"libjpeg",
"libpng",
"libxfce4util",
]
template = "meson"
mesonflags = [
]

View File

@ -24,5 +24,5 @@ mesonflags = []
[package]
dependencies = [
# todo: port xorg-iceauth
"iceauth"
]