geefr / beatsaber-linux-goodies

Mod installation scripts and other goodies to support Beat Saber on Linux
BSD 2-Clause "Simplified" License
132 stars 5 forks source link

How to run without libicu #98

Closed merspieler closed 2 years ago

merspieler commented 2 years ago

I'm trying to run this for the first time and get the following error. Process terminated. Couldn't find a valid ICU package installed on the system. Please install libicu using your package manager and try again. Alternatively you can set the configuration flag System.Globalization.Invariant to true if you want to run with no globalization support. Please see https://aka.ms/dotnet-missing-libicu for more information

I want to run it without globalization. In which config file do I have to set the named option?

geefr commented 2 years ago

I would strongly recommend installing the missing libicu. It should be in your package manager, it's small, and has a permissive licence. I'm very surprised it's missing, it's a common package and I thought it was installed by default in all common distros.

Beataroni doesn't have any translations at the moment so that flag could in theory be set, I don't see much reason to change defaults though unless there's a specific reason libicu can't be available (Or it's not available by default for say 90% of users).

If you still want to turn that off then you're free to build your own version, or see here for possible runtime-overrides, not sure how that works myself.

I make no guarantees that Beataroni will work if configs are changed however. It's possible that parts of Avalonia and similar will fail, I wouldn't be surprised by text / font display issues.

merspieler commented 2 years ago

I didn't find libicu in the nixos packages (almost nothing is installed by default in nixOS ...)

... and personally, I don't trast .NET to begin with...

Also... I don't really wanna build stuff now... I've just got bsr and just wanna play custom maps as the OST aren't my thing and I didn't see how to get the custom maps in without mods... I've always seen on streams that they just hit download but can't find that anywhere...

geefr commented 2 years ago

Okay, ignoring personal opinions .Net is included in the Beataroni release, and will require some system libraries (ttf-ms-fonts is sometimes missing on arch, may be the next problem you hit on Nix). Will leave this open for a while to see if anyone else jumps in, or wants to flag similar issues on any other distro.

Including personal opinions - .Net is cross platform now, and in common usage on Linux. If you're having trouble with package management I'd recommend Ubuntu or Mint, they'd be a safer bet for gaming in general, as they're more commonly used for desktop / gaming use.

Packaging for Nix had been suggested briefly in the past, if someone wants to take on the construction & maintenance of that they're welcome to. Unless an issue affects most users I'm not planning changes to Beataroni, past keeping it functional as Beatmods/IPA is updated. (Stance may change if I have more free time, or if NixOS becomes a general purpose desktop OS.)

merspieler commented 2 years ago

Okay, so I figured it out... The package search was too dumb to find me libicu... it's in the icu package....

You can't just install icu in a nix-shell if you download the binary, you need to install them system wide so steam-run picks them up when you start beateroni.

With that it works great.

Thanks for your work.