Various low-level software projects not covered by other major channels are covered within this channel.
BlueZ serves as the Linux Bluetooth protocol stack.
The Btrfs user-space utilities (btrfs-progs) for the Btrfs file-system living within the Linux kernel.
Dalvik is a virtual machine and core libraries for Google's Android operating system.
DBus is a FreeDesktop.org lightweight IPC implementation for Linux.
The FreeType portable font engine.
The GNU C library.
HarfBuzz is an open-source text shaping library.
libcxx is the C++ standard library implementation for LLVM.
Mono is an ECMA CLI, C#, and .NET implementation of Microsoft's technologies.
NetworkManager is an open-source network management component.
The Phoronix Test Suite is the leading open-source multi-platform benchmarking and automated testing framework developed by Phoronix Media.
Plymouth is a modern graphical boot system for Linux machines and developed by Red Hat.
PulseAudio is an open-source multi-OS network sound server commonly used by modern Linux distributions.
systemd is the widely-used system management daemon for the Linux kernel.
uClibc is a C library targeting embedded Linux systems.
UDisks provides disk management support.
UPower provides power management and power abstraction support for DeviceKit.
WebKit is the widely-used open-source web-browser rendering engine.
Wine Is Not An Emulator. Wine allows for Microsoft Windows programs to run unmodified on Windows, OS X, and Solaris/BSD operating systems.
This Month's Activity
- [dfont] Solve the mystery +2 offset thing!
HarfBuzz - Behdad Esfahbod: Previously, ResourceForkHeader was defined as 30 bytes, having the typeCountM1 as last member.
- build: remove check on dhclient version
NetworkManager - Beniamino Galvani: dhclient 4.0 was released more than 10 years ago.
- build: remove check on dhcpcd version number
NetworkManager - Beniamino Galvani: dhcpcd version 6, the first supporting IPv6, was released more than 5 years ago.
- Add new log2 implementation
glibc - Szabolcs Nagy: Similar algorithm is used as in log: log2(2^k x) = k + log2(c) + log2(x/c) where the last term is approximated by a polynomial of x/c - 1, the first order coefficient is about 1/ln2 in this case.
There is separate code path when fma instruction is not available for computing x/c - 1 precisely, for which the table size is doubled.
The worst case error is 0.547 ULP (0.55 without fma), the read only global data size is 1168 bytes (2192 without fma) on aarch64.
- ppp-manager: fix pppd not exiting correctly on modem hangup
NetworkManager - Frederic Danis: When unplugging an USB 3G modem device, pppd does not exit correctly and we have the following traces:
Sep 10 07:58:24.616465 ModemManager: <info> (tty/ttyUSB0): released by device '/sys/devices/pci0000:00/0000:00:1c.0/0000:01:00.0/usb4/4-1' Sep 10 07:58:24.620314 pppd: Modem hangup Sep 10 07:58:24.621368 ModemManager: <info> (tty/ttyUSB1): released by device '/sys/devices/pci0000:00/0000:00:1c.0/0000:01:00.0/usb4/4-1' Sep 10 07:58:24.621835 ModemManager: <warn> (ttyUSB1): could not re-acquire serial port lock: (5) Input/output error Sep 10 07:58:24.621358 NetworkManager: <debug> ppp-manager: set-ifindex 4 Sep 10 07:58:24.621369 NetworkManager: <warn> ppp-manager: can't change the ifindex from 4 to 4 Sep 10 07:58:24.623982 NetworkManager: <info> device (ttyUSB0): state change: activated -> unmanaged (reason 'removed', sys-iface-state: 'removed') Sep 10 07:58:24.624411 NetworkManager: <debug> kill child process 'pppd' (2292): wait for process to terminate after sending SIGTERM (15) (send SIGKILL in 1500 milliseconds)...
- [util] Add --ft-load-flags
HarfBuzz - Behdad Esfahbod: Useful for performance testing.
Not hooked to cairo yet.
- Add build-many-glibcs.py support for building more GCC libraries
glibc - Joseph Myers: Every so often we get libsanitizer or libgo builds breaking with new glibc because of some change in the glibc headers.
glibc's build-many-glibcs.py deliberately disables libsanitizer and GCC languages other than C and C++ because the point is to test glibc and find glibc problems (including problems shown up by new compiler warnings in new GCC), not to test libsanitizer or libgo; if the compiler build fails because of libsanitizer or libgo failing to build, that could hide the existence of new problems in glibc.
- Allow requesting a specific glyph for 'rand'
HarfBuzz - David Corbett: Randomization only happens by default.
- pam_systemd: support use in PID namespaces
systemd - Jürg Billeter: Pass 0 as leader PID to CreateSession to let logind use the PID from the D-Bus credentials.
- Add build-many-glibcs.py --enable-obsolete-* configs
glibc - Joseph Myers: We've had issues before with build failures (with new GCC) in code only built with --enable-obsolete-rpc or --enable-obsolete-nsl not being reported for a while because build-many-glibcs.py does not test those configure options.