anchor.diff:  
   stdenv.mkDerivation rec {
     pname = "junction";
  -  version = "1.5.0";
  +  version = "1.6";
   
     src = fetchFromGitHub {
       owner = "sonnyp";
       repo = "junction";
       rev = "v${version}";
  -    sha256 = "sha256-jS4SHh1BB8jk/4EP070X44C4n3GjyCz8ozgK8v5lbqc=";
  +    sha256 = "sha256-95lKap0VKLxX5Vax2tK0cAcJ/XgQddoN46tXHo+MtYc=";
  +    fetchSubmodules = true;
     };
   
     nativeBuildInputs = [
       appstream-glib
  +    blueprint-compiler
       desktop-file-utils
       gobject-introspection
       meson
  
positive.code: , stdenv
  , fetchFromGitHub
  , appstream-glib
  , desktop-file-utils
  , gobject-introspection
  , meson
  
negative.code:     libportal-gtk4
    ];
  
    postPatch = ''
      # gjs uses the invocation name to add gresource files
      # - https://gitlab.gnome.org/GNOME/gjs/-/blob/6aca7b50785fa1638f144b17060870d721e3f65a/modules/script/package.js#L159
      # - https://gitlab.gnome.org/GNOME/gjs/-/blob/6aca7b50785fa1638f144b17060870d721e3f65a/modules/script/package.js#L37
      # To work around this, we manually set the the name as done in foliate
      # - https://github.com/NixOS/nixpkgs/blob/3bacde6273b09a21a8ccfba15586fb165078fb62/pkgs/applications/office/foliate/default.nix#L23
      sed -i "1 a imports.package._findEffectiveEntryPointName = () => 're.sonny.Junction';" src/bin.js
  
      # /usr/bin/env is not accessible in build environment
      substituteInPlace troll/gjspack/bin/gjspack --replace "/usr/bin/env -S gjs" "${gjs}/bin/gjs"
    '';
  
    postInstall = ''
      # autoPatchShebangs does not like "/usr/bin/env -S <environment-setting> gjs -m"
      sed -i "1s|.*|#!/usr/bin/gjs -m|" $out/bin/re.sonny.Junction
    '';
  
    meta = with lib; {
      mainProgram = "re.sonny.Junction";
      description = "Choose the application to open files and links";
      homepage = "https://apps.gnome.org/en/app/re.sonny.Junction/";
      license = licenses.gpl3Plus;
  