Add ftop: show progress of open files and file systems
This commit is contained in:
parent
323113ef6d
commit
2e7d552122
4 changed files with 70 additions and 0 deletions
37
pkgs/os-specific/linux/ftop/default.nix
Normal file
37
pkgs/os-specific/linux/ftop/default.nix
Normal 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;
|
||||
};
|
||||
}
|
11
pkgs/os-specific/linux/ftop/ftop-fix_buffer_overflow.patch
Normal file
11
pkgs/os-specific/linux/ftop/ftop-fix_buffer_overflow.patch
Normal 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)
|
20
pkgs/os-specific/linux/ftop/ftop-fix_printf_format.patch
Normal file
20
pkgs/os-specific/linux/ftop/ftop-fix_printf_format.patch
Normal 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);
|
||||
|
|
@ -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;
|
||||
};
|
||||
|
|
Loading…
Reference in a new issue