aboutsummaryrefslogtreecommitdiff
path: root/pkgs/applications/networking/ostinato
diff options
context:
space:
mode:
authorWei-Ming Yang <rick68@gmail.com>2016-01-03 16:06:47 +0800
committerWei-Ming Yang <rick68@gmail.com>2016-01-04 14:29:02 +0800
commit89fbb184d18a5971171202c11c3f84281ff47193 (patch)
tree0cc37e36c7e0a9e9b4ab863487f5c4eeb873eaa3 /pkgs/applications/networking/ostinato
parentf300b2861de690ad9b1c5981020d33fa01a15349 (diff)
ostinato: add ostinato package in nixpkgs
Diffstat (limited to 'pkgs/applications/networking/ostinato')
-rw-r--r--pkgs/applications/networking/ostinato/default.nix59
-rw-r--r--pkgs/applications/networking/ostinato/drone_ini.patch14
-rw-r--r--pkgs/applications/networking/ostinato/ostinato.pngbin0 -> 18467 bytes
3 files changed, 73 insertions, 0 deletions
diff --git a/pkgs/applications/networking/ostinato/default.nix b/pkgs/applications/networking/ostinato/default.nix
new file mode 100644
index 000000000000..28170b2563d4
--- /dev/null
+++ b/pkgs/applications/networking/ostinato/default.nix
@@ -0,0 +1,59 @@
+{ stdenv, fetchgit, fetchurl, writeText
+, qt4, protobuf, libpcap
+, wireshark, gzip, diffutils, gawk
+}:
+
+stdenv.mkDerivation {
+ name = "ostinato-2015-12-24";
+ src = fetchgit {
+ url = "https://github.com/pstavirs/ostinato.git";
+ rev = "414d89860de0987843295d149bcabeac7c6fd9e5";
+ sha256 = "0hb78bq51r93p0yr4l1z5xlf1i666v5pa3zkdj7jmpb879kj05dx";
+ };
+
+ buildInputs = [ qt4 protobuf libpcap ];
+
+ patches = [ ./drone_ini.patch ];
+
+ configurePhase = "qmake PREFIX=$out"
+ + stdenv.lib.optionalString stdenv.isDarwin " -spec macx-g++";
+
+ postInstall = ''
+ cat > $out/bin/ostinato.ini <<EOF
+ WiresharkPath=${wireshark}/bin/wireshark
+ TsharkPath=${wireshark}/bin/tshark
+ GzipPath=${gzip}/bin/gzip
+ DiffPath=${diffutils}/bin/diff
+ AwkPath=${gawk}/bin/awk
+ EOF
+
+ mkdir -p $out/share/pixmaps
+ install -D -m 644 ${./ostinato.png} $out/share/pixmaps/ostinato.png
+
+ # Create a desktop item.
+ mkdir -p $out/share/applications
+ cat > $out/share/applications/ostinato.desktop <<EOF
+ [Desktop Entry]
+ Type=Application
+ Encoding=UTF-8
+ Name=Ostinato
+ GenericName=Packet/Traffic Generator and Analyzer
+ GenericName[it]=Generatore ed Analizzatore di pacchetti di rete
+ Comment=Network packet and traffic generator and analyzer with a friendly GUI
+ Comment[it]=Generatore ed Analizzatore di pacchetti di rete con interfaccia amichevole
+ Icon=$out/share/pixmaps/ostinato.png
+ Exec=$out/bin/ostinato
+ Terminal=false
+ Categories=Network;
+ StartupNotify=true
+ EOF
+ '';
+
+ meta = with stdenv.lib; {
+ description = "A packet traffic generator and analyzer";
+ homepage = http://ostinato.org;
+ license = licenses.gpl3;
+ maintainers = with maintainers; [ rick68 ];
+ platforms = platforms.linux; # also OS X and cygwin
+ };
+}
diff --git a/pkgs/applications/networking/ostinato/drone_ini.patch b/pkgs/applications/networking/ostinato/drone_ini.patch
new file mode 100644
index 000000000000..5818f4e94c30
--- /dev/null
+++ b/pkgs/applications/networking/ostinato/drone_ini.patch
@@ -0,0 +1,14 @@
+diff -Nru ostinato-414d89860de0987843295d149bcabeac7c6fd9e5/server/drone_main.cpp ostinato-414d89860de0987843295d149bcabeac7c6fd9e5.new/server/drone_main.cpp
+--- ostinato-414d89860de0987843295d149bcabeac7c6fd9e5/server/drone_main.cpp 2015-12-24 16:46:35.000000000 +0800
++++ ostinato-414d89860de0987843295d149bcabeac7c6fd9e5.new/server/drone_main.cpp 2015-12-30 20:59:04.319199699 +0800
+@@ -62,8 +62,8 @@
+ /* (Portable Mode) If we have a .ini file in the same directory as the
+ executable, we use that instead of the platform specific location
+ and format for the settings */
+- QString portableIni = QCoreApplication::applicationDirPath()
+- + "/drone.ini";
++ QString portableIni = argc > 2 ? argv[2] :
++ QCoreApplication::applicationDirPath() + "/drone.ini";
+ if (QFile::exists(portableIni))
+ appSettings = new QSettings(portableIni, QSettings::IniFormat);
+ else
diff --git a/pkgs/applications/networking/ostinato/ostinato.png b/pkgs/applications/networking/ostinato/ostinato.png
new file mode 100644
index 000000000000..6a03e6a7d5df
--- /dev/null
+++ b/pkgs/applications/networking/ostinato/ostinato.png
Binary files differ