mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-22 13:41:26 +00:00
flatpak: Don't hardcode flatpak binary path in launchers
The hardcoded flatpak path breaks all installed applications when flatpak is updated. fixes: https://github.com/NixOS/nixpkgs/issues/43581
This commit is contained in:
parent
3af85571bf
commit
e5e91efa4c
|
@ -24,6 +24,7 @@ in stdenv.mkDerivation rec {
|
|||
})
|
||||
# patch taken from gtk_doc
|
||||
./respect-xml-catalog-files-var.patch
|
||||
./use-flatpak-from-path.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
|
|
|
@ -0,0 +1,48 @@
|
|||
--- a/common/flatpak-dir.c
|
||||
+++ b/common/flatpak-dir.c
|
||||
@@ -5467,7 +5467,7 @@ export_desktop_file (const char *app,
|
||||
|
||||
new_exec = g_string_new ("");
|
||||
g_string_append_printf (new_exec,
|
||||
- FLATPAK_BINDIR "/flatpak run --branch=%s --arch=%s",
|
||||
+ "flatpak run --branch=%s --arch=%s",
|
||||
escaped_branch,
|
||||
escaped_arch);
|
||||
|
||||
@@ -6644,8 +6644,8 @@ flatpak_dir_deploy (FlatpakDir *self,
|
||||
error))
|
||||
return FALSE;
|
||||
|
||||
- bin_data = g_strdup_printf ("#!/bin/sh\nexec %s/flatpak run --branch=%s --arch=%s %s \"$@\"\n",
|
||||
- FLATPAK_BINDIR, escaped_branch, escaped_arch, escaped_app);
|
||||
+ bin_data = g_strdup_printf ("#!/bin/sh\nexec flatpak run --branch=%s --arch=%s %s \"$@\"\n",
|
||||
+ escaped_branch, escaped_arch, escaped_app);
|
||||
if (!g_file_replace_contents (wrapper, bin_data, strlen (bin_data), NULL, FALSE,
|
||||
G_FILE_CREATE_REPLACE_DESTINATION, NULL, cancellable, error))
|
||||
return FALSE;
|
||||
diff --git a/tests/test-bundle.sh b/tests/test-bundle.sh
|
||||
index 6937b041..01f8add7 100755
|
||||
--- a/tests/test-bundle.sh
|
||||
+++ b/tests/test-bundle.sh
|
||||
@@ -59,7 +59,7 @@ assert_has_dir $FL_DIR/app/org.test.Hello/$ARCH/master/active/files
|
||||
assert_has_dir $FL_DIR/app/org.test.Hello/$ARCH/master/active/export
|
||||
assert_has_file $FL_DIR/exports/share/applications/org.test.Hello.desktop
|
||||
# Ensure Exec key is rewritten
|
||||
-assert_file_has_content $FL_DIR/exports/share/applications/org.test.Hello.desktop "^Exec=.*/flatpak run --branch=master --arch=$ARCH --command=hello.sh org.test.Hello$"
|
||||
+assert_file_has_content $FL_DIR/exports/share/applications/org.test.Hello.desktop "^Exec=flatpak run --branch=master --arch=$ARCH --command=hello.sh org.test.Hello$"
|
||||
assert_has_file $FL_DIR/exports/share/icons/hicolor/64x64/apps/org.test.Hello.png
|
||||
assert_has_file $FL_DIR/exports/share/icons/HighContrast/64x64/apps/org.test.Hello.png
|
||||
|
||||
diff --git a/tests/test-run.sh b/tests/test-run.sh
|
||||
index 9d83d82e..234e4ec6 100755
|
||||
--- a/tests/test-run.sh
|
||||
+++ b/tests/test-run.sh
|
||||
@@ -42,7 +42,7 @@ assert_has_dir $FL_DIR/app/org.test.Hello/$ARCH/master/active/files
|
||||
assert_has_dir $FL_DIR/app/org.test.Hello/$ARCH/master/active/export
|
||||
assert_has_file $FL_DIR/exports/share/applications/org.test.Hello.desktop
|
||||
# Ensure Exec key is rewritten
|
||||
-assert_file_has_content $FL_DIR/exports/share/applications/org.test.Hello.desktop "^Exec=.*/flatpak run --branch=master --arch=$ARCH --command=hello.sh org.test.Hello$"
|
||||
+assert_file_has_content $FL_DIR/exports/share/applications/org.test.Hello.desktop "^Exec=flatpak run --branch=master --arch=$ARCH --command=hello.sh org.test.Hello$"
|
||||
assert_has_file $FL_DIR/exports/share/icons/hicolor/64x64/apps/org.test.Hello.png
|
||||
assert_not_has_file $FL_DIR/exports/share/icons/hicolor/64x64/apps/dont-export.png
|
||||
assert_has_file $FL_DIR/exports/share/icons/HighContrast/64x64/apps/org.test.Hello.png
|
Loading…
Reference in a new issue