mirror of
https://github.com/foo-dogsquared/nixos-config.git
synced 2025-01-31 16:57:55 +00:00
59 lines
1.6 KiB
Nix
59 lines
1.6 KiB
Nix
|
{ lib, stdenv, fetchFromGitHub, autoreconfHook, desktop-file-utils, pkg-config
|
||
|
, libwebsockets, json_c, openssl, asciidoctor, unixtools, zlib,
|
||
|
|
||
|
# For including Java classes. Take note it doesn't compile them properly and it
|
||
|
# still builds successfully so including them is disabled by default.
|
||
|
openjdk,
|
||
|
|
||
|
# For Qt backend which is included by default.
|
||
|
qt5,
|
||
|
|
||
|
enableQt ? true, enableJava ? false }:
|
||
|
|
||
|
# TODO: Compile with the experimental wry backend.
|
||
|
# * Wait until gdk-pixbuf is >=3.0.
|
||
|
stdenv.mkDerivation rec {
|
||
|
pname = "domterm";
|
||
|
version = "unstable-2022-05-13";
|
||
|
|
||
|
src = fetchFromGitHub {
|
||
|
owner = "PerBothner";
|
||
|
repo = "DomTerm";
|
||
|
rev = "b78f55a595b82a28042ac5297a1c1b0cce30cdc3";
|
||
|
sha256 = "sha256-U0w9i3Eb/tAUTRWuIjhO4xfOgR0Xa4I4hSpkHuVeG9c=";
|
||
|
};
|
||
|
|
||
|
nativeBuildInputs = [ autoreconfHook pkg-config ]
|
||
|
++ lib.optional enableQt qt5.wrapQtAppsHook;
|
||
|
|
||
|
buildInputs = [
|
||
|
asciidoctor
|
||
|
desktop-file-utils
|
||
|
json_c
|
||
|
libwebsockets
|
||
|
openssl
|
||
|
unixtools.xxd
|
||
|
zlib
|
||
|
] ++ lib.optionals enableQt (with qt5; [ qtbase qtwebengine qtwebchannel ])
|
||
|
++ lib.optional enableJava openjdk;
|
||
|
|
||
|
configureFlags = [
|
||
|
"--disable-java-pty"
|
||
|
"--with-libwebsockets"
|
||
|
|
||
|
# Until the dependencies are updated (e.g., `gdk-pixbuf >= 3.0`), this is
|
||
|
# going to be painful to build.
|
||
|
"--without-wry"
|
||
|
] ++ lib.optional enableJava "--with-java"
|
||
|
++ lib.optional enableQt "--with-qt";
|
||
|
|
||
|
# Force Java to take input as UTF-8 instead of ASCII.
|
||
|
JAVA_TOOL_OPTIONS = "-Dfile.encoding=UTF8";
|
||
|
|
||
|
meta = with lib; {
|
||
|
homepage = "https://domterm.org/";
|
||
|
description = "Terminal emulator based on web technologies.";
|
||
|
license = licenses.bsd3;
|
||
|
};
|
||
|
}
|