Closed ecabott closed 8 months ago
First of, there is not such this as a 'native Linux' build for .NET programs, the framework PlenBot is written in. C# does not compile to machine instructions but an intermediate representation that gets executed by the runtime that has been written for the target operations system. While this seems good, there are some major caveats to this when it comes to UI.
The reason this project only officially runs on Windows is because of the UI framework (WinForms) used, which is only available for Windows. The reason for that is that it is written by Microsoft and uses native libraries which are only available on Windows (or need to be emulated by Wine). There are some efforts by MS to provide a cross platform UI framework, but it is extremely unlikely that we will ever rewrite the whole project in another framework just for the niche case of Unix support without Wine.
Interestingly, Autoupload shouldn't be affected at all by all the things i mentioned above, so that is something we can look into. I won't however make any promises about the timeline.
Also we need a bit more information about your setup, there is no such thing as 'the' Linux and especially not if you are talking about UI servers. Please give me any information about your distro, UI server and any other information that you deem relevant about your setup so that we can reproduce the issue(s) once we get to it.
I'm using fedora 39 on xorg display server. Guild Wars 2 is installed from flatpak steam client and plenbot is run via bottles flatpak. Bottles is given permission to access the arcdps log directory.
I can open the log folder directly through plenbot and drag drop the logs to plenbot for manual upload. But when a new log is created it doesn't auto upload. The total logs amount also doesn't change in plenbot. But when I close and reopen plenbot, the total logs amount is refreshed and it shows the correct new total logs.
Thank you @SaculRennorb for the answers.
The app uses native Windows's FileSystemWatcher class to watch the file system for changes. The specific change it is looking for is the renaming of a file, since that is what it does as the last step, it creates a file and when it writes the log into it and then appends the file extension that counts as a file renaming. There is a strong possibility that arcpds, while being simulated under wine/proton, does something different, which is why the auto-upload might not be working. On application startup, the uploader manually scans the combat log folder, hence why you can see the correct number of logs after you restart the application.
I do not work with Linux in general so it is very difficult for me to test and try to fix these issues fast. You might need to wait a little bit for a fix.
In linux through wine, drag n drop works but auto upload doesn't. Tray icon is uninteractable(workaround is to not minimize to tray so the main window is always open). Also maybe building natively for linux is an option?