This is an automated email from the git hooks/post-receive script. x2go pushed a change to branch master in repository x2goclient. from 39d3692 X2Go Client will send it's version to the broker when sending client event. new a23fc3d Makefile: Install x-x2go.xml MIME database source file for .x2go file extension. new f8624f7 debian/x2gocient.install:Install x-x2go.xml into bin:pkg x2goclient. new 07900e8 x2goclient.spec: Install x-x2go.xml into bin:pkg and run update-mime-database during postinst. new 3629633 debian{,-qt4,-qt5}: Add a Qt5-based debian(-qt5)/ packaging folder and make it easy to switch between Qt4 and Qt5 build by simply changing the symlink target of debian/ (which is, yes indeed, a symlink, not a directory anymore). new 218d222 debian/changelog: Fix too-long-lines in current stanza. The 5 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Summary of changes: Makefile | 2 + debian | 1 + {debian => debian-common}/changelog | 21 +- {debian => debian-common}/copyright | 90 +-- {debian => debian-common}/source/format | 0 debian-common/upstream/metadata | 8 + debian-common/upstream/signing-key.asc | 210 ++++++ debian-common/watch | 3 + debian-qt4/changelog | 1 + {debian => debian-qt4}/compat | 0 {debian => debian-qt4}/control | 0 debian-qt4/copyright | 1 + {debian => debian-qt4}/menu | 0 {debian => debian-qt4}/rules | 0 debian-qt4/source | 1 + debian-qt4/upstream | 1 + debian-qt4/watch | 1 + {debian => debian-qt4}/x2goclient.dirs | 0 {debian => debian-qt4}/x2goclient.docs | 0 {debian => debian-qt4}/x2goclient.examples | 0 {debian => debian-qt4}/x2goclient.install | 1 + {debian => debian-qt4}/x2goclient.manpages | 0 {debian => debian-qt4}/x2goplugin-provider.install | 0 {debian => debian-qt4}/x2goplugin.install | 0 debian-qt5/changelog | 1 + debian-qt5/control | 57 ++ debian-qt5/copyright | 1 + .../patches/1002_fix-ftbfs-on-non-linux.patch | 749 +++++++++++++++++++++ debian-qt5/patches/README | 3 + debian-qt5/patches/series | 2 + debian-qt5/patches/update_makefile_qt5-build.patch | 18 + debian-qt5/rules | 35 + debian-qt5/source | 1 + debian-qt5/upstream | 1 + debian-qt5/watch | 1 + {debian => debian-qt5}/x2goclient.dirs | 4 +- {debian => debian-qt5}/x2goclient.docs | 0 {debian => debian-qt5}/x2goclient.examples | 0 .../x2goclient.install | 10 +- x2goclient.spec | 3 +- 40 files changed, 1174 insertions(+), 53 deletions(-) create mode 120000 debian rename {debian => debian-common}/changelog (99%) rename {debian => debian-common}/copyright (64%) rename {debian => debian-common}/source/format (100%) create mode 100644 debian-common/upstream/metadata create mode 100644 debian-common/upstream/signing-key.asc create mode 100644 debian-common/watch create mode 120000 debian-qt4/changelog rename {debian => debian-qt4}/compat (100%) rename {debian => debian-qt4}/control (100%) create mode 120000 debian-qt4/copyright rename {debian => debian-qt4}/menu (100%) rename {debian => debian-qt4}/rules (100%) create mode 120000 debian-qt4/source create mode 120000 debian-qt4/upstream create mode 120000 debian-qt4/watch copy {debian => debian-qt4}/x2goclient.dirs (100%) copy {debian => debian-qt4}/x2goclient.docs (100%) copy {debian => debian-qt4}/x2goclient.examples (100%) rename {debian => debian-qt4}/x2goclient.install (90%) rename {debian => debian-qt4}/x2goclient.manpages (100%) rename {debian => debian-qt4}/x2goplugin-provider.install (100%) rename {debian => debian-qt4}/x2goplugin.install (100%) create mode 120000 debian-qt5/changelog create mode 100644 debian-qt5/control create mode 120000 debian-qt5/copyright create mode 100644 debian-qt5/patches/1002_fix-ftbfs-on-non-linux.patch create mode 100644 debian-qt5/patches/README create mode 100644 debian-qt5/patches/series create mode 100644 debian-qt5/patches/update_makefile_qt5-build.patch create mode 100755 debian-qt5/rules create mode 120000 debian-qt5/source create mode 120000 debian-qt5/upstream create mode 120000 debian-qt5/watch copy {debian => debian-qt5}/x2goclient.dirs (78%) rename {debian => debian-qt5}/x2goclient.docs (100%) rename {debian => debian-qt5}/x2goclient.examples (100%) rename debian/x2goclient.dirs => debian-qt5/x2goclient.install (60%) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2goclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2goclient. commit 36296338c29994e9af121dcc7488e11f1e38da3a Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Fri Jan 22 21:51:17 2021 +0100 debian{,-qt4,-qt5}: Add a Qt5-based debian(-qt5)/ packaging folder and make it easy to switch between Qt4 and Qt5 build by simply changing the symlink target of debian/ (which is, yes indeed, a symlink, not a directory anymore). --- debian | 1 + {debian => debian-common}/changelog | 4 + {debian => debian-common}/copyright | 90 +-- {debian => debian-common}/source/format | 0 debian-common/upstream/metadata | 8 + debian-common/upstream/signing-key.asc | 210 ++++++ debian-common/watch | 3 + debian-qt4/changelog | 1 + {debian => debian-qt4}/compat | 0 {debian => debian-qt4}/control | 0 debian-qt4/copyright | 1 + {debian => debian-qt4}/menu | 0 {debian => debian-qt4}/rules | 0 debian-qt4/source | 1 + debian-qt4/upstream | 1 + debian-qt4/watch | 1 + {debian => debian-qt4}/x2goclient.dirs | 0 {debian => debian-qt4}/x2goclient.docs | 0 {debian => debian-qt4}/x2goclient.examples | 0 {debian => debian-qt4}/x2goclient.install | 0 {debian => debian-qt4}/x2goclient.manpages | 0 {debian => debian-qt4}/x2goplugin-provider.install | 0 {debian => debian-qt4}/x2goplugin.install | 0 debian-qt5/changelog | 1 + debian-qt5/control | 57 ++ debian-qt5/copyright | 1 + .../patches/1002_fix-ftbfs-on-non-linux.patch | 749 +++++++++++++++++++++ debian-qt5/patches/README | 3 + debian-qt5/patches/series | 2 + debian-qt5/patches/update_makefile_qt5-build.patch | 18 + debian-qt5/rules | 35 + debian-qt5/source | 1 + debian-qt5/upstream | 1 + debian-qt5/watch | 1 + {debian => debian-qt5}/x2goclient.dirs | 4 +- {debian => debian-qt5}/x2goclient.docs | 0 {debian => debian-qt5}/x2goclient.examples | 0 .../x2goclient.install | 10 +- 38 files changed, 1155 insertions(+), 49 deletions(-) diff --git a/debian b/debian new file mode 120000 index 0000000..eb6b140 --- /dev/null +++ b/debian @@ -0,0 +1 @@ +debian-qt4 \ No newline at end of file diff --git a/debian/changelog b/debian-common/changelog similarity index 99% rename from debian/changelog rename to debian-common/changelog index 61b8348..b13a26c 100644 --- a/debian/changelog +++ b/debian-common/changelog @@ -44,6 +44,10 @@ x2goclient (4.1.2.3-0x2go1) UNRELEASED; urgency=medium extension. * debian/x2gocient.install: + Install x-x2go.xml into bin:pkg x2goclient. + * debian/{,-qt4,-qt5}: + + Add a Qt5-based debian(-qt5)/ packaging folder and make it easy to switch + between Qt4 and Qt5 build by simply changing the symlink target of + debian/ (which is, yes indeed, a symlink, not a directory anymore). * x2goclient.spec: + Install x-x2go.xml into bin:pkg and run update-mime-database during postinst. diff --git a/debian/copyright b/debian-common/copyright similarity index 64% rename from debian/copyright rename to debian-common/copyright index a587d06..104e6fb 100644 --- a/debian/copyright +++ b/debian-common/copyright @@ -1,12 +1,24 @@ Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: x2goclient -Upstream-Contact: Oleksandr Shneyder <oleksandr.shneyder@obviously-nice.de> +Upstream-Contact: Mihai Moldovan <ionic@ionic.de> Source: https://wiki.x2go.org Files: * -Copyright: 2005-2020, Oleksandr Shneyder <oleksandr.shneyder@obviously-nice.de> - 2005-2020, Heinz-Markus Graesing <heinz-m.graesing@obviously-nice.de> - 2005-2020, obviously nice - https://www.obviously-nice.de +Copyright: 2005-2017, Oleksandr Shneyder <oleksandr.shneyder@obviously-nice.de> + 2005-2017, Heinz-Markus Graesing <heinz-m.graesing@obviously-nice.de> + 2005-2017, obviously nice - http://www.obviouslynice.de +License: GPL-2+~OpenSSL + +Files: Makefile.docupload +Copyright: 2010-2016, Mike Gabriel <mike.gabriel@das-netzwerkteam.de> +License: GPL-3 + +Files: debian/* +Copyright: 2007, Oleksandr Shneyder <oleksandr.shneyder@obviously-nice.de> + 2011-2012, Reinhard Tartler <siretart@tauware.de> + 2011-2018, Mike Gabriel <sunweaver@debian.org> +License: GPL-2+ or GPL-2+~OpenSSL + License: GPL-2+ This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public @@ -28,46 +40,8 @@ License: GPL-2+ On Debian systems, the full text of the GNU General Public License version 2 can be found in the file `/usr/share/common-licenses/GPL-2'. -Comment: - Quoting from README.OpenSSL-Exception... - . - * In addition, as a special exception, the copyright holders give - * permission to link the code of portions of this program with the - * OpenSSL library under certain conditions as described in each - * individual source file, and distribute linked combinations - * including the two. - * You must obey the GNU General Public License in all respects - * for all of the code used other than OpenSSL. If you modify - * file(s) with this exception, you may extend this exception to your - * version of the file(s), but you are not obligated to do so. If you - * do not wish to do so, delete this exception statement from your - * version. If you delete this exception statement from all source - * files in the program, then also delete it here. -Files: Makefile.docupload -Copyright: 2010-2020, Mike Gabriel <mike.gabriel@das-netzwerkteam.de> -License: GPL-3 - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, version 3 of the License. - . - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - . - You should have received a copy of the GNU General Public License - along with this program. If not, see <https://www.gnu.org/licenses/>. - . - On Debian systems, the full text of the GNU General Public - License version 3 can be found in the file - `/usr/share/common-licenses/GPL-3'. - -Files: debian/* -Copyright: 2007-2020, Oleksandr Shneyder <oleksandr.shneyder@obviously-nice.de> - 2011-2020, Reinhard Tartler <siretart@tauware.de> - 2011-2020, Mike Gabriel <sunweaver@debian.org> -License: GPL-2+ +License: GPL-2+~OpenSSL This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either @@ -88,3 +62,33 @@ License: GPL-2+ On Debian systems, the full text of the GNU General Public License version 2 can be found in the file `/usr/share/common-licenses/GPL-2'. + . + In addition, as a special exception, the copyright holders give + permission to link the code of portions of this program with the + OpenSSL library under certain conditions as described in each + individual source file, and distribute linked combinations + including the two. + You must obey the GNU General Public License in all respects + for all of the code used other than OpenSSL. If you modify + file(s) with this exception, you may extend this exception to your + version of the file(s), but you are not obligated to do so. If you + do not wish to do so, delete this exception statement from your + version. If you delete this exception statement from all source + files in the program, then also delete it here. + +License: GPL-3 + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, version 3 of the License. + . + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + . + You should have received a copy of the GNU General Public License + along with this program. If not, see <http://www.gnu.org/licenses/>. + . + On Debian systems, the full text of the GNU General Public + License version 3 can be found in the file + `/usr/share/common-licenses/GPL-3'. diff --git a/debian/source/format b/debian-common/source/format similarity index 100% rename from debian/source/format rename to debian-common/source/format diff --git a/debian-common/upstream/metadata b/debian-common/upstream/metadata new file mode 100644 index 0000000..5702ec5 --- /dev/null +++ b/debian-common/upstream/metadata @@ -0,0 +1,8 @@ +Name: X2Go Client +Bug-Database: https://bugs.x2go.org/src:x2goclient +Bug-Submit: https://bugs.x2go.org/Reporting.html +Contact: x2go-dev@lists.x2go.org +Donation: https://wiki.x2go.org/doku.php/doc:sponsors +Repository: git://code.x2go.org/x2goclient.git +Repository-Browse: https://code.x2go.org/gitweb?p=x2goclient.git;a=summary +Security-Contact: security@lists.x2go.org diff --git a/debian-common/upstream/signing-key.asc b/debian-common/upstream/signing-key.asc new file mode 100644 index 0000000..0e6e7d6 --- /dev/null +++ b/debian-common/upstream/signing-key.asc @@ -0,0 +1,210 @@ +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1 + +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 +ZRs60sdFXk+ppSLNlHSlhfuJ3DW3sv8/07s01FFbDqt0fGj/GhoYTbrv5KGT8/bp +rdPPYTlmRP4m9JHWTNtTUtBOdvbJ3EvQOgVcyJW+eC0a93yms6gZ1pEoxTlu45yb +N+QfM+ZdyRpgtGqboIB1GLM+gw7CHZqqFZJY4LxjIftT0dBP2B7Yn5fPKVfi+Ea0 +i6WCTURMVc7HKdr/7yoFQkahen3CVsM9qJ5HalM0d1UwNOKSedbTOLc6M+xUZyxt +vgfQODwiPEUay3GuL7NW0GuWlHmWVLyPpyfhu65ZKKurn6Q+Z8yJU/f9vEYvt7Tx +kfBXr8WTT7jgvzZJT1+b09I/XiV5RcGvOfXmiJcwtCtNaWtlIEdhYnJpZWwgPG1p +a2UuZ2FicmllbEBtb29ud2VhdmVycy5uZXQ+iQI9BBMBCAAnBQJR/1OyAhsDBQkK +wiSEBQsJCAcDBRUKCQgLBRYCAwEAAh4BAheAAAoJEJr0azAldxsxESsP/2oECQab +zFWAGocjiaOFPmBoJfUm7s3dkNiGTVBAW4P8h/Y+Y70GsMQ2bJXArs/XRpHvono/ +GRyo6FSsqcK67LRI1lw5czIBV5ZPpoeaoLMRqd69nSut5/7+DbyfYE2S9ywmcGsJ +L7uqFEMiMw/v+iiiBTnpwNQwm9pwQKm3Tj2AqacaYteuVu5/vAkD9bJGkDbYVQ5O +v9LXIOUZrxlNOrTUDC4Dq5FbKbV4PKm8q1kWun5V2psQc8biKyLoCumcRpm1Pnxv +LhNzZ67Tje4kYznMhGDKQ+fts+vtuDH2pluiiqqk0lw7qOOuelTzb44SKKgvarrc +7KWSJs4Jzcbi5JaJ1uIDXhJJtAtGItGmoaRUDPk8m25lDyPXE44M8bkzeriPt6pc +8+jFcz96X7BTaRJTkaZKLfQdMlMnmRp4IG+J08aVEsXUfjTMq+RaZOAWYiHaRhB7 +N7Pq/EMGS/RDvT7xPvzBb9ghj3N883IyKC657MBhXT/l6Xxc5PA+yabfCPGKChr+ +ZBp6sW0mt6FudBhvj7lR1wNYAgqxJ+lnyMME47kYwwo60FSCadBthwy+fVqotw9w +6zoD1ztj1z9xwYKnMhXY2WiOvQIKng/RmfqS40or8fNFSMG448J34YqTpSJQ9tN6 +wT2hALTcMNayV09AYm+sWiizrT1eWh7xLJ2ttCVNaWtlIEdhYnJpZWwgPG1pa2Uu +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 +=+XWS +-----END PGP PUBLIC KEY BLOCK----- +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1 + +mQENBE2tuy4BCADGBBdB0ODen5YK/QkIrngZygroJg2SA/THvQHQ3COU0YZM3WGn +rgj1noGygBDPbf5CeUM6oFW1xeW40LAxl5RNN2qFFQQFoccZ/4RwhVcAUQBxptbJ +L1wk/A+U49eL5QnoqSSCp+26fLJNizFgXL6r78oVbG/KIC4dZyNo9K5aA5xNxz1w +eW5HMXJI06QJjqF4NRAXYwqPnR1iiVsCzQUTKx8U/KCIkbay94Bvgk6vCLi62Cw5 +Z407c8NOmXw8BqrNVqgNGwkylLP3ly+ccL0GNNBLKzt7S29Oe4pbl6kfFwd2fcPk +yXAkMXnNcrpsna6M93pVNSWy0H0DEXlHvr5tABEBAAG0K1gyZ28gR2l0IEFkbWlu +aXN0cmF0b3IgPGdpdC1hZG1pbkB4MmdvLm9yZz6JATgEEwECACIFAk2tuy4CGwMG +CwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEPSnZ4ycawsrUucIAKsISRirU6qb +LvmaAsSHuzJVknEning3FYNsoCGN8BzERwLEJXfzibu9i6ULI5guYwjR7/P9QRuo +al3FN85+cOYwENOYXYqdEQTcrszLFCattQw2IVg5zfq9P6BmjtXWceMkcMreH03v +i3UwY/D/14ORWvPX/JVis/ARlUPo5jN97EEJbWSpkvHwgeakzEfptIqpDW/j1wNe +ENpB94jgHM9br0bOGH1VXseOqN141lGgoqH1IQdc/LqDls6VXZD2WjpjFQFWWEE5 +J/YohX5eF5VGRT+uuTeFr87/lQBZHq+F3KlA5aCwBOcu91J8RVPJfrEsoPWgX6Df +Fr7XVCHZAhG5AQ0ETa27LgEIAMAX7bqT3jW1Ffr4Ndh94cYopDGUuyStwiFBMW7L +wWEc6Go9D3T/0e3vLfktDOgstckHNlz5Wv+Q4j0gpTcseqC3bn0VGPHQyNARfYvL +guabqHeFxxFHYHo9RawHEfTYWFRw+h/2INtihOyNuzJVltrpPmkiTTQ9p5lKH+QR +a2zJSPZjQA+CSg+IpLfC9YEDiU8s4BQfPPI+2TptO8iCqDpIEXETGdIXdwp9PzKP +pBSK1rBiPnCF+LyqYY6JInhQqvT4SCdYg6ukDMjmYEJ4ID7yr3J2meb8X0xKWfwn +cGee8P4NQCOlKg7m3j88E/NDSh4waA2uech5x6u7tfiyJ40AEQEAAYkBHwQYAQIA +CQUCTa27LgIbDAAKCRD0p2eMnGsLKyFfCADEy04ycshk1WSwNMrL7nXvDDLpe63f +tOcODEDDOxoQ283U9yHV4/1p3CYM5YN7y5kHvvTD56/6ULs89iZhTZe1TIm3FQxQ +MYvuI2Auy4AVbEFCKWTg6+PgWeLvLoGsQ0edTb9OwyiaawVlOwGxjRVoU7E0V8xs +h9rIY/11F6w6kAEBYxEGqoZthefhODjn7Ffxs4fZYPevw/w4/rwa6DwyQNuybCac +IiVGUmcLGBYa0C+qiwLY3LFekfmEmFIwaeADI/crDKJOL1Qss/TkXERtZ73gJRfD +EKS4kfioXKwMYFGuN5rfcdqODk0nHDSWu9833dlH2+c3fcSIWVIMXEPG +=b3FB +-----END PGP PUBLIC KEY BLOCK----- diff --git a/debian-common/watch b/debian-common/watch new file mode 100644 index 0000000..91d6bc7 --- /dev/null +++ b/debian-common/watch @@ -0,0 +1,3 @@ +version=3 +opts=pgpsigurlmangle=s/$/.asc/ \ +https://code.x2go.org/releases/source/x2goclient/x2goclient-(\d+\.\d+\.\d+\.\d+)\.tar\.gz diff --git a/debian-qt4/changelog b/debian-qt4/changelog new file mode 120000 index 0000000..ddd751e --- /dev/null +++ b/debian-qt4/changelog @@ -0,0 +1 @@ +../debian-common/changelog \ No newline at end of file diff --git a/debian/compat b/debian-qt4/compat similarity index 100% rename from debian/compat rename to debian-qt4/compat diff --git a/debian/control b/debian-qt4/control similarity index 100% rename from debian/control rename to debian-qt4/control diff --git a/debian-qt4/copyright b/debian-qt4/copyright new file mode 120000 index 0000000..613ba8d --- /dev/null +++ b/debian-qt4/copyright @@ -0,0 +1 @@ +../debian-common/copyright \ No newline at end of file diff --git a/debian/menu b/debian-qt4/menu similarity index 100% rename from debian/menu rename to debian-qt4/menu diff --git a/debian/rules b/debian-qt4/rules similarity index 100% rename from debian/rules rename to debian-qt4/rules diff --git a/debian-qt4/source b/debian-qt4/source new file mode 120000 index 0000000..6840b09 --- /dev/null +++ b/debian-qt4/source @@ -0,0 +1 @@ +../debian-common/source \ No newline at end of file diff --git a/debian-qt4/upstream b/debian-qt4/upstream new file mode 120000 index 0000000..5f6c874 --- /dev/null +++ b/debian-qt4/upstream @@ -0,0 +1 @@ +../debian-common/upstream \ No newline at end of file diff --git a/debian-qt4/watch b/debian-qt4/watch new file mode 120000 index 0000000..046c942 --- /dev/null +++ b/debian-qt4/watch @@ -0,0 +1 @@ +../debian-common/watch \ No newline at end of file diff --git a/debian/x2goclient.dirs b/debian-qt4/x2goclient.dirs similarity index 100% copy from debian/x2goclient.dirs copy to debian-qt4/x2goclient.dirs diff --git a/debian/x2goclient.docs b/debian-qt4/x2goclient.docs similarity index 100% copy from debian/x2goclient.docs copy to debian-qt4/x2goclient.docs diff --git a/debian/x2goclient.examples b/debian-qt4/x2goclient.examples similarity index 100% copy from debian/x2goclient.examples copy to debian-qt4/x2goclient.examples diff --git a/debian/x2goclient.install b/debian-qt4/x2goclient.install similarity index 100% rename from debian/x2goclient.install rename to debian-qt4/x2goclient.install diff --git a/debian/x2goclient.manpages b/debian-qt4/x2goclient.manpages similarity index 100% rename from debian/x2goclient.manpages rename to debian-qt4/x2goclient.manpages diff --git a/debian/x2goplugin-provider.install b/debian-qt4/x2goplugin-provider.install similarity index 100% rename from debian/x2goplugin-provider.install rename to debian-qt4/x2goplugin-provider.install diff --git a/debian/x2goplugin.install b/debian-qt4/x2goplugin.install similarity index 100% rename from debian/x2goplugin.install rename to debian-qt4/x2goplugin.install diff --git a/debian-qt5/changelog b/debian-qt5/changelog new file mode 120000 index 0000000..ddd751e --- /dev/null +++ b/debian-qt5/changelog @@ -0,0 +1 @@ +../debian-common/changelog \ No newline at end of file diff --git a/debian-qt5/control b/debian-qt5/control new file mode 100644 index 0000000..7023fb1 --- /dev/null +++ b/debian-qt5/control @@ -0,0 +1,57 @@ +Source: x2goclient +Section: x11 +Priority: optional +Maintainer: X2Go Developers <x2go-dev@lists.x2go.org> +Uploaders: + Oleksandr Shneyder <oleksandr.shneyder@obviously-nice.de>, + Mike Gabriel <mike.gabriel@das-netzwerkteam.de>, + Mihai Moldovan <ionic@ionic.de>, +Build-Depends: + apache2-dev, + debhelper-compat (= 12), + dpkg-dev (>= 1.16.1.1), + libldap2-dev, + libssh-dev (>= 0.5.4-2~), + libcups2-dev, + libqt5svg5-dev, + libqt5x11extras5-dev, + libx11-dev, + libxpm-dev, + man2html-base | man2html, + pkg-config, + qtbase5-dev, + qttools5-dev-tools, + quilt, +Standards-Version: 4.5.1 +Homepage: https://wiki.x2go.org/ +Vcs-Git: https://salsa.debian.org/debian-remote-team/x2goclient.git +Vcs-Browser: https://salsa.debian.org/debian-remote-team/x2goclient/ + +Package: x2goclient +Architecture: any +Depends: + ${shlibs:Depends}, + ${misc:Depends}, + openssh-client, + nxproxy, +Recommends: + openssh-server, + rdesktop | freerdp-x11, +Suggests: + pinentry-x2go, +Conflicts: + x2goclient-gtk, +Replaces: + x2goclient-gtk, +Description: X2Go Client application (Qt5) + X2Go is a serverbased computing environment with + - session resuming + - low bandwidth support + - session brokerage support + - client-side mass storage mounting support + - client-side printing support + - audio support + - authentication by smartcard and USB stick + . + X2Go Client is a graphical client (Qt5) for the X2Go system. + You can use it to connect to running sessions and start new sessions. diff --git a/debian-qt5/copyright b/debian-qt5/copyright new file mode 120000 index 0000000..613ba8d --- /dev/null +++ b/debian-qt5/copyright @@ -0,0 +1 @@ +../debian-common/copyright \ No newline at end of file diff --git a/debian-qt5/patches/1002_fix-ftbfs-on-non-linux.patch b/debian-qt5/patches/1002_fix-ftbfs-on-non-linux.patch new file mode 100644 index 0000000..efa55af --- /dev/null +++ b/debian-qt5/patches/1002_fix-ftbfs-on-non-linux.patch @@ -0,0 +1,749 @@ +Description: Successfully built on Debian GNU/kFreeBSD and Debian GNU/Hurd +Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> + +--- a/src/clicklineedit.cpp ++++ b/src/clicklineedit.cpp +@@ -31,7 +31,7 @@ + { + } + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + void ClickLineEdit::mouseReleaseEvent ( QMouseEvent * event ) + { + QLineEdit::mouseReleaseEvent(event); +--- a/src/clicklineedit.h ++++ b/src/clicklineedit.h +@@ -31,7 +31,7 @@ + ~ClickLineEdit(); + signals: + void clicked(); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + protected: + virtual void mouseReleaseEvent ( QMouseEvent * event ); + /* virtual void focusInEvent ( QFocusEvent * event ); +--- a/src/editconnectiondialog.cpp ++++ b/src/editconnectiondialog.cpp +@@ -85,7 +85,7 @@ + connect ( sessSet,SIGNAL ( nameChanged ( const QString & ) ),this, + SLOT ( slot_changeCaption ( const QString& ) ) ); + connect ( this,SIGNAL ( accepted() ),this,SLOT ( slot_accepted() ) ); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + connect (sessSet, SIGNAL(directRDP(bool,bool)), this, SLOT(slot_directRDP(bool,bool))); + + connect (sessSet, +@@ -112,7 +112,7 @@ + setContentsMargins ( 3,3,3,3 ); + fr->setCurrentIndex ( ind ); + slot_changeCaption(sessSet->sessionName()); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + sessSet->slot_rdpDirectClicked(); + #endif + } +@@ -171,7 +171,7 @@ + } + } + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + void EditConnectionDialog::slot_directRDP(bool direct, bool isXDMCP) + { + fr->setTabEnabled(1,!direct); +--- a/src/editconnectiondialog.h ++++ b/src/editconnectiondialog.h +@@ -64,7 +64,7 @@ + void slot_changeCaption ( const QString& newName ); + void slot_accepted(); + void slot_default(); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + void slot_directRDP(bool direct, bool isXDMCP); + #endif + }; +--- a/src/ongetpass.cpp ++++ b/src/ongetpass.cpp +@@ -52,7 +52,7 @@ + QApplication app ( argc,argv ); + + #ifndef Q_WS_HILDON +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + #if QT_VERSION < 0x050000 + app.setStyle ( new QPlastiqueStyle() ); + #else +--- a/src/onmainwindow.cpp ++++ b/src/onmainwindow.cpp +@@ -62,7 +62,7 @@ + } + #endif + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + image=shape=0; + #endif + x2goInfof(1) << tr("Starting X2Go Client %1...").arg (QString (VERSION)); +@@ -152,7 +152,7 @@ + systemDisablePA=false; + #endif /* defined (Q_OS_DARWIN) || defined (Q_OS_WIN) */ + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + directRDP = false; + #endif /* defined (Q_OS_LINUX) */ + +@@ -235,7 +235,7 @@ + addToAppNames ( "OFFICE",tr ( "OpenOffice.org" ) ); + addToAppNames ( "TERMINAL",tr ( "Terminal" ) ); + +-#ifndef Q_OS_LINUX ++#if defined(Q_OS_DARWIN) || defined(Q_OS_WIN) + #if QT_VERSION < 0x050000 + widgetExtraStyle = new QPlastiqueStyle (); + #else +@@ -545,7 +545,7 @@ + + + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + if (thinMode) + { + QTimer *timer = new QTimer(this); +@@ -680,7 +680,7 @@ + { + if (!isHidden()) + hide(); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + XSync(QX11Info::display(),false); + #endif + } +@@ -1435,7 +1435,7 @@ + QVariant ( isMaximized() ) ); + st.setting()->sync(); + x2goDebug<<"Saved settings."; +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + if (image) + XFreePixmap(QX11Info::display(),image); + if (shape) +@@ -2812,7 +2812,7 @@ + autologin=st->setting()->value ( + sid+"/autologin", + ( QVariant ) false ).toBool(); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + if(command =="XDMCP" && st->setting()->value ( + sid+"/directxdmcp", + ( QVariant ) false ).toBool()) +@@ -3423,7 +3423,7 @@ + if (config.brokerNoAuth && brokerNoauthWithSessionUsername) { + config.brokerUser = login->text(); + } +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + X2goSettings* st=new X2goSettings(config.iniFile, QSettings::IniFormat); + QString sid=sessionExplorer->getLastSession()->id(); + QString cmd=st->setting()->value ( sid+"/command", +@@ -3485,7 +3485,7 @@ + sshConnection->executeCommand ( "x2gogetservers", this, SLOT ( slotGetServers ( bool, QString,int ) )); + } + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + void ONMainWindow::startDirectRDP() + { + if (!(sessionExplorer->getLastSession())) { +@@ -3740,7 +3740,7 @@ + { + connectionType=conType; + setEnabled ( false ); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + directRDP=false; + #endif + QString passwd; +@@ -3810,7 +3810,7 @@ + ( QVariant ) false ).toBool(); + krbDelegation=st->setting()->value ( sid+"/krbdelegation", + ( QVariant ) false ).toBool(); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + directRDP=(st->setting()->value ( sid+"/directrdp", + ( QVariant ) false ).toBool() && cmd == "RDP"); + +@@ -5236,7 +5236,7 @@ + void ONMainWindow::slotSuspendSess() + { + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + if (directRDP) + { + nxproxy->terminate(); +@@ -5314,7 +5314,7 @@ + { + sendEventToBroker(SUSPENDING); + } +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + if (directRDP) + { + nxproxy->terminate(); +@@ -5338,7 +5338,7 @@ + + void ONMainWindow::slotTermSessFromSt() + { +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + if (directRDP) + { + +@@ -5424,7 +5424,7 @@ + void ONMainWindow::slotTermSess() + { + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + if (directRDP) + { + nxproxy->terminate(); +@@ -5844,7 +5844,7 @@ + sshConnection->executeCommand (scmd); + + bool sysPulse=false; +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + loadPulseModuleNativeProtocol(); + QFile file ( "/etc/default/pulseaudio" ); + if ( file.open ( QIODevice::ReadOnly | +@@ -6511,7 +6511,7 @@ + + void ONMainWindow::slotProxyError ( QProcess::ProcessError err ) + { +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + if(err==QProcess::FailedToStart && directRDP) + { + QString main_text = tr("Failed to start RDP or XDMCP client"); +@@ -6614,7 +6614,7 @@ + } + } + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + if (directRDP) + nxproxy=0; + #endif +@@ -6627,7 +6627,7 @@ + nxproxy=0l; + proxyWinId=0; + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + if (directRDP) + { + if (closeDisconnect) +@@ -9937,7 +9937,7 @@ + return false; + } + +-#ifndef Q_OS_LINUX ++#if defined(Q_OS_WIN) || defined(Q_OS_DARWIN) + void ONMainWindow::setWidgetStyle ( QWidget* widget ) + { + widget->setStyle ( widgetExtraStyle ); +@@ -10334,7 +10334,7 @@ + ( QVariant ) + "UTF-8" ).toString(); + #endif +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + QString fromCode=st.setting()->value ( + sid+"/iconvfrom", + ( QVariant ) tr ( +@@ -11544,7 +11544,7 @@ + else + pixmap=*(sessionExplorer->getLastSession()->sessIcon()); + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + + XStoreName(QX11Info::display(), proxyWinId, title.toLocal8Bit().data()); + +@@ -11591,7 +11591,7 @@ + void ONMainWindow::slotSetProxyWinFullscreen() + { + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + + QRect geom=QApplication::desktop()->screenGeometry(localDisplayNumber-1); + Atom atom = XInternAtom ( QX11Info::display(), "_NET_WM_STATE_FULLSCREEN", True ); +@@ -11647,7 +11647,7 @@ + ", h: "+ QString("%1").arg(geom.height()); + x2goDebug<<"Resizing proxy window to fit display: " + QString("%1").arg(disp) + " " + geoStr; + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + XSync(QX11Info::display(),false); + XMoveResizeWindow(QX11Info::display(), proxyWinId, geom.x(), geom.y(), 800, 600); + XMapWindow(QX11Info::display(), proxyWinId); +@@ -11667,7 +11667,7 @@ + return QRect(); + return proxyRect; + #endif +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + QRect proxyRect; + Window root; + int x,y; +@@ -11754,7 +11754,7 @@ + xinSizeInc=1; + else + xinSizeInc=-1; +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + lastDisplayGeometry.setWidth(lastDisplayGeometry.width()+xinSizeInc); + XSync(QX11Info::display(),false); + XResizeWindow(QX11Info::display(), proxyWinId, +@@ -11893,7 +11893,7 @@ + setStatStatus(); + act_embedContol->setText ( tr ( "Attach X2Go window" ) ); + act_embedContol->setIcon ( QIcon ( iconsPath("/32x32/attach.png" ) )); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + //if QX11EmbedContainer cannot embed window, check if window exists + //and reconnect + if ( !embedControlChanged ) +@@ -12301,7 +12301,7 @@ + + void ONMainWindow::slotChangeKbdLayout(const QString& layout) + { +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + QStringList args; + args<<"-layout"<<layout; + +@@ -12378,7 +12378,7 @@ + pass->setEchoMode ( QLineEdit::Password ); + pass->setFocus(); + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + connect ( login,SIGNAL ( clicked() ),this, + SLOT ( slotActivateWindow() ) ); + connect ( pass,SIGNAL ( clicked() ),this, +@@ -13354,7 +13354,7 @@ + dr.rmdir ( path ); + } + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + long ONMainWindow::X11FindWindow ( QString text, long rootWin ) + { + Window wParent; +@@ -13395,7 +13395,7 @@ + long ONMainWindow::findWindow ( QString text ) + { + x2goDebug<<"Searching window with title: " + text; +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + return X11FindWindow ( text ); + #endif + #ifdef Q_OS_WIN +--- a/src/onmainwindow.h ++++ b/src/onmainwindow.h +@@ -797,7 +797,7 @@ + bool newSession; + bool runStartApp; + bool ldapOnly; +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + bool directRDP; + #endif + +@@ -910,7 +910,7 @@ + QRect dispGeometry; + #endif + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + long image, shape; + #endif + +@@ -1196,7 +1196,7 @@ + + private: + void resizeProxyWinOnDisplay(int display); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + long X11FindWindow ( QString text, long rootWin=0 ); + #endif + void addToAppNames ( QString intName, QString transName ); +@@ -1222,7 +1222,7 @@ + void printSshDError_noAuthorizedKeysFile(); + void loadPulseModuleNativeProtocol(); + void initEmbedToolBar(); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + void startDirectRDP(); + #endif + void filterDesktops ( const QString& filter, +--- a/src/onmainwindow_privat.h ++++ b/src/onmainwindow_privat.h +@@ -87,11 +87,9 @@ + #include "contest.h" + + #if !defined Q_OS_WIN +-#include <sys/mount.h> +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + #include <X11/Xatom.h> + #include <X11/xpm.h> +-#include <linux/fs.h> + #endif // Q_OS_LINUX + #endif // !defined Q_OS_WIN + +@@ -153,7 +151,7 @@ + #include <QHostInfo> + #endif + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + #if QT_VERSION < 0x050000 + #include <QX11Info> + #else +--- a/src/pulsemanager.cpp ++++ b/src/pulsemanager.cpp +@@ -135,7 +135,7 @@ + #elif defined (Q_OS_WIN) + server_working_dir_ = QString (app_dir_ + "/pulse/"); + server_binary_ = QString (app_dir_ + "/pulse/pulseaudio.exe"); +-#elif defined (Q_OS_LINUX) ++#elif defined (Q_OS_LINUX) || defined (Q_OS_FREEBSD_KERNEL) || defined (Q_OS_HURD) + std::ssize_t path_len = pathconf (".", _PC_PATH_MAX); + + if (-1 == path_len) { +@@ -206,7 +206,7 @@ + start_osx (); + #elif defined (Q_OS_WIN) + start_win (); +-#elif defined (Q_OS_LINUX) ++#elif defined (Q_OS_LINUX) || defined (Q_OS_FREEBSD_KERNEL) || defined (Q_OS_HURD) + start_linux (); + #endif // defined (Q_OS_DARWIN) + } +--- a/src/sessionbutton.cpp ++++ b/src/sessionbutton.cpp +@@ -484,7 +484,7 @@ + } + else if ( command =="RDP" ) + { +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + if (st->setting()->value ( sid+"/directrdp", + ( QVariant ) false ).toBool()) + directRDP=true; +@@ -495,7 +495,7 @@ + } + else if ( command =="XDMCP" ) + { +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + if (st->setting()->value ( sid+"/directxdmcp", + ( QVariant ) false ).toBool()) { + directRDP=true; +--- a/src/sessionwidget.cpp ++++ b/src/sessionwidget.cpp +@@ -95,7 +95,7 @@ + sshPort->setMinimum ( 0 ); + sshPort->setMaximum ( 65535 ); + sshPort->setToolTip (ssh_port_tooltip_text); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + rdpPort=new QSpinBox ( sgb ); + rdpPort->setValue ( mainWindow->getDefaultSshPort().toInt() ); + rdpPort->setMinimum ( 0 ); +@@ -127,7 +127,7 @@ + elLay->addWidget ( server ); + elLay->addWidget ( uname ); + elLay->addWidget ( sshPort ); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + elLay->addWidget ( rdpPort ); + #endif + suLay->addLayout ( slLay ); +@@ -254,7 +254,7 @@ + sessLay->addSpacing ( 15 ); + sessLay->addWidget ( sgb ); + sessLay->addWidget ( deskSess ); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + cbDirectRDP=new QCheckBox(tr("Direct RDP connection"), deskSess); + cmdLay->addWidget(cbDirectRDP,2,0,1,6); + cbDirectRDP->hide(); +@@ -292,7 +292,7 @@ + connect (server, SIGNAL(textChanged(const QString&)),this, SLOT(slot_emitSettings())); + connect (uname, SIGNAL(textChanged(const QString&)),this, SLOT(slot_emitSettings())); + connect (cbKrbLogin, SIGNAL(clicked(bool)), this, SLOT(slot_krbChecked())); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + connect (rdpPort, SIGNAL(valueChanged(int)),this, SLOT(slot_emitSettings())); + #endif + +@@ -376,7 +376,7 @@ + } + + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + void SessionWidget::slot_rdpDirectClicked() + { + bool isDirectRDP=cbDirectRDP->isChecked(); +@@ -488,7 +488,7 @@ + { + leCmdIp->setText ( tr ( "Command:" ) ); + pbAdvanced->hide(); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + cbDirectRDP->hide(); + #endif + leCmdIp->show(); +@@ -516,7 +516,7 @@ + leCmdIp->setText ( tr ( "Server:" ) ); + pbAdvanced->show(); + cmd->setText ( rdpServer ); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + cbDirectRDP->show(); + #endif + } +@@ -524,7 +524,7 @@ + { + leCmdIp->setText ( tr ( "XDMCP server:" ) ); + cmd->setText ( xdmcpServer ); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + cbDirectRDP->show(); + cbDirectRDP->setText(tr ("direct XDMCP connection")); + #endif +@@ -536,7 +536,7 @@ + cmd->setText ( "" ); + } + } +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + slot_rdpDirectClicked(); + #endif + } +@@ -611,7 +611,7 @@ + sessionId+"/sshport", + ( QVariant ) mainWindow->getDefaultSshPort().toInt() + ).toInt() ); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + rdpPort->setValue ( + st.setting()->value ( + sessionId+"/rdpport",3389 +@@ -699,7 +699,7 @@ + ( QVariant ) "" ).toString().trimmed(); + xdmcpServer=st.setting()->value ( sessionId+"/xdmcpserver", + ( QVariant ) "localhost" ).toString().trimmed(); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + if(st.setting()->value (sessionId+"/directrdp",false ).toBool()) + { + cbDirectRDP->setChecked(true); +@@ -773,7 +773,7 @@ + cmd->setEnabled ( true ); + cmd->setText ( rdpServer ); + pbAdvanced->show(); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + cbDirectRDP->show(); + slot_rdpDirectClicked(); + #endif +@@ -784,7 +784,7 @@ + sessBox->setCurrentIndex ( XDMCP ); + cmd->setEnabled ( true ); + cmd->setText ( xdmcpServer ); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + cbDirectRDP->show(); + slot_rdpDirectClicked(); + #endif +@@ -804,7 +804,7 @@ + + cbKdrive->setChecked(st.setting()->value (sessionId+"/kdrive", false).toBool() ); + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + slot_rdpDirectClicked(); + #endif + slot_krbChecked(); +@@ -830,7 +830,7 @@ + icon->setIcon ( QIcon ( sessIcon ) ); + sshPort->setValue ( + mainWindow->getDefaultSshPort().toInt() ); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + rdpPort->setValue (3389); + #endif + +@@ -876,7 +876,7 @@ + + st.setting()->setValue ( sessionId+"/key", + ( QVariant ) key->text().trimmed() ); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + st.setting()->setValue ( sessionId+"/rdpport", + ( QVariant ) rdpPort->value() ); + #endif +@@ -885,7 +885,7 @@ + st.setting()->setValue(sessionId+"/autologin",( QVariant ) cbAutoLogin->isChecked()); + st.setting()->setValue(sessionId+"/krblogin",( QVariant ) cbKrbLogin->isChecked()); + st.setting()->setValue(sessionId+"/krbdelegation",( QVariant ) cbKrbDelegation->isChecked()); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + st.setting()->setValue(sessionId+"/directrdp",( QVariant ) cbDirectRDP->isChecked()); + st.setting()->setValue(sessionId+"/directxdmcp",( QVariant ) cbDirectRDP->isChecked()); + #endif +@@ -981,7 +981,7 @@ + return sessName->text(); + } + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + void SessionWidget::slot_emitSettings() + { + emit settingsChanged(server->text(), QString::number( rdpPort->value()), uname->text()); +--- a/src/sessionwidget.h ++++ b/src/sessionwidget.h +@@ -53,7 +53,7 @@ + void slot_krbChecked(); + void slot_openFolder(); + public slots: +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + void slot_rdpDirectClicked(); + void slot_emitSettings(); + #endif +@@ -66,14 +66,14 @@ + QSpinBox* sshPort; + ONMainWindow* parent; + bool newSession; +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + QSpinBox* rdpPort; + #endif + QLineEdit* key; + QCheckBox* cbAutoLogin; + QCheckBox* cbKrbLogin; + QCheckBox* cbKrbDelegation; +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + QCheckBox* cbDirectRDP; + #endif + QString sessIcon; +@@ -111,7 +111,7 @@ + void readConfig(); + signals: + void nameChanged ( const QString & ); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + void directRDP(bool, bool); + void settingsChanged(const QString &, const QString &, const QString &); + #endif +--- a/src/settingswidget.cpp ++++ b/src/settingswidget.cpp +@@ -199,7 +199,7 @@ + setLay->addWidget ( dgb ); + setLay->addWidget ( clipGr ); + setLay->addWidget ( kgb ); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + #ifdef CFGCLIENT + rdpBox=new QGroupBox ( tr ( "RDP client" ),this ); + setLay->addWidget ( rdpBox ); +@@ -301,7 +301,7 @@ + } + + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + void SettingsWidget::setDirectRdp(bool direct, bool isXDMCP) + { + clipGr->setVisible(!direct); +@@ -417,7 +417,7 @@ + displayNumber->setValue(1); + } + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + #ifdef CFGCLIENT + maxRes->setChecked(st.setting()->value ( sessionId+"/maxdim", false).toBool()); + QString client=st.setting()->value ( sessionId+"/rdpclient","rdesktop").toString(); +@@ -553,7 +553,7 @@ + st.setting()->setValue ( sessionId+"/display", + ( QVariant ) displayNumber->value() ); + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + #ifdef CFGCLIENT + st.setting()->setValue ( sessionId+"/maxdim", + ( QVariant ) maxRes->isChecked() ); +@@ -663,7 +663,7 @@ + st.setting()->sync(); + } + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + void SettingsWidget::setServerSettings(QString server, QString port, QString user) + { + this->server=server; +--- a/src/settingswidget.h ++++ b/src/settingswidget.h +@@ -43,7 +43,7 @@ + ~SettingsWidget(); + void setDefaults(); + void saveSettings(); +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + void setDirectRdp(bool direct, bool isXDMCP); + public slots: + void setServerSettings(QString server, QString port, QString user); +@@ -87,7 +87,7 @@ + QRadioButton *rbClipClient; + QRadioButton *rbClipNone; + +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + QGroupBox *rdpBox; + QRadioButton* rRdesktop; + QRadioButton* rXfreeRDPOld; +--- a/src/sharewidget.cpp ++++ b/src/sharewidget.cpp +@@ -240,7 +240,7 @@ + ( QVariant ) + "UTF-8" ).toString(); + #endif +-#ifdef Q_OS_LINUX ++#if defined(Q_OS_LINUX) || defined(Q_OS_FREEBSD_KERNEL) || defined(Q_OS_HURD) + QString fromCode=st.setting()->value ( sessionId+"/iconvfrom", + ( QVariant ) tr ( + "ISO8859-1" ) ).toString(); +--- a/src/InteractionDialog.cpp ++++ b/src/InteractionDialog.cpp +@@ -87,7 +87,7 @@ + textEdit->setFrameStyle ( QFrame::StyledPanel|QFrame::Plain ); + cancelButton->setFlat(true); + +-#ifndef Q_OS_LINUX ++#if defined(Q_OS_DARWIN) || defined(Q_OS_WIN) + QStyle* widgetExtraStyle; + #if QT_VERSION < 0x050000 + widgetExtraStyle = new QPlastiqueStyle (); diff --git a/debian-qt5/patches/README b/debian-qt5/patches/README new file mode 100644 index 0000000..80c1584 --- /dev/null +++ b/debian-qt5/patches/README @@ -0,0 +1,3 @@ +0xxx: Grabbed from upstream development. +1xxx: Possibly relevant for upstream adoption. +2xxx: Only relevant for official Debian release. diff --git a/debian-qt5/patches/series b/debian-qt5/patches/series new file mode 100644 index 0000000..eab3a65 --- /dev/null +++ b/debian-qt5/patches/series @@ -0,0 +1,2 @@ +update_makefile_qt5-build.patch +1002_fix-ftbfs-on-non-linux.patch diff --git a/debian-qt5/patches/update_makefile_qt5-build.patch b/debian-qt5/patches/update_makefile_qt5-build.patch new file mode 100644 index 0000000..85b0063 --- /dev/null +++ b/debian-qt5/patches/update_makefile_qt5-build.patch @@ -0,0 +1,18 @@ +Description: Update Makefile to support qt5. +Author: Scarlett Clark <sgclark@kde.org> +Last-Update: 2018-03-27 +--- +This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ +--- a/Makefile ++++ b/Makefile +@@ -20,8 +20,8 @@ + BINDIR=$(PREFIX)/bin + SHAREDIR=$(PREFIX)/share + MANDIR=$(SHAREDIR)/man +-QMAKE_BINARY=qmake-qt4 +-LRELEASE_BINARY=lrelease-qt4 ++QMAKE_BINARY=qmake ++LRELEASE_BINARY=lrelease + QMAKE_OPTS= + + LDFLAGS= diff --git a/debian-qt5/rules b/debian-qt5/rules new file mode 100755 index 0000000..288516c --- /dev/null +++ b/debian-qt5/rules @@ -0,0 +1,35 @@ +#!/usr/bin/make -f + +export DEB_BUILD_MAINT_OPTIONS = hardening=+all +DPKG_EXPORT_BUILDFLAGS = 1 +export QT_SELECT=qt5 +include /usr/share/dpkg/buildflags.mk + +%: + dh $@ --with=quilt + +override_dh_auto_configure: + cp debian/changelog res/txt/changelog + if [ -f ChangeLog.gitlog ]; then cp ChangeLog.gitlog res/txt/git-info; fi + dh_auto_configure + +override_dh_auto_build: + make PREFIX=/usr build_client + make PREFIX=/usr build_man + +override_dh_auto_install: + make install_client DESTDIR=$(CURDIR)/$(PACKAGE) PREFIX=/usr + make install_man DESTDIR=$(CURDIR)/$(PACKAGE) PREFIX=/usr + +override_dh_auto_clean: + dh_auto_clean + # clean stray .qm files that are not handled by clean rule in upstream Makefile + mkdir -p txt/ + rm -Rf res/i18n/x2goclient_*.qm + rm -f res/txt/changelog + +override_dh_missing: + dh_missing --fail-missing + +get-orig-source: + uscan --noconf --force-download --rename --download-current-version --destdir=.. diff --git a/debian-qt5/source b/debian-qt5/source new file mode 120000 index 0000000..6840b09 --- /dev/null +++ b/debian-qt5/source @@ -0,0 +1 @@ +../debian-common/source \ No newline at end of file diff --git a/debian-qt5/upstream b/debian-qt5/upstream new file mode 120000 index 0000000..5f6c874 --- /dev/null +++ b/debian-qt5/upstream @@ -0,0 +1 @@ +../debian-common/upstream \ No newline at end of file diff --git a/debian-qt5/watch b/debian-qt5/watch new file mode 120000 index 0000000..046c942 --- /dev/null +++ b/debian-qt5/watch @@ -0,0 +1 @@ +../debian-common/watch \ No newline at end of file diff --git a/debian/x2goclient.dirs b/debian-qt5/x2goclient.dirs similarity index 78% copy from debian/x2goclient.dirs copy to debian-qt5/x2goclient.dirs index ceef262..ee163ee 100644 --- a/debian/x2goclient.dirs +++ b/debian-qt5/x2goclient.dirs @@ -1,6 +1,6 @@ usr/bin/ -usr/share/x2goclient -usr/share/x2goclient/icons +usr/share/x2goclient/ +usr/share/x2goclient/icons/ usr/share/icons/hicolor/128x128/apps/ usr/share/icons/hicolor/16x16/apps/ usr/share/icons/hicolor/64x64/apps/ diff --git a/debian/x2goclient.docs b/debian-qt5/x2goclient.docs similarity index 100% rename from debian/x2goclient.docs rename to debian-qt5/x2goclient.docs diff --git a/debian/x2goclient.examples b/debian-qt5/x2goclient.examples similarity index 100% rename from debian/x2goclient.examples rename to debian-qt5/x2goclient.examples diff --git a/debian/x2goclient.dirs b/debian-qt5/x2goclient.install similarity index 60% rename from debian/x2goclient.dirs rename to debian-qt5/x2goclient.install index ceef262..4216286 100644 --- a/debian/x2goclient.dirs +++ b/debian-qt5/x2goclient.install @@ -1,9 +1,11 @@ usr/bin/ -usr/share/x2goclient -usr/share/x2goclient/icons +usr/share/applications/ +usr/share/mime/ +usr/share/x2goclient/icons/ +usr/share/x2goclient/icons/ +usr/share/x2goclient/icons/ usr/share/icons/hicolor/128x128/apps/ usr/share/icons/hicolor/16x16/apps/ usr/share/icons/hicolor/64x64/apps/ usr/share/icons/hicolor/32x32/apps/ -usr/share/applications/ - +usr/share/man/ -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2goclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2goclient. commit a23fc3d4e2f2ffec29cbf18a2b940255bd903b91 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Fri Jan 22 21:35:23 2021 +0100 Makefile: Install x-x2go.xml MIME database source file for .x2go file extension. --- Makefile | 2 ++ debian/changelog | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/Makefile b/Makefile index 15ddac1..0654f1d 100755 --- a/Makefile +++ b/Makefile @@ -96,6 +96,7 @@ install: install_client install_man install_client: $(INSTALL_DIR) $(DESTDIR)$(BINDIR)/ $(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)/applications + $(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)/mime/packages $(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)/x2goclient/icons $(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)/icons/hicolor/128x128/apps $(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)/icons/hicolor/16x16/apps @@ -103,6 +104,7 @@ install_client: $(INSTALL_DIR) $(DESTDIR)$(SHAREDIR)/icons/hicolor/32x32/apps $(INSTALL_PROGRAM) $(CLIENT_DIR)/x2goclient $(DESTDIR)$(BINDIR)/x2goclient $(INSTALL_FILE) desktop/x2goclient.desktop $(DESTDIR)$(SHAREDIR)/applications/x2goclient.desktop + $(INSTALL_FILE) mime/x-x2go.xml $(DESTDIR)$(SHAREDIR)/mime/packages/x-x2go.xml $(INSTALL_FILE) res/img/icons/x2goclient.xpm $(DESTDIR)$(SHAREDIR)/x2goclient/icons/x2goclient.xpm $(INSTALL_FILE) res/img/icons/128x128/x2goclient.png $(DESTDIR)$(SHAREDIR)/x2goclient/icons/x2goclient.png $(INSTALL_FILE) res/img/icons/128x128/x2gosession.png $(DESTDIR)$(SHAREDIR)/x2goclient/icons/x2gosession.png diff --git a/debian/changelog b/debian/changelog index 4203e36..6ccb1a3 100644 --- a/debian/changelog +++ b/debian/changelog @@ -38,6 +38,11 @@ x2goclient (4.1.2.3-0x2go1) UNRELEASED; urgency=medium - src/sshmasterconnection.{c,h}: fix builds, new function should have been registered and not static, but private. + [ Mike Gabriel ] + * New upstream version (4.1.2.3): + - Makefile: Install x-x2go.xml MIME database source file for .x2go file + extension. + -- X2Go Release Manager <git-admin@x2go.org> Thu, 13 Feb 2020 12:31:20 +0100 x2goclient (4.1.2.2-0x2go1) unstable; urgency=medium -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2goclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2goclient. commit 218d2220b7a2a9b1d10278ed12aa32918ccccb14 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Fri Jan 22 22:09:53 2021 +0100 debian/changelog: Fix too-long-lines in current stanza. --- debian-common/changelog | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/debian-common/changelog b/debian-common/changelog index b13a26c..d4d21fd 100644 --- a/debian-common/changelog +++ b/debian-common/changelog @@ -7,14 +7,15 @@ x2goclient (4.1.2.3-0x2go1) UNRELEASED; urgency=medium - Download alternative resource files from http server. - Support for PNG background images. - Display state of broker connection in status bar. - - Client can synchronize sessions with broker. Broker need to send syncinterval - value in the client config section. + - Client can synchronize sessions with broker. Broker need to send + syncinterval value in the client config section. - Set min width of session status label. - set clipboard mode of x2gokdriveclient in cmd line option. - Fix maximizing client window in thinclient mode with Qt5 (bullseye). - Add mime type application/x-x2go. X2Go Client can now automatically open session files with .x2go extension. - - X2Go Client will send it's version to the broker when sending client event. + - X2Go Client will send it's version to the broker when sending client + event. [ Ryan Schmidt ] * New upstream version (4.1.2.3): -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2goclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2goclient. commit f8624f796d72dab9ed9c01ad4bf5a319276014a9 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Fri Jan 22 21:36:26 2021 +0100 debian/x2gocient.install:Install x-x2go.xml into bin:pkg x2goclient. --- debian/changelog | 2 ++ debian/x2goclient.install | 1 + 2 files changed, 3 insertions(+) diff --git a/debian/changelog b/debian/changelog index 6ccb1a3..5d326c7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -42,6 +42,8 @@ x2goclient (4.1.2.3-0x2go1) UNRELEASED; urgency=medium * New upstream version (4.1.2.3): - Makefile: Install x-x2go.xml MIME database source file for .x2go file extension. + * debian/x2gocient.install: + + Install x-x2go.xml into bin:pkg x2goclient. -- X2Go Release Manager <git-admin@x2go.org> Thu, 13 Feb 2020 12:31:20 +0100 diff --git a/debian/x2goclient.install b/debian/x2goclient.install index 0725ed4..c0e8985 100644 --- a/debian/x2goclient.install +++ b/debian/x2goclient.install @@ -1,5 +1,6 @@ client_build/x2goclient usr/bin desktop/x2goclient.desktop usr/share/applications/ +mime/x-x2go.xml usr/share/mime/packages/ res/img/icons/x2goclient.xpm usr/share/x2goclient/icons/ res/img/icons/128x128/x2goclient.png usr/share/x2goclient/icons/ res/img/icons/128x128/x2gosession.png usr/share/x2goclient/icons/ -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2goclient.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch master in repository x2goclient. commit 07900e8fae97c36e78414a0e5ae7a0298983d031 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Fri Jan 22 21:37:27 2021 +0100 x2goclient.spec: Install x-x2go.xml into bin:pkg and run update-mime-database during postinst. --- debian/changelog | 3 +++ x2goclient.spec | 3 ++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index 5d326c7..61b8348 100644 --- a/debian/changelog +++ b/debian/changelog @@ -44,6 +44,9 @@ x2goclient (4.1.2.3-0x2go1) UNRELEASED; urgency=medium extension. * debian/x2gocient.install: + Install x-x2go.xml into bin:pkg x2goclient. + * x2goclient.spec: + + Install x-x2go.xml into bin:pkg and run update-mime-database during + postinst. -- X2Go Release Manager <git-admin@x2go.org> Thu, 13 Feb 2020 12:31:20 +0100 diff --git a/x2goclient.spec b/x2goclient.spec index d0e16dd..da2129c 100644 --- a/x2goclient.spec +++ b/x2goclient.spec @@ -144,7 +144,7 @@ desktop-file-validate %{buildroot}%{_datadir}/applications/%{name}.desktop %post /bin/touch --no-create %{_datadir}/icons/hicolor &>/dev/null || : - +/usr/bin/update-mime-database /usr/share/mime &>/dev/null || : %postun if [ $1 -eq 0 ] ; then @@ -161,6 +161,7 @@ fi %doc AUTHORS COPYING LICENSE %{_bindir}/%{name} %{_datadir}/applications/%{name}.desktop +%{_datadir}/mime/packages/x-x2go.xml %dir %{_datadir}/icons/hicolor %dir %{_datadir}/icons/hicolor/128x128 %dir %{_datadir}/icons/hicolor/128x128/apps -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/x2goclient.git