Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Appimage #221

Open
wants to merge 3 commits into
base: master
Choose a base branch
from
Open

Appimage #221

wants to merge 3 commits into from

Conversation

dafrenchyman
Copy link

@dafrenchyman dafrenchyman commented Dec 30, 2024

Overall Summary:

PR to create an appimage along with a Github action that generates a latest release with the x86_64 based image attached. You can see it's successful creation here: https://github.com/dafrenchyman/Supermodel/releases/tag/latest

NOTE:

  • I may be copying way too many libraries over (or I may also be missing some) to the app-image. I don't know what libraries should be available system-wide and which ones should be packaged in.

Commit Notes:

1.) Preparing for AppImage creation

  • Couldn't get the code to compile, had to add #ifdef around "SDL_HINT_WINDOWS_DPI_AWARENESS" in Src/OSD/SDL/Main.cpp
  • Added a new APP_IMAGE flag to Makefiles/Options.inc
  • If flag is set, new options get set to PLATFORM_LDFLAGS

2.) AppImage addition

  • Added the generated and downloaded files to the .gitignore so they won't accidentally get added
  • AppImage/build_app_image.sh: Bash script that automates the process of building out the app-image. Much easier to script it than have instructions
  • AppImage/Supermodel.png: Couldn't find an official Supermodel logo. Found a Sega Model 3 logo and resized it to AppImage specifications
    • Should be replaced with a real Supermodel logo in the future
  • AppImage/Supermodel.desktop: File required by the app-image
  • AppImage/AppRun: Bash script that is actually run by the app-image

3.) Github action to build the app-image

  • Ran into some issues with running the appimage directly via github.
  • Runs correctly if it's contents are extracted and ran that way instead

- Couldn't get the code to compile, had to add #ifdef around "SDL_HINT_WINDOWS_DPI_AWARENESS" in Src/OSD/SDL/Main.cpp
- Added a new "APP_IMAGE" flag to "Makefiles/Options.inc"
- If flage is set, new options get set to "PLATFORM_LDFLAGS"
- Added the generated and downloaded files to the .gitignore so they won't accidentally get added
- `AppImage/build_app_image.sh`: Bash script that automates the process of building out the app-image. Much easier to script it than have instructions
- `AppImage/Supermodel.png`: Couldn't find an *official* Supermodel logo. Found a Sega Model 3 logo and resized it to AppImage specifications
  - Should be replaced with a *real* Supermodel logo in the future
- `AppImage/Supermodel.desktop`: File required by the app-image
- `AppImage/AppRun`: Bash script that is actually run by the app-image

NOTE: I may be copying way too many libraries over (or I may also be missing some) to the app-image. I don't know what libraries should be available system-wide and which ones should be packaged in.
@@ -2059,7 +2059,9 @@ int main(int argc, char **argv)
}

// Flag as DPI-aware, otherwise the window content might be scaled by some graphics drivers
#ifdef SDL_HINT_WINDOWS_DPI_AWARENESS
Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I had to add this or it wouldn't compile on linux

- Ran into some issues with running the appimage directly via github.
- Runs correctly if it's contents are extracted and ran that way instead
- Did some changes to the AppRun that seems to make it find the libraries better
@dafrenchyman
Copy link
Author

Anyone around?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant