Create Fabric

Create Fabric

11M Downloads

[Bug] Unable to start due to I/O Config Error

TheAyes opened this issue · 14 comments

commented

Describe the Bug

I'm unable to start Minecraft 1.20.1 using Quilt.

It throws an error because the config folder already exists. Well... It obviously does, how else would it load configs.
It might also be related to me using symlinks for config files, which in itself means that your way of processing configs might be incompatible with symlinks?

Reproduction Steps

  1. Install Minecraft 1.20.1 using quilt
  2. Add Create and Qfapi to your mods
  3. Create a Symlink from "Anywhere -> .minecraft/config"
  4. Try to start minecraft

Expected Result

It should start without problems. Properly resolving symlinks.

Screenshots and Videos

No response

Crash Report or Log

https://mclo.gs/gMlBmYQ

Operating System

OS: EndeavourOS Linux x86_64
Kernel: 6.7.4-arch1-1
Uptime: 4 hours, 55 mins
Packages: 1264 (pacman)
Shell: fish 3.7.0
Resolution: 1920x1080, 1920x1080
DE: Plasma 5.27.10 WM: KWin
Theme: [Plasma], Breeze [GTK2/3]
Icons: [Plasma], breeze-dark [GTK2/3]
Terminal: konsole
CPU: AMD Ryzen 7 5800X (16) @ 3.800GHz
GPU: NVIDIA GeForce GTX 980 Ti
Memory: 6882MiB / 32002MiB

Mod Version

0.5.1f

Minecraft Version

1.20.1

Other Mods

No response

Additional Context

No response

commented

show me the error with qfapi. not sure you can use fapi with the quilt loader

commented

currently create 0.5.1d sodium 0.4.10 fabric api 0.88.1 iris 1.6.4 and indium 1.0.21 are the precise versions you want.

commented

Can I even use Fabric Api with Quilt? Isn't that what Qfapi is for?

commented

yes. notice how qfapi also mentions the fapi version

commented

This error has nothing to do with the fabric api version.

commented

And are Sodium, Indium and Iris required. Or should I rather use these specific versions if I am using them at all?

commented

only if you want them

commented

So I've tried both
Create with Qfapi for Fabric Api 0.88.1 and the normal fabric api 0.88.1
Both result in the very same error.
Updated Log: https://mclo.gs/L0veCS2

commented

yeah but i am not sure how this happened:

Caused by: java.nio.file.FileAlreadyExistsException: /home/********/.local/share/PrismLauncher/instances/Aethyria-Base/.minecraft/config
commented

The config API is creating the config directory. Normally, it creates it if missing, or does nothing if it already exists. However, if a file of that name exists, this error is thrown.

Are you sure your link is set up correctly? It’s not being interpreted as one.

The code is as simple as it gets, if its not handing symlinks properly then I can guarantee pretty much every other config library that exists is broken too.

commented

The link is working properly in my explorer.
I did nothing other than a plain ln -s ~/mySourceConfig ./config

image

And the forgeconfigapiport file is also successfully being saved here.

commented

The Java docs mention that Symlinks should be properly supported. Maybe it's a different issue?

commented

So I've asked a friend on windows to verify my setup on windows which does indeed work...

Sooo... I'd assume that some issue with Java x Linux. There's nothing else for me left to assume otherwise.

I've also verified that it works without symlinks on my machine.

commented

UPDATE: It's literally a JDK Issue. I'm unsure wheter or not it's only OpenJDK or even the proprietary one. Using OpenJDK21 instead of 17 fixes the issue. I had to turn of the Compatibility Check in Prism which enforces Version 17 tho.

Since I figured this issues is nothing to be resolved by you guys I'll consider this ticket to be resolved. :)

I might even try the proprietary JDK a bit later now that I know how I can get it to work. I'll be back~