Skip to content

Conversation

john-michaelburke
Copy link
Collaborator

@john-michaelburke john-michaelburke commented Nov 10, 2021

  • Creates a temporary staging folder within ./target/installer which is later wrapped into the .deb.
  • The app is placed in /opt/swift-navigation-console/console, not sure if we should keep it in /opt but this is what FBS was doing.
  • The .desktop file gets placed in /usr/share/applications
  • The icons are stored in /usr/share/icons/hicolor/<respective sizes>

The final installer is moved into ./installers/Linux/ to match the Windows installer final location.

@john-michaelburke john-michaelburke marked this pull request as ready for review November 11, 2021 01:08
@john-michaelburke
Copy link
Collaborator Author

@john-michaelburke john-michaelburke requested a review from a team November 11, 2021 02:59
Copy link
Contributor

@silverjam silverjam left a comment

Choose a reason for hiding this comment

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

Need to add libxcb-xinerama0 as a dependency of the package, on fresh Ubuntu install the following error occurs:

$ /opt/swift-navigation-console/console 
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, webgl, xcb.

Aborted (core dumped)

@samvrlewis
Copy link
Contributor

samvrlewis commented Nov 11, 2021

Worked well for me on Ubuntu 20.04! (but I guess I probably already have all the dependencies installed). Very cool that it's available through the "activities" app launcher.

The desktop icon worked well too, after I followed all these instructions: https://itsfoss.com/ubuntu-desktop-shortcut/ . Didn't realise it was so difficult to make a desktop icon show up in GNOME..

Makefile.toml Outdated
mkdir -p $TMP_DIR/$USR_DIR/$ICONS_DIR
cp -r installers/Linux/hicolor/* $TMP_DIR/$USR_DIR/$ICONS_DIR
fpm -t deb -s dir -v $(cat console_backend/src/version.txt) --debug --verbose -C $TMP_DIR -f -n $APP_DIR_NAME $OPT_DIR $USR_DIR
Copy link
Contributor

@silverjam silverjam Nov 13, 2021

Choose a reason for hiding this comment

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

FWIW I think we can fix the problem with the missing libxcb-xinerama0 package by just adding as a dependency of our package with --depends (see docs here https://fpm.readthedocs.io/en/latest/cli-reference.html) e.g.

Suggested change
fpm -t deb -s dir -v $(cat console_backend/src/version.txt) --debug --verbose -C $TMP_DIR -f -n $APP_DIR_NAME $OPT_DIR $USR_DIR
fpm --depends libxcb-xinerama0 -t deb -s dir -v $(cat console_backend/src/version.txt) --debug --verbose -C $TMP_DIR -f -n $APP_DIR_NAME $OPT_DIR $USR_DIR

This will cause the package to get installed as a dependency of our package.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Works perfectly. I was trying to statically link but this seems much more reasonable.

@john-michaelburke john-michaelburke merged commit fdee18a into main Nov 13, 2021
@john-michaelburke john-michaelburke deleted the john-michaelburke/linux branch November 13, 2021 07:16
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.

3 participants