diff options
Diffstat (limited to 'pkgs/applications/terminal-emulators/wayst/default.nix')
-rw-r--r-- | pkgs/applications/terminal-emulators/wayst/default.nix | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/pkgs/applications/terminal-emulators/wayst/default.nix b/pkgs/applications/terminal-emulators/wayst/default.nix new file mode 100644 index 00000000000..eeb258f48c4 --- /dev/null +++ b/pkgs/applications/terminal-emulators/wayst/default.nix @@ -0,0 +1,92 @@ +{ stdenv +, lib +, fetchFromGitHub +, pkg-config +, nixosTests +, freetype +, fontconfig +, libGL +, libX11 +, libXrandr +, libxcb +, libxkbcommon +, utf8proc +, wayland + +, libnotify +, xdg-utils +, makeDesktopItem +}: + +let + desktopItem = makeDesktopItem { + desktopName = "Wayst"; + name = "wayst"; + genericName = "Terminal"; + exec = "wayst"; + icon = "wayst"; + categories = [ "System" "TerminalEmulator" ]; + keywords = [ "wayst" "terminal" ]; + comment = "A simple terminal emulator"; + }; +in +stdenv.mkDerivation rec { + pname = "wayst"; + version = "unstable-2021-04-05"; + + src = fetchFromGitHub { + owner = "91861"; + repo = pname; + rev = "e72ca78ef72c7b1e92473a98d435a3c85d7eab98"; + hash = "sha256-UXAVSfVpk/8KSg4oMw2tVWImD6HqJ7gEioR2MqhUUoQ="; + }; + + makeFlags = [ "INSTALL_DIR=\${out}/bin" ]; + + nativeBuildInputs = [ pkg-config ]; + + 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 + ''; + + passthru.tests.test = nixosTests.terminal-emulators.wayst; + + meta = with lib; { + description = "A simple terminal emulator"; + mainProgram = "wayst"; + homepage = "https://github.com/91861/wayst"; + license = licenses.mit; + platforms = platforms.linux; + maintainers = with maintainers; [ berbiche ]; + }; +} |