summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwebstrand <webstrand@gmail.com>2021-05-27 17:39:56 -0400
committerSebastian Pipping <sping@gentoo.org>2021-05-28 00:00:23 +0200
commite02a6ec3dcc4ef6deb70955dd3aa9a4c3b43ba03 (patch)
tree4c7c6d34f6ef266408057bc8ff5d981a540bd212 /app-editors
parentsys-kernel/linux-headers: EAPI 7 (diff)
downloadgentoo-e02a6ec3dcc4ef6deb70955dd3aa9a4c3b43ba03.tar.gz
gentoo-e02a6ec3dcc4ef6deb70955dd3aa9a4c3b43ba03.tar.bz2
gentoo-e02a6ec3dcc4ef6deb70955dd3aa9a4c3b43ba03.zip
app-editors/sublime-text: 4_p4107
Signed-off-by: webstrand <webstrand@gmail.com> Signed-off-by: Sebastian Pipping <sping@gentoo.org>
Diffstat (limited to 'app-editors')
-rw-r--r--app-editors/sublime-text/Manifest1
-rw-r--r--app-editors/sublime-text/files/sublime-text-4_p4107-remove-deprecated-key-onlyshowin-from-launcher.patch31
-rw-r--r--app-editors/sublime-text/files/sublime-text-4_p4107-set-explicit-startupwmclass-in-launcher.patch27
-rw-r--r--app-editors/sublime-text/sublime-text-4_p4107.ebuild72
4 files changed, 131 insertions, 0 deletions
diff --git a/app-editors/sublime-text/Manifest b/app-editors/sublime-text/Manifest
index 173ee9fd6007..d475f09e7e4f 100644
--- a/app-editors/sublime-text/Manifest
+++ b/app-editors/sublime-text/Manifest
@@ -1,2 +1,3 @@
DIST sublime_text_3_build_3211_x32.tar.bz2 13806489 BLAKE2B 1e07df2fc9fb9fb60a6fbfe27a3d657ff80ef46ae91967fa384cfc84bfdc2b5952aea8dbfd9ff015f669b148c1a302cbe01521a72b584abccd51efdab51ac0d8 SHA512 4d19947459046407316382d187ea6fa4cff9b7d3e7ae3c46667d691b6ca425a1f1dfc8599a26cf61b970290a58924a3b605e111ff2802ed124683872c1802803
DIST sublime_text_3_build_3211_x64.tar.bz2 13677324 BLAKE2B e2ac54c1e8ab90c0fcefb4baf225b02d13a3405e846f08163773ed52c6278f8e89a7b13c15e6c2d6241139d58be9c2c5a1201abb04a3cd68efdffc723075c5af SHA512 a6a068119eff95c5360e9ccbe1d845e7a93e4ad13b3659073752a7bd0e87f4691555820185514875649e677a4e8702e2338f74f5584fc80f69c16b323685d6f1
+DIST sublime_text_build_4107_x64.tar.xz 17096632 BLAKE2B 37c1839ef1edecb1f3017e4d99d2b8b0bf5c0aa1490495fe19a48cf38bb436e94913572a4dd5ad5f84e6b5445b6a9a2df35fec607beb0b520471b2dde7ef63fd SHA512 552051b34c612aa6ff53ef6275488467061221715de054dc1e657519c82899e24df1a9f8000086b68c5c1c6e0c98341c641f19a2d97c880efb25aa93ad82f8aa
diff --git a/app-editors/sublime-text/files/sublime-text-4_p4107-remove-deprecated-key-onlyshowin-from-launcher.patch b/app-editors/sublime-text/files/sublime-text-4_p4107-remove-deprecated-key-onlyshowin-from-launcher.patch
new file mode 100644
index 000000000000..04dfad334e2d
--- /dev/null
+++ b/app-editors/sublime-text/files/sublime-text-4_p4107-remove-deprecated-key-onlyshowin-from-launcher.patch
@@ -0,0 +1,31 @@
+From 9df21c9ec00ac34174b443cc7cd8c4053b98eb00 Mon Sep 17 00:00:00 2001
+From: webstrand <webstrand@gmail.com>
+Date: Thu, 27 May 2021 17:08:03 -0400
+Subject: [PATCH 1/2] remove deprecated key OnlyShowIn from launcher
+
+Silences a QA notice that the key "OnlyShowIn" in group
+"Desktop Action new-file" and "Desktop Action new-window" is deprecated.
+
+https://bugs.freedesktop.org/show_bug.cgi?id=66712 No replacement or
+alternative is provided, the key is simply ignored.
+---
+ sublime_text.desktop | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/sublime_text.desktop b/sublime_text.desktop
+index 7407709..b171254 100644
+--- a/sublime_text.desktop
++++ b/sublime_text.desktop
+@@ -15,9 +15,7 @@ Actions=new-window;new-file;
+ [Desktop Action new-window]
+ Name=New Window
+ Exec=/opt/sublime_text/sublime_text --launch-or-new-window
+-OnlyShowIn=Unity;
+
+ [Desktop Action new-file]
+ Name=New File
+ Exec=/opt/sublime_text/sublime_text --command new_file
+-OnlyShowIn=Unity;
+--
+2.31.1
+
diff --git a/app-editors/sublime-text/files/sublime-text-4_p4107-set-explicit-startupwmclass-in-launcher.patch b/app-editors/sublime-text/files/sublime-text-4_p4107-set-explicit-startupwmclass-in-launcher.patch
new file mode 100644
index 000000000000..09e835b587a7
--- /dev/null
+++ b/app-editors/sublime-text/files/sublime-text-4_p4107-set-explicit-startupwmclass-in-launcher.patch
@@ -0,0 +1,27 @@
+From 0eff5450cba9514559eefd8c79e98fb6b8134b68 Mon Sep 17 00:00:00 2001
+From: webstrand <webstrand@gmail.com>
+Date: Thu, 27 May 2021 17:09:21 -0400
+Subject: [PATCH 2/2] Set explicit StartupWMClass in launcher
+
+Otherwise startup notification and grouping implicitly use the name of
+the .desktop file to match against the actual WM_CLASS of windows
+belonging to the application.
+---
+ sublime_text.desktop | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/sublime_text.desktop b/sublime_text.desktop
+index b171254..5c812a9 100644
+--- a/sublime_text.desktop
++++ b/sublime_text.desktop
+@@ -10,6 +10,7 @@ MimeType=text/plain;
+ Icon=sublime-text
+ Categories=TextEditor;Development;
+ StartupNotify=true
++StartupWMClass=Sublime_text
+ Actions=new-window;new-file;
+
+ [Desktop Action new-window]
+--
+2.31.1
+
diff --git a/app-editors/sublime-text/sublime-text-4_p4107.ebuild b/app-editors/sublime-text/sublime-text-4_p4107.ebuild
new file mode 100644
index 000000000000..cd603261aae8
--- /dev/null
+++ b/app-editors/sublime-text/sublime-text-4_p4107.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit desktop xdg-utils wrapper
+
+# get the major version from PV
+MY_PV=$(ver_cut 3)
+MY_PN=${PN/-/_}
+
+DESCRIPTION="Sophisticated text editor for code, markup and prose"
+HOMEPAGE="https://www.sublimetext.com"
+SRC_URI="
+ amd64? ( https://download.sublimetext.com/sublime_text_build_${MY_PV}_x64.tar.xz )"
+
+LICENSE="Sublime"
+SLOT="0"
+KEYWORDS="~amd64"
+IUSE="dbus"
+RESTRICT="bindist mirror strip"
+
+RDEPEND="
+ dev-libs/glib:2
+ x11-libs/gtk+:3
+ x11-libs/libX11
+ dbus? ( sys-apps/dbus )"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-4_p4107-remove-deprecated-key-onlyshowin-from-launcher.patch
+ "${FILESDIR}"/${PN}-4_p4107-set-explicit-startupwmclass-in-launcher.patch
+)
+
+QA_PREBUILT="*"
+S="${WORKDIR}/${MY_PN}"
+
+# Sublime bundles the kitchen sink, which includes python and other assorted
+# modules. Do not try to unbundle these because you are guaranteed to fail.
+
+src_install() {
+ insinto /opt/${MY_PN}
+ doins -r Packages Lib Icon # /Icon is used at runtime by the application
+ doins changelog.txt libcrypto.so.1.1 libssl.so.1.1 sublime_text.desktop
+
+ # sublime_merge looks for /opt/sublime_text/sublime_text
+ exeinto /opt/${MY_PN}
+ doexe crash_reporter plugin_host-3.3 plugin_host-3.8 sublime_text
+
+ # sublime-text sets its WM_CLASS based on its argv[0]. A wrapper script is
+ # used instead of a symlink to preserve a consistent WM_CLASS regardless of
+ # how the application is launched. This causes the WM_CLASS to be
+ # "sublime_text" which matches the .desktop entry.
+ make_wrapper subl "/opt/${MY_PN}/sublime_text --fwdargv0 \"\$0\""
+ domenu sublime_text.desktop
+
+ local size
+ for size in 16 32 48 128 256; do
+ doicon --size "${size}" Icon/${size}x${size}/${PN}.png
+ done
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+ elog 'Sublime Text 4'"'"'s window class changes from WM_CLASS="subl" to'
+ elog 'WM_CLASS="sublime_text" matching other distributions.'
+}