Page MenuHomeSolus

Initial inclusion of Heroic Games Launcher
ClosedPublic

Authored by infinitymdm on Feb 15 2022, 2:18 AM.
Tags
None
Referenced Files
F10983411: D12883.diff
Sun, Jul 23, 2:14 PM
F10935077: D12883.id31754.diff
Wed, Jul 12, 6:02 PM
F10917389: D12883.id31578.diff
Jul 8 2023, 5:06 PM
F10900030: D12883.id31562.diff
Jul 4 2023, 2:52 AM
F10845235: D12883.id31554.diff
Jun 10 2023, 11:29 PM
F10844598: D12883.id31461.diff
Jun 10 2023, 9:27 PM
F10843603: D12883.id31561.diff
Jun 10 2023, 6:37 PM
F10841638: D12883.id31395.diff
Jun 10 2023, 8:13 AM

Details

Summary

Initial inclusion of Heroic Games Launcher, an open source alternative to Epic Games Launcher and GOG. Fixes T9656

Test Plan
  1. Package Heroic using make with the unstable repository.
  2. Install the resulting package using sudo eopkg it.
  3. Verify that the app appears in the system menu (may require reboot).
  4. Launch the app from the system menu.
  5. Mess around in the UI a bit to make sure things look ok. If possible, log into Epic / GOG account(s), configure a wine/proton version, and install & test a game.
  6. Close Heroic, then launch a terminal and execute heroic.
  7. Verify that the application launches and information is logged to the terminal.
  8. Close the application and verify that the logs stop.
  9. In the terminal, execute legendary.
  10. Verify that usage information appears for legendary.
  11. In the terminal, execute gogdl.
  12. Verify that usage information appears for gogdl.

Diff Detail

Repository
R5491 heroic-games-launcher
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

infinitymdm retitled this revision from Initian inclusion of Heroic Games Launcher to Initial inclusion of Heroic Games Launcher.Feb 15 2022, 4:07 AM

Edited revision to fix a typo in the title. Whoops.

joebonrichie added a subscriber: joebonrichie.

A lot of duplicate builddeps here (I may have missed some), otherwise LGTM.

package.yml
18

Gets pulled in by pango

21

Gets pulled in by pkgconfig(xrandr) and others

22

Gets pulled in by mesalib-devel (pkgconfig gbm)

24

Gets pulled in by xfixes

25

Gets pulled in by xfixes

This revision now requires changes to proceed.Feb 16 2022, 11:30 AM
files/heroic.desktop
11

Add a new line here.

package.yml
45

Add a new line here

Add fixes for package.yml and heroic.desktop

Removes redundant dependencies and adds newlines at EOF as suggested by joebonrichie.

@joebonrichie Out of curiosity, how are you checking whether dependencies are redundant?

Edit: The reason I ask is so that I can improve my process in the future. This is my first time getting involved and I'd love to learn how I can do better.

I can't help but notice that this hasn't been touched since I implemented the requested changes last week. Are you guys waiting on me to do something else?

I can't help but notice that this hasn't been touched since I implemented the requested changes last week. Are you guys waiting on me to do something else?

You can clean more builddeps. This is a boring process you have to check them all.

One of my practices is to use this alias to search about the pkgconfigs: alias epc='$HOME/Repository/common/Scripts/epcsearch.py'.
And then just type epc atk and get the result:
pkgconfig(atk) found in: libatk-devel
Then eopkg info libatk-devel will tell that at-spi2-atk-devel is one of the revdeps. It means that at-spi2-atk-devel which is pkgconfig(atk-bridge-2.0) pull libatk-devel during installation of dependencies.
So here you can remove pkgconfig(atk) from builddeps in the package.yml file.

Removed unnecessary dependencies

Removed the following from package.yml:

  • pkgconfig(atk)
  • pkgconfig(atspi-2)
  • pkgconfig(gbm)

You can clean more builddeps. This is a boring process you have to check them all.

One of my practices is to use this alias to search about the pkgconfigs: alias epc='$HOME/Repository/common/Scripts/epcsearch.py'.
And then just type epc atk and get the result:
pkgconfig(atk) found in: libatk-devel
Then eopkg info libatk-devel will tell that at-spi2-atk-devel is one of the revdeps. It means that at-spi2-atk-devel which is pkgconfig(atk-bridge-2.0) pull libatk-devel during installation of dependencies.
So here you can remove pkgconfig(atk) from builddeps in the package.yml file.

This helped a lot. I think everything is good now. Please correct me if I'm wrong.

This helped a lot. I think everything is good now. Please correct me if I'm wrong.

Yes, the deps are cleaned.

Heroic release v2.2.0 adding GOG support. Will update shortly.

Updated Heroic to v2.2.0 release

infinitymdm edited the test plan for this revision. (Show Details)

Updating to 2.2.1, with several bugfixes.

I'd love to get this included in this week's sync. If there are issues please let me know, and I'll patch them up right away.

Forgive me if I'm incorrect, I'm new to this... but is this not moving forward because T9305 needs to be completed first? If so, I'll get to work on that.

@infinitymdm No, I don't think that is the reason. Your package, or rather the Heroic Games Launcher project, bundles Legendary. Since nothing else in the repository makes use of Legendary, that might be an acceptable situation. If there are ever other tools relying on it, then it would sense to split it into its own package. The reason your diff has not yet been accepted is most likely the simple fact that nobody had time yet to look at your newest changes and test them. FWIW functionality-wise it seems to work fine in its current state (just tested it).

The reason your diff has not yet been accepted is most likely the simple fact that nobody had time yet to look at your newest changes and test them.

Ok. I just didn't know how long the process was supposed to take, and I was concerned by the lack of feedback. I will be patient. Thanks!

I have been using this for a bit now and it seems to work fine. Therefore LGTM. Thank you for being patient!

This revision is now accepted and ready to land.Mar 6 2022, 11:46 PM
This revision was automatically updated to reflect the committed changes.

I have been using this for a bit now and it seems to work fine. Therefore LGTM. Thank you for being patient!

Thanks!

I noticed that the authorship for this is being attributed to a user "marcus". My name is Marcus, so that's half correct, but I am not that user. I assume this won't have any affects on maintainership, so it's not a huge deal, but I'd appreciate it if that could be fixed.

I noticed that the authorship for this is being attributed to a user "marcus". My name is Marcus, so that's half correct, but I am not that user. I assume this won't have any affects on maintainership, so it's not a huge deal, but I'd appreciate it if that could be fixed.

Huh, good catch. I'll try to see if I can fix that. To be honest I have no idea (yet) why the tooling did that (it's not like we manually insert the author there).

Edit: Could it be that you're not registered with your gmail email address here, and that the author name for your local git config is simply "marcus"? In that case I can see how phabricator might've picked the wrong author.

Edit2: Nevermind I can just check the commit. Yup, different email and username simply "Marcus". This makes the email check fail and the username check picks the wrong person (since your username is also different). Unfortunately I haven't yet found a way to correct this.

Huh, good catch. I'll try to see if I can fix that. To be honest I have no idea (yet) why the tooling did that (it's not like we manually insert the author there).

Edit: Could it be that you're not registered with your gmail email address here, and that the author name for your local git config is simply "marcus"? In that case I can see how phabricator might've picked the wrong author.

Edit2: Nevermind I can just check the commit. Yup, different email and username simply "Marcus". This makes the email check fail and the username check picks the wrong person (since your username is also different). Unfortunately I haven't yet found a way to correct this.

Once again, not a huge deal as long as it doesn't change maintainership. For future updates then, I just need to make sure my local git config has the correct user.name and user.email set, correct?

No, maintainership is not affected. This is just an unfortunate little issue with the automatic assignment of authorship.
Yes, if you could set your git email address to the same you have on phabricator (which I presume is the one in your MAINTAINERS.md) then the tools should correctly identify you as author for the next commit.

Yes, if you could set your git email address to the same you have on phabricator (which I presume is the one in your MAINTAINERS.md) then the tools should correctly identify you as author for the next commit.

Well, the good news is that there was a new release of Heroic today, so I'll make sure to fix that before committing. Thanks for your help.

Thanks a lot, and sorry for the additional trouble. Unfortunately it seems like I still can't fix it for the original commit (but of course the Diff and everything relating to it is linked in the commit, so someone checking it out can see the actual author, i.e. you)
I just hope that the other "Marcus" isn't too confused when he notices it ^^