Add ftop: show progress of open files and file systems
This commit is contained in:
parent
323113ef6d
commit
2e7d552122
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 { };
|
ftgl212 = callPackage ../development/libraries/ftgl/2.1.2.nix { };
|
||||||
|
|
||||||
|
ftop = callPackage ../os-specific/linux/ftop { };
|
||||||
|
|
||||||
fuppes = callPackage ../tools/networking/fuppes {
|
fuppes = callPackage ../tools/networking/fuppes {
|
||||||
ffmpeg = ffmpeg_0_6_90;
|
ffmpeg = ffmpeg_0_6_90;
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user