Subject: [bug#70282] [PATCH 1/2] gnu: gnome-shell: Wrap d-bus services.

From: Dariqq <[email-masked]>
Date: Tue, 9 Apr 2024 15:35:11 +0000

Hi,

On 08.04.24 18:54, Liliana Marie Prikler wrote:

>> new file mode 100644 index 0000000000..67ed6beadb --- /dev/null +++
>> b/gnu/packages/patches/gnome-shell-wrappable-dbus-services.patch @@
>> -0,0 +1,59 @@ +Retrieved from NixOS: 
>> https://github.com/NixOS/nixpkgs/blob/nixos-23.05/pkgs/desktops/gnome/core/gnome-shell/wrap-services.patch
>>
>> 
+---
>> +diff --git a/js/dbusServices/dbus-service.in
>> b/js/dbusServices/dbus- service.in +old mode 100644 +new mode
>> 100755 +index 524166102..6d0722a1c +---
>> a/js/dbusServices/dbus-service.in ++++
>> b/js/dbusServices/dbus-service.in +@@ -1,3 +1,9 @@ ++#!@gjs@ ++ 
>> ++// gjs determines the package name from argv[0], which is .*- 
>> wrapped ++// so we need to override it to the original one. 
>> ++imports.package._findEffectiveEntryPointName = () => '@service@' 
>> ++
> Is there no other way to specify the entry point?

If it is just about the name in argv[0] what about creating a *-wrapper
instead and leaving the original file untouched rather than the wrapper
replacing the original file?

One quick way would be to rename the wrapper script and original file 
after wrap-program is called, fix the path in the wrapper script and 
adjust the dbus service file to call the *-wrapper instead.

Have a nice day.