summaryrefslogtreecommitdiff
path: root/news
diff options
context:
space:
mode:
Diffstat (limited to 'news')
-rw-r--r--news/2023-q4.mdwn121
1 files changed, 121 insertions, 0 deletions
diff --git a/news/2023-q4.mdwn b/news/2023-q4.mdwn
new file mode 100644
index 00000000..294b6b22
--- /dev/null
+++ b/news/2023-q4.mdwn
@@ -0,0 +1,121 @@
+[[!meta copyright="Copyright © 2013 Free Software Foundation, Inc."]]
+
+[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
+id="license" text="Permission is granted to copy, distribute and/or modify this
+document under the terms of the GNU Free Documentation License, Version 1.2 or
+any later version published by the Free Software Foundation; with no Invariant
+Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license
+is included in the section entitled [[GNU Free Documentation
+License|/fdl]]."]]"""]]
+
+[[!meta date="2024-01-05 22:22 UTC"]]
+
+Hello! Welcome to a new qoth. This qoth covers new and interesting GNU/Hurd
+developments in Q4 of 2023!
+[[!if test="included()" then="""[[!toggle id=full_news
+text="Details."]][[!toggleable id=full_news text="[[!paste id=full_news]]"]]"""
+else="
+[[!paste id=full_news]]"]]
+
+[[!cut id="full_news" text="""
+
+Samuel Thibault fixed gcc's Hurd's default pie and [[added static pie
+support|https://lists.gnu.org/archive/html/bug-hurd/2023-10/msg00061.html]].
+He also added a [[whatis
+command|https://lists.gnu.org/archive/html/bug-hurd/2023-10/msg00007.html]]
+to GNU Mach's kernel debugger, which can determine what an
+address points to (a stack? a port? some kalloc? ...). He also added
+[[hurd-amd64 support to
+GCC|https://lists.debian.org/debian-hurd/2023/11/msg00039.html]].
+
+Samuel requested that the Hurd team set up a [[continuous
+integration,|https://lists.gnu.org/archive/html/bug-hurd/2023-12/msg00007.html]]
+so that when developers make code changes, they can be certain that
+they did not break anything. It turns out that the Hurd supports
+several different environments: 32 bit, 64 bit, 32-on-64 bit, ACPI,
+non-ACPI, SMP, non-SMP, Xen, etc. Apparently Flavio has a [[personal
+CI|https://github.com/flavioc/cross-hurd/actions/runs/7080757561]],
+but it is set up in a Debian independent way. If you are interested in
+helping the Hurd project set up a CI, then please get in touch!
+
+Luca Dariz worked on adding [[some simple GNU Mach user-space tests
+|https://lists.gnu.org/archive/html/bug-hurd/2023-10/msg00031.html]].
+With a working MiG, a GNU/Linux machine can run make check in the GNU
+Mach source code, which will launch qemu to ensure that 32 bit (PAE
+and non PAE), 32 on 64 bit, and full 64 bit GNU Mach works. We
+currently do this testing on GNU/Linux, because qemu does not run on
+the Hurd.
+
+Many people worked on the Hurd's new [[x86_64 bit
+support|https://lists.gnu.org/archive/html/bug-hurd/2023-10/msg00036.html]].
+A 64-bit debian bbuild is set up, and we can bootstrap a chroot! The
+hurd-amd64 wanna-build infrastructure is also set up. We are having
+issues reliably building packages on a 64-bit Hurd, which lead Samuel
+to uncover and fix [[a proc
+leak|https://lists.gnu.org/archive/html/bug-hurd/2023-11/msg00035.html]].
+
+Flavio Cruz [[improved GNU Mach's
+IPC|https://lists.gnu.org/archive/html/bug-hurd/2023-11/msg00033.html]]
+by reordering `mach_msg_type_t` fields to byte align `msgt_name` and
+`msgt_size`. He also created a patch series to [[avoid message
+resizing for
+x86_64|https://lists.gnu.org/archive/html/bug-hurd/2023-11/msg00028.html]].
+He also [[removed untyped mach RPC
+code|https://lists.gnu.org/archive/html/bug-hurd/2023-11/msg00026.html]].
+GNU Mach uses typed IPC. The Hurd could support both typed and
+untyped, but it appears that the Hurd only uses typed RPC. So it
+seems best to remove any untyped RPC code.
+
+Sergey Bugaev added [[GNU Mach entry re-coalescing
+support|https://darnassus.sceen.net/~hurd-web/open_issues/gnumach_vm_map_entry_forward_merging/]].
+Essentially, Mach is not always able to merge two vm entries that are
+made next to each other, which slows down ext2 and bash. Sergey
+allowed GNU Mach to merge entries in the common cases, which greatly
+helps ext2fs.
+
+Sergey is also working on [[porting the Ladybird web
+browser|https://lists.gnu.org/archive/html/bug-hurd/2023-11/msg00013.html]]
+to the Hurd. The author of this post uses the [[netsurf web
+browser|https://www.netsurf-browser.org/]] on the Hurd, which works on
+simple websites like wikipedia, but it badly renders javascript heavy
+websites, which makes many websites un-useable. If Sergey is
+successful in porting [[Ladybird|https://ladybird.dev/]], then Hurd
+users could start using sites like Github! It is worth noting that
+someone should update the [[Firefox
+port|https://lists.debian.org/debian-hurd/2014/09/msg00070.html]] as
+well.
+
+Sergey also started [[porting the Hurd to
+AArch64!|https://lists.gnu.org/archive/html/bug-hurd/2023-12/msg00110.html]]
+While a port to RISC-V might be more exciting, it is worth mentioning
+that AArch64 is more established. What is interesting is that Sergey
+is already able to build Hurd servers for AArch64! Normally, in order
+to run the binaries, one would port GNU Mach to AArch64. Luckily for
+us, he turned to GDB and directly ran a 'Hello World' Hurd AArch64
+binary on Linux! This helped him fix some bugs along the way. We
+still need to define the ABI and complete the GNU Mach port, but this
+is exciting news!
+
+Tobias Platen started [[porting GNU Mach to
+Power9|https://lists.gnu.org/archive/html/bug-hurd/2023-10/msg00021.html]].
+
+So if you want to test if your favorite packages work on the Hurd and
+contribute towards making the full GNU system usable for a wider range
+of people, please [[get in contact|contact_us]] -- and maybe already
+grab the [[source code|source_repositories]].
+
+---
+
+The **GNU Hurd** is the GNU project's replacement for the Unix kernel. It is a
+collection of servers that run on the Mach microkernel to implement file
+systems, network protocols, file access control, and other features that are
+implemented by the Unix kernel or similar kernels (such as Linux). [[More
+detailed|hurd/documentation]].
+
+**GNU Mach** is the microkernel upon which a GNU Hurd system is based. It
+provides an Inter Process Communication (IPC) mechanism that the Hurd uses to
+define interfaces for implementing in a distributed multi-server fashion the
+services a traditional operating system kernel provides. [[More
+detailed|microkernel/mach/gnumach]].
+
+"""]]