about summary refs log tree commit diff
diff options
context:
space:
mode:
authorLuflosi <luflosi@luflosi.de>2019-12-02 23:57:38 +0100
committerLuflosi <luflosi@luflosi.de>2019-12-03 02:01:37 +0100
commitbce914acba5ee6ccdfe65fd55fa730b6d4811b5c (patch)
tree1d0fa565e9f9f93ccfa26aa2113075923d173f11
parentae323f8566f01ae0579d36f549172c6638743cf4 (diff)
downloadnixlib-bce914acba5ee6ccdfe65fd55fa730b6d4811b5c.tar
nixlib-bce914acba5ee6ccdfe65fd55fa730b6d4811b5c.tar.gz
nixlib-bce914acba5ee6ccdfe65fd55fa730b6d4811b5c.tar.bz2
nixlib-bce914acba5ee6ccdfe65fd55fa730b6d4811b5c.tar.lz
nixlib-bce914acba5ee6ccdfe65fd55fa730b6d4811b5c.tar.xz
nixlib-bce914acba5ee6ccdfe65fd55fa730b6d4811b5c.tar.zst
nixlib-bce914acba5ee6ccdfe65fd55fa730b6d4811b5c.zip
kitty: fix loading of library
When trying to play a sound, kitty prints an error message because it cannot find `libcanberra.so`:
```
Failed to load libcanberra.so, cannot play beep sound, with error: libcanberra.so.0.2.5: cannot open shared object file: No such file or directory
```
This is fixed by patching the path to the library.
-rw-r--r--pkgs/applications/misc/kitty/default.nix1
-rw-r--r--pkgs/applications/misc/kitty/fix-paths.patch10
2 files changed, 11 insertions, 0 deletions
diff --git a/pkgs/applications/misc/kitty/default.nix b/pkgs/applications/misc/kitty/default.nix
index cd04fdb25740..d5f5fceb0398 100644
--- a/pkgs/applications/misc/kitty/default.nix
+++ b/pkgs/applications/misc/kitty/default.nix
@@ -67,6 +67,7 @@ buildPythonApplication rec {
     (substituteAll {
       src = ./fix-paths.patch;
       libstartup_notification = "${libstartup_notification}/lib/libstartup-notification-1.so";
+      libcanberra = "${libcanberra}/lib/libcanberra.so";
     })
   ] ++ stdenv.lib.optionals stdenv.isDarwin [
     ./no-lto.patch
diff --git a/pkgs/applications/misc/kitty/fix-paths.patch b/pkgs/applications/misc/kitty/fix-paths.patch
index 704605813071..65c78d22a829 100644
--- a/pkgs/applications/misc/kitty/fix-paths.patch
+++ b/pkgs/applications/misc/kitty/fix-paths.patch
@@ -8,6 +8,16 @@
 +    static const char* libname = "@libstartup_notification@";
      // some installs are missing the .so symlink, so try the full name
      static const char* libname2 = "libstartup-notification-1.so.0";
+     static const char* libname3 = "libstartup-notification-1.so.0.0.0";
+@@ -105,7 +105,7 @@ load_libcanberra_functions(void) {
+ 
+ static void
+ load_libcanberra(void) {
+-    static const char* libname = "libcanberra.so";
++    static const char* libname = "@libcanberra@";
+     // some installs are missing the .so symlink, so try the full name
+     static const char* libname2 = "libcanberra.so.0";
+     static const char* libname3 = "libcanberra.so.0.2.5";
 
 --- a/docs/Makefile
 +++ b/docs/Makefile