Compare commits
No commits in common. "c9s" and "c8" have entirely different histories.
6
.gitignore
vendored
6
.gitignore
vendored
@ -1,5 +1 @@
|
|||||||
/xdg-utils-1.1.3.tar.gz
|
SOURCES/xdg-utils-1.1.2.tar.gz
|
||||||
/xdg-utils-1.1.3.tar.gz.md5sum
|
|
||||||
/xdg-utils-1.1.3.tar.gz.sha1sum
|
|
||||||
/0001-open-for-post-1.1.3-development.patch
|
|
||||||
/0002-xdg-open-better-pcmanfm-check-BR106636-BR106161.patch
|
|
||||||
|
1
.xdg-utils.metadata
Normal file
1
.xdg-utils.metadata
Normal file
@ -0,0 +1 @@
|
|||||||
|
20cd4cc5cfaa904b12abf6d584deb568367f4d83 SOURCES/xdg-utils-1.1.2.tar.gz
|
25
SOURCES/0001-bump-version-1.1.2.patch
Normal file
25
SOURCES/0001-bump-version-1.1.2.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
From 233512d857379115736216392b048c753b5d04b5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Rex Dieter <rdieter@math.unl.edu>
|
||||||
|
Date: Mon, 8 May 2017 07:33:56 -0500
|
||||||
|
Subject: [PATCH 1/8] bump version: 1.1.2+
|
||||||
|
|
||||||
|
---
|
||||||
|
scripts/xdg-utils-common.in | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/scripts/xdg-utils-common.in b/scripts/xdg-utils-common.in
|
||||||
|
index 160e3ca..8b85883 100644
|
||||||
|
--- a/scripts/xdg-utils-common.in
|
||||||
|
+++ b/scripts/xdg-utils-common.in
|
||||||
|
@@ -245,7 +245,7 @@ check_common_commands()
|
||||||
|
;;
|
||||||
|
|
||||||
|
--version)
|
||||||
|
- echo "@NAME@ 1.1.2"
|
||||||
|
+ echo "@NAME@ 1.1.2+"
|
||||||
|
exit_success
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
--
|
||||||
|
2.14.3
|
||||||
|
|
24
SOURCES/0002-init-1.1.3-ChangeLog-section.patch
Normal file
24
SOURCES/0002-init-1.1.3-ChangeLog-section.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
From fb9ee8c69932feb716ad4db793a7941dd06b345c Mon Sep 17 00:00:00 2001
|
||||||
|
From: Rex Dieter <rdieter@math.unl.edu>
|
||||||
|
Date: Mon, 8 May 2017 07:34:29 -0500
|
||||||
|
Subject: [PATCH 2/8] init 1.1.3 ChangeLog section
|
||||||
|
|
||||||
|
---
|
||||||
|
ChangeLog | 4 +++-
|
||||||
|
1 file changed, 3 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/ChangeLog b/ChangeLog
|
||||||
|
index 77e6cef..c819efb 100644
|
||||||
|
--- a/ChangeLog
|
||||||
|
+++ b/ChangeLog
|
||||||
|
@@ -1,4 +1,6 @@
|
||||||
|
-=== xdg-utils 1.1.2 (unreleased) ===
|
||||||
|
+=== xdg-utils 1.1.3 ===
|
||||||
|
+
|
||||||
|
+=== xdg-utils 1.1.2 ===
|
||||||
|
|
||||||
|
2017-02-28 Rex Dieter <rdieter@fedoraproject.org>
|
||||||
|
* xdg-open: Add "chromium" to fallback browsers (BR99366)
|
||||||
|
--
|
||||||
|
2.14.3
|
||||||
|
|
@ -0,0 +1,47 @@
|
|||||||
|
From afeedb5c932371482b4ffe7b5e98bc1d619f9594 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Nicholas Guriev <guriev-ns@ya.ru>
|
||||||
|
Date: Sat, 30 Sep 2017 21:34:18 +0300
|
||||||
|
Subject: [PATCH 3/8] Fix tests for 1f8e58d51e6fb3f50f59ed2d8265f2f346ac68e6
|
||||||
|
|
||||||
|
---
|
||||||
|
autotests/t-xdg-mime-query-default.sh | 2 ++
|
||||||
|
autotests/t-xdg-settings.sh | 4 ++++
|
||||||
|
2 files changed, 6 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/autotests/t-xdg-mime-query-default.sh b/autotests/t-xdg-mime-query-default.sh
|
||||||
|
index 66bb8d7..a746b1d 100755
|
||||||
|
--- a/autotests/t-xdg-mime-query-default.sh
|
||||||
|
+++ b/autotests/t-xdg-mime-query-default.sh
|
||||||
|
@@ -3,6 +3,8 @@ COMMAND_TESTED="xdg-mime query default"
|
||||||
|
. ./test-lib.sh
|
||||||
|
|
||||||
|
test_that_it reads \$XDG_CONFIG_HOME/mimeapps.list
|
||||||
|
+mock mosaic # Default app should exist
|
||||||
|
+mock_desktop_file mosaic
|
||||||
|
mock_default_app x-scheme-handler/http mosaic
|
||||||
|
handler=$(run generic xdg-mime query default x-scheme-handler/http)
|
||||||
|
assert_equal mosaic.desktop "$handler"
|
||||||
|
diff --git a/autotests/t-xdg-settings.sh b/autotests/t-xdg-settings.sh
|
||||||
|
index 7b697e4..b8255ab 100755
|
||||||
|
--- a/autotests/t-xdg-settings.sh
|
||||||
|
+++ b/autotests/t-xdg-settings.sh
|
||||||
|
@@ -12,12 +12,16 @@ assert_run gconftool-2 --get /desktop/gnome/applications/browser/exec
|
||||||
|
for de in gnome3 cinnamon lxde mate generic; do
|
||||||
|
test_that_it determines default browser from \
|
||||||
|
\$XDG_CONFIG_HOME/mimeapps.list in $de
|
||||||
|
+ mock mosaic # Default app should exist
|
||||||
|
+ mock_desktop_file mosaic
|
||||||
|
mock_default_app x-scheme-handler/http mosaic
|
||||||
|
assert_equal mosaic.desktop \
|
||||||
|
"$(run $de xdg-settings get default-web-browser)"
|
||||||
|
|
||||||
|
test_that_it determines default URL handler from \
|
||||||
|
\$XDG_CONFIG_HOME/mimeapps.list in $de
|
||||||
|
+ mock footorrent # Default app should exist
|
||||||
|
+ mock_desktop_file footorrent
|
||||||
|
mock_default_app x-scheme-handler/magnet footorrent
|
||||||
|
assert_equal \
|
||||||
|
footorrent.desktop \
|
||||||
|
--
|
||||||
|
2.14.3
|
||||||
|
|
25
SOURCES/0004-xdg-mime.1-Add-missing-period.patch
Normal file
25
SOURCES/0004-xdg-mime.1-Add-missing-period.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
From 186b6d7839ae8528d845c977fb680a46bd1c6123 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Ville=20Skytt=C3=A4?= <ville.skytta@iki.fi>
|
||||||
|
Date: Fri, 13 Oct 2017 11:40:05 +0300
|
||||||
|
Subject: [PATCH 4/8] xdg-mime.1: Add missing period
|
||||||
|
|
||||||
|
---
|
||||||
|
scripts/desc/xdg-mime.xml | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/scripts/desc/xdg-mime.xml b/scripts/desc/xdg-mime.xml
|
||||||
|
index 04d1e17..64bfc85 100644
|
||||||
|
--- a/scripts/desc/xdg-mime.xml
|
||||||
|
+++ b/scripts/desc/xdg-mime.xml
|
||||||
|
@@ -119,7 +119,7 @@ and adding descriptions for new file types</refpurpose>
|
||||||
|
</simpara>
|
||||||
|
<simpara>
|
||||||
|
<replaceable>application</replaceable> is the desktop file
|
||||||
|
- id of the application and has the form vendor-name.desktop
|
||||||
|
+ id of the application and has the form vendor-name.desktop.
|
||||||
|
<replaceable>application</replaceable> must already be installed
|
||||||
|
in the desktop menu before it can be made the default handler.
|
||||||
|
The application's desktop file must list support for all the
|
||||||
|
--
|
||||||
|
2.14.3
|
||||||
|
|
209
SOURCES/0005-Spelling-fixes-BR103255.patch
Normal file
209
SOURCES/0005-Spelling-fixes-BR103255.patch
Normal file
@ -0,0 +1,209 @@
|
|||||||
|
From fa5805559ad27382ef62110cb23e67d6eb649030 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Rex Dieter <rdieter@gmail.com>
|
||||||
|
Date: Wed, 29 Nov 2017 14:07:24 -0600
|
||||||
|
Subject: [PATCH 5/8] Spelling fixes (BR103255)
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
Credit to Ville Skyttä <ville.skytta@iki.fi>
|
||||||
|
---
|
||||||
|
ChangeLog | 4 ++--
|
||||||
|
scripts/desc/xdg-settings.xml | 2 +-
|
||||||
|
scripts/xdg-desktop-menu.in | 2 +-
|
||||||
|
scripts/xdg-screensaver.in | 2 +-
|
||||||
|
tests/README | 4 ++--
|
||||||
|
tests/debug/t.extraout | 2 +-
|
||||||
|
tests/debug/t.interactive | 2 +-
|
||||||
|
tests/doc_gen.pl | 2 +-
|
||||||
|
tests/include/testassertions.sh | 10 +++++-----
|
||||||
|
tests/testrun | 2 +-
|
||||||
|
10 files changed, 16 insertions(+), 16 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/ChangeLog b/ChangeLog
|
||||||
|
index c819efb..292915f 100644
|
||||||
|
--- a/ChangeLog
|
||||||
|
+++ b/ChangeLog
|
||||||
|
@@ -541,7 +541,7 @@
|
||||||
|
|
||||||
|
2006-04-24 Kevin Krammer <kevin.krammer@gmx.at>
|
||||||
|
* Applied patch provided by Benedikt Meurer <benedikt.meurer@unix-ag.uni-siegen.de>
|
||||||
|
- to improve the compatability of the Makefile
|
||||||
|
+ to improve the compatibility of the Makefile
|
||||||
|
* Added --title option to xdg-file-dialog
|
||||||
|
* Applied another path by Benedikt to let xdg-file-dialog use
|
||||||
|
zenity on GNOME and XFCE
|
||||||
|
@@ -564,7 +564,7 @@
|
||||||
|
Currently only used in xdg-mime to gather feedback
|
||||||
|
|
||||||
|
2006-04-08 Kevin Krammer <kevin.krammer@gmx.at>
|
||||||
|
- * In case of $BROWSER being not avialable or empty, try a fixed list of well
|
||||||
|
+ * In case of $BROWSER being not available or empty, try a fixed list of well
|
||||||
|
known browsers instead
|
||||||
|
|
||||||
|
2006-04-06 Kevin Krammer <kevin.krammer@gmx.at>
|
||||||
|
diff --git a/scripts/desc/xdg-settings.xml b/scripts/desc/xdg-settings.xml
|
||||||
|
index 56055b7..255d712 100644
|
||||||
|
--- a/scripts/desc/xdg-settings.xml
|
||||||
|
+++ b/scripts/desc/xdg-settings.xml
|
||||||
|
@@ -114,7 +114,7 @@
|
||||||
|
<refsect1 id="properties">
|
||||||
|
<title>Properties</title>
|
||||||
|
<para>
|
||||||
|
- When using xdg-settings to get, check or set a destkop setting, properties
|
||||||
|
+ When using xdg-settings to get, check or set a desktop setting, properties
|
||||||
|
and possibly sub-properties are used to specify the setting to be changed.
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
diff --git a/scripts/xdg-desktop-menu.in b/scripts/xdg-desktop-menu.in
|
||||||
|
index 13159cb..9d837e1 100644
|
||||||
|
--- a/scripts/xdg-desktop-menu.in
|
||||||
|
+++ b/scripts/xdg-desktop-menu.in
|
||||||
|
@@ -394,7 +394,7 @@ while [ $# -gt 0 ] ; do
|
||||||
|
case "$parm" in
|
||||||
|
*.directory)
|
||||||
|
if [ -n "$desktop_files" ] ; then
|
||||||
|
- exit_failure_syntax "'$parm' must preceed any *.desktop file"
|
||||||
|
+ exit_failure_syntax "'$parm' must precede any *.desktop file"
|
||||||
|
fi
|
||||||
|
directory_files="$directory_files $parm"
|
||||||
|
;;
|
||||||
|
diff --git a/scripts/xdg-screensaver.in b/scripts/xdg-screensaver.in
|
||||||
|
index aecd8e3..9e68196 100644
|
||||||
|
--- a/scripts/xdg-screensaver.in
|
||||||
|
+++ b/scripts/xdg-screensaver.in
|
||||||
|
@@ -583,7 +583,7 @@ screensaver_mate_screensaver()
|
||||||
|
{
|
||||||
|
# DBUS interface for mate-screensaver
|
||||||
|
# This is same as gnome's for now but may change in the future as MATE
|
||||||
|
-# does not follow gnome's developement necessarily.
|
||||||
|
+# does not follow gnome's development necessarily.
|
||||||
|
case "$1" in
|
||||||
|
suspend)
|
||||||
|
screensaver_suspend_loop \
|
||||||
|
diff --git a/tests/README b/tests/README
|
||||||
|
index 26469f2..8ebcfef 100644
|
||||||
|
--- a/tests/README
|
||||||
|
+++ b/tests/README
|
||||||
|
@@ -18,7 +18,7 @@ NORESULT: test_system_mime_install
|
||||||
|
See xdg-test.log for details.
|
||||||
|
NOT OK!
|
||||||
|
|
||||||
|
-FAIL indicates (not suprisingly) a test failure.
|
||||||
|
+FAIL indicates (not surprisingly) a test failure.
|
||||||
|
NORESULT indicates that the test prerequisites failed for some reason.
|
||||||
|
(e.g. the install phase of an uninstall test failed)
|
||||||
|
UNTESTED means that something needed was not found. This is fine and should
|
||||||
|
@@ -26,7 +26,7 @@ UNTESTED means that something needed was not found. This is fine and should
|
||||||
|
(e.g. test requires root, but we are not running as root)
|
||||||
|
|
||||||
|
NOTE: The test runner makes guesses about appropriate values of XDG_TEST_DIR
|
||||||
|
- and PATH. These values can be overriden explicitly.
|
||||||
|
+ and PATH. These values can be overridden explicitly.
|
||||||
|
|
||||||
|
To run tests individually, or as smaller groups do something like
|
||||||
|
|
||||||
|
diff --git a/tests/debug/t.extraout b/tests/debug/t.extraout
|
||||||
|
index ea84b33..4946673 100755
|
||||||
|
--- a/tests/debug/t.extraout
|
||||||
|
+++ b/tests/debug/t.extraout
|
||||||
|
@@ -4,7 +4,7 @@
|
||||||
|
. "$XDG_TEST_DIR/include/testcontrol.sh"
|
||||||
|
|
||||||
|
test_extraout() {
|
||||||
|
-test_start "$FUNCNAME: verify functionallity of assert_nostdout"
|
||||||
|
+test_start "$FUNCNAME: verify functionality of assert_nostdout"
|
||||||
|
|
||||||
|
test_procedure
|
||||||
|
|
||||||
|
diff --git a/tests/debug/t.interactive b/tests/debug/t.interactive
|
||||||
|
index fa203c2..6f6f858 100755
|
||||||
|
--- a/tests/debug/t.interactive
|
||||||
|
+++ b/tests/debug/t.interactive
|
||||||
|
@@ -4,7 +4,7 @@
|
||||||
|
. "$XDG_TEST_DIR/include/testcontrol.sh"
|
||||||
|
|
||||||
|
test_interactive() {
|
||||||
|
-test_start "$FUNCNAME: verify functionallity of assert_interactive"
|
||||||
|
+test_start "$FUNCNAME: verify functionality of assert_interactive"
|
||||||
|
|
||||||
|
test_procedure
|
||||||
|
|
||||||
|
diff --git a/tests/doc_gen.pl b/tests/doc_gen.pl
|
||||||
|
index ed29d94..50d134d 100755
|
||||||
|
--- a/tests/doc_gen.pl
|
||||||
|
+++ b/tests/doc_gen.pl
|
||||||
|
@@ -102,7 +102,7 @@ for $f ( @test_files ) {
|
||||||
|
}
|
||||||
|
#find initilization
|
||||||
|
elsif ( m/test_init/ ) {
|
||||||
|
- print HTM "<h2>Depencencies</h2>\n";
|
||||||
|
+ print HTM "<h2>Dependencies</h2>\n";
|
||||||
|
$state = 'INIT';
|
||||||
|
next;
|
||||||
|
}
|
||||||
|
diff --git a/tests/include/testassertions.sh b/tests/include/testassertions.sh
|
||||||
|
index 1ba026d..142c0de 100644
|
||||||
|
--- a/tests/include/testassertions.sh
|
||||||
|
+++ b/tests/include/testassertions.sh
|
||||||
|
@@ -5,7 +5,7 @@
|
||||||
|
. "$XDG_TEST_DIR/include/testfuncs.sh"
|
||||||
|
|
||||||
|
## NOTE: Documentation is generated AUTOMATICALLY from this file
|
||||||
|
-## Function usage must immediately follow function delcaration
|
||||||
|
+## Function usage must immediately follow function declaration
|
||||||
|
|
||||||
|
assert_exit() {
|
||||||
|
# execute command (saving output) and check exit code
|
||||||
|
@@ -41,7 +41,7 @@ assert_interactive_notroot() {
|
||||||
|
}
|
||||||
|
|
||||||
|
assert_interactive() {
|
||||||
|
-# Useage:
|
||||||
|
+# Usage:
|
||||||
|
# assert_interactive {msg} [y|n|C|s varname]
|
||||||
|
#
|
||||||
|
# msg is the text to print.
|
||||||
|
@@ -122,7 +122,7 @@ assert_file_not_in_path() {
|
||||||
|
|
||||||
|
|
||||||
|
assert_file() {
|
||||||
|
-# Assert the existance of an exact filename
|
||||||
|
+# Assert the existence of an exact filename
|
||||||
|
# Usage: assert_file FILE
|
||||||
|
if [ ! -e "$1" ] ; then
|
||||||
|
test_fail "'$1' does not exist"
|
||||||
|
@@ -140,7 +140,7 @@ assert_file() {
|
||||||
|
}
|
||||||
|
|
||||||
|
assert_nofile() {
|
||||||
|
-# Assert the non existance of an exact filename.
|
||||||
|
+# Assert the non existence of an exact filename.
|
||||||
|
# Opposite of 'assert_file'
|
||||||
|
if [ -e "$1" ] ; then
|
||||||
|
test_fail "'$1' exists."
|
||||||
|
@@ -339,7 +339,7 @@ get_unique_name() {
|
||||||
|
varname="$1"
|
||||||
|
file="$2"
|
||||||
|
if [ -z "$varname" ] ; then
|
||||||
|
- echo "TEST SYNAX ERROR: get_unique_name requries a variable name"
|
||||||
|
+ echo "TEST SYNAX ERROR: get_unique_name requires a variable name"
|
||||||
|
exit 255
|
||||||
|
fi
|
||||||
|
|
||||||
|
diff --git a/tests/testrun b/tests/testrun
|
||||||
|
index 822fc69..4a9f748 100755
|
||||||
|
--- a/tests/testrun
|
||||||
|
+++ b/tests/testrun
|
||||||
|
@@ -123,7 +123,7 @@ if [ -z "$XDG_TEST_SELF_LAUNCH" ] ; then # not self launched
|
||||||
|
else
|
||||||
|
SUCMD=`which sudo 2>/dev/null`
|
||||||
|
echo "Running ${SUCMD-su} for system tests."
|
||||||
|
- echo "Please enter an apropriate password if requested."
|
||||||
|
+ echo "Please enter an appropriate password if requested."
|
||||||
|
fi
|
||||||
|
# Note if sudo is not found, $SUCMD will be blank, so run su directly.
|
||||||
|
# We cannot assume su works since systems like Ubuntu require sudo
|
||||||
|
--
|
||||||
|
2.14.3
|
||||||
|
|
48
SOURCES/0006-xdg-mime-awk-script-syntax-error-BR104298.patch
Normal file
48
SOURCES/0006-xdg-mime-awk-script-syntax-error-BR104298.patch
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
From eda08ef065adac7cfa46f296d378cc06a3131d3e Mon Sep 17 00:00:00 2001
|
||||||
|
From: Rex Dieter <rdieter@gmail.com>
|
||||||
|
Date: Mon, 18 Dec 2017 15:50:45 -0600
|
||||||
|
Subject: [PATCH 6/8] xdg-mime awk script syntax error (BR104298)
|
||||||
|
|
||||||
|
---
|
||||||
|
ChangeLog | 3 +++
|
||||||
|
scripts/xdg-mime.in | 4 ++--
|
||||||
|
2 files changed, 5 insertions(+), 2 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/ChangeLog b/ChangeLog
|
||||||
|
index 292915f..964006c 100644
|
||||||
|
--- a/ChangeLog
|
||||||
|
+++ b/ChangeLog
|
||||||
|
@@ -1,5 +1,8 @@
|
||||||
|
=== xdg-utils 1.1.3 ===
|
||||||
|
|
||||||
|
+2017-1218
|
||||||
|
+ * xdg-mime awk script syntax error (BR104298)
|
||||||
|
+
|
||||||
|
=== xdg-utils 1.1.2 ===
|
||||||
|
|
||||||
|
2017-02-28 Rex Dieter <rdieter@fedoraproject.org>
|
||||||
|
diff --git a/scripts/xdg-mime.in b/scripts/xdg-mime.in
|
||||||
|
index b67581c..0e567c7 100644
|
||||||
|
--- a/scripts/xdg-mime.in
|
||||||
|
+++ b/scripts/xdg-mime.in
|
||||||
|
@@ -171,7 +171,7 @@ make_default_kde()
|
||||||
|
blanks++
|
||||||
|
suppress=1
|
||||||
|
} else if (associations && index($0, prefix) == 1) {
|
||||||
|
- value=substr($0, length(prefix) + 1, length)
|
||||||
|
+ value=substr($0, length(prefix) + 1, length())
|
||||||
|
split(value, apps, ";")
|
||||||
|
value=application ";"
|
||||||
|
count=0
|
||||||
|
@@ -369,7 +369,7 @@ check_mimeapps_list()
|
||||||
|
} else if (index($0, "[") == 1) {
|
||||||
|
indefault=0
|
||||||
|
} else if (!found && indefault && index($0, prefix) == 1) {
|
||||||
|
- print substr($0, length(prefix) +1, length)
|
||||||
|
+ print substr($0, length(prefix) +1, length())
|
||||||
|
found=1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
--
|
||||||
|
2.14.3
|
||||||
|
|
53
SOURCES/0007-xdg-open-Fixes-LXQt-behavior.patch
Normal file
53
SOURCES/0007-xdg-open-Fixes-LXQt-behavior.patch
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
From 7d4360c64d94de53d907f13ca99837285e972ec6 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Lu=C3=ADs=20Pereira?= <luis.artur.pereira@gmail.com>
|
||||||
|
Date: Wed, 17 May 2017 14:33:30 +0100
|
||||||
|
Subject: [PATCH 7/8] xdg-open: Fixes LXQt behavior
|
||||||
|
|
||||||
|
Commit 6387086e4938d568c2bab185632f60e1619b3f68 introduced LXQt support.
|
||||||
|
In xdg-open it assumed that LXQt and LXDE are the same. They aren't. LXQt
|
||||||
|
does not have pcmanfm, it has pcmanfm-qt.
|
||||||
|
LXQt doesn't want to rely on pcmamfm-qt to handle it: LXQt is very modular
|
||||||
|
and can be deployed without pcmanfm-qt.
|
||||||
|
|
||||||
|
open_generic() works for LXQt but it depends on mimeopen and mimetype. In
|
||||||
|
the future we will want, for sure, to drop those dependencies. That's the
|
||||||
|
reason for the existence of open_lxqt().
|
||||||
|
---
|
||||||
|
scripts/xdg-open.in | 11 ++++++++++-
|
||||||
|
1 file changed, 10 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/scripts/xdg-open.in b/scripts/xdg-open.in
|
||||||
|
index 9817c5f..2972257 100644
|
||||||
|
--- a/scripts/xdg-open.in
|
||||||
|
+++ b/scripts/xdg-open.in
|
||||||
|
@@ -447,6 +447,11 @@ open_lxde()
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
+open_lxqt()
|
||||||
|
+{
|
||||||
|
+ open_generic "$1"
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
[ x"$1" != x"" ] || exit_failure_syntax
|
||||||
|
|
||||||
|
url=
|
||||||
|
@@ -511,10 +516,14 @@ case "$DE" in
|
||||||
|
open_xfce "$url"
|
||||||
|
;;
|
||||||
|
|
||||||
|
- lxde|lxqt)
|
||||||
|
+ lxde)
|
||||||
|
open_lxde "$url"
|
||||||
|
;;
|
||||||
|
|
||||||
|
+ lxqt)
|
||||||
|
+ open_lxqt "$url"
|
||||||
|
+ ;;
|
||||||
|
+
|
||||||
|
enlightenment)
|
||||||
|
open_enlightenment "$url"
|
||||||
|
;;
|
||||||
|
--
|
||||||
|
2.14.3
|
||||||
|
|
27
SOURCES/0008-Changelog-for-prior-commit.patch
Normal file
27
SOURCES/0008-Changelog-for-prior-commit.patch
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
From 13963edddcad55438f03aefd4db1538cc8f68f14 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Rex Dieter <rdieter@gmail.com>
|
||||||
|
Date: Tue, 27 Feb 2018 15:58:42 -0600
|
||||||
|
Subject: [PATCH 8/8] Changelog for prior commit
|
||||||
|
|
||||||
|
---
|
||||||
|
ChangeLog | 5 ++++-
|
||||||
|
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/ChangeLog b/ChangeLog
|
||||||
|
index 964006c..8060d47 100644
|
||||||
|
--- a/ChangeLog
|
||||||
|
+++ b/ChangeLog
|
||||||
|
@@ -1,6 +1,9 @@
|
||||||
|
=== xdg-utils 1.1.3 ===
|
||||||
|
|
||||||
|
-2017-1218
|
||||||
|
+2018-02-27
|
||||||
|
+ * xdg-open: Fixes LXQt behavior (BR81674,BR103146)
|
||||||
|
+
|
||||||
|
+2017-12-18
|
||||||
|
* xdg-mime awk script syntax error (BR104298)
|
||||||
|
|
||||||
|
=== xdg-utils 1.1.2 ===
|
||||||
|
--
|
||||||
|
2.14.3
|
||||||
|
|
40
SOURCES/CVE-2017-18266.patch
Normal file
40
SOURCES/CVE-2017-18266.patch
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
From ce802d71c3466d1dbb24f2fe9b6db82a1f899bcb Mon Sep 17 00:00:00 2001
|
||||||
|
From: Gabriel Corona <gabriel.corona@enst-bretagne.fr>
|
||||||
|
Date: Mon, 19 Mar 2018 22:09:00 +0100
|
||||||
|
Subject: [PATCH] Avoid argument injection vulnerability in open_envvar()
|
||||||
|
|
||||||
|
---
|
||||||
|
scripts/xdg-open.in | 10 +++++++++-
|
||||||
|
1 file changed, 9 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/scripts/xdg-open.in b/scripts/xdg-open.in
|
||||||
|
index 2972257..021524b 100644
|
||||||
|
--- a/scripts/xdg-open.in
|
||||||
|
+++ b/scripts/xdg-open.in
|
||||||
|
@@ -351,6 +351,11 @@ open_generic_xdg_x_scheme_handler()
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
+has_single_argument()
|
||||||
|
+{
|
||||||
|
+ test $# = 1
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
open_envvar()
|
||||||
|
{
|
||||||
|
local oldifs="$IFS"
|
||||||
|
@@ -365,7 +370,10 @@ open_envvar()
|
||||||
|
fi
|
||||||
|
|
||||||
|
if echo "$browser" | grep -q %s; then
|
||||||
|
- $(printf "$browser" "$1")
|
||||||
|
+ # Avoid argument injection.
|
||||||
|
+ # See https://bugs.freedesktop.org/show_bug.cgi?id=103807
|
||||||
|
+ # URIs don't have IFS characters spaces anyway.
|
||||||
|
+ has_single_argument $1 && $(printf "$browser" "$1")
|
||||||
|
else
|
||||||
|
$browser "$1"
|
||||||
|
fi
|
||||||
|
--
|
||||||
|
2.17.1
|
||||||
|
|
@ -1,12 +1,14 @@
|
|||||||
|
#global prerelease rc3
|
||||||
|
#global snap 20150927git
|
||||||
|
|
||||||
Summary: Basic desktop integration functions
|
Summary: Basic desktop integration functions
|
||||||
Name: xdg-utils
|
Name: xdg-utils
|
||||||
Version: 1.1.3
|
Version: 1.1.2
|
||||||
Release: 11%{?dist}
|
Release: 5%{?dist}
|
||||||
|
|
||||||
URL: http://portland.freedesktop.org/
|
URL: http://portland.freedesktop.org/
|
||||||
%if 0%{?snap:1}
|
%if 0%{?snap:1}
|
||||||
Source0: xdg-utils-%{version}-%{snap}.tar.gz
|
Source0: xdg-utils-1.1.0-%{snap}.tar.gz
|
||||||
%else
|
%else
|
||||||
# at least until freedesktop folks move over to release dir
|
# at least until freedesktop folks move over to release dir
|
||||||
Source0: https://people.freedesktop.org/~rdieter/xdg-utils/xdg-utils-%{version}.tar.gz
|
Source0: https://people.freedesktop.org/~rdieter/xdg-utils/xdg-utils-%{version}.tar.gz
|
||||||
@ -15,14 +17,21 @@ Source0: https://people.freedesktop.org/~rdieter/xdg-utils/xdg-utils-%{version}
|
|||||||
Source1: xdg-utils-git_checkout.sh
|
Source1: xdg-utils-git_checkout.sh
|
||||||
License: MIT
|
License: MIT
|
||||||
|
|
||||||
# upstream patches
|
## upstream patches (treat as sources in lookaside cache)
|
||||||
Patch0: xdg-utils-1.1.3-upstream-fixes.patch
|
Patch1: 0001-bump-version-1.1.2.patch
|
||||||
|
Patch2: 0002-init-1.1.3-ChangeLog-section.patch
|
||||||
|
Patch3: 0003-Fix-tests-for-1f8e58d51e6fb3f50f59ed2d8265f2f346ac68.patch
|
||||||
|
Patch4: 0004-xdg-mime.1-Add-missing-period.patch
|
||||||
|
Patch5: 0005-Spelling-fixes-BR103255.patch
|
||||||
|
Patch6: 0006-xdg-mime-awk-script-syntax-error-BR104298.patch
|
||||||
|
Patch7: 0007-xdg-open-Fixes-LXQt-behavior.patch
|
||||||
|
Patch8: 0008-Changelog-for-prior-commit.patch
|
||||||
|
Patch9: CVE-2017-18266.patch
|
||||||
|
|
||||||
# make sure BuildArch comes *after* patches, to ensure %%autosetup works right
|
# make sure BuildArch comes *after* patches, to ensure %%autosetup works right
|
||||||
# http://bugzilla.redhat.com/1084309
|
# http://bugzilla.redhat.com/1084309
|
||||||
BuildArch: noarch
|
BuildArch: noarch
|
||||||
|
|
||||||
BuildRequires: make
|
|
||||||
BuildRequires: gawk
|
BuildRequires: gawk
|
||||||
BuildRequires: xmlto lynx
|
BuildRequires: xmlto lynx
|
||||||
|
|
||||||
@ -92,39 +101,9 @@ make install DESTDIR=%{buildroot}
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
* Tue Nov 23 2021 David King <amigadave@amigadave.com> - 1.1.3-11
|
* Thu Sep 20 2018 Alexander Larsson <alexl@redhat.com> - 1.1.2-5
|
||||||
- Pull in upstream fixes (#1881372)
|
- Add patch for CVE-2017-18266
|
||||||
|
Resolves: #1578769
|
||||||
* Tue Aug 10 2021 Mohan Boddu <mboddu@redhat.com> - 1.1.3-10
|
|
||||||
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
|
||||||
Related: rhbz#1991688
|
|
||||||
|
|
||||||
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 1.1.3-9
|
|
||||||
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
|
|
||||||
|
|
||||||
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.3-8
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
|
||||||
|
|
||||||
* Wed Jul 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.3-7
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
|
||||||
|
|
||||||
* Fri Jan 31 2020 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.3-6
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sat Jul 27 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.3-5
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sun Feb 03 2019 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.3-4
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
|
||||||
|
|
||||||
* Sat Jul 14 2018 Fedora Release Engineering <releng@fedoraproject.org> - 1.1.3-3
|
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
|
||||||
|
|
||||||
* Thu May 24 2018 Rex Dieter <rdieter@fedoraproject.org> - 1.1.3-2
|
|
||||||
- pull in upstream fixes
|
|
||||||
|
|
||||||
* Thu May 10 2018 Rex Dieter <rdieter@fedoraproject.org> - 1.1.3-1
|
|
||||||
- xdg-utils-1.1.3
|
|
||||||
|
|
||||||
* Tue Feb 27 2018 Rex Dieter <rdieter@fedoraproject.org> - 1.1.2-4
|
* Tue Feb 27 2018 Rex Dieter <rdieter@fedoraproject.org> - 1.1.2-4
|
||||||
- pull in upstream fixes
|
- pull in upstream fixes
|
@ -1,6 +0,0 @@
|
|||||||
--- !Policy
|
|
||||||
product_versions:
|
|
||||||
- rhel-9
|
|
||||||
decision_context: osci_compose_gate
|
|
||||||
rules:
|
|
||||||
- !PassingTestCaseRule {test_case_name: desktop-qe.desktop-ci.tier1-gating.functional}
|
|
5
sources
5
sources
@ -1,5 +0,0 @@
|
|||||||
SHA512 (xdg-utils-1.1.3.tar.gz) = d1f819a211eb4104a90dfdc6fedcb640fd46b15ccfc8762266f8f538c49d74cb00027b8c1af991fb2a200acb4379986ae375700e06a2aa08fb41a38f883acb3e
|
|
||||||
SHA512 (xdg-utils-1.1.3.tar.gz.md5sum) = e467c3226563f800be9120a499181e91e5dc8ef1347140aceb9ac582bbf2ad2b54ecdcd6fef7dc3cec599333dfda02f830f17cb857d0fb91238a47f36399c3b1
|
|
||||||
SHA512 (xdg-utils-1.1.3.tar.gz.sha1sum) = bd5986c298c6496a2b21aa83a86d768473dd19b25070c04487000a2b5c3b29df5b3e967eab400db94f9a21444a334b97965e5555bcbbfaed48ab56280222c8a2
|
|
||||||
SHA512 (0001-open-for-post-1.1.3-development.patch) = e1335d9d1ef13431eeb6945162bde6af4d5351af814a0e56d627a0e53e31e3d60d4466e59c3024e8c4badba127860d42ee43935ebdd4f6407de4e02fc70e5674
|
|
||||||
SHA512 (0002-xdg-open-better-pcmanfm-check-BR106636-BR106161.patch) = d7f36222e0ab32179ddb62e72576f9740f0bf829ec01f5b1c12c3f8206a16faeb2c7bff232d75d04aa91f80cf2478b36cc91e60f750791ad707f909df33f299b
|
|
@ -1,746 +0,0 @@
|
|||||||
From 0b73fb82ccf178d496bd8da5b8c0a6906b14d030 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Rex Dieter <rdieter@gmail.com>
|
|
||||||
Date: Sun, 13 May 2018 08:40:55 -0500
|
|
||||||
Subject: [PATCH 01/16] open for post 1.1.3 development
|
|
||||||
|
|
||||||
---
|
|
||||||
ChangeLog | 3 +++
|
|
||||||
scripts/xdg-utils-common.in | 2 +-
|
|
||||||
2 files changed, 4 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/ChangeLog b/ChangeLog
|
|
||||||
index c9eaeea..6864f88 100644
|
|
||||||
--- a/ChangeLog
|
|
||||||
+++ b/ChangeLog
|
|
||||||
@@ -1,3 +1,6 @@
|
|
||||||
+=== xdg-utils 1.1.4 ===
|
|
||||||
+
|
|
||||||
+
|
|
||||||
=== xdg-utils 1.1.3 ===
|
|
||||||
|
|
||||||
2018-05-10
|
|
||||||
diff --git a/scripts/xdg-utils-common.in b/scripts/xdg-utils-common.in
|
|
||||||
index 9cfc8a3..a8abed8 100644
|
|
||||||
--- a/scripts/xdg-utils-common.in
|
|
||||||
+++ b/scripts/xdg-utils-common.in
|
|
||||||
@@ -245,7 +245,7 @@ check_common_commands()
|
|
||||||
;;
|
|
||||||
|
|
||||||
--version)
|
|
||||||
- echo "@NAME@ 1.1.3"
|
|
||||||
+ echo "@NAME@ 1.1.3+"
|
|
||||||
exit_success
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
--
|
|
||||||
2.33.1
|
|
||||||
|
|
||||||
|
|
||||||
From 31525d3855f876ddf2e29091b2e8d376f923e09e Mon Sep 17 00:00:00 2001
|
|
||||||
From: Rex Dieter <rdieter@gmail.com>
|
|
||||||
Date: Thu, 24 May 2018 14:40:53 -0500
|
|
||||||
Subject: [PATCH 02/16] xdg-open: better pcmanfm check (BR106636,BR106161)
|
|
||||||
|
|
||||||
---
|
|
||||||
ChangeLog | 2 ++
|
|
||||||
scripts/xdg-open.in | 2 +-
|
|
||||||
2 files changed, 3 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/ChangeLog b/ChangeLog
|
|
||||||
index 6864f88..3eed7c4 100644
|
|
||||||
--- a/ChangeLog
|
|
||||||
+++ b/ChangeLog
|
|
||||||
@@ -1,5 +1,7 @@
|
|
||||||
=== xdg-utils 1.1.4 ===
|
|
||||||
|
|
||||||
+2018-05-24
|
|
||||||
+ * xdg-open: better pcmanfm check (BR106636,BR106161)
|
|
||||||
|
|
||||||
=== xdg-utils 1.1.3 ===
|
|
||||||
|
|
||||||
diff --git a/scripts/xdg-open.in b/scripts/xdg-open.in
|
|
||||||
index 630e63e..bf9da4c 100644
|
|
||||||
--- a/scripts/xdg-open.in
|
|
||||||
+++ b/scripts/xdg-open.in
|
|
||||||
@@ -451,7 +451,7 @@ open_lxde()
|
|
||||||
{
|
|
||||||
|
|
||||||
# pcmanfm only knows how to handle file:// urls and filepaths, it seems.
|
|
||||||
- if pcmanfm --help >/dev/null 2>&1 -a is_file_url_or_path "$1"; then
|
|
||||||
+ if pcmanfm --help >/dev/null 2>&1 && is_file_url_or_path "$1"; then
|
|
||||||
local file="$(file_url_to_path "$1")"
|
|
||||||
|
|
||||||
# handle relative paths
|
|
||||||
--
|
|
||||||
2.33.1
|
|
||||||
|
|
||||||
|
|
||||||
From 56991bc165577f011f9ad7ca721c5a5134710e33 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Alberto Salvia Novella <es20490446e@gmail.com>
|
|
||||||
Date: Tue, 11 Sep 2018 02:26:39 +0200
|
|
||||||
Subject: [PATCH 03/16] xdg-email: Support for Deepin
|
|
||||||
|
|
||||||
---
|
|
||||||
ChangeLog | 6 ++++++
|
|
||||||
scripts/xdg-email.in | 2 +-
|
|
||||||
scripts/xdg-open.in | 6 +++---
|
|
||||||
scripts/xdg-utils-common.in | 5 ++---
|
|
||||||
4 files changed, 12 insertions(+), 7 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/ChangeLog b/ChangeLog
|
|
||||||
index 3eed7c4..1c6b4c1 100644
|
|
||||||
--- a/ChangeLog
|
|
||||||
+++ b/ChangeLog
|
|
||||||
@@ -1,3 +1,9 @@
|
|
||||||
+=== xdg-utils 1.1.5 ===
|
|
||||||
+
|
|
||||||
+2018-09-11 Alberto Salvia Novella <es20490446e@gmail.com>
|
|
||||||
+ * all: Deepin Desktop name standarised as "deepin"
|
|
||||||
+ * xdg-email: Support for Deepin (BR107877)
|
|
||||||
+
|
|
||||||
=== xdg-utils 1.1.4 ===
|
|
||||||
|
|
||||||
2018-05-24
|
|
||||||
diff --git a/scripts/xdg-email.in b/scripts/xdg-email.in
|
|
||||||
index 3614776..6db58ad 100644
|
|
||||||
--- a/scripts/xdg-email.in
|
|
||||||
+++ b/scripts/xdg-email.in
|
|
||||||
@@ -472,7 +472,7 @@ case "$DE" in
|
|
||||||
open_gnome "${mailto}"
|
|
||||||
;;
|
|
||||||
|
|
||||||
- gnome3|cinnamon|lxde|mate)
|
|
||||||
+ gnome3|cinnamon|lxde|mate|deepin)
|
|
||||||
open_gnome3 "${mailto}"
|
|
||||||
;;
|
|
||||||
|
|
||||||
diff --git a/scripts/xdg-open.in b/scripts/xdg-open.in
|
|
||||||
index bf9da4c..4928538 100644
|
|
||||||
--- a/scripts/xdg-open.in
|
|
||||||
+++ b/scripts/xdg-open.in
|
|
||||||
@@ -142,7 +142,7 @@ open_kde()
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
-open_dde()
|
|
||||||
+open_deepin()
|
|
||||||
{
|
|
||||||
if dde-open -version >/dev/null 2>&1; then
|
|
||||||
dde-open "$1"
|
|
||||||
@@ -524,8 +524,8 @@ case "$DE" in
|
|
||||||
open_kde "$url"
|
|
||||||
;;
|
|
||||||
|
|
||||||
- dde)
|
|
||||||
- open_dde "$url"
|
|
||||||
+ deepin)
|
|
||||||
+ open_deepin "$url"
|
|
||||||
;;
|
|
||||||
|
|
||||||
gnome3|cinnamon)
|
|
||||||
diff --git a/scripts/xdg-utils-common.in b/scripts/xdg-utils-common.in
|
|
||||||
index a8abed8..7d2c49c 100644
|
|
||||||
--- a/scripts/xdg-utils-common.in
|
|
||||||
+++ b/scripts/xdg-utils-common.in
|
|
||||||
@@ -288,9 +288,8 @@ detectDE()
|
|
||||||
KDE)
|
|
||||||
DE=kde;
|
|
||||||
;;
|
|
||||||
- # Deepin Desktop Environments
|
|
||||||
- DEEPIN|Deepin|deepin)
|
|
||||||
- DE=dde;
|
|
||||||
+ Deepin)
|
|
||||||
+ DE=deepin;
|
|
||||||
;;
|
|
||||||
LXDE)
|
|
||||||
DE=lxde;
|
|
||||||
--
|
|
||||||
2.33.1
|
|
||||||
|
|
||||||
|
|
||||||
From 74776910981b60877d25b1ab9587e5928af1e9c4 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Rex Dieter <rdieter@gmail.com>
|
|
||||||
Date: Thu, 13 Sep 2018 10:48:28 -0500
|
|
||||||
Subject: [PATCH 04/16] Restore matching of older deepin names
|
|
||||||
|
|
||||||
Reverts a small part of prior commit
|
|
||||||
56991bc165577f011f9ad7ca721c5a5134710e33
|
|
||||||
---
|
|
||||||
scripts/xdg-utils-common.in | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/scripts/xdg-utils-common.in b/scripts/xdg-utils-common.in
|
|
||||||
index 7d2c49c..b4333e2 100644
|
|
||||||
--- a/scripts/xdg-utils-common.in
|
|
||||||
+++ b/scripts/xdg-utils-common.in
|
|
||||||
@@ -288,7 +288,7 @@ detectDE()
|
|
||||||
KDE)
|
|
||||||
DE=kde;
|
|
||||||
;;
|
|
||||||
- Deepin)
|
|
||||||
+ DEEPIN|Deepin|deepin)
|
|
||||||
DE=deepin;
|
|
||||||
;;
|
|
||||||
LXDE)
|
|
||||||
--
|
|
||||||
2.33.1
|
|
||||||
|
|
||||||
|
|
||||||
From 186966735dcccd61afde937118f27043bd084f57 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Richard Tollerton <rich.tollerton@ni.com>
|
|
||||||
Date: Thu, 10 Jan 2019 15:41:08 -0600
|
|
||||||
Subject: [PATCH 05/16] xdg-open: handle file://localhost/
|
|
||||||
|
|
||||||
Presently, file://localhost/ URLs are totally unsupported: is_file_url_or_path
|
|
||||||
correctly considers them files, but they are undecoded and hence
|
|
||||||
check_input_file fails.
|
|
||||||
|
|
||||||
While the standardization surrounding file: URLs is admittedly vague [1], AFAIK,
|
|
||||||
*all* literature, and other implementations, unambiguously demonstrate that
|
|
||||||
file://localhost/ should be equivalent to file:///:
|
|
||||||
|
|
||||||
- The "File URI specification" explicitly linked to from the xdg-utils homepage [2]
|
|
||||||
- RFC 8089 section 1.1
|
|
||||||
- RFC 1738 section 3.10
|
|
||||||
- Observed implementations of Windows `start`, macOS `open`, Firefox, Chrome, IE
|
|
||||||
|
|
||||||
Fix this by adding some simple carve-outs for file://localhost specifically in
|
|
||||||
file_url_to_path.
|
|
||||||
|
|
||||||
[1] https://lists.freedesktop.org/archives/xdg/2004-November/003711.html
|
|
||||||
[2] https://edeproject.org/spec/file-uri-spec.txt
|
|
||||||
|
|
||||||
Signed-off-by: Richard Tollerton <rich.tollerton@ni.com>
|
|
||||||
---
|
|
||||||
autotests/t-xdg-open.sh | 6 ++++++
|
|
||||||
scripts/xdg-open.in | 3 ++-
|
|
||||||
2 files changed, 8 insertions(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/autotests/t-xdg-open.sh b/autotests/t-xdg-open.sh
|
|
||||||
index 810bdc3..0d4b8d2 100755
|
|
||||||
--- a/autotests/t-xdg-open.sh
|
|
||||||
+++ b/autotests/t-xdg-open.sh
|
|
||||||
@@ -155,3 +155,9 @@ test_generic_open_file 'test#file.txt'
|
|
||||||
|
|
||||||
test_that_it opens files with spaces in their name in generic mode
|
|
||||||
test_generic_open_file 'test file.txt'
|
|
||||||
+
|
|
||||||
+test_that_it opens file://localhost/ paths
|
|
||||||
+mock pcmanfm
|
|
||||||
+touch $LABDIR/file.txt
|
|
||||||
+run lxde xdg-open file://localhost$(pwd)/$LABDIR/file%2etxt
|
|
||||||
+assert_run pcmanfm $(pwd)/$LABDIR/file.txt
|
|
||||||
diff --git a/scripts/xdg-open.in b/scripts/xdg-open.in
|
|
||||||
index 4928538..09ef6d8 100644
|
|
||||||
--- a/scripts/xdg-open.in
|
|
||||||
+++ b/scripts/xdg-open.in
|
|
||||||
@@ -84,7 +84,8 @@ is_file_url_or_path()
|
|
||||||
file_url_to_path()
|
|
||||||
{
|
|
||||||
local file="$1"
|
|
||||||
- if echo "$file" | grep -q '^file:///'; then
|
|
||||||
+ if echo "$file" | grep -q '^file://\(localhost\)\?/'; then
|
|
||||||
+ file=${file#file://localhost}
|
|
||||||
file=${file#file://}
|
|
||||||
file=${file%%#*}
|
|
||||||
file=$(echo "$file" | sed -r 's/\?.*$//')
|
|
||||||
--
|
|
||||||
2.33.1
|
|
||||||
|
|
||||||
|
|
||||||
From af7b34a6d3b77b7c9565fa7b396c7da676aa2fec Mon Sep 17 00:00:00 2001
|
|
||||||
From: Richard Tollerton <rich.tollerton@ni.com>
|
|
||||||
Date: Thu, 10 Jan 2019 16:31:38 -0600
|
|
||||||
Subject: [PATCH 06/16] test-lib.sh: run: eat xdg-open's exit code
|
|
||||||
|
|
||||||
It was observed that t-xdg-open.sh exits after only a fraction of the tests have
|
|
||||||
been run, e.g.
|
|
||||||
|
|
||||||
ASSERTION FAILED: expected command to be run: gio open http://www.freedesktop.org/
|
|
||||||
ASSERTION FAILED: expected command to be run: gio open http://www.freedesktop.org/
|
|
||||||
- opens a URL with gvfs-open if gio open is missing in GNOME 3, GNOME 2, and Cinnamon
|
|
||||||
gio: http://www.freedesktop.org/: Operation not supported
|
|
||||||
make: *** [Makefile:21: t-xdg-open.sh] Error 4
|
|
||||||
|
|
||||||
Given that some tests are failing on my machine (likely because of the
|
|
||||||
peculiarities of my archlinux install), the root cause is `set -e`. The nonzero
|
|
||||||
exit code returned by xdg-open gets returned by run(), which is also returned by
|
|
||||||
e.g. test_open_url(), which causes the script to exit immediately.
|
|
||||||
|
|
||||||
All test passes/failures at present are being defined by explicit assertions,
|
|
||||||
not by exit codes, and it seems at least plausible that some xdg-open calls are
|
|
||||||
meant to fail. So rather than report the nonzero error code, just ignore it, and
|
|
||||||
trust that the assertions determine the results.
|
|
||||||
|
|
||||||
Signed-off-by: Richard Tollerton <rich.tollerton@ni.com>
|
|
||||||
---
|
|
||||||
autotests/test-lib.sh | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/autotests/test-lib.sh b/autotests/test-lib.sh
|
|
||||||
index 5ea01b3..ca3b10b 100644
|
|
||||||
--- a/autotests/test-lib.sh
|
|
||||||
+++ b/autotests/test-lib.sh
|
|
||||||
@@ -213,7 +213,7 @@ run() {
|
|
||||||
XDG_CONFIG_DIRS=$XDG_CONFIG_DIRS \
|
|
||||||
DISPLAY=x \
|
|
||||||
BROWSER="$BROWSER" \
|
|
||||||
- $trace ../scripts/$cmd "$@"
|
|
||||||
+ $trace ../scripts/$cmd "$@" ||:
|
|
||||||
}
|
|
||||||
|
|
||||||
echo "* Testing that $COMMAND_TESTED"
|
|
||||||
--
|
|
||||||
2.33.1
|
|
||||||
|
|
||||||
|
|
||||||
From 755e1f27c58016507053d192351666862905b3cc Mon Sep 17 00:00:00 2001
|
|
||||||
From: Ronan Arraes Jardim Chagas <ronisbr@gmail.com>
|
|
||||||
Date: Tue, 19 Mar 2019 15:12:58 +1030
|
|
||||||
Subject: [PATCH 07/16] Fix a bug when xdg-terminal needs gsettings to get the
|
|
||||||
default terminal
|
|
||||||
|
|
||||||
xdg-terminal is not working when it needs gsettings to obtain the
|
|
||||||
default terminal. Thus, xdg-terminal cannot be used in MATE, Cinnamon
|
|
||||||
or GNOME. This issue was already reported in:
|
|
||||||
https://bugs.freedesktop.org/show_bug.cgi?id=93231
|
|
||||||
|
|
||||||
Thus, this patch provides a temporary workaround until upstream fixes
|
|
||||||
it.
|
|
||||||
|
|
||||||
Link: https://bugs.freedesktop.org/show_bug.cgi?id=93231
|
|
||||||
Signed-off-by: Simon Lees <sflees@suse.de>
|
|
||||||
---
|
|
||||||
scripts/xdg-terminal.in | 4 ++--
|
|
||||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/scripts/xdg-terminal.in b/scripts/xdg-terminal.in
|
|
||||||
index f67897d..221487c 100644
|
|
||||||
--- a/scripts/xdg-terminal.in
|
|
||||||
+++ b/scripts/xdg-terminal.in
|
|
||||||
@@ -86,8 +86,8 @@ terminal_gsettings()
|
|
||||||
{
|
|
||||||
term_schema="$1"; shift
|
|
||||||
|
|
||||||
- term_exec=`gsettings get ${term_schema} exec`
|
|
||||||
- term_exec_arg=`gsettings get ${term_schema} exec-arg`
|
|
||||||
+ term_exec=`gsettings get ${term_schema} exec | sed -r "s/^'(.*)'$/\1/"`
|
|
||||||
+ term_exec_arg=`gsettings get ${term_schema} exec-arg | sed -r "s/^'(.*)'$/\1/"`
|
|
||||||
|
|
||||||
terminal_exec=`which $term_exec 2>/dev/null`
|
|
||||||
|
|
||||||
--
|
|
||||||
2.33.1
|
|
||||||
|
|
||||||
|
|
||||||
From acdf8909f2bf65ca20e69ab1e6bc6854d54b333d Mon Sep 17 00:00:00 2001
|
|
||||||
From: "sor.alexei@meowr.ru" <sor.alexei@meowr.ru>
|
|
||||||
Date: Tue, 19 Mar 2019 15:13:38 +1030
|
|
||||||
Subject: [PATCH 08/16] Fixes -x argument, which is the default for
|
|
||||||
{gnome,mate}-terminal
|
|
||||||
|
|
||||||
Signed-off-by: Simon Lees <sflees@suse.de>
|
|
||||||
---
|
|
||||||
scripts/xdg-terminal.in | 34 +++++++++++++++++++++++-----------
|
|
||||||
1 file changed, 23 insertions(+), 11 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/scripts/xdg-terminal.in b/scripts/xdg-terminal.in
|
|
||||||
index 221487c..36a9833 100644
|
|
||||||
--- a/scripts/xdg-terminal.in
|
|
||||||
+++ b/scripts/xdg-terminal.in
|
|
||||||
@@ -65,11 +65,17 @@ terminal_gnome()
|
|
||||||
if [ x"$1" = x"" ]; then
|
|
||||||
$terminal_exec
|
|
||||||
else
|
|
||||||
- if [ x"$term_exec_arg" = x"" ]; then
|
|
||||||
- $terminal_exec "$1"
|
|
||||||
- else
|
|
||||||
- $terminal_exec "$term_exec_arg" "$1"
|
|
||||||
- fi
|
|
||||||
+ case "$term_exec_arg" in
|
|
||||||
+ "")
|
|
||||||
+ "$terminal_exec" "$1"
|
|
||||||
+ ;;
|
|
||||||
+ *-x*)
|
|
||||||
+ "$terminal_exec" "$term_exec_arg" sh -c "$1"
|
|
||||||
+ ;;
|
|
||||||
+ *)
|
|
||||||
+ "$terminal_exec" "$term_exec_arg" "$1"
|
|
||||||
+ ;;
|
|
||||||
+ esac
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $? -eq 0 ]; then
|
|
||||||
@@ -93,13 +99,19 @@ terminal_gsettings()
|
|
||||||
|
|
||||||
if [ -x "$terminal_exec" ]; then
|
|
||||||
if [ x"$1" = x"" ]; then
|
|
||||||
- $terminal_exec
|
|
||||||
+ "$terminal_exec"
|
|
||||||
else
|
|
||||||
- if [ x"$term_exec_arg" = x"" ]; then
|
|
||||||
- $terminal_exec "$1"
|
|
||||||
- else
|
|
||||||
- $terminal_exec "$term_exec_arg" "$1"
|
|
||||||
- fi
|
|
||||||
+ case "$term_exec_arg" in
|
|
||||||
+ "")
|
|
||||||
+ "$terminal_exec" "$1"
|
|
||||||
+ ;;
|
|
||||||
+ *-x*)
|
|
||||||
+ "$terminal_exec" "$term_exec_arg" sh -c "$1"
|
|
||||||
+ ;;
|
|
||||||
+ *)
|
|
||||||
+ "$terminal_exec" "$term_exec_arg" "$1"
|
|
||||||
+ ;;
|
|
||||||
+ esac
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $? -eq 0 ]; then
|
|
||||||
--
|
|
||||||
2.33.1
|
|
||||||
|
|
||||||
|
|
||||||
From 455d066182546b37984e6b9719bde2347bf6fa94 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Iain Lane <iain.lane@canonical.com>
|
|
||||||
Date: Tue, 2 Oct 2018 10:29:03 +0100
|
|
||||||
Subject: [PATCH 09/16] xdg-screensaver: Sanitise window name before sending it
|
|
||||||
over the bus
|
|
||||||
|
|
||||||
libdbus expects string arguments to be valid UTF-8. If they are not,
|
|
||||||
then it aborts, which causes our backgrounded command to terminate
|
|
||||||
abnormally.
|
|
||||||
|
|
||||||
Signed-off-by: Simon Lees <sflees@suse.de>
|
|
||||||
---
|
|
||||||
scripts/xdg-screensaver.in | 5 +++++
|
|
||||||
1 file changed, 5 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/scripts/xdg-screensaver.in b/scripts/xdg-screensaver.in
|
|
||||||
index 9e68196..ccb4307 100644
|
|
||||||
--- a/scripts/xdg-screensaver.in
|
|
||||||
+++ b/scripts/xdg-screensaver.in
|
|
||||||
@@ -468,6 +468,7 @@ screensaver_gnome_screensaver()
|
|
||||||
perl -e '
|
|
||||||
use strict;
|
|
||||||
use warnings;
|
|
||||||
+use Encode qw(decode);
|
|
||||||
use IO::File;
|
|
||||||
use Net::DBus;
|
|
||||||
use X11::Protocol;
|
|
||||||
@@ -489,6 +490,10 @@ while (1) {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
+# Replace any invalid unicode characters with U+FFFD, so we dont crash when we
|
|
||||||
+# pass them over to D-Bus
|
|
||||||
+$window_name = decode("utf8", $window_name, Encode::FB_DEFAULT);
|
|
||||||
+
|
|
||||||
# Inhibit idle detection (flags = 8) with window name and ID.
|
|
||||||
# We have no reason so just send the window name again.
|
|
||||||
my $bus = Net::DBus->session();
|
|
||||||
--
|
|
||||||
2.33.1
|
|
||||||
|
|
||||||
|
|
||||||
From 0801b7104c46ac2eff07bf8b867f7d45c74963c2 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Reuben Thomas <rrt@sc3d.org>
|
|
||||||
Date: Sun, 30 Oct 2016 06:21:53 +0000
|
|
||||||
Subject: [PATCH 10/16] xdg-su: fix some easy TODOs
|
|
||||||
|
|
||||||
Although xdg-su is not currently shipped, fix some trivial documentation
|
|
||||||
TODOs.
|
|
||||||
|
|
||||||
Signed-off-by: Simon Lees <sflees@suse.de>
|
|
||||||
---
|
|
||||||
TODO | 3 ---
|
|
||||||
scripts/desc/xdg-su.xml | 11 ++++++++++-
|
|
||||||
2 files changed, 10 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/TODO b/TODO
|
|
||||||
index 183ea6c..a4f3b17 100644
|
|
||||||
--- a/TODO
|
|
||||||
+++ b/TODO
|
|
||||||
@@ -16,9 +16,6 @@ General
|
|
||||||
* Add xdg-autostart
|
|
||||||
|
|
||||||
xdg-su:
|
|
||||||
-* The summary is incorrect, it suggests that it can only run things as
|
|
||||||
-root which is incorrect according to the main body of the document.
|
|
||||||
-* The -c option is listed in the synopsis, but not in options.
|
|
||||||
* It would be useful if it was possible to distinguish between a failure
|
|
||||||
because of a bad password or some other failure.
|
|
||||||
* use sudo style syntax, drop -c option
|
|
||||||
diff --git a/scripts/desc/xdg-su.xml b/scripts/desc/xdg-su.xml
|
|
||||||
index 53a0f32..b4e1b7e 100644
|
|
||||||
--- a/scripts/desc/xdg-su.xml
|
|
||||||
+++ b/scripts/desc/xdg-su.xml
|
|
||||||
@@ -30,7 +30,7 @@
|
|
||||||
|
|
||||||
<refnamediv>
|
|
||||||
<refname>xdg-su</refname>
|
|
||||||
- <refpurpose>run a GUI program as root after prompting for the root password</refpurpose>
|
|
||||||
+ <refpurpose>run a GUI program as another user (typically root) after prompting for that user's password</refpurpose>
|
|
||||||
</refnamediv>
|
|
||||||
|
|
||||||
<refsynopsisdiv>
|
|
||||||
@@ -67,6 +67,15 @@
|
|
||||||
<refsect1 id="options">
|
|
||||||
<title>Options</title>
|
|
||||||
<variablelist>
|
|
||||||
+ <varlistentry>
|
|
||||||
+ <term><option>-c <replaceable>command</replaceable></option></term>
|
|
||||||
+ <listitem>
|
|
||||||
+ <simpara>
|
|
||||||
+ the command to run. This argument is mandatory.
|
|
||||||
+ </simpara>
|
|
||||||
+ </listitem>
|
|
||||||
+ </varlistentry>
|
|
||||||
+
|
|
||||||
<varlistentry>
|
|
||||||
<term><option>-u <replaceable>user</replaceable></option></term>
|
|
||||||
<listitem>
|
|
||||||
--
|
|
||||||
2.33.1
|
|
||||||
|
|
||||||
|
|
||||||
From 15144f8abd0bfd7de23b18a282f539d1e9c79ef9 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Reuben Thomas <rrt@sc3d.org>
|
|
||||||
Date: Sun, 30 Oct 2016 06:12:45 +0000
|
|
||||||
Subject: [PATCH 11/16] xdg-open: fix comment typo
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
Also bump Rex Dieter’s copyright date
|
|
||||||
|
|
||||||
Signed-off-by: Simon Lees <sflees@suse.de>
|
|
||||||
---
|
|
||||||
scripts/xdg-open.in | 4 ++--
|
|
||||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/scripts/xdg-open.in b/scripts/xdg-open.in
|
|
||||||
index 09ef6d8..c38e1e0 100644
|
|
||||||
--- a/scripts/xdg-open.in
|
|
||||||
+++ b/scripts/xdg-open.in
|
|
||||||
@@ -7,7 +7,7 @@
|
|
||||||
# Refer to the usage() function below for usage.
|
|
||||||
#
|
|
||||||
# Copyright 2009-2010, Fathi Boudra <fabo@freedesktop.org>
|
|
||||||
-# Copyright 2009-2010, Rex Dieter <rdieter@fedoraproject.org>
|
|
||||||
+# Copyright 2009-2016, Rex Dieter <rdieter@fedoraproject.org>
|
|
||||||
# Copyright 2006, Kevin Krammer <kevin.krammer@gmx.at>
|
|
||||||
# Copyright 2006, Jeremy White <jwhite@codeweavers.com>
|
|
||||||
#
|
|
||||||
@@ -510,7 +510,7 @@ fi
|
|
||||||
|
|
||||||
DEBUG 2 "Selected DE $DE"
|
|
||||||
|
|
||||||
-# sanitize BROWSER (avoid caling ourselves in particular)
|
|
||||||
+# sanitize BROWSER (avoid calling ourselves in particular)
|
|
||||||
case "${BROWSER}" in
|
|
||||||
*:"xdg-open"|"xdg-open":*)
|
|
||||||
BROWSER=$(echo $BROWSER | sed -e 's|:xdg-open||g' -e 's|xdg-open:||g')
|
|
||||||
--
|
|
||||||
2.33.1
|
|
||||||
|
|
||||||
|
|
||||||
From 7f5349ea485fa9e0a4cb69dc645fbaf9ce3cec2e Mon Sep 17 00:00:00 2001
|
|
||||||
From: mvdlinde <linde@b1-systems.de>
|
|
||||||
Date: Sun, 3 Mar 2019 16:20:48 +0000
|
|
||||||
Subject: [PATCH 12/16] Enable cinnamon screensaver for xdg aware desktop
|
|
||||||
environments (eg lxqt)
|
|
||||||
|
|
||||||
---
|
|
||||||
scripts/xdg-screensaver.in | 2 ++
|
|
||||||
1 file changed, 2 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/scripts/xdg-screensaver.in b/scripts/xdg-screensaver.in
|
|
||||||
index 9e68196..bc5c4ee 100644
|
|
||||||
--- a/scripts/xdg-screensaver.in
|
|
||||||
+++ b/scripts/xdg-screensaver.in
|
|
||||||
@@ -887,6 +887,8 @@ xscreensaver-command -version 2> /dev/null | grep XScreenSaver > /dev/null && DE
|
|
||||||
dbus-send --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.GetNameOwner string:org.gnome.ScreenSaver > /dev/null 2>&1 && DE="gnome_screensaver"
|
|
||||||
# Consider "mate-screensaver" a separate DE
|
|
||||||
dbus-send --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.GetNameOwner string:org.mate.ScreenSaver > /dev/null 2>&1 && DE="mate_screensaver"
|
|
||||||
+# Consider "cinnamon-screensaver" a separate DE
|
|
||||||
+dbus-send --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.GetNameOwner string:org.cinnamon.ScreenSaver > /dev/null 2>&1 && DE="cinnamon"
|
|
||||||
# Consider "xautolock" a separate DE
|
|
||||||
xautolock -enable > /dev/null 2>&1 && DE="xautolock_screensaver"
|
|
||||||
|
|
||||||
--
|
|
||||||
2.33.1
|
|
||||||
|
|
||||||
|
|
||||||
From bfcefa162b1dcd6d62e193019969ff2f5ff331cf Mon Sep 17 00:00:00 2001
|
|
||||||
From: Cameron Fieber <cameron@fieber.ca>
|
|
||||||
Date: Mon, 25 Mar 2019 22:30:25 -0700
|
|
||||||
Subject: [PATCH 13/16] support digits in uri scheme regex
|
|
||||||
|
|
||||||
As per RFC 2396[1] a valid URI scheme may contain a digit:
|
|
||||||
|
|
||||||
scheme = alpha *( alpha | digit | + | - | . )
|
|
||||||
|
|
||||||
[1]: https://www.ietf.org/rfc/rfc2396.txt
|
|
||||||
---
|
|
||||||
scripts/xdg-open.in | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/scripts/xdg-open.in b/scripts/xdg-open.in
|
|
||||||
index c38e1e0..202f3e3 100644
|
|
||||||
--- a/scripts/xdg-open.in
|
|
||||||
+++ b/scripts/xdg-open.in
|
|
||||||
@@ -72,7 +72,7 @@ get_key()
|
|
||||||
is_file_url_or_path()
|
|
||||||
{
|
|
||||||
if echo "$1" | grep -q '^file://' \
|
|
||||||
- || ! echo "$1" | egrep -q '^[[:alpha:]+\.\-]+:'; then
|
|
||||||
+ || ! echo "$1" | egrep -q '^[[:alpha:]][[:alpha:][:digit:]+\.\-]*:'; then
|
|
||||||
return 0
|
|
||||||
else
|
|
||||||
return 1
|
|
||||||
--
|
|
||||||
2.33.1
|
|
||||||
|
|
||||||
|
|
||||||
From 0547886c0a7ae79145998495a6e3af6a1450d0c7 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Martin Puppe <dev@mpuppe.de>
|
|
||||||
Date: Sat, 13 Apr 2019 12:46:44 +0200
|
|
||||||
Subject: [PATCH 14/16] xdg-mime: return correct exit code for GNOME
|
|
||||||
|
|
||||||
If the desktop environment was GNOME and none of the commands for
|
|
||||||
detecting the MIME type of a file was available, xdg-mime used to return
|
|
||||||
exit code 0 even though it failed. The man page says it should return
|
|
||||||
exit code 3. This commit fixes the issue.
|
|
||||||
|
|
||||||
I have considered returning exit code 4 instead since that is what would
|
|
||||||
be returned if info_kde() or info_generic() fail to find a tool for MIME
|
|
||||||
type detection. But I have decided to implement the behavior as
|
|
||||||
specified in the man page.
|
|
||||||
|
|
||||||
The exit code of an if construct is 0 if no condition
|
|
||||||
tested true [^1]. The author of the original code probably was not aware
|
|
||||||
of this.
|
|
||||||
|
|
||||||
[^1]: https://www.gnu.org/software/bash/manual/html_node/Conditional-Constructs.html#Conditional-Constructs
|
|
||||||
---
|
|
||||||
scripts/xdg-mime.in | 2 ++
|
|
||||||
1 file changed, 2 insertions(+)
|
|
||||||
|
|
||||||
diff --git a/scripts/xdg-mime.in b/scripts/xdg-mime.in
|
|
||||||
index 0e567c7..034d0ef 100644
|
|
||||||
--- a/scripts/xdg-mime.in
|
|
||||||
+++ b/scripts/xdg-mime.in
|
|
||||||
@@ -84,6 +84,8 @@ info_gnome()
|
|
||||||
elif gnomevfs-info --help 2>/dev/null 1>&2; then
|
|
||||||
DEBUG 1 "Running gnomevfs-info \"$1\""
|
|
||||||
gnomevfs-info --slow-mime "$1" 2> /dev/null | grep "^MIME" | cut -d ":" -f 2 | sed s/"^ "//
|
|
||||||
+ else
|
|
||||||
+ exit_failure_operation_impossible "no method available for querying MIME type of '$filename'"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $? -eq 0 ]; then
|
|
||||||
--
|
|
||||||
2.33.1
|
|
||||||
|
|
||||||
|
|
||||||
From 9816ebb3e6fd9f23e993b8b7fcbd56f92d9c9197 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Andrea Tarocchi <andrea.tarocchi@gmail.com>
|
|
||||||
Date: Thu, 20 Feb 2020 22:01:04 +0100
|
|
||||||
Subject: [PATCH 15/16] fixed #166: xdg-open dose not search correctly in
|
|
||||||
directories with spaces in the name
|
|
||||||
|
|
||||||
---
|
|
||||||
scripts/xdg-mime.in | 2 +-
|
|
||||||
scripts/xdg-open.in | 2 +-
|
|
||||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/scripts/xdg-mime.in b/scripts/xdg-mime.in
|
|
||||||
index 034d0ef..612d2ce 100644
|
|
||||||
--- a/scripts/xdg-mime.in
|
|
||||||
+++ b/scripts/xdg-mime.in
|
|
||||||
@@ -307,7 +307,7 @@ search_desktop_file()
|
|
||||||
|
|
||||||
grep -l "$MIME;" "$dir/"*.desktop 2>/dev/null
|
|
||||||
|
|
||||||
- for f in $dir/*/; do
|
|
||||||
+ for f in "$dir/"*/; do
|
|
||||||
[ -d "$f" ] && search_desktop_file "$MIME" "$f"
|
|
||||||
done
|
|
||||||
}
|
|
||||||
diff --git a/scripts/xdg-open.in b/scripts/xdg-open.in
|
|
||||||
index 202f3e3..8de839a 100644
|
|
||||||
--- a/scripts/xdg-open.in
|
|
||||||
+++ b/scripts/xdg-open.in
|
|
||||||
@@ -328,7 +328,7 @@ search_desktop_file()
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
- for d in $dir/*/; do
|
|
||||||
+ for d in "$dir/"*/; do
|
|
||||||
[ -d "$d" ] && search_desktop_file "$default" "$d" "$target"
|
|
||||||
done
|
|
||||||
}
|
|
||||||
--
|
|
||||||
2.33.1
|
|
||||||
|
|
||||||
|
|
||||||
From d11b33ec7f24cfb1546f6b459611d440013bdc72 Mon Sep 17 00:00:00 2001
|
|
||||||
From: =?UTF-8?q?M=C3=A9ven=20Car?= <meven.car@enioka.com>
|
|
||||||
Date: Wed, 21 Oct 2020 16:58:20 +0200
|
|
||||||
Subject: [PATCH 16/16] Fix xdg-settings support for default-web-browser for
|
|
||||||
Plasma 5.19+
|
|
||||||
|
|
||||||
---
|
|
||||||
scripts/xdg-settings.in | 18 +++++++++++++++---
|
|
||||||
1 file changed, 15 insertions(+), 3 deletions(-)
|
|
||||||
mode change 100644 => 100755 scripts/xdg-settings.in
|
|
||||||
|
|
||||||
diff --git a/scripts/xdg-settings.in b/scripts/xdg-settings.in
|
|
||||||
old mode 100644
|
|
||||||
new mode 100755
|
|
||||||
index 3781de8..ab18d3a
|
|
||||||
--- a/scripts/xdg-settings.in
|
|
||||||
+++ b/scripts/xdg-settings.in
|
|
||||||
@@ -130,7 +130,7 @@ set_browser_mime()
|
|
||||||
fix_local_desktop_file "$1" "$MIME" || return
|
|
||||||
mkdir -p "${XDG_DATA_HOME:-$HOME/.local/share}/applications"
|
|
||||||
xdg-mime default "$1" "$MIME" || return
|
|
||||||
- if [ x"`get_browser_mime`" != x"$1" ]; then
|
|
||||||
+ if [ x"`get_browser_mime $MIME`" != x"$1" ]; then
|
|
||||||
# Put back the original value
|
|
||||||
xdg-mime default "$orig" "$MIME"
|
|
||||||
exit_failure_operation_failed
|
|
||||||
@@ -203,7 +203,13 @@ resolve_kde_browser_desktop()
|
|
||||||
|
|
||||||
read_kde_browser()
|
|
||||||
{
|
|
||||||
- read_kde_config kdeglobals General BrowserApplication
|
|
||||||
+ ret=`read_kde_config kdeglobals General BrowserApplication`
|
|
||||||
+ if [ -z "$ret" ]; then
|
|
||||||
+ # since Plasma >= 5.19
|
|
||||||
+ ret=`get_browser_mime "x-scheme-handler/http"`
|
|
||||||
+ fi
|
|
||||||
+
|
|
||||||
+ echo $ret
|
|
||||||
}
|
|
||||||
|
|
||||||
get_browser_kde()
|
|
||||||
@@ -252,7 +258,13 @@ check_browser_kde()
|
|
||||||
|
|
||||||
set_browser_kde()
|
|
||||||
{
|
|
||||||
- set_browser_mime "$1" || return
|
|
||||||
+ # Set the default browser.
|
|
||||||
+ for protocol in http https; do
|
|
||||||
+ set_browser_mime "$1" "x-scheme-handler/$protocol" || return
|
|
||||||
+ done
|
|
||||||
+
|
|
||||||
+ # Plasma < 5.19
|
|
||||||
+ set_browser_mime "$1" "text/html" || return
|
|
||||||
if [ x"${KDE_SESSION_VERSION}" = x"5" ]; then
|
|
||||||
kwriteconfig5 --file kdeglobals --group General --key BrowserApplication "$1"
|
|
||||||
else
|
|
||||||
--
|
|
||||||
2.33.1
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user