diff options
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/applications/terminal-emulators/wayst')
-rw-r--r-- | infra/libkookie/nixpkgs/pkgs/applications/terminal-emulators/wayst/default.nix | 91 | ||||
-rw-r--r-- | infra/libkookie/nixpkgs/pkgs/applications/terminal-emulators/wayst/utf8proc.patch | 24 |
2 files changed, 115 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/applications/terminal-emulators/wayst/default.nix b/infra/libkookie/nixpkgs/pkgs/applications/terminal-emulators/wayst/default.nix new file mode 100644 index 000000000000..99ee326aebf2 --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/applications/terminal-emulators/wayst/default.nix @@ -0,0 +1,91 @@ +{ stdenv +, lib +, fetchFromGitHub +, pkgconfig +, freetype +, fontconfig +, libGL +, libX11 +, libXrandr +, libxcb +, libxkbcommon +, utf8proc +, wayland + +, libnotify +, xdg_utils +, makeDesktopItem +}: + +let + desktopItem = makeDesktopItem { + desktopName = "Wayst"; + name = "wayst"; + exec = "wayst"; + icon = "wayst"; + terminal = "false"; + categories = "System;TerminalEmulator"; + comment = "A simple terminal emulator"; + extraEntries = '' + GenericName=Terminal + Keywords=wayst;terminal; + ''; + }; +in +stdenv.mkDerivation rec { + pname = "wayst"; + version = "unstable-2020-10-12"; + + src = fetchFromGitHub { + owner = "91861"; + repo = pname; + rev = "b8c7ca00a785a748026ed1ba08bf3d19916ced18"; + hash = "sha256-wHAU1yxukxApzhLLLctZ/AYqF7t21HQc5omPBZyxra0="; + }; + + makeFlags = [ "INSTALL_DIR=\${out}/bin" ]; + + nativeBuildInputs = [ pkgconfig ]; + + buildInputs = [ + fontconfig + libX11 + freetype + libGL + libxcb + libxkbcommon + libXrandr + utf8proc + wayland + ]; + + # This patch forces the Makefile to use utf8proc + # The makefile relies on ldconfig to find the utf8proc libraries + # which is not possible on nixpkgs + patches = [ ./utf8proc.patch ]; + + postPatch = '' + substituteInPlace src/settings.c \ + --replace xdg-open ${xdg_utils}/bin/xdg-open + substituteInPlace src/main.c \ + --replace notify-send ${libnotify}/bin/notify-send + ''; + + preInstall = '' + mkdir -p $out/bin + ''; + + postInstall = '' + mkdir -p $out/share/applications + ln -s ${desktopItem}/share/applications/* $out/share/applications + install -D icons/wayst.svg $out/share/icons/hicolor/scalable/apps/wayst.svg + ''; + + meta = with lib; { + description = "A simple terminal emulator"; + homepage = "https://github.com/91861/wayst"; + license = licenses.mit; + platforms = platforms.linux; + maintainers = with maintainers; [ berbiche ]; + }; +} diff --git a/infra/libkookie/nixpkgs/pkgs/applications/terminal-emulators/wayst/utf8proc.patch b/infra/libkookie/nixpkgs/pkgs/applications/terminal-emulators/wayst/utf8proc.patch new file mode 100644 index 000000000000..0923c5dbe18d --- /dev/null +++ b/infra/libkookie/nixpkgs/pkgs/applications/terminal-emulators/wayst/utf8proc.patch @@ -0,0 +1,24 @@ +commit caa5a6bed31937f2d1b322da204e11eae57a720f +Author: Nicolas Berbiche <nicolas@normie.dev> +Date: Tue Oct 20 18:14:44 2020 -0400 + + PATCH: use nixpkgs utf8proc + + This patch forces the Makefile to use utf8proc from `buildInputs`. + The Makefile relies on ldconfig to find the utf8proc libraries, + which is not possible with nixpkgs. + +diff --git a/Makefile b/Makefile +index caccdf7..90b11ea 100644 +--- a/Makefile ++++ b/Makefile +@@ -29,7 +29,7 @@ else + LDFLAGS = -O2 -flto + endif + +-ifeq ($(shell ldconfig -p | grep libutf8proc.so > /dev/null || echo fail),fail) ++ifeq (false,fail) + $(info libutf8proc not found. Support for language-specific combining characters and unicode normalization will be disabled.) + CFLAGS += -DNOUTF8PROC + else + |