]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - default.nix
Start splitting nix environment to smaller files
[perso/Immae/Config/Nix.git] / default.nix
index b1ae800027ceffcf35e5c0f9d4cfb5e20864cfbb..38d7e0beb9fb3cf740db6876216bb004c3173336 100644 (file)
@@ -1,14 +1,8 @@
-with import <immaeNixpkgsNext> {};
-with import ./libs.nix { nixpkgs = import <immaeNixpkgsNext> {}; };
+with import <nixpkgs> {};
+with import ./libs.nix { nixpkgs = import <nixpkgs> {}; };
 let
   mypkgs = {};
 
-  mypkgs.ledger = (ledger.override { boost = boost166; }).overrideAttrs (_old:
-    fetchedGithub ./fetched/ledger.json // {
-      postInstall = "";
-    }
-  );
-
   mypkgs.taskwarrior = taskwarrior.overrideAttrs (old: rec {
     postInstall = ''${old.postInstall}
       mkdir -p "$out/share/vim/vimfiles/ftdetect"
@@ -29,6 +23,11 @@ let
   mypkgs.weboob = (pythonPackages.weboob.overridePythonAttrs {
       setupPyBuildFlags = [ "--no-qt" "--xdg" ];
     }).overrideAttrs (old: rec {
+      version = "1.5";
+      src = fetchurl {
+        url = "https://git.weboob.org/weboob/weboob/-/archive/${version}/${old.pname}-${version}.tar.gz";
+        sha256 = "0l6q5nm5g0zn6gmf809059kddrbds27wgygxsfkqja9blks5vq7z";
+      };
       postInstall = ''${old.postInstall or ""}
         mkdir -p $out/share/bash-completion/completions/
         cp tools/weboob_bash_completion $out/share/bash-completion/completions/weboob
@@ -75,92 +74,16 @@ let
     };
   };
 
-  buildPerlPackage = perlPackages.buildPerlPackage;
-  mypkgs.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"];
-    propagatedBuildInputs = [ 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;
-    };
-  };
-
-  mypkgs.terminal-velocity = with python3Packages; buildPythonApplication rec {
-    pname = "terminal-velocity-git";
-    version = "0.2.0";
-
-    patches = [
-      ./patches/terminal_velocity_sort_found_notes.patch
-      ./patches/terminal_velocity_python3_support.patch
-      # FIXME: update this patch when version changes
-      ./patches/terminal_velocity_fix_build.patch
-    ];
-
-    propagatedBuildInputs = [ chardet urwid (sh.overridePythonAttrs { doCheck = false; }) pyyaml ];
-    buildInputs = [ m2r (restructuredtext_lint.overridePythonAttrs { doCheck = false; }) pygments ];
-
-    postInstall = ''
-      rm $out/bin/terminal_velocity
-      '';
-    src = fetchPypi {
-      inherit pname version;
-      sha256 = "13yrkcmvh5h5fwnai61sbmqkrjyisz08n62pq0ada2lyyqf7g6b9";
-    };
-  };
-
-  mypkgs.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;
-    };
-  };
-
-  mypkgs.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"
-    '';
-  };
+  mypkgs.mtop = callPackage ./pkgs/mtop {};
+  mypkgs.note = callPackage ./pkgs/note {};
+  mypkgs.terminal-velocity = callPackage ./pkgs/terminal-velocity {};
+  mypkgs.tiv = callPackage ./pkgs/tiv {};
 
   mypkgs.cnagios = stdenv.mkDerivation (fetchedGithub ./fetched/cnagios.json // rec {
     configureFlags = [
       "--with-etc-dir=/etc/cnagios"
       "--with-var-dir=/var/lib/naemon"
+      "--with-status-file=/var/lib/naemon/status.dat"
       "--with-nagios-data=4"
     ];
 
@@ -616,6 +539,49 @@ let
       '';
   });
 
+  mypkgs.nixops = nixops.overrideAttrs (old: {
+    preConfigure = (old.preConfigure or "") + ''
+      sed -i -e "/'keyFile'/s/'path'/'string'/" nixops/backends/__init__.py
+      '';
+  });
+  mypkgs.flrn = let
+    slang = stdenv.mkDerivation rec {
+      name = "slang-debian-patched-${version}";
+      version = "1.4.9";
+      src = fetchurl {
+        url = "ftp://space.mit.edu/pub/davis/slang/v1.4/slang-1.4.9.tar.gz";
+        sha256 = "1y2mg0whqh4b3acd0k17i4biz55bimxg8aaxhmwd165cvspxns9r";
+      };
+      debianPatches = fetchurl {
+        url = "http://archive.debian.org/debian-archive/debian-amd64/pool/main/s/slang/slang_1.4.9dbs-8.diff.gz";
+        sha256 = "0xdq14k5ynqfwpmis1rcggs7m4n921i3bs27icbmbhfg5gb2hap2";
+      };
+      preConfigure = ''
+        cp $debianPatches ./slang.diff.gz
+        gunzip slang.diff.gz
+        patch -p1 < slang.diff
+        for i in debian/patches/*; do
+          patch -p1 < $i
+        done
+        makeFlagsArray=(CFLAGS=" -g -O2 -fno-strength-reduce -DUTF8 -D_REENTRANT -D_XOPEN_SOURCE=500")
+        '';
+      postBuild = ''
+        sed -i "1i#ifndef UTF8\n#define UTF8\n#endif" src/slang.h
+        '';
+    };
+  in
+    stdenv.mkDerivation (fetchedGithub ./fetched/flrn.json // rec {
+      buildInputs = [ libetpan openssl autoconf groff slang yacc ];
+      preConfigure = ''
+        sed -i -e "s/test -e configure/false/" configure.in
+        autoconf
+        sed -i -e '/define CHECK_MAIL/d' src/flrn_config.h
+        sed -i -e '/DEFAULT_DIR_FILE/s@".flrn"@".config/flrn"@' src/flrn_config.h
+        sed -i -e '/DEFAULT_CONFIG_FILE/s@".flrnrc"@"flrnrc"@' src/flrn_config.h
+        sed -i -e '/DEFAULT_FLNEWS_FILE/s@".flnewsrc"@"flnewsrc"@' src/flrn_config.h
+        sed -i -e '/flrn_char chaine/s@18@20@' src/flrn_command.c
+        '';
+    });
 # https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh
 # https://github.com/NixOS/nixpkgs/blob/master/doc/languages-frameworks
 in
@@ -653,7 +619,6 @@ in
     inherit keybase;
     inherit bogofilter;
     inherit mtr;
-    inherit nixops;
     inherit urlview;
     inherit rr;
     inherit nix-zsh-completions;
@@ -679,4 +644,9 @@ in
     inherit bc;
     inherit cpulimit;
     inherit dmenu st;
+    inherit poppler_utils;
+    inherit tmux;
+    inherit netcat-gnu;
+    inherit ledger;
+    inherit ffmpeg libxslt;
   }