steam-runtime
JDK
Our great sponsors
steam-runtime | JDK | |
---|---|---|
86 | 191 | |
1,153 | 18,393 | |
1.4% | 2.4% | |
6.6 | 10.0 | |
7 months ago | 1 day ago | |
Shell | Java | |
GNU General Public License v3.0 or later | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
steam-runtime
-
One Game, by One Man, on Six Platforms: The Good, the Bad and the Ugly
> It turns out that unless the game is explicitly marked (by Valve reviewers), Steam Deck will use the Windows build + Proton even if a Linux version is available.
I found this which sounds like it's not the default, but is in fact a result of compatibility testing:
> If your game has gone through Steam Deck compatibility testing and the testers reported that the native Linux version didn't work (because of #579), then it might have been flagged to run the Windows binaries via Proton by default, instead of the native Linux version.
per https://github.com/ValveSoftware/steam-runtime/issues/585
-
Chromebook Plus: more performance and AI capabilities
> Where is it written that steam-run will magically execute most binaries without patching them?
Somewhere in here: https://github.com/ValveSoftware/steam-runtime
:p
But I do get what you're saying. Once Flakes are default, I hope people start a proper push to clear up documentation and streamline the development process. The end-result is amazing, and the perfect OS/packaging system for my needs. The means of getting there... need a lot of work. I'm along for the ride either way.
-
i386 in Ubuntu Won't Die
I think they have something a bit like a container built into Steam: https://github.com/ValveSoftware/steam-runtime
- Gaming on Linux easier on Debian based distros vs Arch based?
-
How do you build games for Steam Linux Runtime?
this is for steamworks API, my understanding is there's a separate SDK for consuming Linux dependencies like glibc. Like Soldier runtime, Sniper runtime, and so on. Am I wrong in thinking these are two separate SDKs? here's the link to the other SDK I'm talking about: https://github.com/ValveSoftware/steam-runtime
-
After 4 years of development, 100% on Linux, I've released my 2D sandbox RPG, Vagabond, in Early Access !
I'm not sure we can distribute a flatpak or an appimage through Steam. They have their own controlled environment called Steam Runtime (https://github.com/ValveSoftware/steam-runtime) in which I should compile to be sure it runs everywhere (very similar to what I am doing). Last time, I look at this, it wasn't very clear and they supported only old versions of GCC. But it seems the documentation improved and now that I succeeded in building a modern version of GCC in my own container, maybe I could do that in theirs.
-
How to install old libraries on OTHER distro's than Debian?
I believe it's usable outside of Steam: https://github.com/ValveSoftware/steam-runtime though the instructions are not particularly clear. There's also a link to the APT repo they use as a reference: https://repo.steampowered.com/steamrt/
- Steam Desktop Client Update, Now with working hardware acceleration on linux!
-
Recommended method to install Steam on Debian?
Looking at the Flatpak version, if you want to use Proton versions 5.13 or newer with Steam in Flatpak, you need to install Flatpak from backports https://github.com/ValveSoftware/steam-runtime/issues/294 . Using Flatpak saves having to install i386 if that matters to you.
-
Wine 8.1
> Game developers would be fine to target a single distro like Ubuntu 22.04.
Valve has its own container-only Linux distribution, called "Soldier Runtime" (https://github.com/ValveSoftware/steam-runtime); especially for games distributed on Steam, it probably makes more sense to target that distribution instead of Ubuntu.
JDK
- JEP draft: Exception handling in switch
-
Java 23: The New Features Are Officially Announced
Completely gutted from the OpenJDK, last I checked. See here for the culprit PR: https://github.com/openjdk/jdk/pull/18688
-
macOS 14.4 might break Java on your machine
> Yes, they're changing one aspect of signal handler use to work around this problem. They're not stopping the use of signal handlers in general. Hotspot continues to use signals for efficiency in general. See https://github.com/openjdk/jdk/blob/9059727df135dc90311bd476...
This whole thread is about SIGSEGV, and specifically their SIGSEGV handling. However, catching normal signals is not about efficiency.
Some of their exception handling is still odd: There is no reason for a program that receives SIGILL to ever attempt continuing. But others is fine, like catching SIGFPE to just forward an exception to the calling code.
(Sure, you could construct an argument to say that this is for efficiency if you considered the alternative to be implementing floating point in software so that all exceptions exist in user-space, but hardware floating point is the norm and such alternative would be wholly unreasonable.)
> The wonderful thing about choosing not to care about facts is having whatever opinions you want.
I appreciate the irony of you making such statement, proudly thinking that your opinion equals fact, and therefore any other opinion is not.
This discussion is nothing but subjective opinion vs. subjective opinion. Facts are (hopefully, as I can only speak for myself) inputs to both our opinions, but no opinion about "good" or "bad", "nasty" or not can ever be objective. Objective code quality does not exist.
-
The Return of the Frame Pointers
I remember talking to Brendan about the PreserveFramePointer patch during my first months at Netflix in 2015. As of JDK 21, unfortunately it is no longer a general purpose solution for the JVM, because it prevents a fast path being taken for stack thawing for virtual threads: https://github.com/openjdk/jdk/blob/d32ce65781c1d7815a69ceac...
- JDK-8180450: secondary_super_cache does not scale well
- The One Billion Row Challenge
- AVX2 intrinsics for Arrays.sort methods (int, float arrays)
- A gentle introduction to two's complement
-
Java JEP 461: Stream Gatherers
Map doesn't implement the Collection interface.
https://github.com/openjdk/jdk/blob/master/src/java.base/sha...
-
C++23: Removing garbage collection support
C++ lets you write anything you can imagine, and the language features and standard library often facilitate that. The committee espouses the view that they want to provide many "zero [runtime] cost," abstractions. Anybody can contribute to the language, although the committee process is often slow and can be political, each release the surface area and capability of the language gets larger.
I believe Hazard Pointers are slated for C++26, and these will add a form "free later, but not quite garbage collection" to the language. There was a talk this year about using hazard pointers to implement a much faster std::shared_ptr.
It's a language with incredible depth because so many different paradigms have been implemented in it, but also has many pitfalls for new and old users because there are many different ways of solving the same problem.
I feel that in C++, more than any other language, you need to know the actual implementation under the hood to use it effectively. This means knowing not just what the language specifies, but can occaissionally require knowing what GCC or Clang generate on your particular hardware.
Many garbage collected languages are written in or have parts of their implementations in C++. See JS (https://github.com/v8/v8)and Java GC (https://github.com/openjdk/jdk/tree/36de19d4622e38b6c00644b0...)
I am not an expert on Java (or C++), so if someone knows better or can add more please correct me.
What are some alternatives?
flatpak - Linux application sandboxing and distribution framework
Graal - GraalVM compiles Java applications into native executables that start instantly, scale fast, and use fewer compute resources 🚀
dxvk-native - D3D9/11 but it runs natively on Linux!
aircraft - The A32NX & A380X Project are community driven open source projects to create free Airbus aircraft in Microsoft Flight Simulator that are as close to reality as possible.
Proton - Compatibility tool for Steam Play based on Wine and additional components
OkHttp - Square’s meticulous HTTP client for the JVM, Android, and GraalVM.
flathub - Issue tracker and new submissions
kitten - A statically typed concatenative systems programming language.
SDL - Simple Directmedia Layer
intellij-community - IntelliJ IDEA Community Edition & IntelliJ Platform
steam-for-linux - Issue tracking for the Steam for Linux beta client
imagepipe - Image processing pipeline