Merge pull request #233903

authored by piegames and committed by GitHub b9fd231d 45ed0820

+123
+14
pkgs/desktops/gnome/extensions/extensionOverrides.nix
··· 19 19 , smartmontools 20 20 , substituteAll 21 21 , touchegg 22 + , util-linux 22 23 , vte 23 24 , wrapGAppsHook 25 + , xdg-utils 24 26 , xprop 25 27 }: 26 28 let ··· 92 94 substituteInPlace $file --replace "gjs" "${gjs}/bin/gjs" 93 95 done 94 96 ''; 97 + })) 98 + 99 + (patchExtension "gtk4-ding@smedius.gitlab.com" (old: { 100 + patches = [ 101 + (substituteAll { 102 + inherit gjs util-linux xdg-utils; 103 + util_linux = util-linux; 104 + xdg_utils = xdg-utils; 105 + src = ./extensionOverridesPatches/gtk4-ding_at_smedius.gitlab.com.patch; 106 + nautilus_gsettings_path = "${glib.getSchemaPath gnome.nautilus}"; 107 + }) 108 + ]; 95 109 })) 96 110 97 111 (patchExtension "pano@elhan.io" (old: {
+109
pkgs/desktops/gnome/extensions/extensionOverridesPatches/gtk4-ding_at_smedius.gitlab.com.patch
··· 1 + diff --git a/app/createThumbnail.js b/app/createThumbnail.js 2 + index ebe5213..9f67873 100755 3 + --- a/app/createThumbnail.js 4 + +++ b/app/createThumbnail.js 5 + @@ -1,4 +1,4 @@ 6 + -#!/usr/bin/gjs 7 + +#!@gjs@/bin/gjs 8 + 9 + /* DING: Desktop Icons New Generation for GNOME Shell 10 + * 11 + diff --git a/app/ding.js b/app/ding.js 12 + index b200be4..3ce05ef 100755 13 + --- a/app/ding.js 14 + +++ b/app/ding.js 15 + @@ -1,4 +1,4 @@ 16 + -#!/usr/bin/env gjs 17 + +#!@gjs@/bin/gjs 18 + 19 + /* DING: Desktop Icons New Generation for GNOME Shell 20 + * 21 + diff --git a/app/fileItemMenu.js b/app/fileItemMenu.js 22 + index cadca48..9632ecc 100644 23 + --- a/app/fileItemMenu.js 24 + +++ b/app/fileItemMenu.js 25 + @@ -683,7 +683,7 @@ var FileItemMenu = class { 26 + return; 27 + } 28 + let xdgEmailCommand = []; 29 + - xdgEmailCommand.push('xdg-email'); 30 + + xdgEmailCommand.push('@xdg_utils@/bin/xdg-email'); 31 + for (let fileItem of this._desktopManager.getCurrentSelection(false)) { 32 + fileItem.unsetSelected(); 33 + xdgEmailCommand.push('--attach'); 34 + diff --git a/app/preferences.js b/app/preferences.js 35 + index c89271c..29f0db8 100644 36 + --- a/app/preferences.js 37 + +++ b/app/preferences.js 38 + @@ -31,6 +31,7 @@ var Preferences = class { 39 + this._extensionPath = Data.codePath; 40 + this._Enums = Data.Enums; 41 + let schemaSource = GioSSS.get_default(); 42 + + const schemaSourceNautilus = Gio.SettingsSchemaSource.new_from_directory('@nautilus_gsettings_path@', Gio.SettingsSchemaSource.get_default(), true); 43 + this._desktopManager = null; 44 + 45 + // Gtk 46 + @@ -38,7 +39,7 @@ var Preferences = class { 47 + this.gtkSettings = new Gio.Settings({ settings_schema: schemaGtk }); 48 + 49 + // Gnome Files 50 + - let schemaObj = schemaSource.lookup(this._Enums.SCHEMA_NAUTILUS, true); 51 + + let schemaObj = schemaSourceNautilus.lookup(this._Enums.SCHEMA_NAUTILUS, true); 52 + if (!schemaObj) { 53 + this.nautilusSettings = null; 54 + this.CLICK_POLICY_SINGLE = false; 55 + @@ -47,7 +48,7 @@ var Preferences = class { 56 + } 57 + 58 + // Compression 59 + - const compressionSchema = schemaSource.lookup(this._Enums.SCHEMA_NAUTILUS_COMPRESSION, true); 60 + + const compressionSchema = schemaSourceNautilus.lookup(this._Enums.SCHEMA_NAUTILUS_COMPRESSION, true); 61 + if (!compressionSchema) 62 + this.nautilusCompression = null; 63 + else 64 + diff --git a/app/thumbnailapp.js b/app/thumbnailapp.js 65 + index b22bbe0..c5c7711 100755 66 + --- a/app/thumbnailapp.js 67 + +++ b/app/thumbnailapp.js 68 + @@ -1,4 +1,4 @@ 69 + -#!/usr/bin/env gjs 70 + +#!@gjs@/bin/gjs 71 + 72 + /* DING: Desktop Icons New Generation for GNOME Shell 73 + * 74 + diff --git a/extension.js b/extension.js 75 + index 2e5bcaa..4eaa108 100644 76 + --- a/extension.js 77 + +++ b/extension.js 78 + @@ -373,7 +373,7 @@ function getDesktopGeometry() { 79 + async function doKillAllOldDesktopProcesses() { 80 + const procFolder = Gio.File.new_for_path('/proc'); 81 + const processes = await FileUtils.enumerateDir(procFolder); 82 + - const thisPath = `gjs ${GLib.build_filenamev([ 83 + + const thisPath = `@gjs@/bin/gjs ${GLib.build_filenamev([ 84 + ExtensionUtils.getCurrentExtension().path, 85 + 'app', 86 + 'ding.js', 87 + @@ -397,7 +397,7 @@ async function doKillAllOldDesktopProcesses() { 88 + } 89 + 90 + if (contents.startsWith(thisPath)) { 91 + - let proc = new Gio.Subprocess({ argv: ['/bin/kill', filename] }); 92 + + let proc = new Gio.Subprocess({ argv: ['@util_linux@/bin/kill', filename] }); 93 + proc.init(null); 94 + print(`Killing old DING process ${filename}`); 95 + await proc.wait_async_promise(null); 96 + diff --git a/prefs.js b/prefs.js 97 + index 1ad0cad..d830f11 100644 98 + --- a/prefs.js 99 + +++ b/prefs.js 100 + @@ -46,7 +46,8 @@ function fillPreferencesWindow(window) { 101 + let schemaSource = GioSSS.get_default(); 102 + let schemaGtk = schemaSource.lookup(Enums.SCHEMA_GTK, true); 103 + let gtkSettings = new Gio.Settings({ settings_schema: schemaGtk }); 104 + - let schemaNautilus = schemaSource.lookup(Enums.SCHEMA_NAUTILUS, true); 105 + + const schemaSourceNautilus = Gio.SettingsSchemaSource.new_from_directory('@nautilus_gsettings_path@', Gio.SettingsSchemaSource.get_default(), true); 106 + + let schemaNautilus = schemaSourceNautilus.lookup(Enums.SCHEMA_NAUTILUS, true); 107 + let nautilusSettings; 108 + if (!schemaNautilus) 109 + nautilusSettings = null;