blob: 4e6657c06607568d80ca29246e865f42abb51873 (
plain) (
tree)
|
|
with import <nixpkgs> {};
let
nixpkgs = import <nixpkgs> {};
postHook = ''
header() {
echo -ne "\033[1;36m"
echo -n "$1"
echo -e "\033[0m"
}
echoCmd() {
printf "\033[1;34m%s:\033[0m" "$1"
shift
printf ' %q' "$@"
echo
}
'';
fetchedGithub = path:
let
json = lib.importJSON path;
in rec {
version = json.tag;
name = "${json.meta.name}-${version}";
src = fetchFromGitHub json.github;
};
fetchedGit = path:
let
json = lib.importJSON path;
in rec {
version = json.tag;
name = "${json.meta.name}-${version}";
src = fetchgit json.git;
};
ledger = (nixpkgs.ledger.override { boost = boost166; }).overrideAttrs (oldAttrs:
fetchedGithub ./fetched/ledger.json // {
postInstall = "";
}
);
taskwarrior = nixpkgs.taskwarrior.overrideAttrs (oldAttrs: rec {
postInstall = ''${oldAttrs.postInstall}
mkdir -p "$out/share/vim/vimfiles/ftdetect"
mkdir -p "$out/share/vim/vimfiles/syntax"
ln -s "../../../../share/doc/task/scripts/vim/ftdetect/task.vim" "$out/share/vim/vimfiles/ftdetect/"
ln -s "../../../../share/doc/task/scripts/vim/syntax/taskrc.vim" "$out/share/vim/vimfiles/syntax/"
ln -s "../../../../share/doc/task/scripts/vim/syntax/taskdata.vim" "$out/share/vim/vimfiles/syntax/"
ln -s "../../../../share/doc/task/scripts/vim/syntax/taskedit.vim" "$out/share/vim/vimfiles/syntax/"
'';
});
vit = (nixpkgs.vit.override { inherit taskwarrior; }).overrideAttrs (oldAttrs:
fetchedGithub ./fetched/vit.json // {
buildInputs = oldAttrs.buildInputs ++ [perlPackages.TryTiny perlPackages.TextCharWidth];
}
);
weboob = pythonPackages.weboob.overrideAttrs (oldAttrs: rec {
postInstall = ''${oldAttrs.postInstall or ""}
mkdir -p $out/share/bash-completion/completions/
cp tools/weboob_bash_completion $out/share/bash-completion/completions/weboob
'';
});
slrn = nixpkgs.slrn.overrideAttrs (oldAttrs: rec {
version = "1.0.3a";
name = "slrn-${version}";
src = fetchurl {
url = "http://www.jedsoft.org/releases/slrn/slrn-${version}.tar.bz2";
sha256 = "1b1d9iikr60w0vq86y9a0l4gjl0jxhdznlrdp3r405i097as9a1v";
};
configureFlags = oldAttrs.configureFlags ++ [ "--with-slrnpull" ];
});
ldapvi = nixpkgs.ldapvi.overrideAttrs (oldAttrs: fetchedGit ./fetched/ldapvi.json);
nixos = import ./nixos_tools.nix {};
pass = (nixpkgs.pass.withExtensions (exts: [ exts.pass-otp ])).overrideAttrs (oldAttrs:
fetchedGit ./fetched/pass.json // {
patches = oldAttrs.patches ++ [ ./patches/pass-fix-pass-init.patch ];
}
);
profanity = (nixpkgs.profanity.override {
notifySupport = true;
inherit libnotify gpgme gdk_pixbuf;
python = python3;
}).overrideAttrs (oldAttrs: rec {
configureFlags = oldAttrs.configureFlags ++ [ "--enable-plugins" ];
});
weechat = nixpkgs.weechat.override {
configure = { availablePlugins, ... }: {
plugins = with availablePlugins; [
(python.withPackages (ps: with ps; [websocket_client emoji]))
perl
];
};
};
buildPerlPackage = callPackage <nixpkgs/pkgs/development/perl-modules/generic> { };
note = buildPerlPackage rec {
name = "note-1.3.26";
src = fetchurl {
url = "mirror://cpan/authors/id/T/TL/TLINDEN/${name}.tar.gz";
sha256 = "1h645rnb5vpms48fcyzvp7cwwcbf9k5xq49w2bpniyzzgk2brjrq";
};
outputs = ["out" "man"];
propragatedBuildInputs = [ perlPackages.YAML ];
meta = with stdenv.lib; {
description = "A perl script for maintaining notes";
homepage = http://www.daemon.de/NOTE;
license = licenses.gpl3;
maintainers = with maintainers; [ { name = "T.v.Dein"; email = "tlinden@cpan.org"; } ];
platforms = platforms.unix;
};
};
terminal_velocity = with python2Packages; buildPythonApplication rec {
pname = "terminal-velocity-git";
version = "0.2.0";
patches = [
# FIXME: update this patch when version changes
./patches/terminal_velocity_fix_build.patch
./patches/terminal_velocity_sort_found_notes.patch
];
propagatedBuildInputs = [ chardet urwid sh pyyaml ];
buildInputs = [ m2r restructuredtext_lint pygments ];
src = fetchPypi {
inherit pname version;
sha256 = "13yrkcmvh5h5fwnai61sbmqkrjyisz08n62pq0ada2lyyqf7g6b9";
};
};
mtop = buildPerlPackage rec {
name = "mtop-${version}";
version = "0.6.6";
src = fetchurl {
url = "http://downloads.sourceforge.net/project/mtop/mtop/v${version}/mtop-${version}.tar.gz";
sha256 = "0x0x5300b1j9i0xxk8rsrki0pspyzj2vylhzv8qg3l6j26aw0zrf";
};
outputs = ["out"];
buildInputs = [ perlPackages.DBI perlPackages.DBDmysql perlPackages.Curses ];
postInstall = ''
cd "$out"
preConfigure || true
'';
meta = with stdenv.lib; {
description = "MySQL top (monitor and examine slow queries)";
homepage = http://mtop.sourceforge.net/;
license = licenses.gpl3;
maintainers = with maintainers; [ { name = "Marc Prewitt"; email = "mprewitt@chelsea.net"; } ];
platforms = platforms.unix;
};
};
tiv = buildPerlPackage rec {
name = "tiv-${version}";
version = "2015";
src = fetchurl {
url = "http://xyne.archlinux.ca/projects/tiv/src/tiv-${version}.tar.xz";
sha256 = "1vq073v7z7vmcd57lhs4rf4jasji69cpjgkz4dykp94a77p1qq90";
};
outputs = ["out"];
buildInputs = [ perlPackages.PerlMagick ];
perlPreHookScript = ./hooks/tiv_builder.sh;
perlPreHook = ''
source ${perlPreHookScript}
'';
installPhase = ''
install -Dm755 tiv "$out/bin/tiv"
'';
};
cnagios = stdenv.mkDerivation (fetchedGithub ./fetched/cnagios.json // rec {
configureFlags = [
"--with-etc-dir=/etc/cnagios"
"--with-var-dir=/var/lib/naemon"
"--with-nagios-data=4"
];
prePatch = ''
sed -i -e "s/-lcurses/-lncurses/" Makefile.in
'';
installPhase = ''
install -dm755 $out/share/doc/cnagios
install -Dm644 cnagiosrc $out/share/doc/cnagios/
install -Dm644 cnagios.help $out/share/doc/cnagios/
install -Dm644 cnagios.pl $out/share/doc/cnagios/
install -dm755 $out/bin
install -Dm755 cnagios $out/bin/
'';
propagatedBuildInputs = [ perl ncurses ];
});
nagios-cli = python2Packages.buildPythonApplication (fetchedGithub ./fetched/nagios-cli.json);
pg_activity = with python2Packages; buildPythonApplication (fetchedGithub ./fetched/pg_activity.json // rec {
propagatedBuildInputs = [ psycopg2 psutil ];
});
pgloader = stdenv.mkDerivation (fetchedGithub ./fetched/pgloader.json // rec {
buildInputs = [ sbcl cacert sqlite freetds libzip curl git openssl makeWrapper ];
LD_LIBRARY_PATH = stdenv.lib.makeLibraryPath [ sqlite libzip curl git openssl freetds ];
buildPhase = ''
export PATH=$PATH:$out/bin
export HOME=$TMPDIR
make pgloader
'';
dontStrip = true;
enableParallelBuilding = false;
installPhase = ''
install -Dm755 build/bin/pgloader "$out/bin/pgloader"
wrapProgram $out/bin/pgloader --prefix LD_LIBRARY_PATH : "${LD_LIBRARY_PATH}"
'';
});
pelican = python3Packages.pelican.overrideAttrs(old: fetchedGithub ./fetched/pelican.json // rec {
propagatedBuildInputs = old.propagatedBuildInputs ++ [ python3Packages.pyyaml ];
});
# https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh
# https://github.com/NixOS/nixpkgs/blob/master/doc/languages-frameworks
in
{
inherit nix-prefetch-scripts;
inherit nix-generate-from-cpan;
inherit ledger;
inherit taskwarrior vit timewarrior;
inherit weboob;
inherit slrn;
inherit sc-im;
inherit ldapvi;
inherit pal;
inherit duplicity duply;
inherit pdftk;
inherit googler;
inherit jrnl;
inherit apg;
inherit newsboat;
inherit vcsh;
inherit xmr-stak;
inherit urlwatch;
inherit pass;
inherit ranger;
inherit profanity;
inherit weechat irssi;
inherit note terminal_velocity;
inherit mtop;
inherit tiv;
inherit cnagios nagios-cli;
inherit abook khard khal;
inherit graphicsmagick;
inherit youtube-dl;
inherit pg_activity pgloader;
inherit ncmpc;
inherit cadaver;
inherit mairix notmuch;
inherit ctags;
inherit s3cmd;
inherit solc; # solidity
inherit rtorrent;
inherit strace;
inherit vdirsyncer;
inherit w3m lynx links;
inherit gitRepo;
inherit valgrind;
inherit iotop iperf;
inherit keybase;
inherit bogofilter;
inherit pelican;
#inherit nixos;
}
|