Bug 212972 - x11/qterminal: Update to 0.7.0
Summary: x11/qterminal: Update to 0.7.0
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Olivier Duchateau
URL:
Keywords: patch-ready
Depends on:
Blocks:
 
Reported: 2016-09-24 19:15 UTC by Olivier Duchateau
Modified: 2016-12-06 16:58 UTC (History)
1 user (show)

See Also:
bugzilla: maintainer-feedback? (jwb)


Attachments
Patch to update x11/qterminal (3.09 KB, patch)
2016-09-24 19:15 UTC, Olivier Duchateau
no flags Details | Diff
Patch to update x11/qterminal (2.05 KB, patch)
2016-11-18 22:30 UTC, Olivier Duchateau
no flags Details | Diff
Translation files of Qterminal (2.96 KB, text/plain)
2016-11-18 22:34 UTC, Olivier Duchateau
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Olivier Duchateau freebsd_committer 2016-09-24 19:15:26 UTC
Created attachment 175137 [details]
Patch to update x11/qterminal

- Update to 0.7.0
- Replace GitHub host by lxqt.org
- Add new patch, which avoids to use Git (it clones the lxqt-l10n repository) in order to fetch traduction files.

Note: the lxqt-l10n will be available very soon in LXQt development repository, and in ports trees for this update.
Comment 1 Jason W. Bacon freebsd_committer 2016-09-24 20:25:16 UTC
This patch breaks the port.  Cmake error below.

FYI, I did my own update this morning.  The port in my WIP collection builds cleanly, but there is an issue with the default geometry that still needs to be resolved:

https://github.com/outpaddling/freebsd-ports-wip

Regards,

   JB

-- Performing Test COMPILER_SUPPORTS_CXX0X - Success
CMake Error at CMakeLists.txt:39 (find_package):
  By not providing "Findlxqt.cmake" in CMAKE_MODULE_PATH this project has
  asked CMake to find a package configuration file provided by "lxqt", but
  CMake did not find one.

  Could not find a package configuration file provided by "lxqt" with any of
  the following names:

    lxqtConfig.cmake
    lxqt-config.cmake

  Add the installation prefix of "lxqt" to CMAKE_PREFIX_PATH or set
  "lxqt_DIR" to a directory containing one of the above files.  If "lxqt"
  provides a separate development package or SDK, be sure it has been
  installed.


-- Configuring incomplete, errors occurred!
See also "/usr/wip/x11/qterminal/work/.build/CMakeFiles/CMakeOutput.log".
*** Error code 1

Stop.
make: stopped in /usr/wip/x11/qterminal
Comment 2 Olivier Duchateau freebsd_committer 2016-09-24 20:56:10 UTC
(In reply to Jason Bacon from comment #1)

Yes, I have just saw, I think we must remove completely lxqt_translate_ts macro because it provides by liblxqt (it contains cmake modules). But we can't add this port because it requires kf5-kwindowsystem (not yet in ports tree).
Comment 3 Jason W. Bacon freebsd_committer 2016-09-24 21:03:58 UTC
I took a brief look at the 0.6.0 CMakeLists.txt this morning and it appears to handle translations without a dependency on lxqt.  Do you think it's worth patching in the old method in order to provide the translations, or should we just provide the port without translations for now?
Comment 4 Jason W. Bacon freebsd_committer 2016-09-28 02:49:43 UTC
The other issue is that the geometry patches from 0.6.0 no longer work.

I think the problem is that they altered the code to use "pos" and "size" variables instead of "geometry" and did not update qterminal.ui to correspond.

This is the evidence from qterminal.ini:

< geometry=@ByteArray()
---
> pos=@Point(347 319)
> size=@Size(821 599)

I don't know much about QT programming and have no spare time right now, so it may take me a while to figure this out.  Unless someone beats me to it...
Comment 5 Olivier Duchateau freebsd_committer 2016-11-18 22:30:12 UTC
Created attachment 177158 [details]
Patch to update x11/qterminal

Update previous patche. It requires some core LXQt components (liblxqt and qtxdg, I'm intend to commit these 2 new ports).

GitHub is still uses as MASTER_SITES.

There's patch [1] which remove minimum size, perhaps it can help you.

[1] https://github.com/lxde/qterminal/commit/d24725f4927b9d572b2bda190032b615fa639bf3
Comment 6 Olivier Duchateau freebsd_committer 2016-11-18 22:34:35 UTC
Created attachment 177159 [details]
Translation files of Qterminal

New port for translation files (x11/qterminal-l10n). It requires the new LXQt framework.

As you are maintainer of Qterminal, I'm waiting your proposition if we add new dependency in x11/qterminal (in order to automatically install translations) or display message for users (through files/pkg-message.in).
Comment 7 Olivier Duchateau freebsd_committer 2016-11-18 22:36:13 UTC
Tested successfully in Poudriere 9.3 i386 and 11-0 amd64.
Comment 8 Jason W. Bacon freebsd_committer 2016-11-18 22:59:09 UTC
I just got back from vacation.  I'll try to address the run time issues in qterminal 0.7.0 shortly so we can get this committed.

Regards,

   JB
Comment 9 Olivier Duchateau freebsd_committer 2016-11-19 14:28:51 UTC
I've just committed, required dependencies in revision r426375.
Comment 10 Jason W. Bacon freebsd_committer 2016-11-30 23:32:04 UTC
Thanks for the patches, they clean up the port nicely.

I have one concern, though:

The lxqt dependency adds of a lot of indirect dependencies that I suspect might only benefit LXQT users.

Qterminal itself is potentially attractive to users of any desktop env, so it would be nice to minimize the dependencies that come with it.

Can you elaborate on what USES=lxqt does for qterminal if it's being used outside the LXQT env?

I wonder if we could separate the LXQT dependency from the qterminal port, and maybe even convince upstream LQXT developers to keep qterminal independent of the LXQT env.
Comment 11 Olivier Duchateau freebsd_committer 2016-12-01 05:54:13 UTC
(In reply to Jason Bacon from comment #10)

USES= lxqt add some environment variables needed for build steps (especially CMAKE_ARGS in case of qterminal).

If you want to remove USES= lxqt (and USE_LXQT= lxqt), you must add -DPULL_TRANSLATIONS:BOOL=OFF (avoid to use git for translation files). And in LIB_DEPENDS line add:

LIB_DEPENDS= libQt5Xdg.so:devel/libqtxdg \
        liblxqt.so:devel/liblxqt

In the next release, liblxqt has been removed, replaced by lxqt-build-tools [1] (contains only cmake modules), so dependencies will be decrease.

[1] https://github.com/lxde/qterminal/commit/382d505a33e24c6a43898dd8db83f0a61cd4c021
Comment 12 Jason W. Bacon freebsd_committer 2016-12-01 13:47:45 UTC

Thanks, the reduction in dependencies is good news and might render my concern moot.

Also, I created an ticket regarding default terminal size:

https://github.com/lxde/qterminal/issues/291

I've tried solving this myself by playing with changes to the ui file and with QT 5 Designer, but I'm green on QT development and have not met success yet. If I don't figure this out soon, we can commit the port as-is for now. I find the problem very bothersome, but it's ultimately only cosmetic.
Comment 13 Jason W. Bacon freebsd_committer 2016-12-05 22:49:30 UTC
Comment on attachment 177159 [details]
Translation files of Qterminal


Let's proceed with this as-is.  We can try to trim down the dependencies in future updates, hopefully with help upstream.

I would also support installing translations as dependencies.
Comment 14 commit-hook freebsd_committer 2016-12-06 16:57:38 UTC
A commit references this bug:

Author: olivierd
Date: Tue Dec  6 16:57:14 UTC 2016
New revision: 427977
URL: https://svnweb.freebsd.org/changeset/ports/427977

Log:
  - Update to 0.7.0

  Add x11/qterminal-l10n (translation files of QTerminal)

  PR:		212972
  Submitted by:	myself (olivierd@)
  Approved by:	Jason Bacon (maintainer)

Changes:
  head/x11/Makefile
  head/x11/qterminal/Makefile
  head/x11/qterminal/distinfo
  head/x11/qterminal/pkg-plist
  head/x11/qterminal-l10n/
  head/x11/qterminal-l10n/Makefile
  head/x11/qterminal-l10n/distinfo
  head/x11/qterminal-l10n/pkg-descr
  head/x11/qterminal-l10n/pkg-plist
Comment 15 Olivier Duchateau freebsd_committer 2016-12-06 16:58:32 UTC
Committed