Page 1 of 1

Linux Port

Posted: Fri Apr 12, 2019 10:01 am
by AFaustini
Gaming on Linux is growing faster and faster.
We have a chance to have a port to Linux of QP?
Is the only thing preventing me to migrate to Linux from Windows.

Re: Linux Port

Posted: Tue Apr 16, 2019 9:42 pm
by butter100fly
When you say 'port' i'm going to assume you mean still having a single codebase, and I wouldn't do a cross platform app without forgetting macOS, so we're talking about a cross-platform Windows, macOS and Linux app. In my own way, i am working hard on this. There are countless issues here, let's think about just one of them: in order to find emulators, QuickPlay will recurse through a directory looking for *.exe files, and if it finds them, it will compare to its database of emulators .exe filenames. If it finds a match, it will save the .exe file to the emulators list, using the (user configurable) windows command line flags and options specified for running roms with that emulator. It will then allow you to generate a file which maps romnames to emulators and flags to run against the windows command line.

how should we do that in a cross platform way? I'm not saying its impossible, far from it, but i'd be interested in how you think we should solve this problem. More than one separate codebase isn't practical, and the goal would have to be to have the least number of platform-specific code routes as possible. Say we have emulators that are windows-specific, but some that are multi-platform (but will have command-line differences in the calls depending on the system). And some emulators that are macos or linux specific. What's the best way to keep/maintain a database of emulators, or search for emulators, or to generate a romdata file? do we make system-specific romdata files, or cross-plaform romdata files, or does that depend on the emulator we're using? The goal is to avoid brittleness and generally just too much ongoing work-to-do to manage the situation: and I think the main problem there is the Emu-finder, which is a big part of QuickPlay. What is your idea to solve this?

Let's think in more detail about finding emulators on more than one operating system: finding .exe files in a 'C:/Emulators' folder is pretty concievable for windows, but for other OS-es, are the conventions around organising emulators and games maybe not so easily-assumed? Can I ask you: how do you organise your emulators on linux? How do you see an Emu Finder working to find all the emulators you have? One idea has been to stop recursing through directories looking for named files, and instead use individual systems' package managers to know about emulators, but that's quite a change, and there's brittleness there, multiplied in a multiple-OS scanner, so a lot of ongoing work to do. The choice is much easier for a package manager for macOS and Windows (we can just pick brew and chocolatey, say) than for Linux (what's the minimum number of package managers we could support there to claim a 'Linux' compatibale app, and how many package managers is it achievable to maintain?) Wouldn't someone weekly need to fire up a bunch of different linux vms and looking for the week's emulator changes in all the package managers....

Hopefully you can see that, this is not really sounding like a 'port' anymore, because there are some hard choices and changes to make. In the meantime, hey there's always WINE....

Re: Linux Port

Posted: Fri Apr 19, 2019 7:53 pm
by AFaustini
My idea for emu-finder is different dat files or strings in emufinder dat file.
For package managers stick with one method of distribution, like .deb
Reading your post, i see something that i forgot to ask. Why there isn't a chocolatey package for QP?

Re: Linux Port

Posted: Thu May 02, 2019 2:50 pm
by butter100fly
For package managers stick with one method of distribution, like .deb
Doesn't that limit you to debian linux? Would flatpack or snap be any better?
Why there isn't a chocolatey package for QP?
Because nobody has made one ;-) Maybe you want to, I guess its just submitting a config file to the maintainers?

Re: Linux Port

Posted: Sat May 04, 2019 1:58 am
by AFaustini
Why there isn't a chocolatey package for QP?
Because nobody has made one ;-) Maybe you want to, I guess its just submitting a config file to the maintainers?
[/quote]
I Will do That. One last thing. I recently bought a UHD Monitor. Would be nice a bigger resolution icon for higher resolutions.

Re: Linux Port

Posted: Mon May 13, 2019 2:44 pm
by butter100fly
thanks! I'm no good at drawing (the QuickPlay logo you see above ws drawn by someone else). Maybe you know someone who could draw a higher-res favicon?