ostinato: refactor

This commit is contained in:
rnhmjoj 2017-03-09 14:46:33 +01:00 committed by Tuomas Tynkkynen
parent 4c33ea35b7
commit 1665102688

View file

@ -1,17 +1,19 @@
{ stdenv, fetchgit, fetchurl, writeText { stdenv, fetchFromGitHub, fetchurl, qmake4Hook, makeDesktopItem
, qt4, qmake4Hook, protobuf, libpcap , qt4, protobuf, libpcap, wireshark, gzip, diffutils, gawk
, wireshark, gzip, diffutils, gawk
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "ostinato-2015-12-24"; name = "ostinato-${version}";
src = fetchgit { version = "0.8";
url = "https://github.com/pstavirs/ostinato.git";
rev = "414d89860de0987843295d149bcabeac7c6fd9e5"; src = fetchFromGitHub {
sha256 = "1yif8z8ih027jdsgnxd82z9914wrqpkpi4xgxqv9lygnb2jjjrdx"; owner = "pstavirs";
repo = "ostinato";
rev = "v${version}";
sha256 = "1b5a5gypcy9i03mj6md3lkrq05rqmdyhfykrr1z0sv8n3q48xca3";
}; };
ostinato_png = fetchurl { ostinatoIcon = fetchurl {
url = "http://ostinato.org/images/site-logo.png"; url = "http://ostinato.org/images/site-logo.png";
sha256 = "f5c067823f2934e4d358d76f65a343efd69ad783a7aeabd7ab4ce3cd03490d70"; sha256 = "f5c067823f2934e4d358d76f65a343efd69ad783a7aeabd7ab4ce3cd03490d70";
}; };
@ -22,7 +24,27 @@ stdenv.mkDerivation rec {
patches = [ ./drone_ini.patch ]; patches = [ ./drone_ini.patch ];
desktopItem = makeDesktopItem {
type = "application";
name = "ostinato";
desktopName = "Ostinato";
genericName = "Packet/Traffic Generator and Analyzer";
comment = "Network packet and traffic generator and analyzer with a friendly GUI";
categories = "Network";
terminal = "false";
startupNotify = "true";
exec = "$out/bin/ostinato";
icon = ostinatoIcon;
extraEntries = ''
GenericName[it]=Generatore ed Analizzatore di pacchetti di rete
Comment[it]=Generatore ed Analizzatore di pacchetti di rete con interfaccia amichevole
'';
};
postInstall = '' postInstall = ''
mkdir -p $out/share/applications
ln -s ${desktopItem}/share/applications/* $out/share/applications/
cat > $out/bin/ostinato.ini <<EOF cat > $out/bin/ostinato.ini <<EOF
WiresharkPath=${wireshark}/bin/wireshark WiresharkPath=${wireshark}/bin/wireshark
TsharkPath=${wireshark}/bin/tshark TsharkPath=${wireshark}/bin/tshark
@ -30,34 +52,13 @@ stdenv.mkDerivation rec {
DiffPath=${diffutils}/bin/diff DiffPath=${diffutils}/bin/diff
AwkPath=${gawk}/bin/awk AwkPath=${gawk}/bin/awk
EOF EOF
mkdir -p $out/share/pixmaps
cp ${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; { meta = with stdenv.lib; {
description = "A packet traffic generator and analyzer"; description = "A packet traffic generator and analyzer";
homepage = http://ostinato.org; homepage = http://ostinato.org;
license = licenses.gpl3; license = licenses.gpl3;
maintainers = with maintainers; [ rick68 ]; maintainers = with maintainers; [ rick68 ];
platforms = platforms.linux; # also OS X and cygwin platforms = with platforms; linux ++ darwin ++ cygwin;
}; };
} }