mainpostsannouncesoft/projmiscstorage

I hate Arch's RetroArch packaging method!

2019/04/16 3:12 PM (UTC -5) | tildearrow

i really do. this post will be brief, but let me explain.

first of all, after running pacman -S retroarch in your road towards nostalgia, you're told you need to install some assets by using pacman again. but why if RetroArch has a download assets option?

well, let me tell you. after you open RetroArch, to your surprise you see black boxes and a very retro font. so you go to the online updater menu, and attempt to download assets.

you wait a while... and then, it doesn't work! you try again, but it still doesn't work! finally, you give up and decide to look what's wrong. you download the assets again, and then...

...you see they're being downloaded to /usr.

OK, who the hell downloads assets to /usr?! there is NO way a normal user could download the assets there without potential security fla- oh... ...you have to install yet another package, retroarch-assets-xmb...

ok, so you install that package and come back to RetroArch. but now, you need the cores! so you go to the online updater again, and then, why is there no "Core Updater" option?
you look everywhere else in the menu, but there is still no "Core Updater" option. so you can't download any cores. and you know, when you can't download cores, you can't play anything, so you're screwed.

...

you wanna know how to actually install the cores? BY USING THE PACKAGE MANAGER! WHO THOUGHT INSTALLING *EVERYTHING* THROUGH PACMAN WOULD BE A GOOD IDEA?!?!
seriously, this only adds more burden to maintenance! RetroArch already has its very own update system. and it works well, and actually, better than this everything-through-pacman approach. so what's the point of having the cores in pacman? none!

there also is a lack of some cores in the official packages, such as FCEUmm and Mesen. yes, I do need them.
in this case, you're forced to use the AUR for them. but seriously, why would you waste time compiling your cores instead of just downloading them from the Core Updater? (of course, this statement is invalid if you're on a 32-bit x86 machine, since they have outdated versions of cores, and even worse, not all of them...)

but now, what if your core isn't even in the AUR? you can't do anything!!! unless you want to package it yourself or something...

furthermore, RetroArch is a user application, NOT a system application, so, unless you're building a retro arcade cabinet or something with embedded components, it makes NO sense to install cores, shaders, assets and the rest under /usr.
(yeah, I know the "usr" name is misleading)

/usr should be only for the system and nothing else. the rest of apps? put them on a separate directory, e.g. /opt, with their volatile (as in, that breaks often) dependencies bundled.

flatpak, snap and AppImage are trying to do this but they have problems:

so, in conclusion, never install RetroArch from official repos in Arch Linux. always download their official releases!