diff options
author | Ram Kromberg <ramkromberg@mail.com> | 2016-09-16 23:57:59 +0300 |
---|---|---|
committer | Ram Kromberg <ramkromberg@mail.com> | 2016-09-17 05:28:08 +0300 |
commit | 9715f747088452235149bda1742d5c24012d21b9 (patch) | |
tree | 5a8dd43fa78e11ec8e7c2b9362cc2e5def751fce /pkgs/applications/misc/mlterm | |
parent | 772d14d8c243c8076ca71f202d0c71546e94ae19 (diff) | |
download | nixlib-9715f747088452235149bda1742d5c24012d21b9.tar nixlib-9715f747088452235149bda1742d5c24012d21b9.tar.gz nixlib-9715f747088452235149bda1742d5c24012d21b9.tar.bz2 nixlib-9715f747088452235149bda1742d5c24012d21b9.tar.lz nixlib-9715f747088452235149bda1742d5c24012d21b9.tar.xz nixlib-9715f747088452235149bda1742d5c24012d21b9.tar.zst nixlib-9715f747088452235149bda1742d5c24012d21b9.zip |
mlterm: fix cairo and multiple other features
Diffstat (limited to 'pkgs/applications/misc/mlterm')
-rw-r--r-- | pkgs/applications/misc/mlterm/default.nix | 72 |
1 files changed, 61 insertions, 11 deletions
diff --git a/pkgs/applications/misc/mlterm/default.nix b/pkgs/applications/misc/mlterm/default.nix index 6d84ef422964..9fa112375c52 100644 --- a/pkgs/applications/misc/mlterm/default.nix +++ b/pkgs/applications/misc/mlterm/default.nix @@ -1,5 +1,8 @@ -{ stdenv, fetchurl, pkgconfig, autoconf -, libX11, gdk_pixbuf, cairo, libXft, gtk3, vte, fribidi, libssh2 +{ stdenv, fetchurl, pkgconfig, autoconf, makeDesktopItem +, libX11, gdk_pixbuf, cairo, libXft, gtk3, vte +, harfbuzz #substituting glyphs with opentype fonts +, fribidi, m17n_lib #bidi and encoding +, openssl, libssh2 #build-in ssh }: stdenv.mkDerivation rec { @@ -13,11 +16,13 @@ stdenv.mkDerivation rec { nativeBuildInputs = [ pkgconfig autoconf ]; buildInputs = [ - libX11 gdk_pixbuf.dev cairo libXft gtk3 vte fribidi libssh2 + libX11 gdk_pixbuf.dev cairo libXft gtk3 vte + harfbuzz fribidi m17n_lib openssl libssh2 ]; + #bad configure.ac and Makefile.in everywhere preConfigure = '' - sed -ie 's#-L/usr/local/lib -R/usr/local/lib##g' \ + sed -ie 's;-L/usr/local/lib -R/usr/local/lib;;g' \ xwindow/libtype/Makefile.in \ main/Makefile.in \ tool/mlfc/Makefile.in \ @@ -26,24 +31,69 @@ stdenv.mkDerivation rec { xwindow/libotl/Makefile.in sed -ie 's;cd ..srcdir. && rm -f ...lang..gmo.*;;g' \ tool/mlconfig/po/Makefile.in.in + #utmp and mlterm-fb + substituteInPlace configure.in \ + --replace "-m 2755 -g utmp" " " \ + --replace "-m 4755 -o root" " " + substituteInPlace configure \ + --replace "-m 2755 -g utmp" " " \ + --replace "-m 4755 -o root" " " ''; + NIX_LDFLAGS = " + -L${stdenv.cc.cc.lib}/lib + -lX11 -lgdk_pixbuf-2.0 -lcairo -lfontconfig -lfreetype -lXft + -lvte-2.91 -lgtk-3 -lharfbuzz -lfribidi -lm17n + " + stdenv.lib.optionalString (openssl != null) " + -lcrypto + " + stdenv.lib.optionalString (libssh2 != null) " + -lssh2 + "; configureFlags = [ "--with-x=yes" - "--with-gtk=3.0" - "--with-imagelib=gdk-pixbuf" - "--with-gui=xlib" + "--with-gui=xlib,fb" + "--with-imagelib=gdk-pixbuf" #or mlimgloader depending on your bugs of choice "--with-type-engines=cairo,xft,xcore" - "--enable-ind" - "--enable-fribidi" + "--with-gtk=3.0" + "--enable-ind" #indic scripts + "--enable-fribidi" #bidi scripts + "--enable-m17nlib" #character encodings "--with-tools=mlclient,mlconfig,mlcc,mlterm-menu,mlimgloader,registobmp,mlfc" - "--disable-utmp" + #mlterm-menu and mlconfig depend on enabling gnome3.at-spi2-core + #and configuring ~/.mlterm/key correctly. + ] ++ stdenv.lib.optional (libssh2 == null) [ + "--disable-ssh2" ]; + postInstall = '' + mkdir -p "$out/share/icons/hicolor/scalable/apps" + cp contrib/icon/mlterm-icon.svg "$out/share/icons/hicolor/scalable/apps/mlterm.svg" + + mkdir -p "$out/share/icons/hicolor/48x48/apps" + cp contrib/icon/mlterm-icon-gnome2.png "$out/share/icons/hicolor/48x48/apps/mlterm.png" + + mkdir -p "$out/share/applications" + cp $desktopItem/share/applications/* $out/share/applications + ''; + + desktopItem = makeDesktopItem rec { + name = "mlterm"; + exec = "mlterm %U"; + icon = "mlterm"; + type = "Application"; + comment = "Terminal emulator"; + desktopName = "mlterm"; + genericName = "Terminal emulator"; + categories = stdenv.lib.concatStringsSep ";" [ + "Application" "System" "TerminalEmulator" + ]; + startupNotify = "false"; + }; + meta = with stdenv.lib; { homepage = https://sourceforge.net/projects/mlterm/; license = licenses.bsd2; - maintainers = with maintainers; [ vrthra ]; + maintainers = with maintainers; [ vrthra ramkromberg ]; platforms = with platforms; linux; }; } |