diff options
author | Guillaume Girol <symphorien@users.noreply.github.com> | 2022-11-06 10:22:24 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-11-06 10:22:24 +0000 |
commit | 256e0b03272b3b075f249e9fff7d98fb16abe9c0 (patch) | |
tree | cf003338618f7c6c8a4f69d02d0afc5a23be06d2 | |
parent | ef98abf6eb5556d2b9514540b5e6d25bb84fe9d1 (diff) | |
parent | 01b794ca75db6a964201c92659f2c04d159cf4a7 (diff) |
Merge pull request #199765 from hqurve/junction
junction: 1.5.0 -> 1.6
-rw-r--r-- | pkgs/applications/misc/junction/default.nix | 24 |
1 files changed, 20 insertions, 4 deletions
diff --git a/pkgs/applications/misc/junction/default.nix b/pkgs/applications/misc/junction/default.nix index 34002c547162..c1d3ff263c0d 100644 --- a/pkgs/applications/misc/junction/default.nix +++ b/pkgs/applications/misc/junction/default.nix @@ -2,6 +2,7 @@ , stdenv , fetchFromGitHub , appstream-glib +, blueprint-compiler , desktop-file-utils , gobject-introspection , meson @@ -16,17 +17,19 @@ 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 @@ -42,12 +45,25 @@ stdenv.mkDerivation rec { 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 gjs" - substituteInPlace $out/bin/re.sonny.Junction --replace "/usr/bin/env -S gjs" "/usr/bin/gjs" + # 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; |