at 23.05-pre 53 lines 2.0 kB view raw
1{ stdenv, lib, fetchurl, gpm, freetype, fontconfig, pkg-config, ncurses, libx86 }: 2 3stdenv.mkDerivation rec { 4 version = "1.7.0"; 5 pname = "fbterm"; 6 7 src = fetchurl { 8 url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/fbterm/fbterm-${version}.tar.gz"; 9 sha256 = "0pciv5by989vzvjxsv1jsv4bdp4m8j0nfbl29jm5fwi12w4603vj"; 10 }; 11 12 nativeBuildInputs = [ pkg-config ncurses ]; 13 buildInputs = [ gpm freetype fontconfig ncurses ] 14 ++ lib.optional stdenv.hostPlatform.isx86 libx86; 15 16 preConfigure = '' 17 sed -e '/ifdef SYS_signalfd/atypedef long long loff_t;' -i src/fbterm.cpp 18 sed -e '/install-exec-hook:/,/^[^\t]/{d}; /.NOEXPORT/iinstall-exec-hook:\ 19 ' -i src/Makefile.in 20 export HOME=$PWD; 21 export NIX_LDFLAGS="$NIX_LDFLAGS -lfreetype" 22 ''; 23 preBuild = '' 24 mkdir -p "$out/share/terminfo" 25 tic -a -v2 -o"$out/share/terminfo" terminfo/fbterm 26 makeFlagsArray+=("AR=$AR") 27 ''; 28 29 patches = [ 30 # fixes from Arch Linux package 31 (fetchurl { 32 url = "https://raw.githubusercontent.com/glitsj16/fbterm-patched/d1fe03313be4654dd0a1c0bb5f51530732345134/gcc-6-build-fixes.patch"; 33 sha256 = "1kl9fjnrri6pamjdl4jpkqxk5wxcf6jcchv5801xz8vxp4542m40"; 34 }) 35 (fetchurl { 36 url = "https://raw.githubusercontent.com/glitsj16/fbterm-patched/d1fe03313be4654dd0a1c0bb5f51530732345134/insertmode-fix.patch"; 37 sha256 = "1bad9mqcfpqb94lpx23lsamlhplil73ahzin2xjva0gl3gr1038l"; 38 }) 39 (fetchurl { 40 url = "https://raw.githubusercontent.com/glitsj16/fbterm-patched/d1fe03313be4654dd0a1c0bb5f51530732345134/miscoloring-fix.patch"; 41 sha256 = "1mjszji0jgs2jsagjp671fv0d1983wmxv009ff1jfhi9pbay6jd0"; 42 }) 43 ./select.patch 44 ]; 45 46 meta = with lib; { 47 description = "Framebuffer terminal emulator"; 48 homepage = "https://code.google.com/archive/p/fbterm/"; 49 maintainers = with maintainers; [ raskin ]; 50 license = licenses.gpl2; 51 platforms = platforms.linux; 52 }; 53}