]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - default.nix
Move Émilia's website
[perso/Immae/Config/Nix.git] / default.nix
index f509385d8c0d2fc77c4badc17785e53e39b16781..75e1e0a391035babda8137151457dff11b317da2 100644 (file)
@@ -1,7 +1,7 @@
+with import ./libs.nix;
 with import <nixpkgs> {};
 let
   mypkgs = {};
-  nixpkgs = import <nixpkgs> {};
   postHook =  ''
     header() {
       echo -ne "\033[1;36m"
@@ -17,31 +17,13 @@ let
     }
   '';
 
-  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;
-    };
-
-  mypkgs.ledger = (nixpkgs.ledger.override { boost = boost166; }).overrideAttrs (_old:
+  mypkgs.ledger = (ledger.override { boost = boost166; }).overrideAttrs (_old:
     fetchedGithub ./fetched/ledger.json // {
       postInstall = "";
     }
   );
 
-  mypkgs.taskwarrior = nixpkgs.taskwarrior.overrideAttrs (old: rec {
+  mypkgs.taskwarrior = taskwarrior.overrideAttrs (old: rec {
     postInstall = ''${old.postInstall}
       mkdir -p "$out/share/vim/vimfiles/ftdetect"
       mkdir -p "$out/share/vim/vimfiles/syntax"
@@ -52,7 +34,7 @@ let
     '';
   });
 
-  mypkgs.vit = (nixpkgs.vit.override { taskwarrior = mypkgs.taskwarrior; }).overrideAttrs (old:
+  mypkgs.vit = (vit.override { taskwarrior = mypkgs.taskwarrior; }).overrideAttrs (old:
     fetchedGithub ./fetched/vit.json // {
       buildInputs = old.buildInputs ++ [perlPackages.TryTiny perlPackages.TextCharWidth];
     }
@@ -65,7 +47,7 @@ let
     '';
   });
 
-  mypkgs.slrn = nixpkgs.slrn.overrideAttrs (old: rec {
+  mypkgs.slrn = slrn.overrideAttrs (old: rec {
     version = "1.0.3a";
     name = "slrn-${version}";
     src = fetchurl {
@@ -75,17 +57,17 @@ let
     configureFlags = old.configureFlags ++ [ "--with-slrnpull" ];
   });
 
-  mypkgs.ldapvi = nixpkgs.ldapvi.overrideAttrs (old: fetchedGit ./fetched/ldapvi.json);
+  mypkgs.ldapvi = ldapvi.overrideAttrs (old: fetchedGit ./fetched/ldapvi.json);
 
   nixos = import ./nixos_tools.nix {};
 
-  mypkgs.pass = (nixpkgs.pass.withExtensions (exts: [ exts.pass-otp ])).overrideAttrs (old:
+  mypkgs.pass = (pass.withExtensions (exts: [ exts.pass-otp ])).overrideAttrs (old:
     fetchedGit ./fetched/pass.json // {
       patches = old.patches ++ [ ./patches/pass-fix-pass-init.patch ];
     }
   );
 
-  mypkgs.profanity = (nixpkgs.profanity.override {
+  mypkgs.profanity = (profanity.override {
     notifySupport = true;
     inherit libnotify gpgme gdk_pixbuf;
     python = python3;
@@ -93,7 +75,7 @@ let
     configureFlags = old.configureFlags ++ [ "--enable-plugins" ];
   });
 
-  mypkgs.weechat = nixpkgs.weechat.override {
+  mypkgs.weechat = nixpkgs_unstable.weechat.override {
     configure = { availablePlugins, ... }: {
       plugins = with availablePlugins; [
          (python.withPackages (ps: with ps; [websocket_client emoji]))
@@ -102,7 +84,7 @@ let
     };
   };
 
-  buildPerlPackage = callPackage <nixpkgs/pkgs/development/perl-modules/generic> { };
+  buildPerlPackage = perlPackages.buildPerlPackage;
   mypkgs.note = buildPerlPackage rec {
     name = "note-1.3.26";
     src = fetchurl {
@@ -110,7 +92,7 @@ let
       sha256 = "1h645rnb5vpms48fcyzvp7cwwcbf9k5xq49w2bpniyzzgk2brjrq";
     };
     outputs = ["out" "man"];
-    propragatedBuildInputs = [ perlPackages.YAML ];
+    propagatedBuildInputs = [ perlPackages.YAML ];
     meta = with stdenv.lib; {
       description = "A perl script for maintaining notes";
       homepage    = http://www.daemon.de/NOTE;
@@ -130,7 +112,7 @@ let
       ./patches/terminal_velocity_sort_found_notes.patch
     ];
 
-    propagatedBuildInputs = [ chardet urwid sh pyyaml ];
+    propagatedBuildInputs = [ chardet urwid nixpkgs_unstable.python2Packages.sh pyyaml ];
     buildInputs = [ m2r restructuredtext_lint pygments ];
 
     src = fetchPypi {
@@ -227,6 +209,49 @@ let
     propagatedBuildInputs = old.propagatedBuildInputs ++ [ python3Packages.pyyaml ];
   });
 
+  mypkgs.elinks = elinks.overrideAttrs (old:
+    fetchedGithub ./fetched/elinks.json // rec {
+      preConfigure = ''sh autogen.sh'';
+      buildInputs = old.buildInputs ++ [ gettext automake autoconf ];
+      configureFlags = [
+        "--disable-smb" "--without-x" "--enable-cgi"
+        "--enable-leds" "--enable-256-colors"
+        "--enable-html-highlight" "--with-zlib"
+        ];
+      patches = [];
+    }
+  );
+
+  mypkgs.neomutt = neomutt.overrideAttrs (old:
+    rec {
+      buildInputs = old.buildInputs ++ [ gdbm ];
+      configureFlags = old.configureFlags ++ [ "--gdbm" ];
+    }
+  );
+
+  # mypkgs.nagnu = stdenv.mkDerivation (fetchedGithub ./fetched/nagnu.json // rec {
+  #   buildInputs = [ ncurses curl ];
+  #   installPhase = ''
+  #     mkdir -p $out/bin
+  #     cp nagnu $out/bin
+  #     mkdir -p $out/share/doc/nagnu
+  #     cp nagnu.conf.sample $out/share/doc/nagnu
+  #     mkdir -p $out/share/man/man8
+  #     cp docs/nagnu.8 $out/share/man/man8
+  #     '';
+  # });
+
+  mypkgs.goaccess = goaccess.overrideAttrs(old: rec {
+    name = "goaccess-${version}";
+    version = "1.3";
+    src = fetchurl {
+      url = "https://tar.goaccess.io/${name}.tar.gz";
+      sha256 = "16vv3pj7pbraq173wlxa89jjsd279004j4kgzlrsk1dz4if5qxwc";
+    };
+    configureFlags = old.configureFlags ++ [ "--enable-tcb=btree" ];
+    buildInputs = old.buildInputs ++ [ tokyocabinet bzip2 ];
+  });
+
 # https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh
 # https://github.com/NixOS/nixpkgs/blob/master/doc/languages-frameworks
 in
@@ -236,7 +261,6 @@ in
     inherit timewarrior;
     inherit sc-im;
     inherit pal;
-    inherit duplicity duply;
     inherit pdftk;
     inherit googler;
     inherit jrnl;
@@ -265,7 +289,28 @@ in
     inherit iotop iperf;
     inherit keybase;
     inherit bogofilter;
+    inherit mtr;
+    inherit nixops;
+    stgit = gitAndTools.stgit;
     # todo: lx* ?, unrar, unzip, zeromq?
     #inherit nextcloud-client;
     #inherit nixos;
-  }
+  } // (with nixpkgs_unstable; {
+    inherit googler;
+    inherit khal;
+    inherit newsboat;
+    inherit xmr-stak;
+    inherit urlwatch;
+    inherit graphicsmagick;
+    inherit ncmpc;
+    inherit solc;
+    inherit w3m lynx links;
+    inherit valgrind;
+    inherit ranger;
+    inherit strace;
+    inherit notmuch;
+    stgit = gitAndTools.stgit;
+    inherit bundix;
+    inherit yarn2nix;
+    bower2nix = nodePackages.bower2nix;
+  })