diff options
Diffstat (limited to 'nixpkgs/pkgs/development/libraries/vte')
-rw-r--r-- | nixpkgs/pkgs/development/libraries/vte/2.90.nix | 41 | ||||
-rw-r--r-- | nixpkgs/pkgs/development/libraries/vte/default.nix | 98 |
2 files changed, 139 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/libraries/vte/2.90.nix b/nixpkgs/pkgs/development/libraries/vte/2.90.nix new file mode 100644 index 000000000000..59d0acada137 --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/vte/2.90.nix @@ -0,0 +1,41 @@ +{ stdenv, fetchurl, intltool, pkgconfig, glib, gtk3, ncurses, gobject-introspection }: + +stdenv.mkDerivation rec { + versionMajor = "0.36"; + versionMinor = "3"; + moduleName = "vte"; + + name = "${moduleName}-${versionMajor}.${versionMinor}"; + + src = fetchurl { + url = "mirror://gnome/sources/${moduleName}/${versionMajor}/${name}.tar.xz"; + sha256 = "54e5b07be3c0f7b158302f54ee79d4de1cb002f4259b6642b79b1e0e314a959c"; + }; + + nativeBuildInputs = [ pkgconfig ]; + buildInputs = [ gobject-introspection intltool glib gtk3 ncurses ]; + + configureFlags = [ "--enable-introspection" ]; + + enableParallelBuilding = true; + + postInstall = '' + substituteInPlace $out/lib/libvte2_90.la --replace "-lncurses" "-L${ncurses.out}/lib -lncurses" + ''; + + meta = with stdenv.lib; { + homepage = "https://www.gnome.org/"; + description = "A library implementing a terminal emulator widget for GTK"; + longDescription = '' + VTE is a library (libvte) implementing a terminal emulator widget for + GTK, and a minimal sample application (vte) using that. Vte is + mainly used in gnome-terminal, but can also be used to embed a + console/terminal in games, editors, IDEs, etc. VTE supports Unicode and + character set conversion, as well as emulating any terminal known to + the system's terminfo database. + ''; + license = licenses.lgpl2; + maintainers = with maintainers; [ astsmtl antono lethalman ]; + platforms = platforms.linux; + }; +} diff --git a/nixpkgs/pkgs/development/libraries/vte/default.nix b/nixpkgs/pkgs/development/libraries/vte/default.nix new file mode 100644 index 000000000000..811921df3e7c --- /dev/null +++ b/nixpkgs/pkgs/development/libraries/vte/default.nix @@ -0,0 +1,98 @@ +{ stdenv +, lib +, fetchurl +, fetchpatch +, gettext +, pkgconfig +, meson +, ninja +, gnome3 +, glib +, gtk3 +, gobject-introspection +, vala +, libxml2 +, gnutls +, gperf +, pango +, pcre2 +, fribidi +, zlib +, icu +, systemd +}: + +stdenv.mkDerivation rec { + pname = "vte"; + version = "0.60.2"; + + outputs = [ "out" "dev" ]; + + src = fetchurl { + url = "mirror://gnome/sources/${pname}/${stdenv.lib.versions.majorMinor version}/${pname}-${version}.tar.xz"; + sha256 = "19ccbw0yca78h5qcnm8claj4fg1pj68nj1fsjqqfpzhj7w72i81m"; + }; + + passthru = { + updateScript = gnome3.updateScript { packageName = pname; }; + }; + + nativeBuildInputs = [ + gettext + gobject-introspection + gperf + libxml2 + meson + ninja + pkgconfig + vala + ]; + + buildInputs = [ + fribidi + gnutls + pcre2 + zlib + icu + systemd + ]; + + propagatedBuildInputs = [ + # Required by vte-2.91.pc. + gtk3 + glib + pango + ]; + + patches = + # VTE needs a small patch to work with musl: + # https://gitlab.gnome.org/GNOME/vte/issues/72 + lib.optional + stdenv.hostPlatform.isMusl + (fetchpatch { + name = "0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch"; + url = "https://gitlab.gnome.org/GNOME/vte/uploads/c334f767f5d605e0f30ecaa2a0e4d226/0001-Add-W_EXITCODE-macro-for-non-glibc-systems.patch"; + sha256 = "1ii9db9i5l3fy2alxz7bjfsgjs3lappnlx339dvxbi2141zknf5r"; + }); + + postPatch = '' + patchShebangs perf/* + patchShebangs src/box_drawing_generate.sh + ''; + + meta = with stdenv.lib; { + homepage = "https://www.gnome.org/"; + description = "A library implementing a terminal emulator widget for GTK"; + longDescription = '' + VTE is a library (libvte) implementing a terminal emulator widget for + GTK, and a minimal sample application (vte) using that. Vte is + mainly used in gnome-terminal, but can also be used to embed a + console/terminal in games, editors, IDEs, etc. VTE supports Unicode and + character set conversion, as well as emulating any terminal known to + the system's terminfo database. + ''; + license = licenses.lgpl2; + maintainers = with maintainers; [ astsmtl antono lethalman ] ++ teams.gnome.members; + platforms = platforms.unix; + }; +} |