Open Miss-Inputs opened 6 years ago
Hmm. Actually, this isn't even where I want to go with this. It'd be more like… I have Meow Launcher, which is the launcher and turns ROMs into launchable .desktop things, and then there are these native games which are already launchable, so Meow Launcher doesn't need to care about that, and then there'd be a game browser which does the thing.
...Well, at least I know what I'm on about myself.
Or do I?
I was thinking I might crack a crack at this later (not now, as I'm on the business end of 0 hours of sleep). It might work out. I think.
So, basically what I'm thinking is: The functionality provided by disambiguate, series_detect and organize_folders can be useful; navigating a sea of applications to find what might be games can be difficult; and I can parse the metadata to a more useful state (e.g. Categories > metadata.categories and metadata.genre).
So, it wouldn't be so pointless to put it in Meow Launcher. Meow Hypothetical Game Browser would still have an "add .desktop file" functionality, for .desktop files that might have been missed, are in a custom place, or to add things via command line/args/name that don't have a .desktop launcher, etc.
I think I'll make a thing that enumerates all .desktop files in the standard directories and add a Metadata object to them with some basic info, filtering out the stuff that isn't really a normal launchable application.
Then I'd have two options (names pending):
Then remove any Steam shortcuts, because we already have steam.py for those; GOG shortcuts are fine. Anything else is up to the user to make sure stuff is valid or whatever.
That should work.
Oh yeah, that's what I was on about: Don't use launchers.py, just copy the .desktop file over but add the X-Meow Launcher Metadata section.
This is like, the final boss of this project. It'd need a heckload of refactoring in launchers.py for me to get anywhere first.
So here's how I'm thinking is the best way to do this:
Have another config file. This has lists of command lines, or .desktop files, that you want to be included in the thing. Maybe = . Just detect if ends in .desktop.
Maybe another section(s) that allows the adding of metadata, which becomes necessary when dealing with command line stuff. Perhaps also a database of some kind.
Then we just copy the resulting .desktop file, generated or otherwise, to the output folder and then have our fun... should be fine.