T2 System Development Environment

one distribution to support all CPU architectures

The T2 System Development Environment, allows the fully automated creation of custom Operating Systems using state of the art, up-to-date packages, integrated support for cross compilation for reproducable builds.

From ARM, M68K, MIPS, HPPA, PowerPC, RISCV, SPARC to X86-64, Glibc to Musl, T2 supports all major CPU architectures, C libraries, GUI systems and desktop environments as well as countless of special purpose and embedded firmware packages!

While initially focused on the Linux kernel, T2 already has proof-of-concept support for building "homebrew" pkg ports for Other OS, including: BSDs, macOS and Haiku.

With support already wide and versatile, we do not intend to stop here, and plan to improve T2's "home-brew" support, as well as bootstrapping alternative micro kernels, such as L4, Fuchsia, RedoxOS or integrating building "AOSP" Android as well.

News

T2 24.5 "Future Nostalgia"

T2 24.5 was released as a major milestone release not only including the latest and greatest Linux kernel, GCC, LLVM / Clang, Glibc, Musl, uClibc, X.org, Mesa3D, but also the KDE and GNOME desktop packages updated and fixed to finally mostly cross compile. While at it, we also undeleted IA-64 Itanium support! ;-)

A total of 36 pre-compiled binary base install ISOs for various Glibc, Musl and uClibc combinations are available for for: Alpha, Arc, ARM(64), Avr32, HPPA, IA64, Loongarch64, M68k, MIPS(64), Nios2, OpenRISC, PowerPC(64), RISCV(64), s390x, SPARC(64), SuperH, i486, i686, x86-64, x32, and more. On most architectures the release still boots with 512MB of RAM or even less, and are on average just one GB in size. Rolling release updated using the scripted build system from source and optimized for the native system CPU.

The release contains a total of 4720 changesets, including approximately 4676 packags updates, 500 issues fixed, 4676 packages or features added and 139 removed. Around 51 improvements. More details can be found on the release page

Don't delay and try highly optimized T2/Linux today!

Doubling down on IA-64 Itanium support

With the recently announced removal of support for IA-64 from the upstream Linux kernel, we would like to stress that the reports of death of this EPIC architecture are greatly exaggerated.

Due to the ease of T2's cross compiling, as well as support and interest by the OpenSource community, we are committed to support IA-64 for at least another decade or two.

If anything, the upstream removal only sparked increased interest in T2 on Itanium support and brought an influx of new developers with IA-64 based machines. If you have highly reliable, explicit parallel IA-64 computers in production, don't delay and try and support highly optimized T2 Linux today!

Dark theme and more

Once a hacker niche now mainstream, and we could not escape it anymore: the Dark Theme!
Accompanied by our new glowing T2 logo!!

Keeping this pace, we did a long awaited refactor on the website's backend that will allow us keep making incremental changes to it with ease in the future. Who knows, maybe a complete design overhaul some day?

Article titles on the main page can now be clicked to highlight the article itself, which also gives you a nice link to share links directly pointing to the choosen article. For example the one you are currently reading https://t2sde.org/#news-2023-08-28

While at it, we finally added an RSS feed for the main page, too! Which truely helps to keep an eye on what is going in the open T2 world without having to constantly open a web browser daily to check for news.

Build time estimation

Te are really happy to announace that, as of revision 64292, the T2 build scripts estimate and display how time time a package will likely require to build!

Of course if works for Emerge-Pkg as well as Build-Target.

This is a game changer for many users with different, especially older systems and especially when testing on multiple different, exotic, vintage and retro RISC machines with varying levels of performance and allows us to better organize around long builds!

This feature is based on binutils reference time units which wer gathered for a really, really long time in T2 package's .cache.

We tried to make it as accurate as possible, but of course some variations, especially for packages not utilizing mulitple parallel threads during compilation are to be expected.

The T2 core develoeprs updated a massive ammount of .cache files to make this as accurate as possible.

And last but not least, we did benchmarks on multiple boards to give people an overwiew of what their hardware is capable of, which you can find under "Perfomance Index" on individual hardware reference page.
See for example the Mango Pi MQ-Pro D1 T2 hardware page.

We hope you like this new feature, because we for sure do!

Intel hardware decoding

We are happy to announce that T2, as of r63868, officially supports hardware video encoding and decoding with Intel discrete GPUs (aka ARC/DG2).

TL;DR: ./scripts/Emerge-Pkg -force intel-onevpl ffmpeg mpv

It required 40 hours of mostly nighttime work to put everything together but we finally did it.

Here are all the packages you need to operate your hardware en/decoder:

Example command:
ffmpeg -hwaccel qsv -c:v vp9_qsv -i input.webm -c:v av1_qsv -b:v 5M -look_ahead 1 output.webm

As an added bonus you also get H264, HEVC and VP9 hardware support!

As usual, patches welcome!
Let us know if it actually works for your DG1 or Xe graphics too!

32-bit Rustc and more big-endian

The last couple of days we spent fixing rustc support for sparc32, notably the elf format which isn't working upstream as well as more RISCV(32) as well as big-endian ARM fixes!

Next release will then come with rustc, cargo and hopefully firefox which requires a more fixes at the time of writing.

As usual, patches welcome if you found something not yet working perefctly on this older, or embedded systems!

Complete system encryption

In the past few weeks, we've been hard at work to improve user convenience when setting a fully encrypted T2 installation.

Our installer already supported full-disk encryption, including encrypted boot partions which you unlock with Grub at boot time since 2020 (r50723).
But until now we were missing a crucial feature for easier data management without being locked with one partion scheme unless doing a clean install: LVM inside LUKS.

As of today, we are proud to anounce that we integrated support for booting LUKS+LVM! We even added support for encrypted swap/suspend-to-disk to complete the security chain so that you can shutdown you pc without closing everything you were working on and worry about someone running out with your drive and dumping the content of your swap partition in case your computer is stored in a public space.

Everything is integrated in Stone which you will be able to experiment by yourself when we release 23.2 iso images.

Rebooting from the installed to the new system is now faster than ever, courtesy of the kexec mechanism that was added in r60600 (r59937, 60059, 60458, 60468, and more that fixed cross-compiling!). Meaning you can now deploy T2 on your server without having time to make coffee before it reboots!

Of course everything is already available in the current subversion repository!
If you have an already existing T2 install make sure to upgrade the following packages before testing anything: grub2, linux, mkinitrd, stone, util-linux.

A typical LUKS+LVM+suspend-to-disk setup would look like so:


	NAME               FSTYPE      TYPE  MOUNTPOINTS
	sda                            disk  
	├─sda1             vfat        part  /boot/efi
	└─sda2             crypto_LUKS part  
	  └─toor                       crypt 
	    ├─qvo-swap     whatever    lvm   [SWAP]
	    ├─qvo-root     whatever    lvm   /
	    ├─qvo-boot     whatever    lvm   /boot
	    └─qvo-home     whatever    lvm   /home
	


You can watch parts of that work on youtube:


Next steps for us will be to have sensible defaults suggestions at partition time for user convenience and then rewrite (hopefully soon) a graphical version of the installer.

As always, patches welcome! Come chat with us on the interwebs!

T2 22.9 "TOP SECRET"

Today T2 SDE Linux 22.9 was released. Another major milestone update with latest and greatest GCC, LLVM / Clang, X.org, Mesa3D, Glibc and more. Improved security, as well as SMART and whole-program LTO optimizations.

As technology snapshot a pre-built binary ISO is released for high-performance x86-64-v3, and of course all other architectures, including: alpha, arc, arm, arm64, avr32, hppa, ia64, m68k, mipsel, mips64, nios2, ppc, ppc64-32, ppc64le, riscv, riscv64, s390x, sparc, sparc64, superh, x86, x86-64 and x32 can be rolling release updated thru the scripted build system from source – optimized for the native system.

There were 1450 changesets with 2378 lines of commit messages. Approximately 1918 packages got updates, 122 issues fixed, 1918 packages or features added and 47 removed. Around 15 improvements have been committed.

T2 22.6 "Résistance"

Today T2 SDE Linux 22.6 was released. A major milestone update to ship full support for 25 CPU architectures, variants, and C libraries. Of course all the architectures, including: alpha, arc, arm, arm64, avr32, hppa, ia64, m68k, mipsel, mips64, nios2, ppc, ppc64-32, ppc64le, riscv, riscv64, s390x, sparc, sparc64, superh, x86, x86-64 and x32 can be rolling release updated thru the scripted build system from source – optimized to the native system.

The 22.6 release received updates across the board, with latest stable Linux kernel 5.17.15, GCC12, LLVM/Clang 14 and the latest of KDE, GNOME and much more.

There were 5014 change-sets with 6334 lines of commit messages. Approximately 4947 packages got updates, 331 issues fixed, 4947 packages or features added and 148 removed. Around 49 improvements have been committed.

T2 feature patch bounty program

The T2 SDE project is thrilled to announce ExactCODE GmbH sponsoring features bounties for selected feature requests. We believe OpenSource developers should be fairly paid for their tremendeous infrasructure work most of the intenet, mobile and embedded platforms are based on nowadays. We are happy to set a good example and T2 being one of the first project that gives back and pays their contributors.

T2 ported Firefox to RISCV64

Today the T2 System Development Environment team is happy to share the latest Firefox working on RISCV64 Linux desktop! While this is a huge step for general RISCV desktop and mobile usability more work remain, e.g. to port the JavaScript JIT to RISCV, too.

Older news …