[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Web Updates & Qoth Q3 2024 5/5] qoth q3 2024.
From: |
address@hidden |
Subject: |
[Web Updates & Qoth Q3 2024 5/5] qoth q3 2024. |
Date: |
Mon, 30 Sep 2024 21:09:30 -0400 |
* news/2024-q3.mdwn: rust support for 64 bit hurd, Debian is building
X86_64 packages, described the somewhat instability of the X86_64 bit
port, and other news.
Samuel, there are two spots where I use ALL CAPS, those definitely need
some tweaking on your part. I know you always proofread, but I figured
that I would give you a heads up.
---
news/2024-q3.mdwn | 156 ++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 156 insertions(+)
create mode 100644 news/2024-q3.mdwn
diff --git a/news/2024-q3.mdwn b/news/2024-q3.mdwn
new file mode 100644
index 00000000..06712900
--- /dev/null
+++ b/news/2024-q3.mdwn
@@ -0,0 +1,156 @@
+[[!meta copyright="Copyright © 2024 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-09-29 09:00 UTC"]]
+
+Hello! Welcome to a new qoth. This qoth covers new and interesting GNU/Hurd
+developments in Q3 of 2024!
+[[!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 added rust support for hurd-amd64 (`X86_64`), and it
+was [merged upstream](https://github.com/rust-lang/rust/pull/128345)!
+Samuel is ok with using rust code in the Hurd code base. If you would
+like to help us [build rust language
+bindings](https://www.gnu.org/software/hurd/community/gsoc/project_ideas/language_bindings.html),
+so that we can build translators in rust, then please get in touch!
+
+He also started a Debian hurd-amd64 build daemon. So an `X86_64`
+Debian GNU/Hurd is officially building Debian packages around the
+clock (almost 8,000 packages are built already)! You can see its
+progress
+[here](https://buildd.debian.org/status/architecture.php?a=hurd-amd64&suite=sid).
+Several packages that build on `hurd-i386` are failing to build on
+hurd-amd64. The `X86_64` port is still experimental with [known
+issues](https://lists.gnu.org/archive/html/bug-hurd/2024-07/msg00058.html)
+(no one is running it on real hardware yet), but it can be
[[tested|open_issues/64-bit_port]]
+already. Samuel's summed up the 64-bit Hurd's stability with this
+comment:
+
+> ```
+> All in all, I have to reboot the buildd box several times a day
+> (while the i386 buildds can compile packages for several weeks before
encountering hangs).
+> ```
+
+Samuel also got the [Debian installer CD working on a 64-bit
+Hurd](https://lists.gnu.org/archive/html/bug-hurd/2024-08/msg00034.html)
+(in qemu), and he had a smattering of fixes
+[here](https://lists.gnu.org/archive/html/bug-hurd/2024-07/msg00025.html),
+[here](https://lists.gnu.org/archive/html/bug-hurd/2024-07/msg00011.html),
+and
+[here](https://git.savannah.gnu.org/cgit/hurd/hurd.git/commit/?id=aa4b556251f14cce6a1d560f4ca14a7ee76bf05f).
+
+Flavio Cruz removed some lingering code that handled [untyped mach
+messages](https://lists.gnu.org/archive/html/bug-hurd/2024-07/msg00056.html).
+He added `pthread_getname_np` and `pthread_setname_np` to
+[glibc](https://lists.gnu.org/archive/html/bug-hurd/2024-07/msg00023.html),
+and he added a `thread_get_name` RPC to [GNU
+Mach](https://lists.gnu.org/archive/html/bug-hurd/2024-07/msg00032.html). He
+also fixed several 64-bit issues
+[here](https://lists.gnu.org/archive/html/bug-hurd/2024-07/msg00055.html),
+[here](https://lists.gnu.org/archive/html/bug-hurd/2024-07/msg00051.html),
+[here](https://lists.gnu.org/archive/html/bug-hurd/2024-07/msg00041.html),
+[here](https://git.savannah.gnu.org/cgit/hurd/hurd.git/commit/?id=3cbb6c48aba3e50c6c6430f9abcc6adcff1d7252),
+[here](https://git.savannah.gnu.org/cgit/hurd/hurd.git/commit/?id=90b2060cc2a0c18dd48879c347cefda486f5a017),
+and
+[here](https://lists.gnu.org/archive/html/bug-hurd/2024-09/msg00012.html).
+He continued working on [porting
+GDB](https://lists.gnu.org/archive/html/bug-hurd/2024-07/msg00001.html)
+to the 64-bit Hurd.
+
+Luca Dariz fixed/worked around [a shell replacement issue
+](https://lists.gnu.org/archive/html/bug-hurd/2024-07/msg00057.html),
+and Samuel notes that "saving/restoring `sse registers` needs to be
+implemented," which Luca started working towards with his several
+patches that [added xfloat thread state
+interface](https://lists.gnu.org/archive/html/bug-hurd/2024-09/msg00002.html)
+to GNU Mach. He added a test to check that [interrupts on an RPC
+work](https://lists.gnu.org/archive/html/bug-hurd/2024-08/msg00019.html),
+and he also worked on fixing an [unprivileged double fault with
+GDB](https://lists.gnu.org/archive/html/bug-hurd/2024-09/msg00021.html).
+
+Sergey Bugaev resumed his work on
+[GHurdFileMonitor](https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3626)
+(IS THAT A GOOD LINK? Seems outdated). This will let glib's
+GFileMonitor work on the Hurd, so that applications can monitor when a
+file or directory changes.
+
+He also sped up `access ()` / `faccessat ()`, when checking for [file
+existence](https://lists.gnu.org/archive/html/bug-hurd/2024-09/msg00023.html).
This
+is prompted by
+[GLib](https://gitlab.gnome.org/GNOME/glib/-/merge_requests/4272)
+switching to use `faccessat (F_OK)` to implement `g_file_query_exists
+()` for local files. It is not a large patch, but hopefully it shows
+that tiny patches can make the Hurd faster!
+
+The AArch64 port still [[exists|open_issues/arm_port]]. You can
+[cross](https://mail.gnu.org/archive/html/bug-hurd/2023-01/msg00132.html)\-[compile](https://github.com/flavioc/cross-hurd)
+and [[build|toolchain/cross-gnu]] the Hurd for AArch64. Then you can
+run that binary via qemu (please note that this is a bare bones and
+experimental Hurd not Debian GNU/Hurd). Hurd developers
+successfully used GNU Mach to print "Hello World" on the [Olimex A64
+OLinuXino](https://www.olimex.com/Products/OLinuXino/A64/A64-OLinuXino/open-source-hardware)
+board, but it's probably easier to help the port via qemu.
+
+Want to help the AArch64 port?! We need an interrupt framework for
+AArch64, timers, exceptions for bugs on many models (WHAT DOES THAT
+MEAN/DID I EXPLAIN IT WELL), debugging rump kernels, bootstrapping
+Debian, porting packages, and plenty of bugs to squash! If you want
+to run the Hurd on the MNT reform, Pinephone, or Librem 5, then we
+could really use some help making it a reality! There's lots of work
+to do!
+
+Want to run Debian GNU/Hurd on real hardware? We might recommend the
+Thinkpad T60, which supports a maximum of 4GB of RAM. You can
+download a working installer image
+[here](https://www.debian.org/ports/hurd/hurd-cd). You can probably
+buy a cheap T60 for less than $50! If you can't get the installer to
+detect your hard drive or solid-state-drive, then try configuring the
+SATA interface to "compatibility" in the BIOS, which will let the SATA
+device act like an IDE device. Please reach out on irc when you
+install, because the installer image can be a little wonky.
+
+It is possible to run a 32 bit Hurd on the Thinkpad X200, T400, T500,
+or W500, but installing it is a [little
+harder](https://www.gnu.org/software/hurd/hurd/running/debian/CrossInstall.html).
+If you get it installed, then you should have internet connectivity
+via the ethernet port. Additionally those Thinkpads support 8GB of
+RAM, and you could also use an SSD, which the Hurd can use, with a
+maximum partition size of 2TB! I know we are all excited to use the
+hurd-amd64 port in real hardware, but it is not yet recommended.
+
+Interested in running the Hurd on newer hardware? We have plans to
+support newer hardware with [[rump kernels|hurd/rump]]. And we are
+already supporting SSDs with rumpdisk, and we have an experimental usb
+support with
+[rumpusbdisk](https://lists.gnu.org/archive/html/bug-hurd/2023-07/msg00025.html).
+Samuel showed off very basic and limited sound support a few years
+ago. That work needs to be extended. Join in the effort, and we can
+support newer hardware!
+
+---
+
+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]].
+
+"""]]
--
2.45.2