mmatyas / pegasus-metadata-editor

Graphical metadata editor for Pegasus

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Create flatpak distributable, preferrably distribute via FlatHub

scottAnselmo opened this issue · comments

The flatpak on FlatHub for pegasus-frontend has been useful in working around Qt framework related issues. Having a flatpak for the editor would be nice to avoid similar Qt runtime/build issues in addition to making it generally easier to install on various Linux distros via a simple flatpak install [...]

Sounds good! Will try to set things up when I have a little time.

I actually forked the Pegasus repo on Flathub to try and add this to it and do a pull request so you could do flatpak run --command=pegasus-metadata-editor org.pegasus_frontend.Pegasus, but it fails to build.

/run/build/pegasus-metadata-editor/thirdparty/SortFilterProxyModel/sorters/rolesorter.cpp: In member function ‘virtual int qqsfpm::RoleSorter::compare(const QModelIndex&, const QModelIndex&, const qqsfpm::QQmlSortFilterProxyModel&) const’:
/run/build/pegasus-metadata-editor/thirdparty/SortFilterProxyModel/sorters/rolesorter.cpp:61:19: error: no match for ‘operator<’ (operand types are ‘QVariant’ and ‘QVariant’)
   61 |     if (leftValue < rightValue)
      |         ~~~~~~~~~ ^ ~~~~~~~~~~
      |         |           |
      |         QVariant    QVariant

Yes, the SortFilterProxyModel dependency has some old style code, which will fail to build with the latest Qt if deprecated Qt features are disabled. Make sure you don't have any QT_DISABLE_DEPRECATED_BEFORE defines when you build, and make sure that Qt 5 is used.