about summary refs log tree commit diff
path: root/nixpkgs/pkgs/applications/terminal-emulators/lxterminal
diff options
context:
space:
mode:
Diffstat (limited to 'nixpkgs/pkgs/applications/terminal-emulators/lxterminal')
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/lxterminal/default.nix52
-rw-r--r--nixpkgs/pkgs/applications/terminal-emulators/lxterminal/respect-xml-catalog-files-var.patch15
2 files changed, 67 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/lxterminal/default.nix b/nixpkgs/pkgs/applications/terminal-emulators/lxterminal/default.nix
new file mode 100644
index 000000000000..13f4e3c4119e
--- /dev/null
+++ b/nixpkgs/pkgs/applications/terminal-emulators/lxterminal/default.nix
@@ -0,0 +1,52 @@
+{ lib, stdenv, fetchFromGitHub, automake, autoconf, intltool, pkg-config, gtk3, vte, wrapGAppsHook
+, libxslt, docbook_xml_dtd_412, docbook_xsl, libxml2, findXMLCatalogs, nixosTests
+}:
+
+stdenv.mkDerivation rec {
+  pname = "lxterminal";
+  version = "0.3.2";
+
+  src = fetchFromGitHub {
+    owner = "lxde";
+    repo = "lxterminal";
+    rev = version;
+    sha256 = "sha256-5J21Xvx43Ie01IxB2usyixDl+WZEeFHn2HXZsRS5imo=";
+  };
+
+  configureFlags = [
+    "--enable-man"
+    "--enable-gtk3"
+  ];
+
+  nativeBuildInputs = [
+    automake autoconf intltool pkg-config wrapGAppsHook
+    libxslt docbook_xml_dtd_412 docbook_xsl libxml2 findXMLCatalogs
+  ];
+
+  buildInputs = [ gtk3 vte ];
+
+  patches = [
+    ./respect-xml-catalog-files-var.patch
+  ];
+
+  preConfigure = ''
+    ./autogen.sh
+  '';
+
+  doCheck = true;
+
+  passthru.tests.test = nixosTests.terminal-emulators.lxterminal;
+
+  meta = {
+    description = "The standard terminal emulator of LXDE";
+    longDescription = ''
+      LXTerminal is the standard terminal emulator of LXDE. The terminal is a
+      desktop-independent VTE-based terminal emulator for LXDE without any
+      unnecessary dependencies.
+    '';
+    homepage = "https://wiki.lxde.org/en/LXTerminal";
+    license = lib.licenses.gpl2;
+    maintainers = [ lib.maintainers.velovix ];
+    platforms = lib.platforms.linux;
+  };
+}
diff --git a/nixpkgs/pkgs/applications/terminal-emulators/lxterminal/respect-xml-catalog-files-var.patch b/nixpkgs/pkgs/applications/terminal-emulators/lxterminal/respect-xml-catalog-files-var.patch
new file mode 100644
index 000000000000..598f506118f2
--- /dev/null
+++ b/nixpkgs/pkgs/applications/terminal-emulators/lxterminal/respect-xml-catalog-files-var.patch
@@ -0,0 +1,15 @@
+diff --git a/acinclude.m4 b/acinclude.m4
+index be626c5..b449b1b 100644
+--- a/acinclude.m4
++++ b/acinclude.m4
+@@ -40,8 +40,8 @@ AC_DEFUN([JH_CHECK_XML_CATALOG],
+ [
+   AC_REQUIRE([JH_PATH_XML_CATALOG],[JH_PATH_XML_CATALOG(,[:])])dnl
+   AC_MSG_CHECKING([for ifelse([$2],,[$1],[$2]) in XML catalog])
+-  if $jh_found_xmlcatalog && \
+-     AC_RUN_LOG([$XMLCATALOG --noout "$XML_CATALOG_FILE" "$1" >&2]); then
++  # empty argument forces libxml to use XML_CATALOG_FILES variable
++  if AC_RUN_LOG([$XMLCATALOG --noout "" "$1" >&2]); then
+     AC_MSG_RESULT([found])
+     ifelse([$3],,,[$3
+ ])dnl