3
0
Fork 0
forked from mirrors/nixpkgs

Merge pull request #5278 from nckx/ftop

Add ftop: show progress of open files and file systems
This commit is contained in:
lethalman 2014-12-10 09:37:31 +01:00
commit 4faed098e8
4 changed files with 70 additions and 0 deletions

View file

@ -0,0 +1,37 @@
{ stdenv, fetchurl, ncurses }:
stdenv.mkDerivation rec {
name = "ftop-1.0";
src = fetchurl {
url = "http://ftop.googlecode.com/files/${name}.tar.bz2";
sha256 = "3a705f4f291384344cd32c3dd5f5f6a7cd7cea7624c83cb7e923966dbcd47f82";
};
buildInputs = [ ncurses ];
patches = [
./ftop-fix_buffer_overflow.patch
./ftop-fix_printf_format.patch
];
patchFlags = "-p0";
postPatch = ''
substituteInPlace configure --replace "curses" "ncurses"
'';
meta = with stdenv.lib; {
description = "Show progress of open files and file systems";
homepage = https://code.google.com/p/ftop/;
license = with licenses; gpl3Plus;
longDescription = ''
Ftop is to files what top is to processes. The progress of all open files
and file systems can be monitored. If run as a regular user, the set of
open files will be limited to those in that user's processes (which is
generally all that is of interest to the user).
As with top, the items are displayed in order from most to least active.
'';
maintainers = with maintainers; [ nckx ];
platforms = with platforms; linux;
};
}

View file

@ -0,0 +1,11 @@
--- src/ftop.c.orig 2010-06-15 21:42:15.000000000 +0200
+++ src/ftop.c 2010-06-15 21:45:38.000000000 +0200
@@ -935,7 +935,7 @@
{
if (bar_used > 0)
{
- snprintf(rate_buf, bar_used + 1, "%s", tmp_buf);
+ snprintf(rate_buf, bar_used >= sizeof(rate_buf) ? sizeof(rate_buf) : bar_used + 1, "%s", tmp_buf);
p_attron(p, A_REVERSE);
p_printf(p, "%s", rate_buf);
if (bar_used > bytes)

View file

@ -0,0 +1,20 @@
--- src/ftop.c.orig 2010-06-15 23:14:50.000000000 +0200
+++ src/ftop.c 2010-06-15 23:15:52.000000000 +0200
@@ -222,7 +222,7 @@
p_eol(p, part);
cols = snprintf(tmp_buf, sizeof(tmp_buf),
- "Processes: %u total, %u unreadable",
+ "Processes: %zu total, %zu unreadable",
s->num_processes + s->num_unreadable_processes,
s->num_unreadable_processes);
@@ -244,7 +244,7 @@
p_eol(p, part);
snprintf(tmp_buf, sizeof(tmp_buf),
- "Open Files: %u regular, %u dir, %u chr, %u blk, %u pipe, %u sock, %u misc",
+ "Open Files: %zu regular, %zu dir, %zu chr, %zu blk, %zu pipe, %zu sock, %zu misc",
s->num_reg, s->num_dir, s->num_chr, s->num_blk, s->num_pipe,
s->num_sock, s->num_misc);

View file

@ -1226,6 +1226,8 @@ let
ftgl212 = callPackage ../development/libraries/ftgl/2.1.2.nix { };
ftop = callPackage ../os-specific/linux/ftop { };
fuppes = callPackage ../tools/networking/fuppes {
ffmpeg = ffmpeg_0_6_90;
};